|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectpolyglot.ext.jl.ast.Node_c
polyglot.ext.jl.ast.Term_c
A Term represents any Java expression or statement on which
dataflow can be performed.
| Field Summary | |
protected SubtypeSet |
exceptions
|
protected boolean |
reachable
|
| Fields inherited from class polyglot.ext.jl.ast.Node_c |
del, ext, position |
| Constructor Summary | |
Term_c(Position pos)
|
|
| Method Summary | |
abstract java.util.List |
acceptCFG(CFGBuilder v,
java.util.List succs)
Visit this term in evaluation order. |
abstract Term |
entry()
Return the first (sub)term performed when evaluating this term. |
Node |
exceptionCheck(ExceptionChecker ec)
Check that exceptions are properly propagated throughout the AST. |
SubtypeSet |
exceptions()
List of Types with all exceptions possibly thrown by this term. |
Term |
exceptions(SubtypeSet exceptions)
|
static Term |
listEntry(java.util.List l,
Term alt)
Utility function to get the first entry of a list, or else alt. |
boolean |
reachable()
Return true if this term is eachable. |
Term |
reachable(boolean reachability)
Set the reachability of this term. |
| Methods inherited from class polyglot.ext.jl.ast.Node_c |
addDecls, addMembers, addMembersEnter, addMembersOverride, buildTypes, buildTypesEnter, buildTypesOverride, childExpectedType, copy, del, del, disambiguate, disambiguateEnter, disambiguateOverride, dump, enterScope, enterScope, exceptionCheckEnter, exceptionCheckOverride, ext, ext, ext, ext, init, node, position, position, prettyPrint, print, printBlock, printSubStmt, throwTypes, toString, translate, typeCheck, 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.Node |
childExpectedType, del, del, dump, ext, ext, ext, ext, position, position, visit, visitChild, visitEdge, visitList |
| 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, exceptionCheckEnter, prettyPrint, throwTypes, translate, typeCheck, typeCheckEnter, visitChildren |
| Methods inherited from interface polyglot.util.Copy |
copy |
| Field Detail |
protected boolean reachable
protected SubtypeSet exceptions
| Constructor Detail |
public Term_c(Position pos)
| Method Detail |
public abstract Term entry()
entry in interface Term
public abstract java.util.List acceptCFG(CFGBuilder v,
java.util.List succs)
acceptCFG in interface Termpublic boolean reachable()
reachable in interface TermReachCheckerpublic Term reachable(boolean reachability)
reachable in interface Term
public static Term listEntry(java.util.List l,
Term alt)
public SubtypeSet exceptions()
Termpolyglot.ast.NodeOps.throwTypes() is similar, but exceptions
are not propagated to the containing node.
exceptions in interface Termpublic Term exceptions(SubtypeSet exceptions)
exceptions in interface Term
public Node exceptionCheck(ExceptionChecker ec)
throws SemanticException
NodeOpsleave() method of the
visitor. The method should perform work that should be done
after visiting the children of the node. The method may return
this or a new copy of the node which will be
installed as a child of the node's parent.
exceptionCheck in interface NodeOpsexceptionCheck in class Node_cSemanticException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||