Class Advice.OffsetMapping.ForArgument.Unresolved
java.lang.Object
net.bytebuddy.asm.Advice.OffsetMapping.ForArgument
net.bytebuddy.asm.Advice.OffsetMapping.ForArgument.Unresolved
- All Implemented Interfaces:
Advice.OffsetMapping
- Enclosing class:
Advice.OffsetMapping.ForArgument
@Enhance
public static class Advice.OffsetMapping.ForArgument.Unresolved
extends Advice.OffsetMapping.ForArgument
An offset mapping for a parameter of the instrumented method with a specific index.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static enumA factory for a mapping of a parameter of the instrumented method.Nested classes/interfaces inherited from class Advice.OffsetMapping.ForArgument
Advice.OffsetMapping.ForArgument.Resolved, Advice.OffsetMapping.ForArgument.UnresolvedNested 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 intThe index of the parameter.private final booleantrueif the parameter binding is optional.Fields inherited from class Advice.OffsetMapping.ForArgument
readOnly, target -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedUnresolved(ParameterDescription parameterDescription) Creates a new offset binding for a parameter with a given index.Unresolved(TypeDescription.Generic target, boolean readOnly, Assigner.Typing typing, int index) Creates a non-optional offset binding for a parameter with a given index.Unresolved(TypeDescription.Generic target, boolean readOnly, Assigner.Typing typing, int index, boolean optional) Creates a new offset binding for a parameter with a given index.protectedUnresolved(TypeDescription.Generic target, AnnotationDescription.Loadable<Advice.Argument> annotation) Creates a new offset binding for a parameter with a given index. -
Method Summary
Modifier and TypeMethodDescriptionprotected ParameterDescriptionresolve(MethodDescription instrumentedMethod) Resolves the bound parameter.resolve(TypeDescription instrumentedType, MethodDescription instrumentedMethod, Assigner assigner, Advice.ArgumentHandler argumentHandler, Advice.OffsetMapping.Sort sort) Resolves an offset mapping to a given target offset.
-
Field Details
-
index
private final int indexThe index of the parameter. -
optional
private final boolean optionaltrueif the parameter binding is optional.
-
-
Constructor Details
-
Unresolved
protected Unresolved(TypeDescription.Generic target, AnnotationDescription.Loadable<Advice.Argument> annotation) Creates a new offset binding for a parameter with a given index.- Parameters:
target- The target type.annotation- The annotation that triggers this binding.
-
Unresolved
Creates a new offset binding for a parameter with a given index.- Parameters:
parameterDescription- The parameter triggering this binding.
-
Unresolved
public Unresolved(TypeDescription.Generic target, boolean readOnly, Assigner.Typing typing, int index) Creates a non-optional offset binding for a parameter with a given index.- Parameters:
target- The type expected by the advice method.readOnly- Determines if the parameter is to be treated as read-only.typing- The typing to apply.index- The index of the parameter.
-
Unresolved
public Unresolved(TypeDescription.Generic target, boolean readOnly, Assigner.Typing typing, int index, boolean optional) Creates a new offset binding for a parameter with a given index.- Parameters:
target- The type expected by the advice method.readOnly- Determines if the parameter is to be treated as read-only.typing- The typing to apply.index- The index of the parameter.optional-trueif the parameter binding is optional.
-
-
Method Details
-
resolve
Description copied from class:Advice.OffsetMapping.ForArgumentResolves the bound parameter.- Specified by:
resolvein classAdvice.OffsetMapping.ForArgument- Parameters:
instrumentedMethod- The instrumented method.- Returns:
- The bound parameter.
-
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- Overrides:
resolvein classAdvice.OffsetMapping.ForArgument- 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.
-