public class org.jruby.runtime.invokedynamic.JRubyCallSite extends java.lang.invoke.MutableCallSite
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.jruby.runtime.invokedynamic.JRubyCallSite
  super_class: java.lang.invoke.MutableCallSite
{
  private static final java.util.concurrent.atomic.AtomicLong SITE_ID;
    descriptor: Ljava/util/concurrent/atomic/AtomicLong;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  final long siteID;
    descriptor: J
    flags: (0x0010) ACC_FINAL

  final org.jruby.runtime.CallType callType;
    descriptor: Lorg/jruby/runtime/CallType;
    flags: (0x0010) ACC_FINAL

  final java.lang.String name;
    descriptor: Ljava/lang/String;
    flags: (0x0010) ACC_FINAL

  private final java.lang.String file;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int line;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.headius.invokebinder.Signature signature;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.headius.invokebinder.Signature fullSignature;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int arity;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  org.jruby.runtime.callsite.CacheEntry entry;
    descriptor: Lorg/jruby/runtime/callsite/CacheEntry;
    flags: (0x0000) 

  public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_1ARG;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_2ARG;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_3ARG;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_NARG;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature[] STANDARD_SITE_SIGS;
    descriptor: [Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_BLOCK;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_1ARG_BLOCK;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_2ARG_BLOCK;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_3ARG_BLOCK;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature STANDARD_SITE_SIG_NARG_BLOCK;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature[] STANDARD_SITE_SIGS_BLOCK;
    descriptor: [Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final com.headius.invokebinder.Signature STANDARD_SUPER_SIG;
    descriptor: Lcom/headius/invokebinder/Signature;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 47
            new java.util.concurrent.atomic.AtomicLong
            dup
            lconst_1
            invokespecial java.util.concurrent.atomic.AtomicLong.<init>:(J)V
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.SITE_ID:Ljava/util/concurrent/atomic/AtomicLong;
         1: .line 158
            ldc Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic com.headius.invokebinder.Signature.returning:(Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
         2: .line 159
            ldc "context"
            ldc Lorg/jruby/runtime/ThreadContext;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
         3: .line 160
            ldc "caller"
            ldc Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
         4: .line 161
            ldc "self"
            ldc Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
         5: .line 157
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG:Lcom/headius/invokebinder/Signature;
         6: .line 162
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG:Lcom/headius/invokebinder/Signature;
            ldc "arg0"
            ldc Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_1ARG:Lcom/headius/invokebinder/Signature;
         7: .line 163
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_1ARG:Lcom/headius/invokebinder/Signature;
            ldc "arg1"
            ldc Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_2ARG:Lcom/headius/invokebinder/Signature;
         8: .line 164
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_2ARG:Lcom/headius/invokebinder/Signature;
            ldc "arg2"
            ldc Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_3ARG:Lcom/headius/invokebinder/Signature;
         9: .line 165
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG:Lcom/headius/invokebinder/Signature;
            ldc "args"
            ldc [Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_NARG:Lcom/headius/invokebinder/Signature;
        10: .line 167
            iconst_5
            anewarray com.headius.invokebinder.Signature
            dup
            iconst_0
        11: .line 168
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG:Lcom/headius/invokebinder/Signature;
            aastore
            dup
            iconst_1
        12: .line 169
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_1ARG:Lcom/headius/invokebinder/Signature;
            aastore
            dup
            iconst_2
        13: .line 170
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_2ARG:Lcom/headius/invokebinder/Signature;
            aastore
            dup
            iconst_3
        14: .line 171
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_3ARG:Lcom/headius/invokebinder/Signature;
            aastore
            dup
            iconst_4
        15: .line 172
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_NARG:Lcom/headius/invokebinder/Signature;
            aastore
        16: .line 167
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIGS:[Lcom/headius/invokebinder/Signature;
        17: .line 175
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG:Lcom/headius/invokebinder/Signature;
            ldc "block"
            ldc Lorg/jruby/runtime/Block;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_BLOCK:Lcom/headius/invokebinder/Signature;
        18: .line 176
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_1ARG:Lcom/headius/invokebinder/Signature;
            ldc "block"
            ldc Lorg/jruby/runtime/Block;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_1ARG_BLOCK:Lcom/headius/invokebinder/Signature;
        19: .line 177
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_2ARG:Lcom/headius/invokebinder/Signature;
            ldc "block"
            ldc Lorg/jruby/runtime/Block;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_2ARG_BLOCK:Lcom/headius/invokebinder/Signature;
        20: .line 178
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_3ARG:Lcom/headius/invokebinder/Signature;
            ldc "block"
            ldc Lorg/jruby/runtime/Block;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_3ARG_BLOCK:Lcom/headius/invokebinder/Signature;
        21: .line 179
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_NARG:Lcom/headius/invokebinder/Signature;
            ldc "block"
            ldc Lorg/jruby/runtime/Block;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_NARG_BLOCK:Lcom/headius/invokebinder/Signature;
        22: .line 180
            iconst_5
            anewarray com.headius.invokebinder.Signature
            dup
            iconst_0
        23: .line 181
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_BLOCK:Lcom/headius/invokebinder/Signature;
            aastore
            dup
            iconst_1
        24: .line 182
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_1ARG_BLOCK:Lcom/headius/invokebinder/Signature;
            aastore
            dup
            iconst_2
        25: .line 183
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_2ARG_BLOCK:Lcom/headius/invokebinder/Signature;
            aastore
            dup
            iconst_3
        26: .line 184
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_3ARG_BLOCK:Lcom/headius/invokebinder/Signature;
            aastore
            dup
            iconst_4
        27: .line 185
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG_NARG_BLOCK:Lcom/headius/invokebinder/Signature;
            aastore
        28: .line 180
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIGS_BLOCK:[Lcom/headius/invokebinder/Signature;
        29: .line 189
            ldc Lorg/jruby/runtime/builtin/IRubyObject;
            invokestatic com.headius.invokebinder.Signature.returning:(Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
        30: .line 190
            ldc "context"
            ldc Lorg/jruby/runtime/ThreadContext;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
        31: .line 191
            ldc "caller"
            ldc Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
        32: .line 192
            ldc "self"
            ldc Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
        33: .line 193
            ldc "class"
            ldc Lorg/jruby/RubyClass;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
        34: .line 188
            putstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SUPER_SIG:Lcom/headius/invokebinder/Signature;
        35: .line 193
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(java.lang.invoke.MethodHandles$Lookup, java.lang.invoke.MethodType, org.jruby.runtime.CallType, java.lang.String, int, java.lang.String);
    descriptor: (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/invoke/MethodType;Lorg/jruby/runtime/CallType;Ljava/lang/String;ILjava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=11, args_size=7
        start local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
        start local 1 // java.lang.invoke.MethodHandles$Lookup lookup
        start local 2 // java.lang.invoke.MethodType type
        start local 3 // org.jruby.runtime.CallType callType
        start local 4 // java.lang.String file
        start local 5 // int line
        start local 6 // java.lang.String name
         0: .line 61
            aload 0 /* this */
            aload 2 /* type */
            invokespecial java.lang.invoke.MutableCallSite.<init>:(Ljava/lang/invoke/MethodType;)V
         1: .line 49
            aload 0 /* this */
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.SITE_ID:Ljava/util/concurrent/atomic/AtomicLong;
            invokevirtual java.util.concurrent.atomic.AtomicLong.getAndIncrement:()J
            putfield org.jruby.runtime.invokedynamic.JRubyCallSite.siteID:J
         2: .line 58
            aload 0 /* this */
            getstatic org.jruby.runtime.callsite.CacheEntry.NULL_CACHE:Lorg/jruby/runtime/callsite/CacheEntry;
            putfield org.jruby.runtime.invokedynamic.JRubyCallSite.entry:Lorg/jruby/runtime/callsite/CacheEntry;
         3: .line 63
            aload 0 /* this */
            aload 6 /* name */
            putfield org.jruby.runtime.invokedynamic.JRubyCallSite.name:Ljava/lang/String;
         4: .line 64
            aload 0 /* this */
            aload 3 /* callType */
            putfield org.jruby.runtime.invokedynamic.JRubyCallSite.callType:Lorg/jruby/runtime/CallType;
         5: .line 69
            aload 3 /* callType */
            getstatic org.jruby.runtime.CallType.SUPER:Lorg/jruby/runtime/CallType;
            if_acmpne 9
         6: .line 71
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SUPER_SIG:Lcom/headius/invokebinder/Signature;
            astore 7 /* startSig */
        start local 7 // com.headius.invokebinder.Signature startSig
         7: .line 72
            iconst_4
            istore 8 /* argOffset */
        start local 8 // int argOffset
         8: .line 73
            goto 11
        end local 8 // int argOffset
        end local 7 // com.headius.invokebinder.Signature startSig
         9: .line 74
      StackMap locals: org.jruby.runtime.invokedynamic.JRubyCallSite java.lang.invoke.MethodHandles$Lookup java.lang.invoke.MethodType org.jruby.runtime.CallType java.lang.String int java.lang.String
      StackMap stack:
            getstatic org.jruby.runtime.invokedynamic.JRubyCallSite.STANDARD_SITE_SIG:Lcom/headius/invokebinder/Signature;
            astore 7 /* startSig */
        start local 7 // com.headius.invokebinder.Signature startSig
        10: .line 75
            iconst_3
            istore 8 /* argOffset */
        start local 8 // int argOffset
        11: .line 79
      StackMap locals: com.headius.invokebinder.Signature int
      StackMap stack:
            aload 2 /* type */
            aload 2 /* type */
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            iconst_1
            isub
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            ldc Lorg/jruby/runtime/Block;
            if_acmpne 25
        12: .line 80
            aload 2 /* type */
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            iload 8 /* argOffset */
            iconst_1
            iadd
            isub
            istore 9 /* arity */
        start local 9 // int arity
        13: .line 82
            iload 9 /* arity */
            iconst_1
            if_icmpne 17
            aload 2 /* type */
            iload 8 /* argOffset */
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            ldc [Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 17
        14: .line 83
            iconst_m1
            istore 9 /* arity */
        15: .line 84
            aload 7 /* startSig */
            ldc "args"
            ldc [Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            astore 7 /* startSig */
        16: .line 85
            goto 22
        17: .line 86
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        18: goto 21
        19: .line 87
      StackMap locals: int
      StackMap stack:
            aload 7 /* startSig */
            new java.lang.StringBuilder
            dup
            ldc "arg"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 10 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            ldc Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            astore 7 /* startSig */
        20: .line 86
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 10 /* i */
            iload 9 /* arity */
            if_icmplt 19
        end local 10 // int i
        22: .line 90
      StackMap locals:
      StackMap stack:
            aload 7 /* startSig */
            ldc "block"
            ldc Lorg/jruby/runtime/Block;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            astore 7 /* startSig */
        23: .line 91
            aload 0 /* this */
            aload 0 /* this */
            aload 7 /* startSig */
            dup_x1
            putfield org.jruby.runtime.invokedynamic.JRubyCallSite.signature:Lcom/headius/invokebinder/Signature;
            putfield org.jruby.runtime.invokedynamic.JRubyCallSite.fullSignature:Lcom/headius/invokebinder/Signature;
        24: .line 92
            goto 37
        end local 9 // int arity
        25: .line 93
      StackMap locals:
      StackMap stack:
            aload 2 /* type */
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            iload 8 /* argOffset */
            isub
            istore 9 /* arity */
        start local 9 // int arity
        26: .line 95
            iload 9 /* arity */
            iconst_1
            if_icmpne 30
            aload 2 /* type */
            iload 8 /* argOffset */
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            ldc [Lorg/jruby/runtime/builtin/IRubyObject;
            if_acmpne 30
        27: .line 96
            iconst_m1
            istore 9 /* arity */
        28: .line 97
            aload 7 /* startSig */
            ldc "args"
            ldc [Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            astore 7 /* startSig */
        29: .line 98
            goto 35
        30: .line 99
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        31: goto 34
        32: .line 100
      StackMap locals: int
      StackMap stack:
            aload 7 /* startSig */
            new java.lang.StringBuilder
            dup
            ldc "arg"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 10 /* i */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            ldc Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            astore 7 /* startSig */
        33: .line 99
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        34: iload 10 /* i */
            iload 9 /* arity */
            if_icmplt 32
        end local 10 // int i
        35: .line 103
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* startSig */
            putfield org.jruby.runtime.invokedynamic.JRubyCallSite.signature:Lcom/headius/invokebinder/Signature;
        36: .line 104
            aload 0 /* this */
            aload 7 /* startSig */
            ldc "block"
            ldc Lorg/jruby/runtime/Block;
            invokevirtual com.headius.invokebinder.Signature.appendArg:(Ljava/lang/String;Ljava/lang/Class;)Lcom/headius/invokebinder/Signature;
            putfield org.jruby.runtime.invokedynamic.JRubyCallSite.fullSignature:Lcom/headius/invokebinder/Signature;
        37: .line 107
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 9 /* arity */
            putfield org.jruby.runtime.invokedynamic.JRubyCallSite.arity:I
        38: .line 109
            aload 0 /* this */
            aload 4 /* file */
            putfield org.jruby.runtime.invokedynamic.JRubyCallSite.file:Ljava/lang/String;
        39: .line 110
            aload 0 /* this */
            iload 5 /* line */
            putfield org.jruby.runtime.invokedynamic.JRubyCallSite.line:I
        40: .line 111
            return
        end local 9 // int arity
        end local 8 // int argOffset
        end local 7 // com.headius.invokebinder.Signature startSig
        end local 6 // java.lang.String name
        end local 5 // int line
        end local 4 // java.lang.String file
        end local 3 // org.jruby.runtime.CallType callType
        end local 2 // java.lang.invoke.MethodType type
        end local 1 // java.lang.invoke.MethodHandles$Lookup lookup
        end local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   41     0       this  Lorg/jruby/runtime/invokedynamic/JRubyCallSite;
            0   41     1     lookup  Ljava/lang/invoke/MethodHandles$Lookup;
            0   41     2       type  Ljava/lang/invoke/MethodType;
            0   41     3   callType  Lorg/jruby/runtime/CallType;
            0   41     4       file  Ljava/lang/String;
            0   41     5       line  I
            0   41     6       name  Ljava/lang/String;
            7    9     7   startSig  Lcom/headius/invokebinder/Signature;
           10   41     7   startSig  Lcom/headius/invokebinder/Signature;
            8    9     8  argOffset  I
           11   41     8  argOffset  I
           13   25     9      arity  I
           26   41     9      arity  I
           18   22    10          i  I
           31   35    10          i  I
    MethodParameters:
          Name  Flags
      lookup    
      type      
      callType  
      file      
      line      
      name      

  public int arity();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
         0: .line 114
            aload 0 /* this */
            getfield org.jruby.runtime.invokedynamic.JRubyCallSite.arity:I
            ireturn
        end local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/runtime/invokedynamic/JRubyCallSite;

  public org.jruby.runtime.CallType callType();
    descriptor: ()Lorg/jruby/runtime/CallType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
         0: .line 118
            aload 0 /* this */
            getfield org.jruby.runtime.invokedynamic.JRubyCallSite.callType:Lorg/jruby/runtime/CallType;
            areturn
        end local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/runtime/invokedynamic/JRubyCallSite;

  public java.lang.String file();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
         0: .line 122
            aload 0 /* this */
            getfield org.jruby.runtime.invokedynamic.JRubyCallSite.file:Ljava/lang/String;
            areturn
        end local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/runtime/invokedynamic/JRubyCallSite;

  public int line();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
         0: .line 126
            aload 0 /* this */
            getfield org.jruby.runtime.invokedynamic.JRubyCallSite.line:I
            ireturn
        end local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/runtime/invokedynamic/JRubyCallSite;

  public void setInitialTarget(java.lang.invoke.MethodHandle);
    descriptor: (Ljava/lang/invoke/MethodHandle;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
        start local 1 // java.lang.invoke.MethodHandle target
         0: .line 130
            aload 0 /* this */
            aload 1 /* target */
            invokespecial java.lang.invoke.MutableCallSite.setTarget:(Ljava/lang/invoke/MethodHandle;)V
         1: .line 131
            return
        end local 1 // java.lang.invoke.MethodHandle target
        end local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/jruby/runtime/invokedynamic/JRubyCallSite;
            0    2     1  target  Ljava/lang/invoke/MethodHandle;
    MethodParameters:
        Name  Flags
      target  

  public com.headius.invokebinder.Signature signature();
    descriptor: ()Lcom/headius/invokebinder/Signature;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
         0: .line 141
            aload 0 /* this */
            getfield org.jruby.runtime.invokedynamic.JRubyCallSite.signature:Lcom/headius/invokebinder/Signature;
            areturn
        end local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/runtime/invokedynamic/JRubyCallSite;

  public com.headius.invokebinder.Signature fullSignature();
    descriptor: ()Lcom/headius/invokebinder/Signature;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
         0: .line 154
            aload 0 /* this */
            getfield org.jruby.runtime.invokedynamic.JRubyCallSite.fullSignature:Lcom/headius/invokebinder/Signature;
            areturn
        end local 0 // org.jruby.runtime.invokedynamic.JRubyCallSite this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/runtime/invokedynamic/JRubyCallSite;
}
SourceFile: "JRubyCallSite.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles