final class java.lang.invoke.BootstrapMethodInvoker
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: java.lang.invoke.BootstrapMethodInvoker
super_class: java.lang.Object
{
private static final java.lang.invoke.MethodType LMF_INDY_MT;
descriptor: Ljava/lang/invoke/MethodType;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodType LMF_ALT_MT;
descriptor: Ljava/lang/invoke/MethodType;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodType LMF_CONDY_MT;
descriptor: Ljava/lang/invoke/MethodType;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodType SCF_MT;
descriptor: Ljava/lang/invoke/MethodType;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=0, args_size=0
0: ldc Ljava/lang/invoke/BootstrapMethodInvoker;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic java.lang.invoke.BootstrapMethodInvoker.$assertionsDisabled:Z
3: ldc Ljava/lang/invoke/CallSite;
4: ldc Ljava/lang/invoke/MethodHandles$Lookup;
iconst_5
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/String;
aastore
dup
iconst_1
ldc Ljava/lang/invoke/MethodType;
aastore
dup
iconst_2
ldc Ljava/lang/invoke/MethodType;
aastore
dup
iconst_3
ldc Ljava/lang/invoke/MethodHandle;
aastore
dup
iconst_4
ldc Ljava/lang/invoke/MethodType;
aastore
5: invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
putstatic java.lang.invoke.BootstrapMethodInvoker.LMF_INDY_MT:Ljava/lang/invoke/MethodType;
6: ldc Ljava/lang/invoke/CallSite;
7: ldc Ljava/lang/invoke/MethodHandles$Lookup;
iconst_3
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/String;
aastore
dup
iconst_1
ldc Ljava/lang/invoke/MethodType;
aastore
dup
iconst_2
ldc [Ljava/lang/Object;
aastore
8: invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
putstatic java.lang.invoke.BootstrapMethodInvoker.LMF_ALT_MT:Ljava/lang/invoke/MethodType;
9: ldc Ljava/lang/Object;
10: ldc Ljava/lang/invoke/MethodHandles$Lookup;
iconst_5
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/String;
aastore
dup
iconst_1
ldc Ljava/lang/Class;
aastore
dup
iconst_2
ldc Ljava/lang/invoke/MethodType;
aastore
dup
iconst_3
ldc Ljava/lang/invoke/MethodHandle;
aastore
dup
iconst_4
ldc Ljava/lang/invoke/MethodType;
aastore
11: invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
putstatic java.lang.invoke.BootstrapMethodInvoker.LMF_CONDY_MT:Ljava/lang/invoke/MethodType;
12: ldc Ljava/lang/invoke/CallSite;
13: ldc Ljava/lang/invoke/MethodHandles$Lookup;
iconst_4
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/String;
aastore
dup
iconst_1
ldc Ljava/lang/invoke/MethodType;
aastore
dup
iconst_2
ldc Ljava/lang/String;
aastore
dup
iconst_3
ldc [Ljava/lang/Object;
aastore
14: invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
putstatic java.lang.invoke.BootstrapMethodInvoker.SCF_MT:Ljava/lang/invoke/MethodType;
15: return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/invoke/BootstrapMethodInvoker;
static <T> T invoke(java.lang.Class<T>, java.lang.invoke.MethodHandle, java.lang.String, , , java.lang.Class<?>);
descriptor: (Ljava/lang/Class;Ljava/lang/invoke/MethodHandle;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0008) ACC_STATIC
Code:
stack=11, locals=15, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: getstatic java.lang.invoke.MethodHandles$Lookup.IMPL_LOOKUP:Ljava/lang/invoke/MethodHandles$Lookup;
aload 5
invokevirtual java.lang.invoke.MethodHandles$Lookup.in:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandles$Lookup;
astore 6
start local 6 1: aload 1
invokestatic java.lang.invoke.MethodHandleNatives.isPullModeBSM:(Ljava/lang/invoke/MethodHandle;)Z
istore 8
start local 8 2: aload 4
invokestatic java.lang.invoke.MethodHandleNatives.staticArgumentsPulled:(Ljava/lang/Object;)Z
ifeq 3
iconst_0
goto 4
StackMap locals: java.lang.Class java.lang.invoke.MethodHandle java.lang.String java.lang.Object java.lang.Object java.lang.Class java.lang.invoke.MethodHandles$Lookup top int
StackMap stack:
3: iconst_1
StackMap locals:
StackMap stack: int
4: istore 9
start local 9 5: iload 9
ifeq 10
6: aconst_null
astore 10
start local 10 7: iload 8
ifeq 14
8: aload 1
iconst_1
invokestatic java.lang.invoke.BootstrapMethodInvoker.pushMePullYou:(Ljava/lang/invoke/MethodHandle;Z)Ljava/lang/invoke/MethodHandle;
astore 1
9: goto 14
end local 10 10: StackMap locals: int
StackMap stack:
iload 8
ifeq 11
aload 1
goto 12
11: StackMap locals:
StackMap stack:
aload 1
iconst_0
invokestatic java.lang.invoke.BootstrapMethodInvoker.pushMePullYou:(Ljava/lang/invoke/MethodHandle;Z)Ljava/lang/invoke/MethodHandle;
12: StackMap locals:
StackMap stack: java.lang.invoke.MethodHandle
astore 10
start local 10 13: aconst_null
astore 1
14: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
aload 4
invokestatic java.lang.invoke.BootstrapMethodInvoker.maybeReBox:(Ljava/lang/Object;)Ljava/lang/Object;
astore 4
15: aload 4
ifnonnull 18
16: aload 1
aload 6
aload 2
aload 3
invokestatic java.lang.invoke.BootstrapMethodInvoker.invoke:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 17: goto 86
end local 7 18: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.isArray:()Z
ifne 28
19: aload 1
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
invokestatic java.lang.invoke.BootstrapMethodInvoker.isStringConcatFactoryBSM:(Ljava/lang/invoke/MethodType;)Z
ifeq 26
20: aload 1
21: aload 6
aload 2
aload 3
checkcast java.lang.invoke.MethodType
22: aload 4
checkcast java.lang.String
iconst_0
anewarray java.lang.Object
23: invokevirtual java.lang.invoke.MethodHandle.invokeExact:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
24: astore 7
start local 7 25: goto 86
end local 7 26: StackMap locals:
StackMap stack:
aload 1
aload 6
aload 2
aload 3
aload 4
invokestatic java.lang.invoke.BootstrapMethodInvoker.invoke:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 27: goto 86
end local 7 28: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc [I
if_acmpne 33
29: new java.lang.invoke.BootstrapMethodInvoker$VM_BSCI
dup
aload 1
aload 2
aload 3
aload 6
aload 4
checkcast int[]
invokespecial java.lang.invoke.BootstrapMethodInvoker$VM_BSCI.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/invoke/MethodHandles$Lookup;[I)V
30: astore 11
start local 11 31: aload 10
aload 6
aload 11
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/invoke/BootstrapCallInfo;)Ljava/lang/Object;
astore 7
end local 11 start local 7 32: goto 86
end local 7 33: StackMap locals:
StackMap stack:
aload 4
checkcast java.lang.Object[]
astore 11
start local 11 34: aload 11
invokestatic java.lang.invoke.BootstrapMethodInvoker.maybeReBoxElements:([Ljava/lang/Object;)V
35: aload 1
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
astore 12
start local 12 36: aload 12
invokestatic java.lang.invoke.BootstrapMethodInvoker.isLambdaMetafactoryIndyBSM:(Ljava/lang/invoke/MethodType;)Z
ifeq 43
aload 11
arraylength
iconst_3
if_icmpne 43
37: aload 1
38: aload 6
aload 2
aload 3
checkcast java.lang.invoke.MethodType
aload 11
iconst_0
aaload
checkcast java.lang.invoke.MethodType
39: aload 11
iconst_1
aaload
checkcast java.lang.invoke.MethodHandle
aload 11
iconst_2
aaload
checkcast java.lang.invoke.MethodType
40: invokevirtual java.lang.invoke.MethodHandle.invokeExact:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
41: astore 7
start local 7 42: goto 86
end local 7 StackMap locals: java.lang.Object[] java.lang.invoke.MethodType
StackMap stack:
43: aload 12
invokestatic java.lang.invoke.BootstrapMethodInvoker.isLambdaMetafactoryCondyBSM:(Ljava/lang/invoke/MethodType;)Z
ifeq 50
aload 11
arraylength
iconst_3
if_icmpne 50
44: aload 1
45: aload 6
aload 2
aload 3
checkcast java.lang.Class
aload 11
iconst_0
aaload
checkcast java.lang.invoke.MethodType
46: aload 11
iconst_1
aaload
checkcast java.lang.invoke.MethodHandle
aload 11
iconst_2
aaload
checkcast java.lang.invoke.MethodType
47: invokevirtual java.lang.invoke.MethodHandle.invokeExact:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/Object;
48: astore 7
start local 7 49: goto 86
end local 7 StackMap locals:
StackMap stack:
50: aload 12
invokestatic java.lang.invoke.BootstrapMethodInvoker.isStringConcatFactoryBSM:(Ljava/lang/invoke/MethodType;)Z
ifeq 55
aload 11
arraylength
iconst_1
if_icmplt 55
51: aload 11
iconst_0
aaload
checkcast java.lang.String
astore 13
start local 13 52: aload 11
iconst_1
aload 11
arraylength
invokestatic java.util.Arrays.copyOfRange:([Ljava/lang/Object;II)[Ljava/lang/Object;
astore 14
start local 14 53: aload 1
aload 6
aload 2
aload 3
checkcast java.lang.invoke.MethodType
aload 13
aload 14
invokevirtual java.lang.invoke.MethodHandle.invokeExact:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
astore 7
end local 14 end local 13 start local 7 54: goto 86
end local 7 StackMap locals:
StackMap stack:
55: aload 12
invokestatic java.lang.invoke.BootstrapMethodInvoker.isLambdaMetafactoryAltMetafactoryBSM:(Ljava/lang/invoke/MethodType;)Z
ifeq 58
56: aload 1
aload 6
aload 2
aload 3
checkcast java.lang.invoke.MethodType
aload 11
invokevirtual java.lang.invoke.MethodHandle.invokeExact:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;
astore 7
start local 7 57: goto 86
end local 7 58: StackMap locals:
StackMap stack:
aload 11
arraylength
tableswitch { // 0 - 6
0: 59
1: 61
2: 65
3: 69
4: 73
5: 77
6: 81
default: 85
}
59: StackMap locals:
StackMap stack:
aload 1
aload 6
aload 2
aload 3
invokestatic java.lang.invoke.BootstrapMethodInvoker.invoke:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 60: goto 86
end local 7 61: StackMap locals:
StackMap stack:
aload 1
aload 6
aload 2
aload 3
62: aload 11
iconst_0
aaload
63: invokestatic java.lang.invoke.BootstrapMethodInvoker.invoke:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 64: goto 86
end local 7 65: StackMap locals:
StackMap stack:
aload 1
aload 6
aload 2
aload 3
66: aload 11
iconst_0
aaload
aload 11
iconst_1
aaload
67: invokestatic java.lang.invoke.BootstrapMethodInvoker.invoke:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 68: goto 86
end local 7 69: StackMap locals:
StackMap stack:
aload 1
aload 6
aload 2
aload 3
70: aload 11
iconst_0
aaload
aload 11
iconst_1
aaload
aload 11
iconst_2
aaload
71: invokestatic java.lang.invoke.BootstrapMethodInvoker.invoke:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 72: goto 86
end local 7 73: StackMap locals:
StackMap stack:
aload 1
aload 6
aload 2
aload 3
74: aload 11
iconst_0
aaload
aload 11
iconst_1
aaload
aload 11
iconst_2
aaload
aload 11
iconst_3
aaload
75: invokestatic java.lang.invoke.BootstrapMethodInvoker.invoke:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 76: goto 86
end local 7 77: StackMap locals:
StackMap stack:
aload 1
aload 6
aload 2
aload 3
78: aload 11
iconst_0
aaload
aload 11
iconst_1
aaload
aload 11
iconst_2
aaload
aload 11
iconst_3
aaload
aload 11
iconst_4
aaload
79: invokestatic java.lang.invoke.BootstrapMethodInvoker.invoke:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 80: goto 86
end local 7 81: StackMap locals:
StackMap stack:
aload 1
aload 6
aload 2
aload 3
82: aload 11
iconst_0
aaload
aload 11
iconst_1
aaload
aload 11
iconst_2
aaload
aload 11
iconst_3
aaload
aload 11
iconst_4
aaload
aload 11
iconst_5
aaload
83: invokestatic java.lang.invoke.BootstrapMethodInvoker.invoke:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 7
start local 7 84: goto 86
end local 7 85: StackMap locals:
StackMap stack:
aload 1
aload 6
aload 2
aload 3
aload 11
invokestatic java.lang.invoke.BootstrapMethodInvoker.invokeWithManyArguments:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
astore 7
end local 12 end local 11 start local 7 86: StackMap locals: java.lang.Class java.lang.invoke.MethodHandle java.lang.String java.lang.Object java.lang.Object java.lang.Class java.lang.invoke.MethodHandles$Lookup java.lang.Object int int java.lang.invoke.MethodHandle
StackMap stack:
aload 0
invokevirtual java.lang.Class.isPrimitive:()Z
ifeq 90
87: aload 0
invokestatic java.lang.invoke.MethodHandles.identity:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 11
start local 11 88: aload 11
aload 7
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
astore 7
89: aload 0
invokestatic sun.invoke.util.Wrapper.asWrapperType:(Ljava/lang/Class;)Ljava/lang/Class;
astore 0
end local 11 90: StackMap locals:
StackMap stack:
aload 0
aload 7
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
91: areturn
end local 7 92: StackMap locals: java.lang.Class java.lang.invoke.MethodHandle java.lang.String java.lang.Object java.lang.Object java.lang.Class java.lang.invoke.MethodHandles$Lookup top int int java.lang.invoke.MethodHandle
StackMap stack: java.lang.Error
astore 11
start local 11 93: aload 11
athrow
end local 11 94: StackMap locals:
StackMap stack: java.lang.Throwable
astore 11
start local 11 95: new java.lang.BootstrapMethodError
dup
ldc "bootstrap method initialization exception"
aload 11
invokespecial java.lang.BootstrapMethodError.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 11 end local 10 end local 9 end local 8 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 96 0 resultType Ljava/lang/Class<TT;>;
0 96 1 bootstrapMethod Ljava/lang/invoke/MethodHandle;
0 96 2 name Ljava/lang/String;
0 96 3 type Ljava/lang/Object;
0 96 4 info Ljava/lang/Object;
0 96 5 callerClass Ljava/lang/Class<*>;
1 96 6 caller Ljava/lang/invoke/MethodHandles$Lookup;
17 18 7 result Ljava/lang/Object;
25 26 7 result Ljava/lang/Object;
27 28 7 result Ljava/lang/Object;
32 33 7 result Ljava/lang/Object;
42 43 7 result Ljava/lang/Object;
49 50 7 result Ljava/lang/Object;
54 55 7 result Ljava/lang/Object;
57 58 7 result Ljava/lang/Object;
60 61 7 result Ljava/lang/Object;
64 65 7 result Ljava/lang/Object;
68 69 7 result Ljava/lang/Object;
72 73 7 result Ljava/lang/Object;
76 77 7 result Ljava/lang/Object;
80 81 7 result Ljava/lang/Object;
84 85 7 result Ljava/lang/Object;
86 92 7 result Ljava/lang/Object;
2 96 8 pullMode Z
5 96 9 vmIsPushing Z
7 10 10 pullModeBSM Ljava/lang/invoke/MethodHandle;
13 96 10 pullModeBSM Ljava/lang/invoke/MethodHandle;
31 32 11 bsci Ljava/lang/invoke/BootstrapCallInfo<Ljava/lang/Object;>;
34 86 11 argv [Ljava/lang/Object;
36 86 12 bsmType Ljava/lang/invoke/MethodType;
52 54 13 recipe Ljava/lang/String;
53 54 14 shiftedArgs [Ljava/lang/Object;
88 90 11 funnel Ljava/lang/invoke/MethodHandle;
93 94 11 e Ljava/lang/Error;
95 96 11 ex Ljava/lang/Throwable;
Exception table:
from to target type
14 91 92 Class java.lang.Error
14 91 94 Class java.lang.Throwable
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;Ljava/lang/invoke/MethodHandle;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Class<*>;)TT;
MethodParameters:
Name Flags
resultType
bootstrapMethod
name
type
info
callerClass
private static java.lang.Object invoke(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandles$Lookup, java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
instanceof java.lang.Class
ifeq 2
1: aload 0
aload 1
aload 2
aload 3
checkcast java.lang.Class
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
checkcast java.lang.invoke.MethodType
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 bootstrapMethod Ljava/lang/invoke/MethodHandle;
0 3 1 caller Ljava/lang/invoke/MethodHandles$Lookup;
0 3 2 name Ljava/lang/String;
0 3 3 type Ljava/lang/Object;
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
bootstrapMethod
caller
name
type
private static java.lang.Object invoke(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandles$Lookup, java.lang.String, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
instanceof java.lang.Class
ifeq 2
1: aload 0
aload 1
aload 2
aload 3
checkcast java.lang.Class
aload 4
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
checkcast java.lang.invoke.MethodType
aload 4
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 bootstrapMethod Ljava/lang/invoke/MethodHandle;
0 3 1 caller Ljava/lang/invoke/MethodHandles$Lookup;
0 3 2 name Ljava/lang/String;
0 3 3 type Ljava/lang/Object;
0 3 4 arg0 Ljava/lang/Object;
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
bootstrapMethod
caller
name
type
arg0
private static java.lang.Object invoke(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandles$Lookup, java.lang.String, java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 3
instanceof java.lang.Class
ifeq 2
1: aload 0
aload 1
aload 2
aload 3
checkcast java.lang.Class
aload 4
aload 5
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
checkcast java.lang.invoke.MethodType
aload 4
aload 5
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
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 3 0 bootstrapMethod Ljava/lang/invoke/MethodHandle;
0 3 1 caller Ljava/lang/invoke/MethodHandles$Lookup;
0 3 2 name Ljava/lang/String;
0 3 3 type Ljava/lang/Object;
0 3 4 arg0 Ljava/lang/Object;
0 3 5 arg1 Ljava/lang/Object;
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
bootstrapMethod
caller
name
type
arg0
arg1
private static java.lang.Object invoke(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandles$Lookup, java.lang.String, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 3
instanceof java.lang.Class
ifeq 2
1: aload 0
aload 1
aload 2
aload 3
checkcast java.lang.Class
aload 4
aload 5
aload 6
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
checkcast java.lang.invoke.MethodType
aload 4
aload 5
aload 6
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
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 3 0 bootstrapMethod Ljava/lang/invoke/MethodHandle;
0 3 1 caller Ljava/lang/invoke/MethodHandles$Lookup;
0 3 2 name Ljava/lang/String;
0 3 3 type Ljava/lang/Object;
0 3 4 arg0 Ljava/lang/Object;
0 3 5 arg1 Ljava/lang/Object;
0 3 6 arg2 Ljava/lang/Object;
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
bootstrapMethod
caller
name
type
arg0
arg1
arg2
private static java.lang.Object invoke(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandles$Lookup, java.lang.String, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 3
instanceof java.lang.Class
ifeq 2
1: aload 0
aload 1
aload 2
aload 3
checkcast java.lang.Class
aload 4
aload 5
aload 6
aload 7
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
checkcast java.lang.invoke.MethodType
aload 4
aload 5
aload 6
aload 7
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 7 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 3 0 bootstrapMethod Ljava/lang/invoke/MethodHandle;
0 3 1 caller Ljava/lang/invoke/MethodHandles$Lookup;
0 3 2 name Ljava/lang/String;
0 3 3 type Ljava/lang/Object;
0 3 4 arg0 Ljava/lang/Object;
0 3 5 arg1 Ljava/lang/Object;
0 3 6 arg2 Ljava/lang/Object;
0 3 7 arg3 Ljava/lang/Object;
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
bootstrapMethod
caller
name
type
arg0
arg1
arg2
arg3
private static java.lang.Object invoke(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandles$Lookup, java.lang.String, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=9, locals=9, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 3
instanceof java.lang.Class
ifeq 2
1: aload 0
aload 1
aload 2
aload 3
checkcast java.lang.Class
aload 4
aload 5
aload 6
aload 7
aload 8
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
checkcast java.lang.invoke.MethodType
aload 4
aload 5
aload 6
aload 7
aload 8
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 8 end local 7 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 3 0 bootstrapMethod Ljava/lang/invoke/MethodHandle;
0 3 1 caller Ljava/lang/invoke/MethodHandles$Lookup;
0 3 2 name Ljava/lang/String;
0 3 3 type Ljava/lang/Object;
0 3 4 arg0 Ljava/lang/Object;
0 3 5 arg1 Ljava/lang/Object;
0 3 6 arg2 Ljava/lang/Object;
0 3 7 arg3 Ljava/lang/Object;
0 3 8 arg4 Ljava/lang/Object;
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
bootstrapMethod
caller
name
type
arg0
arg1
arg2
arg3
arg4
private static java.lang.Object invoke(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandles$Lookup, java.lang.String, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=10, args_size=10
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 0: aload 3
instanceof java.lang.Class
ifeq 2
1: aload 0
aload 1
aload 2
aload 3
checkcast java.lang.Class
aload 4
aload 5
aload 6
aload 7
aload 8
aload 9
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
checkcast java.lang.invoke.MethodType
aload 4
aload 5
aload 6
aload 7
aload 8
aload 9
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 9 end local 8 end local 7 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 3 0 bootstrapMethod Ljava/lang/invoke/MethodHandle;
0 3 1 caller Ljava/lang/invoke/MethodHandles$Lookup;
0 3 2 name Ljava/lang/String;
0 3 3 type Ljava/lang/Object;
0 3 4 arg0 Ljava/lang/Object;
0 3 5 arg1 Ljava/lang/Object;
0 3 6 arg2 Ljava/lang/Object;
0 3 7 arg3 Ljava/lang/Object;
0 3 8 arg4 Ljava/lang/Object;
0 3 9 arg5 Ljava/lang/Object;
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
bootstrapMethod
caller
name
type
arg0
arg1
arg2
arg3
arg4
arg5
private static java.lang.Object invokeWithManyArguments(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandles$Lookup, java.lang.String, java.lang.Object, java.lang.Object[]);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
arraylength
bipush 124
if_icmplt 7
1: iconst_3
aload 4
arraylength
iadd
anewarray java.lang.Object
astore 5
start local 5 2: aload 5
iconst_0
aload 1
aastore
3: aload 5
iconst_1
aload 2
aastore
4: aload 5
iconst_2
aload 3
aastore
5: aload 4
iconst_0
aload 5
iconst_3
aload 4
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
6: aload 0
aload 5
invokevirtual java.lang.invoke.MethodHandle.invokeWithArguments:([Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 5 7: StackMap locals:
StackMap stack:
iconst_3
aload 4
arraylength
iadd
invokestatic java.lang.invoke.MethodType.genericMethodType:(I)Ljava/lang/invoke/MethodType;
astore 5
start local 5 8: aload 0
aload 5
invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
astore 6
start local 6 9: aload 5
invokevirtual java.lang.invoke.MethodType.invokers:()Ljava/lang/invoke/Invokers;
iconst_3
invokevirtual java.lang.invoke.Invokers.spreadInvoker:(I)Ljava/lang/invoke/MethodHandle;
astore 7
start local 7 10: aload 7
aload 6
aload 1
aload 2
aload 3
aload 4
invokevirtual java.lang.invoke.MethodHandle.invokeExact:(Ljava/lang/invoke/MethodHandle;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 7 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 11 0 bootstrapMethod Ljava/lang/invoke/MethodHandle;
0 11 1 caller Ljava/lang/invoke/MethodHandles$Lookup;
0 11 2 name Ljava/lang/String;
0 11 3 type Ljava/lang/Object;
0 11 4 argv [Ljava/lang/Object;
2 7 5 newargv [Ljava/lang/Object;
8 11 5 invocationType Ljava/lang/invoke/MethodType;
9 11 6 typedBSM Ljava/lang/invoke/MethodHandle;
10 11 7 spreader Ljava/lang/invoke/MethodHandle;
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
bootstrapMethod
caller
name
type
argv
private static boolean isStringConcatFactoryBSM(java.lang.invoke.MethodType);
descriptor: (Ljava/lang/invoke/MethodType;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic java.lang.invoke.BootstrapMethodInvoker.SCF_MT:Ljava/lang/invoke/MethodType;
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 bsmType Ljava/lang/invoke/MethodType;
MethodParameters:
Name Flags
bsmType
private static boolean isLambdaMetafactoryCondyBSM(java.lang.invoke.MethodType);
descriptor: (Ljava/lang/invoke/MethodType;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic java.lang.invoke.BootstrapMethodInvoker.LMF_CONDY_MT:Ljava/lang/invoke/MethodType;
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 bsmType Ljava/lang/invoke/MethodType;
MethodParameters:
Name Flags
bsmType
private static boolean isLambdaMetafactoryIndyBSM(java.lang.invoke.MethodType);
descriptor: (Ljava/lang/invoke/MethodType;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic java.lang.invoke.BootstrapMethodInvoker.LMF_INDY_MT:Ljava/lang/invoke/MethodType;
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 bsmType Ljava/lang/invoke/MethodType;
MethodParameters:
Name Flags
bsmType
private static boolean isLambdaMetafactoryAltMetafactoryBSM(java.lang.invoke.MethodType);
descriptor: (Ljava/lang/invoke/MethodType;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic java.lang.invoke.BootstrapMethodInvoker.LMF_ALT_MT:Ljava/lang/invoke/MethodType;
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 bsmType Ljava/lang/invoke/MethodType;
MethodParameters:
Name Flags
bsmType
private static java.lang.Object maybeReBox(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
instanceof java.lang.Integer
ifeq 4
1: aload 0
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
istore 1
start local 1 2: iload 1
iload 1
i2b
if_icmpne 4
3: iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
astore 0
end local 1 4: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 x Ljava/lang/Object;
2 4 1 xi I
MethodParameters:
Name Flags
x
private static void maybeReBoxElements(java.lang.Object[]);
descriptor: ([Ljava/lang/Object;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 0
iload 1
aload 0
iload 1
aaload
invokestatic java.lang.invoke.BootstrapMethodInvoker.maybeReBox:(Ljava/lang/Object;)Ljava/lang/Object;
aastore
3: iinc 1 1
StackMap locals:
StackMap stack:
4: iload 1
aload 0
arraylength
if_icmplt 2
end local 1 5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 xa [Ljava/lang/Object;
1 5 1 i I
MethodParameters:
Name Flags
xa
static java.lang.invoke.MethodHandle pushMePullYou(java.lang.invoke.MethodHandle, boolean);
descriptor: (Ljava/lang/invoke/MethodHandle;Z)Ljava/lang/invoke/MethodHandle;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: getstatic java.lang.invoke.MethodHandleStatics.TRACE_METHOD_LINKAGE:Z
ifeq 6
1: getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "converting BSM of type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " to "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: iload 1
ifeq 3
ldc "push mode"
goto 4
StackMap locals: java.lang.invoke.MethodHandle int
StackMap stack: java.io.PrintStream java.lang.StringBuilder
3: ldc "pull mode"
StackMap locals: java.lang.invoke.MethodHandle int
StackMap stack: java.io.PrintStream java.lang.StringBuilder java.lang.String
4: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
6: StackMap locals:
StackMap stack:
getstatic java.lang.invoke.BootstrapMethodInvoker.$assertionsDisabled:Z
ifne 7
aload 0
invokestatic java.lang.invoke.MethodHandleNatives.isPullModeBSM:(Ljava/lang/invoke/MethodHandle;)Z
iload 1
if_icmpeq 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals:
StackMap stack:
iload 1
ifeq 9
8: getstatic java.lang.invoke.BootstrapMethodInvoker$PushAdapter.MH_pushToBootstrapMethod:Ljava/lang/invoke/MethodHandle;
aload 0
invokevirtual java.lang.invoke.MethodHandle.bindTo:(Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
iconst_1
invokevirtual java.lang.invoke.MethodHandle.withVarargs:(Z)Ljava/lang/invoke/MethodHandle;
areturn
9: StackMap locals:
StackMap stack:
getstatic java.lang.invoke.BootstrapMethodInvoker$PullAdapter.MH_pullFromBootstrapMethod:Ljava/lang/invoke/MethodHandle;
aload 0
invokevirtual java.lang.invoke.MethodHandle.bindTo:(Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
iconst_0
invokevirtual java.lang.invoke.MethodHandle.withVarargs:(Z)Ljava/lang/invoke/MethodHandle;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 bsm Ljava/lang/invoke/MethodHandle;
0 10 1 goToPushMode Z
MethodParameters:
Name Flags
bsm
goToPushMode
}
SourceFile: "BootstrapMethodInvoker.java"
NestMembers:
java.lang.invoke.BootstrapMethodInvoker$PullAdapter java.lang.invoke.BootstrapMethodInvoker$PushAdapter java.lang.invoke.BootstrapMethodInvoker$VM_BSCI
InnerClasses:
final PullAdapter = java.lang.invoke.BootstrapMethodInvoker$PullAdapter of java.lang.invoke.BootstrapMethodInvoker
final PushAdapter = java.lang.invoke.BootstrapMethodInvoker$PushAdapter of java.lang.invoke.BootstrapMethodInvoker
private final VM_BSCI = java.lang.invoke.BootstrapMethodInvoker$VM_BSCI of java.lang.invoke.BootstrapMethodInvoker
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles