Class DexBackedCallSiteReference
- java.lang.Object
-
- org.jf.dexlib2.base.reference.BaseReference
-
- org.jf.dexlib2.base.reference.BaseCallSiteReference
-
- org.jf.dexlib2.dexbacked.reference.DexBackedCallSiteReference
-
- All Implemented Interfaces:
CallSiteReference,Reference
public class DexBackedCallSiteReference extends BaseCallSiteReference
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.jf.dexlib2.iface.reference.Reference
Reference.InvalidReferenceException
-
-
Field Summary
Fields Modifier and Type Field Description intcallSiteIdOffsetintcallSiteIndexDexBackedDexFiledexFile
-
Constructor Summary
Constructors Constructor Description DexBackedCallSiteReference(DexBackedDexFile dexFile, int callSiteIndex)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<? extends EncodedValue>getExtraArguments()MethodHandleReferencegetMethodHandle()Gets a reference to a method handle for the bootstrap linker methodjava.lang.StringgetMethodName()MethodProtoReferencegetMethodProto()java.lang.StringgetName()Gets a name for this call site.voidvalidateReference()Verifies that this reference is valid.-
Methods inherited from class org.jf.dexlib2.base.reference.BaseCallSiteReference
equals, hashCode, toString
-
-
-
-
Field Detail
-
dexFile
@Nonnull public final DexBackedDexFile dexFile
-
callSiteIndex
public final int callSiteIndex
-
callSiteIdOffset
public final int callSiteIdOffset
-
-
Constructor Detail
-
DexBackedCallSiteReference
public DexBackedCallSiteReference(DexBackedDexFile dexFile, int callSiteIndex)
-
-
Method Detail
-
getName
@Nonnull public java.lang.String getName()
Description copied from interface:CallSiteReferenceGets a name for this call site. This is an arbitrary synthetic string that serves to differentiate call sites that would otherwise be identical. It can be any arbitrary string, with the only requirement being that 2 different, but otherwise identical call sites in the same dex file must not share the same name. Multiple non-identical call sites may use the same name however.- Returns:
- The name for this call site.
-
getMethodHandle
@Nonnull public MethodHandleReference getMethodHandle()
Description copied from interface:CallSiteReferenceGets a reference to a method handle for the bootstrap linker method- Returns:
- A MethodHandleReference to the bootstrap linker method
-
getMethodName
@Nonnull public java.lang.String getMethodName()
- Returns:
- A method name that the bootstrap linker should resolve.
-
getMethodProto
@Nonnull public MethodProtoReference getMethodProto()
- Returns:
- A MethodProtoReference corresponding to the prototype of the method that the bootstrap linker should resolve
-
getExtraArguments
@Nonnull public java.util.List<? extends EncodedValue> getExtraArguments()
- Returns:
- A list of extra arguments to pass to the bootstrap linker
-
validateReference
public void validateReference() throws Reference.InvalidReferenceExceptionDescription copied from interface:ReferenceVerifies that this reference is valid.- Specified by:
validateReferencein interfaceReference- Overrides:
validateReferencein classBaseReference- Throws:
Reference.InvalidReferenceException- If the reference is not valid.
-
-