public class jdk.nashorn.internal.runtime.ScriptFunction extends jdk.nashorn.internal.runtime.ScriptObject
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.nashorn.internal.runtime.ScriptFunction
super_class: jdk.nashorn.internal.runtime.ScriptObject
{
public static final java.lang.invoke.MethodHandle G$PROTOTYPE;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.invoke.MethodHandle S$PROTOTYPE;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.invoke.MethodHandle G$LENGTH;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.invoke.MethodHandle G$NAME;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.invoke.MethodHandle INVOKE_SYNC;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
static final java.lang.invoke.MethodHandle ALLOCATE;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0018) ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle WRAPFILTER;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle SCRIPTFUNCTION_GLOBALFILTER;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final jdk.nashorn.internal.codegen.CompilerConstants$Call GET_SCOPE;
descriptor: Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle IS_FUNCTION_MH;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle IS_APPLY_FUNCTION;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle IS_NONSTRICT_FUNCTION;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle ADD_ZEROTH_ELEMENT;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle WRAP_THIS;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final jdk.nashorn.internal.runtime.PropertyMap anonmap$;
descriptor: Ljdk/nashorn/internal/runtime/PropertyMap;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final jdk.nashorn.internal.runtime.PropertyMap strictmodemap$;
descriptor: Ljdk/nashorn/internal/runtime/PropertyMap;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final jdk.nashorn.internal.runtime.PropertyMap boundfunctionmap$;
descriptor: Ljdk/nashorn/internal/runtime/PropertyMap;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final jdk.nashorn.internal.runtime.PropertyMap map$;
descriptor: Ljdk/nashorn/internal/runtime/PropertyMap;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.Object LAZY_PROTOTYPE;
descriptor: Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.security.AccessControlContext GET_LOOKUP_PERMISSION_CONTEXT;
descriptor: Ljava/security/AccessControlContext;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final jdk.nashorn.internal.runtime.ScriptObject scope;
descriptor: Ljdk/nashorn/internal/runtime/ScriptObject;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.nashorn.internal.runtime.ScriptFunctionData data;
descriptor: Ljdk/nashorn/internal/runtime/ScriptFunctionData;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
protected jdk.nashorn.internal.runtime.PropertyMap allocatorMap;
descriptor: Ljdk/nashorn/internal/runtime/PropertyMap;
flags: (0x0004) ACC_PROTECTED
protected java.lang.Object prototype;
descriptor: Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
private static java.util.concurrent.atomic.LongAdder constructorCount;
descriptor: Ljava/util/concurrent/atomic/LongAdder;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.concurrent.atomic.LongAdder invokes;
descriptor: Ljava/util/concurrent/atomic/LongAdder;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.concurrent.atomic.LongAdder allocations;
descriptor: Ljava/util/concurrent/atomic/LongAdder;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=1, args_size=0
0: ldc Ljdk/nashorn/internal/runtime/ScriptFunction;
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.nashorn.internal.runtime.ScriptFunction.$assertionsDisabled:Z
3: ldc "G$prototype"
ldc Ljava/lang/Object;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_S:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.G$PROTOTYPE:Ljava/lang/invoke/MethodHandle;
4: ldc "S$prototype"
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
dup
iconst_1
ldc Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_S:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.S$PROTOTYPE:Ljava/lang/invoke/MethodHandle;
5: ldc "G$length"
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_S:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.G$LENGTH:Ljava/lang/invoke/MethodHandle;
6: ldc "G$name"
ldc Ljava/lang/Object;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_S:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.G$NAME:Ljava/lang/invoke/MethodHandle;
7: ldc "invokeSync"
ldc Ljava/lang/Object;
iconst_4
anewarray java.lang.Class
dup
iconst_0
ldc Ljdk/nashorn/internal/runtime/ScriptFunction;
aastore
dup
iconst_1
ldc Ljava/lang/Object;
aastore
dup
iconst_2
ldc Ljava/lang/Object;
aastore
dup
iconst_3
ldc [Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_S:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.INVOKE_SYNC:Ljava/lang/invoke/MethodHandle;
8: ldc "allocate"
ldc Ljava/lang/Object;
iconst_0
anewarray java.lang.Class
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_V:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.ALLOCATE:Ljava/lang/invoke/MethodHandle;
9: ldc "wrapFilter"
ldc Ljava/lang/Object;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_S:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.WRAPFILTER:Ljava/lang/invoke/MethodHandle;
10: ldc "globalFilter"
ldc Ljava/lang/Object;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_S:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.SCRIPTFUNCTION_GLOBALFILTER:Ljava/lang/invoke/MethodHandle;
11: ldc Ljdk/nashorn/internal/runtime/ScriptFunction;
ldc "getScope"
ldc Ljdk/nashorn/internal/runtime/ScriptObject;
iconst_0
anewarray java.lang.Class
invokestatic jdk.nashorn.internal.codegen.CompilerConstants.virtualCallNoLookup:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.GET_SCOPE:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
12: ldc "isFunctionMH"
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
dup
iconst_1
ldc Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_S:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.IS_FUNCTION_MH:Ljava/lang/invoke/MethodHandle;
13: ldc "isApplyFunction"
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
iconst_3
anewarray java.lang.Class
dup
iconst_0
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
aastore
dup
iconst_1
ldc Ljava/lang/Object;
aastore
dup
iconst_2
ldc Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_S:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.IS_APPLY_FUNCTION:Ljava/lang/invoke/MethodHandle;
14: ldc "isNonStrictFunction"
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
iconst_3
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
dup
iconst_1
ldc Ljava/lang/Object;
aastore
dup
iconst_2
ldc Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_S:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.IS_NONSTRICT_FUNCTION:Ljava/lang/invoke/MethodHandle;
15: ldc "addZerothElement"
ldc [Ljava/lang/Object;
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc [Ljava/lang/Object;
aastore
dup
iconst_1
ldc Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.findOwnMH_S:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.ADD_ZEROTH_ELEMENT:Ljava/lang/invoke/MethodHandle;
16: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
ldc Ljdk/nashorn/internal/runtime/ScriptFunctionData;
ldc "wrapThis"
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
ldc Ljava/lang/Object;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.type:(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.findStatic:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.WRAP_THIS:Ljava/lang/invoke/MethodHandle;
17: new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putstatic jdk.nashorn.internal.runtime.ScriptFunction.LAZY_PROTOTYPE:Ljava/lang/Object;
18: iconst_1
anewarray java.lang.String
dup
iconst_0
19: ldc "dynalink.getLookup"
aastore
invokestatic jdk.nashorn.internal.runtime.AccessControlContextFactory.createAccessControlContext:([Ljava/lang/String;)Ljava/security/AccessControlContext;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.GET_LOOKUP_PERMISSION_CONTEXT:Ljava/security/AccessControlContext;
20: invokestatic jdk.nashorn.internal.runtime.PropertyMap.newMap:()Ljdk/nashorn/internal/runtime/PropertyMap;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.anonmap$:Ljdk/nashorn/internal/runtime/PropertyMap;
21: new java.util.ArrayList
dup
iconst_3
invokespecial java.util.ArrayList.<init>:(I)V
astore 0
start local 0 22: aload 0
ldc "prototype"
bipush 6
getstatic jdk.nashorn.internal.runtime.ScriptFunction.G$PROTOTYPE:Ljava/lang/invoke/MethodHandle;
getstatic jdk.nashorn.internal.runtime.ScriptFunction.S$PROTOTYPE:Ljava/lang/invoke/MethodHandle;
invokestatic jdk.nashorn.internal.runtime.AccessorProperty.create:(Ljava/lang/Object;ILjava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/nashorn/internal/runtime/AccessorProperty;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
23: aload 0
ldc "length"
bipush 7
getstatic jdk.nashorn.internal.runtime.ScriptFunction.G$LENGTH:Ljava/lang/invoke/MethodHandle;
aconst_null
invokestatic jdk.nashorn.internal.runtime.AccessorProperty.create:(Ljava/lang/Object;ILjava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/nashorn/internal/runtime/AccessorProperty;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
24: aload 0
ldc "name"
bipush 7
getstatic jdk.nashorn.internal.runtime.ScriptFunction.G$NAME:Ljava/lang/invoke/MethodHandle;
aconst_null
invokestatic jdk.nashorn.internal.runtime.AccessorProperty.create:(Ljava/lang/Object;ILjava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/nashorn/internal/runtime/AccessorProperty;
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
25: aload 0
invokestatic jdk.nashorn.internal.runtime.PropertyMap.newMap:(Ljava/util/Collection;)Ljdk/nashorn/internal/runtime/PropertyMap;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.map$:Ljdk/nashorn/internal/runtime/PropertyMap;
26: getstatic jdk.nashorn.internal.runtime.ScriptFunction.map$:Ljdk/nashorn/internal/runtime/PropertyMap;
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.createStrictModeMap:(Ljdk/nashorn/internal/runtime/PropertyMap;)Ljdk/nashorn/internal/runtime/PropertyMap;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.strictmodemap$:Ljdk/nashorn/internal/runtime/PropertyMap;
27: getstatic jdk.nashorn.internal.runtime.ScriptFunction.strictmodemap$:Ljdk/nashorn/internal/runtime/PropertyMap;
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.createBoundFunctionMap:(Ljdk/nashorn/internal/runtime/PropertyMap;)Ljdk/nashorn/internal/runtime/PropertyMap;
putstatic jdk.nashorn.internal.runtime.ScriptFunction.boundfunctionmap$:Ljdk/nashorn/internal/runtime/PropertyMap;
end local 0 28: getstatic jdk.nashorn.internal.runtime.Context.DEBUG:Z
ifeq 32
29: new java.util.concurrent.atomic.LongAdder
dup
invokespecial java.util.concurrent.atomic.LongAdder.<init>:()V
putstatic jdk.nashorn.internal.runtime.ScriptFunction.constructorCount:Ljava/util/concurrent/atomic/LongAdder;
30: new java.util.concurrent.atomic.LongAdder
dup
invokespecial java.util.concurrent.atomic.LongAdder.<init>:()V
putstatic jdk.nashorn.internal.runtime.ScriptFunction.invokes:Ljava/util/concurrent/atomic/LongAdder;
31: new java.util.concurrent.atomic.LongAdder
dup
invokespecial java.util.concurrent.atomic.LongAdder.<init>:()V
putstatic jdk.nashorn.internal.runtime.ScriptFunction.allocations:Ljava/util/concurrent/atomic/LongAdder;
32: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
22 28 0 properties Ljava/util/ArrayList<Ljdk/nashorn/internal/runtime/Property;>;
private static jdk.nashorn.internal.runtime.PropertyMap createStrictModeMap(jdk.nashorn.internal.runtime.PropertyMap);
descriptor: (Ljdk/nashorn/internal/runtime/PropertyMap;)Ljdk/nashorn/internal/runtime/PropertyMap;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
astore 1
start local 1 1: aload 1
aload 1
ldc "arguments"
bipush 6
invokevirtual jdk.nashorn.internal.runtime.PropertyMap.newUserAccessors:(Ljava/lang/Object;I)Ljdk/nashorn/internal/runtime/UserAccessorProperty;
invokevirtual jdk.nashorn.internal.runtime.PropertyMap.addPropertyNoHistory:(Ljdk/nashorn/internal/runtime/Property;)Ljdk/nashorn/internal/runtime/PropertyMap;
astore 1
2: aload 1
aload 1
ldc "caller"
bipush 6
invokevirtual jdk.nashorn.internal.runtime.PropertyMap.newUserAccessors:(Ljava/lang/Object;I)Ljdk/nashorn/internal/runtime/UserAccessorProperty;
invokevirtual jdk.nashorn.internal.runtime.PropertyMap.addPropertyNoHistory:(Ljdk/nashorn/internal/runtime/Property;)Ljdk/nashorn/internal/runtime/PropertyMap;
astore 1
3: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 map Ljdk/nashorn/internal/runtime/PropertyMap;
1 4 1 newMap Ljdk/nashorn/internal/runtime/PropertyMap;
MethodParameters:
Name Flags
map final
private static jdk.nashorn.internal.runtime.PropertyMap createBoundFunctionMap(jdk.nashorn.internal.runtime.PropertyMap);
descriptor: (Ljdk/nashorn/internal/runtime/PropertyMap;)Ljdk/nashorn/internal/runtime/PropertyMap;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
aload 0
ldc "prototype"
invokevirtual jdk.nashorn.internal.runtime.PropertyMap.findProperty:(Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/Property;
invokevirtual jdk.nashorn.internal.runtime.PropertyMap.deleteProperty:(Ljdk/nashorn/internal/runtime/Property;)Ljdk/nashorn/internal/runtime/PropertyMap;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 strictModeMap Ljdk/nashorn/internal/runtime/PropertyMap;
MethodParameters:
Name Flags
strictModeMap final
private static boolean isStrict(int);
descriptor: (I)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
iconst_1
iand
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 flags I
MethodParameters:
Name Flags
flags final
private static jdk.nashorn.internal.runtime.PropertyMap getMap(boolean);
descriptor: (Z)Ljdk/nashorn/internal/runtime/PropertyMap;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iload 0
ifeq 1
getstatic jdk.nashorn.internal.runtime.ScriptFunction.strictmodemap$:Ljdk/nashorn/internal/runtime/PropertyMap;
goto 2
StackMap locals:
StackMap stack:
1: getstatic jdk.nashorn.internal.runtime.ScriptFunction.map$:Ljdk/nashorn/internal/runtime/PropertyMap;
StackMap locals:
StackMap stack: jdk.nashorn.internal.runtime.PropertyMap
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 strict Z
MethodParameters:
Name Flags
strict final
private void <init>(jdk.nashorn.internal.runtime.ScriptFunctionData, jdk.nashorn.internal.runtime.PropertyMap, jdk.nashorn.internal.runtime.ScriptObject, jdk.nashorn.internal.objects.Global);
descriptor: (Ljdk/nashorn/internal/runtime/ScriptFunctionData;Ljdk/nashorn/internal/runtime/PropertyMap;Ljdk/nashorn/internal/runtime/ScriptObject;Ljdk/nashorn/internal/objects/Global;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 2
invokespecial jdk.nashorn.internal.runtime.ScriptObject.<init>:(Ljdk/nashorn/internal/runtime/PropertyMap;)V
1: getstatic jdk.nashorn.internal.runtime.Context.DEBUG:Z
ifeq 3
2: getstatic jdk.nashorn.internal.runtime.ScriptFunction.constructorCount:Ljava/util/concurrent/atomic/LongAdder;
invokevirtual java.util.concurrent.atomic.LongAdder.increment:()V
3: StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction jdk.nashorn.internal.runtime.ScriptFunctionData jdk.nashorn.internal.runtime.PropertyMap jdk.nashorn.internal.runtime.ScriptObject jdk.nashorn.internal.objects.Global
StackMap stack:
aload 0
aload 1
putfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
4: aload 0
aload 3
putfield jdk.nashorn.internal.runtime.ScriptFunction.scope:Ljdk/nashorn/internal/runtime/ScriptObject;
5: aload 0
aload 4
invokevirtual jdk.nashorn.internal.objects.Global.getFunctionPrototype:()Ljdk/nashorn/internal/runtime/ScriptObject;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.setInitialProto:(Ljdk/nashorn/internal/runtime/ScriptObject;)V
6: aload 0
getstatic jdk.nashorn.internal.runtime.ScriptFunction.LAZY_PROTOTYPE:Ljava/lang/Object;
putfield jdk.nashorn.internal.runtime.ScriptFunction.prototype:Ljava/lang/Object;
7: getstatic jdk.nashorn.internal.runtime.ScriptFunction.$assertionsDisabled:Z
ifne 8
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.objectSpill:[Ljava/lang/Object;
ifnull 8
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
8: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.isStrict:()Z
ifne 9
aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.isBoundFunction:()Z
ifeq 12
9: StackMap locals:
StackMap stack:
aload 4
invokevirtual jdk.nashorn.internal.objects.Global.getTypeErrorThrower:()Ljdk/nashorn/internal/runtime/ScriptFunction;
astore 5
start local 5 10: aload 0
ldc "arguments"
aload 5
aload 5
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.initUserAccessors:(Ljava/lang/String;Ljdk/nashorn/internal/runtime/ScriptFunction;Ljdk/nashorn/internal/runtime/ScriptFunction;)V
11: aload 0
ldc "caller"
aload 5
aload 5
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.initUserAccessors:(Ljava/lang/String;Ljdk/nashorn/internal/runtime/ScriptFunction;Ljdk/nashorn/internal/runtime/ScriptFunction;)V
end local 5 12: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 13 1 data Ljdk/nashorn/internal/runtime/ScriptFunctionData;
0 13 2 map Ljdk/nashorn/internal/runtime/PropertyMap;
0 13 3 scope Ljdk/nashorn/internal/runtime/ScriptObject;
0 13 4 global Ljdk/nashorn/internal/objects/Global;
10 12 5 typeErrorThrower Ljdk/nashorn/internal/runtime/ScriptFunction;
MethodParameters:
Name Flags
data final
map final
scope final
global final
private void <init>(java.lang.String, java.lang.invoke.MethodHandle, jdk.nashorn.internal.runtime.PropertyMap, jdk.nashorn.internal.runtime.ScriptObject, jdk.nashorn.internal.runtime.Specialization[], int, jdk.nashorn.internal.objects.Global);
descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/nashorn/internal/runtime/PropertyMap;Ljdk/nashorn/internal/runtime/ScriptObject;[Ljdk/nashorn/internal/runtime/Specialization;ILjdk/nashorn/internal/objects/Global;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=8, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
new jdk.nashorn.internal.runtime.FinalScriptFunctionData
dup
aload 1
aload 2
aload 5
iload 6
invokespecial jdk.nashorn.internal.runtime.FinalScriptFunctionData.<init>:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;[Ljdk/nashorn/internal/runtime/Specialization;I)V
aload 3
aload 4
aload 7
invokespecial jdk.nashorn.internal.runtime.ScriptFunction.<init>:(Ljdk/nashorn/internal/runtime/ScriptFunctionData;Ljdk/nashorn/internal/runtime/PropertyMap;Ljdk/nashorn/internal/runtime/ScriptObject;Ljdk/nashorn/internal/objects/Global;)V
1: return
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 2 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 2 1 name Ljava/lang/String;
0 2 2 methodHandle Ljava/lang/invoke/MethodHandle;
0 2 3 map Ljdk/nashorn/internal/runtime/PropertyMap;
0 2 4 scope Ljdk/nashorn/internal/runtime/ScriptObject;
0 2 5 specs [Ljdk/nashorn/internal/runtime/Specialization;
0 2 6 flags I
0 2 7 global Ljdk/nashorn/internal/objects/Global;
MethodParameters:
Name Flags
name final
methodHandle final
map final
scope final
specs final
flags final
global final
private void <init>(java.lang.String, java.lang.invoke.MethodHandle, jdk.nashorn.internal.runtime.ScriptObject, jdk.nashorn.internal.runtime.Specialization[], int);
descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/nashorn/internal/runtime/ScriptObject;[Ljdk/nashorn/internal/runtime/Specialization;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 2
iload 5
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.isStrict:(I)Z
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.getMap:(Z)Ljdk/nashorn/internal/runtime/PropertyMap;
aload 3
aload 4
iload 5
invokestatic jdk.nashorn.internal.objects.Global.instance:()Ljdk/nashorn/internal/objects/Global;
invokespecial jdk.nashorn.internal.runtime.ScriptFunction.<init>:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/nashorn/internal/runtime/PropertyMap;Ljdk/nashorn/internal/runtime/ScriptObject;[Ljdk/nashorn/internal/runtime/Specialization;ILjdk/nashorn/internal/objects/Global;)V
1: 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 2 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 2 1 name Ljava/lang/String;
0 2 2 methodHandle Ljava/lang/invoke/MethodHandle;
0 2 3 scope Ljdk/nashorn/internal/runtime/ScriptObject;
0 2 4 specs [Ljdk/nashorn/internal/runtime/Specialization;
0 2 5 flags I
MethodParameters:
Name Flags
name final
methodHandle final
scope final
specs final
flags final
protected void <init>(java.lang.String, java.lang.invoke.MethodHandle, jdk.nashorn.internal.runtime.Specialization[]);
descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodHandle;[Ljdk/nashorn/internal/runtime/Specialization;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
getstatic jdk.nashorn.internal.runtime.ScriptFunction.map$:Ljdk/nashorn/internal/runtime/PropertyMap;
aconst_null
aload 3
bipush 6
invokestatic jdk.nashorn.internal.objects.Global.instance:()Ljdk/nashorn/internal/objects/Global;
invokespecial jdk.nashorn.internal.runtime.ScriptFunction.<init>:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/nashorn/internal/runtime/PropertyMap;Ljdk/nashorn/internal/runtime/ScriptObject;[Ljdk/nashorn/internal/runtime/Specialization;ILjdk/nashorn/internal/objects/Global;)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/nashorn/internal/runtime/ScriptFunction;
0 2 1 name Ljava/lang/String;
0 2 2 invokeHandle Ljava/lang/invoke/MethodHandle;
0 2 3 specs [Ljdk/nashorn/internal/runtime/Specialization;
MethodParameters:
Name Flags
name final
invokeHandle final
specs final
protected void <init>(java.lang.String, java.lang.invoke.MethodHandle, jdk.nashorn.internal.runtime.PropertyMap, jdk.nashorn.internal.runtime.Specialization[]);
descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/nashorn/internal/runtime/PropertyMap;[Ljdk/nashorn/internal/runtime/Specialization;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=5, 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
getstatic jdk.nashorn.internal.runtime.ScriptFunction.map$:Ljdk/nashorn/internal/runtime/PropertyMap;
invokevirtual jdk.nashorn.internal.runtime.PropertyMap.addAll:(Ljdk/nashorn/internal/runtime/PropertyMap;)Ljdk/nashorn/internal/runtime/PropertyMap;
aconst_null
aload 4
bipush 6
invokestatic jdk.nashorn.internal.objects.Global.instance:()Ljdk/nashorn/internal/objects/Global;
invokespecial jdk.nashorn.internal.runtime.ScriptFunction.<init>:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/nashorn/internal/runtime/PropertyMap;Ljdk/nashorn/internal/runtime/ScriptObject;[Ljdk/nashorn/internal/runtime/Specialization;ILjdk/nashorn/internal/objects/Global;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 2 1 name Ljava/lang/String;
0 2 2 invokeHandle Ljava/lang/invoke/MethodHandle;
0 2 3 map Ljdk/nashorn/internal/runtime/PropertyMap;
0 2 4 specs [Ljdk/nashorn/internal/runtime/Specialization;
MethodParameters:
Name Flags
name final
invokeHandle final
map final
specs final
public static jdk.nashorn.internal.runtime.ScriptFunction create(java.lang.Object[], int, jdk.nashorn.internal.runtime.ScriptObject);
descriptor: ([Ljava/lang/Object;ILjdk/nashorn/internal/runtime/ScriptObject;)Ljdk/nashorn/internal/runtime/ScriptFunction;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
aaload
checkcast jdk.nashorn.internal.runtime.RecompilableScriptFunctionData
astore 3
start local 3 1: new jdk.nashorn.internal.runtime.ScriptFunction
dup
aload 3
aload 3
invokevirtual jdk.nashorn.internal.runtime.RecompilableScriptFunctionData.isStrict:()Z
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.getMap:(Z)Ljdk/nashorn/internal/runtime/PropertyMap;
aload 2
invokestatic jdk.nashorn.internal.objects.Global.instance:()Ljdk/nashorn/internal/objects/Global;
invokespecial jdk.nashorn.internal.runtime.ScriptFunction.<init>:(Ljdk/nashorn/internal/runtime/ScriptFunctionData;Ljdk/nashorn/internal/runtime/PropertyMap;Ljdk/nashorn/internal/runtime/ScriptObject;Ljdk/nashorn/internal/objects/Global;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 constants [Ljava/lang/Object;
0 2 1 index I
0 2 2 scope Ljdk/nashorn/internal/runtime/ScriptObject;
1 2 3 data Ljdk/nashorn/internal/runtime/RecompilableScriptFunctionData;
MethodParameters:
Name Flags
constants final
index final
scope final
public static jdk.nashorn.internal.runtime.ScriptFunction create(java.lang.Object[], int);
descriptor: ([Ljava/lang/Object;I)Ljdk/nashorn/internal/runtime/ScriptFunction;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
aconst_null
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.create:([Ljava/lang/Object;ILjdk/nashorn/internal/runtime/ScriptObject;)Ljdk/nashorn/internal/runtime/ScriptFunction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 constants [Ljava/lang/Object;
0 1 1 index I
MethodParameters:
Name Flags
constants final
index final
public static jdk.nashorn.internal.runtime.ScriptFunction createAnonymous();
descriptor: ()Ljdk/nashorn/internal/runtime/ScriptFunction;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=0, args_size=0
0: new jdk.nashorn.internal.runtime.ScriptFunction
dup
ldc ""
getstatic jdk.nashorn.internal.runtime.GlobalFunctions.ANONYMOUS:Ljava/lang/invoke/MethodHandle;
getstatic jdk.nashorn.internal.runtime.ScriptFunction.anonmap$:Ljdk/nashorn/internal/runtime/PropertyMap;
aconst_null
invokespecial jdk.nashorn.internal.runtime.ScriptFunction.<init>:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/nashorn/internal/runtime/PropertyMap;[Ljdk/nashorn/internal/runtime/Specialization;)V
areturn
LocalVariableTable:
Start End Slot Name Signature
private static jdk.nashorn.internal.runtime.ScriptFunction createBuiltin(java.lang.String, java.lang.invoke.MethodHandle, jdk.nashorn.internal.runtime.Specialization[], int);
descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodHandle;[Ljdk/nashorn/internal/runtime/Specialization;I)Ljdk/nashorn/internal/runtime/ScriptFunction;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new jdk.nashorn.internal.runtime.ScriptFunction
dup
aload 0
aload 1
aconst_null
aload 2
iload 3
invokespecial jdk.nashorn.internal.runtime.ScriptFunction.<init>:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;Ljdk/nashorn/internal/runtime/ScriptObject;[Ljdk/nashorn/internal/runtime/Specialization;I)V
astore 4
start local 4 1: aload 4
getstatic jdk.nashorn.internal.runtime.ScriptRuntime.UNDEFINED:Ljdk/nashorn/internal/runtime/Undefined;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.setPrototype:(Ljava/lang/Object;)V
2: aload 4
aload 4
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getMap:()Ljdk/nashorn/internal/runtime/PropertyMap;
ldc "prototype"
invokevirtual jdk.nashorn.internal.runtime.PropertyMap.findProperty:(Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/Property;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.deleteOwnProperty:(Ljdk/nashorn/internal/runtime/Property;)Z
pop
3: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 name Ljava/lang/String;
0 4 1 methodHandle Ljava/lang/invoke/MethodHandle;
0 4 2 specs [Ljdk/nashorn/internal/runtime/Specialization;
0 4 3 flags I
1 4 4 func Ljdk/nashorn/internal/runtime/ScriptFunction;
MethodParameters:
Name Flags
name final
methodHandle final
specs final
flags final
public static jdk.nashorn.internal.runtime.ScriptFunction createBuiltin(java.lang.String, java.lang.invoke.MethodHandle, jdk.nashorn.internal.runtime.Specialization[]);
descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodHandle;[Ljdk/nashorn/internal/runtime/Specialization;)Ljdk/nashorn/internal/runtime/ScriptFunction;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
iconst_2
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.createBuiltin:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;[Ljdk/nashorn/internal/runtime/Specialization;I)Ljdk/nashorn/internal/runtime/ScriptFunction;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 methodHandle Ljava/lang/invoke/MethodHandle;
0 1 2 specs [Ljdk/nashorn/internal/runtime/Specialization;
MethodParameters:
Name Flags
name final
methodHandle final
specs final
public static jdk.nashorn.internal.runtime.ScriptFunction createBuiltin(java.lang.String, java.lang.invoke.MethodHandle);
descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodHandle;)Ljdk/nashorn/internal/runtime/ScriptFunction;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.createBuiltin:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;[Ljdk/nashorn/internal/runtime/Specialization;)Ljdk/nashorn/internal/runtime/ScriptFunction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 methodHandle Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
name final
methodHandle final
public static jdk.nashorn.internal.runtime.ScriptFunction createStrictBuiltin(java.lang.String, java.lang.invoke.MethodHandle);
descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodHandle;)Ljdk/nashorn/internal/runtime/ScriptFunction;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
iconst_3
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.createBuiltin:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;[Ljdk/nashorn/internal/runtime/Specialization;I)Ljdk/nashorn/internal/runtime/ScriptFunction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 methodHandle Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
name final
methodHandle final
public final jdk.nashorn.internal.runtime.ScriptFunction createBound(java.lang.Object, java.lang.Object[]);
descriptor: (Ljava/lang/Object;[Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/ScriptFunction;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new jdk.nashorn.internal.runtime.ScriptFunction$Bound
dup
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 0
aload 1
aload 2
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.makeBoundFunctionData:(Ljdk/nashorn/internal/runtime/ScriptFunction;Ljava/lang/Object;[Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getTargetFunction:()Ljdk/nashorn/internal/runtime/ScriptFunction;
invokespecial jdk.nashorn.internal.runtime.ScriptFunction$Bound.<init>:(Ljdk/nashorn/internal/runtime/ScriptFunctionData;Ljdk/nashorn/internal/runtime/ScriptFunction;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 1 1 self Ljava/lang/Object;
0 1 2 args [Ljava/lang/Object;
MethodParameters:
Name Flags
self final
args final
public final jdk.nashorn.internal.runtime.ScriptFunction createSynchronized(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/ScriptFunction;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
getstatic jdk.nashorn.internal.runtime.ScriptFunction.INVOKE_SYNC:Ljava/lang/invoke/MethodHandle;
iconst_0
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
dup
iconst_1
aload 1
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
astore 2
start local 2 1: aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getName:()Ljava/lang/String;
aload 2
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.createBuiltin:(Ljava/lang/String;Ljava/lang/invoke/MethodHandle;)Ljdk/nashorn/internal/runtime/ScriptFunction;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 2 1 sync Ljava/lang/Object;
1 2 2 mh Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
sync final
public java.lang.String getClassName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "Function"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public boolean isInstance(jdk.nashorn.internal.runtime.ScriptObject);
descriptor: (Ljdk/nashorn/internal/runtime/ScriptObject;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getTargetFunction:()Ljdk/nashorn/internal/runtime/ScriptFunction;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getPrototype:()Ljava/lang/Object;
astore 2
start local 2 1: aload 2
instanceof jdk.nashorn.internal.runtime.ScriptObject
ifne 3
2: ldc "prototype.not.an.object"
iconst_2
anewarray java.lang.String
dup
iconst_0
aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getTargetFunction:()Ljdk/nashorn/internal/runtime/ScriptFunction;
invokestatic jdk.nashorn.internal.runtime.ScriptRuntime.safeToString:(Ljava/lang/Object;)Ljava/lang/String;
aastore
dup
iconst_1
aload 2
invokestatic jdk.nashorn.internal.runtime.ScriptRuntime.safeToString:(Ljava/lang/Object;)Ljava/lang/String;
aastore
invokestatic jdk.nashorn.internal.runtime.ECMAErrors.typeError:(Ljava/lang/String;[Ljava/lang/String;)Ljdk/nashorn/internal/runtime/ECMAException;
athrow
3: StackMap locals: java.lang.Object
StackMap stack:
aload 1
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.getProto:()Ljdk/nashorn/internal/runtime/ScriptObject;
astore 3
start local 3 4: goto 8
5: StackMap locals: jdk.nashorn.internal.runtime.ScriptObject
StackMap stack:
aload 3
aload 2
if_acmpne 7
6: iconst_1
ireturn
7: StackMap locals:
StackMap stack:
aload 3
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.getProto:()Ljdk/nashorn/internal/runtime/ScriptObject;
astore 3
StackMap locals:
StackMap stack:
8: aload 3
ifnonnull 5
end local 3 9: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 10 1 instance Ljdk/nashorn/internal/runtime/ScriptObject;
1 10 2 basePrototype Ljava/lang/Object;
4 9 3 proto Ljdk/nashorn/internal/runtime/ScriptObject;
MethodParameters:
Name Flags
instance final
protected jdk.nashorn.internal.runtime.ScriptFunction getTargetFunction();
descriptor: ()Ljdk/nashorn/internal/runtime/ScriptFunction;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
final boolean isBoundFunction();
descriptor: ()Z
flags: (0x0010) ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getTargetFunction:()Ljdk/nashorn/internal/runtime/ScriptFunction;
aload 0
if_acmpeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public final void setArity(int);
descriptor: (I)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
iload 1
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.setArity:(I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 2 1 arity I
MethodParameters:
Name Flags
arity final
public final boolean isStrict();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.isStrict:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public boolean hasAllVarsInScope();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
instanceof jdk.nashorn.internal.runtime.RecompilableScriptFunctionData
ifeq 3
1: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
checkcast jdk.nashorn.internal.runtime.RecompilableScriptFunctionData
invokevirtual jdk.nashorn.internal.runtime.RecompilableScriptFunctionData.getFunctionFlags:()I
bipush 96
iand
ifeq 3
2: iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public final boolean needsWrappedThis();
descriptor: ()Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.needsWrappedThis:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
private static boolean needsWrappedThis(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof jdk.nashorn.internal.runtime.ScriptFunction
ifeq 1
aload 0
checkcast jdk.nashorn.internal.runtime.ScriptFunction
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.needsWrappedThis:()Z
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 fn Ljava/lang/Object;
MethodParameters:
Name Flags
fn final
final java.lang.Object invoke(java.lang.Object, java.lang.Object[]);
descriptor: (Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0090) ACC_FINAL, ACC_VARARGS
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic jdk.nashorn.internal.runtime.Context.DEBUG:Z
ifeq 2
1: getstatic jdk.nashorn.internal.runtime.ScriptFunction.invokes:Ljava/util/concurrent/atomic/LongAdder;
invokevirtual java.util.concurrent.atomic.LongAdder.increment:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 0
aload 1
aload 2
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.invoke:(Ljdk/nashorn/internal/runtime/ScriptFunction;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 3 1 self Ljava/lang/Object;
0 3 2 arguments [Ljava/lang/Object;
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
self final
arguments final
final java.lang.Object construct(java.lang.Object[]);
descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0090) ACC_FINAL, ACC_VARARGS
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 0
aload 1
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.construct:(Ljdk/nashorn/internal/runtime/ScriptFunction;[Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 1 1 arguments [Ljava/lang/Object;
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
arguments final
private java.lang.Object allocate();
descriptor: ()Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: getstatic jdk.nashorn.internal.runtime.Context.DEBUG:Z
ifeq 2
1: getstatic jdk.nashorn.internal.runtime.ScriptFunction.allocations:Ljava/util/concurrent/atomic/LongAdder;
invokevirtual java.util.concurrent.atomic.LongAdder.increment:()V
2: StackMap locals:
StackMap stack:
getstatic jdk.nashorn.internal.runtime.ScriptFunction.$assertionsDisabled:Z
ifne 3
aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.isBoundFunction:()Z
ifeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getAllocatorPrototype:()Ljdk/nashorn/internal/runtime/ScriptObject;
astore 1
start local 1 4: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 0
aload 1
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getAllocatorMap:(Ljdk/nashorn/internal/runtime/ScriptObject;)Ljdk/nashorn/internal/runtime/PropertyMap;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.allocate:(Ljdk/nashorn/internal/runtime/PropertyMap;)Ljdk/nashorn/internal/runtime/ScriptObject;
astore 2
start local 2 5: aload 2
ifnull 7
6: aload 2
aload 1
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.setInitialProto:(Ljdk/nashorn/internal/runtime/ScriptObject;)V
7: StackMap locals: jdk.nashorn.internal.runtime.ScriptObject jdk.nashorn.internal.runtime.ScriptObject
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
4 8 1 prototype Ljdk/nashorn/internal/runtime/ScriptObject;
5 8 2 object Ljdk/nashorn/internal/runtime/ScriptObject;
private jdk.nashorn.internal.runtime.PropertyMap getAllocatorMap(jdk.nashorn.internal.runtime.ScriptObject);
descriptor: (Ljdk/nashorn/internal/runtime/ScriptObject;)Ljdk/nashorn/internal/runtime/PropertyMap;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.allocatorMap:Ljdk/nashorn/internal/runtime/PropertyMap;
ifnull 1
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.allocatorMap:Ljdk/nashorn/internal/runtime/PropertyMap;
aload 1
invokevirtual jdk.nashorn.internal.runtime.PropertyMap.isInvalidSharedMapFor:(Ljdk/nashorn/internal/runtime/ScriptObject;)Z
ifeq 2
1: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 1
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.getAllocatorMap:(Ljdk/nashorn/internal/runtime/ScriptObject;)Ljdk/nashorn/internal/runtime/PropertyMap;
putfield jdk.nashorn.internal.runtime.ScriptFunction.allocatorMap:Ljdk/nashorn/internal/runtime/PropertyMap;
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.allocatorMap:Ljdk/nashorn/internal/runtime/PropertyMap;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 3 1 prototype Ljdk/nashorn/internal/runtime/ScriptObject;
MethodParameters:
Name Flags
prototype final
private jdk.nashorn.internal.runtime.ScriptObject getAllocatorPrototype();
descriptor: ()Ljdk/nashorn/internal/runtime/ScriptObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getPrototype:()Ljava/lang/Object;
astore 1
start local 1 1: aload 1
instanceof jdk.nashorn.internal.runtime.ScriptObject
ifeq 3
2: aload 1
checkcast jdk.nashorn.internal.runtime.ScriptObject
areturn
3: StackMap locals: java.lang.Object
StackMap stack:
invokestatic jdk.nashorn.internal.objects.Global.objectPrototype:()Ljdk/nashorn/internal/runtime/ScriptObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
1 4 1 prototype Ljava/lang/Object;
public final java.lang.String safeToString();
descriptor: ()Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.toSource:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public final java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public final java.lang.String toSource();
descriptor: ()Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.toSource:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public final java.lang.Object getPrototype();
descriptor: ()Ljava/lang/Object;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.prototype:Ljava/lang/Object;
getstatic jdk.nashorn.internal.runtime.ScriptFunction.LAZY_PROTOTYPE:Ljava/lang/Object;
if_acmpne 2
1: aload 0
new jdk.nashorn.internal.runtime.PrototypeObject
dup
aload 0
invokespecial jdk.nashorn.internal.runtime.PrototypeObject.<init>:(Ljdk/nashorn/internal/runtime/ScriptFunction;)V
putfield jdk.nashorn.internal.runtime.ScriptFunction.prototype:Ljava/lang/Object;
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.prototype:Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public final void setPrototype(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof jdk.nashorn.internal.runtime.ScriptObject
ifeq 2
aload 1
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.prototype:Ljava/lang/Object;
if_acmpeq 2
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.allocatorMap:Ljdk/nashorn/internal/runtime/PropertyMap;
ifnull 2
1: aload 0
aconst_null
putfield jdk.nashorn.internal.runtime.ScriptFunction.allocatorMap:Ljdk/nashorn/internal/runtime/PropertyMap;
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield jdk.nashorn.internal.runtime.ScriptFunction.prototype:Ljava/lang/Object;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 4 1 newPrototype Ljava/lang/Object;
MethodParameters:
Name Flags
newPrototype final
public final java.lang.invoke.MethodHandle getBoundInvokeHandle(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 0
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.scope:Ljdk/nashorn/internal/runtime/ScriptObject;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.getGenericInvoker:(Ljdk/nashorn/internal/runtime/ScriptObject;)Ljava/lang/invoke/MethodHandle;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.bindToCalleeIfNeeded:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
aload 1
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.bindTo:(Ljava/lang/invoke/MethodHandle;Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 1 1 self Ljava/lang/Object;
MethodParameters:
Name Flags
self final
private java.lang.invoke.MethodHandle bindToCalleeIfNeeded(java.lang.invoke.MethodHandle);
descriptor: (Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic jdk.nashorn.internal.runtime.ScriptFunctionData.needsCallee:(Ljava/lang/invoke/MethodHandle;)Z
ifeq 1
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 1
aload 0
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.bindTo:(Ljava/lang/invoke/MethodHandle;Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
goto 2
StackMap locals:
StackMap stack:
1: aload 1
StackMap locals:
StackMap stack: java.lang.invoke.MethodHandle
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 3 1 methodHandle Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
methodHandle final
public final java.lang.String getDocumentation();
descriptor: ()Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.getDocumentation:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public final java.lang.String getDocumentationKey();
descriptor: ()Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.getDocumentationKey:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public final void setDocumentationKey(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 1
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.setDocumentationKey:(Ljava/lang/String;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 2 1 docKey Ljava/lang/String;
MethodParameters:
Name Flags
docKey final
public final java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.getName:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public final jdk.nashorn.internal.runtime.ScriptObject getScope();
descriptor: ()Ljdk/nashorn/internal/runtime/ScriptObject;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.scope:Ljdk/nashorn/internal/runtime/ScriptObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
public static java.lang.Object G$prototype(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof jdk.nashorn.internal.runtime.ScriptFunction
ifeq 2
1: aload 0
checkcast jdk.nashorn.internal.runtime.ScriptFunction
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getPrototype:()Ljava/lang/Object;
goto 3
2: StackMap locals:
StackMap stack:
getstatic jdk.nashorn.internal.runtime.ScriptRuntime.UNDEFINED:Ljdk/nashorn/internal/runtime/Undefined;
3: StackMap locals:
StackMap stack: java.lang.Object
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 self Ljava/lang/Object;
MethodParameters:
Name Flags
self final
public static void S$prototype(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
instanceof jdk.nashorn.internal.runtime.ScriptFunction
ifeq 2
1: aload 0
checkcast jdk.nashorn.internal.runtime.ScriptFunction
aload 1
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.setPrototype:(Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 self Ljava/lang/Object;
0 3 1 prototype Ljava/lang/Object;
MethodParameters:
Name Flags
self final
prototype final
public static int G$length(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof jdk.nashorn.internal.runtime.ScriptFunction
ifeq 2
1: aload 0
checkcast jdk.nashorn.internal.runtime.ScriptFunction
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.getArity:()I
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 self Ljava/lang/Object;
MethodParameters:
Name Flags
self final
public static java.lang.Object G$name(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof jdk.nashorn.internal.runtime.ScriptFunction
ifeq 2
1: aload 0
checkcast jdk.nashorn.internal.runtime.ScriptFunction
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getName:()Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
getstatic jdk.nashorn.internal.runtime.ScriptRuntime.UNDEFINED:Ljdk/nashorn/internal/runtime/Undefined;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 self Ljava/lang/Object;
MethodParameters:
Name Flags
self final
public static jdk.nashorn.internal.runtime.ScriptObject getPrototype(jdk.nashorn.internal.runtime.ScriptFunction);
descriptor: (Ljdk/nashorn/internal/runtime/ScriptFunction;)Ljdk/nashorn/internal/runtime/ScriptObject;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
ifnull 4
1: aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getPrototype:()Ljava/lang/Object;
astore 1
start local 1 2: aload 1
instanceof jdk.nashorn.internal.runtime.ScriptObject
ifeq 4
3: aload 1
checkcast jdk.nashorn.internal.runtime.ScriptObject
areturn
end local 1 4: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 constructor Ljdk/nashorn/internal/runtime/ScriptFunction;
2 4 1 proto Ljava/lang/Object;
MethodParameters:
Name Flags
constructor final
public static long getConstructorCount();
descriptor: ()J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic jdk.nashorn.internal.runtime.ScriptFunction.constructorCount:Ljava/util/concurrent/atomic/LongAdder;
invokevirtual java.util.concurrent.atomic.LongAdder.longValue:()J
lreturn
LocalVariableTable:
Start End Slot Name Signature
public static long getInvokes();
descriptor: ()J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic jdk.nashorn.internal.runtime.ScriptFunction.invokes:Ljava/util/concurrent/atomic/LongAdder;
invokevirtual java.util.concurrent.atomic.LongAdder.longValue:()J
lreturn
LocalVariableTable:
Start End Slot Name Signature
public static long getAllocations();
descriptor: ()J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic jdk.nashorn.internal.runtime.ScriptFunction.allocations:Ljava/util/concurrent/atomic/LongAdder;
invokevirtual java.util.concurrent.atomic.LongAdder.longValue:()J
lreturn
LocalVariableTable:
Start End Slot Name Signature
protected jdk.dynalink.linker.GuardedInvocation findNewMethod(jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.LinkRequest);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;)Ljdk/dynalink/linker/GuardedInvocation;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
astore 3
start local 3 1: getstatic jdk.nashorn.internal.runtime.ScriptFunction.$assertionsDisabled:Z
ifne 3
aload 1
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
ldc Ljava/lang/Object;
if_acmpne 2
aload 1
invokestatic jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor.isOptimistic:(Ljdk/dynalink/CallSiteDescriptor;)Z
ifeq 3
StackMap locals: java.lang.invoke.MethodType
StackMap stack:
2: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 3
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.scope:Ljdk/nashorn/internal/runtime/ScriptObject;
getstatic jdk.nashorn.internal.runtime.CompiledFunction.NO_FUNCTIONS:Ljava/util/Collection;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.getBestConstructor:(Ljava/lang/invoke/MethodType;Ljdk/nashorn/internal/runtime/ScriptObject;Ljava/util/Collection;)Ljdk/nashorn/internal/runtime/CompiledFunction;
astore 4
start local 4 4: aload 4
invokevirtual jdk.nashorn.internal.runtime.CompiledFunction.createConstructorInvocation:()Ljdk/dynalink/linker/GuardedInvocation;
astore 5
start local 5 5: new jdk.dynalink.linker.GuardedInvocation
dup
aload 5
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
aload 3
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.pairArguments:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
aload 0
aload 4
invokevirtual jdk.nashorn.internal.runtime.CompiledFunction.getFlags:()I
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.getFunctionGuard:(Ljdk/nashorn/internal/runtime/ScriptFunction;I)Ljava/lang/invoke/MethodHandle;
aload 5
invokevirtual jdk.dynalink.linker.GuardedInvocation.getSwitchPoints:()[Ljava/lang/invoke/SwitchPoint;
aconst_null
invokespecial jdk.dynalink.linker.GuardedInvocation.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;[Ljava/lang/invoke/SwitchPoint;Ljava/lang/Class;)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 6 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 6 1 desc Ljdk/dynalink/CallSiteDescriptor;
0 6 2 request Ljdk/dynalink/linker/LinkRequest;
1 6 3 type Ljava/lang/invoke/MethodType;
4 6 4 cf Ljdk/nashorn/internal/runtime/CompiledFunction;
5 6 5 bestCtorInv Ljdk/dynalink/linker/GuardedInvocation;
MethodParameters:
Name Flags
desc final
request final
private static java.lang.Object wrapFilter(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
instanceof jdk.nashorn.internal.runtime.ScriptObject
ifne 1
aload 0
invokestatic jdk.nashorn.internal.runtime.ScriptFunctionData.isPrimitiveThis:(Ljava/lang/Object;)Z
ifne 2
1: StackMap locals:
StackMap stack:
aload 0
areturn
2: StackMap locals:
StackMap stack:
invokestatic jdk.nashorn.internal.runtime.Context.getGlobal:()Ljdk/nashorn/internal/objects/Global;
aload 0
invokevirtual jdk.nashorn.internal.objects.Global.wrapAsObject:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 obj Ljava/lang/Object;
MethodParameters:
Name Flags
obj final
private static java.lang.Object globalFilter(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic jdk.nashorn.internal.runtime.Context.getGlobal:()Ljdk/nashorn/internal/objects/Global;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 object Ljava/lang/Object;
MethodParameters:
Name Flags
object final
private static jdk.nashorn.internal.objects.annotations.SpecializedFunction$LinkLogic getLinkLogic(, java.lang.Class<? extends jdk.nashorn.internal.objects.annotations.SpecializedFunction$LinkLogic>);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Ljdk/nashorn/internal/objects/annotations/SpecializedFunction$LinkLogic;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: getstatic jdk.nashorn.internal.objects.annotations.SpecializedFunction$LinkLogic.EMPTY_INSTANCE:Ljdk/nashorn/internal/objects/annotations/SpecializedFunction$LinkLogic;
areturn
2: StackMap locals:
StackMap stack:
invokestatic jdk.nashorn.internal.runtime.Context.getContextTrusted:()Ljdk/nashorn/internal/runtime/Context;
invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
getfield jdk.nashorn.internal.runtime.ScriptEnvironment._optimistic_types:Z
ifne 4
3: aconst_null
areturn
4: StackMap locals:
StackMap stack:
aload 0
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.wrapFilter:(Ljava/lang/Object;)Ljava/lang/Object;
astore 2
start local 2 5: aload 2
instanceof jdk.nashorn.internal.runtime.OptimisticBuiltins
ifeq 9
6: aload 2
aload 0
if_acmpeq 8
aload 2
checkcast jdk.nashorn.internal.runtime.OptimisticBuiltins
invokeinterface jdk.nashorn.internal.runtime.OptimisticBuiltins.hasPerInstanceAssumptions:()Z
ifeq 8
7: aconst_null
areturn
8: StackMap locals: java.lang.Object
StackMap stack:
aload 2
checkcast jdk.nashorn.internal.runtime.OptimisticBuiltins
aload 1
invokeinterface jdk.nashorn.internal.runtime.OptimisticBuiltins.getLinkLogic:(Ljava/lang/Class;)Ljdk/nashorn/internal/objects/annotations/SpecializedFunction$LinkLogic;
areturn
9: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 self Ljava/lang/Object;
0 10 1 linkLogicClass Ljava/lang/Class<+Ljdk/nashorn/internal/objects/annotations/SpecializedFunction$LinkLogic;>;
5 10 2 wrappedSelf Ljava/lang/Object;
Signature: (Ljava/lang/Object;Ljava/lang/Class<+Ljdk/nashorn/internal/objects/annotations/SpecializedFunction$LinkLogic;>;)Ljdk/nashorn/internal/objects/annotations/SpecializedFunction$LinkLogic;
MethodParameters:
Name Flags
self final
linkLogicClass final
protected jdk.dynalink.linker.GuardedInvocation findCallMethod(jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.LinkRequest);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;)Ljdk/dynalink/linker/GuardedInvocation;
flags: (0x0004) ACC_PROTECTED
Code:
stack=8, locals=21, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
astore 3
start local 3 1: aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.getName:()Ljava/lang/String;
astore 4
start local 4 2: aload 2
invokeinterface jdk.dynalink.linker.LinkRequest.isCallSiteUnstable:()Z
istore 5
start local 5 3: aload 1
invokestatic jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor.isScope:(Ljdk/dynalink/CallSiteDescriptor;)Z
istore 6
start local 6 4: iload 6
ifne 5
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.isBuiltin:()Z
ifeq 5
ldc "call"
aload 4
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
iconst_1
goto 6
StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.invoke.MethodType java.lang.String int int
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 7
start local 7 7: iload 6
ifne 8
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.isBuiltin:()Z
ifeq 8
ldc "apply"
aload 4
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 8
iconst_1
goto 9
StackMap locals: int
StackMap stack:
8: iconst_0
StackMap locals:
StackMap stack: int
9: istore 8
start local 8 10: iload 7
iload 8
ior
istore 9
start local 9 11: iload 5
ifeq 22
iload 9
ifne 22
12: aload 3
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
iconst_3
if_icmpne 15
aload 3
iconst_2
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
ldc [Ljava/lang/Object;
if_acmpne 15
13: getstatic jdk.nashorn.internal.runtime.ScriptRuntime.APPLY:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.methodHandle:()Ljava/lang/invoke/MethodHandle;
astore 10
start local 10 14: goto 16
end local 10 15: StackMap locals: int int
StackMap stack:
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
getstatic jdk.nashorn.internal.runtime.ScriptRuntime.APPLY:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.methodHandle:()Ljava/lang/invoke/MethodHandle;
ldc [Ljava/lang/Object;
aload 3
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
iconst_2
isub
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.asCollector:(Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;I)Ljava/lang/invoke/MethodHandle;
astore 10
start local 10 16: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
new jdk.dynalink.linker.GuardedInvocation
dup
17: aload 10
18: aconst_null
19: aconst_null
20: ldc Ljava/lang/ClassCastException;
21: invokespecial jdk.dynalink.linker.GuardedInvocation.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/SwitchPoint;Ljava/lang/Class;)V
areturn
end local 10 22: StackMap locals:
StackMap stack:
aconst_null
astore 11
start local 11 23: iload 9
ifeq 27
iload 5
ifne 27
24: aload 2
invokeinterface jdk.dynalink.linker.LinkRequest.getArguments:()[Ljava/lang/Object;
astore 12
start local 12 25: aload 12
iconst_1
aaload
invokestatic jdk.nashorn.internal.runtime.linker.Bootstrap.isCallable:(Ljava/lang/Object;)Z
ifeq 27
26: aload 0
iload 8
aload 1
aload 2
aload 12
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.createApplyOrCallCall:(ZLjdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;[Ljava/lang/Object;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
end local 12 27: StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.invoke.MethodType java.lang.String int int int int int top java.lang.invoke.MethodHandle
StackMap stack:
iconst_m1
istore 12
start local 12 28: aload 1
invokestatic jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor.isOptimistic:(Ljdk/dynalink/CallSiteDescriptor;)Z
ifeq 30
29: aload 1
invokestatic jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor.getProgramPoint:(Ljdk/dynalink/CallSiteDescriptor;)I
istore 12
30: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 3
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.scope:Ljdk/nashorn/internal/runtime/ScriptObject;
getstatic jdk.nashorn.internal.runtime.CompiledFunction.NO_FUNCTIONS:Ljava/util/Collection;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.getBestInvoker:(Ljava/lang/invoke/MethodType;Ljdk/nashorn/internal/runtime/ScriptObject;Ljava/util/Collection;)Ljdk/nashorn/internal/runtime/CompiledFunction;
astore 13
start local 13 31: aload 2
invokeinterface jdk.dynalink.linker.LinkRequest.getArguments:()[Ljava/lang/Object;
iconst_1
aaload
astore 14
start local 14 32: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 15
start local 15 33: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 16
start local 16 34: aconst_null
astore 17
start local 17 35: goto 48
36: StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.invoke.MethodType java.lang.String int int int int int top java.lang.invoke.MethodHandle int jdk.nashorn.internal.runtime.CompiledFunction java.lang.Object java.util.Collection java.util.List java.lang.Class
StackMap stack:
aload 13
invokevirtual jdk.nashorn.internal.runtime.CompiledFunction.getLinkLogicClass:()Ljava/lang/Class;
astore 18
start local 18 37: aload 14
aload 18
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.getLinkLogic:(Ljava/lang/Object;Ljava/lang/Class;)Ljdk/nashorn/internal/objects/annotations/SpecializedFunction$LinkLogic;
astore 19
start local 19 38: aload 19
ifnull 44
aload 19
aload 14
aload 1
aload 2
invokevirtual jdk.nashorn.internal.objects.annotations.SpecializedFunction$LinkLogic.checkLinkable:(Ljava/lang/Object;Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;)Z
ifeq 44
39: invokestatic jdk.nashorn.internal.runtime.Context.getContextTrusted:()Ljdk/nashorn/internal/runtime/Context;
ldc Ljdk/nashorn/internal/codegen/Compiler;
invokevirtual jdk.nashorn.internal.runtime.Context.getLogger:(Ljava/lang/Class;)Ljdk/nashorn/internal/runtime/logging/DebugLogger;
astore 20
start local 20 40: aload 20
invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.isEnabled:()Z
ifeq 42
41: aload 20
bipush 6
anewarray java.lang.Object
dup
iconst_0
ldc "Linking optimistic builtin function: '"
aastore
dup
iconst_1
aload 4
aastore
dup
iconst_2
ldc "' args="
aastore
dup
iconst_3
aload 2
invokeinterface jdk.dynalink.linker.LinkRequest.getArguments:()[Ljava/lang/Object;
invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
aastore
dup
iconst_4
ldc " desc="
aastore
dup
iconst_5
aload 1
aastore
invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.info:([Ljava/lang/Object;)V
42: StackMap locals: java.lang.Class jdk.nashorn.internal.objects.annotations.SpecializedFunction$LinkLogic jdk.nashorn.internal.runtime.logging.DebugLogger
StackMap stack:
aload 19
invokevirtual jdk.nashorn.internal.objects.annotations.SpecializedFunction$LinkLogic.getRelinkException:()Ljava/lang/Class;
astore 17
43: goto 49
end local 20 44: StackMap locals:
StackMap stack:
aload 15
aload 13
invokeinterface java.util.Collection.add:(Ljava/lang/Object;)Z
pop
45: aload 13
astore 20
start local 20 46: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 3
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.scope:Ljdk/nashorn/internal/runtime/ScriptObject;
aload 15
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.getBestInvoker:(Ljava/lang/invoke/MethodType;Ljdk/nashorn/internal/runtime/ScriptObject;Ljava/util/Collection;)Ljdk/nashorn/internal/runtime/CompiledFunction;
astore 13
47: getstatic jdk.nashorn.internal.runtime.ScriptFunction.$assertionsDisabled:Z
ifne 48
aload 20
aload 13
if_acmpne 48
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 20 end local 19 end local 18 48: StackMap locals:
StackMap stack:
aload 13
invokevirtual jdk.nashorn.internal.runtime.CompiledFunction.isSpecialization:()Z
ifne 36
49: StackMap locals:
StackMap stack:
aload 13
aload 3
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
iload 12
invokevirtual jdk.nashorn.internal.runtime.CompiledFunction.createFunctionInvocation:(Ljava/lang/Class;I)Ljdk/dynalink/linker/GuardedInvocation;
astore 18
start local 18 50: aload 18
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
astore 19
start local 19 51: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.needsCallee:()Z
ifeq 57
52: iload 6
ifeq 55
aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.needsWrappedThis:()Z
ifeq 55
53: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 19
iconst_1
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
getstatic jdk.nashorn.internal.runtime.ScriptFunction.SCRIPTFUNCTION_GLOBALFILTER:Ljava/lang/invoke/MethodHandle;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 10
start local 10 54: goto 68
end local 10 55: StackMap locals: jdk.dynalink.linker.GuardedInvocation java.lang.invoke.MethodHandle
StackMap stack:
aload 19
astore 10
start local 10 56: goto 68
end local 10 StackMap locals:
StackMap stack:
57: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.isBuiltin:()Z
ifeq 60
aload 0
invokestatic jdk.nashorn.internal.objects.Global.isBuiltInJavaExtend:(Ljdk/nashorn/internal/runtime/ScriptFunction;)Z
ifeq 60
58: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 19
aload 1
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.getLookupPrivileged:(Ljdk/dynalink/CallSiteDescriptor;)Ljava/lang/invoke/MethodHandles$Lookup;
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.bindTo:(Ljava/lang/invoke/MethodHandle;Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
iconst_0
iconst_2
anewarray java.lang.Class
dup
iconst_0
aload 3
iconst_0
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
aastore
dup
iconst_1
aload 3
iconst_1
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 10
start local 10 59: goto 68
end local 10 StackMap locals:
StackMap stack:
60: aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.isBuiltin:()Z
ifeq 63
aload 0
invokestatic jdk.nashorn.internal.objects.Global.isBuiltInJavaTo:(Ljdk/nashorn/internal/runtime/ScriptFunction;)Z
ifeq 63
61: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 19
aload 1
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.bindTo:(Ljava/lang/invoke/MethodHandle;Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
iconst_0
iconst_2
anewarray java.lang.Class
dup
iconst_0
aload 3
iconst_0
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
aastore
dup
iconst_1
aload 3
iconst_1
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 10
start local 10 62: goto 68
end local 10 StackMap locals:
StackMap stack:
63: iload 6
ifeq 67
aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.needsWrappedThis:()Z
ifeq 67
64: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 19
iconst_0
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
getstatic jdk.nashorn.internal.runtime.ScriptFunction.SCRIPTFUNCTION_GLOBALFILTER:Ljava/lang/invoke/MethodHandle;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 10
start local 10 65: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 10
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
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 10
66: goto 68
end local 10 67: StackMap locals:
StackMap stack:
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 19
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
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 10
start local 10 68: StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.invoke.MethodType java.lang.String int int int int int java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle int jdk.nashorn.internal.runtime.CompiledFunction java.lang.Object java.util.Collection java.util.List java.lang.Class jdk.dynalink.linker.GuardedInvocation java.lang.invoke.MethodHandle
StackMap stack:
iload 6
ifne 73
aload 0
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.needsWrappedThis:()Z
ifeq 73
69: aload 2
invokeinterface jdk.dynalink.linker.LinkRequest.getArguments:()[Ljava/lang/Object;
iconst_1
aaload
invokestatic jdk.nashorn.internal.runtime.ScriptFunctionData.isPrimitiveThis:(Ljava/lang/Object;)Z
ifeq 72
70: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 10
iconst_1
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
getstatic jdk.nashorn.internal.runtime.ScriptFunction.WRAPFILTER:Ljava/lang/invoke/MethodHandle;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 10
71: goto 73
72: StackMap locals:
StackMap stack:
aload 0
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.getNonStrictFunctionGuard:(Ljdk/nashorn/internal/runtime/ScriptFunction;)Ljava/lang/invoke/MethodHandle;
astore 11
73: StackMap locals:
StackMap stack:
iload 5
ifeq 75
aload 1
invokestatic jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor.isApplyToCall:(Ljdk/dynalink/CallSiteDescriptor;)Z
ifeq 75
74: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 10
ldc [Ljava/lang/Object;
aload 3
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
iconst_2
isub
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.asCollector:(Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;I)Ljava/lang/invoke/MethodHandle;
astore 10
75: StackMap locals:
StackMap stack:
aload 10
aload 3
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.pairArguments:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
astore 10
76: aload 18
invokevirtual jdk.dynalink.linker.GuardedInvocation.getSwitchPoints:()[Ljava/lang/invoke/SwitchPoint;
ifnull 78
77: aload 16
aload 18
invokevirtual jdk.dynalink.linker.GuardedInvocation.getSwitchPoints:()[Ljava/lang/invoke/SwitchPoint;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
78: StackMap locals:
StackMap stack:
aload 16
invokeinterface java.util.List.isEmpty:()Z
ifeq 79
aconst_null
goto 80
StackMap locals:
StackMap stack:
79: aload 16
iconst_0
anewarray java.lang.invoke.SwitchPoint
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.invoke.SwitchPoint[]
StackMap locals:
StackMap stack: java.lang.invoke.SwitchPoint[]
80: astore 20
start local 20 81: new jdk.dynalink.linker.GuardedInvocation
dup
82: aload 10
83: aload 11
ifnonnull 88
84: aload 0
85: aload 13
invokevirtual jdk.nashorn.internal.runtime.CompiledFunction.getFlags:()I
86: invokestatic jdk.nashorn.internal.runtime.ScriptFunction.getFunctionGuard:(Ljdk/nashorn/internal/runtime/ScriptFunction;I)Ljava/lang/invoke/MethodHandle;
87: goto 89
88: StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.invoke.MethodType java.lang.String int int int int int java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle int jdk.nashorn.internal.runtime.CompiledFunction java.lang.Object java.util.Collection java.util.List java.lang.Class jdk.dynalink.linker.GuardedInvocation java.lang.invoke.MethodHandle java.lang.invoke.SwitchPoint[]
StackMap stack: new 81 new 81 java.lang.invoke.MethodHandle
aload 11
89: StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.invoke.MethodType java.lang.String int int int int int java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle int jdk.nashorn.internal.runtime.CompiledFunction java.lang.Object java.util.Collection java.util.List java.lang.Class jdk.dynalink.linker.GuardedInvocation java.lang.invoke.MethodHandle java.lang.invoke.SwitchPoint[]
StackMap stack: new 81 new 81 java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle
aload 20
90: aload 17
91: invokespecial jdk.dynalink.linker.GuardedInvocation.<init>:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;[Ljava/lang/invoke/SwitchPoint;Ljava/lang/Class;)V
areturn
end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 92 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 92 1 desc Ljdk/dynalink/CallSiteDescriptor;
0 92 2 request Ljdk/dynalink/linker/LinkRequest;
1 92 3 type Ljava/lang/invoke/MethodType;
2 92 4 name Ljava/lang/String;
3 92 5 isUnstable Z
4 92 6 scopeCall Z
7 92 7 isCall Z
10 92 8 isApply Z
11 92 9 isApplyOrCall Z
14 15 10 handle Ljava/lang/invoke/MethodHandle;
16 22 10 handle Ljava/lang/invoke/MethodHandle;
54 55 10 boundHandle Ljava/lang/invoke/MethodHandle;
56 57 10 boundHandle Ljava/lang/invoke/MethodHandle;
59 60 10 boundHandle Ljava/lang/invoke/MethodHandle;
62 63 10 boundHandle Ljava/lang/invoke/MethodHandle;
65 67 10 boundHandle Ljava/lang/invoke/MethodHandle;
68 92 10 boundHandle Ljava/lang/invoke/MethodHandle;
23 92 11 guard Ljava/lang/invoke/MethodHandle;
25 27 12 args [Ljava/lang/Object;
28 92 12 programPoint I
31 92 13 cf Ljdk/nashorn/internal/runtime/CompiledFunction;
32 92 14 self Ljava/lang/Object;
33 92 15 forbidden Ljava/util/Collection<Ljdk/nashorn/internal/runtime/CompiledFunction;>;
34 92 16 sps Ljava/util/List<Ljava/lang/invoke/SwitchPoint;>;
35 92 17 exceptionGuard Ljava/lang/Class<+Ljava/lang/Throwable;>;
37 48 18 linkLogicClass Ljava/lang/Class<+Ljdk/nashorn/internal/objects/annotations/SpecializedFunction$LinkLogic;>;
38 48 19 linkLogic Ljdk/nashorn/internal/objects/annotations/SpecializedFunction$LinkLogic;
40 44 20 log Ljdk/nashorn/internal/runtime/logging/DebugLogger;
46 48 20 oldCf Ljdk/nashorn/internal/runtime/CompiledFunction;
50 92 18 bestInvoker Ljdk/dynalink/linker/GuardedInvocation;
51 92 19 callHandle Ljava/lang/invoke/MethodHandle;
81 92 20 spsArray [Ljava/lang/invoke/SwitchPoint;
MethodParameters:
Name Flags
desc final
request final
private static java.lang.invoke.MethodHandles$Lookup getLookupPrivileged(jdk.dynalink.CallSiteDescriptor);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;)Ljava/lang/invoke/MethodHandles$Lookup;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokedynamic run(Ljdk/dynalink/CallSiteDescriptor;)Ljava/security/PrivilegedAction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
jdk/nashorn/internal/runtime/ScriptFunction.lambda$0(Ljdk/dynalink/CallSiteDescriptor;)Ljava/lang/invoke/MethodHandles$Lookup; (6)
()Ljava/lang/invoke/MethodHandles$Lookup;
1: getstatic jdk.nashorn.internal.runtime.ScriptFunction.GET_LOOKUP_PERMISSION_CONTEXT:Ljava/security/AccessControlContext;
2: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;
checkcast java.lang.invoke.MethodHandles$Lookup
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 desc Ljdk/dynalink/CallSiteDescriptor;
MethodParameters:
Name Flags
desc final
private jdk.dynalink.linker.GuardedInvocation createApplyOrCallCall(boolean, jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.LinkRequest, java.lang.Object[]);
descriptor: (ZLjdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;[Ljava/lang/Object;)Ljdk/dynalink/linker/GuardedInvocation;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=26, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
astore 5
start local 5 1: aload 5
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
istore 6
start local 6 2: aload 5
iload 6
iconst_1
isub
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
invokevirtual java.lang.Class.isArray:()Z
ifeq 4
3: aload 0
iload 1
aload 2
aload 3
aload 4
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.createVarArgApplyOrCallCall:(ZLjdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;[Ljava/lang/Object;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
4: StackMap locals: java.lang.invoke.MethodType int
StackMap stack:
iload 6
iconst_2
if_icmple 5
iconst_1
goto 6
StackMap locals:
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 7
start local 7 7: iload 6
iconst_3
if_icmple 8
iconst_1
goto 9
StackMap locals: int
StackMap stack:
8: iconst_0
StackMap locals:
StackMap stack: int
9: istore 8
start local 8 10: iload 8
ifeq 11
iload 6
iconst_3
isub
goto 12
StackMap locals: int
StackMap stack:
11: iconst_0
StackMap locals:
StackMap stack: int
12: istore 9
start local 9 13: aload 4
iconst_1
aaload
astore 10
start local 10 14: aload 10
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.needsWrappedThis:(Ljava/lang/Object;)Z
istore 11
start local 11 15: aload 2
astore 12
start local 12 16: invokestatic jdk.nashorn.internal.objects.Global.getBuiltinFunctionApplySwitchPoint:()Ljava/lang/invoke/SwitchPoint;
astore 13
start local 13 17: aload 2
invokestatic jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor.isApplyToCall:(Ljdk/dynalink/CallSiteDescriptor;)Z
istore 14
start local 14 18: iload 14
ifeq 19
aload 13
invokevirtual java.lang.invoke.SwitchPoint.hasBeenInvalidated:()Z
ifeq 19
iconst_1
goto 20
StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction int jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.Object[] java.lang.invoke.MethodType int int int int java.lang.Object int jdk.dynalink.CallSiteDescriptor java.lang.invoke.SwitchPoint int
StackMap stack:
19: iconst_0
StackMap locals:
StackMap stack: int
20: istore 15
start local 15 21: aload 5
iconst_0
iconst_1
invokevirtual java.lang.invoke.MethodType.dropParameterTypes:(II)Ljava/lang/invoke/MethodType;
astore 16
start local 16 22: iload 7
ifne 25
23: aload 16
iconst_1
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;
astore 16
24: goto 27
StackMap locals: int java.lang.invoke.MethodType
StackMap stack:
25: iload 11
ifeq 27
26: aload 16
iconst_1
ldc Ljava/lang/Object;
invokevirtual java.lang.invoke.MethodType.changeParameterType:(ILjava/lang/Class;)Ljava/lang/invoke/MethodType;
astore 16
27: StackMap locals:
StackMap stack:
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
iconst_0
anewarray java.lang.Class
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.type:(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
astore 17
start local 17 28: iload 1
ifeq 37
iload 15
ifne 37
29: aload 16
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
istore 18
start local 18 30: iconst_3
istore 19
start local 19 31: goto 34
32: StackMap locals: java.lang.invoke.MethodType int int
StackMap stack:
aload 17
iconst_1
anewarray java.lang.Class
dup
iconst_0
aload 16
iload 19
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
aastore
invokevirtual java.lang.invoke.MethodType.appendParameterTypes:([Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
astore 17
33: iinc 19 1
StackMap locals:
StackMap stack:
34: iload 19
iload 18
if_icmplt 32
end local 19 35: iload 18
iconst_3
if_icmple 37
36: aload 16
iconst_3
iload 18
invokevirtual java.lang.invoke.MethodType.dropParameterTypes:(II)Ljava/lang/invoke/MethodType;
astore 16
end local 18 37: StackMap locals:
StackMap stack:
iload 1
ifne 38
iload 15
ifeq 44
38: StackMap locals:
StackMap stack:
iload 8
ifeq 43
39: aload 16
iconst_2
ldc [Ljava/lang/Object;
invokevirtual java.lang.invoke.MethodType.changeParameterType:(ILjava/lang/Class;)Ljava/lang/invoke/MethodType;
astore 16
40: iload 15
ifeq 44
41: aload 16
iconst_3
iload 6
iconst_1
isub
invokevirtual java.lang.invoke.MethodType.dropParameterTypes:(II)Ljava/lang/invoke/MethodType;
astore 16
42: goto 44
43: StackMap locals:
StackMap stack:
aload 16
iconst_2
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;
astore 16
44: StackMap locals:
StackMap stack:
aload 12
aload 16
invokevirtual jdk.dynalink.CallSiteDescriptor.changeMethodType:(Ljava/lang/invoke/MethodType;)Ljdk/dynalink/CallSiteDescriptor;
astore 12
45: iload 1
ifeq 46
iconst_3
goto 47
StackMap locals:
StackMap stack:
46: aload 16
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
StackMap locals:
StackMap stack: int
47: anewarray java.lang.Object
astore 18
start local 18 48: aload 18
iconst_0
aload 10
aastore
49: aload 18
iconst_1
iload 7
ifeq 51
iload 11
ifeq 50
aload 4
iconst_2
aaload
invokestatic jdk.nashorn.internal.runtime.ScriptFunctionData.wrapThis:(Ljava/lang/Object;)Ljava/lang/Object;
goto 52
StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction int jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.Object[] java.lang.invoke.MethodType int int int int java.lang.Object int jdk.dynalink.CallSiteDescriptor java.lang.invoke.SwitchPoint int int java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.Object[]
StackMap stack: java.lang.Object[] int
50: aload 4
iconst_2
aaload
goto 52
StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction int jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.Object[] java.lang.invoke.MethodType int int int int java.lang.Object int jdk.dynalink.CallSiteDescriptor java.lang.invoke.SwitchPoint int int java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.Object[]
StackMap stack: java.lang.Object[] int
51: getstatic jdk.nashorn.internal.runtime.ScriptRuntime.UNDEFINED:Ljdk/nashorn/internal/runtime/Undefined;
StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction int jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.Object[] java.lang.invoke.MethodType int int int int java.lang.Object int jdk.dynalink.CallSiteDescriptor java.lang.invoke.SwitchPoint int int java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.Object[]
StackMap stack: java.lang.Object[] int java.lang.Object
52: aastore
53: iload 1
ifeq 58
iload 15
ifne 58
54: aload 18
iconst_2
iload 8
ifeq 55
aload 4
iconst_3
aaload
invokestatic jdk.nashorn.internal.objects.NativeFunction.toApplyArgs:(Ljava/lang/Object;)[Ljava/lang/Object;
goto 56
StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction int jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.Object[] java.lang.invoke.MethodType int int int int java.lang.Object int jdk.dynalink.CallSiteDescriptor java.lang.invoke.SwitchPoint int int java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.Object[]
StackMap stack: java.lang.Object[] int
55: getstatic jdk.nashorn.internal.runtime.ScriptRuntime.EMPTY_ARRAY:[Ljava/lang/Object;
StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction int jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.Object[] java.lang.invoke.MethodType int int int int java.lang.Object int jdk.dynalink.CallSiteDescriptor java.lang.invoke.SwitchPoint int int java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.Object[]
StackMap stack: java.lang.Object[] int java.lang.Object[]
56: aastore
57: goto 69
58: StackMap locals:
StackMap stack:
iload 8
ifeq 67
59: iload 15
ifeq 64
60: aload 4
arraylength
iconst_3
isub
anewarray java.lang.Object
astore 19
start local 19 61: aload 4
iconst_3
aload 19
iconst_0
aload 19
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
62: aload 18
iconst_2
aload 19
invokestatic jdk.nashorn.internal.objects.NativeFunction.toApplyArgs:(Ljava/lang/Object;)[Ljava/lang/Object;
aastore
end local 19 63: goto 69
64: StackMap locals:
StackMap stack:
getstatic jdk.nashorn.internal.runtime.ScriptFunction.$assertionsDisabled:Z
ifne 65
iload 1
ifeq 65
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
65: StackMap locals:
StackMap stack:
aload 4
iconst_3
aload 18
iconst_2
aload 4
arraylength
iconst_3
isub
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
66: goto 69
StackMap locals:
StackMap stack:
67: iload 15
ifeq 69
68: aload 18
iconst_2
getstatic jdk.nashorn.internal.runtime.ScriptRuntime.EMPTY_ARRAY:[Ljava/lang/Object;
aastore
69: StackMap locals:
StackMap stack:
aload 3
aload 12
aload 18
invokeinterface jdk.dynalink.linker.LinkRequest.replaceArguments:(Ljdk/dynalink/CallSiteDescriptor;[Ljava/lang/Object;)Ljdk/dynalink/linker/LinkRequest;
astore 19
start local 19 70: invokestatic jdk.nashorn.internal.runtime.linker.Bootstrap.getLinkerServices:()Ljdk/dynalink/linker/LinkerServices;
aload 19
invokeinterface jdk.dynalink.linker.LinkerServices.getGuardedInvocation:(Ljdk/dynalink/linker/LinkRequest;)Ljdk/dynalink/linker/GuardedInvocation;
astore 20
start local 20 71: goto 76
end local 20 StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction int jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest java.lang.Object[] java.lang.invoke.MethodType int int int int java.lang.Object int jdk.dynalink.CallSiteDescriptor java.lang.invoke.SwitchPoint int int java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.Object[] jdk.dynalink.linker.LinkRequest
StackMap stack: java.lang.Throwable
72: astore 21
start local 21 73: aload 21
athrow
end local 21 74: StackMap locals:
StackMap stack: java.lang.Exception
astore 21
start local 21 75: new java.lang.RuntimeException
dup
aload 21
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 21 start local 20 76: StackMap locals: jdk.dynalink.linker.GuardedInvocation
StackMap stack:
getstatic jdk.nashorn.internal.runtime.ScriptFunction.$assertionsDisabled:Z
ifne 77
aload 19
ifnonnull 77
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
77: StackMap locals:
StackMap stack:
aload 5
iconst_0
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
astore 21
start local 21 78: aload 20
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
astore 22
start local 22 79: aload 20
invokevirtual jdk.dynalink.linker.GuardedInvocation.getGuard:()Ljava/lang/invoke/MethodHandle;
astore 23
start local 23 80: iload 1
ifeq 87
iload 15
ifne 87
81: iload 8
ifeq 86
82: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 22
iconst_2
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
getstatic jdk.nashorn.internal.objects.NativeFunction.TO_APPLY_ARGS:Ljava/lang/invoke/MethodHandle;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 22
83: aload 23
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
iconst_2
if_icmple 87
84: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 23
iconst_2
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
getstatic jdk.nashorn.internal.objects.NativeFunction.TO_APPLY_ARGS:Ljava/lang/invoke/MethodHandle;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 23
85: goto 87
86: StackMap locals: java.lang.Class java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle
StackMap stack:
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 22
iconst_2
iconst_1
anewarray java.lang.Object
dup
iconst_0
getstatic jdk.nashorn.internal.runtime.ScriptRuntime.EMPTY_ARRAY:[Ljava/lang/Object;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
astore 22
87: StackMap locals:
StackMap stack:
iload 14
ifeq 93
88: iload 15
ifeq 92
89: invokestatic jdk.nashorn.internal.runtime.Context.getContextTrusted:()Ljdk/nashorn/internal/runtime/Context;
ldc Ljdk/nashorn/internal/codegen/ApplySpecialization;
invokevirtual jdk.nashorn.internal.runtime.Context.getLogger:(Ljava/lang/Class;)Ljdk/nashorn/internal/runtime/logging/DebugLogger;
new java.lang.StringBuilder
dup
ldc "Collection arguments to revert call to apply in "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.info:(Ljava/lang/String;)V
90: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 22
ldc [Ljava/lang/Object;
iload 9
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.asCollector:(Ljava/lang/invoke/MethodHandle;Ljava/lang/Class;I)Ljava/lang/invoke/MethodHandle;
astore 22
91: goto 93
92: StackMap locals:
StackMap stack:
aload 20
aload 13
invokevirtual jdk.dynalink.linker.GuardedInvocation.addSwitchPoint:(Ljava/lang/invoke/SwitchPoint;)Ljdk/dynalink/linker/GuardedInvocation;
astore 20
93: StackMap locals:
StackMap stack:
iload 7
ifne 98
94: iload 11
aload 22
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.bindImplicitThis:(ZLjava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 22
95: aload 23
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
iconst_1
if_icmple 102
96: iload 11
aload 23
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.bindImplicitThis:(ZLjava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 23
97: goto 102
StackMap locals:
StackMap stack:
98: iload 11
ifeq 102
99: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 22
iconst_1
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
getstatic jdk.nashorn.internal.runtime.ScriptFunction.WRAP_THIS:Ljava/lang/invoke/MethodHandle;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 22
100: aload 23
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
iconst_1
if_icmple 102
101: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 23
iconst_1
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
getstatic jdk.nashorn.internal.runtime.ScriptFunction.WRAP_THIS:Ljava/lang/invoke/MethodHandle;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 23
102: StackMap locals:
StackMap stack:
aload 23
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
astore 24
start local 24 103: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 22
iconst_0
iconst_1
anewarray java.lang.Class
dup
iconst_0
aload 21
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 22
104: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 23
iconst_0
iconst_1
anewarray java.lang.Class
dup
iconst_0
aload 21
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 23
105: iconst_0
istore 25
start local 25 106: goto 109
107: StackMap locals: java.lang.invoke.MethodType int
StackMap stack:
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 22
iconst_4
iload 25
iadd
iconst_1
anewarray java.lang.Class
dup
iconst_0
aload 17
iload 25
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 22
108: iinc 25 1
StackMap locals:
StackMap stack:
109: iload 25
aload 17
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
if_icmplt 107
end local 25 110: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
getstatic jdk.nashorn.internal.runtime.ScriptFunction.IS_APPLY_FUNCTION:Ljava/lang/invoke/MethodHandle;
iconst_2
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
astore 25
start local 25 111: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 25
iconst_2
aload 24
invokevirtual java.lang.invoke.MethodType.parameterArray:()[Ljava/lang/Class;
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
astore 25
112: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 25
aload 23
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.foldArguments:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 23
113: aload 20
aload 22
aload 23
invokevirtual jdk.dynalink.linker.GuardedInvocation.replaceMethods:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
end local 25 end local 24 end local 23 end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 114 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 114 1 isApply Z
0 114 2 desc Ljdk/dynalink/CallSiteDescriptor;
0 114 3 request Ljdk/dynalink/linker/LinkRequest;
0 114 4 args [Ljava/lang/Object;
1 114 5 descType Ljava/lang/invoke/MethodType;
2 114 6 paramCount I
7 114 7 passesThis Z
10 114 8 passesArgs Z
13 114 9 realArgCount I
14 114 10 appliedFn Ljava/lang/Object;
15 114 11 appliedFnNeedsWrappedThis Z
16 114 12 appliedDesc Ljdk/dynalink/CallSiteDescriptor;
17 114 13 applyToCallSwitchPoint Ljava/lang/invoke/SwitchPoint;
18 114 14 isApplyToCall Z
21 114 15 isFailedApplyToCall Z
22 114 16 appliedType Ljava/lang/invoke/MethodType;
28 114 17 dropArgs Ljava/lang/invoke/MethodType;
30 37 18 pc I
31 35 19 i I
48 114 18 appliedArgs [Ljava/lang/Object;
61 63 19 tmp [Ljava/lang/Object;
70 114 19 appliedRequest Ljdk/dynalink/linker/LinkRequest;
71 72 20 appliedInvocation Ljdk/dynalink/linker/GuardedInvocation;
76 114 20 appliedInvocation Ljdk/dynalink/linker/GuardedInvocation;
73 74 21 e Ljava/lang/Throwable;
75 76 21 e Ljava/lang/Exception;
78 114 21 applyFnType Ljava/lang/Class<*>;
79 114 22 inv Ljava/lang/invoke/MethodHandle;
80 114 23 guard Ljava/lang/invoke/MethodHandle;
103 114 24 guardType Ljava/lang/invoke/MethodType;
106 110 25 i I
111 114 25 applyFnGuard Ljava/lang/invoke/MethodHandle;
Exception table:
from to target type
70 71 72 Class java.lang.RuntimeException
70 71 72 Class java.lang.Error
70 71 74 Class java.lang.Exception
MethodParameters:
Name Flags
isApply final
desc final
request final
args final
private jdk.dynalink.linker.GuardedInvocation createVarArgApplyOrCallCall(boolean, jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.LinkRequest, java.lang.Object[]);
descriptor: (ZLjdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;[Ljava/lang/Object;)Ljdk/dynalink/linker/GuardedInvocation;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=15, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
astore 5
start local 5 1: aload 5
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
istore 6
start local 6 2: aload 4
iload 6
iconst_1
isub
aaload
checkcast java.lang.Object[]
astore 7
start local 7 3: aload 4
arraylength
iconst_1
isub
istore 8
start local 8 4: aload 7
arraylength
istore 9
start local 9 5: iload 8
iload 9
iadd
anewarray java.lang.Object
astore 10
start local 10 6: aload 4
iconst_0
aload 10
iconst_0
iload 8
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
7: aload 7
iconst_0
aload 10
iload 8
iload 9
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
8: aload 5
iload 6
iconst_1
isub
iload 6
invokevirtual java.lang.invoke.MethodType.dropParameterTypes:(II)Ljava/lang/invoke/MethodType;
9: iload 9
ldc Ljava/lang/Object;
invokestatic java.util.Collections.nCopies:(ILjava/lang/Object;)Ljava/util/List;
10: invokevirtual java.lang.invoke.MethodType.appendParameterTypes:(Ljava/util/List;)Ljava/lang/invoke/MethodType;
astore 11
start local 11 11: aload 2
aload 11
invokevirtual jdk.dynalink.CallSiteDescriptor.changeMethodType:(Ljava/lang/invoke/MethodType;)Ljdk/dynalink/CallSiteDescriptor;
astore 12
start local 12 12: aload 3
aload 12
aload 10
invokeinterface jdk.dynalink.linker.LinkRequest.replaceArguments:(Ljdk/dynalink/CallSiteDescriptor;[Ljava/lang/Object;)Ljdk/dynalink/linker/LinkRequest;
astore 13
start local 13 13: aload 0
iload 1
aload 12
aload 13
aload 10
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.createApplyOrCallCall:(ZLjdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;[Ljava/lang/Object;)Ljdk/dynalink/linker/GuardedInvocation;
astore 14
start local 14 14: aload 14
15: aload 14
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
aload 5
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.pairArguments:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
16: aload 14
invokevirtual jdk.dynalink.linker.GuardedInvocation.getGuard:()Ljava/lang/invoke/MethodHandle;
aload 5
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.spreadGuardArguments:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
17: invokevirtual jdk.dynalink.linker.GuardedInvocation.replaceMethods:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 18 1 isApply Z
0 18 2 desc Ljdk/dynalink/CallSiteDescriptor;
0 18 3 request Ljdk/dynalink/linker/LinkRequest;
0 18 4 args [Ljava/lang/Object;
1 18 5 descType Ljava/lang/invoke/MethodType;
2 18 6 paramCount I
3 18 7 varArgs [Ljava/lang/Object;
4 18 8 copiedArgCount I
5 18 9 varArgCount I
6 18 10 spreadArgs [Ljava/lang/Object;
11 18 11 spreadType Ljava/lang/invoke/MethodType;
12 18 12 spreadDesc Ljdk/dynalink/CallSiteDescriptor;
13 18 13 spreadRequest Ljdk/dynalink/linker/LinkRequest;
14 18 14 spreadInvocation Ljdk/dynalink/linker/GuardedInvocation;
MethodParameters:
Name Flags
isApply final
desc final
request final
args final
private static java.lang.invoke.MethodHandle spreadGuardArguments(java.lang.invoke.MethodHandle, java.lang.invoke.MethodType);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
astore 2
start local 2 1: aload 2
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
istore 3
start local 3 2: aload 1
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
istore 4
start local 4 3: iload 3
iload 4
isub
iconst_1
iadd
istore 5
start local 5 4: iload 5
ifgt 6
5: aload 0
areturn
6: StackMap locals: java.lang.invoke.MethodHandle java.lang.invoke.MethodType java.lang.invoke.MethodType int int int
StackMap stack:
aload 2
iload 3
iconst_1
isub
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
invokevirtual java.lang.Class.isArray:()Z
ifeq 9
7: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 0
iload 3
iconst_1
isub
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
getstatic jdk.nashorn.internal.objects.NativeFunction.TO_APPLY_ARGS:Ljava/lang/invoke/MethodHandle;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 6
start local 6 8: goto 10
end local 6 9: StackMap locals:
StackMap stack:
aload 0
astore 6
start local 6 10: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
aload 6
iload 4
invokestatic jdk.nashorn.internal.runtime.ScriptObject.adaptHandleToVarArgCallSite:(Ljava/lang/invoke/MethodHandle;I)Ljava/lang/invoke/MethodHandle;
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 guard Ljava/lang/invoke/MethodHandle;
0 11 1 descType Ljava/lang/invoke/MethodType;
1 11 2 guardType Ljava/lang/invoke/MethodType;
2 11 3 guardParamCount I
3 11 4 descParamCount I
4 11 5 spreadCount I
8 9 6 arrayConvertingGuard Ljava/lang/invoke/MethodHandle;
10 11 6 arrayConvertingGuard Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
guard final
descType final
private static java.lang.invoke.MethodHandle bindImplicitThis(boolean, java.lang.invoke.MethodHandle);
descriptor: (ZLjava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: iload 0
ifeq 3
1: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 1
iconst_1
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
getstatic jdk.nashorn.internal.runtime.ScriptFunction.SCRIPTFUNCTION_GLOBALFILTER:Ljava/lang/invoke/MethodHandle;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 2
start local 2 2: goto 4
end local 2 3: StackMap locals:
StackMap stack:
aload 1
astore 2
start local 2 4: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 2
iconst_1
iconst_1
anewarray java.lang.Object
dup
iconst_0
getstatic jdk.nashorn.internal.runtime.ScriptRuntime.UNDEFINED:Ljdk/nashorn/internal/runtime/Undefined;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 needsWrappedThis Z
0 5 1 mh Ljava/lang/invoke/MethodHandle;
2 3 2 bound Ljava/lang/invoke/MethodHandle;
4 5 2 bound Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
needsWrappedThis final
mh final
java.lang.invoke.MethodHandle getCallMethodHandle(java.lang.invoke.MethodType, java.lang.String);
descriptor: (Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/MethodHandle;
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.scope:Ljdk/nashorn/internal/runtime/ScriptObject;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.getGenericInvoker:(Ljdk/nashorn/internal/runtime/ScriptObject;)Ljava/lang/invoke/MethodHandle;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.bindToCalleeIfNeeded:(Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
aload 2
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.bindToNameIfNeeded:(Ljava/lang/invoke/MethodHandle;Ljava/lang/String;)Ljava/lang/invoke/MethodHandle;
aload 1
invokestatic jdk.nashorn.internal.runtime.ScriptFunction.pairArguments:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/ScriptFunction;
0 1 1 type Ljava/lang/invoke/MethodType;
0 1 2 bindName Ljava/lang/String;
MethodParameters:
Name Flags
type final
bindName final
private static java.lang.invoke.MethodHandle bindToNameIfNeeded(java.lang.invoke.MethodHandle, java.lang.String);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/String;)Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=13, locals=5, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
astore 2
start local 2 3: aload 2
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
istore 3
start local 3 4: iload 3
iconst_2
if_icmpge 6
5: aload 0
areturn
6: StackMap locals: java.lang.invoke.MethodType int
StackMap stack:
aload 2
iload 3
iconst_1
isub
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
invokevirtual java.lang.Class.isArray:()Z
istore 4
start local 4 7: iload 4
ifeq 9
8: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 0
iconst_1
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
getstatic jdk.nashorn.internal.runtime.ScriptFunction.ADD_ZEROTH_ELEMENT:Ljava/lang/invoke/MethodHandle;
iconst_1
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
areturn
9: StackMap locals: int
StackMap stack:
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 0
iconst_1
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 methodHandle Ljava/lang/invoke/MethodHandle;
0 10 1 bindName Ljava/lang/String;
3 10 2 methodType Ljava/lang/invoke/MethodType;
4 10 3 parameterCount I
7 10 4 isVarArg Z
MethodParameters:
Name Flags
methodHandle final
bindName final
private static java.lang.invoke.MethodHandle getFunctionGuard(jdk.nashorn.internal.runtime.ScriptFunction, int);
descriptor: (Ljdk/nashorn/internal/runtime/ScriptFunction;I)Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: getstatic jdk.nashorn.internal.runtime.ScriptFunction.$assertionsDisabled:Z
ifne 1
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunctionData.isBuiltin:()Z
ifeq 3
2: aload 0
invokestatic jdk.dynalink.linker.support.Guards.getIdentityGuard:(Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
areturn
3: StackMap locals:
StackMap stack:
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
getstatic jdk.nashorn.internal.runtime.ScriptFunction.IS_FUNCTION_MH:Ljava/lang/invoke/MethodHandle;
iconst_1
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 function Ljdk/nashorn/internal/runtime/ScriptFunction;
0 4 1 flags I
MethodParameters:
Name Flags
function final
flags final
private static java.lang.invoke.MethodHandle getNonStrictFunctionGuard(jdk.nashorn.internal.runtime.ScriptFunction);
descriptor: (Ljdk/nashorn/internal/runtime/ScriptFunction;)Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=1, args_size=1
start local 0 0: getstatic jdk.nashorn.internal.runtime.ScriptFunction.$assertionsDisabled:Z
ifne 1
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
ifnonnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
getstatic jdk.nashorn.internal.runtime.ScriptFunction.IS_NONSTRICT_FUNCTION:Ljava/lang/invoke/MethodHandle;
iconst_2
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 function Ljdk/nashorn/internal/runtime/ScriptFunction;
MethodParameters:
Name Flags
function final
private static boolean isFunctionMH(java.lang.Object, jdk.nashorn.internal.runtime.ScriptFunctionData);
descriptor: (Ljava/lang/Object;Ljdk/nashorn/internal/runtime/ScriptFunctionData;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
instanceof jdk.nashorn.internal.runtime.ScriptFunction
ifeq 1
aload 0
checkcast jdk.nashorn.internal.runtime.ScriptFunction
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 1
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 self Ljava/lang/Object;
0 2 1 data Ljdk/nashorn/internal/runtime/ScriptFunctionData;
MethodParameters:
Name Flags
self final
data final
private static boolean isNonStrictFunction(java.lang.Object, java.lang.Object, jdk.nashorn.internal.runtime.ScriptFunctionData);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljdk/nashorn/internal/runtime/ScriptFunctionData;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
instanceof jdk.nashorn.internal.runtime.ScriptFunction
ifeq 1
aload 0
checkcast jdk.nashorn.internal.runtime.ScriptFunction
getfield jdk.nashorn.internal.runtime.ScriptFunction.data:Ljdk/nashorn/internal/runtime/ScriptFunctionData;
aload 2
if_acmpne 1
aload 1
instanceof jdk.nashorn.internal.runtime.ScriptObject
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 self Ljava/lang/Object;
0 2 1 arg Ljava/lang/Object;
0 2 2 data Ljdk/nashorn/internal/runtime/ScriptFunctionData;
MethodParameters:
Name Flags
self final
arg final
data final
private static boolean isApplyFunction(boolean, java.lang.Object, java.lang.Object);
descriptor: (ZLjava/lang/Object;Ljava/lang/Object;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 0
ifeq 1
aload 1
aload 2
if_acmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 appliedFnCondition Z
0 2 1 self Ljava/lang/Object;
0 2 2 expectedSelf Ljava/lang/Object;
MethodParameters:
Name Flags
appliedFnCondition final
self final
expectedSelf final
private static java.lang.Object[] addZerothElement(java.lang.Object[], java.lang.Object);
descriptor: ([Ljava/lang/Object;Ljava/lang/Object;)[Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 1
getstatic jdk.nashorn.internal.runtime.ScriptRuntime.EMPTY_ARRAY:[Ljava/lang/Object;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
StackMap locals:
StackMap stack: java.lang.Object[]
2: astore 2
start local 2 3: aload 2
arraylength
iconst_1
iadd
anewarray java.lang.Object
astore 3
start local 3 4: aload 2
iconst_0
aload 3
iconst_1
aload 2
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: aload 3
iconst_0
aload 1
aastore
6: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 args [Ljava/lang/Object;
0 7 1 value Ljava/lang/Object;
3 7 2 src [Ljava/lang/Object;
4 7 3 result [Ljava/lang/Object;
MethodParameters:
Name Flags
args final
value final
private static java.lang.Object invokeSync(jdk.nashorn.internal.runtime.ScriptFunction, java.lang.Object, java.lang.Object, java.lang.Object[]);
descriptor: (Ljdk/nashorn/internal/runtime/ScriptFunction;Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
getstatic jdk.nashorn.internal.runtime.ScriptRuntime.UNDEFINED:Ljdk/nashorn/internal/runtime/Undefined;
if_acmpne 1
aload 2
goto 2
StackMap locals:
StackMap stack:
1: aload 1
StackMap locals:
StackMap stack: java.lang.Object
2: astore 4
start local 4 3: aload 4
dup
astore 5
monitorenter
4: aload 0
aload 2
aload 3
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
aload 5
monitorexit
5: areturn
6: StackMap locals: jdk.nashorn.internal.runtime.ScriptFunction java.lang.Object java.lang.Object java.lang.Object[] java.lang.Object java.lang.Object
StackMap stack: java.lang.Throwable
aload 5
monitorexit
7: athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 func Ljdk/nashorn/internal/runtime/ScriptFunction;
0 8 1 sync Ljava/lang/Object;
0 8 2 self Ljava/lang/Object;
0 8 3 args [Ljava/lang/Object;
3 8 4 syncObj Ljava/lang/Object;
Exception table:
from to target type
4 5 6 any
6 7 6 any
Exceptions:
throws java.lang.Throwable
MethodParameters:
Name Flags
func final
sync final
self final
args final
private static java.lang.invoke.MethodHandle findOwnMH_S(java.lang.String, java.lang.Class<?>, java.lang.Class<?>[]);
descriptor: (Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
ldc Ljdk/nashorn/internal/runtime/ScriptFunction;
aload 0
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 1
aload 2
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.type:(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.findStatic:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 rtype Ljava/lang/Class<*>;
0 1 2 types [Ljava/lang/Class;
Signature: (Ljava/lang/String;Ljava/lang/Class<*>;[Ljava/lang/Class<*>;)Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
name final
rtype final
types final
private static java.lang.invoke.MethodHandle findOwnMH_V(java.lang.String, java.lang.Class<?>, java.lang.Class<?>[]);
descriptor: (Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
ldc Ljdk/nashorn/internal/runtime/ScriptFunction;
aload 0
getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 1
aload 2
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.type:(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.findVirtual:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
0 1 1 rtype Ljava/lang/Class<*>;
0 1 2 types [Ljava/lang/Class;
Signature: (Ljava/lang/String;Ljava/lang/Class<*>;[Ljava/lang/Class<*>;)Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
name final
rtype final
types final
private static java.lang.invoke.MethodHandles$Lookup lambda$0(jdk.dynalink.CallSiteDescriptor);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;)Ljava/lang/invoke/MethodHandles$Lookup;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual jdk.dynalink.CallSiteDescriptor.getLookup:()Ljava/lang/invoke/MethodHandles$Lookup;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "ScriptFunction.java"
NestMembers:
jdk.nashorn.internal.runtime.ScriptFunction$Bound
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Call = jdk.nashorn.internal.codegen.CompilerConstants$Call of jdk.nashorn.internal.codegen.CompilerConstants
public abstract LinkLogic = jdk.nashorn.internal.objects.annotations.SpecializedFunction$LinkLogic of jdk.nashorn.internal.objects.annotations.SpecializedFunction
private Bound = jdk.nashorn.internal.runtime.ScriptFunction$Bound of jdk.nashorn.internal.runtime.ScriptFunction