Package net.bytebuddy.implementation
Interface MethodCall.TargetHandler
-
- All Superinterfaces:
InstrumentedType.Prepareable
- All Known Implementing Classes:
MethodCall.TargetHandler.ForConstructingInvocation
,MethodCall.TargetHandler.ForField
,MethodCall.TargetHandler.ForMethodParameter
,MethodCall.TargetHandler.ForSelfOrStaticInvocation
,MethodCall.TargetHandler.ForValue
- Enclosing class:
- MethodCall
protected static interface MethodCall.TargetHandler extends InstrumentedType.Prepareable
A target handler is responsible for invoking a method for aMethodCall
.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
MethodCall.TargetHandler.ForConstructingInvocation
Invokes a method in order to construct a new instance.static class
MethodCall.TargetHandler.ForField
Creates a target handler that stores the instance to invoke a method on in an instance field.static class
MethodCall.TargetHandler.ForMethodParameter
A target handler that loads the parameter of the given index as the target object.static class
MethodCall.TargetHandler.ForSelfOrStaticInvocation
A target handler that invokes a method either on the instance of the instrumented type or as a static method.static class
MethodCall.TargetHandler.ForValue
A target handler that invokes a method on an instance that is stored in a static field.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description StackManipulation
resolve(MethodDescription invokedMethod, MethodDescription instrumentedMethod, TypeDescription instrumentedType, Assigner assigner, Assigner.Typing typing)
Creates a stack manipulation that represents the method's invocation.-
Methods inherited from interface net.bytebuddy.dynamic.scaffold.InstrumentedType.Prepareable
prepare
-
-
-
-
Method Detail
-
resolve
StackManipulation resolve(MethodDescription invokedMethod, MethodDescription instrumentedMethod, TypeDescription instrumentedType, Assigner assigner, Assigner.Typing typing)
Creates a stack manipulation that represents the method's invocation.- Parameters:
invokedMethod
- The method to be invoked.instrumentedMethod
- The instrumented method.instrumentedType
- The instrumented type. @return A stack manipulation that invokes the method.assigner
- The assigner to use.typing
- The typing to apply.- Returns:
- A stack manipulation that loads the method target onto the operand stack.
-
-