public class JavaLangClassContextInterpreter extends Object implements SSAContextInterpreter
SSAContextInterpreter specialized to interpret methods on java.lang.Class in a JavaTypeContext which
represents the point-type of the class object created by the call.
Currently supported methods:
| Modifier and Type | Field and Description |
|---|---|
static MethodReference |
GET_CONSTRUCTOR |
static MethodReference |
GET_CONSTRUCTORS |
static MethodReference |
GET_DECLARED_CONSTRUCTOR |
static MethodReference |
GET_DECLARED_CONSTRUCTORS |
static MethodReference |
GET_DECLARED_METHOD |
static MethodReference |
GET_DECLARED_METHODS |
static MethodReference |
GET_METHOD |
static MethodReference |
GET_METHODS |
| Constructor and Description |
|---|
JavaLangClassContextInterpreter() |
| Modifier and Type | Method and Description |
|---|---|
ControlFlowGraph<SSAInstruction,ISSABasicBlock> |
getCFG(CGNode N) |
DefUse |
getDU(CGNode node) |
IR |
getIR(CGNode node)
END Custom change: caching
|
int |
getNumberOfStatements(CGNode node)
END Custom change: caching
|
Iterator<CallSiteReference> |
iterateCallSites(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 MethodReference GET_CONSTRUCTOR
public static final MethodReference GET_CONSTRUCTORS
public static final MethodReference GET_METHOD
public static final MethodReference GET_METHODS
public static final MethodReference GET_DECLARED_CONSTRUCTOR
public static final MethodReference GET_DECLARED_CONSTRUCTORS
public static final MethodReference GET_DECLARED_METHOD
public static final MethodReference GET_DECLARED_METHODS
public IR getIR(CGNode node)
getIR in interface SSAContextInterpreterpublic int getNumberOfStatements(CGNode node)
getNumberOfStatements in interface SSAContextInterpreterpublic boolean understands(CGNode node)
CHAContextInterpreterunderstands in interface CHAContextInterpreterpublic Iterator<NewSiteReference> iterateNewSites(CGNode node)
iterateNewSites in interface RTAContextInterpreterpublic Iterator<CallSiteReference> iterateCallSites(CGNode node)
iterateCallSites in interface CHAContextInterpreterpublic boolean recordFactoryType(CGNode node, IClass klass)
RTAContextInterpreterrecordFactoryType in interface RTAContextInterpreterpublic Iterator<FieldReference> iterateFieldsRead(CGNode node)
iterateFieldsRead in interface RTAContextInterpreterpublic Iterator<FieldReference> iterateFieldsWritten(CGNode node)
iterateFieldsWritten in interface RTAContextInterpreterpublic ControlFlowGraph<SSAInstruction,ISSABasicBlock> getCFG(CGNode N)
getCFG in interface SSAContextInterpreterpublic DefUse getDU(CGNode node)
getDU in interface SSAContextInterpreterCopyright © 2015. All rights reserved.