Class MethodCall.ArgumentLoader.ForThisReference
java.lang.Object
net.bytebuddy.implementation.MethodCall.ArgumentLoader.ForThisReference
- All Implemented Interfaces:
MethodCall.ArgumentLoader, MethodCall.ArgumentLoader.ArgumentProvider
- Enclosing interface:
MethodCall.ArgumentLoader
@Enhance
public static class MethodCall.ArgumentLoader.ForThisReference
extends Object
implements MethodCall.ArgumentLoader, MethodCall.ArgumentLoader.ArgumentProvider
An argument loader that assigns the
this reference to a parameter.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumA factory for an argument loader that supplies thethisvalue as an argument.Nested classes/interfaces inherited from interface MethodCall.ArgumentLoader
MethodCall.ArgumentLoader.ArgumentProvider, 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 -
Constructor Summary
ConstructorsConstructorDescriptionForThisReference(TypeDescription instrumentedType) Creates an argument loader that supplies thethisinstance as an argument. -
Method Summary
Modifier and TypeMethodDescriptionresolve(MethodDescription instrumentedMethod, MethodDescription invokedMethod) Resolves this provider to an argument loader for each provided argument.toStackManipulation(ParameterDescription target, Assigner assigner, Assigner.Typing typing) Loads the argument that is represented by this instance onto the operand stack.
-
Field Details
-
instrumentedType
The instrumented type.
-
-
Constructor Details
-
ForThisReference
Creates an argument loader that supplies thethisinstance as an argument.- Parameters:
instrumentedType- The instrumented type.
-
-
Method Details
-
resolve
public List<MethodCall.ArgumentLoader> resolve(MethodDescription instrumentedMethod, MethodDescription invokedMethod) Resolves this provider to an argument loader for each provided argument.- Specified by:
resolvein interfaceMethodCall.ArgumentLoader.ArgumentProvider- Parameters:
instrumentedMethod- The instrumented method.invokedMethod- The invoked method.- Returns:
- A list of provided argument loaders.
-
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:
toStackManipulationin 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.
-