Package net.bytebuddy.implementation
Class MethodCall.ArgumentLoader.ForField
- java.lang.Object
-
- net.bytebuddy.implementation.MethodCall.ArgumentLoader.ForField
-
- All Implemented Interfaces:
MethodCall.ArgumentLoader
- Enclosing interface:
- MethodCall.ArgumentLoader
@Enhance public static class MethodCall.ArgumentLoader.ForField extends java.lang.Object implements MethodCall.ArgumentLoader
Loads the value of an existing field onto the operand stack.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
MethodCall.ArgumentLoader.ForField.ArgumentProvider
An argument provider for a field access.protected static class
MethodCall.ArgumentLoader.ForField.Factory
A factory for an argument loaded that loads the value of an existing field as an argument.-
Nested classes/interfaces inherited from interface net.bytebuddy.implementation.MethodCall.ArgumentLoader
MethodCall.ArgumentLoader.ForField, MethodCall.ArgumentLoader.ForInstance, MethodCall.ArgumentLoader.ForInstrumentedType, MethodCall.ArgumentLoader.ForMethodCall, MethodCall.ArgumentLoader.ForMethodParameter, MethodCall.ArgumentLoader.ForMethodParameterArray, MethodCall.ArgumentLoader.ForMethodParameterArrayElement, MethodCall.ArgumentLoader.ForNullConstant, MethodCall.ArgumentLoader.ForStackManipulation, MethodCall.ArgumentLoader.ForThisReference
-
-
Field Summary
Fields Modifier and Type Field Description private FieldDescription
fieldDescription
The field containing the loaded value.private MethodDescription
instrumentedMethod
The instrumented method.
-
Constructor Summary
Constructors Constructor Description ForField(FieldDescription fieldDescription, MethodDescription instrumentedMethod)
Creates a new argument loader for loading an existing field.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StackManipulation
toStackManipulation(ParameterDescription target, Assigner assigner, Assigner.Typing typing)
Loads the argument that is represented by this instance onto the operand stack.
-
-
-
Field Detail
-
fieldDescription
private final FieldDescription fieldDescription
The field containing the loaded value.
-
instrumentedMethod
private final MethodDescription instrumentedMethod
The instrumented method.
-
-
Constructor Detail
-
ForField
public ForField(FieldDescription fieldDescription, MethodDescription instrumentedMethod)
Creates a new argument loader for loading an existing field.- Parameters:
fieldDescription
- The field containing the loaded value.instrumentedMethod
- The instrumented method.
-
-
Method Detail
-
toStackManipulation
public StackManipulation toStackManipulation(ParameterDescription target, Assigner assigner, Assigner.Typing typing)
Loads the argument that is represented by this instance onto the operand stack.- Specified by:
toStackManipulation
in interfaceMethodCall.ArgumentLoader
- Parameters:
target
- The target parameter.assigner
- The assigner to be used.typing
- Indicates if dynamic type castings should be attempted for incompatible assignments.- Returns:
- The stack manipulation that loads the represented argument onto the stack.
-
-