com.ibm.wala.ipa.callgraph.propagation
Interface InstanceKeyFactory
- All Known Subinterfaces:
- ExtendedHeapModel, HeapModel
- All Known Implementing Classes:
- AllocationSiteInstanceKeys, AstJavaCFABuilder, AstJavaSSAPropagationCallGraphBuilder, AstJavaZeroOneContainerCFABuilder, AstJavaZeroXCFABuilder, AstSSAPropagationCallGraphBuilder, CFABuilder, ClassBasedInstanceKeys, DelegatingExtendedHeapModel, JavaScopeMappingInstanceKeys, JavaScriptScopeMappingInstanceKeys, JSCFABuilder, JSSSAPropagationCallGraphBuilder, JSZeroXCFABuilder, nCFABuilder, OneCFABuilder, ScopeMappingInstanceKeys, SmushedAllocationSiteInstanceKeys, SSAPropagationCallGraphBuilder, TypeBasedHeapModel, ZeroContainerCFABuilder, ZeroOneContainerCFABuilder, ZeroXCFABuilder, ZeroXInstanceKeys
public interface InstanceKeyFactory
An object that abstracts how to model instances in the heap.
getInstanceKeyForAllocation
InstanceKey getInstanceKeyForAllocation(CGNode node,
NewSiteReference allocation)
- Parameters:
node - allocation -
- Returns:
- the instance key that represents a particular allocation
getInstanceKeyForMultiNewArray
InstanceKey getInstanceKeyForMultiNewArray(CGNode node,
NewSiteReference allocation,
int dim)
- Parameters:
node - allocation - dim -
- Returns:
- the instance key that represents the array allocated as the dimth dimension at a particular allocation
getInstanceKeyForConstant
InstanceKey getInstanceKeyForConstant(java.lang.Object S)
- Parameters:
S -
- Returns:
- the instance key that represents a constant with value S
getStringConstantForInstanceKey
java.lang.String getStringConstantForInstanceKey(InstanceKey I)
- Parameters:
I -
- Returns:
- if I was allocated by this for a specific string constant, return that constant (return null otherwise).
getInstanceKeyForPEI
InstanceKey getInstanceKeyForPEI(CGNode node,
ProgramCounter instr,
TypeReference type)
- Parameters:
node - instr - type -
- Returns:
- the instance key that represents the exception of type _type_ thrown by a particular PEI.
getInstanceKeyForClassObject
InstanceKey getInstanceKeyForClassObject(TypeReference type)
- Returns:
- the instance key that represents the class object of type _type_.