public interface java.lang.constant.MethodHandleDesc extends java.lang.constant.ConstantDesc
minor version: 0
major version: 59
flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
this_class: java.lang.constant.MethodHandleDesc
super_class: java.lang.Object
{
public static final int[] $SWITCH_TABLE$java$lang$constant$DirectMethodHandleDesc$Kind;
descriptor: [I
flags: (0x1019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
public static java.lang.constant.DirectMethodHandleDesc of(java.lang.constant.DirectMethodHandleDesc$Kind, java.lang.constant.ClassDesc, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/constant/DirectMethodHandleDesc$Kind;Ljava/lang/constant/ClassDesc;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/constant/DirectMethodHandleDesc;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic java.lang.constant.MethodHandleDesc.$SWITCH_TABLE$java$lang$constant$DirectMethodHandleDesc$Kind:()[I
aload 0
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
iaload
tableswitch { // 8 - 11
8: 1
9: 1
10: 1
11: 1
default: 2
}
1: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
invokestatic java.lang.constant.ClassDesc.ofDescriptor:(Ljava/lang/String;)Ljava/lang/constant/ClassDesc;
invokestatic java.lang.constant.MethodHandleDesc.ofField:(Ljava/lang/constant/DirectMethodHandleDesc$Kind;Ljava/lang/constant/ClassDesc;Ljava/lang/String;Ljava/lang/constant/ClassDesc;)Ljava/lang/constant/DirectMethodHandleDesc;
areturn
2: StackMap locals:
StackMap stack:
new java.lang.constant.DirectMethodHandleDescImpl
dup
aload 0
aload 1
aload 2
aload 3
invokestatic java.lang.constant.MethodTypeDesc.ofDescriptor:(Ljava/lang/String;)Ljava/lang/constant/MethodTypeDesc;
invokespecial java.lang.constant.DirectMethodHandleDescImpl.<init>:(Ljava/lang/constant/DirectMethodHandleDesc$Kind;Ljava/lang/constant/ClassDesc;Ljava/lang/String;Ljava/lang/constant/MethodTypeDesc;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 kind Ljava/lang/constant/DirectMethodHandleDesc$Kind;
0 3 1 owner Ljava/lang/constant/ClassDesc;
0 3 2 name Ljava/lang/String;
0 3 3 lookupDescriptor Ljava/lang/String;
MethodParameters:
Name Flags
kind
owner
name
lookupDescriptor
public static java.lang.constant.DirectMethodHandleDesc ofMethod(java.lang.constant.DirectMethodHandleDesc$Kind, java.lang.constant.ClassDesc, java.lang.String, java.lang.constant.MethodTypeDesc);
descriptor: (Ljava/lang/constant/DirectMethodHandleDesc$Kind;Ljava/lang/constant/ClassDesc;Ljava/lang/String;Ljava/lang/constant/MethodTypeDesc;)Ljava/lang/constant/DirectMethodHandleDesc;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic java.lang.constant.MethodHandleDesc.$SWITCH_TABLE$java$lang$constant$DirectMethodHandleDesc$Kind:()[I
aload 0
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
iaload
tableswitch { // 1 - 11
1: 2
2: 2
3: 2
4: 2
5: 2
6: 2
7: 2
8: 1
9: 1
10: 1
11: 1
default: 3
}
1: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
aload 0
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
new java.lang.constant.DirectMethodHandleDescImpl
dup
aload 0
aload 1
aload 2
aload 3
invokespecial java.lang.constant.DirectMethodHandleDescImpl.<init>:(Ljava/lang/constant/DirectMethodHandleDesc$Kind;Ljava/lang/constant/ClassDesc;Ljava/lang/String;Ljava/lang/constant/MethodTypeDesc;)V
areturn
3: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
aload 0
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 kind Ljava/lang/constant/DirectMethodHandleDesc$Kind;
0 4 1 owner Ljava/lang/constant/ClassDesc;
0 4 2 name Ljava/lang/String;
0 4 3 lookupMethodType Ljava/lang/constant/MethodTypeDesc;
MethodParameters:
Name Flags
kind
owner
name
lookupMethodType
public static java.lang.constant.DirectMethodHandleDesc ofField(java.lang.constant.DirectMethodHandleDesc$Kind, java.lang.constant.ClassDesc, java.lang.String, java.lang.constant.ClassDesc);
descriptor: (Ljava/lang/constant/DirectMethodHandleDesc$Kind;Ljava/lang/constant/ClassDesc;Ljava/lang/String;Ljava/lang/constant/ClassDesc;)Ljava/lang/constant/DirectMethodHandleDesc;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic java.lang.constant.MethodHandleDesc.$SWITCH_TABLE$java$lang$constant$DirectMethodHandleDesc$Kind:()[I
aload 0
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
iaload
tableswitch { // 8 - 11
8: 1
9: 3
10: 5
11: 7
default: 9
}
1: StackMap locals:
StackMap stack:
aload 3
iconst_1
anewarray java.lang.constant.ClassDesc
dup
iconst_0
aload 1
aastore
invokestatic java.lang.constant.MethodTypeDesc.of:(Ljava/lang/constant/ClassDesc;[Ljava/lang/constant/ClassDesc;)Ljava/lang/constant/MethodTypeDesc;
astore 4
start local 4 2: goto 10
end local 4 3: StackMap locals:
StackMap stack:
getstatic java.lang.constant.ConstantDescs.CD_void:Ljava/lang/constant/ClassDesc;
iconst_2
anewarray java.lang.constant.ClassDesc
dup
iconst_0
aload 1
aastore
dup
iconst_1
aload 3
aastore
invokestatic java.lang.constant.MethodTypeDesc.of:(Ljava/lang/constant/ClassDesc;[Ljava/lang/constant/ClassDesc;)Ljava/lang/constant/MethodTypeDesc;
astore 4
start local 4 4: goto 10
end local 4 5: StackMap locals:
StackMap stack:
aload 3
iconst_0
anewarray java.lang.constant.ClassDesc
invokestatic java.lang.constant.MethodTypeDesc.of:(Ljava/lang/constant/ClassDesc;[Ljava/lang/constant/ClassDesc;)Ljava/lang/constant/MethodTypeDesc;
astore 4
start local 4 6: goto 10
end local 4 7: StackMap locals:
StackMap stack:
getstatic java.lang.constant.ConstantDescs.CD_void:Ljava/lang/constant/ClassDesc;
iconst_1
anewarray java.lang.constant.ClassDesc
dup
iconst_0
aload 3
aastore
invokestatic java.lang.constant.MethodTypeDesc.of:(Ljava/lang/constant/ClassDesc;[Ljava/lang/constant/ClassDesc;)Ljava/lang/constant/MethodTypeDesc;
astore 4
start local 4 8: goto 10
end local 4 9: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
aload 0
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
start local 4 10: StackMap locals: java.lang.constant.MethodTypeDesc
StackMap stack:
new java.lang.constant.DirectMethodHandleDescImpl
dup
aload 0
aload 1
aload 2
aload 4
invokespecial java.lang.constant.DirectMethodHandleDescImpl.<init>:(Ljava/lang/constant/DirectMethodHandleDesc$Kind;Ljava/lang/constant/ClassDesc;Ljava/lang/String;Ljava/lang/constant/MethodTypeDesc;)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 kind Ljava/lang/constant/DirectMethodHandleDesc$Kind;
0 11 1 owner Ljava/lang/constant/ClassDesc;
0 11 2 fieldName Ljava/lang/String;
0 11 3 fieldType Ljava/lang/constant/ClassDesc;
2 3 4 mtr Ljava/lang/constant/MethodTypeDesc;
4 5 4 mtr Ljava/lang/constant/MethodTypeDesc;
6 7 4 mtr Ljava/lang/constant/MethodTypeDesc;
8 9 4 mtr Ljava/lang/constant/MethodTypeDesc;
10 11 4 mtr Ljava/lang/constant/MethodTypeDesc;
MethodParameters:
Name Flags
kind
owner
fieldName
fieldType
public static java.lang.constant.DirectMethodHandleDesc ofConstructor(java.lang.constant.ClassDesc, java.lang.constant.ClassDesc[]);
descriptor: (Ljava/lang/constant/ClassDesc;[Ljava/lang/constant/ClassDesc;)Ljava/lang/constant/DirectMethodHandleDesc;
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic java.lang.constant.DirectMethodHandleDesc$Kind.CONSTRUCTOR:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
aload 0
ldc "_"
1: getstatic java.lang.constant.ConstantDescs.CD_void:Ljava/lang/constant/ClassDesc;
aload 1
invokestatic java.lang.constant.MethodTypeDesc.of:(Ljava/lang/constant/ClassDesc;[Ljava/lang/constant/ClassDesc;)Ljava/lang/constant/MethodTypeDesc;
2: invokestatic java.lang.constant.MethodHandleDesc.ofMethod:(Ljava/lang/constant/DirectMethodHandleDesc$Kind;Ljava/lang/constant/ClassDesc;Ljava/lang/String;Ljava/lang/constant/MethodTypeDesc;)Ljava/lang/constant/DirectMethodHandleDesc;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 owner Ljava/lang/constant/ClassDesc;
0 3 1 paramTypes [Ljava/lang/constant/ClassDesc;
MethodParameters:
Name Flags
owner
paramTypes
public java.lang.constant.MethodHandleDesc asType(java.lang.constant.MethodTypeDesc);
descriptor: (Ljava/lang/constant/MethodTypeDesc;)Ljava/lang/constant/MethodHandleDesc;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface java.lang.constant.MethodHandleDesc.invocationType:()Ljava/lang/constant/MethodTypeDesc;
aload 1
invokeinterface java.lang.constant.MethodTypeDesc.equals:(Ljava/lang/Object;)Z
ifeq 1
aload 0
goto 2
StackMap locals:
StackMap stack:
1: new java.lang.constant.AsTypeMethodHandleDesc
dup
aload 0
aload 1
invokespecial java.lang.constant.AsTypeMethodHandleDesc.<init>:(Ljava/lang/constant/MethodHandleDesc;Ljava/lang/constant/MethodTypeDesc;)V
StackMap locals:
StackMap stack: java.lang.constant.MethodHandleDesc
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/lang/constant/MethodHandleDesc;
0 3 1 type Ljava/lang/constant/MethodTypeDesc;
MethodParameters:
Name Flags
type
public abstract java.lang.constant.MethodTypeDesc invocationType();
descriptor: ()Ljava/lang/constant/MethodTypeDesc;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
o
public static int[] $SWITCH_TABLE$java$lang$constant$DirectMethodHandleDesc$Kind();
descriptor: ()[I
flags: (0x1009) ACC_PUBLIC, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic java.lang.constant.MethodHandleDesc.$SWITCH_TABLE$java$lang$constant$DirectMethodHandleDesc$Kind:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic java.lang.constant.DirectMethodHandleDesc$Kind.values:()[Ljava/lang/constant/DirectMethodHandleDesc$Kind;
arraylength
newarray 10
astore 0
2: aload 0
getstatic java.lang.constant.DirectMethodHandleDesc$Kind.CONSTRUCTOR:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
bipush 7
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic java.lang.constant.DirectMethodHandleDesc$Kind.GETTER:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
bipush 8
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic java.lang.constant.DirectMethodHandleDesc$Kind.INTERFACE_SPECIAL:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
bipush 6
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic java.lang.constant.DirectMethodHandleDesc$Kind.INTERFACE_STATIC:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
iconst_2
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic java.lang.constant.DirectMethodHandleDesc$Kind.INTERFACE_VIRTUAL:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
iconst_4
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic java.lang.constant.DirectMethodHandleDesc$Kind.SETTER:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
bipush 9
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic java.lang.constant.DirectMethodHandleDesc$Kind.SPECIAL:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
iconst_5
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic java.lang.constant.DirectMethodHandleDesc$Kind.STATIC:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
iconst_1
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic java.lang.constant.DirectMethodHandleDesc$Kind.STATIC_GETTER:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
bipush 10
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic java.lang.constant.DirectMethodHandleDesc$Kind.STATIC_SETTER:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
bipush 11
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic java.lang.constant.DirectMethodHandleDesc$Kind.VIRTUAL:Ljava/lang/constant/DirectMethodHandleDesc$Kind;
invokevirtual java.lang.constant.DirectMethodHandleDesc$Kind.ordinal:()I
iconst_3
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
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
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
32 33 34 Class java.lang.NoSuchFieldError
}
SourceFile: "MethodHandleDesc.java"
InnerClasses:
public final Kind = java.lang.constant.DirectMethodHandleDesc$Kind of java.lang.constant.DirectMethodHandleDesc