Package soot.jimple.toolkits.callgraph
Class VirtualEdgesSummaries.IndirectTarget
- java.lang.Object
-
- soot.jimple.toolkits.callgraph.VirtualEdgesSummaries.VirtualEdgeTarget
-
- soot.jimple.toolkits.callgraph.VirtualEdgesSummaries.InvocationVirtualEdgeTarget
-
- soot.jimple.toolkits.callgraph.VirtualEdgesSummaries.IndirectTarget
-
- Enclosing class:
- VirtualEdgesSummaries
public static class VirtualEdgesSummaries.IndirectTarget extends VirtualEdgesSummaries.InvocationVirtualEdgeTarget
-
-
Field Summary
-
Fields inherited from class soot.jimple.toolkits.callgraph.VirtualEdgesSummaries.InvocationVirtualEdgeTarget
argIndex, targetMethod
-
Fields inherited from class soot.jimple.toolkits.callgraph.VirtualEdgesSummaries.VirtualEdgeTarget
targetType
-
-
Constructor Summary
Constructors Constructor Description IndirectTarget(VirtualEdgesSummaries.InstanceinvokeSource source)Creates a new indirect target as an indirection from a method that was previously considered a sourceIndirectTarget(RefType targetType, MethodSubSignature targetMethod)Creates a new direct method invocation.IndirectTarget(RefType targetType, MethodSubSignature targetMethod, int argIndex)Creates a new direct method invocation.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddTarget(VirtualEdgesSummaries.VirtualEdgeTarget target)voidaddTargets(Collection<? extends VirtualEdgesSummaries.VirtualEdgeTarget> targets)VirtualEdgesSummaries.IndirectTargetclone()VirtualEdgesSummaries.IndirectTargetclone(int argIndex)Clones the edge, but with a potentially different arg indexbooleanequals(Object obj)List<VirtualEdgesSummaries.VirtualEdgeTarget>getTargets()inthashCode()StringtoString()-
Methods inherited from class soot.jimple.toolkits.callgraph.VirtualEdgesSummaries.InvocationVirtualEdgeTarget
getArgIndex, getTargetMethod, isBase, setArgIndex
-
Methods inherited from class soot.jimple.toolkits.callgraph.VirtualEdgesSummaries.VirtualEdgeTarget
getTargetType
-
-
-
-
Constructor Detail
-
IndirectTarget
public IndirectTarget(RefType targetType, MethodSubSignature targetMethod, int argIndex)
Creates a new direct method invocation. The signature of this indirect target references a method that was called earlier, and which received the object on which the callback is invoked. This constructor assumes that the earlier method has created an object which is passed the current method as an argument.- Parameters:
targetType- The target type which declares the target methodtargetMethod- The method with which the original callback was registeredargIndex- The index of the argument that holds the object that holds the callback or next step of the indirect invocation
-
IndirectTarget
public IndirectTarget(VirtualEdgesSummaries.InstanceinvokeSource source)
Creates a new indirect target as an indirection from a method that was previously considered a source- Parameters:
source- The source from which to create the indirect target
-
IndirectTarget
public IndirectTarget(RefType targetType, MethodSubSignature targetMethod)
Creates a new direct method invocation. The signature of this indirect target references a method that was called earlier, and which received the object on which the callback is invoked.- Parameters:
targetType- The target type which declares the target methodtargetMethod- The method with which the original callback was registered
-
-
Method Detail
-
clone
public VirtualEdgesSummaries.IndirectTarget clone()
- Specified by:
clonein classVirtualEdgesSummaries.VirtualEdgeTarget
-
clone
public VirtualEdgesSummaries.IndirectTarget clone(int argIndex)
Description copied from class:VirtualEdgesSummaries.InvocationVirtualEdgeTargetClones the edge, but with a potentially different arg index- Specified by:
clonein classVirtualEdgesSummaries.InvocationVirtualEdgeTarget- Parameters:
argIndex- the arg index to set in the clone- Returns:
- the clone
-
addTarget
public void addTarget(VirtualEdgesSummaries.VirtualEdgeTarget target)
-
addTargets
public void addTargets(Collection<? extends VirtualEdgesSummaries.VirtualEdgeTarget> targets)
-
getTargets
public List<VirtualEdgesSummaries.VirtualEdgeTarget> getTargets()
-
toString
public String toString()
- Overrides:
toStringin classVirtualEdgesSummaries.InvocationVirtualEdgeTarget
-
hashCode
public int hashCode()
- Overrides:
hashCodein classVirtualEdgesSummaries.InvocationVirtualEdgeTarget
-
equals
public boolean equals(Object obj)
- Overrides:
equalsin classVirtualEdgesSummaries.InvocationVirtualEdgeTarget
-
-