class org.jruby.RubyClass$MethodReificator extends org.jruby.RubyClass$BaseReificator
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.jruby.RubyClass$MethodReificator
  super_class: org.jruby.RubyClass$BaseReificator
{
  final org.jruby.RubyClass this$0;
    descriptor: Lorg/jruby/RubyClass;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(java.lang.Class<?>, java.lang.String, java.lang.String);
    descriptor: (Lorg/jruby/RubyClass;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.jruby.RubyClass$MethodReificator this
        start local 2 // java.lang.Class reifiedParent
        start local 3 // java.lang.String javaName
        start local 4 // java.lang.String javaPath
         0: .line 1471
            aload 0 /* this */
            aload 1
            putfield org.jruby.RubyClass$MethodReificator.this$0:Lorg/jruby/RubyClass;
         1: .line 1472
            aload 0 /* this */
            aload 1
            aload 2 /* reifiedParent */
            aload 3 /* javaName */
            aload 4 /* javaPath */
            invokespecial org.jruby.RubyClass$BaseReificator.<init>:(Lorg/jruby/RubyClass;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)V
         2: .line 1473
            return
        end local 4 // java.lang.String javaPath
        end local 3 // java.lang.String javaName
        end local 2 // java.lang.Class reifiedParent
        end local 0 // org.jruby.RubyClass$MethodReificator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    3     0           this  Lorg/jruby/RubyClass$MethodReificator;
            0    3     2  reifiedParent  Ljava/lang/Class<*>;
            0    3     3       javaName  Ljava/lang/String;
            0    3     4       javaPath  Ljava/lang/String;
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;Ljava/lang/String;)V
    MethodParameters:
               Name  Flags
      this$0         final
      reifiedParent  
      javaName       
      javaPath       

  public void customReify();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.jruby.RubyClass$MethodReificator this
         0: .line 1477
            aload 0 /* this */
            invokevirtual org.jruby.RubyClass$MethodReificator.addClassAnnotations:()V
         1: .line 1480
            aload 0 /* this */
            invokevirtual org.jruby.RubyClass$MethodReificator.defineFields:()V
         2: .line 1483
            new java.util.HashSet
            dup
            aload 0 /* this */
            getfield org.jruby.RubyClass$MethodReificator.this$0:Lorg/jruby/RubyClass;
            invokevirtual org.jruby.RubyClass.getMethods:()Ljava/util/Map;
            invokeinterface java.util.Map.size:()I
            invokespecial java.util.HashSet.<init>:(I)V
            astore 1 /* instanceMethods */
        start local 1 // java.util.Set instanceMethods
         3: .line 1486
            aload 0 /* this */
            aload 1 /* instanceMethods */
            invokevirtual org.jruby.RubyClass$MethodReificator.defineInstanceMethods:(Ljava/util/Set;)V
         4: .line 1489
            aload 0 /* this */
            aload 1 /* instanceMethods */
            invokevirtual org.jruby.RubyClass$MethodReificator.defineClassMethods:(Ljava/util/Set;)V
         5: .line 1490
            return
        end local 1 // java.util.Set instanceMethods
        end local 0 // org.jruby.RubyClass$MethodReificator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0             this  Lorg/jruby/RubyClass$MethodReificator;
            3    6     1  instanceMethods  Ljava/util/Set<Ljava/lang/String;>;

  private void addClassAnnotations();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.RubyClass$MethodReificator this
         0: .line 1498
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tAnnotationVisitor cannot be resolved to a type\n\tClassWriter cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jruby.RubyClass$MethodReificator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyClass$MethodReificator;

  private void defineFields();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.jruby.RubyClass$MethodReificator this
         0: .line 1511
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tFieldVisitor cannot be resolved to a type\n\tClassWriter cannot be resolved to a type\n\tACC_PUBLIC cannot be resolved to a variable\n\tAnnotationVisitor cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jruby.RubyClass$MethodReificator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyClass$MethodReificator;

  private void defineClassMethods(java.util.Set<java.lang.String>);
    descriptor: (Ljava/util/Set;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.RubyClass$MethodReificator this
         0: .line 1545
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tClassWriter cannot be resolved to a type\n\tACC_PUBLIC cannot be resolved to a variable\n\tACC_STATIC cannot be resolved to a variable\n\tClassWriter cannot be resolved to a type\n\tACC_PUBLIC cannot be resolved to a variable\n\tACC_VARARGS cannot be resolved to a variable\n\tACC_STATIC cannot be resolved to a variable\n\tClassWriter cannot be resolved to a type\n\tACC_PUBLIC cannot be resolved to a variable\n\tACC_VARARGS cannot be resolved to a variable\n\tACC_STATIC cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jruby.RubyClass$MethodReificator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyClass$MethodReificator;
    Signature: (Ljava/util/Set<Ljava/lang/String;>;)V
    MethodParameters:
                 Name  Flags
      instanceMethods  

  private void defineInstanceMethods(java.util.Set<java.lang.String>);
    descriptor: (Ljava/util/Set;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jruby.RubyClass$MethodReificator this
         0: .line 1614
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tClassWriter cannot be resolved to a type\n\tACC_PUBLIC cannot be resolved to a variable\n\tClassWriter cannot be resolved to a type\n\tACC_PUBLIC cannot be resolved to a variable\n\tClassWriter cannot be resolved to a type\n\tACC_PUBLIC cannot be resolved to a variable\n\tClassWriter cannot be resolved to a type\n\tACC_PUBLIC cannot be resolved to a variable\n\tACC_VARARGS cannot be resolved to a variable\n\tACC_PUBLIC cannot be resolved to a variable\n\tACC_VARARGS cannot be resolved to a variable\n\tClassWriter cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jruby.RubyClass$MethodReificator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jruby/RubyClass$MethodReificator;
    Signature: (Ljava/util/Set<Ljava/lang/String;>;)V
    MethodParameters:
                 Name  Flags
      instanceMethods  
}
SourceFile: "RubyClass.java"
NestHost: org.jruby.RubyClass
InnerClasses:
  private abstract BaseReificator = org.jruby.RubyClass$BaseReificator of org.jruby.RubyClass
  private MethodReificator = org.jruby.RubyClass$MethodReificator of org.jruby.RubyClass