public class ClassBasedInstanceKeys extends Object implements InstanceKeyFactory
Constructor and Description |
---|
ClassBasedInstanceKeys(AnalysisOptions options,
IClassHierarchy cha) |
Modifier and Type | Method and Description |
---|---|
IClassHierarchy |
getClassHierarchy() |
InstanceKey |
getInstanceKeyForAllocation(CGNode node,
NewSiteReference allocation) |
<T> InstanceKey |
getInstanceKeyForConstant(TypeReference type,
T S) |
InstanceKey |
getInstanceKeyForMetadataObject(Object obj,
TypeReference objType) |
InstanceKey |
getInstanceKeyForMultiNewArray(CGNode node,
NewSiteReference allocation,
int dim) |
InstanceKey |
getInstanceKeyForPEI(CGNode node,
ProgramCounter peiLoc,
TypeReference type) |
public ClassBasedInstanceKeys(AnalysisOptions options, IClassHierarchy cha)
public InstanceKey getInstanceKeyForAllocation(CGNode node, NewSiteReference allocation)
getInstanceKeyForAllocation
in interface InstanceKeyFactory
public InstanceKey getInstanceKeyForMultiNewArray(CGNode node, NewSiteReference allocation, int dim)
getInstanceKeyForMultiNewArray
in interface InstanceKeyFactory
dim == 0 represents the first dimension, e.g., the [Object; instances in
[[Object; e.g., the [[Object; instances in [[[Object; dim == 1 represents the second dimension, e.g., the [Object
instances in [[[Object;
public <T> InstanceKey getInstanceKeyForConstant(TypeReference type, T S)
getInstanceKeyForConstant
in interface InstanceKeyFactory
public InstanceKey getInstanceKeyForPEI(CGNode node, ProgramCounter peiLoc, TypeReference type)
getInstanceKeyForPEI
in interface InstanceKeyFactory
public InstanceKey getInstanceKeyForMetadataObject(Object obj, TypeReference objType)
getInstanceKeyForMetadataObject
in interface InstanceKeyFactory
objType
- TODOpublic IClassHierarchy getClassHierarchy()