abstract class jdk.dynalink.beans.SingleDynamicMethod extends jdk.dynalink.beans.DynamicMethod
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: jdk.dynalink.beans.SingleDynamicMethod
super_class: jdk.dynalink.beans.DynamicMethod
{
private static final java.lang.invoke.MethodHandle CAN_CONVERT_TO;
descriptor: Ljava/lang/invoke/MethodHandle;
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=7, locals=0, args_size=0
0: ldc Ljdk/dynalink/beans/SingleDynamicMethod;
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 jdk.dynalink.beans.SingleDynamicMethod.$assertionsDisabled:Z
3: invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
ldc "canConvertTo"
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
iconst_3
anewarray java.lang.Class
dup
iconst_0
ldc Ljdk/dynalink/linker/LinkerServices;
aastore
dup
iconst_1
ldc Ljava/lang/Class;
aastore
dup
iconst_2
ldc Ljava/lang/Object;
aastore
invokestatic jdk.dynalink.linker.support.Lookup.findOwnStatic:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.SingleDynamicMethod.CAN_CONVERT_TO:Ljava/lang/invoke/MethodHandle;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial jdk.dynalink.beans.DynamicMethod.<init>:(Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/dynalink/beans/SingleDynamicMethod;
0 2 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name final
abstract boolean isVarArgs();
descriptor: ()Z
flags: (0x0400) ACC_ABSTRACT
abstract java.lang.invoke.MethodType getMethodType();
descriptor: ()Ljava/lang/invoke/MethodType;
flags: (0x0400) ACC_ABSTRACT
abstract java.lang.invoke.MethodHandle getTarget(jdk.dynalink.CallSiteDescriptor);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;)Ljava/lang/invoke/MethodHandle;
flags: (0x0400) ACC_ABSTRACT
MethodParameters:
Name Flags
desc
java.lang.invoke.MethodHandle getInvocation(jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.LinkerServices);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/invoke/MethodHandle;
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
aload 1
aload 2
invokedynamic get(Ljdk/dynalink/beans/SingleDynamicMethod;Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;)Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(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;
Method arguments:
()Ljava/lang/Object;
jdk/dynalink/beans/SingleDynamicMethod.lambda$0(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/invoke/MethodHandle; (7)
()Ljava/lang/invoke/MethodHandle;
1: aload 1
2: invokeinterface jdk.dynalink.linker.LinkerServices.getWithLookup:(Ljava/util/function/Supplier;Ljdk/dynalink/SecureLookupSupplier;)Ljava/lang/Object;
checkcast java.lang.invoke.MethodHandle
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/dynalink/beans/SingleDynamicMethod;
0 3 1 callSiteDescriptor Ljdk/dynalink/CallSiteDescriptor;
0 3 2 linkerServices Ljdk/dynalink/linker/LinkerServices;
MethodParameters:
Name Flags
callSiteDescriptor final
linkerServices final
jdk.dynalink.beans.SingleDynamicMethod getMethodForExactParamTypes(java.lang.String);
descriptor: (Ljava/lang/String;)Ljdk/dynalink/beans/SingleDynamicMethod;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual jdk.dynalink.beans.SingleDynamicMethod.getMethodType:()Ljava/lang/invoke/MethodType;
invokestatic jdk.dynalink.beans.SingleDynamicMethod.typeMatchesDescription:(Ljava/lang/String;Ljava/lang/invoke/MethodType;)Z
ifeq 1
aload 0
goto 2
StackMap locals:
StackMap stack:
1: aconst_null
StackMap locals:
StackMap stack: jdk.dynalink.beans.SingleDynamicMethod
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/dynalink/beans/SingleDynamicMethod;
0 3 1 paramTypes Ljava/lang/String;
MethodParameters:
Name Flags
paramTypes final
boolean contains(jdk.dynalink.beans.SingleDynamicMethod);
descriptor: (Ljdk/dynalink/beans/SingleDynamicMethod;)Z
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual jdk.dynalink.beans.SingleDynamicMethod.getMethodType:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.parameterList:()Ljava/util/List;
aload 1
invokevirtual jdk.dynalink.beans.SingleDynamicMethod.getMethodType:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.parameterList:()Ljava/util/List;
invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/SingleDynamicMethod;
0 1 1 method Ljdk/dynalink/beans/SingleDynamicMethod;
MethodParameters:
Name Flags
method final
static java.lang.String getMethodNameWithSignature(java.lang.invoke.MethodType, java.lang.String, boolean);
descriptor: (Ljava/lang/invoke/MethodType;Ljava/lang/String;Z)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual java.lang.invoke.MethodType.toString:()Ljava/lang/String;
astore 3
start local 3 1: aload 3
bipush 41
invokevirtual java.lang.String.lastIndexOf:(I)I
iconst_1
iadd
istore 4
start local 4 2: aload 3
bipush 44
invokevirtual java.lang.String.indexOf:(I)I
iconst_1
iadd
istore 5
start local 5 3: iload 5
ifne 5
4: iload 4
iconst_1
isub
istore 5
5: StackMap locals: java.lang.String int int
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 6
start local 6 6: iload 2
ifeq 8
7: aload 6
aload 3
iload 4
aload 3
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
bipush 32
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
8: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 6
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 40
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 3
iload 5
iload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/CharSequence;II)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
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 9 0 type Ljava/lang/invoke/MethodType;
0 9 1 methodName Ljava/lang/String;
0 9 2 withReturnType Z
1 9 3 typeStr Ljava/lang/String;
2 9 4 retTypeIndex I
3 9 5 secondParamIndex I
6 9 6 b Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
type final
methodName final
withReturnType final
static java.lang.invoke.MethodHandle getInvocation(java.lang.invoke.MethodHandle, java.lang.invoke.MethodType, jdk.dynalink.linker.LinkerServices);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/invoke/MethodHandle;
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=19, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
invokeinterface jdk.dynalink.linker.LinkerServices.filterInternalObjects:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 3
start local 3 1: aload 3
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
astore 4
start local 4 2: aload 4
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
istore 5
start local 5 3: aload 0
invokevirtual java.lang.invoke.MethodHandle.isVarargsCollector:()Z
istore 6
start local 6 4: iload 6
ifeq 5
aload 3
invokevirtual java.lang.invoke.MethodHandle.asFixedArity:()Ljava/lang/invoke/MethodHandle;
goto 6
StackMap locals: java.lang.invoke.MethodHandle java.lang.invoke.MethodType jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodHandle java.lang.invoke.MethodType int int
StackMap stack:
5: aload 3
StackMap locals:
StackMap stack: java.lang.invoke.MethodHandle
6: astore 7
start local 7 7: iload 6
ifeq 8
iload 5
iconst_1
isub
goto 9
StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
8: iload 5
StackMap locals:
StackMap stack: int
9: istore 8
start local 8 10: aload 1
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
istore 9
start local 9 11: iload 9
iload 8
if_icmpge 13
12: aconst_null
areturn
13: StackMap locals: int int
StackMap stack:
iload 9
iload 8
if_icmpne 21
14: iload 6
ifeq 19
15: aload 7
iload 8
iconst_1
anewarray java.lang.Object
dup
iconst_0
16: aload 4
iload 8
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
iconst_0
17: invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
aastore
invokestatic java.lang.invoke.MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
astore 10
start local 10 18: goto 20
end local 10 19: StackMap locals:
StackMap stack:
aload 7
astore 10
start local 10 20: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
aload 10
aload 2
aload 1
invokestatic jdk.dynalink.beans.SingleDynamicMethod.createConvertingInvocation:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
areturn
end local 10 21: StackMap locals:
StackMap stack:
iload 6
ifne 23
22: aconst_null
areturn
23: StackMap locals:
StackMap stack:
aload 4
iload 8
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
astore 10
start local 10 24: iload 9
iload 5
if_icmpne 62
25: aload 1
iload 8
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
astore 11
start local 11 26: aload 10
aload 11
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 30
27: aload 3
aload 2
aload 1
invokestatic jdk.dynalink.beans.SingleDynamicMethod.createConvertingInvocation:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
28: aload 11
29: invokevirtual java.lang.invoke.MethodHandle.asVarargsCollector:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
areturn
30: StackMap locals: java.lang.Class java.lang.Class
StackMap stack:
aload 7
31: iload 9
32: invokestatic jdk.dynalink.beans.SingleDynamicMethod.collectArguments:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
33: aload 2
aload 1
34: invokestatic jdk.dynalink.beans.SingleDynamicMethod.createConvertingInvocation:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
astore 12
start local 12 35: aload 11
aload 10
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
istore 13
start local 13 36: aload 2
aload 11
aload 10
invokeinterface jdk.dynalink.linker.LinkerServices.canConvert:(Ljava/lang/Class;Ljava/lang/Class;)Z
istore 14
start local 14 37: iload 13
ifne 39
iload 14
ifne 39
38: aload 12
areturn
39: StackMap locals: java.lang.invoke.MethodHandle int int
StackMap stack:
aload 7
iload 8
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
aload 2
aload 11
aload 10
invokeinterface jdk.dynalink.linker.LinkerServices.getTypeConverter:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
aastore
40: invokestatic java.lang.invoke.MethodHandles.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
41: aload 2
aload 1
42: invokestatic jdk.dynalink.beans.SingleDynamicMethod.createConvertingInvocation:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
astore 15
start local 15 43: getstatic jdk.dynalink.beans.SingleDynamicMethod.CAN_CONVERT_TO:Ljava/lang/invoke/MethodHandle;
iconst_0
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
dup
iconst_1
44: aload 10
aastore
45: invokestatic java.lang.invoke.MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
astore 16
start local 16 46: aload 16
iconst_0
47: iload 8
invokestatic java.lang.invoke.MethodType.genericMethodType:(I)Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.parameterList:()Ljava/util/List;
48: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;ILjava/util/List;)Ljava/lang/invoke/MethodHandle;
49: aload 1
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
50: astore 17
start local 17 51: aload 17
52: aload 15
aload 12
53: invokestatic java.lang.invoke.MethodHandles.guardWithTest:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 18
start local 18 54: iload 13
ifeq 60
55: aload 10
iload 8
aload 1
invokestatic jdk.dynalink.linker.support.Guards.isInstance:(Ljava/lang/Class;ILjava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
56: aload 7
aload 2
aload 1
invokestatic jdk.dynalink.beans.SingleDynamicMethod.createConvertingInvocation:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
57: iload 14
ifeq 58
aload 18
goto 59
StackMap locals: java.lang.invoke.MethodHandle java.lang.invoke.MethodType jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodHandle java.lang.invoke.MethodType int int java.lang.invoke.MethodHandle int int java.lang.Class java.lang.Class java.lang.invoke.MethodHandle int int java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle
StackMap stack: java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle
58: aload 12
59: StackMap locals: java.lang.invoke.MethodHandle java.lang.invoke.MethodType jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodHandle java.lang.invoke.MethodType int int java.lang.invoke.MethodHandle int int java.lang.Class java.lang.Class java.lang.invoke.MethodHandle int int java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle
StackMap stack: java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle
invokestatic java.lang.invoke.MethodHandles.guardWithTest:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
areturn
60: StackMap locals:
StackMap stack:
getstatic jdk.dynalink.beans.SingleDynamicMethod.$assertionsDisabled:Z
ifne 61
iload 14
ifne 61
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
61: StackMap locals:
StackMap stack:
aload 18
areturn
end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 62: StackMap locals: java.lang.invoke.MethodHandle java.lang.invoke.MethodType jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodHandle java.lang.invoke.MethodType int int java.lang.invoke.MethodHandle int int java.lang.Class
StackMap stack:
aload 7
iload 9
invokestatic jdk.dynalink.beans.SingleDynamicMethod.collectArguments:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
aload 2
aload 1
invokestatic jdk.dynalink.beans.SingleDynamicMethod.createConvertingInvocation:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
areturn
end local 10 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 63 0 target Ljava/lang/invoke/MethodHandle;
0 63 1 callSiteType Ljava/lang/invoke/MethodType;
0 63 2 linkerServices Ljdk/dynalink/linker/LinkerServices;
1 63 3 filteredTarget Ljava/lang/invoke/MethodHandle;
2 63 4 methodType Ljava/lang/invoke/MethodType;
3 63 5 paramsLen I
4 63 6 varArgs Z
7 63 7 fixTarget Ljava/lang/invoke/MethodHandle;
10 63 8 fixParamsLen I
11 63 9 argsLen I
18 19 10 matchedMethod Ljava/lang/invoke/MethodHandle;
20 21 10 matchedMethod Ljava/lang/invoke/MethodHandle;
24 63 10 varArgType Ljava/lang/Class<*>;
26 62 11 callSiteLastArgType Ljava/lang/Class<*>;
35 62 12 varArgCollectingInvocation Ljava/lang/invoke/MethodHandle;
36 62 13 isAssignableFromArray Z
37 62 14 isCustomConvertible Z
43 62 15 arrayConvertingInvocation Ljava/lang/invoke/MethodHandle;
46 62 16 canConvertArgToArray Ljava/lang/invoke/MethodHandle;
51 62 17 canConvertLastArgToArray Ljava/lang/invoke/MethodHandle;
54 62 18 convertToArrayWhenPossible Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
target final
callSiteType final
linkerServices final
private static boolean canConvertTo(jdk.dynalink.linker.LinkerServices, java.lang.Class<?>, );
descriptor: (Ljdk/dynalink/linker/LinkerServices;Ljava/lang/Class;Ljava/lang/Object;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: aload 0
aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
invokeinterface jdk.dynalink.linker.LinkerServices.canConvert:(Ljava/lang/Class;Ljava/lang/Class;)Z
StackMap locals:
StackMap stack: int
2: ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 linkerServices Ljdk/dynalink/linker/LinkerServices;
0 3 1 to Ljava/lang/Class<*>;
0 3 2 obj Ljava/lang/Object;
Signature: (Ljdk/dynalink/linker/LinkerServices;Ljava/lang/Class<*>;Ljava/lang/Object;)Z
MethodParameters:
Name Flags
linkerServices final
to final
obj final
static java.lang.invoke.MethodHandle collectArguments(java.lang.invoke.MethodHandle, int);
descriptor: (Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
astore 2
start local 2 1: aload 2
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
iconst_1
isub
istore 3
start local 3 2: aload 2
iload 3
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
astore 4
start local 4 3: aload 0
aload 4
iload 1
iload 3
isub
invokevirtual java.lang.invoke.MethodHandle.asCollector:(Ljava/lang/Class;I)Ljava/lang/invoke/MethodHandle;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 target Ljava/lang/invoke/MethodHandle;
0 4 1 parameterCount I
1 4 2 methodType Ljava/lang/invoke/MethodType;
2 4 3 fixParamsLen I
3 4 4 arrayType Ljava/lang/Class<*>;
MethodParameters:
Name Flags
target final
parameterCount final
private static java.lang.invoke.MethodHandle createConvertingInvocation(java.lang.invoke.MethodHandle, jdk.dynalink.linker.LinkerServices, java.lang.invoke.MethodType);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
aload 2
invokeinterface jdk.dynalink.linker.LinkerServices.asTypeLosslessReturn:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 sizedMethod Ljava/lang/invoke/MethodHandle;
0 1 1 linkerServices Ljdk/dynalink/linker/LinkerServices;
0 1 2 callSiteType Ljava/lang/invoke/MethodType;
MethodParameters:
Name Flags
sizedMethod final
linkerServices final
callSiteType final
private static boolean typeMatchesDescription(java.lang.String, java.lang.invoke.MethodType);
descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodType;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: new java.util.StringTokenizer
dup
aload 0
ldc ", "
invokespecial java.util.StringTokenizer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 2
start local 2 1: iconst_1
istore 3
start local 3 2: goto 6
3: StackMap locals: java.util.StringTokenizer int
StackMap stack:
aload 2
invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
ifeq 4
aload 2
invokevirtual java.util.StringTokenizer.nextToken:()Ljava/lang/String;
aload 1
iload 3
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
invokestatic jdk.dynalink.beans.SingleDynamicMethod.typeNameMatches:(Ljava/lang/String;Ljava/lang/Class;)Z
ifne 5
4: StackMap locals:
StackMap stack:
iconst_0
ireturn
5: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
aload 1
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
if_icmplt 3
end local 3 7: aload 2
invokevirtual java.util.StringTokenizer.hasMoreTokens:()Z
ifeq 8
iconst_0
goto 9
StackMap locals:
StackMap stack:
8: iconst_1
StackMap locals:
StackMap stack: int
9: ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 paramTypes Ljava/lang/String;
0 10 1 type Ljava/lang/invoke/MethodType;
1 10 2 tok Ljava/util/StringTokenizer;
2 7 3 i I
MethodParameters:
Name Flags
paramTypes final
type final
private static boolean typeNameMatches(java.lang.String, java.lang.Class<?>);
descriptor: (Ljava/lang/String;Ljava/lang/Class;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
bipush 46
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpne 1
aload 1
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
goto 2
StackMap locals:
StackMap stack: java.lang.String
1: aload 1
invokevirtual java.lang.Class.getCanonicalName:()Ljava/lang/String;
StackMap locals: java.lang.String java.lang.Class
StackMap stack: java.lang.String java.lang.String
2: invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 typeName Ljava/lang/String;
0 3 1 type Ljava/lang/Class<*>;
Signature: (Ljava/lang/String;Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
typeName final
type final
private java.lang.invoke.MethodHandle lambda$0(jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.LinkerServices);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/invoke/MethodHandle;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 0 0: aload 0
aload 1
invokevirtual jdk.dynalink.beans.SingleDynamicMethod.getTarget:(Ljdk/dynalink/CallSiteDescriptor;)Ljava/lang/invoke/MethodHandle;
1: aload 1
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
aload 2
2: invokestatic jdk.dynalink.beans.SingleDynamicMethod.getInvocation:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/invoke/MethodHandle;
3: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/dynalink/beans/SingleDynamicMethod;
}
SourceFile: "SingleDynamicMethod.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles