Class Advice.OffsetMapping.ForHandle
java.lang.Object
net.bytebuddy.asm.Advice.OffsetMapping.ForHandle
- All Implemented Interfaces:
Advice.OffsetMapping
- Enclosing interface:
Advice.OffsetMapping
@Enhance
public static class Advice.OffsetMapping.ForHandle
extends Object
implements Advice.OffsetMapping
An offset mapping that describes a Java method handle that is resolved through the constant pool.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static enumA factory for creating an offset mapping for a constant pool-stored method handle.Nested classes/interfaces inherited from interface Advice.OffsetMapping
Advice.OffsetMapping.ForAllArguments, Advice.OffsetMapping.ForArgument, Advice.OffsetMapping.ForDynamicConstant, Advice.OffsetMapping.ForEnterValue, Advice.OffsetMapping.ForExitValue, Advice.OffsetMapping.ForField, Advice.OffsetMapping.ForFieldHandle, Advice.OffsetMapping.ForHandle, Advice.OffsetMapping.ForInstrumentedMethod, Advice.OffsetMapping.ForInstrumentedType, Advice.OffsetMapping.ForLocalValue, Advice.OffsetMapping.ForOrigin, Advice.OffsetMapping.ForReturnValue, Advice.OffsetMapping.ForSelfCallHandle, Advice.OffsetMapping.ForSerializedValue, Advice.OffsetMapping.ForStackManipulation, Advice.OffsetMapping.ForStubValue, Advice.OffsetMapping.ForThisReference, Advice.OffsetMapping.ForThrowable, Advice.OffsetMapping.ForUnusedValue, Advice.OffsetMapping.Sort, Advice.OffsetMapping.Target -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final StringThe name of the method handle.private final TypeDescriptionThe owner of the handle, orvoidfor the instrumented type.private final List<? extends TypeDescription> The parameter types required by the handle.private final TypeDescriptionThe type that is returned from the handle.private final JavaConstant.MethodHandle.HandleTypeThe type of the method handle. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedForHandle(JavaConstant.MethodHandle.HandleType type, TypeDescription owner, String name, TypeDescription returnType, List<? extends TypeDescription> parameterTypes) Creates a new offset mapping for a method handle. -
Method Summary
Modifier and TypeMethodDescriptionresolve(TypeDescription instrumentedType, MethodDescription instrumentedMethod, Assigner assigner, Advice.ArgumentHandler argumentHandler, Advice.OffsetMapping.Sort sort) Resolves an offset mapping to a given target offset.
-
Field Details
-
type
The type of the method handle. -
owner
The owner of the handle, orvoidfor the instrumented type. -
name
The name of the method handle. -
returnType
The type that is returned from the handle. -
parameterTypes
The parameter types required by the handle.
-
-
Constructor Details
-
ForHandle
protected ForHandle(JavaConstant.MethodHandle.HandleType type, TypeDescription owner, String name, TypeDescription returnType, List<? extends TypeDescription> parameterTypes) Creates a new offset mapping for a method handle.- Parameters:
type- The type of the method handle.owner- The owner of the handle, orvoidfor the instrumented type.name- The name of the method handle.returnType- The type that is returned from the handle.parameterTypes- The parameter types required by the handle.
-
-
Method Details
-
resolve
public Advice.OffsetMapping.Target resolve(TypeDescription instrumentedType, MethodDescription instrumentedMethod, Assigner assigner, Advice.ArgumentHandler argumentHandler, Advice.OffsetMapping.Sort sort) Resolves an offset mapping to a given target offset.- Specified by:
resolvein interfaceAdvice.OffsetMapping- Parameters:
instrumentedType- The instrumented type.instrumentedMethod- The instrumented method for which the mapping is to be resolved.assigner- The assigner to use.argumentHandler- The argument handler to use for resolving offsets of the local variable array of the instrumented method.sort- The sort of the advice method being resolved.- Returns:
- A suitable target mapping.
-