public abstract class com.sun.org.apache.bcel.internal.classfile.Constant implements java.lang.Cloneable, com.sun.org.apache.bcel.internal.classfile.Node
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.sun.org.apache.bcel.internal.classfile.Constant
super_class: java.lang.Object
{
private static com.sun.org.apache.bcel.internal.util.BCELComparator bcelComparator;
descriptor: Lcom/sun/org/apache/bcel/internal/util/BCELComparator;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private byte tag;
descriptor: B
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new com.sun.org.apache.bcel.internal.classfile.Constant$1
dup
invokespecial com.sun.org.apache.bcel.internal.classfile.Constant$1.<init>:()V
putstatic com.sun.org.apache.bcel.internal.classfile.Constant.bcelComparator:Lcom/sun/org/apache/bcel/internal/util/BCELComparator;
1: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(byte);
descriptor: (B)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iload 1
putfield com.sun.org.apache.bcel.internal.classfile.Constant.tag:B
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/Constant;
0 3 1 tag B
MethodParameters:
Name Flags
tag final
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 abstract void dump(java.io.DataOutputStream);
descriptor: (Ljava/io/DataOutputStream;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
file
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.Constant.tag:B
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/bcel/internal/classfile/Constant;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
aload 0
getfield com.sun.org.apache.bcel.internal.classfile.Constant.tag:B
invokestatic com.sun.org.apache.bcel.internal.Const.getConstantName:(I)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.sun.org.apache.bcel.internal.classfile.Constant.tag:B
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/bcel/internal/classfile/Constant;
public com.sun.org.apache.bcel.internal.classfile.Constant copy();
descriptor: ()Lcom/sun/org/apache/bcel/internal/classfile/Constant;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.clone:()Ljava/lang/Object;
checkcast com.sun.org.apache.bcel.internal.classfile.Constant
1: areturn
2: StackMap locals:
StackMap stack: java.lang.CloneNotSupportedException
pop
3: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/org/apache/bcel/internal/classfile/Constant;
Exception table:
from to target type
0 1 2 Class java.lang.CloneNotSupportedException
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.clone:()Ljava/lang/Object;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.CloneNotSupportedException
pop
3: new java.lang.Error
dup
ldc "Clone Not Supported"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/org/apache/bcel/internal/classfile/Constant;
Exception table:
from to target type
0 1 2 Class java.lang.CloneNotSupportedException
public static com.sun.org.apache.bcel.internal.classfile.Constant readConstant(java.io.DataInput);
descriptor: (Ljava/io/DataInput;)Lcom/sun/org/apache/bcel/internal/classfile/Constant;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokeinterface java.io.DataInput.readByte:()B
istore 1
start local 1 1: iload 1
tableswitch { // 1 - 18
1: 12
2: 16
3: 7
4: 8
5: 9
6: 10
7: 2
8: 6
9: 3
10: 4
11: 5
12: 11
13: 16
14: 16
15: 13
16: 14
17: 16
18: 15
default: 16
}
2: StackMap locals: int
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantClass
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantClass.<init>:(Ljava/io/DataInput;)V
areturn
3: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantFieldref
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantFieldref.<init>:(Ljava/io/DataInput;)V
areturn
4: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantMethodref
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantMethodref.<init>:(Ljava/io/DataInput;)V
areturn
5: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantInterfaceMethodref
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantInterfaceMethodref.<init>:(Ljava/io/DataInput;)V
areturn
6: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantString
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantString.<init>:(Ljava/io/DataInput;)V
areturn
7: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantInteger
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantInteger.<init>:(Ljava/io/DataInput;)V
areturn
8: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantFloat
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantFloat.<init>:(Ljava/io/DataInput;)V
areturn
9: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantLong
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantLong.<init>:(Ljava/io/DataInput;)V
areturn
10: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantDouble
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantDouble.<init>:(Ljava/io/DataInput;)V
areturn
11: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantNameAndType
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantNameAndType.<init>:(Ljava/io/DataInput;)V
areturn
12: StackMap locals:
StackMap stack:
aload 0
invokestatic com.sun.org.apache.bcel.internal.classfile.ConstantUtf8.getInstance:(Ljava/io/DataInput;)Lcom/sun/org/apache/bcel/internal/classfile/ConstantUtf8;
areturn
13: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantMethodHandle
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantMethodHandle.<init>:(Ljava/io/DataInput;)V
areturn
14: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantMethodType
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantMethodType.<init>:(Ljava/io/DataInput;)V
areturn
15: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ConstantInvokeDynamic
dup
aload 0
invokespecial com.sun.org.apache.bcel.internal.classfile.ConstantInvokeDynamic.<init>:(Ljava/io/DataInput;)V
areturn
16: StackMap locals:
StackMap stack:
new com.sun.org.apache.bcel.internal.classfile.ClassFormatException
dup
new java.lang.StringBuilder
dup
ldc "Invalid byte tag in constant pool: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial com.sun.org.apache.bcel.internal.classfile.ClassFormatException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 input Ljava/io/DataInput;
1 17 1 b B
Exceptions:
throws java.io.IOException, com.sun.org.apache.bcel.internal.classfile.ClassFormatException
MethodParameters:
Name Flags
input final
public static com.sun.org.apache.bcel.internal.util.BCELComparator getComparator();
descriptor: ()Lcom/sun/org/apache/bcel/internal/util/BCELComparator;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic com.sun.org.apache.bcel.internal.classfile.Constant.bcelComparator:Lcom/sun/org/apache/bcel/internal/util/BCELComparator;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static void setComparator(com.sun.org.apache.bcel.internal.util.BCELComparator);
descriptor: (Lcom/sun/org/apache/bcel/internal/util/BCELComparator;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
putstatic com.sun.org.apache.bcel.internal.classfile.Constant.bcelComparator:Lcom/sun/org/apache/bcel/internal/util/BCELComparator;
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 comparator Lcom/sun/org/apache/bcel/internal/util/BCELComparator;
MethodParameters:
Name Flags
comparator final
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic com.sun.org.apache.bcel.internal.classfile.Constant.bcelComparator:Lcom/sun/org/apache/bcel/internal/util/BCELComparator;
aload 0
aload 1
invokeinterface com.sun.org.apache.bcel.internal.util.BCELComparator.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/bcel/internal/classfile/Constant;
0 1 1 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj final
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.sun.org.apache.bcel.internal.classfile.Constant.bcelComparator:Lcom/sun/org/apache/bcel/internal/util/BCELComparator;
aload 0
invokeinterface com.sun.org.apache.bcel.internal.util.BCELComparator.hashCode:(Ljava/lang/Object;)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/bcel/internal/classfile/Constant;
}
SourceFile: "Constant.java"
NestMembers:
com.sun.org.apache.bcel.internal.classfile.Constant$1
InnerClasses:
com.sun.org.apache.bcel.internal.classfile.Constant$1