polyglot.ext.jl.ast
Class CanonicalTypeNode_c

java.lang.Object
  extended bypolyglot.ext.jl.ast.Node_c
      extended bypolyglot.ext.jl.ast.TypeNode_c
          extended bypolyglot.ext.jl.ast.CanonicalTypeNode_c
All Implemented Interfaces:
CanonicalTypeNode, java.lang.Cloneable, Copy, JL, Node, NodeOps, Prefix, QualifierNode, Receiver, Typed, TypeNode
Direct Known Subclasses:
PolyJCanonicalTypeNode_c

public class CanonicalTypeNode_c
extends TypeNode_c
implements CanonicalTypeNode

A CanonicalTypeNode is a type node for a canonical type.


Field Summary
 
Fields inherited from class polyglot.ext.jl.ast.TypeNode_c
type
 
Fields inherited from class polyglot.ext.jl.ast.Node_c
del, ext, position
 
Constructor Summary
CanonicalTypeNode_c(Position pos, Type type)
           
 
Method Summary
 void dump(CodeWriter w)
          Dump the AST node for debugging purposes.
 void prettyPrint(CodeWriter w, PrettyPrinter tr)
          If the "use-fully-qualified-class-names" options is used, then the fully qualified names is written out (java.lang.Object).
 java.lang.String toString()
           
 void translate(CodeWriter w, Translator tr)
          Translate the AST using the given code writer.
 Node typeCheck(TypeChecker tc)
          Type check the type node.
 
Methods inherited from class polyglot.ext.jl.ast.TypeNode_c
buildTypes, qualifier, type, type
 
Methods inherited from class polyglot.ext.jl.ast.Node_c
addDecls, addMembers, addMembersEnter, addMembersOverride, buildTypesEnter, buildTypesOverride, childExpectedType, copy, del, del, disambiguate, disambiguateEnter, disambiguateOverride, enterScope, enterScope, exceptionCheck, exceptionCheckEnter, exceptionCheckOverride, ext, ext, ext, ext, init, node, position, position, print, printBlock, printSubStmt, throwTypes, typeCheckEnter, typeCheckOverride, visit, visitChild, visitChildren, visitEdge, visitList
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface polyglot.ast.TypeNode
type
 
Methods inherited from interface polyglot.ast.Node
childExpectedType, del, del, ext, ext, ext, ext, position, position, visit, visitChild, visitEdge
 
Methods inherited from interface polyglot.ast.JL
init, node
 
Methods inherited from interface polyglot.ast.NodeOps
addDecls, addMembers, addMembersEnter, buildTypes, buildTypesEnter, disambiguate, disambiguateEnter, enterScope, enterScope, exceptionCheck, exceptionCheckEnter, throwTypes, typeCheckEnter, visitChildren
 
Methods inherited from interface polyglot.util.Copy
copy
 
Methods inherited from interface polyglot.ast.Typed
type
 
Methods inherited from interface polyglot.ast.QualifierNode
qualifier
 

Constructor Detail

CanonicalTypeNode_c

public CanonicalTypeNode_c(Position pos,
                           Type type)
Method Detail

prettyPrint

public void prettyPrint(CodeWriter w,
                        PrettyPrinter tr)
If the "use-fully-qualified-class-names" options is used, then the fully qualified names is written out (java.lang.Object). Otherwise, the string that originally represented the type in the source file is used.

Specified by:
prettyPrint in interface NodeOps
Specified by:
prettyPrint in class TypeNode_c

typeCheck

public Node typeCheck(TypeChecker tc)
               throws SemanticException
Type check the type node. Check accessibility of class types.

Specified by:
typeCheck in interface NodeOps
Overrides:
typeCheck in class Node_c
Throws:
SemanticException

translate

public void translate(CodeWriter w,
                      Translator tr)
Description copied from interface: NodeOps
Translate the AST using the given code writer.

Specified by:
translate in interface NodeOps
Overrides:
translate in class Node_c

toString

public java.lang.String toString()
Overrides:
toString in class TypeNode_c

dump

public void dump(CodeWriter w)
Description copied from interface: Node
Dump the AST node for debugging purposes.

Specified by:
dump in interface Node
Overrides:
dump in class Node_c