public class net.bytebuddy.implementation.bytecode.member.HandleInvocation implements net.bytebuddy.implementation.bytecode.StackManipulation
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: net.bytebuddy.implementation.bytecode.member.HandleInvocation
  super_class: java.lang.Object
{
  private static final java.lang.String METHOD_HANDLE_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "java/lang/invoke/MethodHandle"

  private static final java.lang.String INVOKE_EXACT;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "invokeExact"

  private final net.bytebuddy.utility.JavaConstant$MethodType methodType;
    descriptor: Lnet/bytebuddy/utility/JavaConstant$MethodType;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(net.bytebuddy.utility.JavaConstant$MethodType);
    descriptor: (Lnet/bytebuddy/utility/JavaConstant$MethodType;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // net.bytebuddy.implementation.bytecode.member.HandleInvocation this
        start local 1 // net.bytebuddy.utility.JavaConstant$MethodType methodType
         0: .line 51
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 52
            aload 0 /* this */
            aload 1 /* methodType */
            putfield net.bytebuddy.implementation.bytecode.member.HandleInvocation.methodType:Lnet/bytebuddy/utility/JavaConstant$MethodType;
         2: .line 53
            return
        end local 1 // net.bytebuddy.utility.JavaConstant$MethodType methodType
        end local 0 // net.bytebuddy.implementation.bytecode.member.HandleInvocation this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lnet/bytebuddy/implementation/bytecode/member/HandleInvocation;
            0    3     1  methodType  Lnet/bytebuddy/utility/JavaConstant$MethodType;
    MethodParameters:
            Name  Flags
      methodType  

  public boolean isValid();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // net.bytebuddy.implementation.bytecode.member.HandleInvocation this
         0: .line 59
            iconst_1
            ireturn
        end local 0 // net.bytebuddy.implementation.bytecode.member.HandleInvocation this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lnet/bytebuddy/implementation/bytecode/member/HandleInvocation;

  public net.bytebuddy.implementation.bytecode.StackManipulation$Size apply(org.objectweb.asm.MethodVisitor, net.bytebuddy.implementation.Implementation$Context);
    descriptor: (Lorg/objectweb/asm/MethodVisitor;Lnet/bytebuddy/implementation/Implementation$Context;)Lnet/bytebuddy/implementation/bytecode/StackManipulation$Size;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // net.bytebuddy.implementation.bytecode.member.HandleInvocation this
        start local 1 // org.objectweb.asm.MethodVisitor methodVisitor
        start local 2 // net.bytebuddy.implementation.Implementation$Context implementationContext
         0: .line 66
            aload 1 /* methodVisitor */
            sipush 182
            ldc "java/lang/invoke/MethodHandle"
            ldc "invokeExact"
            aload 0 /* this */
            getfield net.bytebuddy.implementation.bytecode.member.HandleInvocation.methodType:Lnet/bytebuddy/utility/JavaConstant$MethodType;
            invokevirtual net.bytebuddy.utility.JavaConstant$MethodType.getDescriptor:()Ljava/lang/String;
            iconst_0
            invokevirtual org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
         1: .line 67
            aload 0 /* this */
            getfield net.bytebuddy.implementation.bytecode.member.HandleInvocation.methodType:Lnet/bytebuddy/utility/JavaConstant$MethodType;
            invokevirtual net.bytebuddy.utility.JavaConstant$MethodType.getReturnType:()Lnet/bytebuddy/description/type/TypeDescription;
            invokeinterface net.bytebuddy.description.type.TypeDescription.getStackSize:()Lnet/bytebuddy/implementation/bytecode/StackSize;
            invokevirtual net.bytebuddy.implementation.bytecode.StackSize.getSize:()I
            aload 0 /* this */
            getfield net.bytebuddy.implementation.bytecode.member.HandleInvocation.methodType:Lnet/bytebuddy/utility/JavaConstant$MethodType;
            invokevirtual net.bytebuddy.utility.JavaConstant$MethodType.getParameterTypes:()Lnet/bytebuddy/description/type/TypeList;
            invokeinterface net.bytebuddy.description.type.TypeList.getStackSize:()I
            isub
            istore 3 /* size */
        start local 3 // int size
         2: .line 68
            new net.bytebuddy.implementation.bytecode.StackManipulation$Size
            dup
            iload 3 /* size */
            iload 3 /* size */
            iconst_0
            invokestatic java.lang.Math.max:(II)I
            invokespecial net.bytebuddy.implementation.bytecode.StackManipulation$Size.<init>:(II)V
            areturn
        end local 3 // int size
        end local 2 // net.bytebuddy.implementation.Implementation$Context implementationContext
        end local 1 // org.objectweb.asm.MethodVisitor methodVisitor
        end local 0 // net.bytebuddy.implementation.bytecode.member.HandleInvocation this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    3     0                   this  Lnet/bytebuddy/implementation/bytecode/member/HandleInvocation;
            0    3     1          methodVisitor  Lorg/objectweb/asm/MethodVisitor;
            0    3     2  implementationContext  Lnet/bytebuddy/implementation/Implementation$Context;
            2    3     3                   size  I
    MethodParameters:
                       Name  Flags
      methodVisitor          
      implementationContext  
}
SourceFile: "HandleInvocation.java"
InnerClasses:
  public abstract Enhance = net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance of net.bytebuddy.build.HashCodeAndEqualsPlugin
  public abstract Context = net.bytebuddy.implementation.Implementation$Context of net.bytebuddy.implementation.Implementation
  public Size = net.bytebuddy.implementation.bytecode.StackManipulation$Size of net.bytebuddy.implementation.bytecode.StackManipulation
  public MethodType = net.bytebuddy.utility.JavaConstant$MethodType of net.bytebuddy.utility.JavaConstant
    RuntimeVisibleAnnotations: 
      net.bytebuddy.build.HashCodeAndEqualsPlugin$Enhance()