Class Overrides.StartComponentMethodTargetSelector
java.lang.Object
com.ibm.wala.dalvik.ipa.callgraph.androidModel.stubs.Overrides.StartComponentMethodTargetSelector
- All Implemented Interfaces:
MethodTargetSelector
- Enclosing class:
Overrides
protected static class Overrides.StartComponentMethodTargetSelector
extends Object
implements MethodTargetSelector
- Since:
- 2013-10-28
- Author:
- Tobias Blaschke <code@tobiasblaschke.de>
-
Field Summary
Modifier and TypeFieldDescriptionprotected MethodTargetSelector
protected MethodTargetSelector
protected final HashMap
<MethodReference, SummarizedMethod> -
Constructor Summary
ConstructorDescriptionStartComponentMethodTargetSelector
(HashMap<MethodReference, SummarizedMethod> syntheticMethods, MethodTargetSelector child) -
Method Summary
Modifier and TypeMethodDescriptiongetCalleeTarget
(CGNode caller, CallSiteReference site, IClass receiver) Given a calling node, a call site and (optionally) a dispatch type, return the target method to be called.void
setChild
(MethodTargetSelector child) The MethodTarget selector to ask when the Method could not be resolved by this one.void
setParent
(MethodTargetSelector parent) The MethodTarget selector to ask before trying to resolve the Method with this one.
-
Field Details
-
parent
-
child
-
syntheticMethods
-
-
Constructor Details
-
StartComponentMethodTargetSelector
public StartComponentMethodTargetSelector(HashMap<MethodReference, SummarizedMethod> syntheticMethods, MethodTargetSelector child) - Parameters:
syntheticMethods
- The Methods to overridechild
- Ask child if unable to resolve. May be null
-
-
Method Details
-
setParent
The MethodTarget selector to ask before trying to resolve the Method with this one.- Throws:
IllegalStateException
- if tried to set parent twice
-
setChild
The MethodTarget selector to ask when the Method could not be resolved by this one.In order to be able to use this function you have to set null as child in the Constructor.
- Throws:
IllegalStateException
- if tried to set parent twice
-
getCalleeTarget
Description copied from interface:MethodTargetSelector
Given a calling node, a call site and (optionally) a dispatch type, return the target method to be called.- Specified by:
getCalleeTarget
in interfaceMethodTargetSelector
- Parameters:
caller
- the GCNode in the call graph containing the callsite
- the call site reference of the call sitereceiver
- the type of the target object or null- Returns:
- the method to be called.
-