public final class sun.tools.java.BinaryMember extends sun.tools.java.MemberDefinition
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: sun.tools.java.BinaryMember
  super_class: sun.tools.java.MemberDefinition
{
  sun.tools.tree.Expression value;
    descriptor: Lsun/tools/tree/Expression;
    flags: (0x0000) 

  sun.tools.java.BinaryAttribute atts;
    descriptor: Lsun/tools/java/BinaryAttribute;
    flags: (0x0000) 

  private boolean isConstantCache;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean isConstantCached;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  public void <init>(sun.tools.java.ClassDefinition, int, sun.tools.java.Type, sun.tools.java.Identifier, sun.tools.java.BinaryAttribute);
    descriptor: (Lsun/tools/java/ClassDefinition;ILsun/tools/java/Type;Lsun/tools/java/Identifier;Lsun/tools/java/BinaryAttribute;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=6, args_size=6
        start local 0 // sun.tools.java.BinaryMember this
        start local 1 // sun.tools.java.ClassDefinition clazz
        start local 2 // int modifiers
        start local 3 // sun.tools.java.Type type
        start local 4 // sun.tools.java.Identifier name
        start local 5 // sun.tools.java.BinaryAttribute atts
         0: .line 52
            aload 0 /* this */
            lconst_0
            aload 1 /* clazz */
            iload 2 /* modifiers */
            aload 3 /* type */
            aload 4 /* name */
            aconst_null
            aconst_null
            invokespecial sun.tools.java.MemberDefinition.<init>:(JLsun/tools/java/ClassDefinition;ILsun/tools/java/Type;Lsun/tools/java/Identifier;[Lsun/tools/java/IdentifierToken;Lsun/tools/tree/Node;)V
         1: .line 146
            aload 0 /* this */
            iconst_0
            putfield sun.tools.java.BinaryMember.isConstantCache:Z
         2: .line 147
            aload 0 /* this */
            iconst_0
            putfield sun.tools.java.BinaryMember.isConstantCached:Z
         3: .line 53
            aload 0 /* this */
            aload 5 /* atts */
            putfield sun.tools.java.BinaryMember.atts:Lsun/tools/java/BinaryAttribute;
         4: .line 56
            aload 0 /* this */
            getstatic sun.tools.java.BinaryMember.idDeprecated:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.BinaryMember.getAttribute:(Lsun/tools/java/Identifier;)[B
            ifnull 6
         5: .line 57
            aload 0 /* this */
            dup
            getfield sun.tools.java.BinaryMember.modifiers:I
            ldc 262144
            ior
            putfield sun.tools.java.BinaryMember.modifiers:I
         6: .line 61
      StackMap locals: sun.tools.java.BinaryMember sun.tools.java.ClassDefinition int sun.tools.java.Type sun.tools.java.Identifier sun.tools.java.BinaryAttribute
      StackMap stack:
            aload 0 /* this */
            getstatic sun.tools.java.BinaryMember.idSynthetic:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.BinaryMember.getAttribute:(Lsun/tools/java/Identifier;)[B
            ifnull 8
         7: .line 62
            aload 0 /* this */
            dup
            getfield sun.tools.java.BinaryMember.modifiers:I
            ldc 524288
            ior
            putfield sun.tools.java.BinaryMember.modifiers:I
         8: .line 64
      StackMap locals:
      StackMap stack:
            return
        end local 5 // sun.tools.java.BinaryAttribute atts
        end local 4 // sun.tools.java.Identifier name
        end local 3 // sun.tools.java.Type type
        end local 2 // int modifiers
        end local 1 // sun.tools.java.ClassDefinition clazz
        end local 0 // sun.tools.java.BinaryMember this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lsun/tools/java/BinaryMember;
            0    9     1      clazz  Lsun/tools/java/ClassDefinition;
            0    9     2  modifiers  I
            0    9     3       type  Lsun/tools/java/Type;
            0    9     4       name  Lsun/tools/java/Identifier;
            0    9     5       atts  Lsun/tools/java/BinaryAttribute;
    MethodParameters:
           Name  Flags
      clazz      
      modifiers  
      type       
      name       
      atts       

  public void <init>(sun.tools.java.ClassDefinition);
    descriptor: (Lsun/tools/java/ClassDefinition;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.tools.java.BinaryMember this
        start local 1 // sun.tools.java.ClassDefinition innerClass
         0: .line 70
            aload 0 /* this */
            aload 1 /* innerClass */
            invokespecial sun.tools.java.MemberDefinition.<init>:(Lsun/tools/java/ClassDefinition;)V
         1: .line 146
            aload 0 /* this */
            iconst_0
            putfield sun.tools.java.BinaryMember.isConstantCache:Z
         2: .line 147
            aload 0 /* this */
            iconst_0
            putfield sun.tools.java.BinaryMember.isConstantCached:Z
         3: .line 71
            return
        end local 1 // sun.tools.java.ClassDefinition innerClass
        end local 0 // sun.tools.java.BinaryMember this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Lsun/tools/java/BinaryMember;
            0    4     1  innerClass  Lsun/tools/java/ClassDefinition;
    MethodParameters:
            Name  Flags
      innerClass  

  public boolean isInlineable(sun.tools.java.Environment, boolean);
    descriptor: (Lsun/tools/java/Environment;Z)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // sun.tools.java.BinaryMember this
        start local 1 // sun.tools.java.Environment env
        start local 2 // boolean fromFinal
         0: .line 79
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.isConstructor:()Z
            ifeq 1
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            invokevirtual sun.tools.java.ClassDefinition.getSuperClass:()Lsun/tools/java/ClassDeclaration;
            ifnonnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // boolean fromFinal
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.java.BinaryMember this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lsun/tools/java/BinaryMember;
            0    2     1        env  Lsun/tools/java/Environment;
            0    2     2  fromFinal  Z
    MethodParameters:
           Name  Flags
      env        
      fromFinal  

  public java.util.Vector getArguments();
    descriptor: ()Ljava/util/Vector;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=2, args_size=1
        start local 0 // sun.tools.java.BinaryMember this
         0: .line 86
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.isConstructor:()Z
            ifeq 6
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            invokevirtual sun.tools.java.ClassDefinition.getSuperClass:()Lsun/tools/java/ClassDeclaration;
            ifnonnull 6
         1: .line 87
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 1 /* v */
        start local 1 // java.util.Vector v
         2: .line 88
            aload 1 /* v */
            new sun.tools.tree.LocalMember
            dup
            lconst_0
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            iconst_0
         3: .line 89
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            invokevirtual sun.tools.java.ClassDefinition.getType:()Lsun/tools/java/Type;
            getstatic sun.tools.java.BinaryMember.idThis:Lsun/tools/java/Identifier;
            invokespecial sun.tools.tree.LocalMember.<init>:(JLsun/tools/java/ClassDefinition;ILsun/tools/java/Type;Lsun/tools/java/Identifier;)V
         4: .line 88
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         5: .line 90
            aload 1 /* v */
            areturn
        end local 1 // java.util.Vector v
         6: .line 92
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // sun.tools.java.BinaryMember this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/tools/java/BinaryMember;
            2    6     1     v  Ljava/util/Vector;

  public sun.tools.java.ClassDeclaration[] getExceptions(sun.tools.java.Environment);
    descriptor: (Lsun/tools/java/Environment;)[Lsun/tools/java/ClassDeclaration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // sun.tools.java.BinaryMember this
        start local 1 // sun.tools.java.Environment env
         0: .line 99
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.isMethod:()Z
            ifeq 1
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.exp:[Lsun/tools/java/ClassDeclaration;
            ifnull 2
         1: .line 100
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.exp:[Lsun/tools/java/ClassDeclaration;
            areturn
         2: .line 102
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic sun.tools.java.BinaryMember.idExceptions:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.BinaryMember.getAttribute:(Lsun/tools/java/Identifier;)[B
            astore 2 /* data */
        start local 2 // byte[] data
         3: .line 103
            aload 2 /* data */
            ifnonnull 5
         4: .line 104
            iconst_0
            anewarray sun.tools.java.ClassDeclaration
            areturn
         5: .line 108
      StackMap locals: byte[]
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            checkcast sun.tools.java.BinaryClass
            invokevirtual sun.tools.java.BinaryClass.getConstants:()Lsun/tools/java/BinaryConstantPool;
            astore 3 /* cpool */
        start local 3 // sun.tools.java.BinaryConstantPool cpool
         6: .line 109
            new java.io.DataInputStream
            dup
            new java.io.ByteArrayInputStream
            dup
            aload 2 /* data */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            astore 4 /* in */
        start local 4 // java.io.DataInputStream in
         7: .line 111
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 5 /* n */
        start local 5 // int n
         8: .line 112
            aload 0 /* this */
            iload 5 /* n */
            anewarray sun.tools.java.ClassDeclaration
            putfield sun.tools.java.BinaryMember.exp:[Lsun/tools/java/ClassDeclaration;
         9: .line 113
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        10: goto 13
        11: .line 115
      StackMap locals: sun.tools.java.BinaryMember sun.tools.java.Environment byte[] sun.tools.java.BinaryConstantPool java.io.DataInputStream int int
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.exp:[Lsun/tools/java/ClassDeclaration;
            iload 6 /* i */
            aload 3 /* cpool */
            aload 1 /* env */
            aload 4 /* in */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            invokevirtual sun.tools.java.BinaryConstantPool.getDeclaration:(Lsun/tools/java/Environment;I)Lsun/tools/java/ClassDeclaration;
            aastore
        12: .line 113
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 6 /* i */
            iload 5 /* n */
            if_icmplt 11
        end local 6 // int i
        14: .line 117
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.exp:[Lsun/tools/java/ClassDeclaration;
        15: areturn
        end local 5 // int n
        end local 4 // java.io.DataInputStream in
        end local 3 // sun.tools.java.BinaryConstantPool cpool
        16: .line 118
      StackMap locals: sun.tools.java.BinaryMember sun.tools.java.Environment byte[]
      StackMap stack: java.io.IOException
            astore 3 /* e */
        start local 3 // java.io.IOException e
        17: .line 119
            new sun.tools.java.CompilerError
            dup
            aload 3 /* e */
            invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 3 // java.io.IOException e
        end local 2 // byte[] data
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.java.BinaryMember this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   18     0   this  Lsun/tools/java/BinaryMember;
            0   18     1    env  Lsun/tools/java/Environment;
            3   18     2   data  [B
            6   16     3  cpool  Lsun/tools/java/BinaryConstantPool;
            7   16     4     in  Ljava/io/DataInputStream;
            8   16     5      n  I
           10   14     6      i  I
           17   18     3      e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           5    15      16  Class java.io.IOException
    MethodParameters:
      Name  Flags
      env   

  public java.lang.String getDocumentation();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // sun.tools.java.BinaryMember this
         0: .line 127
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.documentation:Ljava/lang/String;
            ifnull 2
         1: .line 128
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.documentation:Ljava/lang/String;
            areturn
         2: .line 130
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic sun.tools.java.BinaryMember.idDocumentation:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.BinaryMember.getAttribute:(Lsun/tools/java/Identifier;)[B
            astore 1 /* data */
        start local 1 // byte[] data
         3: .line 131
            aload 1 /* data */
            ifnonnull 5
         4: .line 132
            aconst_null
            areturn
         5: .line 135
      StackMap locals: byte[]
      StackMap stack:
            aload 0 /* this */
            new java.io.DataInputStream
            dup
            new java.io.ByteArrayInputStream
            dup
            aload 1 /* data */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            invokevirtual java.io.DataInputStream.readUTF:()Ljava/lang/String;
            dup_x1
            putfield sun.tools.java.BinaryMember.documentation:Ljava/lang/String;
         6: areturn
         7: .line 136
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 2 /* e */
        start local 2 // java.io.IOException e
         8: .line 137
            new sun.tools.java.CompilerError
            dup
            aload 2 /* e */
            invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 2 // java.io.IOException e
        end local 1 // byte[] data
        end local 0 // sun.tools.java.BinaryMember this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lsun/tools/java/BinaryMember;
            3    9     1  data  [B
            8    9     2     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           5     6       7  Class java.io.IOException

  public boolean isConstant();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.tools.java.BinaryMember this
         0: .line 149
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.isConstantCached:Z
            ifne 7
         1: .line 150
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.isFinal:()Z
            ifeq 4
         2: .line 151
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.isVariable:()Z
            ifeq 4
         3: .line 152
            aload 0 /* this */
            getstatic sun.tools.java.BinaryMember.idConstantValue:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.BinaryMember.getAttribute:(Lsun/tools/java/Identifier;)[B
            ifnull 4
            iconst_1
            goto 5
      StackMap locals:
      StackMap stack: sun.tools.java.BinaryMember
         4: iconst_0
         5: .line 150
      StackMap locals: sun.tools.java.BinaryMember
      StackMap stack: sun.tools.java.BinaryMember int
            putfield sun.tools.java.BinaryMember.isConstantCache:Z
         6: .line 153
            aload 0 /* this */
            iconst_1
            putfield sun.tools.java.BinaryMember.isConstantCached:Z
         7: .line 155
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.isConstantCache:Z
            ireturn
        end local 0 // sun.tools.java.BinaryMember this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/tools/java/BinaryMember;

  public sun.tools.tree.Node getValue(sun.tools.java.Environment);
    descriptor: (Lsun/tools/java/Environment;)Lsun/tools/tree/Node;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=2
        start local 0 // sun.tools.java.BinaryMember this
        start local 1 // sun.tools.java.Environment env
         0: .line 162
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.isMethod:()Z
            ifeq 2
         1: .line 163
            aconst_null
            areturn
         2: .line 165
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.isFinal:()Z
            ifne 4
         3: .line 166
            aconst_null
            areturn
         4: .line 168
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.getValue:()Lsun/tools/tree/Node;
            ifnull 6
         5: .line 169
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.getValue:()Lsun/tools/tree/Node;
            checkcast sun.tools.tree.Expression
            areturn
         6: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic sun.tools.java.BinaryMember.idConstantValue:Lsun/tools/java/Identifier;
            invokevirtual sun.tools.java.BinaryMember.getAttribute:(Lsun/tools/java/Identifier;)[B
            astore 2 /* data */
        start local 2 // byte[] data
         7: .line 172
            aload 2 /* data */
            ifnonnull 9
         8: .line 173
            aconst_null
            areturn
         9: .line 177
      StackMap locals: byte[]
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.getClassDefinition:()Lsun/tools/java/ClassDefinition;
            checkcast sun.tools.java.BinaryClass
            invokevirtual sun.tools.java.BinaryClass.getConstants:()Lsun/tools/java/BinaryConstantPool;
            astore 3 /* cpool */
        start local 3 // sun.tools.java.BinaryConstantPool cpool
        10: .line 179
            aload 3 /* cpool */
            new java.io.DataInputStream
            dup
            new java.io.ByteArrayInputStream
            dup
            aload 2 /* data */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            invokevirtual sun.tools.java.BinaryConstantPool.getValue:(I)Ljava/lang/Object;
            astore 4 /* obj */
        start local 4 // java.lang.Object obj
        11: .line 180
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.getType:()Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.getTypeCode:()I
            tableswitch { // 0 - 10
                    0: 12
                    1: 17
                    2: 17
                    3: 17
                    4: 17
                    5: 19
                    6: 21
                    7: 23
                    8: 26
                    9: 26
                   10: 25
              default: 26
          }
        12: .line 182
      StackMap locals: sun.tools.java.BinaryConstantPool java.lang.Object
      StackMap stack:
            aload 0 /* this */
        13: new sun.tools.tree.BooleanExpression
            dup
            lconst_0
            aload 4 /* obj */
            checkcast java.lang.Number
            invokevirtual java.lang.Number.intValue:()I
            ifeq 14
            iconst_1
            goto 15
      StackMap locals: sun.tools.java.BinaryMember sun.tools.java.Environment byte[] sun.tools.java.BinaryConstantPool java.lang.Object
      StackMap stack: sun.tools.java.BinaryMember new 13 new 13 long
        14: iconst_0
      StackMap locals: sun.tools.java.BinaryMember sun.tools.java.Environment byte[] sun.tools.java.BinaryConstantPool java.lang.Object
      StackMap stack: sun.tools.java.BinaryMember new 13 new 13 long int
        15: invokespecial sun.tools.tree.BooleanExpression.<init>:(JZ)V
            invokevirtual sun.tools.java.BinaryMember.setValue:(Lsun/tools/tree/Node;)V
        16: .line 183
            goto 26
        17: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new sun.tools.tree.IntExpression
            dup
            lconst_0
            aload 4 /* obj */
            checkcast java.lang.Number
            invokevirtual java.lang.Number.intValue:()I
            invokespecial sun.tools.tree.IntExpression.<init>:(JI)V
            invokevirtual sun.tools.java.BinaryMember.setValue:(Lsun/tools/tree/Node;)V
        18: .line 189
            goto 26
        19: .line 191
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new sun.tools.tree.LongExpression
            dup
            lconst_0
            aload 4 /* obj */
            checkcast java.lang.Number
            invokevirtual java.lang.Number.longValue:()J
            invokespecial sun.tools.tree.LongExpression.<init>:(JJ)V
            invokevirtual sun.tools.java.BinaryMember.setValue:(Lsun/tools/tree/Node;)V
        20: .line 192
            goto 26
        21: .line 194
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new sun.tools.tree.FloatExpression
            dup
            lconst_0
            aload 4 /* obj */
            checkcast java.lang.Number
            invokevirtual java.lang.Number.floatValue:()F
            invokespecial sun.tools.tree.FloatExpression.<init>:(JF)V
            invokevirtual sun.tools.java.BinaryMember.setValue:(Lsun/tools/tree/Node;)V
        22: .line 195
            goto 26
        23: .line 197
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new sun.tools.tree.DoubleExpression
            dup
            lconst_0
            aload 4 /* obj */
            checkcast java.lang.Number
            invokevirtual java.lang.Number.doubleValue:()D
            invokespecial sun.tools.tree.DoubleExpression.<init>:(JD)V
            invokevirtual sun.tools.java.BinaryMember.setValue:(Lsun/tools/tree/Node;)V
        24: .line 198
            goto 26
        25: .line 200
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new sun.tools.tree.StringExpression
            dup
            lconst_0
            aload 3 /* cpool */
            aload 4 /* obj */
            checkcast java.lang.Number
            invokevirtual java.lang.Number.intValue:()I
            invokevirtual sun.tools.java.BinaryConstantPool.getValue:(I)Ljava/lang/Object;
            checkcast java.lang.String
            invokespecial sun.tools.tree.StringExpression.<init>:(JLjava/lang/String;)V
            invokevirtual sun.tools.java.BinaryMember.setValue:(Lsun/tools/tree/Node;)V
        26: .line 203
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.tools.java.BinaryMember.getValue:()Lsun/tools/tree/Node;
            checkcast sun.tools.tree.Expression
        27: areturn
        end local 4 // java.lang.Object obj
        end local 3 // sun.tools.java.BinaryConstantPool cpool
        28: .line 204
      StackMap locals: sun.tools.java.BinaryMember sun.tools.java.Environment byte[]
      StackMap stack: java.io.IOException
            astore 3 /* e */
        start local 3 // java.io.IOException e
        29: .line 205
            new sun.tools.java.CompilerError
            dup
            aload 3 /* e */
            invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 3 // java.io.IOException e
        end local 2 // byte[] data
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.java.BinaryMember this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   30     0   this  Lsun/tools/java/BinaryMember;
            0   30     1    env  Lsun/tools/java/Environment;
            7   30     2   data  [B
           10   28     3  cpool  Lsun/tools/java/BinaryConstantPool;
           11   28     4    obj  Ljava/lang/Object;
           29   30     3      e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           9    27      28  Class java.io.IOException
    MethodParameters:
      Name  Flags
      env   

  public byte[] getAttribute(sun.tools.java.Identifier);
    descriptor: (Lsun/tools/java/Identifier;)[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.tools.java.BinaryMember this
        start local 1 // sun.tools.java.Identifier name
         0: .line 213
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.atts:Lsun/tools/java/BinaryAttribute;
            astore 2 /* att */
        start local 2 // sun.tools.java.BinaryAttribute att
         1: goto 5
         2: .line 214
      StackMap locals: sun.tools.java.BinaryAttribute
      StackMap stack:
            aload 2 /* att */
            getfield sun.tools.java.BinaryAttribute.name:Lsun/tools/java/Identifier;
            aload 1 /* name */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 215
            aload 2 /* att */
            getfield sun.tools.java.BinaryAttribute.data:[B
            areturn
         4: .line 213
      StackMap locals:
      StackMap stack:
            aload 2 /* att */
            getfield sun.tools.java.BinaryAttribute.next:Lsun/tools/java/BinaryAttribute;
            astore 2 /* att */
      StackMap locals:
      StackMap stack:
         5: aload 2 /* att */
            ifnonnull 2
        end local 2 // sun.tools.java.BinaryAttribute att
         6: .line 218
            aconst_null
            areturn
        end local 1 // sun.tools.java.Identifier name
        end local 0 // sun.tools.java.BinaryMember this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/tools/java/BinaryMember;
            0    7     1  name  Lsun/tools/java/Identifier;
            1    6     2   att  Lsun/tools/java/BinaryAttribute;
    MethodParameters:
      Name  Flags
      name  

  public boolean deleteAttribute(sun.tools.java.Identifier);
    descriptor: (Lsun/tools/java/Identifier;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // sun.tools.java.BinaryMember this
        start local 1 // sun.tools.java.Identifier name
         0: .line 222
            aconst_null
            astore 2 /* walker */
        start local 2 // sun.tools.java.BinaryAttribute walker
         1: aconst_null
            astore 3 /* next */
        start local 3 // sun.tools.java.BinaryAttribute next
         2: .line 224
            iconst_0
            istore 4 /* succeed */
        start local 4 // boolean succeed
         3: .line 226
            goto 6
         4: .line 227
      StackMap locals: sun.tools.java.BinaryAttribute sun.tools.java.BinaryAttribute int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.atts:Lsun/tools/java/BinaryAttribute;
            getfield sun.tools.java.BinaryAttribute.next:Lsun/tools/java/BinaryAttribute;
            putfield sun.tools.java.BinaryMember.atts:Lsun/tools/java/BinaryAttribute;
         5: .line 228
            iconst_1
            istore 4 /* succeed */
         6: .line 226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.atts:Lsun/tools/java/BinaryAttribute;
            getfield sun.tools.java.BinaryAttribute.name:Lsun/tools/java/Identifier;
            aload 1 /* name */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 4
         7: .line 230
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.atts:Lsun/tools/java/BinaryAttribute;
            astore 2 /* walker */
            goto 15
         8: .line 231
      StackMap locals:
      StackMap stack:
            aload 2 /* walker */
            getfield sun.tools.java.BinaryAttribute.next:Lsun/tools/java/BinaryAttribute;
            astore 3 /* next */
         9: .line 232
            aload 3 /* next */
            ifnull 14
        10: .line 233
            aload 3 /* next */
            getfield sun.tools.java.BinaryAttribute.name:Lsun/tools/java/Identifier;
            aload 1 /* name */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 14
        11: .line 234
            aload 2 /* walker */
            aload 3 /* next */
            getfield sun.tools.java.BinaryAttribute.next:Lsun/tools/java/BinaryAttribute;
            putfield sun.tools.java.BinaryAttribute.next:Lsun/tools/java/BinaryAttribute;
        12: .line 235
            aload 3 /* next */
            getfield sun.tools.java.BinaryAttribute.next:Lsun/tools/java/BinaryAttribute;
            astore 3 /* next */
        13: .line 236
            iconst_1
            istore 4 /* succeed */
        14: .line 230
      StackMap locals:
      StackMap stack:
            aload 3 /* next */
            astore 2 /* walker */
      StackMap locals:
      StackMap stack:
        15: aload 2 /* walker */
            ifnonnull 8
        16: .line 240
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.atts:Lsun/tools/java/BinaryAttribute;
            astore 2 /* walker */
            goto 20
        17: .line 241
      StackMap locals:
      StackMap stack:
            aload 2 /* walker */
            getfield sun.tools.java.BinaryAttribute.name:Lsun/tools/java/Identifier;
            aload 1 /* name */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 19
        18: .line 242
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Found attribute "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        19: .line 240
      StackMap locals:
      StackMap stack:
            aload 2 /* walker */
            getfield sun.tools.java.BinaryAttribute.next:Lsun/tools/java/BinaryAttribute;
            astore 2 /* walker */
      StackMap locals:
      StackMap stack:
        20: aload 2 /* walker */
            ifnonnull 17
        21: .line 246
            iload 4 /* succeed */
            ireturn
        end local 4 // boolean succeed
        end local 3 // sun.tools.java.BinaryAttribute next
        end local 2 // sun.tools.java.BinaryAttribute walker
        end local 1 // sun.tools.java.Identifier name
        end local 0 // sun.tools.java.BinaryMember this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   22     0     this  Lsun/tools/java/BinaryMember;
            0   22     1     name  Lsun/tools/java/Identifier;
            1   22     2   walker  Lsun/tools/java/BinaryAttribute;
            2   22     3     next  Lsun/tools/java/BinaryAttribute;
            3   22     4  succeed  Z
    MethodParameters:
      Name  Flags
      name  

  public void addAttribute(sun.tools.java.Identifier, byte[], sun.tools.java.Environment);
    descriptor: (Lsun/tools/java/Identifier;[BLsun/tools/java/Environment;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // sun.tools.java.BinaryMember this
        start local 1 // sun.tools.java.Identifier name
        start local 2 // byte[] data
        start local 3 // sun.tools.java.Environment env
         0: .line 255
            aload 0 /* this */
            new sun.tools.java.BinaryAttribute
            dup
            aload 1 /* name */
            aload 2 /* data */
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.atts:Lsun/tools/java/BinaryAttribute;
            invokespecial sun.tools.java.BinaryAttribute.<init>:(Lsun/tools/java/Identifier;[BLsun/tools/java/BinaryAttribute;)V
            putfield sun.tools.java.BinaryMember.atts:Lsun/tools/java/BinaryAttribute;
         1: .line 257
            aload 0 /* this */
            getfield sun.tools.java.BinaryMember.clazz:Lsun/tools/java/ClassDefinition;
            checkcast sun.tools.java.BinaryClass
            getfield sun.tools.java.BinaryClass.cpool:Lsun/tools/java/BinaryConstantPool;
            aload 1 /* name */
            invokevirtual sun.tools.java.Identifier.toString:()Ljava/lang/String;
            aload 3 /* env */
            invokevirtual sun.tools.java.BinaryConstantPool.indexString:(Ljava/lang/String;Lsun/tools/java/Environment;)I
            pop
         2: .line 258
            return
        end local 3 // sun.tools.java.Environment env
        end local 2 // byte[] data
        end local 1 // sun.tools.java.Identifier name
        end local 0 // sun.tools.java.BinaryMember this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/tools/java/BinaryMember;
            0    3     1  name  Lsun/tools/java/Identifier;
            0    3     2  data  [B
            0    3     3   env  Lsun/tools/java/Environment;
    MethodParameters:
      Name  Flags
      name  
      data  
      env   
}
SourceFile: "BinaryMember.java"