class jdk.dynalink.beans.BeanLinker extends jdk.dynalink.beans.AbstractJavaLinker implements jdk.dynalink.linker.TypeBasedGuardingDynamicLinker
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.dynalink.beans.BeanLinker
super_class: jdk.dynalink.beans.AbstractJavaLinker
{
private static final java.lang.invoke.MethodHandle GET_LIST_ELEMENT;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle GET_MAP_ELEMENT;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle LIST_GUARD;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle MAP_GUARD;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle NULL_GETTER_1;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle NULL_GETTER_2;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.Object INVALID_NAME;
descriptor: Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle RANGE_CHECK_ARRAY;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle RANGE_CHECK_LIST;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle CONTAINS_MAP;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle SET_LIST_ELEMENT;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle PUT_MAP_ELEMENT;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle NO_OP_1;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle NO_OP_2;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle NO_OP_3;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle REMOVE_LIST_ELEMENT;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle REMOVE_MAP_ELEMENT;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle GET_COLLECTION_LENGTH;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle GET_MAP_LENGTH;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle GET_ARRAY_LENGTH;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$jdk$dynalink$beans$BeanLinker$CollectionType;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=9, locals=1, args_size=0
0: getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
ldc Ljava/util/List;
ldc "get"
1: ldc Ljava/lang/Object;
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
2: invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.GET_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
3: getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
ldc Ljava/util/Map;
ldc "get"
4: ldc Ljava/lang/Object;
ldc Ljava/lang/Object;
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
5: invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.GET_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
6: ldc Ljava/util/List;
invokestatic jdk.dynalink.linker.support.Guards.getInstanceOfGuard:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.LIST_GUARD:Ljava/lang/invoke/MethodHandle;
7: ldc Ljava/util/Map;
invokestatic jdk.dynalink.linker.support.Guards.getInstanceOfGuard:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.MAP_GUARD:Ljava/lang/invoke/MethodHandle;
8: ldc Ljava/lang/Object;
aconst_null
invokestatic java.lang.invoke.MethodHandles.constant:(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
astore 0
start local 0 9: aload 0
iconst_1
invokestatic jdk.dynalink.beans.BeanLinker.dropObjectArguments:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.NULL_GETTER_1:Ljava/lang/invoke/MethodHandle;
10: aload 0
iconst_2
invokestatic jdk.dynalink.beans.BeanLinker.dropObjectArguments:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.NULL_GETTER_2:Ljava/lang/invoke/MethodHandle;
end local 0 11: new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putstatic jdk.dynalink.beans.BeanLinker.INVALID_NAME:Ljava/lang/Object;
12: ldc Ljava/lang/Object;
invokestatic jdk.dynalink.beans.BeanLinker.findRangeCheck:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.RANGE_CHECK_ARRAY:Ljava/lang/invoke/MethodHandle;
13: ldc Ljava/util/List;
invokestatic jdk.dynalink.beans.BeanLinker.findRangeCheck:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.RANGE_CHECK_LIST:Ljava/lang/invoke/MethodHandle;
14: getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
ldc Ljava/util/Map;
ldc "containsKey"
15: getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
ldc Ljava/lang/Object;
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
16: invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.CONTAINS_MAP:Ljava/lang/invoke/MethodHandle;
17: getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
ldc Ljava/util/List;
ldc "set"
18: ldc Ljava/lang/Object;
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
19: invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.SET_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
20: getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
ldc Ljava/util/Map;
ldc "put"
21: ldc Ljava/lang/Object;
ldc Ljava/lang/Object;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
22: invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.PUT_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
23: invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
ldc "noOp"
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
iconst_0
anewarray java.lang.Class
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;
astore 0
start local 0 24: aload 0
iconst_1
invokestatic jdk.dynalink.beans.BeanLinker.dropObjectArguments:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.NO_OP_1:Ljava/lang/invoke/MethodHandle;
25: aload 0
iconst_2
invokestatic jdk.dynalink.beans.BeanLinker.dropObjectArguments:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.NO_OP_2:Ljava/lang/invoke/MethodHandle;
26: aload 0
iconst_3
invokestatic jdk.dynalink.beans.BeanLinker.dropObjectArguments:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.NO_OP_3:Ljava/lang/invoke/MethodHandle;
end local 0 27: getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
ldc Ljava/util/List;
ldc "remove"
28: ldc Ljava/lang/Object;
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
29: invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.REMOVE_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
30: getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
ldc Ljava/util/Map;
ldc "remove"
31: ldc Ljava/lang/Object;
ldc Ljava/lang/Object;
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
32: invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.REMOVE_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
33: getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
ldc Ljava/util/Collection;
ldc "size"
34: getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
35: invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.GET_COLLECTION_LENGTH:Ljava/lang/invoke/MethodHandle;
36: getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
ldc Ljava/util/Map;
ldc "size"
37: getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
38: invokevirtual jdk.dynalink.linker.support.Lookup.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.GET_MAP_LENGTH:Ljava/lang/invoke/MethodHandle;
39: getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
ldc Ljava/lang/reflect/Array;
ldc "getLength"
40: getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
ldc Ljava/lang/Object;
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
41: invokevirtual jdk.dynalink.linker.support.Lookup.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.BeanLinker.GET_ARRAY_LENGTH:Ljava/lang/invoke/MethodHandle;
42: return
LocalVariableTable:
Start End Slot Name Signature
9 11 0 constantNull Ljava/lang/invoke/MethodHandle;
24 27 0 noOp Ljava/lang/invoke/MethodHandle;
void <init>(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 1
invokestatic jdk.dynalink.linker.support.Guards.getClassGuard:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
aload 1
invokestatic jdk.dynalink.linker.support.Guards.getInstanceOfGuard:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
invokespecial jdk.dynalink.beans.AbstractJavaLinker.<init>:(Ljava/lang/Class;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V
1: aload 1
invokevirtual java.lang.Class.isArray:()Z
ifeq 4
2: aload 0
ldc "length"
getstatic jdk.dynalink.beans.BeanLinker.GET_ARRAY_LENGTH:Ljava/lang/invoke/MethodHandle;
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.IS_ARRAY:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
invokevirtual jdk.dynalink.beans.BeanLinker.setPropertyGetter:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
3: goto 9
StackMap locals: jdk.dynalink.beans.BeanLinker java.lang.Class
StackMap stack:
4: ldc Ljava/util/Collection;
aload 1
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 7
5: aload 0
ldc "length"
getstatic jdk.dynalink.beans.BeanLinker.GET_COLLECTION_LENGTH:Ljava/lang/invoke/MethodHandle;
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
invokevirtual jdk.dynalink.beans.BeanLinker.setPropertyGetter:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
6: goto 9
StackMap locals:
StackMap stack:
7: ldc Ljava/util/Map;
aload 1
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 9
8: aload 0
ldc "length"
getstatic jdk.dynalink.beans.BeanLinker.GET_MAP_LENGTH:Ljava/lang/invoke/MethodHandle;
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
invokevirtual jdk.dynalink.beans.BeanLinker.setPropertyGetter:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
9: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljdk/dynalink/beans/BeanLinker;
0 10 1 clazz Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)V
MethodParameters:
Name Flags
clazz final
public boolean canLinkType(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/dynalink/beans/BeanLinker;
0 2 1 type Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
type final
jdk.dynalink.beans.FacetIntrospector createFacetIntrospector();
descriptor: ()Ljdk/dynalink/beans/FacetIntrospector;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: new jdk.dynalink.beans.BeanIntrospector
dup
aload 0
getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
invokespecial jdk.dynalink.beans.BeanIntrospector.<init>:(Ljava/lang/Class;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/BeanLinker;
protected jdk.dynalink.beans.GuardedInvocationComponent getGuardedInvocationComponent(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.namespaces:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.namespaces:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast jdk.dynalink.Namespace
astore 2
start local 2 3: aload 2
getstatic jdk.dynalink.StandardNamespace.ELEMENT:Ljdk/dynalink/StandardNamespace;
if_acmpne 11
4: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.baseOperation:Ljdk/dynalink/Operation;
astore 3
start local 3 5: aload 3
getstatic jdk.dynalink.StandardOperation.GET:Ljdk/dynalink/StandardOperation;
if_acmpne 7
6: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.popNamespace:()Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
invokevirtual jdk.dynalink.beans.BeanLinker.getElementGetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
7: StackMap locals: jdk.dynalink.Namespace jdk.dynalink.Operation
StackMap stack:
aload 3
getstatic jdk.dynalink.StandardOperation.SET:Ljdk/dynalink/StandardOperation;
if_acmpne 9
8: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.popNamespace:()Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
invokevirtual jdk.dynalink.beans.BeanLinker.getElementSetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
9: StackMap locals:
StackMap stack:
aload 3
getstatic jdk.dynalink.StandardOperation.REMOVE:Ljdk/dynalink/StandardOperation;
if_acmpne 11
10: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.popNamespace:()Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
invokevirtual jdk.dynalink.beans.BeanLinker.getElementRemover:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
end local 3 11: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial jdk.dynalink.beans.AbstractJavaLinker.getGuardedInvocationComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljdk/dynalink/beans/BeanLinker;
0 12 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
3 12 2 ns Ljdk/dynalink/Namespace;
5 11 3 op Ljdk/dynalink/Operation;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
jdk.dynalink.beans.SingleDynamicMethod getConstructorMethod(java.lang.String);
descriptor: (Ljava/lang/String;)Ljdk/dynalink/beans/SingleDynamicMethod;
flags: (0x0000)
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/BeanLinker;
0 1 1 signature Ljava/lang/String;
MethodParameters:
Name Flags
signature final
private static java.lang.invoke.MethodHandle dropObjectArguments(java.lang.invoke.MethodHandle, int);
descriptor: (Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
iload 1
ldc Ljava/lang/Object;
invokestatic java.util.Collections.nCopies:(ILjava/lang/Object;)Ljava/util/List;
invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;ILjava/util/List;)Ljava/lang/invoke/MethodHandle;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 m Ljava/lang/invoke/MethodHandle;
0 1 1 n I
MethodParameters:
Name Flags
m final
n final
private jdk.dynalink.beans.GuardedInvocationComponent getElementGetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=10, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.getDescriptor:()Ljdk/dynalink/CallSiteDescriptor;
astore 2
start local 2 1: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.name:Ljava/lang/Object;
astore 3
start local 3 2: aload 3
ifnull 3
iconst_1
goto 4
StackMap locals: jdk.dynalink.CallSiteDescriptor java.lang.Object
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: istore 4
start local 4 5: aload 2
iload 4
ifeq 6
iconst_1
goto 7
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int
StackMap stack: jdk.dynalink.CallSiteDescriptor
6: iconst_2
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int
StackMap stack: jdk.dynalink.CallSiteDescriptor int
7: invokestatic jdk.dynalink.beans.BeanLinker.assertParameterCount:(Ljdk/dynalink/CallSiteDescriptor;I)V
8: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkerServices:Ljdk/dynalink/linker/LinkerServices;
astore 5
start local 5 9: aload 2
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
astore 6
start local 6 10: aload 0
aload 1
invokevirtual jdk.dynalink.beans.BeanLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
astore 7
start local 7 11: aload 0
12: aload 6
aload 5
invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
java/lang/invoke/MethodHandles.arrayElementGetter(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; (6)
(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
getstatic jdk.dynalink.beans.BeanLinker.GET_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
getstatic jdk.dynalink.beans.BeanLinker.GET_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
13: invokevirtual jdk.dynalink.beans.BeanLinker.guardedInvocationComponentAndCollectionType:(Ljava/lang/invoke/MethodType;Ljdk/dynalink/linker/LinkerServices;Ljava/util/function/Function;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;
astore 8
start local 8 14: aload 8
ifnonnull 16
15: aload 7
areturn
16: StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
StackMap stack:
aload 3
aload 8
getfield jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.collectionType:Ljdk/dynalink/beans/BeanLinker$CollectionType;
getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
if_acmpne 17
iconst_1
goto 18
StackMap locals:
StackMap stack: java.lang.Object
17: iconst_0
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
StackMap stack: java.lang.Object int
18: aload 5
invokestatic jdk.dynalink.beans.BeanLinker.getTypedName:(Ljava/lang/Object;ZLjdk/dynalink/linker/LinkerServices;)Ljava/lang/Object;
astore 9
start local 9 19: aload 9
getstatic jdk.dynalink.beans.BeanLinker.INVALID_NAME:Ljava/lang/Object;
if_acmpne 21
20: aload 7
areturn
21: StackMap locals: java.lang.Object
StackMap stack:
aload 8
aload 6
aload 7
22: new jdk.dynalink.beans.BeanLinker$Binder
dup
aload 5
aload 6
aload 9
invokespecial jdk.dynalink.beans.BeanLinker$Binder.<init>:(Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;Ljava/lang/Object;)V
iload 4
ifeq 23
getstatic jdk.dynalink.beans.BeanLinker.NULL_GETTER_1:Ljava/lang/invoke/MethodHandle;
goto 24
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType java.lang.Object
StackMap stack: jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$Binder
23: getstatic jdk.dynalink.beans.BeanLinker.NULL_GETTER_2:Ljava/lang/invoke/MethodHandle;
24: StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType java.lang.Object
StackMap stack: jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$Binder java.lang.invoke.MethodHandle
invokestatic jdk.dynalink.beans.BeanLinker.guardComponentWithRangeCheck:(Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;Ljava/lang/invoke/MethodType;Ljdk/dynalink/beans/GuardedInvocationComponent;Ljdk/dynalink/beans/BeanLinker$Binder;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/GuardedInvocationComponent;
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 25 0 this Ljdk/dynalink/beans/BeanLinker;
0 25 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
1 25 2 callSiteDescriptor Ljdk/dynalink/CallSiteDescriptor;
2 25 3 name Ljava/lang/Object;
5 25 4 isFixedKey Z
9 25 5 linkerServices Ljdk/dynalink/linker/LinkerServices;
10 25 6 callSiteType Ljava/lang/invoke/MethodType;
11 25 7 nextComponent Ljdk/dynalink/beans/GuardedInvocationComponent;
14 25 8 gicact Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;
19 25 9 typedName Ljava/lang/Object;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType guardedInvocationComponentAndCollectionType(java.lang.invoke.MethodType, jdk.dynalink.linker.LinkerServices, java.util.function.Function<java.lang.Class<?>, java.lang.invoke.MethodHandle>, java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
descriptor: (Ljava/lang/invoke/MethodType;Ljdk/dynalink/linker/LinkerServices;Ljava/util/function/Function;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 1
iconst_0
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
astore 6
start local 6 1: aload 6
invokevirtual java.lang.Class.isArray:()Z
ifeq 6
aload 3
ifnull 6
2: new jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
dup
3: aload 3
aload 6
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.invoke.MethodHandle
aload 2
invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
4: getstatic jdk.dynalink.beans.BeanLinker$CollectionType.ARRAY:Ljdk/dynalink/beans/BeanLinker$CollectionType;
5: invokespecial jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.<init>:(Ljdk/dynalink/beans/GuardedInvocationComponent;Ljdk/dynalink/beans/BeanLinker$CollectionType;)V
areturn
6: StackMap locals: java.lang.Class
StackMap stack:
ldc Ljava/util/List;
aload 6
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 11
7: new jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
dup
8: aload 4
aload 2
invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
9: getstatic jdk.dynalink.beans.BeanLinker$CollectionType.LIST:Ljdk/dynalink/beans/BeanLinker$CollectionType;
10: invokespecial jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.<init>:(Ljdk/dynalink/beans/GuardedInvocationComponent;Ljdk/dynalink/beans/BeanLinker$CollectionType;)V
areturn
11: StackMap locals:
StackMap stack:
ldc Ljava/util/Map;
aload 6
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 16
12: new jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
dup
13: aload 5
aload 2
invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
14: getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
15: invokespecial jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.<init>:(Ljdk/dynalink/beans/GuardedInvocationComponent;Ljdk/dynalink/beans/BeanLinker$CollectionType;)V
areturn
16: StackMap locals:
StackMap stack:
aload 0
getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
invokevirtual java.lang.Class.isArray:()Z
ifeq 21
aload 3
ifnull 21
17: new jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
dup
18: aload 0
aload 2
aload 3
aload 0
getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.invoke.MethodHandle
invokeinterface jdk.dynalink.linker.LinkerServices.filterInternalObjects:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
aload 1
invokevirtual jdk.dynalink.beans.BeanLinker.getClassGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
19: getstatic jdk.dynalink.beans.BeanLinker$CollectionType.ARRAY:Ljdk/dynalink/beans/BeanLinker$CollectionType;
20: invokespecial jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.<init>:(Ljdk/dynalink/beans/GuardedInvocationComponent;Ljdk/dynalink/beans/BeanLinker$CollectionType;)V
areturn
21: StackMap locals:
StackMap stack:
ldc Ljava/util/List;
aload 0
getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 28
22: new jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
dup
23: aload 4
getstatic jdk.dynalink.beans.BeanLinker.LIST_GUARD:Ljava/lang/invoke/MethodHandle;
aload 1
invokestatic jdk.dynalink.linker.support.Guards.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
24: ldc Ljava/util/List;
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
aload 2
25: invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
26: getstatic jdk.dynalink.beans.BeanLinker$CollectionType.LIST:Ljdk/dynalink/beans/BeanLinker$CollectionType;
27: invokespecial jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.<init>:(Ljdk/dynalink/beans/GuardedInvocationComponent;Ljdk/dynalink/beans/BeanLinker$CollectionType;)V
areturn
28: StackMap locals:
StackMap stack:
ldc Ljava/util/Map;
aload 0
getfield jdk.dynalink.beans.BeanLinker.clazz:Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 35
29: new jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
dup
30: aload 5
getstatic jdk.dynalink.beans.BeanLinker.MAP_GUARD:Ljava/lang/invoke/MethodHandle;
aload 1
invokestatic jdk.dynalink.linker.support.Guards.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
31: ldc Ljava/util/Map;
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
aload 2
32: invokestatic jdk.dynalink.beans.BeanLinker.createInternalFilteredGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
33: getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
34: invokespecial jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.<init>:(Ljdk/dynalink/beans/GuardedInvocationComponent;Ljdk/dynalink/beans/BeanLinker$CollectionType;)V
areturn
35: StackMap locals:
StackMap stack:
aconst_null
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 36 0 this Ljdk/dynalink/beans/BeanLinker;
0 36 1 callSiteType Ljava/lang/invoke/MethodType;
0 36 2 linkerServices Ljdk/dynalink/linker/LinkerServices;
0 36 3 arrayMethod Ljava/util/function/Function<Ljava/lang/Class<*>;Ljava/lang/invoke/MethodHandle;>;
0 36 4 listMethod Ljava/lang/invoke/MethodHandle;
0 36 5 mapMethod Ljava/lang/invoke/MethodHandle;
1 36 6 declaredType Ljava/lang/Class<*>;
Signature: (Ljava/lang/invoke/MethodType;Ljdk/dynalink/linker/LinkerServices;Ljava/util/function/Function<Ljava/lang/Class<*>;Ljava/lang/invoke/MethodHandle;>;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;
MethodParameters:
Name Flags
callSiteType final
linkerServices final
arrayMethod final
listMethod final
mapMethod final
private static java.lang.Object getTypedName(java.lang.Object, boolean, jdk.dynalink.linker.LinkerServices);
descriptor: (Ljava/lang/Object;ZLjdk/dynalink/linker/LinkerServices;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 1
ifne 5
aload 0
ifnull 5
1: aload 0
aload 2
invokestatic jdk.dynalink.beans.BeanLinker.convertKeyToInteger:(Ljava/lang/Object;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/Integer;
astore 3
start local 3 2: aload 3
ifnull 3
aload 3
invokevirtual java.lang.Integer.intValue:()I
ifge 4
3: StackMap locals: java.lang.Integer
StackMap stack:
getstatic jdk.dynalink.beans.BeanLinker.INVALID_NAME:Ljava/lang/Object;
areturn
4: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 5: StackMap locals:
StackMap stack:
aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 name Ljava/lang/Object;
0 6 1 isMap Z
0 6 2 linkerServices Ljdk/dynalink/linker/LinkerServices;
2 5 3 integer Ljava/lang/Integer;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
name final
isMap final
linkerServices final
private static jdk.dynalink.beans.GuardedInvocationComponent guardComponentWithRangeCheck(jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType, java.lang.invoke.MethodType, jdk.dynalink.beans.GuardedInvocationComponent, jdk.dynalink.beans.BeanLinker$Binder, java.lang.invoke.MethodHandle);
descriptor: (Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;Ljava/lang/invoke/MethodType;Ljdk/dynalink/beans/GuardedInvocationComponent;Ljdk/dynalink/beans/BeanLinker$Binder;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: invokestatic jdk.dynalink.beans.BeanLinker.$SWITCH_TABLE$jdk$dynalink$beans$BeanLinker$CollectionType:()[I
aload 0
getfield jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.collectionType:Ljdk/dynalink/beans/BeanLinker$CollectionType;
invokevirtual jdk.dynalink.beans.BeanLinker$CollectionType.ordinal:()I
iaload
tableswitch { // 1 - 3
1: 5
2: 1
3: 3
default: 7
}
1: StackMap locals:
StackMap stack:
aload 3
getstatic jdk.dynalink.beans.BeanLinker.RANGE_CHECK_LIST:Ljava/lang/invoke/MethodHandle;
invokevirtual jdk.dynalink.beans.BeanLinker$Binder.convertArgToNumber:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 5
start local 5 2: goto 8
end local 5 3: StackMap locals:
StackMap stack:
aload 3
getfield jdk.dynalink.beans.BeanLinker$Binder.linkerServices:Ljdk/dynalink/linker/LinkerServices;
getstatic jdk.dynalink.beans.BeanLinker.CONTAINS_MAP:Ljava/lang/invoke/MethodHandle;
invokeinterface jdk.dynalink.linker.LinkerServices.filterInternalObjects:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 5
start local 5 4: goto 8
end local 5 5: StackMap locals:
StackMap stack:
aload 3
getstatic jdk.dynalink.beans.BeanLinker.RANGE_CHECK_ARRAY:Ljava/lang/invoke/MethodHandle;
invokevirtual jdk.dynalink.beans.BeanLinker$Binder.convertArgToNumber:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 5
start local 5 6: goto 8
end local 5 7: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
start local 5 8: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
aload 2
ifnull 11
9: aload 2
astore 6
start local 6 10: goto 12
end local 6 11: StackMap locals:
StackMap stack:
aload 4
aload 1
aload 3
getfield jdk.dynalink.beans.BeanLinker$Binder.linkerServices:Ljdk/dynalink/linker/LinkerServices;
invokestatic jdk.dynalink.beans.BeanLinker.createGuardedInvocationComponentAsType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
astore 6
start local 6 12: StackMap locals: jdk.dynalink.beans.GuardedInvocationComponent
StackMap stack:
aload 0
getfield jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.gic:Ljdk/dynalink/beans/GuardedInvocationComponent;
astore 7
start local 7 13: aload 7
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getGuardedInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
astore 8
start local 8 14: aload 3
aload 8
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
invokevirtual jdk.dynalink.beans.BeanLinker$Binder.bind:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
15: aload 6
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getGuardedInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
16: invokestatic jdk.dynalink.beans.BeanLinker.matchReturnTypes:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/AbstractJavaLinker$MethodPair;
astore 9
start local 9 17: aload 6
aload 9
aload 3
aload 5
invokevirtual jdk.dynalink.beans.BeanLinker$Binder.bindTest:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$MethodPair.guardWithTest:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
aload 8
invokevirtual jdk.dynalink.linker.GuardedInvocation.getGuard:()Ljava/lang/invoke/MethodHandle;
18: aload 7
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getValidatorClass:()Ljava/lang/Class;
aload 7
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getValidationType:()Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
19: invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.compose:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
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 20 0 gicact Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;
0 20 1 callSiteType Ljava/lang/invoke/MethodType;
0 20 2 nextComponent Ljdk/dynalink/beans/GuardedInvocationComponent;
0 20 3 binder Ljdk/dynalink/beans/BeanLinker$Binder;
0 20 4 noOp Ljava/lang/invoke/MethodHandle;
2 3 5 checkGuard Ljava/lang/invoke/MethodHandle;
4 5 5 checkGuard Ljava/lang/invoke/MethodHandle;
6 7 5 checkGuard Ljava/lang/invoke/MethodHandle;
8 20 5 checkGuard Ljava/lang/invoke/MethodHandle;
10 11 6 finalNextComponent Ljdk/dynalink/beans/GuardedInvocationComponent;
12 20 6 finalNextComponent Ljdk/dynalink/beans/GuardedInvocationComponent;
13 20 7 gic Ljdk/dynalink/beans/GuardedInvocationComponent;
14 20 8 gi Ljdk/dynalink/linker/GuardedInvocation;
17 20 9 matchedInvocations Ljdk/dynalink/beans/AbstractJavaLinker$MethodPair;
MethodParameters:
Name Flags
gicact final
callSiteType final
nextComponent final
binder final
noOp final
private static jdk.dynalink.beans.GuardedInvocationComponent createInternalFilteredGuardedInvocationComponent(java.lang.invoke.MethodHandle, jdk.dynalink.linker.LinkerServices);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new jdk.dynalink.beans.GuardedInvocationComponent
dup
aload 1
aload 0
invokeinterface jdk.dynalink.linker.LinkerServices.filterInternalObjects:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
invokespecial jdk.dynalink.beans.GuardedInvocationComponent.<init>:(Ljava/lang/invoke/MethodHandle;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 invocation Ljava/lang/invoke/MethodHandle;
0 1 1 linkerServices Ljdk/dynalink/linker/LinkerServices;
MethodParameters:
Name Flags
invocation final
linkerServices final
private static jdk.dynalink.beans.GuardedInvocationComponent createGuardedInvocationComponentAsType(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;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new jdk.dynalink.beans.GuardedInvocationComponent
dup
aload 2
aload 0
aload 1
invokeinterface jdk.dynalink.linker.LinkerServices.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
invokespecial jdk.dynalink.beans.GuardedInvocationComponent.<init>:(Ljava/lang/invoke/MethodHandle;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 invocation Ljava/lang/invoke/MethodHandle;
0 1 1 fromType Ljava/lang/invoke/MethodType;
0 1 2 linkerServices Ljdk/dynalink/linker/LinkerServices;
MethodParameters:
Name Flags
invocation final
fromType final
linkerServices final
private static jdk.dynalink.beans.GuardedInvocationComponent createInternalFilteredGuardedInvocationComponent(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle, java.lang.Class<?>, jdk.dynalink.beans.GuardedInvocationComponent$ValidationType, jdk.dynalink.linker.LinkerServices);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new jdk.dynalink.beans.GuardedInvocationComponent
dup
aload 4
aload 0
invokeinterface jdk.dynalink.linker.LinkerServices.filterInternalObjects:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
aload 1
1: aload 2
aload 3
2: invokespecial jdk.dynalink.beans.GuardedInvocationComponent.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
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 invocation Ljava/lang/invoke/MethodHandle;
0 3 1 guard Ljava/lang/invoke/MethodHandle;
0 3 2 validatorClass Ljava/lang/Class<*>;
0 3 3 validationType Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
0 3 4 linkerServices Ljdk/dynalink/linker/LinkerServices;
Signature: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/Class<*>;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
MethodParameters:
Name Flags
invocation final
guard final
validatorClass final
validationType final
linkerServices final
private static java.lang.Integer convertKeyToInteger(java.lang.Object, jdk.dynalink.linker.LinkerServices);
descriptor: (Ljava/lang/Object;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/Integer;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
instanceof java.lang.Integer
ifeq 2
1: aload 0
checkcast java.lang.Integer
areturn
2: StackMap locals:
StackMap stack:
aload 0
instanceof java.lang.Number
ifeq 5
3: aload 0
checkcast java.lang.Number
astore 2
start local 2 4: goto 23
end local 2 5: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
astore 3
start local 3 6: aload 1
aload 3
ldc Ljava/lang/Number;
invokeinterface jdk.dynalink.linker.LinkerServices.canConvert:(Ljava/lang/Class;Ljava/lang/Class;)Z
ifeq 17
7: aload 1
aload 3
ldc Ljava/lang/Number;
invokeinterface jdk.dynalink.linker.LinkerServices.getTypeConverter:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
aload 0
invokevirtual java.lang.invoke.MethodHandle.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
astore 4
start local 4 8: goto 13
end local 4 StackMap locals: java.lang.Object jdk.dynalink.linker.LinkerServices top java.lang.Class
StackMap stack: java.lang.Throwable
9: astore 5
start local 5 10: aload 5
athrow
end local 5 11: StackMap locals:
StackMap stack: java.lang.Throwable
astore 5
start local 5 12: new java.lang.RuntimeException
dup
aload 5
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 5 start local 4 13: StackMap locals: java.lang.Object
StackMap stack:
aload 4
instanceof java.lang.Number
ifne 15
14: aconst_null
areturn
15: StackMap locals:
StackMap stack:
aload 4
checkcast java.lang.Number
astore 2
end local 4 start local 2 16: goto 23
end local 2 StackMap locals:
StackMap stack:
17: aload 0
instanceof java.lang.String
ifeq 22
18: aload 0
checkcast java.lang.String
invokestatic java.lang.Integer.valueOf:(Ljava/lang/String;)Ljava/lang/Integer;
19: areturn
20: StackMap locals:
StackMap stack: java.lang.NumberFormatException
pop
21: aconst_null
areturn
22: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 3 start local 2 23: StackMap locals: java.lang.Object jdk.dynalink.linker.LinkerServices java.lang.Number
StackMap stack:
aload 2
instanceof java.lang.Integer
ifeq 25
24: aload 2
checkcast java.lang.Integer
areturn
25: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Number.intValue:()I
istore 3
start local 3 26: aload 2
invokevirtual java.lang.Number.doubleValue:()D
dstore 4
start local 4 27: iload 3
i2d
dload 4
dcmpl
ifeq 29
dload 4
invokestatic java.lang.Double.isInfinite:(D)Z
ifne 29
28: aconst_null
areturn
29: StackMap locals: int double
StackMap stack:
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 fixedKey Ljava/lang/Object;
0 30 1 linkerServices Ljdk/dynalink/linker/LinkerServices;
4 5 2 n Ljava/lang/Number;
16 17 2 n Ljava/lang/Number;
23 30 2 n Ljava/lang/Number;
6 23 3 keyClass Ljava/lang/Class<*>;
8 9 4 val Ljava/lang/Object;
13 16 4 val Ljava/lang/Object;
10 11 5 e Ljava/lang/Throwable;
12 13 5 t Ljava/lang/Throwable;
26 30 3 intIndex I
27 30 4 doubleValue D
Exception table:
from to target type
7 8 9 Class java.lang.Exception
7 8 9 Class java.lang.Error
7 8 11 Class java.lang.Throwable
18 19 20 Class java.lang.NumberFormatException
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
fixedKey final
linkerServices final
private static java.lang.invoke.MethodHandle findRangeCheck(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
ldc "rangeCheck"
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
iconst_2
anewarray java.lang.Class
dup
iconst_0
aload 0
aastore
dup
iconst_1
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;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 collectionType Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
collectionType final
private static boolean rangeCheck(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
instanceof java.lang.Number
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
checkcast java.lang.Number
astore 2
start local 2 3: aload 2
invokevirtual java.lang.Number.intValue:()I
istore 3
start local 3 4: iload 3
i2d
aload 2
invokevirtual java.lang.Number.doubleValue:()D
dcmpl
ifeq 6
5: iconst_0
ireturn
6: StackMap locals: java.lang.Number int
StackMap stack:
iload 3
iflt 7
iload 3
aload 0
invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
if_icmpge 7
iconst_1
ireturn
StackMap locals:
StackMap stack:
7: iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 array Ljava/lang/Object;
0 8 1 index Ljava/lang/Object;
3 8 2 n Ljava/lang/Number;
4 8 3 intIndex I
MethodParameters:
Name Flags
array final
index final
private static boolean rangeCheck(java.util.List<?>, );
descriptor: (Ljava/util/List;Ljava/lang/Object;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
instanceof java.lang.Number
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
checkcast java.lang.Number
astore 2
start local 2 3: aload 2
invokevirtual java.lang.Number.intValue:()I
istore 3
start local 3 4: iload 3
i2d
aload 2
invokevirtual java.lang.Number.doubleValue:()D
dcmpl
ifeq 6
5: iconst_0
ireturn
6: StackMap locals: java.lang.Number int
StackMap stack:
iload 3
iflt 7
iload 3
aload 0
invokeinterface java.util.List.size:()I
if_icmpge 7
iconst_1
ireturn
StackMap locals:
StackMap stack:
7: iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 list Ljava/util/List<*>;
0 8 1 index Ljava/lang/Object;
3 8 2 n Ljava/lang/Number;
4 8 3 intIndex I
Signature: (Ljava/util/List<*>;Ljava/lang/Object;)Z
MethodParameters:
Name Flags
list final
index final
private static void noOp();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=0, locals=0, args_size=0
0: return
LocalVariableTable:
Start End Slot Name Signature
private jdk.dynalink.beans.GuardedInvocationComponent getElementSetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=15, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.getDescriptor:()Ljdk/dynalink/CallSiteDescriptor;
astore 2
start local 2 1: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.name:Ljava/lang/Object;
astore 3
start local 3 2: aload 3
ifnull 3
iconst_1
goto 4
StackMap locals: jdk.dynalink.CallSiteDescriptor java.lang.Object
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: istore 4
start local 4 5: aload 2
iload 4
ifeq 6
iconst_2
goto 7
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int
StackMap stack: jdk.dynalink.CallSiteDescriptor
6: iconst_3
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int
StackMap stack: jdk.dynalink.CallSiteDescriptor int
7: invokestatic jdk.dynalink.beans.BeanLinker.assertParameterCount:(Ljdk/dynalink/CallSiteDescriptor;I)V
8: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkerServices:Ljdk/dynalink/linker/LinkerServices;
astore 5
start local 5 9: aload 2
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
astore 6
start local 6 10: aload 0
11: aload 6
aload 5
invokedynamic apply()Ljava/util/function/Function;
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;)Ljava/lang/Object;
java/lang/invoke/MethodHandles.arrayElementSetter(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; (6)
(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
getstatic jdk.dynalink.beans.BeanLinker.SET_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
getstatic jdk.dynalink.beans.BeanLinker.PUT_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
12: invokevirtual jdk.dynalink.beans.BeanLinker.guardedInvocationComponentAndCollectionType:(Ljava/lang/invoke/MethodType;Ljdk/dynalink/linker/LinkerServices;Ljava/util/function/Function;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;
astore 7
start local 7 13: aload 7
ifnonnull 15
14: aload 0
aload 1
invokevirtual jdk.dynalink.beans.BeanLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
15: StackMap locals: jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
StackMap stack:
aload 7
getfield jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.collectionType:Ljdk/dynalink/beans/BeanLinker$CollectionType;
getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
if_acmpne 16
iconst_1
goto 17
StackMap locals:
StackMap stack:
16: iconst_0
StackMap locals:
StackMap stack: int
17: istore 8
start local 8 18: iload 8
ifeq 19
aconst_null
goto 20
StackMap locals: int
StackMap stack:
19: aload 0
aload 1
invokevirtual jdk.dynalink.beans.BeanLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
StackMap locals:
StackMap stack: jdk.dynalink.beans.GuardedInvocationComponent
20: astore 9
start local 9 21: aload 3
iload 8
aload 5
invokestatic jdk.dynalink.beans.BeanLinker.getTypedName:(Ljava/lang/Object;ZLjdk/dynalink/linker/LinkerServices;)Ljava/lang/Object;
astore 10
start local 10 22: aload 10
getstatic jdk.dynalink.beans.BeanLinker.INVALID_NAME:Ljava/lang/Object;
if_acmpne 24
23: aload 9
areturn
24: StackMap locals: jdk.dynalink.beans.GuardedInvocationComponent java.lang.Object
StackMap stack:
aload 7
getfield jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.gic:Ljdk/dynalink/beans/GuardedInvocationComponent;
astore 11
start local 11 25: aload 11
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getGuardedInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
astore 12
start local 12 26: new jdk.dynalink.beans.BeanLinker$Binder
dup
aload 5
aload 6
aload 10
invokespecial jdk.dynalink.beans.BeanLinker$Binder.<init>:(Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;Ljava/lang/Object;)V
astore 13
start local 13 27: aload 12
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
astore 14
start local 14 28: iload 8
ifeq 30
29: aload 11
aload 13
aload 14
invokevirtual jdk.dynalink.beans.BeanLinker$Binder.bind:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.replaceInvocation:(Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
30: StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType int jdk.dynalink.beans.GuardedInvocationComponent java.lang.Object jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.linker.GuardedInvocation jdk.dynalink.beans.BeanLinker$Binder java.lang.invoke.MethodHandle
StackMap stack:
aload 7
aload 6
aload 9
aload 13
iload 4
ifeq 31
getstatic jdk.dynalink.beans.BeanLinker.NO_OP_2:Ljava/lang/invoke/MethodHandle;
goto 32
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType int jdk.dynalink.beans.GuardedInvocationComponent java.lang.Object jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.linker.GuardedInvocation jdk.dynalink.beans.BeanLinker$Binder java.lang.invoke.MethodHandle
StackMap stack: jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$Binder
31: getstatic jdk.dynalink.beans.BeanLinker.NO_OP_3:Ljava/lang/invoke/MethodHandle;
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType int jdk.dynalink.beans.GuardedInvocationComponent java.lang.Object jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.linker.GuardedInvocation jdk.dynalink.beans.BeanLinker$Binder java.lang.invoke.MethodHandle
StackMap stack: jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$Binder java.lang.invoke.MethodHandle
32: invokestatic jdk.dynalink.beans.BeanLinker.guardComponentWithRangeCheck:(Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;Ljava/lang/invoke/MethodType;Ljdk/dynalink/beans/GuardedInvocationComponent;Ljdk/dynalink/beans/BeanLinker$Binder;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
end local 14 end local 13 end local 12 end local 11 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 33 0 this Ljdk/dynalink/beans/BeanLinker;
0 33 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
1 33 2 callSiteDescriptor Ljdk/dynalink/CallSiteDescriptor;
2 33 3 name Ljava/lang/Object;
5 33 4 isFixedKey Z
9 33 5 linkerServices Ljdk/dynalink/linker/LinkerServices;
10 33 6 callSiteType Ljava/lang/invoke/MethodType;
13 33 7 gicact Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;
18 33 8 isMap Z
21 33 9 nextComponent Ljdk/dynalink/beans/GuardedInvocationComponent;
22 33 10 typedName Ljava/lang/Object;
25 33 11 gic Ljdk/dynalink/beans/GuardedInvocationComponent;
26 33 12 gi Ljdk/dynalink/linker/GuardedInvocation;
27 33 13 binder Ljdk/dynalink/beans/BeanLinker$Binder;
28 33 14 invocation Ljava/lang/invoke/MethodHandle;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private jdk.dynalink.beans.GuardedInvocationComponent getElementRemover(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=10, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.getDescriptor:()Ljdk/dynalink/CallSiteDescriptor;
astore 2
start local 2 1: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.name:Ljava/lang/Object;
astore 3
start local 3 2: aload 3
ifnull 3
iconst_1
goto 4
StackMap locals: jdk.dynalink.CallSiteDescriptor java.lang.Object
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: istore 4
start local 4 5: aload 2
iload 4
ifeq 6
iconst_1
goto 7
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int
StackMap stack: jdk.dynalink.CallSiteDescriptor
6: iconst_2
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int
StackMap stack: jdk.dynalink.CallSiteDescriptor int
7: invokestatic jdk.dynalink.beans.BeanLinker.assertParameterCount:(Ljdk/dynalink/CallSiteDescriptor;I)V
8: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkerServices:Ljdk/dynalink/linker/LinkerServices;
astore 5
start local 5 9: aload 2
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
astore 6
start local 6 10: aload 0
aload 1
invokevirtual jdk.dynalink.beans.BeanLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
astore 7
start local 7 11: aload 0
12: aload 6
aload 5
aconst_null
getstatic jdk.dynalink.beans.BeanLinker.REMOVE_LIST_ELEMENT:Ljava/lang/invoke/MethodHandle;
getstatic jdk.dynalink.beans.BeanLinker.REMOVE_MAP_ELEMENT:Ljava/lang/invoke/MethodHandle;
13: invokevirtual jdk.dynalink.beans.BeanLinker.guardedInvocationComponentAndCollectionType:(Ljava/lang/invoke/MethodType;Ljdk/dynalink/linker/LinkerServices;Ljava/util/function/Function;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;
astore 8
start local 8 14: aload 8
ifnonnull 16
15: aload 7
areturn
16: StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
StackMap stack:
aload 3
aload 8
getfield jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType.collectionType:Ljdk/dynalink/beans/BeanLinker$CollectionType;
getstatic jdk.dynalink.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
if_acmpne 17
iconst_1
goto 18
StackMap locals:
StackMap stack: java.lang.Object
17: iconst_0
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
StackMap stack: java.lang.Object int
18: aload 5
invokestatic jdk.dynalink.beans.BeanLinker.getTypedName:(Ljava/lang/Object;ZLjdk/dynalink/linker/LinkerServices;)Ljava/lang/Object;
astore 9
start local 9 19: aload 9
getstatic jdk.dynalink.beans.BeanLinker.INVALID_NAME:Ljava/lang/Object;
if_acmpne 21
20: aload 7
areturn
21: StackMap locals: java.lang.Object
StackMap stack:
aload 8
aload 6
aload 7
22: new jdk.dynalink.beans.BeanLinker$Binder
dup
aload 5
aload 6
aload 9
invokespecial jdk.dynalink.beans.BeanLinker$Binder.<init>:(Ljdk/dynalink/linker/LinkerServices;Ljava/lang/invoke/MethodType;Ljava/lang/Object;)V
iload 4
ifeq 23
getstatic jdk.dynalink.beans.BeanLinker.NO_OP_1:Ljava/lang/invoke/MethodHandle;
goto 24
StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType java.lang.Object
StackMap stack: jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$Binder
23: getstatic jdk.dynalink.beans.BeanLinker.NO_OP_2:Ljava/lang/invoke/MethodHandle;
24: StackMap locals: jdk.dynalink.beans.BeanLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.Object int jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType java.lang.Object
StackMap stack: jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType java.lang.invoke.MethodType jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.beans.BeanLinker$Binder java.lang.invoke.MethodHandle
invokestatic jdk.dynalink.beans.BeanLinker.guardComponentWithRangeCheck:(Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;Ljava/lang/invoke/MethodType;Ljdk/dynalink/beans/GuardedInvocationComponent;Ljdk/dynalink/beans/BeanLinker$Binder;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/GuardedInvocationComponent;
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 25 0 this Ljdk/dynalink/beans/BeanLinker;
0 25 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
1 25 2 callSiteDescriptor Ljdk/dynalink/CallSiteDescriptor;
2 25 3 name Ljava/lang/Object;
5 25 4 isFixedKey Z
9 25 5 linkerServices Ljdk/dynalink/linker/LinkerServices;
10 25 6 callSiteType Ljava/lang/invoke/MethodType;
11 25 7 nextComponent Ljdk/dynalink/beans/GuardedInvocationComponent;
14 25 8 gicact Ljdk/dynalink/beans/BeanLinker$GuardedInvocationComponentAndCollectionType;
19 25 9 typedName Ljava/lang/Object;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private static void assertParameterCount(jdk.dynalink.CallSiteDescriptor, int);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;I)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
iload 1
if_icmpeq 2
1: new java.lang.BootstrapMethodError
dup
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 0
invokevirtual jdk.dynalink.CallSiteDescriptor.getOperation:()Ljdk/dynalink/Operation;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " must have exactly "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " parameters."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.BootstrapMethodError.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 descriptor Ljdk/dynalink/CallSiteDescriptor;
0 3 1 paramCount I
MethodParameters:
Name Flags
descriptor final
paramCount final
static int[] $SWITCH_TABLE$jdk$dynalink$beans$BeanLinker$CollectionType();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic jdk.dynalink.beans.BeanLinker.$SWITCH_TABLE$jdk$dynalink$beans$BeanLinker$CollectionType:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic jdk.dynalink.beans.BeanLinker$CollectionType.values:()[Ljdk/dynalink/beans/BeanLinker$CollectionType;
arraylength
newarray 10
astore 0
2: aload 0
getstatic jdk.dynalink.beans.BeanLinker$CollectionType.ARRAY:Ljdk/dynalink/beans/BeanLinker$CollectionType;
invokevirtual jdk.dynalink.beans.BeanLinker$CollectionType.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.beans.BeanLinker$CollectionType.LIST:Ljdk/dynalink/beans/BeanLinker$CollectionType;
invokevirtual jdk.dynalink.beans.BeanLinker$CollectionType.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.beans.BeanLinker$CollectionType.MAP:Ljdk/dynalink/beans/BeanLinker$CollectionType;
invokevirtual jdk.dynalink.beans.BeanLinker$CollectionType.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.BeanLinker.$SWITCH_TABLE$jdk$dynalink$beans$BeanLinker$CollectionType:[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: "BeanLinker.java"
NestMembers:
jdk.dynalink.beans.BeanLinker$Binder jdk.dynalink.beans.BeanLinker$CollectionType jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
final ComponentLinkRequest = jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest of jdk.dynalink.beans.AbstractJavaLinker
MethodPair = jdk.dynalink.beans.AbstractJavaLinker$MethodPair of jdk.dynalink.beans.AbstractJavaLinker
private Binder = jdk.dynalink.beans.BeanLinker$Binder of jdk.dynalink.beans.BeanLinker
private final CollectionType = jdk.dynalink.beans.BeanLinker$CollectionType of jdk.dynalink.beans.BeanLinker
private GuardedInvocationComponentAndCollectionType = jdk.dynalink.beans.BeanLinker$GuardedInvocationComponentAndCollectionType of jdk.dynalink.beans.BeanLinker
final ValidationType = jdk.dynalink.beans.GuardedInvocationComponent$ValidationType of jdk.dynalink.beans.GuardedInvocationComponent