Class UnderlyingAST
java.lang.Object
org.checkerframework.dataflow.cfg.UnderlyingAST
- All Implemented Interfaces:
 org.plumelib.util.UniqueId
- Direct Known Subclasses:
 UnderlyingAST.CFGLambda,UnderlyingAST.CFGMethod,UnderlyingAST.CFGStatement
Represents an abstract syntax tree of type 
Tree that underlies a given control flow
 graph.- 
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classIf the underlying AST is a lambda.static classIf the underlying AST is a method.static classIf the underlying AST is a statement or expression.static enumThe kinds of underlying ASTs. - 
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final UnderlyingAST.KindThe kind of the underlying AST. - 
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCreates an UnderlyingAST. - 
Method Summary
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.plumelib.util.UniqueId
getClassAndUid 
- 
Field Details
- 
kind
The kind of the underlying AST. 
 - 
 - 
Constructor Details
- 
UnderlyingAST
Creates an UnderlyingAST.- Parameters:
 kind- the kind of the AST
 
 - 
 - 
Method Details
- 
getUid
- Specified by:
 getUidin interfaceorg.plumelib.util.UniqueId
 - 
getCode
Returns the code that corresponds to the CFG. For a method or lamdda, this returns the body. For other constructs, it returns the tree itself (a statement or expression).- Returns:
 - the code that corresponds to the CFG
 
 - 
getKind
 
 -