jltools.ext.jl.ast
Class Special_c
java.lang.Object
|
+--jltools.ext.jl.ast.Node_c
|
+--jltools.ext.jl.ast.Expr_c
|
+--jltools.ext.jl.ast.Special_c
- All Implemented Interfaces:
- java.lang.Cloneable, Copy, Expr, Node, Prefix, Receiver, java.io.Serializable, Special, Typed
- public class Special_c
- extends Expr_c
- implements Special
A Special
is an immutable representation of a
reference to this
or super
Foo.this.
- See Also:
- Serialized Form
Fields inherited from class jltools.ext.jl.ast.Expr_c |
type |
Methods inherited from class jltools.ext.jl.ast.Node_c |
buildTypes, buildTypesOverride_, buildTypesOverride, copy, disambiguate_, disambiguate, disambiguateOverride_, disambiguateOverride, disambiguateTypes_, disambiguateTypes, disambiguateTypesOverride_, disambiguateTypesOverride, enterScope, exceptionCheck_, exceptionCheck, exceptionCheckOverride_, exceptionCheckOverride, ext, ext, foldConstants_, foldConstants, foldConstantsOverride_, foldConstantsOverride, leaveScope, position, position, reconstructTypes, translate, translateBlock, translateSubstmt, typeCheck, typeCheckOverride_, typeCheckOverride, visit, visitList |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface jltools.ast.Expr |
type |
Methods inherited from interface jltools.ast.Node |
buildTypes_, buildTypesOverride_, copy, disambiguate_, disambiguateOverride_, disambiguateTypes_, disambiguateTypesOverride_, dump, enterScope, exceptionCheck_, exceptionCheckOverride_, ext, ext, foldConstants_, foldConstantsOverride_, leaveScope, position, position, reconstructTypes_, typeCheckOverride_, visit |
Methods inherited from interface jltools.ast.Typed |
type |
kind
protected Special.Kind kind
qualifier
protected TypeNode qualifier
Special_c
public Special_c(Ext ext,
Position pos,
Special.Kind kind,
TypeNode qualifier)
precedence
public Precedence precedence()
- Get the precedence of the expression.
- Specified by:
precedence
in interface Expr
- Overrides:
precedence
in class Expr_c
kind
public Special.Kind kind()
- Get the kind of the special expression, either this or super.
- Specified by:
kind
in interface Special
kind
public Special kind(Special.Kind kind)
- Set the kind of the special expression, either this or super.
- Specified by:
kind
in interface Special
qualifier
public TypeNode qualifier()
- Get the qualifier of the special expression.
- Specified by:
qualifier
in interface Special
qualifier
public Special qualifier(TypeNode qualifier)
- Set the qualifier of the special expression.
- Specified by:
qualifier
in interface Special
reconstruct
protected Special_c reconstruct(TypeNode qualifier)
- Reconstruct the expression.
visitChildren
public Node visitChildren(NodeVisitor v)
- Visit the children of the expression.
- Specified by:
visitChildren
in interface Node
- Overrides:
visitChildren
in class Node_c
typeCheck_
public Node typeCheck_(TypeChecker tc)
throws SemanticException
- Type check the expression.
- Specified by:
typeCheck_
in interface Node
- Overrides:
typeCheck_
in class Node_c
toString
public java.lang.String toString()
- Overrides:
toString
in class Node_c
translate_
public void translate_(CodeWriter w,
Translator tr)
- Write the expression to an output file.
- Specified by:
translate_
in interface Node
- Overrides:
translate_
in class Node_c
- Following copied from interface:
jltools.ast.Node
- Parameters:
w
- The code writer to which to write.tr
- The translation pass. This is not a visitor.