public class CloneInterpreter extends Object implements SSAContextInterpreter
Modifier and Type | Field and Description |
---|---|
static MethodReference |
CLONE
Comment for
CLONE |
static Atom |
cloneAtom
Comment for
cloneAtom |
Constructor and Description |
---|
CloneInterpreter() |
Modifier and Type | Method and Description |
---|---|
Set |
getCaughtExceptions(CGNode node) |
ControlFlowGraph<SSAInstruction,ISSABasicBlock> |
getCFG(CGNode N) |
DefUse |
getDU(CGNode node) |
IR |
getIR(CGNode node) |
int |
getNumberOfStatements(CGNode node) |
boolean |
hasObjectArrayLoad(CGNode node) |
boolean |
hasObjectArrayStore(CGNode node) |
Iterator<CallSiteReference> |
iterateCallSites(CGNode node) |
Iterator |
iterateCastTypes(CGNode node) |
Iterator<FieldReference> |
iterateFieldsRead(CGNode node) |
Iterator<FieldReference> |
iterateFieldsWritten(CGNode node) |
Iterator<NewSiteReference> |
iterateNewSites(CGNode node) |
boolean |
recordFactoryType(CGNode node,
IClass klass)
record that the "factory" method of a node should be interpreted to allocate a particular class.
|
boolean |
understands(CGNode node)
Does this object understand the given method? The caller had better check this before inquiring on other properties.
|
public static final Atom cloneAtom
cloneAtom
public static final MethodReference CLONE
CLONE
public IR getIR(CGNode node)
getIR
in interface SSAContextInterpreter
public int getNumberOfStatements(CGNode node)
getNumberOfStatements
in interface SSAContextInterpreter
public boolean understands(CGNode node)
CHAContextInterpreter
understands
in interface CHAContextInterpreter
public Iterator<NewSiteReference> iterateNewSites(CGNode node)
iterateNewSites
in interface RTAContextInterpreter
public Iterator<CallSiteReference> iterateCallSites(CGNode node)
iterateCallSites
in interface CHAContextInterpreter
public boolean recordFactoryType(CGNode node, IClass klass)
RTAContextInterpreter
recordFactoryType
in interface RTAContextInterpreter
public Iterator<FieldReference> iterateFieldsRead(CGNode node)
iterateFieldsRead
in interface RTAContextInterpreter
public Iterator<FieldReference> iterateFieldsWritten(CGNode node)
iterateFieldsWritten
in interface RTAContextInterpreter
public boolean hasObjectArrayLoad(CGNode node)
public boolean hasObjectArrayStore(CGNode node)
public ControlFlowGraph<SSAInstruction,ISSABasicBlock> getCFG(CGNode N)
getCFG
in interface SSAContextInterpreter
public DefUse getDU(CGNode node)
getDU
in interface SSAContextInterpreter