Package net.bytebuddy.asm
Enum Advice.OffsetMapping.ForStubValue
- java.lang.Object
-
- java.lang.Enum<Advice.OffsetMapping.ForStubValue>
-
- net.bytebuddy.asm.Advice.OffsetMapping.ForStubValue
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Comparable<Advice.OffsetMapping.ForStubValue>
,Advice.OffsetMapping
,Advice.OffsetMapping.Factory<Advice.StubValue>
- Enclosing interface:
- Advice.OffsetMapping
public static enum Advice.OffsetMapping.ForStubValue extends java.lang.Enum<Advice.OffsetMapping.ForStubValue> implements Advice.OffsetMapping, Advice.OffsetMapping.Factory<Advice.StubValue>
An offset mapping for a parameter where assignments are fully ignored and that is assigned a boxed version of the instrumented method's return value ornull
if the return type is not primitive orvoid
.
-
-
Nested Class Summary
-
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.ForEnterValue, Advice.OffsetMapping.ForExitValue, Advice.OffsetMapping.ForField, Advice.OffsetMapping.ForInstrumentedMethod, Advice.OffsetMapping.ForInstrumentedType, Advice.OffsetMapping.ForLocalValue, Advice.OffsetMapping.ForOrigin, Advice.OffsetMapping.ForReturnValue, Advice.OffsetMapping.ForSerializedValue, Advice.OffsetMapping.ForStackManipulation, Advice.OffsetMapping.ForStubValue, Advice.OffsetMapping.ForThisReference, Advice.OffsetMapping.ForThrowable, Advice.OffsetMapping.ForUnusedValue, Advice.OffsetMapping.Sort, Advice.OffsetMapping.Target
-
Nested classes/interfaces inherited from interface net.bytebuddy.asm.Advice.OffsetMapping.Factory
Advice.OffsetMapping.Factory.AdviceType, Advice.OffsetMapping.Factory.Illegal<T extends java.lang.annotation.Annotation>, Advice.OffsetMapping.Factory.Simple<T extends java.lang.annotation.Annotation>
-
-
Enum Constant Summary
Enum Constants Enum Constant Description INSTANCE
The singleton instance.
-
Constructor Summary
Constructors Modifier Constructor Description private
ForStubValue()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Class<Advice.StubValue>
getAnnotationType()
Returns the annotation type of this factory.Advice.OffsetMapping
make(ParameterDescription.InDefinedShape target, AnnotationDescription.Loadable<Advice.StubValue> annotation, Advice.OffsetMapping.Factory.AdviceType adviceType)
Creates a new offset mapping for the supplied parameter if possible.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.static Advice.OffsetMapping.ForStubValue
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.static Advice.OffsetMapping.ForStubValue[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
INSTANCE
public static final Advice.OffsetMapping.ForStubValue INSTANCE
The singleton instance.
-
-
Method Detail
-
values
public static Advice.OffsetMapping.ForStubValue[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (Advice.OffsetMapping.ForStubValue c : Advice.OffsetMapping.ForStubValue.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static Advice.OffsetMapping.ForStubValue valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
java.lang.IllegalArgumentException
- if this enum type has no constant with the specified namejava.lang.NullPointerException
- if the argument is null
-
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:
resolve
in 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.
-
getAnnotationType
public java.lang.Class<Advice.StubValue> getAnnotationType()
Returns the annotation type of this factory.- Specified by:
getAnnotationType
in interfaceAdvice.OffsetMapping.Factory<Advice.StubValue>
- Returns:
- The factory's annotation type.
-
make
public Advice.OffsetMapping make(ParameterDescription.InDefinedShape target, AnnotationDescription.Loadable<Advice.StubValue> annotation, Advice.OffsetMapping.Factory.AdviceType adviceType)
Creates a new offset mapping for the supplied parameter if possible.- Specified by:
make
in interfaceAdvice.OffsetMapping.Factory<Advice.StubValue>
- Parameters:
target
- The parameter description for which to resolve an offset mapping.annotation
- The annotation that triggered this factory.adviceType
-true
if the binding is applied using advice method delegation.- Returns:
- A resolved offset mapping or
null
if no mapping can be resolved for this parameter.
-
-