abstract class jdk.dynalink.beans.AbstractJavaLinker implements jdk.dynalink.linker.GuardingDynamicLinker
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: jdk.dynalink.beans.AbstractJavaLinker
super_class: java.lang.Object
{
final java.lang.Class<?> clazz;
descriptor: Ljava/lang/Class;
flags: (0x0010) ACC_FINAL
Signature: Ljava/lang/Class<*>;
private final java.lang.invoke.MethodHandle classGuard;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.invoke.MethodHandle assignableGuard;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Map<java.lang.String, jdk.dynalink.beans.AbstractJavaLinker$AnnotatedDynamicMethod> propertyGetters;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/AbstractJavaLinker$AnnotatedDynamicMethod;>;
private final java.util.Map<java.lang.String, jdk.dynalink.beans.DynamicMethod> propertySetters;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;
private final java.util.Map<java.lang.String, jdk.dynalink.beans.DynamicMethod> methods;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;
private static final java.lang.invoke.MethodHandle IS_METHOD_HANDLE_NOT_NULL;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle CONSTANT_NULL_DROP_METHOD_HANDLE;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final jdk.dynalink.linker.support.Lookup privateLookup;
descriptor: Ljdk/dynalink/linker/support/Lookup;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle IS_ANNOTATED_METHOD_NOT_NULL;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle CONSTANT_NULL_DROP_ANNOTATED_METHOD;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle GET_ANNOTATED_METHOD;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle GETTER_INVOKER;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle IS_DYNAMIC_METHOD;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle OBJECT_IDENTITY;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static java.lang.invoke.MethodHandle GET_PROPERTY_GETTER_HANDLE;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private final java.lang.invoke.MethodHandle getPropertyGetterHandle;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final java.lang.invoke.MethodHandle GET_PROPERTY_SETTER_HANDLE;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.lang.invoke.MethodHandle getPropertySetterHandle;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static java.lang.invoke.MethodHandle GET_DYNAMIC_METHOD;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private final java.lang.invoke.MethodHandle getDynamicMethod;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$jdk$dynalink$beans$GuardedInvocationComponent$ValidationType;
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=0, args_size=0
0: ldc Ljdk/dynalink/beans/AbstractJavaLinker;
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.AbstractJavaLinker.$assertionsDisabled:Z
3: invokestatic jdk.dynalink.linker.support.Guards.isNotNull:()Ljava/lang/invoke/MethodHandle;
4: getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
ldc Ljava/lang/invoke/MethodHandle;
5: invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.AbstractJavaLinker.IS_METHOD_HANDLE_NOT_NULL:Ljava/lang/invoke/MethodHandle;
6: ldc Ljava/lang/Object;
aconst_null
invokestatic java.lang.invoke.MethodHandles.constant:(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
iconst_0
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/invoke/MethodHandle;
aastore
7: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.AbstractJavaLinker.CONSTANT_NULL_DROP_METHOD_HANDLE:Ljava/lang/invoke/MethodHandle;
8: new jdk.dynalink.linker.support.Lookup
dup
invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
invokespecial jdk.dynalink.linker.support.Lookup.<init>:(Ljava/lang/invoke/MethodHandles$Lookup;)V
putstatic jdk.dynalink.beans.AbstractJavaLinker.privateLookup:Ljdk/dynalink/linker/support/Lookup;
9: invokestatic jdk.dynalink.linker.support.Guards.isNotNull:()Ljava/lang/invoke/MethodHandle;
10: getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
ldc Ljdk/dynalink/beans/AbstractJavaLinker$AnnotatedDynamicMethod;
11: invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.AbstractJavaLinker.IS_ANNOTATED_METHOD_NOT_NULL:Ljava/lang/invoke/MethodHandle;
12: ldc Ljava/lang/Object;
aconst_null
invokestatic java.lang.invoke.MethodHandles.constant:(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
iconst_0
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljdk/dynalink/beans/AbstractJavaLinker$AnnotatedDynamicMethod;
aastore
13: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.AbstractJavaLinker.CONSTANT_NULL_DROP_ANNOTATED_METHOD:Ljava/lang/invoke/MethodHandle;
14: getstatic jdk.dynalink.beans.AbstractJavaLinker.privateLookup:Ljdk/dynalink/linker/support/Lookup;
ldc Ljdk/dynalink/beans/AbstractJavaLinker$AnnotatedDynamicMethod;
15: ldc "getTarget"
ldc Ljava/lang/invoke/MethodHandle;
ldc Ljdk/dynalink/CallSiteDescriptor;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljdk/dynalink/linker/LinkerServices;
aastore
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;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.AbstractJavaLinker.GET_ANNOTATED_METHOD:Ljava/lang/invoke/MethodHandle;
17: ldc Ljava/lang/Object;
ldc Ljava/lang/Object;
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokestatic java.lang.invoke.MethodHandles.invoker:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.AbstractJavaLinker.GETTER_INVOKER:Ljava/lang/invoke/MethodHandle;
18: ldc Ljdk/dynalink/beans/DynamicMethod;
19: 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;
20: invokestatic jdk.dynalink.linker.support.Guards.isInstance:(Ljava/lang/Class;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.AbstractJavaLinker.IS_DYNAMIC_METHOD:Ljava/lang/invoke/MethodHandle;
21: ldc Ljava/lang/Object;
invokestatic java.lang.invoke.MethodHandles.identity:(Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.AbstractJavaLinker.OBJECT_IDENTITY:Ljava/lang/invoke/MethodHandle;
22: getstatic jdk.dynalink.beans.AbstractJavaLinker.privateLookup:Ljdk/dynalink/linker/support/Lookup;
23: ldc "getPropertyGetterHandle"
ldc Ljava/lang/Object;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
24: invokevirtual jdk.dynalink.linker.support.Lookup.findOwnSpecial:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
25: iconst_1
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
26: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.AbstractJavaLinker.GET_PROPERTY_GETTER_HANDLE:Ljava/lang/invoke/MethodHandle;
27: getstatic jdk.dynalink.beans.AbstractJavaLinker.privateLookup:Ljdk/dynalink/linker/support/Lookup;
ldc "getPropertySetterHandle"
ldc Ljava/lang/invoke/MethodHandle;
iconst_3
anewarray java.lang.Class
dup
iconst_0
ldc Ljdk/dynalink/CallSiteDescriptor;
aastore
dup
iconst_1
28: ldc Ljdk/dynalink/linker/LinkerServices;
aastore
dup
iconst_2
ldc Ljava/lang/Object;
aastore
29: invokevirtual jdk.dynalink.linker.support.Lookup.findOwnSpecial:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
30: iconst_3
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
31: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
32: iconst_5
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
33: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.AbstractJavaLinker.GET_PROPERTY_SETTER_HANDLE:Ljava/lang/invoke/MethodHandle;
34: getstatic jdk.dynalink.beans.AbstractJavaLinker.privateLookup:Ljdk/dynalink/linker/support/Lookup;
35: ldc "getDynamicMethod"
ldc Ljava/lang/Object;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
36: invokevirtual jdk.dynalink.linker.support.Lookup.findOwnSpecial:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
37: iconst_1
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
38: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.dynalink.beans.AbstractJavaLinker.GET_DYNAMIC_METHOD:Ljava/lang/invoke/MethodHandle;
39: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(java.lang.Class<?>, java.lang.invoke.MethodHandle);
descriptor: (Ljava/lang/Class;Ljava/lang/invoke/MethodHandle;)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
aload 2
invokespecial jdk.dynalink.beans.AbstractJavaLinker.<init>:(Ljava/lang/Class;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 2 1 clazz Ljava/lang/Class<*>;
0 2 2 classGuard Ljava/lang/invoke/MethodHandle;
Signature: (Ljava/lang/Class<*>;Ljava/lang/invoke/MethodHandle;)V
MethodParameters:
Name Flags
clazz final
classGuard final
void <init>(java.lang.Class<?>, java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
descriptor: (Ljava/lang/Class;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V
flags: (0x0000)
Code:
stack=7, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield jdk.dynalink.beans.AbstractJavaLinker.propertyGetters:Ljava/util/Map;
2: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield jdk.dynalink.beans.AbstractJavaLinker.propertySetters:Ljava/util/Map;
3: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield jdk.dynalink.beans.AbstractJavaLinker.methods:Ljava/util/Map;
4: aload 0
getstatic jdk.dynalink.beans.AbstractJavaLinker.GET_PROPERTY_GETTER_HANDLE:Ljava/lang/invoke/MethodHandle;
aload 0
invokevirtual java.lang.invoke.MethodHandle.bindTo:(Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
putfield jdk.dynalink.beans.AbstractJavaLinker.getPropertyGetterHandle:Ljava/lang/invoke/MethodHandle;
5: aload 0
getstatic jdk.dynalink.beans.AbstractJavaLinker.GET_PROPERTY_SETTER_HANDLE:Ljava/lang/invoke/MethodHandle;
aload 0
invokevirtual java.lang.invoke.MethodHandle.bindTo:(Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
putfield jdk.dynalink.beans.AbstractJavaLinker.getPropertySetterHandle:Ljava/lang/invoke/MethodHandle;
6: aload 0
getstatic jdk.dynalink.beans.AbstractJavaLinker.GET_DYNAMIC_METHOD:Ljava/lang/invoke/MethodHandle;
aload 0
invokevirtual java.lang.invoke.MethodHandle.bindTo:(Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
putfield jdk.dynalink.beans.AbstractJavaLinker.getDynamicMethod:Ljava/lang/invoke/MethodHandle;
7: aload 0
aload 1
putfield jdk.dynalink.beans.AbstractJavaLinker.clazz:Ljava/lang/Class;
8: aload 0
aload 2
putfield jdk.dynalink.beans.AbstractJavaLinker.classGuard:Ljava/lang/invoke/MethodHandle;
9: aload 0
aload 3
putfield jdk.dynalink.beans.AbstractJavaLinker.assignableGuard:Ljava/lang/invoke/MethodHandle;
10: aload 0
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.createFacetIntrospector:()Ljdk/dynalink/beans/FacetIntrospector;
astore 4
start local 4 11: aload 4
invokevirtual jdk.dynalink.beans.FacetIntrospector.getMethods:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 6
goto 24
StackMap locals: jdk.dynalink.beans.AbstractJavaLinker java.lang.Class java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle jdk.dynalink.beans.FacetIntrospector top java.util.Iterator
StackMap stack:
12: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.reflect.Method
astore 5
start local 5 13: aload 5
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
astore 7
start local 7 14: aload 0
aload 7
aload 5
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.methods:Ljava/util/Map;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.addMember:(Ljava/lang/String;Ljava/lang/reflect/AccessibleObject;Ljava/util/Map;)V
15: aload 7
ldc "get"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 18
aload 7
invokevirtual java.lang.String.length:()I
iconst_3
if_icmple 18
aload 5
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
arraylength
ifne 18
16: aload 0
aload 5
iconst_3
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.setPropertyGetter:(Ljava/lang/reflect/Method;I)V
17: goto 24
StackMap locals: jdk.dynalink.beans.AbstractJavaLinker java.lang.Class java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle jdk.dynalink.beans.FacetIntrospector java.lang.reflect.Method java.util.Iterator java.lang.String
StackMap stack:
18: aload 7
ldc "is"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 22
aload 7
invokevirtual java.lang.String.length:()I
iconst_2
if_icmple 22
aload 5
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
arraylength
ifne 22
19: aload 5
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
if_acmpne 22
20: aload 0
aload 5
iconst_2
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.setPropertyGetter:(Ljava/lang/reflect/Method;I)V
21: goto 24
StackMap locals:
StackMap stack:
22: aload 7
ldc "set"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 24
aload 7
invokevirtual java.lang.String.length:()I
iconst_3
if_icmple 24
aload 5
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
arraylength
iconst_1
if_icmpne 24
23: aload 0
aload 7
iconst_3
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokestatic jdk.dynalink.beans.AbstractJavaLinker.decapitalize:(Ljava/lang/String;)Ljava/lang/String;
aload 5
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertySetters:Ljava/util/Map;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.addMember:(Ljava/lang/String;Ljava/lang/reflect/AccessibleObject;Ljava/util/Map;)V
end local 7 end local 5 24: StackMap locals: jdk.dynalink.beans.AbstractJavaLinker java.lang.Class java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle jdk.dynalink.beans.FacetIntrospector top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 12
25: aload 4
invokevirtual jdk.dynalink.beans.FacetIntrospector.getFields:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 6
goto 34
StackMap locals:
StackMap stack:
26: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.reflect.Field
astore 5
start local 5 27: aload 5
invokevirtual java.lang.reflect.Field.getName:()Ljava/lang/String;
astore 7
start local 7 28: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertyGetters:Ljava/util/Map;
aload 7
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 30
29: aload 0
aload 7
aload 4
aload 5
invokevirtual jdk.dynalink.beans.FacetIntrospector.unreflectGetter:(Ljava/lang/reflect/Field;)Ljava/lang/invoke/MethodHandle;
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.EXACT_CLASS:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.setPropertyGetter:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
30: StackMap locals: jdk.dynalink.beans.AbstractJavaLinker java.lang.Class java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle jdk.dynalink.beans.FacetIntrospector java.lang.reflect.Field java.util.Iterator java.lang.String
StackMap stack:
aload 5
invokevirtual java.lang.reflect.Field.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isFinal:(I)Z
ifne 34
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertySetters:Ljava/util/Map;
aload 7
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 34
31: aload 0
aload 7
new jdk.dynalink.beans.SimpleDynamicMethod
dup
aload 4
aload 5
invokevirtual jdk.dynalink.beans.FacetIntrospector.unreflectSetter:(Ljava/lang/reflect/Field;)Ljava/lang/invoke/MethodHandle;
aload 1
aload 7
invokespecial jdk.dynalink.beans.SimpleDynamicMethod.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljava/lang/String;)V
32: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertySetters:Ljava/util/Map;
33: invokevirtual jdk.dynalink.beans.AbstractJavaLinker.addMember:(Ljava/lang/String;Ljdk/dynalink/beans/SingleDynamicMethod;Ljava/util/Map;)V
end local 7 end local 5 34: StackMap locals: jdk.dynalink.beans.AbstractJavaLinker java.lang.Class java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle jdk.dynalink.beans.FacetIntrospector top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 26
35: aload 4
invokevirtual jdk.dynalink.beans.FacetIntrospector.getInnerClassGetters:()Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 40
StackMap locals:
StackMap stack:
36: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 5
start local 5 37: aload 5
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
astore 7
start local 7 38: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertyGetters:Ljava/util/Map;
aload 7
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 40
39: aload 0
aload 7
aload 5
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.invoke.MethodHandle
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.EXACT_CLASS:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.setPropertyGetter:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
end local 7 end local 5 40: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 36
41: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 42 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 42 1 clazz Ljava/lang/Class<*>;
0 42 2 classGuard Ljava/lang/invoke/MethodHandle;
0 42 3 assignableGuard Ljava/lang/invoke/MethodHandle;
11 42 4 introspector Ljdk/dynalink/beans/FacetIntrospector;
13 24 5 method Ljava/lang/reflect/Method;
14 24 7 name Ljava/lang/String;
27 34 5 field Ljava/lang/reflect/Field;
28 34 7 name Ljava/lang/String;
37 40 5 innerClassSpec Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/invoke/MethodHandle;>;
38 40 7 name Ljava/lang/String;
Signature: (Ljava/lang/Class<*>;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V
MethodParameters:
Name Flags
clazz final
classGuard final
assignableGuard final
private static java.lang.String decapitalize(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: getstatic jdk.dynalink.beans.AbstractJavaLinker.$assertionsDisabled:Z
ifne 1
aload 0
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.String.isEmpty:()Z
ifeq 3
2: aload 0
areturn
3: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual java.lang.String.charAt:(I)C
istore 1
start local 1 4: iload 1
invokestatic java.lang.Character.isLowerCase:(C)Z
ifeq 6
5: aload 0
areturn
6: StackMap locals: int
StackMap stack:
aload 0
invokevirtual java.lang.String.length:()I
iconst_1
if_icmple 8
aload 0
iconst_1
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.isUpperCase:(C)Z
ifeq 8
7: aload 0
areturn
8: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.String.toCharArray:()[C
astore 2
start local 2 9: aload 2
iconst_0
iload 1
invokestatic java.lang.Character.toLowerCase:(C)C
castore
10: new java.lang.String
dup
aload 2
invokespecial java.lang.String.<init>:([C)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 str Ljava/lang/String;
4 11 1 c0 C
9 11 2 c [C
MethodParameters:
Name Flags
str final
abstract jdk.dynalink.beans.FacetIntrospector createFacetIntrospector();
descriptor: ()Ljdk/dynalink/beans/FacetIntrospector;
flags: (0x0400) ACC_ABSTRACT
java.util.Set<java.lang.String> getReadablePropertyNames();
descriptor: ()Ljava/util/Set;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertyGetters:Ljava/util/Map;
invokestatic jdk.dynalink.beans.AbstractJavaLinker.getUnmodifiableKeys:(Ljava/util/Map;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
java.util.Set<java.lang.String> getWritablePropertyNames();
descriptor: ()Ljava/util/Set;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertySetters:Ljava/util/Map;
invokestatic jdk.dynalink.beans.AbstractJavaLinker.getUnmodifiableKeys:(Ljava/util/Map;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
java.util.Set<java.lang.String> getMethodNames();
descriptor: ()Ljava/util/Set;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.methods:Ljava/util/Map;
invokestatic jdk.dynalink.beans.AbstractJavaLinker.getUnmodifiableKeys:(Ljava/util/Map;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
private static java.util.Set<java.lang.String> getUnmodifiableKeys(java.util.Map<java.lang.String, ?>);
descriptor: (Ljava/util/Map;)Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 m Ljava/util/Map<Ljava/lang/String;*>;
Signature: (Ljava/util/Map<Ljava/lang/String;*>;)Ljava/util/Set<Ljava/lang/String;>;
MethodParameters:
Name Flags
m final
private void setPropertyGetter(java.lang.String, jdk.dynalink.beans.SingleDynamicMethod, jdk.dynalink.beans.GuardedInvocationComponent$ValidationType);
descriptor: (Ljava/lang/String;Ljdk/dynalink/beans/SingleDynamicMethod;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertyGetters:Ljava/util/Map;
aload 1
new jdk.dynalink.beans.AbstractJavaLinker$AnnotatedDynamicMethod
dup
aload 2
aload 3
invokespecial jdk.dynalink.beans.AbstractJavaLinker$AnnotatedDynamicMethod.<init>:(Ljdk/dynalink/beans/SingleDynamicMethod;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 2 1 name Ljava/lang/String;
0 2 2 handle Ljdk/dynalink/beans/SingleDynamicMethod;
0 2 3 validationType Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
MethodParameters:
Name Flags
name final
handle final
validationType final
private void setPropertyGetter(java.lang.reflect.Method, int);
descriptor: (Ljava/lang/reflect/Method;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
iload 2
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokestatic jdk.dynalink.beans.AbstractJavaLinker.decapitalize:(Ljava/lang/String;)Ljava/lang/String;
1: aload 1
invokestatic jdk.dynalink.beans.AbstractJavaLinker.getMostGenericGetter:(Ljava/lang/reflect/Method;)Ljava/lang/reflect/Method;
2: invokestatic jdk.dynalink.beans.AbstractJavaLinker.createDynamicMethod:(Ljava/lang/reflect/AccessibleObject;)Ljdk/dynalink/beans/SingleDynamicMethod;
3: getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
4: invokevirtual jdk.dynalink.beans.AbstractJavaLinker.setPropertyGetter:(Ljava/lang/String;Ljdk/dynalink/beans/SingleDynamicMethod;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 6 1 getter Ljava/lang/reflect/Method;
0 6 2 prefixLen I
MethodParameters:
Name Flags
getter final
prefixLen final
void setPropertyGetter(java.lang.String, java.lang.invoke.MethodHandle, jdk.dynalink.beans.GuardedInvocationComponent$ValidationType);
descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
flags: (0x0000)
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
new jdk.dynalink.beans.SimpleDynamicMethod
dup
aload 2
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.clazz:Ljava/lang/Class;
aload 1
invokespecial jdk.dynalink.beans.SimpleDynamicMethod.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljava/lang/String;)V
aload 3
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.setPropertyGetter:(Ljava/lang/String;Ljdk/dynalink/beans/SingleDynamicMethod;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 2 1 name Ljava/lang/String;
0 2 2 handle Ljava/lang/invoke/MethodHandle;
0 2 3 validationType Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
MethodParameters:
Name Flags
name final
handle final
validationType final
private void addMember(java.lang.String, java.lang.reflect.AccessibleObject, java.util.Map<java.lang.String, jdk.dynalink.beans.DynamicMethod>);
descriptor: (Ljava/lang/String;Ljava/lang/reflect/AccessibleObject;Ljava/util/Map;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
invokestatic jdk.dynalink.beans.AbstractJavaLinker.createDynamicMethod:(Ljava/lang/reflect/AccessibleObject;)Ljdk/dynalink/beans/SingleDynamicMethod;
aload 3
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.addMember:(Ljava/lang/String;Ljdk/dynalink/beans/SingleDynamicMethod;Ljava/util/Map;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 2 1 name Ljava/lang/String;
0 2 2 ao Ljava/lang/reflect/AccessibleObject;
0 2 3 methodMap Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;
Signature: (Ljava/lang/String;Ljava/lang/reflect/AccessibleObject;Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;)V
MethodParameters:
Name Flags
name final
ao final
methodMap final
private void addMember(java.lang.String, jdk.dynalink.beans.SingleDynamicMethod, java.util.Map<java.lang.String, jdk.dynalink.beans.DynamicMethod>);
descriptor: (Ljava/lang/String;Ljdk/dynalink/beans/SingleDynamicMethod;Ljava/util/Map;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast jdk.dynalink.beans.DynamicMethod
astore 4
start local 4 1: aload 2
aload 4
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.clazz:Ljava/lang/Class;
aload 1
invokestatic jdk.dynalink.beans.AbstractJavaLinker.mergeMethods:(Ljdk/dynalink/beans/SingleDynamicMethod;Ljdk/dynalink/beans/DynamicMethod;Ljava/lang/Class;Ljava/lang/String;)Ljdk/dynalink/beans/DynamicMethod;
astore 5
start local 5 2: aload 5
aload 4
if_acmpeq 4
3: aload 3
aload 1
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: StackMap locals: jdk.dynalink.beans.DynamicMethod jdk.dynalink.beans.DynamicMethod
StackMap stack:
return
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 5 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 5 1 name Ljava/lang/String;
0 5 2 method Ljdk/dynalink/beans/SingleDynamicMethod;
0 5 3 methodMap Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;
1 5 4 existingMethod Ljdk/dynalink/beans/DynamicMethod;
2 5 5 newMethod Ljdk/dynalink/beans/DynamicMethod;
Signature: (Ljava/lang/String;Ljdk/dynalink/beans/SingleDynamicMethod;Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;)V
MethodParameters:
Name Flags
name final
method final
methodMap final
static jdk.dynalink.beans.DynamicMethod createDynamicMethod(java.lang.Iterable<? extends java.lang.reflect.AccessibleObject>, java.lang.Class<?>, java.lang.String);
descriptor: (Ljava/lang/Iterable;Ljava/lang/Class;Ljava/lang/String;)Ljdk/dynalink/beans/DynamicMethod;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: aload 0
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 5
goto 4
StackMap locals: java.lang.Iterable java.lang.Class java.lang.String jdk.dynalink.beans.DynamicMethod top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.reflect.AccessibleObject
astore 4
start local 4 3: aload 4
invokestatic jdk.dynalink.beans.AbstractJavaLinker.createDynamicMethod:(Ljava/lang/reflect/AccessibleObject;)Ljdk/dynalink/beans/SingleDynamicMethod;
aload 3
aload 1
aload 2
invokestatic jdk.dynalink.beans.AbstractJavaLinker.mergeMethods:(Ljdk/dynalink/beans/SingleDynamicMethod;Ljdk/dynalink/beans/DynamicMethod;Ljava/lang/Class;Ljava/lang/String;)Ljdk/dynalink/beans/DynamicMethod;
astore 3
end local 4 4: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 members Ljava/lang/Iterable<+Ljava/lang/reflect/AccessibleObject;>;
0 6 1 clazz Ljava/lang/Class<*>;
0 6 2 name Ljava/lang/String;
1 6 3 dynMethod Ljdk/dynalink/beans/DynamicMethod;
3 4 4 method Ljava/lang/reflect/AccessibleObject;
Signature: (Ljava/lang/Iterable<+Ljava/lang/reflect/AccessibleObject;>;Ljava/lang/Class<*>;Ljava/lang/String;)Ljdk/dynalink/beans/DynamicMethod;
MethodParameters:
Name Flags
members final
clazz final
name final
private static jdk.dynalink.beans.SingleDynamicMethod createDynamicMethod(java.lang.reflect.AccessibleObject);
descriptor: (Ljava/lang/reflect/AccessibleObject;)Ljdk/dynalink/beans/SingleDynamicMethod;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=3, args_size=1
start local 0 0: aload 0
ldc Ljdk/internal/reflect/CallerSensitive;
invokevirtual java.lang.reflect.AccessibleObject.isAnnotationPresent:(Ljava/lang/Class;)Z
ifeq 2
1: new jdk.dynalink.beans.CallerSensitiveDynamicMethod
dup
aload 0
invokespecial jdk.dynalink.beans.CallerSensitiveDynamicMethod.<init>:(Ljava/lang/reflect/AccessibleObject;)V
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokestatic jdk.dynalink.beans.AbstractJavaLinker.unreflectSafely:(Ljava/lang/reflect/AccessibleObject;)Ljava/lang/invoke/MethodHandle;
astore 1
start local 1 3: goto 6
end local 1 StackMap locals:
StackMap stack: java.lang.IllegalAccessError
4: pop
5: new jdk.dynalink.beans.CallerSensitiveDynamicMethod
dup
aload 0
invokespecial jdk.dynalink.beans.CallerSensitiveDynamicMethod.<init>:(Ljava/lang/reflect/AccessibleObject;)V
areturn
start local 1 6: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
aload 0
checkcast java.lang.reflect.Member
astore 2
start local 2 7: new jdk.dynalink.beans.SimpleDynamicMethod
dup
aload 1
aload 2
invokeinterface java.lang.reflect.Member.getDeclaringClass:()Ljava/lang/Class;
aload 2
invokeinterface java.lang.reflect.Member.getName:()Ljava/lang/String;
aload 0
instanceof java.lang.reflect.Constructor
invokespecial jdk.dynalink.beans.SimpleDynamicMethod.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;Ljava/lang/String;Z)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 m Ljava/lang/reflect/AccessibleObject;
3 4 1 mh Ljava/lang/invoke/MethodHandle;
6 8 1 mh Ljava/lang/invoke/MethodHandle;
7 8 2 member Ljava/lang/reflect/Member;
Exception table:
from to target type
2 3 4 Class java.lang.IllegalAccessError
MethodParameters:
Name Flags
m final
private static java.lang.invoke.MethodHandle unreflectSafely(java.lang.reflect.AccessibleObject);
descriptor: (Ljava/lang/reflect/AccessibleObject;)Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
instanceof java.lang.reflect.Method
ifeq 6
1: aload 0
checkcast java.lang.reflect.Method
astore 1
start local 1 2: getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
aload 1
invokevirtual jdk.dynalink.linker.support.Lookup.unreflect:(Ljava/lang/reflect/Method;)Ljava/lang/invoke/MethodHandle;
astore 2
start local 2 3: aload 1
invokevirtual java.lang.reflect.Method.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
ifeq 5
4: aload 2
invokestatic jdk.dynalink.beans.StaticClassIntrospector.editStaticMethodHandle:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
areturn
5: StackMap locals: java.lang.reflect.Method java.lang.invoke.MethodHandle
StackMap stack:
aload 2
areturn
end local 2 end local 1 6: StackMap locals:
StackMap stack:
getstatic jdk.dynalink.linker.support.Lookup.PUBLIC:Ljdk/dynalink/linker/support/Lookup;
aload 0
checkcast java.lang.reflect.Constructor
invokevirtual jdk.dynalink.linker.support.Lookup.unreflectConstructor:(Ljava/lang/reflect/Constructor;)Ljava/lang/invoke/MethodHandle;
invokestatic jdk.dynalink.beans.StaticClassIntrospector.editConstructorMethodHandle:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 m Ljava/lang/reflect/AccessibleObject;
2 6 1 reflMethod Ljava/lang/reflect/Method;
3 6 2 handle Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
m final
private static jdk.dynalink.beans.DynamicMethod mergeMethods(jdk.dynalink.beans.SingleDynamicMethod, jdk.dynalink.beans.DynamicMethod, java.lang.Class<?>, java.lang.String);
descriptor: (Ljdk/dynalink/beans/SingleDynamicMethod;Ljdk/dynalink/beans/DynamicMethod;Ljava/lang/Class;Ljava/lang/String;)Ljdk/dynalink/beans/DynamicMethod;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
aload 1
aload 0
invokevirtual jdk.dynalink.beans.DynamicMethod.contains:(Ljdk/dynalink/beans/SingleDynamicMethod;)Z
ifeq 4
3: aload 1
areturn
4: StackMap locals:
StackMap stack:
aload 1
instanceof jdk.dynalink.beans.SingleDynamicMethod
ifeq 9
5: new jdk.dynalink.beans.OverloadedDynamicMethod
dup
aload 2
aload 3
invokespecial jdk.dynalink.beans.OverloadedDynamicMethod.<init>:(Ljava/lang/Class;Ljava/lang/String;)V
astore 4
start local 4 6: aload 4
aload 1
checkcast jdk.dynalink.beans.SingleDynamicMethod
invokevirtual jdk.dynalink.beans.OverloadedDynamicMethod.addMethod:(Ljdk/dynalink/beans/SingleDynamicMethod;)V
7: aload 4
aload 0
invokevirtual jdk.dynalink.beans.OverloadedDynamicMethod.addMethod:(Ljdk/dynalink/beans/SingleDynamicMethod;)V
8: aload 4
areturn
end local 4 9: StackMap locals:
StackMap stack:
aload 1
instanceof jdk.dynalink.beans.OverloadedDynamicMethod
ifeq 12
10: aload 1
checkcast jdk.dynalink.beans.OverloadedDynamicMethod
aload 0
invokevirtual jdk.dynalink.beans.OverloadedDynamicMethod.addMethod:(Ljdk/dynalink/beans/SingleDynamicMethod;)V
11: aload 1
areturn
12: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 method Ljdk/dynalink/beans/SingleDynamicMethod;
0 13 1 existing Ljdk/dynalink/beans/DynamicMethod;
0 13 2 clazz Ljava/lang/Class<*>;
0 13 3 name Ljava/lang/String;
6 9 4 odm Ljdk/dynalink/beans/OverloadedDynamicMethod;
Signature: (Ljdk/dynalink/beans/SingleDynamicMethod;Ljdk/dynalink/beans/DynamicMethod;Ljava/lang/Class<*>;Ljava/lang/String;)Ljdk/dynalink/beans/DynamicMethod;
MethodParameters:
Name Flags
method final
existing final
clazz final
name final
public jdk.dynalink.linker.GuardedInvocation getGuardedInvocation(jdk.dynalink.linker.LinkRequest, jdk.dynalink.linker.LinkerServices);
descriptor: (Ljdk/dynalink/linker/LinkRequest;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/linker/GuardedInvocation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface jdk.dynalink.linker.LinkRequest.getCallSiteDescriptor:()Ljdk/dynalink/CallSiteDescriptor;
pop
1: aload 2
instanceof jdk.dynalink.beans.LinkerServicesWithMissingMemberHandlerFactory
ifeq 6
2: aload 2
checkcast jdk.dynalink.beans.LinkerServicesWithMissingMemberHandlerFactory
astore 5
start local 5 3: aload 5
getfield jdk.dynalink.beans.LinkerServicesWithMissingMemberHandlerFactory.missingMemberHandlerFactory:Ljdk/dynalink/beans/MissingMemberHandlerFactory;
astore 3
start local 3 4: aload 5
getfield jdk.dynalink.beans.LinkerServicesWithMissingMemberHandlerFactory.linkerServices:Ljdk/dynalink/linker/LinkerServices;
astore 4
end local 5 start local 4 5: goto 8
end local 4 end local 3 6: StackMap locals:
StackMap stack:
aconst_null
astore 3
start local 3 7: aload 2
astore 4
start local 4 8: StackMap locals: jdk.dynalink.beans.MissingMemberHandlerFactory jdk.dynalink.linker.LinkerServices
StackMap stack:
aload 0
9: new jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest
dup
aload 1
aload 4
10: aload 3
11: invokespecial jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.<init>:(Ljdk/dynalink/linker/LinkRequest;Ljdk/dynalink/linker/LinkerServices;Ljdk/dynalink/beans/MissingMemberHandlerFactory;)V
12: invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getGuardedInvocationComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
astore 5
start local 5 13: aload 5
ifnull 14
aload 5
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getGuardedInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
goto 15
StackMap locals: jdk.dynalink.beans.GuardedInvocationComponent
StackMap stack:
14: aconst_null
StackMap locals:
StackMap stack: jdk.dynalink.linker.GuardedInvocation
15: 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 16 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 16 1 request Ljdk/dynalink/linker/LinkRequest;
0 16 2 linkerServices Ljdk/dynalink/linker/LinkerServices;
4 6 3 missingMemberHandlerFactory Ljdk/dynalink/beans/MissingMemberHandlerFactory;
7 16 3 missingMemberHandlerFactory Ljdk/dynalink/beans/MissingMemberHandlerFactory;
5 6 4 directLinkerServices Ljdk/dynalink/linker/LinkerServices;
8 16 4 directLinkerServices Ljdk/dynalink/linker/LinkerServices;
3 5 5 lswmmhf Ljdk/dynalink/beans/LinkerServicesWithMissingMemberHandlerFactory;
13 16 5 gic Ljdk/dynalink/beans/GuardedInvocationComponent;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
request final
linkerServices final
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
ifne 10
1: 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 2: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.baseOperation:Ljdk/dynalink/Operation;
astore 3
start local 3 3: aload 3
getstatic jdk.dynalink.StandardOperation.GET:Ljdk/dynalink/StandardOperation;
if_acmpne 8
4: aload 2
getstatic jdk.dynalink.StandardNamespace.PROPERTY:Ljdk/dynalink/StandardNamespace;
if_acmpne 6
5: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.popNamespace:()Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getPropertyGetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
6: StackMap locals: jdk.dynalink.Namespace jdk.dynalink.Operation
StackMap stack:
aload 2
getstatic jdk.dynalink.StandardNamespace.METHOD:Ljdk/dynalink/StandardNamespace;
if_acmpne 10
7: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.popNamespace:()Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getMethodGetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
8: StackMap locals:
StackMap stack:
aload 3
getstatic jdk.dynalink.StandardOperation.SET:Ljdk/dynalink/StandardOperation;
if_acmpne 10
aload 2
getstatic jdk.dynalink.StandardNamespace.PROPERTY:Ljdk/dynalink/StandardNamespace;
if_acmpne 10
9: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.popNamespace:()Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getPropertySetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
end local 3 end local 2 10: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 11 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
2 10 2 ns Ljdk/dynalink/Namespace;
3 10 3 op Ljdk/dynalink/Operation;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
jdk.dynalink.beans.GuardedInvocationComponent getNextComponent(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0000)
Code:
stack=4, locals=3, 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 4
1: aload 0
aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.missingMemberHandlerFactory:Ljdk/dynalink/beans/MissingMemberHandlerFactory;
2: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkRequest:Ljdk/dynalink/linker/LinkRequest;
aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkerServices:Ljdk/dynalink/linker/LinkerServices;
3: invokevirtual jdk.dynalink.beans.AbstractJavaLinker.createNoSuchMemberHandler:(Ljdk/dynalink/beans/MissingMemberHandlerFactory;Ljdk/dynalink/linker/LinkRequest;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getGuardedInvocationComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
astore 2
start local 2 5: aload 2
ifnull 7
6: aload 2
areturn
7: StackMap locals: jdk.dynalink.beans.GuardedInvocationComponent
StackMap stack:
aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.popNamespace:()Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getNextComponent:(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 8 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 8 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
5 8 2 gic Ljdk/dynalink/beans/GuardedInvocationComponent;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private jdk.dynalink.beans.GuardedInvocationComponent createNoSuchMemberHandler(jdk.dynalink.beans.MissingMemberHandlerFactory, jdk.dynalink.linker.LinkRequest, jdk.dynalink.linker.LinkerServices);
descriptor: (Ljdk/dynalink/beans/MissingMemberHandlerFactory;Ljdk/dynalink/linker/LinkRequest;Ljdk/dynalink/linker/LinkerServices;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 3
invokeinterface jdk.dynalink.beans.MissingMemberHandlerFactory.createMissingMemberHandler:(Ljdk/dynalink/linker/LinkRequest;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/invoke/MethodHandle;
astore 4
start local 4 3: aload 4
ifnonnull 5
4: aconst_null
areturn
5: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
aload 2
invokeinterface jdk.dynalink.linker.LinkRequest.getCallSiteDescriptor:()Ljdk/dynalink/CallSiteDescriptor;
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
astore 5
start local 5 6: getstatic jdk.dynalink.beans.AbstractJavaLinker.$assertionsDisabled:Z
ifne 7
aload 4
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
aload 5
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
aload 5
invokevirtual java.lang.invoke.MethodType.equals:(Ljava/lang/Object;)Z
ifne 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals: java.lang.invoke.MethodType
StackMap stack:
aload 0
aload 4
aload 5
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
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 8 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 8 1 missingMemberHandlerFactory Ljdk/dynalink/beans/MissingMemberHandlerFactory;
0 8 2 linkRequest Ljdk/dynalink/linker/LinkRequest;
0 8 3 linkerServices Ljdk/dynalink/linker/LinkerServices;
3 8 4 handler Ljava/lang/invoke/MethodHandle;
6 8 5 type Ljava/lang/invoke/MethodType;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
missingMemberHandlerFactory final
linkRequest final
linkerServices final
static final <T> java.util.List<T> pop(java.util.List<T>);
descriptor: (Ljava/util/List;)Ljava/util/List;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
aload 0
invokeinterface java.util.List.size:()I
invokeinterface java.util.List.subList:(II)Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 l Ljava/util/List<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/util/List<TT;>;)Ljava/util/List<TT;>;
MethodParameters:
Name Flags
l final
java.lang.invoke.MethodHandle getClassGuard(jdk.dynalink.CallSiteDescriptor);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;)Ljava/lang/invoke/MethodHandle;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuard:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 1 1 desc Ljdk/dynalink/CallSiteDescriptor;
MethodParameters:
Name Flags
desc final
java.lang.invoke.MethodHandle getClassGuard(java.lang.invoke.MethodType);
descriptor: (Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.classGuard: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;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 1 1 type Ljava/lang/invoke/MethodType;
MethodParameters:
Name Flags
type final
jdk.dynalink.beans.GuardedInvocationComponent getClassGuardedInvocationComponent(java.lang.invoke.MethodHandle, java.lang.invoke.MethodType);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0000)
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new jdk.dynalink.beans.GuardedInvocationComponent
dup
aload 1
aload 0
aload 2
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuard:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.clazz:Ljava/lang/Class;
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.EXACT_CLASS:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
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 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 1 1 invocation Ljava/lang/invoke/MethodHandle;
0 1 2 type Ljava/lang/invoke/MethodType;
MethodParameters:
Name Flags
invocation final
type final
abstract jdk.dynalink.beans.SingleDynamicMethod getConstructorMethod(java.lang.String);
descriptor: (Ljava/lang/String;)Ljdk/dynalink/beans/SingleDynamicMethod;
flags: (0x0400) ACC_ABSTRACT
MethodParameters:
Name Flags
signature final
private java.lang.invoke.MethodHandle getAssignableGuard(java.lang.invoke.MethodType);
descriptor: (Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.assignableGuard: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;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 1 1 type Ljava/lang/invoke/MethodType;
MethodParameters:
Name Flags
type final
private jdk.dynalink.linker.GuardedInvocation createGuardedDynamicMethodInvocation(jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.LinkerServices, java.lang.String, java.util.Map<java.lang.String, jdk.dynalink.beans.DynamicMethod>);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/String;Ljava/util/Map;)Ljdk/dynalink/linker/GuardedInvocation;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getDynamicMethodInvocation:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/String;Ljava/util/Map;)Ljava/lang/invoke/MethodHandle;
astore 5
start local 5 1: aload 5
ifnonnull 2
aconst_null
goto 3
StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
2: new jdk.dynalink.linker.GuardedInvocation
dup
aload 5
aload 0
aload 1
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuard:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
invokespecial jdk.dynalink.linker.GuardedInvocation.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V
StackMap locals:
StackMap stack: jdk.dynalink.linker.GuardedInvocation
3: 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 4 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 4 1 callSiteDescriptor Ljdk/dynalink/CallSiteDescriptor;
0 4 2 linkerServices Ljdk/dynalink/linker/LinkerServices;
0 4 3 methodName Ljava/lang/String;
0 4 4 methodMap Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;
1 4 5 inv Ljava/lang/invoke/MethodHandle;
Signature: (Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;)Ljdk/dynalink/linker/GuardedInvocation;
MethodParameters:
Name Flags
callSiteDescriptor final
linkerServices final
methodName final
methodMap final
private java.lang.invoke.MethodHandle getDynamicMethodInvocation(jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.LinkerServices, java.lang.String, java.util.Map<java.lang.String, jdk.dynalink.beans.DynamicMethod>);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/String;Ljava/util/Map;)Ljava/lang/invoke/MethodHandle;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 3
aload 4
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getDynamicMethod:(Ljava/lang/String;Ljava/util/Map;)Ljdk/dynalink/beans/DynamicMethod;
astore 5
start local 5 1: aload 5
ifnull 2
aload 5
aload 1
aload 2
invokevirtual jdk.dynalink.beans.DynamicMethod.getInvocation:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;)Ljava/lang/invoke/MethodHandle;
goto 3
StackMap locals: jdk.dynalink.beans.DynamicMethod
StackMap stack:
2: aconst_null
StackMap locals:
StackMap stack: java.lang.invoke.MethodHandle
3: 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 4 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 4 1 callSiteDescriptor Ljdk/dynalink/CallSiteDescriptor;
0 4 2 linkerServices Ljdk/dynalink/linker/LinkerServices;
0 4 3 methodName Ljava/lang/String;
0 4 4 methodMap Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;
1 4 5 dynaMethod Ljdk/dynalink/beans/DynamicMethod;
Signature: (Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;)Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
callSiteDescriptor final
linkerServices final
methodName final
methodMap final
private jdk.dynalink.beans.DynamicMethod getDynamicMethod(java.lang.String, java.util.Map<java.lang.String, jdk.dynalink.beans.DynamicMethod>);
descriptor: (Ljava/lang/String;Ljava/util/Map;)Ljdk/dynalink/beans/DynamicMethod;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast jdk.dynalink.beans.DynamicMethod
astore 3
start local 3 1: aload 3
ifnull 2
aload 3
goto 3
StackMap locals: jdk.dynalink.beans.DynamicMethod
StackMap stack:
2: aload 0
aload 1
aload 2
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getExplicitSignatureDynamicMethod:(Ljava/lang/String;Ljava/util/Map;)Ljdk/dynalink/beans/SingleDynamicMethod;
StackMap locals:
StackMap stack: jdk.dynalink.beans.DynamicMethod
3: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 4 1 methodName Ljava/lang/String;
0 4 2 methodMap Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;
1 4 3 dynaMethod Ljdk/dynalink/beans/DynamicMethod;
Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;)Ljdk/dynalink/beans/DynamicMethod;
MethodParameters:
Name Flags
methodName final
methodMap final
private jdk.dynalink.beans.SingleDynamicMethod getExplicitSignatureDynamicMethod(java.lang.String, java.util.Map<java.lang.String, jdk.dynalink.beans.DynamicMethod>);
descriptor: (Ljava/lang/String;Ljava/util/Map;)Ljdk/dynalink/beans/SingleDynamicMethod;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
istore 3
start local 3 1: aload 1
iload 3
invokevirtual java.lang.String.charAt:(I)C
bipush 41
if_icmpeq 3
2: aconst_null
areturn
3: StackMap locals: int
StackMap stack:
aload 1
bipush 40
invokevirtual java.lang.String.indexOf:(I)I
istore 4
start local 4 4: iload 4
iconst_m1
if_icmpne 6
5: aconst_null
areturn
6: StackMap locals: int
StackMap stack:
aload 1
iconst_0
iload 4
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 5
start local 5 7: aload 1
iload 4
iconst_1
iadd
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 6
start local 6 8: aload 2
aload 5
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast jdk.dynalink.beans.DynamicMethod
astore 7
start local 7 9: aload 7
ifnonnull 13
10: aload 5
invokevirtual java.lang.String.isEmpty:()Z
ifeq 12
11: aload 0
aload 6
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getConstructorMethod:(Ljava/lang/String;)Ljdk/dynalink/beans/SingleDynamicMethod;
areturn
12: StackMap locals: java.lang.String java.lang.String jdk.dynalink.beans.DynamicMethod
StackMap stack:
aconst_null
areturn
13: StackMap locals:
StackMap stack:
aload 7
aload 6
invokevirtual jdk.dynalink.beans.DynamicMethod.getMethodForExactParamTypes:(Ljava/lang/String;)Ljdk/dynalink/beans/SingleDynamicMethod;
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 14 1 fullName Ljava/lang/String;
0 14 2 methodsMap Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;
1 14 3 lastChar I
4 14 4 openBrace I
7 14 5 name Ljava/lang/String;
8 14 6 signature Ljava/lang/String;
9 14 7 simpleNamedMethod Ljdk/dynalink/beans/DynamicMethod;
Signature: (Ljava/lang/String;Ljava/util/Map<Ljava/lang/String;Ljdk/dynalink/beans/DynamicMethod;>;)Ljdk/dynalink/beans/SingleDynamicMethod;
MethodParameters:
Name Flags
fullName final
methodsMap final
private jdk.dynalink.beans.GuardedInvocationComponent getPropertySetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.name:Ljava/lang/Object;
ifnonnull 2
1: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getUnnamedPropertySetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getNamedPropertySetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 3 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private jdk.dynalink.beans.GuardedInvocationComponent getUnnamedPropertySetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=14, 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 2
iconst_3
invokestatic jdk.dynalink.beans.AbstractJavaLinker.assertParameterCount:(Ljdk/dynalink/CallSiteDescriptor;I)V
2: aload 2
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
astore 3
start local 3 3: aload 3
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
if_acmpne 4
aload 3
goto 5
StackMap locals: jdk.dynalink.CallSiteDescriptor java.lang.invoke.MethodType
StackMap stack:
4: aload 3
ldc Ljava/lang/Object;
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
StackMap locals:
StackMap stack: java.lang.invoke.MethodType
5: astore 4
start local 4 6: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkerServices:Ljdk/dynalink/linker/LinkerServices;
astore 5
start local 5 7: aload 4
iconst_1
iconst_2
invokevirtual java.lang.invoke.MethodType.dropParameterTypes:(II)Ljava/lang/invoke/MethodType;
astore 6
start local 6 8: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.getPropertySetterHandle:Ljava/lang/invoke/MethodHandle;
iconst_0
iconst_2
anewarray java.lang.Object
dup
iconst_0
9: aload 2
aload 6
invokevirtual jdk.dynalink.CallSiteDescriptor.changeMethodType:(Ljava/lang/invoke/MethodType;)Ljdk/dynalink/CallSiteDescriptor;
aastore
dup
iconst_1
aload 5
aastore
10: invokestatic java.lang.invoke.MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
astore 7
start local 7 11: aload 5
aload 7
aload 4
12: ldc Ljava/lang/invoke/MethodHandle;
13: invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokeinterface jdk.dynalink.linker.LinkerServices.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
astore 8
start local 8 14: aload 6
invokestatic java.lang.invoke.MethodHandles.exactInvoker:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
astore 9
start local 9 15: aload 9
iconst_2
iconst_1
anewarray java.lang.Class
dup
iconst_0
aload 4
16: iconst_1
17: invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
aastore
invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 10
start local 10 18: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
astore 11
start local 11 19: aload 11
ifnonnull 26
20: getstatic jdk.dynalink.beans.AbstractJavaLinker.CONSTANT_NULL_DROP_METHOD_HANDLE:Ljava/lang/invoke/MethodHandle;
iconst_1
21: aload 4
invokevirtual java.lang.invoke.MethodType.parameterList:()Ljava/util/List;
22: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;ILjava/util/List;)Ljava/lang/invoke/MethodHandle;
23: aload 4
iconst_0
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/invoke/MethodHandle;
aastore
invokevirtual java.lang.invoke.MethodType.insertParameterTypes:(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
24: astore 12
start local 12 25: goto 29
end local 12 26: StackMap locals: jdk.dynalink.beans.AbstractJavaLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.invoke.MethodType java.lang.invoke.MethodType jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle jdk.dynalink.beans.GuardedInvocationComponent
StackMap stack:
aload 11
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getGuardedInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
27: iconst_0
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/invoke/MethodHandle;
aastore
28: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 12
start local 12 29: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
getstatic jdk.dynalink.beans.AbstractJavaLinker.IS_METHOD_HANDLE_NOT_NULL:Ljava/lang/invoke/MethodHandle;
aload 10
aload 12
30: invokestatic java.lang.invoke.MethodHandles.guardWithTest:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
31: aload 8
32: invokestatic java.lang.invoke.MethodHandles.foldArguments:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 13
start local 13 33: aload 11
ifnonnull 35
34: aload 0
aload 13
aload 4
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
35: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
aload 11
aload 13
aload 0
aload 4
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuard:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.clazz:Ljava/lang/Class;
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.EXACT_CLASS:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
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 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 36 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 36 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
1 36 2 callSiteDescriptor Ljdk/dynalink/CallSiteDescriptor;
3 36 3 origType Ljava/lang/invoke/MethodType;
6 36 4 type Ljava/lang/invoke/MethodType;
7 36 5 linkerServices Ljdk/dynalink/linker/LinkerServices;
8 36 6 setterType Ljava/lang/invoke/MethodType;
11 36 7 boundGetter Ljava/lang/invoke/MethodHandle;
14 36 8 typedGetter Ljava/lang/invoke/MethodHandle;
15 36 9 invokeHandle Ljava/lang/invoke/MethodHandle;
18 36 10 invokeHandleFolded Ljava/lang/invoke/MethodHandle;
19 36 11 nextComponent Ljdk/dynalink/beans/GuardedInvocationComponent;
25 26 12 fallbackFolded Ljava/lang/invoke/MethodHandle;
29 36 12 fallbackFolded Ljava/lang/invoke/MethodHandle;
33 36 13 compositeSetter Ljava/lang/invoke/MethodHandle;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private jdk.dynalink.beans.GuardedInvocationComponent getNamedPropertySetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, 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 2
iconst_2
invokestatic jdk.dynalink.beans.AbstractJavaLinker.assertParameterCount:(Ljdk/dynalink/CallSiteDescriptor;I)V
2: aload 0
aload 2
aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkerServices:Ljdk/dynalink/linker/LinkerServices;
3: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.name:Ljava/lang/Object;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertySetters:Ljava/util/Map;
4: invokevirtual jdk.dynalink.beans.AbstractJavaLinker.createGuardedDynamicMethodInvocation:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/String;Ljava/util/Map;)Ljdk/dynalink/linker/GuardedInvocation;
astore 3
start local 3 5: aload 3
ifnull 7
6: new jdk.dynalink.beans.GuardedInvocationComponent
dup
aload 3
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.clazz:Ljava/lang/Class;
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.EXACT_CLASS:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
invokespecial jdk.dynalink.beans.GuardedInvocationComponent.<init>:(Ljdk/dynalink/linker/GuardedInvocation;Ljava/lang/Class;Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;)V
areturn
7: StackMap locals: jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.GuardedInvocation
StackMap stack:
aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 8 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
1 8 2 callSiteDescriptor Ljdk/dynalink/CallSiteDescriptor;
5 8 3 gi Ljdk/dynalink/linker/GuardedInvocation;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private jdk.dynalink.beans.GuardedInvocationComponent getPropertyGetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.name:Ljava/lang/Object;
ifnonnull 2
1: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getUnnamedPropertyGetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getNamedPropertyGetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 3 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private jdk.dynalink.beans.GuardedInvocationComponent getUnnamedPropertyGetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=14, 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 2
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
ldc Ljava/lang/Object;
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
astore 3
start local 3 2: aload 2
iconst_2
invokestatic jdk.dynalink.beans.AbstractJavaLinker.assertParameterCount:(Ljdk/dynalink/CallSiteDescriptor;I)V
3: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkerServices:Ljdk/dynalink/linker/LinkerServices;
astore 4
start local 4 4: aload 4
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.getPropertyGetterHandle:Ljava/lang/invoke/MethodHandle;
aload 3
5: ldc Ljdk/dynalink/beans/AbstractJavaLinker$AnnotatedDynamicMethod;
6: invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokeinterface jdk.dynalink.linker.LinkerServices.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
astore 5
start local 5 7: getstatic jdk.dynalink.beans.AbstractJavaLinker.GET_ANNOTATED_METHOD:Ljava/lang/invoke/MethodHandle;
iconst_1
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 2
aastore
dup
iconst_1
aload 4
aastore
8: invokestatic java.lang.invoke.MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
astore 6
start local 6 9: getstatic jdk.dynalink.beans.AbstractJavaLinker.GETTER_INVOKER:Ljava/lang/invoke/MethodHandle;
iconst_0
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
10: aload 6
aastore
11: invokestatic java.lang.invoke.MethodHandles.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 7
start local 7 12: aload 4
aload 7
13: aload 3
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
ldc Ljdk/dynalink/beans/AbstractJavaLinker$AnnotatedDynamicMethod;
iconst_1
anewarray java.lang.Class
dup
iconst_0
aload 3
iconst_0
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
aastore
invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
14: invokeinterface jdk.dynalink.linker.LinkerServices.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
astore 8
start local 8 15: aload 8
iconst_2
iconst_1
anewarray java.lang.Class
dup
iconst_0
16: aload 3
iconst_1
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
aastore
17: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 9
start local 9 18: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
astore 10
start local 10 19: aload 10
ifnonnull 26
20: getstatic jdk.dynalink.beans.AbstractJavaLinker.CONSTANT_NULL_DROP_ANNOTATED_METHOD:Ljava/lang/invoke/MethodHandle;
iconst_1
21: aload 3
invokevirtual java.lang.invoke.MethodType.parameterList:()Ljava/util/List;
22: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;ILjava/util/List;)Ljava/lang/invoke/MethodHandle;
23: aload 3
iconst_0
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljdk/dynalink/beans/AbstractJavaLinker$AnnotatedDynamicMethod;
aastore
invokevirtual java.lang.invoke.MethodType.insertParameterTypes:(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
24: astore 11
start local 11 25: goto 33
end local 11 26: StackMap locals: jdk.dynalink.beans.AbstractJavaLinker jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.CallSiteDescriptor java.lang.invoke.MethodType jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle jdk.dynalink.beans.GuardedInvocationComponent
StackMap stack:
aload 10
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getGuardedInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
astore 12
start local 12 27: aload 12
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
astore 13
start local 13 28: aload 12
29: aload 13
ldc Ljava/lang/Object;
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
30: invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
31: iconst_0
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljdk/dynalink/beans/AbstractJavaLinker$AnnotatedDynamicMethod;
aastore
32: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 11
end local 13 end local 12 start local 11 33: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
getstatic jdk.dynalink.beans.AbstractJavaLinker.IS_ANNOTATED_METHOD_NOT_NULL:Ljava/lang/invoke/MethodHandle;
aload 9
aload 11
34: invokestatic java.lang.invoke.MethodHandles.guardWithTest:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
35: aload 5
36: invokestatic java.lang.invoke.MethodHandles.foldArguments:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 12
start local 12 37: aload 10
ifnonnull 39
38: aload 0
aload 12
aload 3
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
39: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
aload 10
aload 12
aload 0
aload 3
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuard:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.clazz:Ljava/lang/Class;
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.EXACT_CLASS:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
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 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 40 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 40 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
1 40 2 callSiteDescriptor Ljdk/dynalink/CallSiteDescriptor;
2 40 3 type Ljava/lang/invoke/MethodType;
4 40 4 linkerServices Ljdk/dynalink/linker/LinkerServices;
7 40 5 typedGetter Ljava/lang/invoke/MethodHandle;
9 40 6 callSiteBoundMethodGetter Ljava/lang/invoke/MethodHandle;
12 40 7 callSiteBoundInvoker Ljava/lang/invoke/MethodHandle;
15 40 8 invokeHandleTyped Ljava/lang/invoke/MethodHandle;
18 40 9 invokeHandleFolded Ljava/lang/invoke/MethodHandle;
19 40 10 nextComponent Ljdk/dynalink/beans/GuardedInvocationComponent;
25 26 11 fallbackFolded Ljava/lang/invoke/MethodHandle;
33 40 11 fallbackFolded Ljava/lang/invoke/MethodHandle;
27 33 12 nextInvocation Ljava/lang/invoke/MethodHandle;
28 33 13 nextType Ljava/lang/invoke/MethodType;
37 40 12 compositeGetter Ljava/lang/invoke/MethodHandle;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private jdk.dynalink.beans.GuardedInvocationComponent getNamedPropertyGetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=6, 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 2
iconst_1
invokestatic jdk.dynalink.beans.AbstractJavaLinker.assertParameterCount:(Ljdk/dynalink/CallSiteDescriptor;I)V
2: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertyGetters:Ljava/util/Map;
aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.name:Ljava/lang/Object;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast jdk.dynalink.beans.AbstractJavaLinker$AnnotatedDynamicMethod
astore 3
start local 3 3: aload 3
ifnonnull 5
4: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
5: StackMap locals: jdk.dynalink.CallSiteDescriptor jdk.dynalink.beans.AbstractJavaLinker$AnnotatedDynamicMethod
StackMap stack:
aload 3
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$AnnotatedDynamicMethod.getInvocation:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljava/lang/invoke/MethodHandle;
astore 4
start local 4 6: aload 3
getfield jdk.dynalink.beans.AbstractJavaLinker$AnnotatedDynamicMethod.validationType:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
astore 5
start local 5 7: new jdk.dynalink.beans.GuardedInvocationComponent
dup
aload 4
aload 0
aload 5
8: aload 2
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
9: invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getGuard:(Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
10: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.clazz:Ljava/lang/Class;
aload 5
11: 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 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 12 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
1 12 2 callSiteDescriptor Ljdk/dynalink/CallSiteDescriptor;
3 12 3 annGetter Ljdk/dynalink/beans/AbstractJavaLinker$AnnotatedDynamicMethod;
6 12 4 getter Ljava/lang/invoke/MethodHandle;
7 12 5 validationType Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private java.lang.invoke.MethodHandle getGuard(jdk.dynalink.beans.GuardedInvocationComponent$ValidationType, java.lang.invoke.MethodType);
descriptor: (Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic jdk.dynalink.beans.AbstractJavaLinker.$SWITCH_TABLE$jdk$dynalink$beans$GuardedInvocationComponent$ValidationType:()[I
aload 1
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.ordinal:()I
iaload
tableswitch { // 1 - 4
1: 4
2: 2
3: 1
4: 3
default: 5
}
1: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuard:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getAssignableGuard:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
areturn
3: StackMap locals:
StackMap stack:
iconst_0
aload 2
invokestatic jdk.dynalink.linker.support.Guards.isArray:(ILjava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
areturn
4: StackMap locals:
StackMap stack:
aconst_null
areturn
5: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 6 1 validationType Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
0 6 2 methodType Ljava/lang/invoke/MethodType;
MethodParameters:
Name Flags
validationType final
methodType final
private jdk.dynalink.beans.GuardedInvocationComponent getMethodGetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.name:Ljava/lang/Object;
ifnonnull 2
1: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getUnnamedMethodGetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getNamedMethodGetter:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 3 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private static java.lang.invoke.MethodType getMethodGetterType(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljava/lang/invoke/MethodType;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.getDescriptor:()Ljdk/dynalink/CallSiteDescriptor;
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
ldc Ljava/lang/Object;
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
MethodParameters:
Name Flags
req final
private jdk.dynalink.beans.GuardedInvocationComponent getUnnamedMethodGetter(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;
iconst_2
invokestatic jdk.dynalink.beans.AbstractJavaLinker.assertParameterCount:(Ljdk/dynalink/CallSiteDescriptor;I)V
1: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
astore 2
start local 2 2: aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkerServices:Ljdk/dynalink/linker/LinkerServices;
astore 3
start local 3 3: aload 1
invokestatic jdk.dynalink.beans.AbstractJavaLinker.getMethodGetterType:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljava/lang/invoke/MethodType;
astore 4
start local 4 4: aload 2
ifnonnull 6
5: aload 0
aload 3
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.getDynamicMethod:Ljava/lang/invoke/MethodHandle;
aload 4
invokeinterface jdk.dynalink.linker.LinkerServices.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
aload 4
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
6: StackMap locals: jdk.dynalink.beans.GuardedInvocationComponent jdk.dynalink.linker.LinkerServices java.lang.invoke.MethodType
StackMap stack:
aload 3
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.getDynamicMethod:Ljava/lang/invoke/MethodHandle;
aload 4
invokeinterface jdk.dynalink.linker.LinkerServices.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
astore 5
start local 5 7: aload 3
8: getstatic jdk.dynalink.beans.AbstractJavaLinker.OBJECT_IDENTITY:Ljava/lang/invoke/MethodHandle;
iconst_1
aload 4
invokevirtual java.lang.invoke.MethodType.parameterList:()Ljava/util/List;
9: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;ILjava/util/List;)Ljava/lang/invoke/MethodHandle;
10: aload 4
iconst_0
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
invokevirtual java.lang.invoke.MethodType.insertParameterTypes:(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
11: invokeinterface jdk.dynalink.linker.LinkerServices.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
astore 6
start local 6 12: aload 2
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent.getGuardedInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
astore 7
start local 7 13: getstatic jdk.dynalink.beans.AbstractJavaLinker.$assertionsDisabled:Z
ifne 14
aload 7
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
aload 4
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
aload 4
invokevirtual java.lang.invoke.MethodType.equals:(Ljava/lang/Object;)Z
ifne 14
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
14: StackMap locals: java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle
StackMap stack:
aload 7
iconst_0
iconst_1
anewarray java.lang.Class
dup
iconst_0
15: ldc Ljava/lang/Object;
aastore
16: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 8
start local 8 17: getstatic jdk.dynalink.beans.AbstractJavaLinker.IS_DYNAMIC_METHOD:Ljava/lang/invoke/MethodHandle;
aload 6
18: aload 8
aload 8
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
ldc Ljava/lang/Object;
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
19: invokestatic java.lang.invoke.MethodHandles.guardWithTest:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
20: aload 5
21: invokestatic java.lang.invoke.MethodHandles.foldArguments:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 9
start local 9 22: aload 2
aload 9
aload 0
aload 4
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuard:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.clazz:Ljava/lang/Class;
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.EXACT_CLASS:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
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 23 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 23 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
2 23 2 nextComponent Ljdk/dynalink/beans/GuardedInvocationComponent;
3 23 3 linkerServices Ljdk/dynalink/linker/LinkerServices;
4 23 4 type Ljava/lang/invoke/MethodType;
7 23 5 typedGetter Ljava/lang/invoke/MethodHandle;
12 23 6 returnMethodHandle Ljava/lang/invoke/MethodHandle;
13 23 7 nextComponentInvocation Ljava/lang/invoke/MethodHandle;
17 23 8 nextCombinedInvocation Ljava/lang/invoke/MethodHandle;
22 23 9 compositeGetter Ljava/lang/invoke/MethodHandle;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
private jdk.dynalink.beans.GuardedInvocationComponent getNamedMethodGetter(jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest);
descriptor: (Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.getDescriptor:()Ljdk/dynalink/CallSiteDescriptor;
iconst_1
invokestatic jdk.dynalink.beans.AbstractJavaLinker.assertParameterCount:(Ljdk/dynalink/CallSiteDescriptor;I)V
1: aload 0
aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.name:Ljava/lang/Object;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getDynamicMethod:(Ljava/lang/String;)Ljdk/dynalink/beans/DynamicMethod;
astore 2
start local 2 2: aload 2
ifnonnull 4
3: aload 0
aload 1
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getNextComponent:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
4: StackMap locals: jdk.dynalink.beans.DynamicMethod
StackMap stack:
aload 1
invokestatic jdk.dynalink.beans.AbstractJavaLinker.getMethodGetterType:(Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;)Ljava/lang/invoke/MethodType;
astore 3
start local 3 5: aload 0
aload 1
getfield jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest.linkerServices:Ljdk/dynalink/linker/LinkerServices;
6: ldc Ljava/lang/Object;
aload 2
invokestatic java.lang.invoke.MethodHandles.constant:(Ljava/lang/Class;Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
iconst_0
iconst_1
anewarray java.lang.Class
dup
iconst_0
aload 3
iconst_0
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
aastore
7: invokestatic java.lang.invoke.MethodHandles.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
8: aload 3
9: invokeinterface jdk.dynalink.linker.LinkerServices.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
10: aload 3
11: invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getClassGuardedInvocationComponent:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljdk/dynalink/beans/GuardedInvocationComponent;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 12 1 req Ljdk/dynalink/beans/AbstractJavaLinker$ComponentLinkRequest;
2 12 2 method Ljdk/dynalink/beans/DynamicMethod;
5 12 3 type Ljava/lang/invoke/MethodType;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
req final
static jdk.dynalink.beans.AbstractJavaLinker$MethodPair matchReturnTypes(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/beans/AbstractJavaLinker$MethodPair;
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
astore 2
start local 2 1: aload 1
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
astore 3
start local 3 2: aload 2
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
3: aload 3
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
4: invokestatic jdk.dynalink.internal.InternalTypeUtilities.getCommonLosslessConversionType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/Class;
astore 4
start local 4 5: new jdk.dynalink.beans.AbstractJavaLinker$MethodPair
dup
6: aload 0
aload 2
aload 4
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
7: aload 1
aload 3
aload 4
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
8: invokespecial jdk.dynalink.beans.AbstractJavaLinker$MethodPair.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V
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 m1 Ljava/lang/invoke/MethodHandle;
0 9 1 m2 Ljava/lang/invoke/MethodHandle;
1 9 2 type1 Ljava/lang/invoke/MethodType;
2 9 3 type2 Ljava/lang/invoke/MethodType;
5 9 4 commonRetType Ljava/lang/Class<*>;
MethodParameters:
Name Flags
m1 final
m2 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
private java.lang.Object getPropertyGetterHandle(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertyGetters:Ljava/util/Map;
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 1 1 id Ljava/lang/Object;
MethodParameters:
Name Flags
id final
private java.lang.invoke.MethodHandle getPropertySetterHandle(jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.LinkerServices, java.lang.Object);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.propertySetters:Ljava/util/Map;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getDynamicMethodInvocation:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkerServices;Ljava/lang/String;Ljava/util/Map;)Ljava/lang/invoke/MethodHandle;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 1 1 setterDescriptor Ljdk/dynalink/CallSiteDescriptor;
0 1 2 linkerServices Ljdk/dynalink/linker/LinkerServices;
0 1 3 id Ljava/lang/Object;
MethodParameters:
Name Flags
setterDescriptor final
linkerServices final
id final
private java.lang.Object getDynamicMethod(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.methods:Ljava/util/Map;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getDynamicMethod:(Ljava/lang/String;Ljava/util/Map;)Ljdk/dynalink/beans/DynamicMethod;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 1 1 name Ljava/lang/Object;
MethodParameters:
Name Flags
name final
jdk.dynalink.beans.DynamicMethod getDynamicMethod(java.lang.String);
descriptor: (Ljava/lang/String;)Ljdk/dynalink/beans/DynamicMethod;
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 0
getfield jdk.dynalink.beans.AbstractJavaLinker.methods:Ljava/util/Map;
invokevirtual jdk.dynalink.beans.AbstractJavaLinker.getDynamicMethod:(Ljava/lang/String;Ljava/util/Map;)Ljdk/dynalink/beans/DynamicMethod;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/dynalink/beans/AbstractJavaLinker;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name final
private static java.lang.reflect.Method getMostGenericGetter(java.lang.reflect.Method);
descriptor: (Ljava/lang/reflect/Method;)Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
aload 0
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
aload 0
invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
invokestatic jdk.dynalink.beans.AbstractJavaLinker.getMostGenericGetter:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/reflect/Method;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 getter Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
getter final
private static java.lang.reflect.Method getMostGenericGetter(java.lang.String, java.lang.Class<?>, java.lang.Class<?>);
descriptor: (Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 8
StackMap locals: java.lang.String java.lang.Class java.lang.Class top int int java.lang.Class[]
StackMap stack:
3: aload 6
iload 4
aaload
astore 3
start local 3 4: aload 0
aload 1
aload 3
invokestatic jdk.dynalink.beans.AbstractJavaLinker.getMostGenericGetter:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 7
start local 7 5: aload 7
ifnull 7
6: aload 7
areturn
end local 7 end local 3 7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
iload 5
if_icmplt 3
9: aload 0
aload 1
aload 2
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
invokestatic jdk.dynalink.beans.AbstractJavaLinker.getMostGenericGetter:(Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 3
start local 3 10: aload 3
ifnull 12
11: aload 3
areturn
12: StackMap locals: java.lang.String java.lang.Class java.lang.Class java.lang.reflect.Method
StackMap stack:
aload 2
invokestatic jdk.dynalink.beans.CheckRestrictedPackage.isRestrictedClass:(Ljava/lang/Class;)Z
ifne 16
13: aload 2
aload 0
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
14: areturn
15: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
pop
16: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 name Ljava/lang/String;
0 17 1 returnType Ljava/lang/Class<*>;
0 17 2 declaringClass Ljava/lang/Class<*>;
4 7 3 itf Ljava/lang/Class<*>;
5 7 7 itfGetter Ljava/lang/reflect/Method;
10 17 3 superGetter Ljava/lang/reflect/Method;
Exception table:
from to target type
13 14 15 Class java.lang.NoSuchMethodException
Signature: (Ljava/lang/String;Ljava/lang/Class<*>;Ljava/lang/Class<*>;)Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
name final
returnType final
declaringClass final
static int[] $SWITCH_TABLE$jdk$dynalink$beans$GuardedInvocationComponent$ValidationType();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic jdk.dynalink.beans.AbstractJavaLinker.$SWITCH_TABLE$jdk$dynalink$beans$GuardedInvocationComponent$ValidationType:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.values:()[Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
arraylength
newarray 10
astore 0
2: aload 0
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.EXACT_CLASS:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.ordinal:()I
iconst_3
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.GuardedInvocationComponent$ValidationType.INSTANCE_OF:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.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.GuardedInvocationComponent$ValidationType.IS_ARRAY:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.ordinal:()I
iconst_4
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.NONE:Ljdk/dynalink/beans/GuardedInvocationComponent$ValidationType;
invokevirtual jdk.dynalink.beans.GuardedInvocationComponent$ValidationType.ordinal:()I
iconst_1
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
dup
putstatic jdk.dynalink.beans.AbstractJavaLinker.$SWITCH_TABLE$jdk$dynalink$beans$GuardedInvocationComponent$ValidationType:[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
11 12 13 Class java.lang.NoSuchFieldError
}
SourceFile: "AbstractJavaLinker.java"
NestMembers:
jdk.dynalink.beans.AbstractJavaLinker$AnnotatedDynamicMethod jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest jdk.dynalink.beans.AbstractJavaLinker$MethodPair
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Entry = java.util.Map$Entry of java.util.Map
private final AnnotatedDynamicMethod = jdk.dynalink.beans.AbstractJavaLinker$AnnotatedDynamicMethod of jdk.dynalink.beans.AbstractJavaLinker
final ComponentLinkRequest = jdk.dynalink.beans.AbstractJavaLinker$ComponentLinkRequest of jdk.dynalink.beans.AbstractJavaLinker
MethodPair = jdk.dynalink.beans.AbstractJavaLinker$MethodPair of jdk.dynalink.beans.AbstractJavaLinker
final ValidationType = jdk.dynalink.beans.GuardedInvocationComponent$ValidationType of jdk.dynalink.beans.GuardedInvocationComponent