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 Object
implements MethodCall.ArgumentLoader
Loads the value of an existing field onto the operand stack.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class
An argument provider for a field access.protected static class
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
FieldsModifier and TypeFieldDescriptionprivate final FieldDescription
The field containing the loaded value.private final MethodDescription
The instrumented method. -
Constructor Summary
ConstructorsConstructorDescriptionForField
(FieldDescription fieldDescription, MethodDescription instrumentedMethod) Creates a new argument loader for loading an existing field. -
Method Summary
Modifier and TypeMethodDescriptiontoStackManipulation
(ParameterDescription target, Assigner assigner, Assigner.Typing typing) Loads the argument that is represented by this instance onto the operand stack.
-
Field Details
-
fieldDescription
The field containing the loaded value. -
instrumentedMethod
The instrumented method.
-
-
Constructor Details
-
ForField
Creates a new argument loader for loading an existing field.- Parameters:
fieldDescription
- The field containing the loaded value.instrumentedMethod
- The instrumented method.
-
-
Method Details
-
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.
-