Class HandleInvocation
- java.lang.Object
-
- net.bytebuddy.implementation.bytecode.StackManipulation.AbstractBase
-
- net.bytebuddy.implementation.bytecode.member.HandleInvocation
-
- All Implemented Interfaces:
StackManipulation
@Enhance public class HandleInvocation extends StackManipulation.AbstractBase
An exact invocation of a method handle with a polymorphic signature.
-
-
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
Fields Modifier and Type Field Description private static java.lang.String
INVOKE_EXACT
The name of theinvokeExact
method.private static java.lang.String
METHOD_HANDLE_NAME
The name of thejava.lang.invoke.MethodHandle
type.private JavaConstant.MethodType
methodType
The method type of the invoked handle.
-
Constructor Summary
Constructors Constructor Description HandleInvocation(JavaConstant.MethodType methodType)
Creates a public invocation of a method handle.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StackManipulation.Size
apply(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 Detail
-
METHOD_HANDLE_NAME
private static final java.lang.String METHOD_HANDLE_NAME
The name of thejava.lang.invoke.MethodHandle
type.- See Also:
- Constant Field Values
-
INVOKE_EXACT
private static final java.lang.String INVOKE_EXACT
The name of theinvokeExact
method.- See Also:
- Constant Field Values
-
methodType
private final JavaConstant.MethodType methodType
The method type of the invoked handle.
-
-
Constructor Detail
-
HandleInvocation
public HandleInvocation(JavaConstant.MethodType methodType)
Creates a public invocation of a method handle.- Parameters:
methodType
- The method type of the invoked handle.
-
-
Method Detail
-
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.
-
-