Class IntentContextSelector
java.lang.Object
com.ibm.wala.dalvik.ipa.callgraph.propagation.cfa.IntentContextSelector
- All Implemented Interfaces:
com.ibm.wala.ipa.callgraph.ContextSelector
public class IntentContextSelector
extends Object
implements com.ibm.wala.ipa.callgraph.ContextSelector
Adds Intents to the Context of functions that start Android-Components.
This is done by remembering all new-sites where Intent-Objects are built and the parameters to its Constructor. When a function managed by this Selector (see IntentStarters) is encountered the stored information is added to its Context.
- Since:
- 2013-10-14
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionIntentContextSelector(com.ibm.wala.ipa.callgraph.ContextSelector parent, com.ibm.wala.ipa.cha.IClassHierarchy cha) IntentContextSelector(com.ibm.wala.ipa.cha.IClassHierarchy cha) -
Method Summary
Modifier and TypeMethodDescriptioncom.ibm.wala.ipa.callgraph.ContextgetCalleeTarget(com.ibm.wala.ipa.callgraph.CGNode caller, com.ibm.wala.classLoader.CallSiteReference site, com.ibm.wala.classLoader.IMethod callee, com.ibm.wala.ipa.callgraph.propagation.InstanceKey[] actualParameters) Given a calling node and a call site, returns the Context in which the callee should be evaluated.com.ibm.wala.util.intset.IntSetgetRelevantParameters(com.ibm.wala.ipa.callgraph.CGNode caller, com.ibm.wala.classLoader.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
-
IntentContextSelector
public IntentContextSelector(com.ibm.wala.ipa.cha.IClassHierarchy cha) -
IntentContextSelector
public IntentContextSelector(com.ibm.wala.ipa.callgraph.ContextSelector parent, com.ibm.wala.ipa.cha.IClassHierarchy cha) - Parameters:
parent- is always asked to build a Context first. Context generated by this class is added then.
-
-
Method Details
-
getCalleeTarget
public com.ibm.wala.ipa.callgraph.Context getCalleeTarget(com.ibm.wala.ipa.callgraph.CGNode caller, com.ibm.wala.classLoader.CallSiteReference site, com.ibm.wala.classLoader.IMethod callee, com.ibm.wala.ipa.callgraph.propagation.InstanceKey[] actualParameters) Given a calling node and a call site, returns the Context in which the callee should be evaluated.- Specified by:
getCalleeTargetin interfacecom.ibm.wala.ipa.callgraph.ContextSelector- Throws:
IllegalArgumentException- if the type of a parameter given as actualParameters does not match an expected one
-
getRelevantParameters
public com.ibm.wala.util.intset.IntSet getRelevantParameters(com.ibm.wala.ipa.callgraph.CGNode caller, com.ibm.wala.classLoader.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.- Specified by:
getRelevantParametersin interfacecom.ibm.wala.ipa.callgraph.ContextSelector
-