class com.sun.tools.javac.jvm.ClassReader$5 extends com.sun.tools.javac.jvm.ClassReader$AttributeReader
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.sun.tools.javac.jvm.ClassReader$5
  super_class: com.sun.tools.javac.jvm.ClassReader$AttributeReader
{
  final com.sun.tools.javac.jvm.ClassReader this$0;
    descriptor: Lcom/sun/tools/javac/jvm/ClassReader;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(com.sun.tools.javac.jvm.ClassReader, com.sun.tools.javac.jvm.ClassReader, com.sun.tools.javac.util.Name, com.sun.tools.javac.jvm.ClassFile$Version, java.util.Set);
    descriptor: (Lcom/sun/tools/javac/jvm/ClassReader;Lcom/sun/tools/javac/jvm/ClassReader;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/jvm/ClassFile$Version;Ljava/util/Set;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=6, args_size=6
        start local 0 // com.sun.tools.javac.jvm.ClassReader$5 this
        start local 3 // com.sun.tools.javac.util.Name $anonymous0
        start local 4 // com.sun.tools.javac.jvm.ClassFile$Version $anonymous1
        start local 5 // java.util.Set $anonymous2
         0: .line 839
            aload 0 /* this */
            aload 2
            putfield com.sun.tools.javac.jvm.ClassReader$5.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
            aload 0 /* this */
            aload 1
            aload 3 /* $anonymous0 */
            aload 4 /* $anonymous1 */
            aload 5 /* $anonymous2 */
            invokespecial com.sun.tools.javac.jvm.ClassReader$AttributeReader.<init>:(Lcom/sun/tools/javac/jvm/ClassReader;Lcom/sun/tools/javac/util/Name;Lcom/sun/tools/javac/jvm/ClassFile$Version;Ljava/util/Set;)V
            return
        end local 5 // java.util.Set $anonymous2
        end local 4 // com.sun.tools.javac.jvm.ClassFile$Version $anonymous1
        end local 3 // com.sun.tools.javac.util.Name $anonymous0
        end local 0 // com.sun.tools.javac.jvm.ClassReader$5 this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    1     0         this  Lcom/sun/tools/javac/jvm/ClassReader$5;
            0    1     3  $anonymous0  Lcom/sun/tools/javac/util/Name;
            0    1     4  $anonymous1  Lcom/sun/tools/javac/jvm/ClassFile$Version;
            0    1     5  $anonymous2  Ljava/util/Set<Lcom/sun/tools/javac/jvm/ClassReader$AttributeKind;>;
    MethodParameters:
             Name  Flags
      this$0       final
      this$1       final
      $anonymous0  
      $anonymous1  
      $anonymous2  

  protected void read(com.sun.tools.javac.code.Symbol, int);
    descriptor: (Lcom/sun/tools/javac/code/Symbol;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // com.sun.tools.javac.jvm.ClassReader$5 this
        start local 1 // com.sun.tools.javac.code.Symbol sym
        start local 2 // int attrLen
         0: .line 841
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$5.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
            invokevirtual com.sun.tools.javac.jvm.ClassReader.nextChar:()C
            istore 3 /* nexceptions */
        start local 3 // int nexceptions
         1: .line 842
            invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
            astore 4 /* thrown */
        start local 4 // com.sun.tools.javac.util.List thrown
         2: .line 843
            iconst_0
            istore 5 /* j */
        start local 5 // int j
         3: goto 6
         4: .line 844
      StackMap locals: int com.sun.tools.javac.util.List int
      StackMap stack:
            aload 4 /* thrown */
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$5.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
            getfield com.sun.tools.javac.jvm.ClassReader.poolReader:Lcom/sun/tools/javac/jvm/PoolReader;
            aload 0 /* this */
            getfield com.sun.tools.javac.jvm.ClassReader$5.this$0:Lcom/sun/tools/javac/jvm/ClassReader;
            invokevirtual com.sun.tools.javac.jvm.ClassReader.nextChar:()C
            invokevirtual com.sun.tools.javac.jvm.PoolReader.getClass:(I)Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
            getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.util.List.prepend:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
            astore 4 /* thrown */
         5: .line 843
            iinc 5 /* j */ 1
      StackMap locals:
      StackMap stack:
         6: iload 5 /* j */
            iload 3 /* nexceptions */
            if_icmplt 4
        end local 5 // int j
         7: .line 845
            aload 1 /* sym */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Type.getThrownTypes:()Lcom/sun/tools/javac/util/List;
            invokevirtual com.sun.tools.javac.util.List.isEmpty:()Z
            ifeq 9
         8: .line 846
            aload 1 /* sym */
            getfield com.sun.tools.javac.code.Symbol.type:Lcom/sun/tools/javac/code/Type;
            invokevirtual com.sun.tools.javac.code.Type.asMethodType:()Lcom/sun/tools/javac/code/Type$MethodType;
            aload 4 /* thrown */
            invokevirtual com.sun.tools.javac.util.List.reverse:()Lcom/sun/tools/javac/util/List;
            putfield com.sun.tools.javac.code.Type$MethodType.thrown:Lcom/sun/tools/javac/util/List;
         9: .line 847
      StackMap locals:
      StackMap stack:
            return
        end local 4 // com.sun.tools.javac.util.List thrown
        end local 3 // int nexceptions
        end local 2 // int attrLen
        end local 1 // com.sun.tools.javac.code.Symbol sym
        end local 0 // com.sun.tools.javac.jvm.ClassReader$5 this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Lcom/sun/tools/javac/jvm/ClassReader$5;
            0   10     1          sym  Lcom/sun/tools/javac/code/Symbol;
            0   10     2      attrLen  I
            1   10     3  nexceptions  I
            2   10     4       thrown  Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/code/Type;>;
            3    7     5            j  I
    MethodParameters:
         Name  Flags
      sym      
      attrLen  
}
SourceFile: "ClassReader.java"
EnclosingMethod: com.sun.tools.javac.jvm.ClassReader.initAttributeReaders:()V
NestHost: com.sun.tools.javac.jvm.ClassReader
InnerClasses:
  public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
  public MethodType = com.sun.tools.javac.code.Type$MethodType of com.sun.tools.javac.code.Type
  public final Version = com.sun.tools.javac.jvm.ClassFile$Version of com.sun.tools.javac.jvm.ClassFile
  com.sun.tools.javac.jvm.ClassReader$5
  protected final AttributeKind = com.sun.tools.javac.jvm.ClassReader$AttributeKind of com.sun.tools.javac.jvm.ClassReader
  protected abstract AttributeReader = com.sun.tools.javac.jvm.ClassReader$AttributeReader of com.sun.tools.javac.jvm.ClassReader