class com.sun.tools.classfile.Dependencies$APIDependencyFinder extends com.sun.tools.classfile.Dependencies$BasicDependencyFinder
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.classfile.Dependencies$APIDependencyFinder
  super_class: com.sun.tools.classfile.Dependencies$BasicDependencyFinder
{
  private int showAccess;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  void <init>(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.tools.classfile.Dependencies$APIDependencyFinder this
        start local 1 // int access
         0: .line 501
            aload 0 /* this */
            invokespecial com.sun.tools.classfile.Dependencies$BasicDependencyFinder.<init>:()V
         1: .line 502
            iload 1 /* access */
            tableswitch { // 0 - 4
                    0: 2
                    1: 2
                    2: 2
                    3: 4
                    4: 2
              default: 4
          }
         2: .line 507
      StackMap locals: com.sun.tools.classfile.Dependencies$APIDependencyFinder int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* access */
            putfield com.sun.tools.classfile.Dependencies$APIDependencyFinder.showAccess:I
         3: .line 508
            goto 7
         4: .line 510
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "invalid access 0x"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         5: .line 511
            iload 1 /* access */
            invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 510
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 513
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int access
        end local 0 // com.sun.tools.classfile.Dependencies$APIDependencyFinder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/sun/tools/classfile/Dependencies$APIDependencyFinder;
            0    8     1  access  I
    MethodParameters:
        Name  Flags
      access  

  public java.lang.Iterable<? extends com.sun.tools.classfile.Dependency> findDependencies(com.sun.tools.classfile.ClassFile);
    descriptor: (Lcom/sun/tools/classfile/ClassFile;)Ljava/lang/Iterable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=2
        start local 0 // com.sun.tools.classfile.Dependencies$APIDependencyFinder this
        start local 1 // com.sun.tools.classfile.ClassFile classfile
         0: .line 517
            new com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor
            dup
            aload 0 /* this */
            aload 1 /* classfile */
            invokespecial com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor.<init>:(Lcom/sun/tools/classfile/Dependencies$BasicDependencyFinder;Lcom/sun/tools/classfile/ClassFile;)V
            astore 2 /* v */
        start local 2 // com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor v
         1: .line 518
            aload 2 /* v */
            aload 1 /* classfile */
            getfield com.sun.tools.classfile.ClassFile.super_class:I
            invokevirtual com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor.addClass:(I)V
         2: .line 519
            aload 2 /* v */
            aload 1 /* classfile */
            getfield com.sun.tools.classfile.ClassFile.interfaces:[I
            invokevirtual com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor.addClasses:([I)V
         3: .line 521
            aload 1 /* classfile */
            getfield com.sun.tools.classfile.ClassFile.fields:[Lcom/sun/tools/classfile/Field;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 8
      StackMap locals: com.sun.tools.classfile.Dependencies$APIDependencyFinder com.sun.tools.classfile.ClassFile com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor top int int com.sun.tools.classfile.Field[]
      StackMap stack:
         4: aload 6
            iload 4
            aaload
            astore 3 /* f */
        start local 3 // com.sun.tools.classfile.Field f
         5: .line 522
            aload 0 /* this */
            aload 3 /* f */
            getfield com.sun.tools.classfile.Field.access_flags:Lcom/sun/tools/classfile/AccessFlags;
            invokevirtual com.sun.tools.classfile.Dependencies$APIDependencyFinder.checkAccess:(Lcom/sun/tools/classfile/AccessFlags;)Z
            ifeq 7
         6: .line 523
            aload 2 /* v */
            aload 3 /* f */
            getfield com.sun.tools.classfile.Field.descriptor:Lcom/sun/tools/classfile/Descriptor;
            aload 3 /* f */
            getfield com.sun.tools.classfile.Field.attributes:Lcom/sun/tools/classfile/Attributes;
            invokevirtual com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor.scan:(Lcom/sun/tools/classfile/Descriptor;Lcom/sun/tools/classfile/Attributes;)V
        end local 3 // com.sun.tools.classfile.Field f
         7: .line 521
      StackMap locals:
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
         8: iload 4
            iload 5
            if_icmplt 4
         9: .line 525
            aload 1 /* classfile */
            getfield com.sun.tools.classfile.ClassFile.methods:[Lcom/sun/tools/classfile/Method;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 18
      StackMap locals: com.sun.tools.classfile.Dependencies$APIDependencyFinder com.sun.tools.classfile.ClassFile com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor top int int com.sun.tools.classfile.Method[]
      StackMap stack:
        10: aload 6
            iload 4
            aaload
            astore 3 /* m */
        start local 3 // com.sun.tools.classfile.Method m
        11: .line 526
            aload 0 /* this */
            aload 3 /* m */
            getfield com.sun.tools.classfile.Method.access_flags:Lcom/sun/tools/classfile/AccessFlags;
            invokevirtual com.sun.tools.classfile.Dependencies$APIDependencyFinder.checkAccess:(Lcom/sun/tools/classfile/AccessFlags;)Z
            ifeq 17
        12: .line 527
            aload 2 /* v */
            aload 3 /* m */
            getfield com.sun.tools.classfile.Method.descriptor:Lcom/sun/tools/classfile/Descriptor;
            aload 3 /* m */
            getfield com.sun.tools.classfile.Method.attributes:Lcom/sun/tools/classfile/Attributes;
            invokevirtual com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor.scan:(Lcom/sun/tools/classfile/Descriptor;Lcom/sun/tools/classfile/Attributes;)V
        13: .line 529
            aload 3 /* m */
            getfield com.sun.tools.classfile.Method.attributes:Lcom/sun/tools/classfile/Attributes;
            ldc "Exceptions"
            invokevirtual com.sun.tools.classfile.Attributes.get:(Ljava/lang/String;)Lcom/sun/tools/classfile/Attribute;
            checkcast com.sun.tools.classfile.Exceptions_attribute
        14: .line 528
            astore 7 /* e */
        start local 7 // com.sun.tools.classfile.Exceptions_attribute e
        15: .line 530
            aload 7 /* e */
            ifnull 17
        16: .line 531
            aload 2 /* v */
            aload 7 /* e */
            getfield com.sun.tools.classfile.Exceptions_attribute.exception_index_table:[I
            invokevirtual com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor.addClasses:([I)V
        end local 7 // com.sun.tools.classfile.Exceptions_attribute e
        end local 3 // com.sun.tools.classfile.Method m
        17: .line 525
      StackMap locals:
      StackMap stack:
            iinc 4 1
      StackMap locals:
      StackMap stack:
        18: iload 4
            iload 5
            if_icmplt 10
        19: .line 534
            aload 2 /* v */
            getfield com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor.deps:Ljava/util/Set;
        20: areturn
        end local 2 // com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor v
        21: .line 535
      StackMap locals: com.sun.tools.classfile.Dependencies$APIDependencyFinder com.sun.tools.classfile.ClassFile
      StackMap stack: com.sun.tools.classfile.ConstantPoolException
            astore 2 /* e */
        start local 2 // com.sun.tools.classfile.ConstantPoolException e
        22: .line 536
            new com.sun.tools.classfile.Dependencies$ClassFileError
            dup
            aload 2 /* e */
            invokespecial com.sun.tools.classfile.Dependencies$ClassFileError.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 2 // com.sun.tools.classfile.ConstantPoolException e
        end local 1 // com.sun.tools.classfile.ClassFile classfile
        end local 0 // com.sun.tools.classfile.Dependencies$APIDependencyFinder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   23     0       this  Lcom/sun/tools/classfile/Dependencies$APIDependencyFinder;
            0   23     1  classfile  Lcom/sun/tools/classfile/ClassFile;
            1   21     2          v  Lcom/sun/tools/classfile/Dependencies$BasicDependencyFinder$Visitor;
            5    7     3          f  Lcom/sun/tools/classfile/Field;
           11   17     3          m  Lcom/sun/tools/classfile/Method;
           15   17     7          e  Lcom/sun/tools/classfile/Exceptions_attribute;
           22   23     2          e  Lcom/sun/tools/classfile/ConstantPoolException;
      Exception table:
        from    to  target  type
           0    20      21  Class com.sun.tools.classfile.ConstantPoolException
    Signature: (Lcom/sun/tools/classfile/ClassFile;)Ljava/lang/Iterable<+Lcom/sun/tools/classfile/Dependency;>;
    MethodParameters:
           Name  Flags
      classfile  

  boolean checkAccess(com.sun.tools.classfile.AccessFlags);
    descriptor: (Lcom/sun/tools/classfile/AccessFlags;)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // com.sun.tools.classfile.Dependencies$APIDependencyFinder this
        start local 1 // com.sun.tools.classfile.AccessFlags flags
         0: .line 542
            aload 1 /* flags */
            iconst_1
            invokevirtual com.sun.tools.classfile.AccessFlags.is:(I)Z
            istore 2 /* isPublic */
        start local 2 // boolean isPublic
         1: .line 543
            aload 1 /* flags */
            iconst_4
            invokevirtual com.sun.tools.classfile.AccessFlags.is:(I)Z
            istore 3 /* isProtected */
        start local 3 // boolean isProtected
         2: .line 544
            aload 1 /* flags */
            iconst_2
            invokevirtual com.sun.tools.classfile.AccessFlags.is:(I)Z
            istore 4 /* isPrivate */
        start local 4 // boolean isPrivate
         3: .line 545
            iload 2 /* isPublic */
            ifne 4
            iload 3 /* isProtected */
            ifne 4
            iload 4 /* isPrivate */
            ifeq 5
      StackMap locals: int int int
      StackMap stack:
         4: iconst_0
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_1
      StackMap locals:
      StackMap stack: int
         6: istore 5 /* isPackage */
        start local 5 // boolean isPackage
         7: .line 547
            aload 0 /* this */
            getfield com.sun.tools.classfile.Dependencies$APIDependencyFinder.showAccess:I
            iconst_1
            if_icmpne 9
            iload 3 /* isProtected */
            ifne 8
            iload 4 /* isPrivate */
            ifne 8
            iload 5 /* isPackage */
            ifeq 9
         8: .line 548
      StackMap locals: int
      StackMap stack:
            iconst_0
            ireturn
         9: .line 549
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.classfile.Dependencies$APIDependencyFinder.showAccess:I
            iconst_4
            if_icmpne 11
            iload 4 /* isPrivate */
            ifne 10
            iload 5 /* isPackage */
            ifeq 11
        10: .line 550
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        11: .line 551
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.tools.classfile.Dependencies$APIDependencyFinder.showAccess:I
            ifne 13
            iload 4 /* isPrivate */
            ifeq 13
        12: .line 552
            iconst_0
            ireturn
        13: .line 554
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 5 // boolean isPackage
        end local 4 // boolean isPrivate
        end local 3 // boolean isProtected
        end local 2 // boolean isPublic
        end local 1 // com.sun.tools.classfile.AccessFlags flags
        end local 0 // com.sun.tools.classfile.Dependencies$APIDependencyFinder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Lcom/sun/tools/classfile/Dependencies$APIDependencyFinder;
            0   14     1        flags  Lcom/sun/tools/classfile/AccessFlags;
            1   14     2     isPublic  Z
            2   14     3  isProtected  Z
            3   14     4    isPrivate  Z
            7   14     5    isPackage  Z
    MethodParameters:
       Name  Flags
      flags  
}
SourceFile: "Dependencies.java"
NestHost: com.sun.tools.classfile.Dependencies
InnerClasses:
  APIDependencyFinder = com.sun.tools.classfile.Dependencies$APIDependencyFinder of com.sun.tools.classfile.Dependencies
  abstract BasicDependencyFinder = com.sun.tools.classfile.Dependencies$BasicDependencyFinder of com.sun.tools.classfile.Dependencies
  Visitor = com.sun.tools.classfile.Dependencies$BasicDependencyFinder$Visitor of com.sun.tools.classfile.Dependencies$BasicDependencyFinder
  public ClassFileError = com.sun.tools.classfile.Dependencies$ClassFileError of com.sun.tools.classfile.Dependencies