public abstract class com.sun.org.apache.bcel.internal.classfile.Attribute implements java.lang.Cloneable, com.sun.org.apache.bcel.internal.classfile.Node, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.sun.org.apache.bcel.internal.classfile.Attribute
super_class: java.lang.Object
{
protected int name_index;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected int length;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected byte tag;
descriptor: B
flags: (0x0004) ACC_PROTECTED
protected com.sun.org.apache.bcel.internal.classfile.ConstantPool constant_pool;
descriptor: Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
flags: (0x0004) ACC_PROTECTED
private static java.util.HashMap readers;
descriptor: Ljava/util/HashMap;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic com.sun.org.apache.bcel.internal.classfile.Attribute.readers:Ljava/util/HashMap;
return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(byte, int, int, com.sun.org.apache.bcel.internal.classfile.ConstantPool);
descriptor: (BIILcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iload 1
putfield com.sun.org.apache.bcel.internal.classfile.Attribute.tag:B
2: aload 0
iload 2
putfield com.sun.org.apache.bcel.internal.classfile.Attribute.name_index:I
3: aload 0
iload 3
putfield com.sun.org.apache.bcel.internal.classfile.Attribute.length:I
4: aload 0
aload 4
putfield com.sun.org.apache.bcel.internal.classfile.Attribute.constant_pool:Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
0 6 1 tag B
0 6 2 name_index I
0 6 3 length I
0 6 4 constant_pool Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
MethodParameters:
Name Flags
tag
name_index
length
constant_pool
public abstract void accept(com.sun.org.apache.bcel.internal.classfile.Visitor);
descriptor: (Lcom/sun/org/apache/bcel/internal/classfile/Visitor;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
v
public void dump(java.io.DataOutputStream);
descriptor: (Ljava/io/DataOutputStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield com.sun.org.apache.bcel.internal.classfile.Attribute.name_index:I
invokevirtual java.io.DataOutputStream.writeShort:(I)V
1: aload 1
aload 0
getfield com.sun.org.apache.bcel.internal.classfile.Attribute.length:I
invokevirtual java.io.DataOutputStream.writeInt:(I)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
0 3 1 file Ljava/io/DataOutputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
file
public static void addAttributeReader(java.lang.String, com.sun.org.apache.bcel.internal.classfile.AttributeReader);
descriptor: (Ljava/lang/String;Lcom/sun/org/apache/bcel/internal/classfile/AttributeReader;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic com.sun.org.apache.bcel.internal.classfile.Attribute.readers:Ljava/util/HashMap;
aload 0
aload 1
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 name Ljava/lang/String;
0 2 1 r Lcom/sun/org/apache/bcel/internal/classfile/AttributeReader;
MethodParameters:
Name Flags
name
r
public static void removeAttributeReader(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.sun.org.apache.bcel.internal.classfile.Attribute.readers:Ljava/util/HashMap;
aload 0
invokevirtual java.util.HashMap.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public static final com.sun.org.apache.bcel.internal.classfile.Attribute readAttribute(java.io.DataInputStream, com.sun.org.apache.bcel.internal.classfile.ConstantPool);
descriptor: (Ljava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
Code:
stack=6, locals=8, args_size=2
start local 0 start local 1 0: iconst_m1
istore 6
start local 6 1: aload 0
invokevirtual java.io.DataInputStream.readUnsignedShort:()I
istore 4
start local 4 2: aload 1
iload 4
3: iconst_1
4: invokevirtual com.sun.org.apache.bcel.internal.classfile.ConstantPool.getConstant:(IB)Lcom/sun/org/apache/bcel/internal/classfile/Constant;
checkcast com.sun.org.apache.bcel.internal.classfile.ConstantUtf8
astore 2
start local 2 5: aload 2
invokevirtual com.sun.org.apache.bcel.internal.classfile.ConstantUtf8.getBytes:()Ljava/lang/String;
astore 3
start local 3 6: aload 0
invokevirtual java.io.DataInputStream.readInt:()I
istore 5
start local 5 7: iconst_0
istore 7
start local 7 8: goto 13
9: StackMap locals: java.io.DataInputStream com.sun.org.apache.bcel.internal.classfile.ConstantPool com.sun.org.apache.bcel.internal.classfile.ConstantUtf8 java.lang.String int int int int
StackMap stack:
aload 3
getstatic com.sun.org.apache.bcel.internal.Constants.ATTRIBUTE_NAMES:[Ljava/lang/String;
iload 7
aaload
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
10: iload 7
istore 6
11: goto 14
12: StackMap locals:
StackMap stack:
iload 7
iconst_1
iadd
i2b
istore 7
StackMap locals:
StackMap stack:
13: iload 7
bipush 13
if_icmplt 9
end local 7 14: StackMap locals:
StackMap stack:
iload 6
tableswitch { // -1 - 12
-1: 15
0: 20
1: 19
2: 21
3: 22
4: 23
5: 24
6: 26
7: 27
8: 28
9: 29
10: 30
11: 31
12: 25
default: 32
}
15: StackMap locals:
StackMap stack:
getstatic com.sun.org.apache.bcel.internal.classfile.Attribute.readers:Ljava/util/HashMap;
aload 3
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.org.apache.bcel.internal.classfile.AttributeReader
astore 7
start local 7 16: aload 7
ifnull 18
17: aload 7
iload 4
iload 5
aload 0
aload 1
invokeinterface com.sun.org.apache.bcel.internal.classfile.AttributeReader.createAttribute:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
areturn
18: StackMap locals: com.sun.org.apache.bcel.internal.classfile.AttributeReader
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.Unknown
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.Unknown.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
end local 7 19: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantValue
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantValue.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
20: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.SourceFile
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.SourceFile.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
21: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.Code
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.Code.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
22: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ExceptionTable
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.ExceptionTable.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
23: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.LineNumberTable
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.LineNumberTable.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
24: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.LocalVariableTable
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.LocalVariableTable.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
25: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.LocalVariableTypeTable
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.LocalVariableTypeTable.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
26: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.InnerClasses
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.InnerClasses.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
27: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.Synthetic
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.Synthetic.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
28: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.Deprecated
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.Deprecated.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
29: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.PMGClass
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.PMGClass.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
30: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.Signature
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.Signature.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
31: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.StackMap
dup
iload 4
iload 5
aload 0
aload 1
invokespecial com.sun.org.apache.bcel.internal.classfile.StackMap.<init>:(IILjava/io/DataInputStream;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
areturn
32: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Ooops! default case reached."
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 file Ljava/io/DataInputStream;
0 33 1 constant_pool Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
5 33 2 c Lcom/sun/org/apache/bcel/internal/classfile/ConstantUtf8;
6 33 3 name Ljava/lang/String;
2 33 4 name_index I
7 33 5 length I
1 33 6 tag B
8 14 7 i B
16 19 7 r Lcom/sun/org/apache/bcel/internal/classfile/AttributeReader;
Exceptions:
throws java.io.IOException, com.sun.org.apache.bcel.internal.classfile.ClassFormatException
MethodParameters:
Name Flags
file
constant_pool
public final int getLength();
descriptor: ()I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.bcel.internal.classfile.Attribute.length:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
public final void setLength(int);
descriptor: (I)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.sun.org.apache.bcel.internal.classfile.Attribute.length:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
0 2 1 length I
MethodParameters:
Name Flags
length
public final void setNameIndex(int);
descriptor: (I)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.sun.org.apache.bcel.internal.classfile.Attribute.name_index:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
0 2 1 name_index I
MethodParameters:
Name Flags
name_index
public final int getNameIndex();
descriptor: ()I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.bcel.internal.classfile.Attribute.name_index:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
public final byte getTag();
descriptor: ()B
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.bcel.internal.classfile.Attribute.tag:B
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
public final com.sun.org.apache.bcel.internal.classfile.ConstantPool getConstantPool();
descriptor: ()Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.bcel.internal.classfile.Attribute.constant_pool:Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
public final void setConstantPool(com.sun.org.apache.bcel.internal.classfile.ConstantPool);
descriptor: (Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield com.sun.org.apache.bcel.internal.classfile.Attribute.constant_pool:Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
0 2 1 constant_pool Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
MethodParameters:
Name Flags
constant_pool
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aload 0
invokespecial java.lang.Object.clone:()Ljava/lang/Object;
astore 1
2: goto 5
StackMap locals: com.sun.org.apache.bcel.internal.classfile.Attribute java.lang.Object
StackMap stack: java.lang.CloneNotSupportedException
3: astore 2
start local 2 4: aload 2
invokevirtual java.lang.CloneNotSupportedException.printStackTrace:()V
end local 2 5: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
1 6 1 o Ljava/lang/Object;
4 5 2 e Ljava/lang/CloneNotSupportedException;
Exception table:
from to target type
1 2 3 Class java.lang.CloneNotSupportedException
public abstract com.sun.org.apache.bcel.internal.classfile.Attribute copy(com.sun.org.apache.bcel.internal.classfile.ConstantPool);
descriptor: (Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
constant_pool
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.sun.org.apache.bcel.internal.Constants.ATTRIBUTE_NAMES:[Ljava/lang/String;
aload 0
getfield com.sun.org.apache.bcel.internal.classfile.Attribute.tag:B
aaload
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/bcel/internal/classfile/Attribute;
}
SourceFile: "Attribute.java"