class jdk.dynalink.beans.MaximallySpecific
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.dynalink.beans.MaximallySpecific
super_class: java.lang.Object
{
private static final jdk.dynalink.beans.MaximallySpecific$MethodTypeGetter<java.lang.invoke.MethodHandle> METHOD_HANDLE_TYPE_GETTER;
descriptor: Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter<Ljava/lang/invoke/MethodHandle;>;
private static final jdk.dynalink.beans.MaximallySpecific$MethodTypeGetter<jdk.dynalink.beans.SingleDynamicMethod> DYNAMIC_METHOD_TYPE_GETTER;
descriptor: Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter<Ljdk/dynalink/beans/SingleDynamicMethod;>;
private static volatile int[] $SWITCH_TABLE$jdk$dynalink$linker$ConversionComparator$Comparison;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
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=2, locals=0, args_size=0
0: ldc Ljdk/dynalink/beans/MaximallySpecific;
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.MaximallySpecific.$assertionsDisabled:Z
3: new jdk.dynalink.beans.MaximallySpecific$1
dup
invokespecial jdk.dynalink.beans.MaximallySpecific$1.<init>:()V
4: putstatic jdk.dynalink.beans.MaximallySpecific.METHOD_HANDLE_TYPE_GETTER:Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter;
5: new jdk.dynalink.beans.MaximallySpecific$2
dup
invokespecial jdk.dynalink.beans.MaximallySpecific$2.<init>:()V
6: putstatic jdk.dynalink.beans.MaximallySpecific.DYNAMIC_METHOD_TYPE_GETTER:Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter;
7: 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 Ljdk/dynalink/beans/MaximallySpecific;
static java.util.List<jdk.dynalink.beans.SingleDynamicMethod> getMaximallySpecificMethods(java.util.List<jdk.dynalink.beans.SingleDynamicMethod>, boolean);
descriptor: (Ljava/util/List;Z)Ljava/util/List;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
aconst_null
aconst_null
invokestatic jdk.dynalink.beans.MaximallySpecific.getMaximallySpecificSingleDynamicMethods:(Ljava/util/List;Z[Ljava/lang/Class;Ljdk/dynalink/linker/LinkerServices;)Ljava/util/List;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 methods Ljava/util/List<Ljdk/dynalink/beans/SingleDynamicMethod;>;
0 1 1 varArgs Z
Signature: (Ljava/util/List<Ljdk/dynalink/beans/SingleDynamicMethod;>;Z)Ljava/util/List<Ljdk/dynalink/beans/SingleDynamicMethod;>;
MethodParameters:
Name Flags
methods final
varArgs final
static java.util.List<java.lang.invoke.MethodHandle> getMaximallySpecificMethodHandles(java.util.List<java.lang.invoke.MethodHandle>, boolean, java.lang.Class<?>[], jdk.dynalink.linker.LinkerServices);
descriptor: (Ljava/util/List;Z[Ljava/lang/Class;Ljdk/dynalink/linker/LinkerServices;)Ljava/util/List;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
aload 2
aload 3
getstatic jdk.dynalink.beans.MaximallySpecific.METHOD_HANDLE_TYPE_GETTER:Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter;
invokestatic jdk.dynalink.beans.MaximallySpecific.getMaximallySpecificMethods:(Ljava/util/List;Z[Ljava/lang/Class;Ljdk/dynalink/linker/LinkerServices;Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter;)Ljava/util/List;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 methods Ljava/util/List<Ljava/lang/invoke/MethodHandle;>;
0 1 1 varArgs Z
0 1 2 argTypes [Ljava/lang/Class;
0 1 3 ls Ljdk/dynalink/linker/LinkerServices;
Signature: (Ljava/util/List<Ljava/lang/invoke/MethodHandle;>;Z[Ljava/lang/Class<*>;Ljdk/dynalink/linker/LinkerServices;)Ljava/util/List<Ljava/lang/invoke/MethodHandle;>;
MethodParameters:
Name Flags
methods final
varArgs final
argTypes final
ls final
static java.util.List<jdk.dynalink.beans.SingleDynamicMethod> getMaximallySpecificSingleDynamicMethods(java.util.List<jdk.dynalink.beans.SingleDynamicMethod>, boolean, java.lang.Class<?>[], jdk.dynalink.linker.LinkerServices);
descriptor: (Ljava/util/List;Z[Ljava/lang/Class;Ljdk/dynalink/linker/LinkerServices;)Ljava/util/List;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
aload 2
aload 3
getstatic jdk.dynalink.beans.MaximallySpecific.DYNAMIC_METHOD_TYPE_GETTER:Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter;
invokestatic jdk.dynalink.beans.MaximallySpecific.getMaximallySpecificMethods:(Ljava/util/List;Z[Ljava/lang/Class;Ljdk/dynalink/linker/LinkerServices;Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter;)Ljava/util/List;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 methods Ljava/util/List<Ljdk/dynalink/beans/SingleDynamicMethod;>;
0 1 1 varArgs Z
0 1 2 argTypes [Ljava/lang/Class;
0 1 3 ls Ljdk/dynalink/linker/LinkerServices;
Signature: (Ljava/util/List<Ljdk/dynalink/beans/SingleDynamicMethod;>;Z[Ljava/lang/Class<*>;Ljdk/dynalink/linker/LinkerServices;)Ljava/util/List<Ljdk/dynalink/beans/SingleDynamicMethod;>;
MethodParameters:
Name Flags
methods final
varArgs final
argTypes final
ls final
private static <T> java.util.List<T> getMaximallySpecificMethods(java.util.List<T>, boolean, java.lang.Class<?>[], jdk.dynalink.linker.LinkerServices, jdk.dynalink.beans.MaximallySpecific$MethodTypeGetter<T>);
descriptor: (Ljava/util/List;Z[Ljava/lang/Class;Ljdk/dynalink/linker/LinkerServices;Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter;)Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=12, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokeinterface java.util.List.size:()I
iconst_2
if_icmpge 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
astore 5
start local 5 3: aload 0
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 20
StackMap locals: java.util.List int java.lang.Class[] jdk.dynalink.linker.LinkerServices jdk.dynalink.beans.MaximallySpecific$MethodTypeGetter java.util.LinkedList top java.util.Iterator
StackMap stack:
4: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 6
start local 6 5: aload 4
aload 6
invokevirtual jdk.dynalink.beans.MaximallySpecific$MethodTypeGetter.getMethodType:(Ljava/lang/Object;)Ljava/lang/invoke/MethodType;
astore 8
start local 8 6: iconst_0
istore 9
start local 9 7: aload 5
invokevirtual java.util.LinkedList.iterator:()Ljava/util/Iterator;
astore 10
start local 10 8: goto 17
9: StackMap locals: java.util.List int java.lang.Class[] jdk.dynalink.linker.LinkerServices jdk.dynalink.beans.MaximallySpecific$MethodTypeGetter java.util.LinkedList java.lang.Object java.util.Iterator java.lang.invoke.MethodType int java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
astore 11
start local 11 10: invokestatic jdk.dynalink.beans.MaximallySpecific.$SWITCH_TABLE$jdk$dynalink$linker$ConversionComparator$Comparison:()[I
aload 8
aload 4
aload 11
invokevirtual jdk.dynalink.beans.MaximallySpecific$MethodTypeGetter.getMethodType:(Ljava/lang/Object;)Ljava/lang/invoke/MethodType;
iload 1
aload 2
aload 3
invokestatic jdk.dynalink.beans.MaximallySpecific.isMoreSpecific:(Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Z[Ljava/lang/Class;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/linker/ConversionComparator$Comparison;
invokevirtual jdk.dynalink.linker.ConversionComparator$Comparison.ordinal:()I
iaload
tableswitch { // 1 - 3
1: 15
2: 11
3: 13
default: 16
}
11: StackMap locals: java.lang.Object
StackMap stack:
aload 10
invokeinterface java.util.Iterator.remove:()V
12: goto 17
13: StackMap locals:
StackMap stack:
iconst_1
istore 9
14: goto 17
15: StackMap locals:
StackMap stack:
goto 17
16: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 11 17: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
end local 10 18: iload 9
ifne 20
19: aload 5
aload 6
invokevirtual java.util.LinkedList.addLast:(Ljava/lang/Object;)V
end local 9 end local 8 end local 6 20: StackMap locals: java.util.List int java.lang.Class[] jdk.dynalink.linker.LinkerServices jdk.dynalink.beans.MaximallySpecific$MethodTypeGetter java.util.LinkedList top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
21: aload 5
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 22 0 methods Ljava/util/List<TT;>;
0 22 1 varArgs Z
0 22 2 argTypes [Ljava/lang/Class;
0 22 3 ls Ljdk/dynalink/linker/LinkerServices;
0 22 4 methodTypeGetter Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter<TT;>;
3 22 5 maximals Ljava/util/LinkedList<TT;>;
5 20 6 m TT;
6 20 8 methodType Ljava/lang/invoke/MethodType;
7 20 9 lessSpecific Z
8 18 10 maximal Ljava/util/Iterator<TT;>;
10 17 11 max TT;
Signature: <T:Ljava/lang/Object;>(Ljava/util/List<TT;>;Z[Ljava/lang/Class<*>;Ljdk/dynalink/linker/LinkerServices;Ljdk/dynalink/beans/MaximallySpecific$MethodTypeGetter<TT;>;)Ljava/util/List<TT;>;
MethodParameters:
Name Flags
methods final
varArgs final
argTypes final
ls final
methodTypeGetter final
private static jdk.dynalink.linker.ConversionComparator$Comparison isMoreSpecific(java.lang.invoke.MethodType, java.lang.invoke.MethodType, boolean, java.lang.Class<?>[], jdk.dynalink.linker.LinkerServices);
descriptor: (Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Z[Ljava/lang/Class;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/linker/ConversionComparator$Comparison;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=14, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
istore 5
start local 5 1: aload 1
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
istore 6
start local 6 2: getstatic jdk.dynalink.beans.MaximallySpecific.$assertionsDisabled:Z
ifne 4
iload 2
ifne 4
iload 5
iload 6
if_icmpne 3
aload 3
ifnull 4
aload 3
arraylength
iload 5
if_icmpeq 4
StackMap locals: int int
StackMap stack:
3: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals:
StackMap stack:
getstatic jdk.dynalink.beans.MaximallySpecific.$assertionsDisabled:Z
ifne 9
aload 3
ifnonnull 5
iconst_1
goto 6
StackMap locals:
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: aload 4
ifnonnull 7
iconst_1
goto 8
StackMap locals:
StackMap stack: int
7: iconst_0
StackMap locals: java.lang.invoke.MethodType java.lang.invoke.MethodType int java.lang.Class[] jdk.dynalink.linker.LinkerServices int int
StackMap stack: int int
8: if_icmpeq 9
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
9: StackMap locals:
StackMap stack:
iload 5
iload 6
invokestatic java.lang.Math.max:(II)I
aload 3
ifnonnull 10
iconst_0
goto 11
StackMap locals:
StackMap stack: int
10: aload 3
arraylength
StackMap locals: java.lang.invoke.MethodType java.lang.invoke.MethodType int java.lang.Class[] jdk.dynalink.linker.LinkerServices int int
StackMap stack: int int
11: invokestatic java.lang.Math.max:(II)I
istore 7
start local 7 12: iconst_0
istore 8
start local 8 13: iconst_0
istore 9
start local 9 14: iconst_1
istore 10
start local 10 15: goto 29
16: StackMap locals: java.lang.invoke.MethodType java.lang.invoke.MethodType int java.lang.Class[] jdk.dynalink.linker.LinkerServices int int int int int int
StackMap stack:
aload 0
iload 5
iload 10
iload 2
invokestatic jdk.dynalink.beans.MaximallySpecific.getParameterClass:(Ljava/lang/invoke/MethodType;IIZ)Ljava/lang/Class;
astore 11
start local 11 17: aload 1
iload 6
iload 10
iload 2
invokestatic jdk.dynalink.beans.MaximallySpecific.getParameterClass:(Ljava/lang/invoke/MethodType;IIZ)Ljava/lang/Class;
astore 12
start local 12 18: aload 11
aload 12
if_acmpeq 28
19: aload 11
aload 12
aload 3
iload 10
aload 4
invokestatic jdk.dynalink.beans.MaximallySpecific.compare:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;ILjdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/linker/ConversionComparator$Comparison;
astore 13
start local 13 20: aload 13
getstatic jdk.dynalink.linker.ConversionComparator$Comparison.TYPE_1_BETTER:Ljdk/dynalink/linker/ConversionComparator$Comparison;
if_acmpne 24
iload 8
ifne 24
21: iconst_1
istore 8
22: iload 9
ifeq 24
23: getstatic jdk.dynalink.linker.ConversionComparator$Comparison.INDETERMINATE:Ljdk/dynalink/linker/ConversionComparator$Comparison;
areturn
24: StackMap locals: java.lang.Class java.lang.Class jdk.dynalink.linker.ConversionComparator$Comparison
StackMap stack:
aload 13
getstatic jdk.dynalink.linker.ConversionComparator$Comparison.TYPE_2_BETTER:Ljdk/dynalink/linker/ConversionComparator$Comparison;
if_acmpne 28
iload 9
ifne 28
25: iconst_1
istore 9
26: iload 8
ifeq 28
27: getstatic jdk.dynalink.linker.ConversionComparator$Comparison.INDETERMINATE:Ljdk/dynalink/linker/ConversionComparator$Comparison;
areturn
end local 13 end local 12 end local 11 28: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
29: iload 10
iload 7
if_icmplt 16
end local 10 30: iload 8
ifeq 32
31: getstatic jdk.dynalink.linker.ConversionComparator$Comparison.TYPE_1_BETTER:Ljdk/dynalink/linker/ConversionComparator$Comparison;
areturn
32: StackMap locals:
StackMap stack:
iload 9
ifeq 34
33: getstatic jdk.dynalink.linker.ConversionComparator$Comparison.TYPE_2_BETTER:Ljdk/dynalink/linker/ConversionComparator$Comparison;
areturn
34: StackMap locals:
StackMap stack:
getstatic jdk.dynalink.linker.ConversionComparator$Comparison.INDETERMINATE:Ljdk/dynalink/linker/ConversionComparator$Comparison;
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 35 0 t1 Ljava/lang/invoke/MethodType;
0 35 1 t2 Ljava/lang/invoke/MethodType;
0 35 2 varArgs Z
0 35 3 argTypes [Ljava/lang/Class;
0 35 4 ls Ljdk/dynalink/linker/LinkerServices;
1 35 5 pc1 I
2 35 6 pc2 I
12 35 7 maxPc I
13 35 8 t1MoreSpecific Z
14 35 9 t2MoreSpecific Z
15 30 10 i I
17 28 11 c1 Ljava/lang/Class<*>;
18 28 12 c2 Ljava/lang/Class<*>;
20 28 13 cmp Ljdk/dynalink/linker/ConversionComparator$Comparison;
Signature: (Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Z[Ljava/lang/Class<*>;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/linker/ConversionComparator$Comparison;
MethodParameters:
Name Flags
t1 final
t2 final
varArgs final
argTypes final
ls final
private static jdk.dynalink.linker.ConversionComparator$Comparison compare(java.lang.Class<?>, java.lang.Class<?>, java.lang.Class<?>[], int, jdk.dynalink.linker.LinkerServices);
descriptor: (Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;ILjdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/linker/ConversionComparator$Comparison;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
ifnull 4
1: aload 4
aload 2
iload 3
aaload
aload 0
aload 1
invokeinterface jdk.dynalink.linker.LinkerServices.compareConversion:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;)Ljdk/dynalink/linker/ConversionComparator$Comparison;
astore 5
start local 5 2: aload 5
getstatic jdk.dynalink.linker.ConversionComparator$Comparison.INDETERMINATE:Ljdk/dynalink/linker/ConversionComparator$Comparison;
if_acmpeq 4
3: aload 5
areturn
end local 5 4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokestatic jdk.dynalink.linker.support.TypeUtilities.isSubtype:(Ljava/lang/Class;Ljava/lang/Class;)Z
ifeq 6
5: getstatic jdk.dynalink.linker.ConversionComparator$Comparison.TYPE_1_BETTER:Ljdk/dynalink/linker/ConversionComparator$Comparison;
areturn
6: StackMap locals:
StackMap stack:
aload 1
aload 0
invokestatic jdk.dynalink.linker.support.TypeUtilities.isSubtype:(Ljava/lang/Class;Ljava/lang/Class;)Z
ifeq 8
7: getstatic jdk.dynalink.linker.ConversionComparator$Comparison.TYPE_2_BETTER:Ljdk/dynalink/linker/ConversionComparator$Comparison;
areturn
8: StackMap locals:
StackMap stack:
getstatic jdk.dynalink.linker.ConversionComparator$Comparison.INDETERMINATE:Ljdk/dynalink/linker/ConversionComparator$Comparison;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 c1 Ljava/lang/Class<*>;
0 9 1 c2 Ljava/lang/Class<*>;
0 9 2 argTypes [Ljava/lang/Class;
0 9 3 i I
0 9 4 cmp Ljdk/dynalink/linker/LinkerServices;
2 4 5 c Ljdk/dynalink/linker/ConversionComparator$Comparison;
Signature: (Ljava/lang/Class<*>;Ljava/lang/Class<*>;[Ljava/lang/Class<*>;ILjdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/linker/ConversionComparator$Comparison;
MethodParameters:
Name Flags
c1 final
c2 final
argTypes final
i final
cmp final
private static java.lang.Class<?> getParameterClass(java.lang.invoke.MethodType, int, int, boolean);
descriptor: (Ljava/lang/invoke/MethodType;IIZ)Ljava/lang/Class;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 3
ifeq 1
iload 2
iload 1
iconst_1
isub
if_icmplt 1
aload 0
iload 1
iconst_1
isub
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
iload 2
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
StackMap locals:
StackMap stack: java.lang.Class
2: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 t Ljava/lang/invoke/MethodType;
0 3 1 l I
0 3 2 i I
0 3 3 varArgs Z
Signature: (Ljava/lang/invoke/MethodType;IIZ)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
t final
l final
i final
varArgs final
static int[] $SWITCH_TABLE$jdk$dynalink$linker$ConversionComparator$Comparison();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic jdk.dynalink.beans.MaximallySpecific.$SWITCH_TABLE$jdk$dynalink$linker$ConversionComparator$Comparison:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic jdk.dynalink.linker.ConversionComparator$Comparison.values:()[Ljdk/dynalink/linker/ConversionComparator$Comparison;
arraylength
newarray 10
astore 0
2: aload 0
getstatic jdk.dynalink.linker.ConversionComparator$Comparison.INDETERMINATE:Ljdk/dynalink/linker/ConversionComparator$Comparison;
invokevirtual jdk.dynalink.linker.ConversionComparator$Comparison.ordinal:()I
iconst_1
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic jdk.dynalink.linker.ConversionComparator$Comparison.TYPE_1_BETTER:Ljdk/dynalink/linker/ConversionComparator$Comparison;
invokevirtual jdk.dynalink.linker.ConversionComparator$Comparison.ordinal:()I
iconst_2
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic jdk.dynalink.linker.ConversionComparator$Comparison.TYPE_2_BETTER:Ljdk/dynalink/linker/ConversionComparator$Comparison;
invokevirtual jdk.dynalink.linker.ConversionComparator$Comparison.ordinal:()I
iconst_3
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
dup
putstatic jdk.dynalink.beans.MaximallySpecific.$SWITCH_TABLE$jdk$dynalink$linker$ConversionComparator$Comparison:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
}
SourceFile: "MaximallySpecific.java"
NestMembers:
jdk.dynalink.beans.MaximallySpecific$1 jdk.dynalink.beans.MaximallySpecific$2 jdk.dynalink.beans.MaximallySpecific$MethodTypeGetter
InnerClasses:
jdk.dynalink.beans.MaximallySpecific$1
jdk.dynalink.beans.MaximallySpecific$2
private abstract MethodTypeGetter = jdk.dynalink.beans.MaximallySpecific$MethodTypeGetter of jdk.dynalink.beans.MaximallySpecific
public final Comparison = jdk.dynalink.linker.ConversionComparator$Comparison of jdk.dynalink.linker.ConversionComparator