public abstract class UnderlyingAST extends Object implements org.plumelib.util.UniqueId
Tree
that underlies a given control flow
graph.Modifier and Type | Class and Description |
---|---|
static class |
UnderlyingAST.CFGLambda
If the underlying AST is a lambda.
|
static class |
UnderlyingAST.CFGMethod
If the underlying AST is a method.
|
static class |
UnderlyingAST.CFGStatement
If the underlying AST is a statement or expression.
|
static class |
UnderlyingAST.Kind
The kinds of underlying ASTs.
|
Modifier and Type | Field and Description |
---|---|
protected UnderlyingAST.Kind |
kind
The kind of the underlying AST.
|
Modifier | Constructor and Description |
---|---|
protected |
UnderlyingAST(UnderlyingAST.Kind kind)
Creates an UnderlyingAST.
|
Modifier and Type | Method and Description |
---|---|
abstract Tree |
getCode()
Returns the code that corresponds to the CFG.
|
UnderlyingAST.Kind |
getKind() |
long |
getUid() |
protected final UnderlyingAST.Kind kind
protected UnderlyingAST(UnderlyingAST.Kind kind)
kind
- the kind of the ASTpublic long getUid(@UnknownInitialization UnderlyingAST this)
getUid
in interface org.plumelib.util.UniqueId
public abstract Tree getCode()
public UnderlyingAST.Kind getKind()