jltools.ext.jl.ast
Class Switch_c
java.lang.Object
|
+--jltools.ext.jl.ast.Node_c
|
+--jltools.ext.jl.ast.Stmt_c
|
+--jltools.ext.jl.ast.Switch_c
- All Implemented Interfaces:
- java.lang.Cloneable, Copy, Node, java.io.Serializable, Stmt, Switch
- public class Switch_c
- extends Stmt_c
- implements Switch
A Switch
is an immutable representation of a Java
switch
statement. Such a statement has an expression which
is evaluated to determine where to branch to, an a list of labels
and block statements which are conditionally evaluated. One of the
labels, rather than having a constant expression, may be lablled
default.
- See Also:
- Serialized Form
Methods inherited from class jltools.ext.jl.ast.Node_c |
buildTypes_, buildTypes, buildTypesOverride_, buildTypesOverride, copy, disambiguate_, disambiguate, disambiguateOverride_, disambiguateOverride, disambiguateTypes_, disambiguateTypes, disambiguateTypesOverride_, disambiguateTypesOverride, dump, enterScope, exceptionCheck_, exceptionCheck, exceptionCheckOverride_, exceptionCheckOverride, ext, ext, foldConstants_, foldConstants, foldConstantsOverride_, foldConstantsOverride, leaveScope, position, position, reconstructTypes_, 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.Node |
buildTypes_, buildTypesOverride_, copy, disambiguate_, disambiguateOverride_, disambiguateTypes_, disambiguateTypesOverride_, dump, enterScope, exceptionCheck_, exceptionCheckOverride_, ext, ext, foldConstants_, foldConstantsOverride_, leaveScope, position, position, reconstructTypes_, typeCheckOverride_, visit |
expr
protected Expr expr
elements
protected java.util.List elements
Switch_c
public Switch_c(Ext ext,
Position pos,
Expr expr,
java.util.List elements)
expr
public Expr expr()
- Get the expression to switch on.
- Specified by:
expr
in interface Switch
expr
public Switch expr(Expr expr)
- Set the expression to switch on.
- Specified by:
expr
in interface Switch
elements
public java.util.List elements()
- Get the switch elements of the statement.
- Specified by:
elements
in interface Switch
elements
public Switch elements(java.util.List elements)
- Set the switch elements of the statement.
- Specified by:
elements
in interface Switch
reconstruct
protected Switch_c reconstruct(Expr expr,
java.util.List elements)
- Reconstruct the statement.
visitChildren
public Node visitChildren(NodeVisitor v)
- Visit the children of the statement.
- Specified by:
visitChildren
in interface Node
- Overrides:
visitChildren
in class Node_c
typeCheck_
public Node typeCheck_(TypeChecker tc)
throws SemanticException
- Type check the statement.
- 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 statement 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.