com.ibm.wala.cast.ipa.callgraph
Class CrossLanguageInstanceKeys
java.lang.Object
com.ibm.wala.cast.ipa.callgraph.CrossLanguageInstanceKeys
- All Implemented Interfaces:
- InstanceKeyFactory
public class CrossLanguageInstanceKeys
- extends java.lang.Object
- implements InstanceKeyFactory
An InstanceKeyFactory implementation that is designed to support
multiple languages. This implementation delegates to one of several
child instance key factories based on the language associated with
the IClass or TypeReference for which an instance key is being chosen.
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CrossLanguageInstanceKeys
public CrossLanguageInstanceKeys(java.util.Map languageSelectors)
getInstanceKeyForAllocation
public InstanceKey getInstanceKeyForAllocation(CGNode node,
NewSiteReference allocation)
- Specified by:
getInstanceKeyForAllocation in interface InstanceKeyFactory
- Returns:
- the instance key that represents a particular allocation
getInstanceKeyForMultiNewArray
public InstanceKey getInstanceKeyForMultiNewArray(CGNode node,
NewSiteReference allocation,
int dim)
- Specified by:
getInstanceKeyForMultiNewArray in interface InstanceKeyFactory
- Returns:
- the instance key that represents the array allocated as the dim_th
dimension at a particular allocation
getInstanceKeyForConstant
public InstanceKey getInstanceKeyForConstant(TypeReference type,
java.lang.Object S)
- Specified by:
getInstanceKeyForConstant in interface InstanceKeyFactory
- Returns:
- the instance key that represents a constant with value S, when considered as a particular type
getInstanceKeyForPEI
public InstanceKey getInstanceKeyForPEI(CGNode node,
ProgramCounter instr,
TypeReference type)
- Specified by:
getInstanceKeyForPEI in interface InstanceKeyFactory
- Returns:
- the instance key that represents the exception of type _type_
thrown by a particular PEI.
getInstanceKeyForClassObject
public InstanceKey getInstanceKeyForClassObject(TypeReference type)
- Specified by:
getInstanceKeyForClassObject in interface InstanceKeyFactory
- Returns:
- the instance key that represents the class object of type _type_.