public abstract class org.aspectj.apache.bcel.Repository
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.aspectj.apache.bcel.Repository
  super_class: java.lang.Object
{
  private static org.aspectj.apache.bcel.util.Repository _repository;
    descriptor: Lorg/aspectj/apache/bcel/util/Repository;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 74
            aconst_null
            putstatic org.aspectj.apache.bcel.Repository._repository:Lorg/aspectj/apache/bcel/util/Repository;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.apache.bcel.Repository this
         0: .line 73
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.aspectj.apache.bcel.Repository this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/apache/bcel/Repository;

  public static org.aspectj.apache.bcel.util.Repository getRepository();
    descriptor: ()Lorg/aspectj/apache/bcel/util/Repository;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 80
            getstatic org.aspectj.apache.bcel.Repository._repository:Lorg/aspectj/apache/bcel/util/Repository;
            ifnonnull 2
         1: .line 81
            invokestatic org.aspectj.apache.bcel.util.SyntheticRepository.getInstance:()Lorg/aspectj/apache/bcel/util/SyntheticRepository;
            putstatic org.aspectj.apache.bcel.Repository._repository:Lorg/aspectj/apache/bcel/util/Repository;
         2: .line 83
      StackMap locals:
      StackMap stack:
            getstatic org.aspectj.apache.bcel.Repository._repository:Lorg/aspectj/apache/bcel/util/Repository;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static void setRepository(org.aspectj.apache.bcel.util.Repository);
    descriptor: (Lorg/aspectj/apache/bcel/util/Repository;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.apache.bcel.util.Repository rep
         0: .line 90
            aload 0 /* rep */
            putstatic org.aspectj.apache.bcel.Repository._repository:Lorg/aspectj/apache/bcel/util/Repository;
         1: .line 91
            return
        end local 0 // org.aspectj.apache.bcel.util.Repository rep
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   rep  Lorg/aspectj/apache/bcel/util/Repository;
    MethodParameters:
      Name  Flags
      rep   

  public static org.aspectj.apache.bcel.classfile.JavaClass lookupClass(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/JavaClass;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.String class_name
         0: .line 100
            invokestatic org.aspectj.apache.bcel.Repository.getRepository:()Lorg/aspectj/apache/bcel/util/Repository;
            aload 0 /* class_name */
            invokeinterface org.aspectj.apache.bcel.util.Repository.findClass:(Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/JavaClass;
            astore 1 /* clazz */
        start local 1 // org.aspectj.apache.bcel.classfile.JavaClass clazz
         1: .line 102
            aload 1 /* clazz */
            ifnull 4
         2: .line 103
            aload 1 /* clazz */
         3: areturn
         4: .line 106
      StackMap locals: org.aspectj.apache.bcel.classfile.JavaClass
      StackMap stack:
            invokestatic org.aspectj.apache.bcel.Repository.getRepository:()Lorg/aspectj/apache/bcel/util/Repository;
            aload 0 /* class_name */
            invokeinterface org.aspectj.apache.bcel.util.Repository.loadClass:(Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/JavaClass;
         5: areturn
        end local 1 // org.aspectj.apache.bcel.classfile.JavaClass clazz
         6: .line 107
      StackMap locals: java.lang.String
      StackMap stack: java.lang.ClassNotFoundException
            pop
         7: .line 108
            aconst_null
            areturn
        end local 0 // java.lang.String class_name
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0  class_name  Ljava/lang/String;
            1    6     1       clazz  Lorg/aspectj/apache/bcel/classfile/JavaClass;
      Exception table:
        from    to  target  type
           0     3       6  Class java.lang.ClassNotFoundException
           4     5       6  Class java.lang.ClassNotFoundException
    MethodParameters:
            Name  Flags
      class_name  

  public static org.aspectj.apache.bcel.util.ClassPath$ClassFile lookupClassFile(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/aspectj/apache/bcel/util/ClassPath$ClassFile;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String class_name
         0: .line 131
            invokestatic org.aspectj.apache.bcel.util.ClassPath.getSystemClassPath:()Lorg/aspectj/apache/bcel/util/ClassPath;
            aload 0 /* class_name */
            invokevirtual org.aspectj.apache.bcel.util.ClassPath.getClassFile:(Ljava/lang/String;)Lorg/aspectj/apache/bcel/util/ClassPath$ClassFile;
         1: areturn
         2: .line 132
      StackMap locals:
      StackMap stack: java.io.IOException
            pop
         3: .line 133
            aconst_null
            areturn
        end local 0 // java.lang.String class_name
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0  class_name  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     1       2  Class java.io.IOException
    MethodParameters:
            Name  Flags
      class_name  

  public static void clearCache();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 141
            invokestatic org.aspectj.apache.bcel.Repository.getRepository:()Lorg/aspectj/apache/bcel/util/Repository;
            invokeinterface org.aspectj.apache.bcel.util.Repository.clear:()V
         1: .line 142
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static org.aspectj.apache.bcel.classfile.JavaClass addClass(org.aspectj.apache.bcel.classfile.JavaClass);
    descriptor: (Lorg/aspectj/apache/bcel/classfile/JavaClass;)Lorg/aspectj/apache/bcel/classfile/JavaClass;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.aspectj.apache.bcel.classfile.JavaClass clazz
         0: .line 150
            invokestatic org.aspectj.apache.bcel.Repository.getRepository:()Lorg/aspectj/apache/bcel/util/Repository;
            aload 0 /* clazz */
            invokevirtual org.aspectj.apache.bcel.classfile.JavaClass.getClassName:()Ljava/lang/String;
            invokeinterface org.aspectj.apache.bcel.util.Repository.findClass:(Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/JavaClass;
            astore 1 /* old */
        start local 1 // org.aspectj.apache.bcel.classfile.JavaClass old
         1: .line 151
            invokestatic org.aspectj.apache.bcel.Repository.getRepository:()Lorg/aspectj/apache/bcel/util/Repository;
            aload 0 /* clazz */
            invokeinterface org.aspectj.apache.bcel.util.Repository.storeClass:(Lorg/aspectj/apache/bcel/classfile/JavaClass;)V
         2: .line 152
            aload 1 /* old */
            areturn
        end local 1 // org.aspectj.apache.bcel.classfile.JavaClass old
        end local 0 // org.aspectj.apache.bcel.classfile.JavaClass clazz
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  clazz  Lorg/aspectj/apache/bcel/classfile/JavaClass;
            1    3     1    old  Lorg/aspectj/apache/bcel/classfile/JavaClass;
    MethodParameters:
       Name  Flags
      clazz  

  public static void removeClass(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.String clazz
         0: .line 159
            invokestatic org.aspectj.apache.bcel.Repository.getRepository:()Lorg/aspectj/apache/bcel/util/Repository;
            invokestatic org.aspectj.apache.bcel.Repository.getRepository:()Lorg/aspectj/apache/bcel/util/Repository;
            aload 0 /* clazz */
            invokeinterface org.aspectj.apache.bcel.util.Repository.findClass:(Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/JavaClass;
            invokeinterface org.aspectj.apache.bcel.util.Repository.removeClass:(Lorg/aspectj/apache/bcel/classfile/JavaClass;)V
         1: .line 160
            return
        end local 0 // java.lang.String clazz
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  clazz  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      clazz  

  public static boolean instanceOf(org.aspectj.apache.bcel.classfile.JavaClass, org.aspectj.apache.bcel.classfile.JavaClass);
    descriptor: (Lorg/aspectj/apache/bcel/classfile/JavaClass;Lorg/aspectj/apache/bcel/classfile/JavaClass;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.apache.bcel.classfile.JavaClass clazz
        start local 1 // org.aspectj.apache.bcel.classfile.JavaClass super_class
         0: .line 208
            aload 0 /* clazz */
            aload 1 /* super_class */
            invokevirtual org.aspectj.apache.bcel.classfile.JavaClass.instanceOf:(Lorg/aspectj/apache/bcel/classfile/JavaClass;)Z
            ireturn
        end local 1 // org.aspectj.apache.bcel.classfile.JavaClass super_class
        end local 0 // org.aspectj.apache.bcel.classfile.JavaClass clazz
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0        clazz  Lorg/aspectj/apache/bcel/classfile/JavaClass;
            0    1     1  super_class  Lorg/aspectj/apache/bcel/classfile/JavaClass;
    MethodParameters:
             Name  Flags
      clazz        
      super_class  

  public static boolean instanceOf(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.String clazz
        start local 1 // java.lang.String super_class
         0: .line 215
            aload 0 /* clazz */
            invokestatic org.aspectj.apache.bcel.Repository.lookupClass:(Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/JavaClass;
            aload 1 /* super_class */
            invokestatic org.aspectj.apache.bcel.Repository.lookupClass:(Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/JavaClass;
            invokestatic org.aspectj.apache.bcel.Repository.instanceOf:(Lorg/aspectj/apache/bcel/classfile/JavaClass;Lorg/aspectj/apache/bcel/classfile/JavaClass;)Z
            ireturn
        end local 1 // java.lang.String super_class
        end local 0 // java.lang.String clazz
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0        clazz  Ljava/lang/String;
            0    1     1  super_class  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      clazz        
      super_class  

  public static boolean implementationOf(org.aspectj.apache.bcel.classfile.JavaClass, org.aspectj.apache.bcel.classfile.JavaClass);
    descriptor: (Lorg/aspectj/apache/bcel/classfile/JavaClass;Lorg/aspectj/apache/bcel/classfile/JavaClass;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.apache.bcel.classfile.JavaClass clazz
        start local 1 // org.aspectj.apache.bcel.classfile.JavaClass inter
         0: .line 236
            aload 0 /* clazz */
            aload 1 /* inter */
            invokevirtual org.aspectj.apache.bcel.classfile.JavaClass.implementationOf:(Lorg/aspectj/apache/bcel/classfile/JavaClass;)Z
            ireturn
        end local 1 // org.aspectj.apache.bcel.classfile.JavaClass inter
        end local 0 // org.aspectj.apache.bcel.classfile.JavaClass clazz
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  clazz  Lorg/aspectj/apache/bcel/classfile/JavaClass;
            0    1     1  inter  Lorg/aspectj/apache/bcel/classfile/JavaClass;
    MethodParameters:
       Name  Flags
      clazz  
      inter  

  public static boolean implementationOf(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.String clazz
        start local 1 // java.lang.String inter
         0: .line 243
            aload 0 /* clazz */
            invokestatic org.aspectj.apache.bcel.Repository.lookupClass:(Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/JavaClass;
            aload 1 /* inter */
            invokestatic org.aspectj.apache.bcel.Repository.lookupClass:(Ljava/lang/String;)Lorg/aspectj/apache/bcel/classfile/JavaClass;
            invokestatic org.aspectj.apache.bcel.Repository.implementationOf:(Lorg/aspectj/apache/bcel/classfile/JavaClass;Lorg/aspectj/apache/bcel/classfile/JavaClass;)Z
            ireturn
        end local 1 // java.lang.String inter
        end local 0 // java.lang.String clazz
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  clazz  Ljava/lang/String;
            0    1     1  inter  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      clazz  
      inter  
}
SourceFile: "Repository.java"
InnerClasses:
  public abstract ClassFile = org.aspectj.apache.bcel.util.ClassPath$ClassFile of org.aspectj.apache.bcel.util.ClassPath