public final class jdk.nashorn.internal.runtime.WithObject extends jdk.nashorn.internal.runtime.Scope
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.nashorn.internal.runtime.WithObject
super_class: jdk.nashorn.internal.runtime.Scope
{
private static final java.lang.invoke.MethodHandle WITHEXPRESSIONGUARD;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle WITHEXPRESSIONFILTER;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle WITHSCOPEFILTER;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle BIND_TO_EXPRESSION_OBJ;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.MethodHandle BIND_TO_EXPRESSION_FN;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final jdk.nashorn.internal.runtime.ScriptObject expression;
descriptor: Ljdk/nashorn/internal/runtime/ScriptObject;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
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=6, locals=0, args_size=0
0: ldc Ljdk/nashorn/internal/runtime/WithObject;
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.WithObject.$assertionsDisabled:Z
3: ldc "withExpressionGuard"
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 Ljdk/nashorn/internal/runtime/PropertyMap;
aastore
dup
iconst_2
ldc [Ljava/lang/invoke/SwitchPoint;
aastore
invokestatic jdk.nashorn.internal.runtime.WithObject.findOwnMH:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.WithObject.WITHEXPRESSIONGUARD:Ljava/lang/invoke/MethodHandle;
4: ldc "withFilterExpression"
ldc Ljava/lang/Object;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.WithObject.findOwnMH:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.WithObject.WITHEXPRESSIONFILTER:Ljava/lang/invoke/MethodHandle;
5: ldc "withFilterScope"
ldc Ljava/lang/Object;
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.WithObject.findOwnMH:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.WithObject.WITHSCOPEFILTER:Ljava/lang/invoke/MethodHandle;
6: ldc "bindToExpression"
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.WithObject.findOwnMH:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.WithObject.BIND_TO_EXPRESSION_OBJ:Ljava/lang/invoke/MethodHandle;
7: ldc "bindToExpression"
ldc Ljava/lang/Object;
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Ljdk/nashorn/internal/runtime/ScriptFunction;
aastore
dup
iconst_1
ldc Ljava/lang/Object;
aastore
invokestatic jdk.nashorn.internal.runtime.WithObject.findOwnMH:(Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;
putstatic jdk.nashorn.internal.runtime.WithObject.BIND_TO_EXPRESSION_FN:Ljava/lang/invoke/MethodHandle;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(jdk.nashorn.internal.runtime.ScriptObject, jdk.nashorn.internal.runtime.ScriptObject);
descriptor: (Ljdk/nashorn/internal/runtime/ScriptObject;Ljdk/nashorn/internal/runtime/ScriptObject;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aconst_null
invokespecial jdk.nashorn.internal.runtime.Scope.<init>:(Ljdk/nashorn/internal/runtime/ScriptObject;Ljdk/nashorn/internal/runtime/PropertyMap;)V
1: aload 0
aload 2
putfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
2: aload 0
invokevirtual jdk.nashorn.internal.runtime.WithObject.setIsInternal:()V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/nashorn/internal/runtime/WithObject;
0 4 1 scope Ljdk/nashorn/internal/runtime/ScriptObject;
0 4 2 expression Ljdk/nashorn/internal/runtime/ScriptObject;
MethodParameters:
Name Flags
scope final
expression final
public boolean delete(java.lang.Object, boolean);
descriptor: (Ljava/lang/Object;Z)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
astore 3
start local 3 1: aload 1
invokestatic jdk.nashorn.internal.runtime.JSType.toString:(Ljava/lang/Object;)Ljava/lang/String;
astore 4
start local 4 2: aload 3
aload 4
iconst_1
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.findProperty:(Ljava/lang/Object;Z)Ljdk/nashorn/internal/runtime/FindProperty;
astore 5
start local 5 3: aload 5
ifnull 5
4: aload 3
aload 4
iload 2
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.delete:(Ljava/lang/Object;Z)Z
ireturn
5: StackMap locals: jdk.nashorn.internal.runtime.ScriptObject java.lang.String jdk.nashorn.internal.runtime.FindProperty
StackMap stack:
iconst_0
ireturn
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/WithObject;
0 6 1 key Ljava/lang/Object;
0 6 2 strict Z
1 6 3 self Ljdk/nashorn/internal/runtime/ScriptObject;
2 6 4 propName Ljava/lang/String;
3 6 5 find Ljdk/nashorn/internal/runtime/FindProperty;
MethodParameters:
Name Flags
key final
strict final
public jdk.dynalink.linker.GuardedInvocation lookup(jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.LinkRequest);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;)Ljdk/dynalink/linker/GuardedInvocation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface jdk.dynalink.linker.LinkRequest.isCallSiteUnstable:()Z
ifeq 2
1: aload 0
aload 1
aload 2
invokespecial jdk.nashorn.internal.runtime.Scope.lookup:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
astore 3
start local 3 3: aload 1
invokevirtual jdk.dynalink.CallSiteDescriptor.getOperation:()Ljdk/dynalink/Operation;
astore 4
start local 4 4: getstatic jdk.nashorn.internal.runtime.WithObject.$assertionsDisabled:Z
ifne 5
aload 4
instanceof jdk.dynalink.NamedOperation
ifne 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals: jdk.dynalink.linker.GuardedInvocation jdk.dynalink.Operation
StackMap stack:
aload 4
checkcast jdk.dynalink.NamedOperation
invokevirtual jdk.dynalink.NamedOperation.getName:()Ljava/lang/Object;
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
astore 5
start local 5 6: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
aload 5
iconst_1
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.findProperty:(Ljava/lang/Object;Z)Ljdk/nashorn/internal/runtime/FindProperty;
astore 6
start local 6 7: aload 6
ifnull 11
8: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
aload 1
aload 2
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.lookup:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;)Ljdk/dynalink/linker/GuardedInvocation;
astore 3
9: aload 3
ifnull 11
10: aload 1
aload 3
invokestatic jdk.nashorn.internal.runtime.WithObject.fixExpressionCallSite:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/GuardedInvocation;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
11: StackMap locals: java.lang.String jdk.nashorn.internal.runtime.FindProperty
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.WithObject.getProto:()Ljdk/nashorn/internal/runtime/ScriptObject;
astore 7
start local 7 12: aload 7
aload 5
iconst_1
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.findProperty:(Ljava/lang/Object;Z)Ljdk/nashorn/internal/runtime/FindProperty;
astore 6
13: aload 6
ifnull 15
14: aload 0
aload 7
aload 1
aload 2
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.lookup:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;)Ljdk/dynalink/linker/GuardedInvocation;
aload 5
aload 6
invokevirtual jdk.nashorn.internal.runtime.FindProperty.getOwner:()Ljdk/nashorn/internal/runtime/ScriptObject;
invokevirtual jdk.nashorn.internal.runtime.WithObject.fixScopeCallSite:(Ljdk/dynalink/linker/GuardedInvocation;Ljava/lang/String;Ljdk/nashorn/internal/runtime/ScriptObject;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
15: StackMap locals: jdk.nashorn.internal.runtime.ScriptObject
StackMap stack:
aload 1
invokestatic jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor.getBaseOperation:(Ljdk/dynalink/CallSiteDescriptor;)Ljdk/dynalink/Operation;
astore 9
start local 9 16: aload 9
getstatic jdk.dynalink.StandardOperation.GET:Ljdk/dynalink/StandardOperation;
if_acmpne 22
17: aload 1
invokestatic jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor.isMethodFirstOperation:(Ljdk/dynalink/CallSiteDescriptor;)Z
ifeq 20
18: ldc "__noSuchMethod__"
astore 8
start local 8 19: goto 23
end local 8 20: StackMap locals: jdk.nashorn.internal.runtime.WithObject jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest jdk.dynalink.linker.GuardedInvocation jdk.dynalink.Operation java.lang.String jdk.nashorn.internal.runtime.FindProperty jdk.nashorn.internal.runtime.ScriptObject top jdk.dynalink.Operation
StackMap stack:
ldc "__noSuchProperty__"
astore 8
start local 8 21: goto 23
end local 8 22: StackMap locals:
StackMap stack:
aconst_null
astore 8
start local 8 23: StackMap locals: jdk.nashorn.internal.runtime.WithObject jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.LinkRequest jdk.dynalink.linker.GuardedInvocation jdk.dynalink.Operation java.lang.String jdk.nashorn.internal.runtime.FindProperty jdk.nashorn.internal.runtime.ScriptObject java.lang.String jdk.dynalink.Operation
StackMap stack:
aload 8
ifnull 31
24: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
aload 8
iconst_1
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.findProperty:(Ljava/lang/Object;Z)Ljdk/nashorn/internal/runtime/FindProperty;
astore 6
25: aload 6
ifnull 31
26: ldc "__noSuchMethod__"
aload 8
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 29
27: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
aload 1
aload 2
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.noSuchMethod:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;)Ljdk/dynalink/linker/GuardedInvocation;
aload 0
aload 5
invokevirtual jdk.nashorn.internal.runtime.WithObject.getProtoSwitchPoint:(Ljava/lang/String;)Ljava/lang/invoke/SwitchPoint;
invokevirtual jdk.dynalink.linker.GuardedInvocation.addSwitchPoint:(Ljava/lang/invoke/SwitchPoint;)Ljdk/dynalink/linker/GuardedInvocation;
astore 3
28: goto 31
StackMap locals:
StackMap stack:
29: ldc "__noSuchProperty__"
aload 8
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 31
30: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
aload 1
aload 2
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.noSuchProperty:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;)Ljdk/dynalink/linker/GuardedInvocation;
aload 0
aload 5
invokevirtual jdk.nashorn.internal.runtime.WithObject.getProtoSwitchPoint:(Ljava/lang/String;)Ljava/lang/invoke/SwitchPoint;
invokevirtual jdk.dynalink.linker.GuardedInvocation.addSwitchPoint:(Ljava/lang/invoke/SwitchPoint;)Ljdk/dynalink/linker/GuardedInvocation;
astore 3
31: StackMap locals:
StackMap stack:
aload 3
ifnull 33
32: aload 1
aload 3
invokestatic jdk.nashorn.internal.runtime.WithObject.fixExpressionCallSite:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/GuardedInvocation;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
33: StackMap locals:
StackMap stack:
aload 7
aload 1
aload 2
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.lookup:(Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;)Ljdk/dynalink/linker/GuardedInvocation;
astore 3
34: aload 3
ifnull 36
35: aload 0
aload 3
aload 5
aconst_null
invokevirtual jdk.nashorn.internal.runtime.WithObject.fixScopeCallSite:(Ljdk/dynalink/linker/GuardedInvocation;Ljava/lang/String;Ljdk/nashorn/internal/runtime/ScriptObject;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
36: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 this Ljdk/nashorn/internal/runtime/WithObject;
0 37 1 desc Ljdk/dynalink/CallSiteDescriptor;
0 37 2 request Ljdk/dynalink/linker/LinkRequest;
3 37 3 link Ljdk/dynalink/linker/GuardedInvocation;
4 37 4 op Ljdk/dynalink/Operation;
6 37 5 name Ljava/lang/String;
7 37 6 find Ljdk/nashorn/internal/runtime/FindProperty;
12 37 7 scope Ljdk/nashorn/internal/runtime/ScriptObject;
19 20 8 fallBack Ljava/lang/String;
21 22 8 fallBack Ljava/lang/String;
23 37 8 fallBack Ljava/lang/String;
16 37 9 firstOp Ljdk/dynalink/Operation;
MethodParameters:
Name Flags
desc final
request final
protected jdk.nashorn.internal.runtime.FindProperty findProperty(java.lang.Object, boolean, boolean, jdk.nashorn.internal.runtime.ScriptObject);
descriptor: (Ljava/lang/Object;ZZLjdk/nashorn/internal/runtime/ScriptObject;)Ljdk/nashorn/internal/runtime/FindProperty;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
aload 1
iconst_1
iconst_0
aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.findProperty:(Ljava/lang/Object;ZZLjdk/nashorn/internal/runtime/ScriptObject;)Ljdk/nashorn/internal/runtime/FindProperty;
astore 5
start local 5 1: aload 5
ifnull 3
2: aload 5
areturn
3: StackMap locals: jdk.nashorn.internal.runtime.FindProperty
StackMap stack:
aload 0
aload 1
iload 2
iload 3
aload 4
invokespecial jdk.nashorn.internal.runtime.Scope.findProperty:(Ljava/lang/Object;ZZLjdk/nashorn/internal/runtime/ScriptObject;)Ljdk/nashorn/internal/runtime/FindProperty;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/nashorn/internal/runtime/WithObject;
0 4 1 key Ljava/lang/Object;
0 4 2 deep Z
0 4 3 isScope Z
0 4 4 start Ljdk/nashorn/internal/runtime/ScriptObject;
1 4 5 exprProperty Ljdk/nashorn/internal/runtime/FindProperty;
MethodParameters:
Name Flags
key final
deep final
isScope final
start final
protected java.lang.Object invokeNoSuchProperty(java.lang.Object, boolean, int);
descriptor: (Ljava/lang/Object;ZI)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
ldc "__noSuchProperty__"
iconst_1
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.findProperty:(Ljava/lang/Object;Z)Ljdk/nashorn/internal/runtime/FindProperty;
astore 4
start local 4 1: aload 4
ifnull 9
2: aload 4
invokevirtual jdk.nashorn.internal.runtime.FindProperty.getObjectValue:()Ljava/lang/Object;
astore 5
start local 5 3: aload 5
instanceof jdk.nashorn.internal.runtime.ScriptFunction
ifeq 9
4: aload 5
checkcast jdk.nashorn.internal.runtime.ScriptFunction
astore 6
start local 6 5: iload 2
ifeq 6
aload 6
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.isStrict:()Z
ifeq 6
getstatic jdk.nashorn.internal.runtime.ScriptRuntime.UNDEFINED:Ljdk/nashorn/internal/runtime/Undefined;
goto 7
StackMap locals: jdk.nashorn.internal.runtime.FindProperty java.lang.Object jdk.nashorn.internal.runtime.ScriptFunction
StackMap stack:
6: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
StackMap locals:
StackMap stack: jdk.nashorn.internal.runtime.PropertyAccess
7: astore 7
start local 7 8: aload 6
aload 7
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokestatic jdk.nashorn.internal.runtime.ScriptRuntime.apply:(Ljdk/nashorn/internal/runtime/ScriptFunction;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 7 end local 6 end local 5 9: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.WithObject.getProto:()Ljdk/nashorn/internal/runtime/ScriptObject;
aload 1
iload 2
iload 3
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.invokeNoSuchProperty:(Ljava/lang/Object;ZI)Ljava/lang/Object;
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 this Ljdk/nashorn/internal/runtime/WithObject;
0 10 1 key Ljava/lang/Object;
0 10 2 isScope Z
0 10 3 programPoint I
1 10 4 find Ljdk/nashorn/internal/runtime/FindProperty;
3 9 5 func Ljava/lang/Object;
5 9 6 sfunc Ljdk/nashorn/internal/runtime/ScriptFunction;
8 9 7 self Ljava/lang/Object;
MethodParameters:
Name Flags
key final
isScope final
programPoint final
public void setSplitState(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.WithObject.getNonWithParent:()Ljdk/nashorn/internal/runtime/ScriptObject;
checkcast jdk.nashorn.internal.runtime.Scope
iload 1
invokevirtual jdk.nashorn.internal.runtime.Scope.setSplitState:(I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/WithObject;
0 2 1 state I
MethodParameters:
Name Flags
state final
public int getSplitState();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.WithObject.getNonWithParent:()Ljdk/nashorn/internal/runtime/ScriptObject;
checkcast jdk.nashorn.internal.runtime.Scope
invokevirtual jdk.nashorn.internal.runtime.Scope.getSplitState:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/WithObject;
public void addBoundProperties(jdk.nashorn.internal.runtime.ScriptObject, jdk.nashorn.internal.runtime.Property[]);
descriptor: (Ljdk/nashorn/internal/runtime/ScriptObject;[Ljdk/nashorn/internal/runtime/Property;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.WithObject.getNonWithParent:()Ljdk/nashorn/internal/runtime/ScriptObject;
aload 1
aload 2
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.addBoundProperties:(Ljdk/nashorn/internal/runtime/ScriptObject;[Ljdk/nashorn/internal/runtime/Property;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/WithObject;
0 2 1 source Ljdk/nashorn/internal/runtime/ScriptObject;
0 2 2 properties [Ljdk/nashorn/internal/runtime/Property;
MethodParameters:
Name Flags
source final
properties final
private jdk.nashorn.internal.runtime.ScriptObject getNonWithParent();
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.WithObject.getProto:()Ljdk/nashorn/internal/runtime/ScriptObject;
astore 1
start local 1 1: goto 3
2: StackMap locals: jdk.nashorn.internal.runtime.ScriptObject
StackMap stack:
aload 1
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.getProto:()Ljdk/nashorn/internal/runtime/ScriptObject;
astore 1
3: StackMap locals:
StackMap stack:
aload 1
ifnull 4
aload 1
instanceof jdk.nashorn.internal.runtime.WithObject
ifne 2
4: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/nashorn/internal/runtime/WithObject;
1 5 1 proto Ljdk/nashorn/internal/runtime/ScriptObject;
private static jdk.dynalink.linker.GuardedInvocation fixReceiverType(jdk.dynalink.linker.GuardedInvocation, java.lang.invoke.MethodHandle);
descriptor: (Ljdk/dynalink/linker/GuardedInvocation;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/linker/GuardedInvocation;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
astore 2
start local 2 1: aload 2
iconst_0
aload 1
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
invokevirtual java.lang.invoke.MethodType.changeParameterType:(ILjava/lang/Class;)Ljava/lang/invoke/MethodType;
astore 3
start local 3 2: aload 0
aload 3
invokevirtual jdk.dynalink.linker.GuardedInvocation.asType:(Ljava/lang/invoke/MethodType;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 link Ljdk/dynalink/linker/GuardedInvocation;
0 3 1 filter Ljava/lang/invoke/MethodHandle;
1 3 2 invType Ljava/lang/invoke/MethodType;
2 3 3 newInvType Ljava/lang/invoke/MethodType;
MethodParameters:
Name Flags
link final
filter final
private static jdk.dynalink.linker.GuardedInvocation fixExpressionCallSite(jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.GuardedInvocation);
descriptor: (Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/GuardedInvocation;)Ljdk/dynalink/linker/GuardedInvocation;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokestatic jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor.getBaseOperation:(Ljdk/dynalink/CallSiteDescriptor;)Ljdk/dynalink/Operation;
getstatic jdk.dynalink.StandardOperation.GET:Ljdk/dynalink/StandardOperation;
if_acmpne 1
aload 0
invokestatic jdk.nashorn.internal.runtime.linker.NashornCallSiteDescriptor.isMethodFirstOperation:(Ljdk/dynalink/CallSiteDescriptor;)Z
ifne 2
1: StackMap locals:
StackMap stack:
aload 1
getstatic jdk.nashorn.internal.runtime.WithObject.WITHEXPRESSIONFILTER:Ljava/lang/invoke/MethodHandle;
invokestatic jdk.nashorn.internal.runtime.WithObject.fixReceiverType:(Ljdk/dynalink/linker/GuardedInvocation;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/linker/GuardedInvocation;
iconst_0
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
getstatic jdk.nashorn.internal.runtime.WithObject.WITHEXPRESSIONFILTER:Ljava/lang/invoke/MethodHandle;
aastore
invokevirtual jdk.dynalink.linker.GuardedInvocation.filterArguments:(I[Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
astore 2
start local 2 3: aload 2
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
astore 3
start local 3 4: ldc Ljdk/nashorn/internal/runtime/ScriptFunction;
aload 3
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
istore 4
start local 4 5: aload 1
6: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
7: iload 4
ifeq 9
8: getstatic jdk.nashorn.internal.runtime.WithObject.BIND_TO_EXPRESSION_FN:Ljava/lang/invoke/MethodHandle;
goto 10
9: StackMap locals: jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.GuardedInvocation java.lang.invoke.MethodHandle java.lang.invoke.MethodType int
StackMap stack: jdk.dynalink.linker.GuardedInvocation jdk.nashorn.internal.lookup.MethodHandleFunctionality
getstatic jdk.nashorn.internal.runtime.WithObject.BIND_TO_EXPRESSION_OBJ:Ljava/lang/invoke/MethodHandle;
10: StackMap locals: jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.GuardedInvocation java.lang.invoke.MethodHandle java.lang.invoke.MethodType int
StackMap stack: jdk.dynalink.linker.GuardedInvocation jdk.nashorn.internal.lookup.MethodHandleFunctionality java.lang.invoke.MethodHandle
aload 2
11: aload 3
12: iload 4
ifeq 14
13: ldc Ljdk/nashorn/internal/runtime/ScriptFunction;
goto 15
14: StackMap locals: jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.GuardedInvocation java.lang.invoke.MethodHandle java.lang.invoke.MethodType int
StackMap stack: jdk.dynalink.linker.GuardedInvocation jdk.nashorn.internal.lookup.MethodHandleFunctionality java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodType
ldc Ljava/lang/Object;
15: StackMap locals: jdk.dynalink.CallSiteDescriptor jdk.dynalink.linker.GuardedInvocation java.lang.invoke.MethodHandle java.lang.invoke.MethodType int
StackMap stack: jdk.dynalink.linker.GuardedInvocation jdk.nashorn.internal.lookup.MethodHandleFunctionality java.lang.invoke.MethodHandle java.lang.invoke.MethodHandle java.lang.invoke.MethodType java.lang.Class
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
16: iconst_0
17: ldc Ljava/lang/Object;
18: invokevirtual java.lang.invoke.MethodType.changeParameterType:(ILjava/lang/Class;)Ljava/lang/invoke/MethodType;
19: invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
20: getstatic jdk.nashorn.internal.runtime.WithObject.WITHEXPRESSIONFILTER:Ljava/lang/invoke/MethodHandle;
21: invokestatic jdk.nashorn.internal.runtime.WithObject.filterReceiver:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
22: invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.foldArguments:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
23: aload 1
getstatic jdk.nashorn.internal.runtime.WithObject.WITHEXPRESSIONFILTER:Ljava/lang/invoke/MethodHandle;
invokestatic jdk.nashorn.internal.runtime.WithObject.filterGuardReceiver:(Ljdk/dynalink/linker/GuardedInvocation;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
24: invokevirtual jdk.dynalink.linker.GuardedInvocation.replaceMethods:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/linker/GuardedInvocation;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 desc Ljdk/dynalink/CallSiteDescriptor;
0 25 1 link Ljdk/dynalink/linker/GuardedInvocation;
3 25 2 linkInvocation Ljava/lang/invoke/MethodHandle;
4 25 3 linkType Ljava/lang/invoke/MethodType;
5 25 4 linkReturnsFunction Z
MethodParameters:
Name Flags
desc final
link final
private jdk.dynalink.linker.GuardedInvocation fixScopeCallSite(jdk.dynalink.linker.GuardedInvocation, java.lang.String, jdk.nashorn.internal.runtime.ScriptObject);
descriptor: (Ljdk/dynalink/linker/GuardedInvocation;Ljava/lang/String;Ljdk/nashorn/internal/runtime/ScriptObject;)Ljdk/dynalink/linker/GuardedInvocation;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
getstatic jdk.nashorn.internal.runtime.WithObject.WITHSCOPEFILTER:Ljava/lang/invoke/MethodHandle;
invokestatic jdk.nashorn.internal.runtime.WithObject.fixReceiverType:(Ljdk/dynalink/linker/GuardedInvocation;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/linker/GuardedInvocation;
astore 4
start local 4 1: aload 0
aload 2
aload 3
invokevirtual jdk.nashorn.internal.runtime.WithObject.expressionGuard:(Ljava/lang/String;Ljdk/nashorn/internal/runtime/ScriptObject;)Ljava/lang/invoke/MethodHandle;
astore 5
start local 5 2: aload 4
getstatic jdk.nashorn.internal.runtime.WithObject.WITHSCOPEFILTER:Ljava/lang/invoke/MethodHandle;
invokestatic jdk.nashorn.internal.runtime.WithObject.filterGuardReceiver:(Ljdk/dynalink/linker/GuardedInvocation;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
astore 6
start local 6 3: aload 1
4: aload 4
invokevirtual jdk.dynalink.linker.GuardedInvocation.getInvocation:()Ljava/lang/invoke/MethodHandle;
5: getstatic jdk.nashorn.internal.runtime.WithObject.WITHSCOPEFILTER:Ljava/lang/invoke/MethodHandle;
6: invokestatic jdk.nashorn.internal.runtime.WithObject.filterReceiver:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
7: aload 5
8: aload 6
9: invokestatic jdk.nashorn.internal.runtime.linker.NashornGuards.combineGuards:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
10: invokevirtual jdk.dynalink.linker.GuardedInvocation.replaceMethods:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljdk/dynalink/linker/GuardedInvocation;
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 this Ljdk/nashorn/internal/runtime/WithObject;
0 11 1 link Ljdk/dynalink/linker/GuardedInvocation;
0 11 2 name Ljava/lang/String;
0 11 3 owner Ljdk/nashorn/internal/runtime/ScriptObject;
1 11 4 newLink Ljdk/dynalink/linker/GuardedInvocation;
2 11 5 expressionGuard Ljava/lang/invoke/MethodHandle;
3 11 6 filteredGuard Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
link final
name final
owner final
private static java.lang.invoke.MethodHandle filterGuardReceiver(jdk.dynalink.linker.GuardedInvocation, java.lang.invoke.MethodHandle);
descriptor: (Ljdk/dynalink/linker/GuardedInvocation;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual jdk.dynalink.linker.GuardedInvocation.getGuard:()Ljava/lang/invoke/MethodHandle;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: java.lang.invoke.MethodHandle
StackMap stack:
aload 2
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
iconst_0
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
astore 3
start local 3 4: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
aload 1
5: aload 1
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
iconst_0
aload 3
invokevirtual java.lang.invoke.MethodType.changeParameterType:(ILjava/lang/Class;)Ljava/lang/invoke/MethodType;
6: aload 3
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
7: invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.asType:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
astore 4
start local 4 8: aload 2
aload 4
invokestatic jdk.nashorn.internal.runtime.WithObject.filterReceiver:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)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 9 0 link Ljdk/dynalink/linker/GuardedInvocation;
0 9 1 receiverFilter Ljava/lang/invoke/MethodHandle;
1 9 2 test Ljava/lang/invoke/MethodHandle;
4 9 3 receiverType Ljava/lang/Class<*>;
8 9 4 filter Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
link final
receiverFilter final
private static java.lang.invoke.MethodHandle filterReceiver(java.lang.invoke.MethodHandle, java.lang.invoke.MethodHandle);
descriptor: (Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, 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
iconst_0
iconst_1
anewarray java.lang.invoke.MethodHandle
dup
iconst_0
aload 1
aload 1
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
aload 0
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
iconst_0
invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodHandle.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
aastore
invokeinterface jdk.nashorn.internal.lookup.MethodHandleFunctionality.filterArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/MethodHandle;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 mh Ljava/lang/invoke/MethodHandle;
0 1 1 receiverFilter Ljava/lang/invoke/MethodHandle;
MethodParameters:
Name Flags
mh final
receiverFilter final
public static java.lang.Object withFilterExpression(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
checkcast jdk.nashorn.internal.runtime.WithObject
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 receiver Ljava/lang/Object;
MethodParameters:
Name Flags
receiver final
private static java.lang.Object bindToExpression(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, 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
invokestatic jdk.nashorn.internal.runtime.WithObject.bindToExpression:(Ljdk/nashorn/internal/runtime/ScriptFunction;Ljava/lang/Object;)Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 0
instanceof jdk.nashorn.api.scripting.ScriptObjectMirror
ifeq 6
3: aload 0
checkcast jdk.nashorn.api.scripting.ScriptObjectMirror
astore 2
start local 2 4: aload 2
invokevirtual jdk.nashorn.api.scripting.ScriptObjectMirror.isFunction:()Z
ifeq 6
5: new jdk.nashorn.internal.runtime.WithObject$1
dup
aload 2
aload 1
invokespecial jdk.nashorn.internal.runtime.WithObject$1.<init>:(Ljdk/nashorn/api/scripting/ScriptObjectMirror;Ljava/lang/Object;)V
areturn
end local 2 6: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 fn Ljava/lang/Object;
0 7 1 receiver Ljava/lang/Object;
4 6 2 mirror Ljdk/nashorn/api/scripting/ScriptObjectMirror;
MethodParameters:
Name Flags
fn final
receiver final
private static java.lang.Object bindToExpression(jdk.nashorn.internal.runtime.ScriptFunction, java.lang.Object);
descriptor: (Ljdk/nashorn/internal/runtime/ScriptFunction;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic jdk.nashorn.internal.runtime.WithObject.withFilterExpression:(Ljava/lang/Object;)Ljava/lang/Object;
getstatic jdk.nashorn.internal.runtime.ScriptRuntime.EMPTY_ARRAY:[Ljava/lang/Object;
invokevirtual jdk.nashorn.internal.runtime.ScriptFunction.createBound:(Ljava/lang/Object;[Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/ScriptFunction;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 fn Ljdk/nashorn/internal/runtime/ScriptFunction;
0 1 1 receiver Ljava/lang/Object;
MethodParameters:
Name Flags
fn final
receiver final
private java.lang.invoke.MethodHandle expressionGuard(java.lang.String, jdk.nashorn.internal.runtime.ScriptObject);
descriptor: (Ljava/lang/String;Ljdk/nashorn/internal/runtime/ScriptObject;)Ljava/lang/invoke/MethodHandle;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.getMap:()Ljdk/nashorn/internal/runtime/PropertyMap;
astore 3
start local 3 1: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
aload 1
aload 2
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.getProtoSwitchPoints:(Ljava/lang/String;Ljdk/nashorn/internal/runtime/ScriptObject;)[Ljava/lang/invoke/SwitchPoint;
astore 4
start local 4 2: getstatic jdk.nashorn.internal.lookup.Lookup.MH:Ljdk/nashorn/internal/lookup/MethodHandleFunctionality;
getstatic jdk.nashorn.internal.runtime.WithObject.WITHEXPRESSIONGUARD:Ljava/lang/invoke/MethodHandle;
iconst_1
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 3
aastore
dup
iconst_1
aload 4
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 3 0 this Ljdk/nashorn/internal/runtime/WithObject;
0 3 1 name Ljava/lang/String;
0 3 2 owner Ljdk/nashorn/internal/runtime/ScriptObject;
1 3 3 map Ljdk/nashorn/internal/runtime/PropertyMap;
2 3 4 sp [Ljava/lang/invoke/SwitchPoint;
MethodParameters:
Name Flags
name final
owner final
private static boolean withExpressionGuard(java.lang.Object, jdk.nashorn.internal.runtime.PropertyMap, java.lang.invoke.SwitchPoint[]);
descriptor: (Ljava/lang/Object;Ljdk/nashorn/internal/runtime/PropertyMap;[Ljava/lang/invoke/SwitchPoint;)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
checkcast jdk.nashorn.internal.runtime.WithObject
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
invokevirtual jdk.nashorn.internal.runtime.ScriptObject.getMap:()Ljdk/nashorn/internal/runtime/PropertyMap;
aload 1
if_acmpne 1
aload 2
invokestatic jdk.nashorn.internal.runtime.WithObject.hasBeenInvalidated:([Ljava/lang/invoke/SwitchPoint;)Z
ifne 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 receiver Ljava/lang/Object;
0 2 1 map Ljdk/nashorn/internal/runtime/PropertyMap;
0 2 2 sp [Ljava/lang/invoke/SwitchPoint;
MethodParameters:
Name Flags
receiver final
map final
sp final
private static boolean hasBeenInvalidated(java.lang.invoke.SwitchPoint[]);
descriptor: ([Ljava/lang/invoke/SwitchPoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: aload 0
ifnull 7
1: aload 0
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 6
StackMap locals: java.lang.invoke.SwitchPoint[] top int int java.lang.invoke.SwitchPoint[]
StackMap stack:
2: aload 4
iload 2
aaload
astore 1
start local 1 3: aload 1
invokevirtual java.lang.invoke.SwitchPoint.hasBeenInvalidated:()Z
ifeq 5
4: iconst_1
ireturn
end local 1 5: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
iload 3
if_icmplt 2
7: StackMap locals: java.lang.invoke.SwitchPoint[]
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 switchPoints [Ljava/lang/invoke/SwitchPoint;
3 5 1 switchPoint Ljava/lang/invoke/SwitchPoint;
MethodParameters:
Name Flags
switchPoints final
public static java.lang.Object withFilterScope(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
checkcast jdk.nashorn.internal.runtime.WithObject
invokevirtual jdk.nashorn.internal.runtime.WithObject.getProto:()Ljdk/nashorn/internal/runtime/ScriptObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 receiver Ljava/lang/Object;
MethodParameters:
Name Flags
receiver final
public jdk.nashorn.internal.runtime.ScriptObject getExpression();
descriptor: ()Ljdk/nashorn/internal/runtime/ScriptObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.WithObject.expression:Ljdk/nashorn/internal/runtime/ScriptObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/WithObject;
private static java.lang.invoke.MethodHandle findOwnMH(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/WithObject;
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
}
SourceFile: "WithObject.java"
NestMembers:
jdk.nashorn.internal.runtime.WithObject$1
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
jdk.nashorn.internal.runtime.WithObject$1