public class com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry extends com.sun.java.util.jar.pack.ConstantPool$Entry
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry
super_class: com.sun.java.util.jar.pack.ConstantPool$Entry
{
final com.sun.java.util.jar.pack.ConstantPool$MethodHandleEntry bsmRef;
descriptor: Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
flags: (0x0010) ACC_FINAL
final com.sun.java.util.jar.pack.ConstantPool$Entry[] argRefs;
descriptor: [Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
flags: (0x0010) ACC_FINAL
public com.sun.java.util.jar.pack.ConstantPool$Entry getRef(int);
descriptor: (I)Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifne 1
aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.bsmRef:Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
areturn
1: StackMap locals:
StackMap stack:
iload 1
iconst_1
isub
aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.argRefs:[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
arraylength
if_icmpge 2
aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.argRefs:[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
iload 1
iconst_1
isub
aaload
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/java/util/jar/pack/ConstantPool$BootstrapMethodEntry;
0 3 1 i I
MethodParameters:
Name Flags
i
protected int computeValueHash();
descriptor: ()I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.bsmRef:Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
invokevirtual com.sun.java.util.jar.pack.ConstantPool$MethodHandleEntry.hashCode:()I
istore 1
start local 1 1: aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.argRefs:[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
invokestatic java.util.Arrays.hashCode:([Ljava/lang/Object;)I
iload 1
bipush 8
ishl
iadd
iload 1
ixor
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/java/util/jar/pack/ConstantPool$BootstrapMethodEntry;
1 2 1 hc2 I
void <init>(com.sun.java.util.jar.pack.ConstantPool$MethodHandleEntry, com.sun.java.util.jar.pack.ConstantPool$Entry[]);
descriptor: (Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
bipush 17
invokespecial com.sun.java.util.jar.pack.ConstantPool$Entry.<init>:(B)V
1: aload 0
aload 1
putfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.bsmRef:Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
2: aload 0
aload 2
invokevirtual com.sun.java.util.jar.pack.ConstantPool$Entry[].clone:()Ljava/lang/Object;
checkcast com.sun.java.util.jar.pack.ConstantPool$Entry[]
putfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.argRefs:[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
3: aload 0
invokevirtual com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.hashCode:()I
pop
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/java/util/jar/pack/ConstantPool$BootstrapMethodEntry;
0 5 1 bsmRef Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
0 5 2 argRefs [Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
MethodParameters:
Name Flags
bsmRef
argRefs
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc Lcom/sun/java/util/jar/pack/ConstantPool$BootstrapMethodEntry;
if_acmpeq 2
1: StackMap locals:
StackMap stack:
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
checkcast com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry
astore 2
start local 2 3: aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.bsmRef:Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
aload 2
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.bsmRef:Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
invokevirtual com.sun.java.util.jar.pack.ConstantPool$MethodHandleEntry.eq:(Lcom/sun/java/util/jar/pack/ConstantPool$Entry;)Z
ifeq 6
4: aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.argRefs:[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
aload 2
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.argRefs:[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
invokestatic java.util.Arrays.equals:([Ljava/lang/Object;[Ljava/lang/Object;)Z
ifeq 6
5: iconst_1
ireturn
StackMap locals: com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry
StackMap stack:
6: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/java/util/jar/pack/ConstantPool$BootstrapMethodEntry;
0 7 1 o Ljava/lang/Object;
3 7 2 that Lcom/sun/java/util/jar/pack/ConstantPool$BootstrapMethodEntry;
MethodParameters:
Name Flags
o
public int compareTo(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.superCompareTo:(Ljava/lang/Object;)I
istore 2
start local 2 1: iload 2
ifne 9
2: aload 1
checkcast com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry
astore 3
start local 3 3: getstatic com.sun.java.util.jar.pack.Utils.SORT_BSS_BSM_MAJOR:Z
ifeq 5
4: aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.bsmRef:Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
aload 3
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.bsmRef:Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
invokevirtual com.sun.java.util.jar.pack.ConstantPool$MethodHandleEntry.compareTo:(Ljava/lang/Object;)I
istore 2
5: StackMap locals: int com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry
StackMap stack:
iload 2
ifne 7
6: aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.argRefs:[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
aload 3
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.argRefs:[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
invokestatic com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.compareArgArrays:([Lcom/sun/java/util/jar/pack/ConstantPool$Entry;[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;)I
istore 2
7: StackMap locals:
StackMap stack:
iload 2
ifne 9
8: aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.bsmRef:Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
aload 3
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.bsmRef:Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
invokevirtual com.sun.java.util.jar.pack.ConstantPool$MethodHandleEntry.compareTo:(Ljava/lang/Object;)I
istore 2
end local 3 9: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/java/util/jar/pack/ConstantPool$BootstrapMethodEntry;
0 10 1 o Ljava/lang/Object;
1 10 2 x I
3 9 3 that Lcom/sun/java/util/jar/pack/ConstantPool$BootstrapMethodEntry;
MethodParameters:
Name Flags
o
public java.lang.String stringValue();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.bsmRef:Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
aload 0
getfield com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.argRefs:[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
invokestatic com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry.stringValueOf:(Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/java/util/jar/pack/ConstantPool$BootstrapMethodEntry;
static java.lang.String stringValueOf(com.sun.java.util.jar.pack.ConstantPool$MethodHandleEntry, com.sun.java.util.jar.pack.ConstantPool$Entry[]);
descriptor: (Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
aload 0
invokevirtual com.sun.java.util.jar.pack.ConstantPool$MethodHandleEntry.stringValue:()Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: bipush 60
istore 3
start local 3 2: aload 1
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 7
StackMap locals: com.sun.java.util.jar.pack.ConstantPool$MethodHandleEntry com.sun.java.util.jar.pack.ConstantPool$Entry[] java.lang.StringBuilder int top int int com.sun.java.util.jar.pack.ConstantPool$Entry[]
StackMap stack:
3: aload 7
iload 5
aaload
astore 4
start local 4 4: aload 2
iload 3
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 4
invokevirtual com.sun.java.util.jar.pack.ConstantPool$Entry.stringValue:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: bipush 59
istore 3
end local 4 6: iinc 5 1
StackMap locals:
StackMap stack:
7: iload 5
iload 6
if_icmplt 3
8: iload 3
bipush 60
if_icmpne 9
aload 2
iload 3
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
9: StackMap locals: com.sun.java.util.jar.pack.ConstantPool$MethodHandleEntry com.sun.java.util.jar.pack.ConstantPool$Entry[] java.lang.StringBuilder int
StackMap stack:
aload 2
bipush 62
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
10: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 bsmRef Lcom/sun/java/util/jar/pack/ConstantPool$MethodHandleEntry;
0 11 1 argRefs [Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
1 11 2 sb Ljava/lang/StringBuilder;
2 11 3 nextSep C
4 6 4 argRef Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
MethodParameters:
Name Flags
bsmRef
argRefs
static int compareArgArrays(com.sun.java.util.jar.pack.ConstantPool$Entry[], com.sun.java.util.jar.pack.ConstantPool$Entry[]);
descriptor: ([Lcom/sun/java/util/jar/pack/ConstantPool$Entry;[Lcom/sun/java/util/jar/pack/ConstantPool$Entry;)I
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
arraylength
aload 1
arraylength
isub
istore 2
start local 2 1: iload 2
ifeq 2
iload 2
ireturn
2: StackMap locals: int
StackMap stack:
iconst_0
istore 3
start local 3 3: goto 7
4: StackMap locals: int
StackMap stack:
aload 0
iload 3
aaload
aload 1
iload 3
aaload
invokevirtual com.sun.java.util.jar.pack.ConstantPool$Entry.compareTo:(Ljava/lang/Object;)I
istore 2
5: iload 2
ifeq 6
goto 8
6: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
aload 0
arraylength
if_icmplt 4
end local 3 8: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 a1 [Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
0 9 1 a2 [Lcom/sun/java/util/jar/pack/ConstantPool$Entry;
1 9 2 x I
3 8 3 i I
MethodParameters:
Name Flags
a1
a2
}
SourceFile: "ConstantPool.java"
NestHost: com.sun.java.util.jar.pack.ConstantPool
InnerClasses:
public BootstrapMethodEntry = com.sun.java.util.jar.pack.ConstantPool$BootstrapMethodEntry of com.sun.java.util.jar.pack.ConstantPool
public abstract Entry = com.sun.java.util.jar.pack.ConstantPool$Entry of com.sun.java.util.jar.pack.ConstantPool
public MethodHandleEntry = com.sun.java.util.jar.pack.ConstantPool$MethodHandleEntry of com.sun.java.util.jar.pack.ConstantPool