public class com.sun.tools.javac.jvm.Pool$DynamicMethod extends com.sun.tools.javac.jvm.Pool$Method
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.javac.jvm.Pool$DynamicMethod
super_class: com.sun.tools.javac.jvm.Pool$Method
{
public java.lang.Object[] uniqueStaticArgs;
descriptor: [Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
public void <init>(com.sun.tools.javac.code.Symbol$DynamicMethodSymbol, com.sun.tools.javac.code.Types);
descriptor: (Lcom/sun/tools/javac/code/Symbol$DynamicMethodSymbol;Lcom/sun/tools/javac/code/Types;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial com.sun.tools.javac.jvm.Pool$Method.<init>:(Lcom/sun/tools/javac/code/Symbol$MethodSymbol;Lcom/sun/tools/javac/code/Types;)V
1: aload 0
aload 0
aload 1
getfield com.sun.tools.javac.code.Symbol$DynamicMethodSymbol.staticArgs:[Ljava/lang/Object;
aload 2
invokevirtual com.sun.tools.javac.jvm.Pool$DynamicMethod.getUniqueTypeArray:([Ljava/lang/Object;Lcom/sun/tools/javac/code/Types;)[Ljava/lang/Object;
putfield com.sun.tools.javac.jvm.Pool$DynamicMethod.uniqueStaticArgs:[Ljava/lang/Object;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/jvm/Pool$DynamicMethod;
0 3 1 m Lcom/sun/tools/javac/code/Symbol$DynamicMethodSymbol;
0 3 2 types Lcom/sun/tools/javac/code/Types;
MethodParameters:
Name Flags
m
types
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: aload 0
aload 1
iconst_1
invokevirtual com.sun.tools.javac.jvm.Pool$DynamicMethod.equalsImpl:(Ljava/lang/Object;Z)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/jvm/Pool$DynamicMethod;
0 1 1 any Ljava/lang/Object;
MethodParameters:
Name Flags
any
protected boolean equalsImpl(java.lang.Object, boolean);
descriptor: (Ljava/lang/Object;Z)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifeq 1
aload 0
aload 1
invokespecial com.sun.tools.javac.jvm.Pool$Method.equals:(Ljava/lang/Object;)Z
ifne 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
aload 1
instanceof com.sun.tools.javac.jvm.Pool$DynamicMethod
ifne 2
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.Pool$DynamicMethod.other:Lcom/sun/tools/javac/code/Symbol;
checkcast com.sun.tools.javac.code.Symbol$DynamicMethodSymbol
astore 3
start local 3 3: aload 1
checkcast com.sun.tools.javac.jvm.Pool$DynamicMethod
getfield com.sun.tools.javac.jvm.Pool$DynamicMethod.other:Lcom/sun/tools/javac/code/Symbol;
checkcast com.sun.tools.javac.code.Symbol$DynamicMethodSymbol
astore 4
start local 4 4: aload 3
getfield com.sun.tools.javac.code.Symbol$DynamicMethodSymbol.bsm:Lcom/sun/tools/javac/code/Symbol;
aload 4
getfield com.sun.tools.javac.code.Symbol$DynamicMethodSymbol.bsm:Lcom/sun/tools/javac/code/Symbol;
if_acmpne 11
5: aload 3
getfield com.sun.tools.javac.code.Symbol$DynamicMethodSymbol.bsmKind:I
aload 4
getfield com.sun.tools.javac.code.Symbol$DynamicMethodSymbol.bsmKind:I
if_icmpne 11
6: aload 0
getfield com.sun.tools.javac.jvm.Pool$DynamicMethod.uniqueStaticArgs:[Ljava/lang/Object;
7: aload 1
checkcast com.sun.tools.javac.jvm.Pool$DynamicMethod
getfield com.sun.tools.javac.jvm.Pool$DynamicMethod.uniqueStaticArgs:[Ljava/lang/Object;
8: invokestatic java.util.Arrays.equals:([Ljava/lang/Object;[Ljava/lang/Object;)Z
9: ifeq 11
10: iconst_1
ireturn
StackMap locals: com.sun.tools.javac.code.Symbol$DynamicMethodSymbol com.sun.tools.javac.code.Symbol$DynamicMethodSymbol
StackMap stack:
11: iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/javac/jvm/Pool$DynamicMethod;
0 12 1 any Ljava/lang/Object;
0 12 2 includeDynamicArgs Z
3 12 3 dm1 Lcom/sun/tools/javac/code/Symbol$DynamicMethodSymbol;
4 12 4 dm2 Lcom/sun/tools/javac/code/Symbol$DynamicMethodSymbol;
MethodParameters:
Name Flags
any
includeDynamicArgs
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual com.sun.tools.javac.jvm.Pool$DynamicMethod.hashCodeImpl:(Z)I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/jvm/Pool$DynamicMethod;
protected int hashCodeImpl(boolean);
descriptor: (Z)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: iload 1
ifeq 1
aload 0
invokespecial com.sun.tools.javac.jvm.Pool$Method.hashCode:()I
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: istore 2
start local 2 3: aload 0
getfield com.sun.tools.javac.jvm.Pool$DynamicMethod.other:Lcom/sun/tools/javac/code/Symbol;
checkcast com.sun.tools.javac.code.Symbol$DynamicMethodSymbol
astore 3
start local 3 4: iload 2
aload 3
getfield com.sun.tools.javac.code.Symbol$DynamicMethodSymbol.bsmKind:I
bipush 7
imul
5: aload 3
getfield com.sun.tools.javac.code.Symbol$DynamicMethodSymbol.bsm:Lcom/sun/tools/javac/code/Symbol;
invokevirtual java.lang.Object.hashCode:()I
bipush 11
imul
6: iadd
iadd
istore 2
7: iconst_0
istore 4
start local 4 8: goto 11
9: StackMap locals: int com.sun.tools.javac.code.Symbol$DynamicMethodSymbol int
StackMap stack:
iload 2
aload 0
getfield com.sun.tools.javac.jvm.Pool$DynamicMethod.uniqueStaticArgs:[Ljava/lang/Object;
iload 4
aaload
invokevirtual java.lang.Object.hashCode:()I
bipush 23
imul
iadd
istore 2
10: iinc 4 1
StackMap locals:
StackMap stack:
11: iload 4
aload 3
getfield com.sun.tools.javac.code.Symbol$DynamicMethodSymbol.staticArgs:[Ljava/lang/Object;
arraylength
if_icmplt 9
end local 4 12: iload 2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/tools/javac/jvm/Pool$DynamicMethod;
0 13 1 includeDynamicArgs Z
3 13 2 hash I
4 13 3 dm Lcom/sun/tools/javac/code/Symbol$DynamicMethodSymbol;
8 12 4 i I
MethodParameters:
Name Flags
includeDynamicArgs
private java.lang.Object[] getUniqueTypeArray(java.lang.Object[], com.sun.tools.javac.code.Types);
descriptor: ([Ljava/lang/Object;Lcom/sun/tools/javac/code/Types;)[Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
arraylength
anewarray java.lang.Object
astore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 8
3: StackMap locals: java.lang.Object[] int
StackMap stack:
aload 1
iload 4
aaload
instanceof com.sun.tools.javac.code.Type
ifeq 6
4: aload 3
iload 4
new com.sun.tools.javac.code.Types$UniqueType
dup
aload 1
iload 4
aaload
checkcast com.sun.tools.javac.code.Type
aload 2
invokespecial com.sun.tools.javac.code.Types$UniqueType.<init>:(Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Types;)V
aastore
5: goto 7
6: StackMap locals:
StackMap stack:
aload 3
iload 4
aload 1
iload 4
aaload
aastore
7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
aload 1
arraylength
if_icmplt 3
end local 4 9: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/javac/jvm/Pool$DynamicMethod;
0 10 1 objects [Ljava/lang/Object;
0 10 2 types Lcom/sun/tools/javac/code/Types;
1 10 3 result [Ljava/lang/Object;
2 9 4 i I
MethodParameters:
Name Flags
objects
types
}
SourceFile: "Pool.java"
NestHost: com.sun.tools.javac.jvm.Pool
InnerClasses:
public DynamicMethodSymbol = com.sun.tools.javac.code.Symbol$DynamicMethodSymbol of com.sun.tools.javac.code.Symbol
public MethodSymbol = com.sun.tools.javac.code.Symbol$MethodSymbol of com.sun.tools.javac.code.Symbol
public UniqueType = com.sun.tools.javac.code.Types$UniqueType of com.sun.tools.javac.code.Types
public DynamicMethod = com.sun.tools.javac.jvm.Pool$DynamicMethod of com.sun.tools.javac.jvm.Pool
BootstrapMethodsKey = com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsKey of com.sun.tools.javac.jvm.Pool$DynamicMethod
BootstrapMethodsValue = com.sun.tools.javac.jvm.Pool$DynamicMethod$BootstrapMethodsValue of com.sun.tools.javac.jvm.Pool$DynamicMethod
Method = com.sun.tools.javac.jvm.Pool$Method of com.sun.tools.javac.jvm.Pool