Class CrossLanguageContextSelector
java.lang.Object
com.ibm.wala.cast.ipa.callgraph.CrossLanguageContextSelector
- All Implemented Interfaces:
ContextSelector
A ContextSelector implementation adapted to work for analysis across multiple languages. This
context selector delegates to one of several child selectors based on the language of the code
body for which a context is being selected.
This provides a convenient way to integrate multiple, language-specific specialized context policies---such as the ones used for clone() in Java and runtime primitives in JavaScript.
- Author:
- Julian Dolby (dolby@us.ibm.com)
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetCalleeTarget(CGNode caller, CallSiteReference site, IMethod callee, InstanceKey[] receiver) Given a calling node and a call site, returns the Context in which the callee should be evaluated.getRelevantParameters(CGNode caller, CallSiteReference site) Given a calling node and a call site, return the set of parameters based on which this selector may choose to specialize contexts.
-
Constructor Details
-
CrossLanguageContextSelector
-
-
Method Details
-
getCalleeTarget
public Context getCalleeTarget(CGNode caller, CallSiteReference site, IMethod callee, InstanceKey[] receiver) Description copied from interface:ContextSelectorGiven a calling node and a call site, returns the Context in which the callee should be evaluated.- Specified by:
getCalleeTargetin interfaceContextSelector- Parameters:
caller- the node containing the call sitesite- description of the call sitereceiver- the abstract objects (InstanceKeys) of parameters of interest to the selector- Returns:
- the Context in which the callee should be evaluated, or null if no information is available.
-
getRelevantParameters
Description copied from interface:ContextSelectorGiven a calling node and a call site, return the set of parameters based on which this selector may choose to specialize contexts.- Specified by:
getRelevantParametersin interfaceContextSelector- Parameters:
caller- the calling nodesite- the specific call site- Returns:
- the set of parameters of interest
-