protected class AbstractReflectionInterpreter.SpecializedMethod extends SyntheticMethod
IMethod.SourcePosition
ContextItem.Value<T>
Modifier and Type | Field and Description |
---|---|
protected ArrayList<SSAInstruction> |
allInstructions
List of all instructions
|
protected ArrayList<SSAInstruction> |
allocations
List of synthetic allocation statements we model for this specialized instance
|
protected ArrayList<SSAInstruction> |
calls
List of synthetic invoke instructions we model for this specialized instance.
|
protected HashSet<TypeReference> |
typesAllocated
Set of types that we have already inserted an allocation for.
|
declaringClass, NO_STATEMENTS, resolvedMethod
Constructor and Description |
---|
SpecializedMethod(IMethod method,
IClass declaringClass,
boolean isStatic,
boolean isFactory) |
SpecializedMethod(MethodReference method,
IClass declaringClass,
boolean isStatic,
boolean isFactory) |
Modifier and Type | Method and Description |
---|---|
protected void |
addCtorInvokeInstruction(TypeReference t,
int alloc)
Add an instruction to invoke the default constructor on the object of value number alloc of type t.
|
protected void |
addInstruction(TypeReference T,
SSAInstruction instr,
boolean isAllocation) |
protected int |
addStatementsForConcreteSimpleType(TypeReference t) |
equals, getAnnotations, getBytecodeStream, getClassHierarchy, getDeclaredExceptions, getDeclaringClass, getDescriptor, getLineNumber, getLocalVariableName, getMaxLocals, getMaxStackHeight, getName, getNumberOfParameters, getParameterSourcePosition, getParameterType, getPoison, getPoisonLevel, getReference, getReturnType, getSelector, getSignature, getSourcePosition, getStatements, getStatements, hasExceptionHandler, hashCode, hasLocalVariableTable, hasPoison, isAbstract, isBridge, isClinit, isFactoryMethod, isFinal, isInit, isNative, isPrivate, isProtected, isPublic, isStatic, isSynchronized, isSynthetic, makeControlFlowGraph, makeIR, toString
protected final HashSet<TypeReference> typesAllocated
protected final ArrayList<SSAInstruction> allocations
protected final ArrayList<SSAInstruction> calls
protected final ArrayList<SSAInstruction> allInstructions
public SpecializedMethod(MethodReference method, IClass declaringClass, boolean isStatic, boolean isFactory)
protected void addInstruction(TypeReference T, SSAInstruction instr, boolean isAllocation)
T
- type allocated by the instruction.protected int addStatementsForConcreteSimpleType(TypeReference t)
t
- type of object to allocateprotected void addCtorInvokeInstruction(TypeReference t, int alloc)