Interface ContextSelector
- All Known Implementing Classes:
ArgumentSpecialization.ArgumentCountContextSelector, CallStringContextSelector, ClassFactoryContextSelector, CloneContextSelector, ContainerContextSelector, ContextInsensitiveSelector, CPAContextSelector, CrossLanguageContextSelector, DefaultContextSelector, DelegatingContextSelector, GetClassContextSelector, GetMethodContextSelector, IntentContextSelector, JavaScriptConstructorContextSelector, JavaScriptFunctionApplyContextSelector, MiscellaneousHacksContextSelector, nCFAContextSelector, nObjContextSelector, ObjectSensitivityContextSelector, OneLevelForLexicalAccessFunctions, OneLevelSiteContextSelector, PropertyNameContextSelector, ReceiverTypeContextSelector, RecursionBoundContextSelector, RecursionCheckContextSelector, TargetMethodContextSelector, UnionContextSelector, UriPrefixContextSelector
public interface ContextSelector
An interface to an object which helps control context-sensitivity.
-
Method Summary
Modifier and TypeMethodDescriptiongetCalleeTarget(CGNode caller, CallSiteReference site, IMethod callee, InstanceKey[] actualParameters) 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.
-
Method Details
-
getCalleeTarget
Context getCalleeTarget(CGNode caller, CallSiteReference site, IMethod callee, InstanceKey[] actualParameters) Given a calling node and a call site, returns the Context in which the callee should be evaluated.- Parameters:
caller- the node containing the call sitesite- description of the call siteactualParameters- 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
Given a calling node and a call site, return the set of parameters based on which this selector may choose to specialize contexts.- Parameters:
caller- the calling nodesite- the specific call site- Returns:
- the set of parameters of interest
-