public class org.objectweb.asm.Attribute
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.objectweb.asm.Attribute
  super_class: java.lang.Object
{
  public final java.lang.String type;
    descriptor: Ljava/lang/String;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  byte[] value;
    descriptor: [B
    flags: (0x0000) 

  org.objectweb.asm.Attribute next;
    descriptor: Lorg/objectweb/asm/Attribute;
    flags: (0x0000) 

  protected void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.objectweb.asm.Attribute this
        start local 1 // java.lang.String type
         0: .line 61
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 62
            aload 0 /* this */
            aload 1 /* type */
            putfield org.objectweb.asm.Attribute.type:Ljava/lang/String;
         2: .line 63
            return
        end local 1 // java.lang.String type
        end local 0 // org.objectweb.asm.Attribute this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/objectweb/asm/Attribute;
            0    3     1  type  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      type  final

  public boolean isUnknown();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.objectweb.asm.Attribute this
         0: .line 72
            iconst_1
            ireturn
        end local 0 // org.objectweb.asm.Attribute this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/objectweb/asm/Attribute;

  public boolean isCodeAttribute();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.objectweb.asm.Attribute this
         0: .line 81
            iconst_0
            ireturn
        end local 0 // org.objectweb.asm.Attribute this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/objectweb/asm/Attribute;

  protected org.objectweb.asm.Label[] getLabels();
    descriptor: ()[Lorg/objectweb/asm/Label;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.objectweb.asm.Attribute this
         0: .line 91
            aconst_null
            areturn
        end local 0 // org.objectweb.asm.Attribute this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/objectweb/asm/Attribute;

  protected org.objectweb.asm.Attribute read(org.objectweb.asm.ClassReader, int, int, char[], int, org.objectweb.asm.Label[]);
    descriptor: (Lorg/objectweb/asm/ClassReader;II[CI[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Attribute;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=8, args_size=7
        start local 0 // org.objectweb.asm.Attribute this
        start local 1 // org.objectweb.asm.ClassReader cr
        start local 2 // int off
        start local 3 // int len
        start local 4 // char[] buf
        start local 5 // int codeOff
        start local 6 // org.objectweb.asm.Label[] labels
         0: .line 128
            new org.objectweb.asm.Attribute
            dup
            aload 0 /* this */
            getfield org.objectweb.asm.Attribute.type:Ljava/lang/String;
            invokespecial org.objectweb.asm.Attribute.<init>:(Ljava/lang/String;)V
            astore 7 /* attr */
        start local 7 // org.objectweb.asm.Attribute attr
         1: .line 129
            aload 7 /* attr */
            iload 3 /* len */
            newarray 8
            putfield org.objectweb.asm.Attribute.value:[B
         2: .line 130
            aload 1 /* cr */
            getfield org.objectweb.asm.ClassReader.b:[B
            iload 2 /* off */
            aload 7 /* attr */
            getfield org.objectweb.asm.Attribute.value:[B
            iconst_0
            iload 3 /* len */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         3: .line 131
            aload 7 /* attr */
            areturn
        end local 7 // org.objectweb.asm.Attribute attr
        end local 6 // org.objectweb.asm.Label[] labels
        end local 5 // int codeOff
        end local 4 // char[] buf
        end local 3 // int len
        end local 2 // int off
        end local 1 // org.objectweb.asm.ClassReader cr
        end local 0 // org.objectweb.asm.Attribute this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lorg/objectweb/asm/Attribute;
            0    4     1       cr  Lorg/objectweb/asm/ClassReader;
            0    4     2      off  I
            0    4     3      len  I
            0    4     4      buf  [C
            0    4     5  codeOff  I
            0    4     6   labels  [Lorg/objectweb/asm/Label;
            1    4     7     attr  Lorg/objectweb/asm/Attribute;
    MethodParameters:
         Name  Flags
      cr       final
      off      final
      len      final
      buf      final
      codeOff  final
      labels   final

  protected org.objectweb.asm.ByteVector write(org.objectweb.asm.ClassWriter, byte[], int, int, int);
    descriptor: (Lorg/objectweb/asm/ClassWriter;[BIII)Lorg/objectweb/asm/ByteVector;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=7, args_size=6
        start local 0 // org.objectweb.asm.Attribute this
        start local 1 // org.objectweb.asm.ClassWriter cw
        start local 2 // byte[] code
        start local 3 // int len
        start local 4 // int maxStack
        start local 5 // int maxLocals
         0: .line 161
            new org.objectweb.asm.ByteVector
            dup
            invokespecial org.objectweb.asm.ByteVector.<init>:()V
            astore 6 /* v */
        start local 6 // org.objectweb.asm.ByteVector v
         1: .line 162
            aload 6 /* v */
            aload 0 /* this */
            getfield org.objectweb.asm.Attribute.value:[B
            putfield org.objectweb.asm.ByteVector.data:[B
         2: .line 163
            aload 6 /* v */
            aload 0 /* this */
            getfield org.objectweb.asm.Attribute.value:[B
            arraylength
            putfield org.objectweb.asm.ByteVector.length:I
         3: .line 164
            aload 6 /* v */
            areturn
        end local 6 // org.objectweb.asm.ByteVector v
        end local 5 // int maxLocals
        end local 4 // int maxStack
        end local 3 // int len
        end local 2 // byte[] code
        end local 1 // org.objectweb.asm.ClassWriter cw
        end local 0 // org.objectweb.asm.Attribute this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lorg/objectweb/asm/Attribute;
            0    4     1         cw  Lorg/objectweb/asm/ClassWriter;
            0    4     2       code  [B
            0    4     3        len  I
            0    4     4   maxStack  I
            0    4     5  maxLocals  I
            1    4     6          v  Lorg/objectweb/asm/ByteVector;
    MethodParameters:
           Name  Flags
      cw         final
      code       final
      len        final
      maxStack   final
      maxLocals  final

  final int getCount();
    descriptor: ()I
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // org.objectweb.asm.Attribute this
         0: .line 173
            iconst_0
            istore 1 /* count */
        start local 1 // int count
         1: .line 174
            aload 0 /* this */
            astore 2 /* attr */
        start local 2 // org.objectweb.asm.Attribute attr
         2: .line 175
            goto 5
         3: .line 176
      StackMap locals: int org.objectweb.asm.Attribute
      StackMap stack:
            iinc 1 /* count */ 1
         4: .line 177
            aload 2 /* attr */
            getfield org.objectweb.asm.Attribute.next:Lorg/objectweb/asm/Attribute;
            astore 2 /* attr */
         5: .line 175
      StackMap locals:
      StackMap stack:
            aload 2 /* attr */
            ifnonnull 3
         6: .line 179
            iload 1 /* count */
            ireturn
        end local 2 // org.objectweb.asm.Attribute attr
        end local 1 // int count
        end local 0 // org.objectweb.asm.Attribute this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Lorg/objectweb/asm/Attribute;
            1    7     1  count  I
            2    7     2   attr  Lorg/objectweb/asm/Attribute;

  final int getSize(org.objectweb.asm.ClassWriter, byte[], int, int, int);
    descriptor: (Lorg/objectweb/asm/ClassWriter;[BIII)I
    flags: (0x0010) ACC_FINAL
    Code:
      stack=7, locals=8, args_size=6
        start local 0 // org.objectweb.asm.Attribute this
        start local 1 // org.objectweb.asm.ClassWriter cw
        start local 2 // byte[] code
        start local 3 // int len
        start local 4 // int maxStack
        start local 5 // int maxLocals
         0: .line 209
            aload 0 /* this */
            astore 6 /* attr */
        start local 6 // org.objectweb.asm.Attribute attr
         1: .line 210
            iconst_0
            istore 7 /* size */
        start local 7 // int size
         2: .line 211
            goto 6
         3: .line 212
      StackMap locals: org.objectweb.asm.Attribute int
      StackMap stack:
            aload 1 /* cw */
            aload 6 /* attr */
            getfield org.objectweb.asm.Attribute.type:Ljava/lang/String;
            invokevirtual org.objectweb.asm.ClassWriter.newUTF8:(Ljava/lang/String;)I
            pop
         4: .line 213
            iload 7 /* size */
            aload 6 /* attr */
            aload 1 /* cw */
            aload 2 /* code */
            iload 3 /* len */
            iload 4 /* maxStack */
            iload 5 /* maxLocals */
            invokevirtual org.objectweb.asm.Attribute.write:(Lorg/objectweb/asm/ClassWriter;[BIII)Lorg/objectweb/asm/ByteVector;
            getfield org.objectweb.asm.ByteVector.length:I
            bipush 6
            iadd
            iadd
            istore 7 /* size */
         5: .line 214
            aload 6 /* attr */
            getfield org.objectweb.asm.Attribute.next:Lorg/objectweb/asm/Attribute;
            astore 6 /* attr */
         6: .line 211
      StackMap locals:
      StackMap stack:
            aload 6 /* attr */
            ifnonnull 3
         7: .line 216
            iload 7 /* size */
            ireturn
        end local 7 // int size
        end local 6 // org.objectweb.asm.Attribute attr
        end local 5 // int maxLocals
        end local 4 // int maxStack
        end local 3 // int len
        end local 2 // byte[] code
        end local 1 // org.objectweb.asm.ClassWriter cw
        end local 0 // org.objectweb.asm.Attribute this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/objectweb/asm/Attribute;
            0    8     1         cw  Lorg/objectweb/asm/ClassWriter;
            0    8     2       code  [B
            0    8     3        len  I
            0    8     4   maxStack  I
            0    8     5  maxLocals  I
            1    8     6       attr  Lorg/objectweb/asm/Attribute;
            2    8     7       size  I
    MethodParameters:
           Name  Flags
      cw         final
      code       final
      len        final
      maxStack   final
      maxLocals  final

  final void put(org.objectweb.asm.ClassWriter, byte[], int, int, int, org.objectweb.asm.ByteVector);
    descriptor: (Lorg/objectweb/asm/ClassWriter;[BIIILorg/objectweb/asm/ByteVector;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=6, locals=9, args_size=7
        start local 0 // org.objectweb.asm.Attribute this
        start local 1 // org.objectweb.asm.ClassWriter cw
        start local 2 // byte[] code
        start local 3 // int len
        start local 4 // int maxStack
        start local 5 // int maxLocals
        start local 6 // org.objectweb.asm.ByteVector out
         0: .line 247
            aload 0 /* this */
            astore 7 /* attr */
        start local 7 // org.objectweb.asm.Attribute attr
         1: .line 248
            goto 6
         2: .line 249
      StackMap locals: org.objectweb.asm.Attribute
      StackMap stack:
            aload 7 /* attr */
            aload 1 /* cw */
            aload 2 /* code */
            iload 3 /* len */
            iload 4 /* maxStack */
            iload 5 /* maxLocals */
            invokevirtual org.objectweb.asm.Attribute.write:(Lorg/objectweb/asm/ClassWriter;[BIII)Lorg/objectweb/asm/ByteVector;
            astore 8 /* b */
        start local 8 // org.objectweb.asm.ByteVector b
         3: .line 250
            aload 6 /* out */
            aload 1 /* cw */
            aload 7 /* attr */
            getfield org.objectweb.asm.Attribute.type:Ljava/lang/String;
            invokevirtual org.objectweb.asm.ClassWriter.newUTF8:(Ljava/lang/String;)I
            invokevirtual org.objectweb.asm.ByteVector.putShort:(I)Lorg/objectweb/asm/ByteVector;
            aload 8 /* b */
            getfield org.objectweb.asm.ByteVector.length:I
            invokevirtual org.objectweb.asm.ByteVector.putInt:(I)Lorg/objectweb/asm/ByteVector;
            pop
         4: .line 251
            aload 6 /* out */
            aload 8 /* b */
            getfield org.objectweb.asm.ByteVector.data:[B
            iconst_0
            aload 8 /* b */
            getfield org.objectweb.asm.ByteVector.length:I
            invokevirtual org.objectweb.asm.ByteVector.putByteArray:([BII)Lorg/objectweb/asm/ByteVector;
            pop
         5: .line 252
            aload 7 /* attr */
            getfield org.objectweb.asm.Attribute.next:Lorg/objectweb/asm/Attribute;
            astore 7 /* attr */
        end local 8 // org.objectweb.asm.ByteVector b
         6: .line 248
      StackMap locals:
      StackMap stack:
            aload 7 /* attr */
            ifnonnull 2
         7: .line 254
            return
        end local 7 // org.objectweb.asm.Attribute attr
        end local 6 // org.objectweb.asm.ByteVector out
        end local 5 // int maxLocals
        end local 4 // int maxStack
        end local 3 // int len
        end local 2 // byte[] code
        end local 1 // org.objectweb.asm.ClassWriter cw
        end local 0 // org.objectweb.asm.Attribute this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lorg/objectweb/asm/Attribute;
            0    8     1         cw  Lorg/objectweb/asm/ClassWriter;
            0    8     2       code  [B
            0    8     3        len  I
            0    8     4   maxStack  I
            0    8     5  maxLocals  I
            0    8     6        out  Lorg/objectweb/asm/ByteVector;
            1    8     7       attr  Lorg/objectweb/asm/Attribute;
            3    6     8          b  Lorg/objectweb/asm/ByteVector;
    MethodParameters:
           Name  Flags
      cw         final
      code       final
      len        final
      maxStack   final
      maxLocals  final
      out        final
}
SourceFile: "Attribute.java"