TypeDecl
::= [Superclass:IdUse
] Body:Block
;- Type Hierarchy:
java.lang.Object
AST.ASTNode<ASTNode>
AST.BlockStmt
AST.Decl
AST.TypeDecl
AST.ClassDecl
- All Implemented Interfaces:
- java.lang.Cloneable, java.lang.Iterable<ASTNode>
|
|||||||
FRAMES NO FRAMES |
TypeDecl
::= [Superclass:IdUse
] Body:Block
;java.lang.ObjectAST.ASTNode<ASTNode>
AST.BlockStmt
AST.Decl
AST.TypeDecl
AST.ClassDecl
spec/picojava.ast
at line 8
syn Decl remoteLookup(java.lang.String name)
remoteLookup
in class TypeDecl
spec/NameResolution.jrag
at line 62
syn boolean isSubtypeOf(TypeDecl typeDecl)
isSubtypeOf
in class TypeDecl
spec/TypeAnalysis.jrag
at line 44
syn ClassDecl superClass()
spec/TypeAnalysis.jrag
at line 51
syn boolean hasCycleOnSuperclassChain()
spec/TypeAnalysis.jrag
at line 59
public void collectErrors(java.util.Collection c)
collectErrors
in class ASTNode<ASTNode>
spec/ErrorCheck.jadd
at line 32
public void prettyPrint(java.lang.StringBuilder sb, int t)
spec/PrettyPrint.jadd
at line 40
public void init$Children()
init$Children
in class TypeDecl
protected int numChildren()
numChildren
in class TypeDecl
public boolean mayHaveRewrite()
mayHaveRewrite
in class TypeDecl
public void flushCache()
flushCache
in class TypeDecl
public void flushCollectionCache()
flushCollectionCache
in class TypeDecl
public void setName(java.lang.String value)
public java.lang.String getName()
public void setSuperclassOpt(Opt<IdUse> opt)
Opt
node containing the child Superclass, not the actual child!opt
- The new node to be used as the optional node for the Superclass child.public void setSuperclass(IdUse node)
node
- The new node to be used as the Superclass child.public boolean hasSuperclass()
true
if the optional Superclass child exists, false
if it does not.public IdUse getSuperclass()
null
otherwise.public Opt<IdUse> getSuperclassOpt()
Opt
node containing the child Superclass, not the actual child!public Opt<IdUse> getSuperclassOptNoTransform()
Opt
node containing the child Superclass, not the actual child!
This method does not invoke AST transformations.
node
- The new node to replace the Body child.public Block getBodyNoTransform()
This method does not invoke AST transformations.
public Decl Define_Decl_lookup(ASTNode caller, ASTNode child, java.lang.String name)
Define_Decl_lookup
in class ASTNode<ASTNode>
spec/NameResolution.jrag
at line 31
protected java.util.Map remoteLookup_String_visited
protected java.util.Map isSubtypeOf_TypeDecl_visited
protected java.util.Map isSubtypeOf_TypeDecl_values
protected int superClass_visited
protected boolean superClass_computed
protected ClassDecl superClass_value
protected int hasCycleOnSuperclassChain_visited
protected boolean hasCycleOnSuperclassChain_computed
protected boolean hasCycleOnSuperclassChain_initialized
protected boolean hasCycleOnSuperclassChain_value
|
|||||||
FRAMES NO FRAMES |