Class MethodCallProxy.AssignableSignatureCall
java.lang.Object
net.bytebuddy.implementation.bytecode.StackManipulation.AbstractBase
net.bytebuddy.implementation.auxiliary.MethodCallProxy.AssignableSignatureCall
- All Implemented Interfaces:
StackManipulation
- Enclosing class:
MethodCallProxy
@Enhance
public static class MethodCallProxy.AssignableSignatureCall
extends StackManipulation.AbstractBase
A stack manipulation that creates a
MethodCallProxy
for a given method an pushes such an object onto the call stack. For this purpose, all arguments of the proxied method
are loaded onto the stack what is only possible if this instance is used from a method with an identical signature such
as the target method itself.-
Nested Class Summary
Nested classes/interfaces inherited from interface net.bytebuddy.implementation.bytecode.StackManipulation
StackManipulation.AbstractBase, StackManipulation.Compound, StackManipulation.Illegal, StackManipulation.Simple, StackManipulation.Size, StackManipulation.Trivial
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final boolean
Determines if the generated proxy should be serializableProxy.private final Implementation.SpecialMethodInvocation
The special method invocation to be proxied by this stack manipulation. -
Constructor Summary
ConstructorsConstructorDescriptionAssignableSignatureCall
(Implementation.SpecialMethodInvocation specialMethodInvocation, boolean serializable) Creates an operand stack assignment that creates aMethodCallProxy
for thetargetMethod
and pushes this proxy object onto the stack. -
Method Summary
Modifier and TypeMethodDescriptionapply
(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext) Applies the stack manipulation that is described by this instance.Methods inherited from class net.bytebuddy.implementation.bytecode.StackManipulation.AbstractBase
isValid
-
Field Details
-
specialMethodInvocation
The special method invocation to be proxied by this stack manipulation. -
serializable
private final boolean serializableDetermines if the generated proxy should be serializableProxy.
-
-
Constructor Details
-
AssignableSignatureCall
public AssignableSignatureCall(Implementation.SpecialMethodInvocation specialMethodInvocation, boolean serializable) Creates an operand stack assignment that creates aMethodCallProxy
for thetargetMethod
and pushes this proxy object onto the stack.- Parameters:
specialMethodInvocation
- The special method invocation which should be invoked by the created method call proxy.serializable
- Determines if the generated proxy should be serializableProxy.
-
-
Method Details
-
apply
public StackManipulation.Size apply(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext) Applies the stack manipulation that is described by this instance.- Parameters:
methodVisitor
- The method visitor used to write the method implementation to.implementationContext
- The context of the current implementation.- Returns:
- The changes to the size of the operand stack that are implied by this stack manipulation.
-