Package net.bytebuddy.asm
Class Advice.OffsetMapping.ForArgument
- java.lang.Object
-
- net.bytebuddy.asm.Advice.OffsetMapping.ForArgument
-
- All Implemented Interfaces:
Advice.OffsetMapping
- Direct Known Subclasses:
Advice.OffsetMapping.ForArgument.Resolved,Advice.OffsetMapping.ForArgument.Unresolved
- Enclosing interface:
- Advice.OffsetMapping
@Enhance public abstract static class Advice.OffsetMapping.ForArgument extends java.lang.Object implements Advice.OffsetMapping
An offset mapping for a given parameter of the instrumented method.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAdvice.OffsetMapping.ForArgument.ResolvedAn offset mapping for a specific parameter of the instrumented method.static classAdvice.OffsetMapping.ForArgument.UnresolvedAn offset mapping for a parameter of the instrumented method with a specific index.-
Nested classes/interfaces inherited from interface net.bytebuddy.asm.Advice.OffsetMapping
Advice.OffsetMapping.Factory<T extends java.lang.annotation.Annotation>, 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
Fields Modifier and Type Field Description protected booleanreadOnlyDetermines if the parameter is to be treated as read-only.protected TypeDescription.GenerictargetThe type expected by the advice method.private Assigner.TypingtypingThe typing to apply when assigning values.
-
Constructor Summary
Constructors Modifier Constructor Description protectedForArgument(TypeDescription.Generic target, boolean readOnly, Assigner.Typing typing)Creates a new offset mapping for a parameter of the instrumented method.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract ParameterDescriptionresolve(MethodDescription instrumentedMethod)Resolves the bound parameter.Advice.OffsetMapping.Targetresolve(TypeDescription instrumentedType, MethodDescription instrumentedMethod, Assigner assigner, Advice.ArgumentHandler argumentHandler, Advice.OffsetMapping.Sort sort)Resolves an offset mapping to a given target offset.
-
-
-
Field Detail
-
target
protected final TypeDescription.Generic target
The type expected by the advice method.
-
readOnly
protected final boolean readOnly
Determines if the parameter is to be treated as read-only.
-
typing
private final Assigner.Typing typing
The typing to apply when assigning values.
-
-
Constructor Detail
-
ForArgument
protected ForArgument(TypeDescription.Generic target, boolean readOnly, Assigner.Typing typing)
Creates a new offset mapping for a parameter of the instrumented method.- 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.
-
-
Method Detail
-
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.
-
resolve
protected abstract ParameterDescription resolve(MethodDescription instrumentedMethod)
Resolves the bound parameter.- Parameters:
instrumentedMethod- The instrumented method.- Returns:
- The bound parameter.
-
-