class org.jruby.RubyEnumerable$12 extends org.jruby.runtime.JavaInternalBlockBody
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.jruby.RubyEnumerable$12
  super_class: org.jruby.runtime.JavaInternalBlockBody
{
  final java.util.concurrent.atomic.AtomicInteger i;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x0010) ACC_FINAL

  private final org.jruby.runtime.builtin.IRubyObject[][] val$valuesAndCriteriaArray;
    descriptor: [[Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final org.jruby.runtime.Block val$block;
    descriptor: Lorg/jruby/runtime/Block;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(org.jruby.Ruby, org.jruby.runtime.Signature, org.jruby.runtime.builtin.IRubyObject[][], org.jruby.runtime.Block);
    descriptor: (Lorg/jruby/Ruby;Lorg/jruby/runtime/Signature;[[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.jruby.RubyEnumerable$12 this
        start local 1 // org.jruby.Ruby $anonymous0
        start local 2 // org.jruby.runtime.Signature $anonymous1
         0: .line 546
            aload 0 /* this */
            aload 3
            putfield org.jruby.RubyEnumerable$12.val$valuesAndCriteriaArray:[[Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            aload 4
            putfield org.jruby.RubyEnumerable$12.val$block:Lorg/jruby/runtime/Block;
            aload 0 /* this */
            aload 1 /* $anonymous0 */
            aload 2 /* $anonymous1 */
            invokespecial org.jruby.runtime.JavaInternalBlockBody.<init>:(Lorg/jruby/Ruby;Lorg/jruby/runtime/Signature;)V
         1: .line 547
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicInteger
            dup
            iconst_0
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
            putfield org.jruby.RubyEnumerable$12.i:Ljava/util/concurrent/atomic/AtomicInteger;
         2: .line 546
            return
        end local 2 // org.jruby.runtime.Signature $anonymous1
        end local 1 // org.jruby.Ruby $anonymous0
        end local 0 // org.jruby.RubyEnumerable$12 this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lorg/jruby/RubyEnumerable$12;
            0    3     1  $anonymous0  Lorg/jruby/Ruby;
            0    3     2  $anonymous1  Lorg/jruby/runtime/Signature;
    MethodParameters:
                            Name  Flags
      $anonymous0                 
      $anonymous1                 
      val$valuesAndCriteriaArray  final
      val$block                   final

  public org.jruby.runtime.builtin.IRubyObject yield(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
    descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.jruby.RubyEnumerable$12 this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.builtin.IRubyObject[] args
         0: .line 550
            aload 0 /* this */
            aload 1 /* context */
            aconst_null
            aload 1 /* context */
            aload 2 /* args */
            invokestatic org.jruby.RubyEnumerable.packEnumValues:(Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            invokevirtual org.jruby.RubyEnumerable$12.doYield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 2 // org.jruby.runtime.builtin.IRubyObject[] args
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyEnumerable$12 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/jruby/RubyEnumerable$12;
            0    1     1  context  Lorg/jruby/runtime/ThreadContext;
            0    1     2     args  [Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      args     

  protected org.jruby.runtime.builtin.IRubyObject doYield(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block, org.jruby.runtime.builtin.IRubyObject);
    descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.jruby.RubyEnumerable$12 this
        start local 1 // org.jruby.runtime.ThreadContext context
        start local 2 // org.jruby.runtime.Block unused
        start local 3 // org.jruby.runtime.builtin.IRubyObject value
         0: .line 554
            aload 0 /* this */
            getfield org.jruby.RubyEnumerable$12.val$valuesAndCriteriaArray:[[Lorg/jruby/runtime/builtin/IRubyObject;
            aload 0 /* this */
            getfield org.jruby.RubyEnumerable$12.i:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.getAndIncrement:()I
            aaload
            astore 4 /* myVandC */
        start local 4 // org.jruby.runtime.builtin.IRubyObject[] myVandC
         1: .line 555
            aload 4 /* myVandC */
            iconst_0
            aload 3 /* value */
            aastore
         2: .line 556
            aload 4 /* myVandC */
            iconst_1
            aload 0 /* this */
            getfield org.jruby.RubyEnumerable$12.val$block:Lorg/jruby/runtime/Block;
            aload 1 /* context */
            aload 3 /* value */
            invokevirtual org.jruby.runtime.Block.yield:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
            aastore
         3: .line 557
            aload 1 /* context */
            getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
            areturn
        end local 4 // org.jruby.runtime.builtin.IRubyObject[] myVandC
        end local 3 // org.jruby.runtime.builtin.IRubyObject value
        end local 2 // org.jruby.runtime.Block unused
        end local 1 // org.jruby.runtime.ThreadContext context
        end local 0 // org.jruby.RubyEnumerable$12 this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/jruby/RubyEnumerable$12;
            0    4     1  context  Lorg/jruby/runtime/ThreadContext;
            0    4     2   unused  Lorg/jruby/runtime/Block;
            0    4     3    value  Lorg/jruby/runtime/builtin/IRubyObject;
            1    4     4  myVandC  [Lorg/jruby/runtime/builtin/IRubyObject;
    MethodParameters:
         Name  Flags
      context  
      unused   
      value    
}
SourceFile: "RubyEnumerable.java"
EnclosingMethod: org.jruby.RubyEnumerable.sort_by:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
NestHost: org.jruby.RubyEnumerable
InnerClasses:
  org.jruby.RubyEnumerable$12