Class Advice.OffsetMapping.ForThisReference
java.lang.Object
net.bytebuddy.asm.Advice.OffsetMapping.ForThisReference
- All Implemented Interfaces:
Advice.OffsetMapping
- Enclosing interface:
Advice.OffsetMapping
@Enhance
public static class Advice.OffsetMapping.ForThisReference
extends Object
implements Advice.OffsetMapping
An offset mapping that provides access to the
this reference of the instrumented method.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static enumA factory for creating aAdvice.OffsetMapping.ForThisReferenceoffset mapping.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 booleantrueif the parameter should be bound tonullif the instrumented method is static.private final booleanDetermines if the parameter is to be treated as read-only.private final TypeDescription.GenericThe type that the advice method expects for thethisreference.private final Assigner.TypingThe typing to apply. -
Constructor Summary
ConstructorsModifierConstructorDescriptionForThisReference(TypeDescription.Generic target, boolean readOnly, Assigner.Typing typing, boolean optional) Creates a new offset mapping for athisreference.protectedForThisReference(TypeDescription.Generic target, AnnotationDescription.Loadable<Advice.This> annotation) Creates a new offset mapping for athisreference. -
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
-
target
The type that the advice method expects for thethisreference. -
readOnly
private final boolean readOnlyDetermines if the parameter is to be treated as read-only. -
typing
The typing to apply. -
optional
private final boolean optionaltrueif the parameter should be bound tonullif the instrumented method is static.
-
-
Constructor Details
-
ForThisReference
protected ForThisReference(TypeDescription.Generic target, AnnotationDescription.Loadable<Advice.This> annotation) Creates a new offset mapping for athisreference.- Parameters:
target- The type that the advice method expects for thethisreference.annotation- The mapped annotation.
-
ForThisReference
public ForThisReference(TypeDescription.Generic target, boolean readOnly, Assigner.Typing typing, boolean optional) Creates a new offset mapping for athisreference.- Parameters:
target- The type that the advice method expects for thethisreference.readOnly- Determines if the parameter is to be treated as read-only.typing- The typing to apply.optional-trueif the parameter should be bound tonullif the instrumented method is static.
-
-
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.
-