class com.oracle.truffle.js.parser.env.Environment$2 implements com.oracle.truffle.js.parser.env.Environment$WrapClosure
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.js.parser.env.Environment$2
super_class: java.lang.Object
{
final com.oracle.truffle.js.parser.env.Environment this$0;
descriptor: Lcom/oracle/truffle/js/parser/env/Environment;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final java.lang.String val$name;
descriptor: Ljava/lang/String;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final java.lang.String val$withVarName;
descriptor: Ljava/lang/String;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(com.oracle.truffle.js.parser.env.Environment, java.lang.String, java.lang.String);
descriptor: (Lcom/oracle/truffle/js/parser/env/Environment;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=2, locals=4, args_size=4
start local 0 0: aload 0
aload 1
putfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
aload 0
aload 2
putfield com.oracle.truffle.js.parser.env.Environment$2.val$name:Ljava/lang/String;
aload 0
aload 3
putfield com.oracle.truffle.js.parser.env.Environment$2.val$withVarName:Ljava/lang/String;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/parser/env/Environment$2;
MethodParameters:
Name Flags
this$0 final
val$name final
val$withVarName final
public com.oracle.truffle.js.nodes.JavaScriptNode apply(com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.parser.env.Environment$WrapAccess);
descriptor: (Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/parser/env/Environment$WrapAccess;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 2
getstatic com.oracle.truffle.js.parser.env.Environment$WrapAccess.Delete:Lcom/oracle/truffle/js/parser/env/Environment$WrapAccess;
if_acmpne 3
1: aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.factory:Lcom/oracle/truffle/js/nodes/NodeFactory;
aconst_null
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.factory:Lcom/oracle/truffle/js/nodes/NodeFactory;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.val$name:Ljava/lang/String;
invokevirtual com.oracle.truffle.js.nodes.NodeFactory.createConstantString:(Ljava/lang/String;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
invokevirtual com.oracle.truffle.js.parser.env.Environment.isStrictMode:()Z
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.context:Lcom/oracle/truffle/js/runtime/JSContext;
invokevirtual com.oracle.truffle.js.nodes.NodeFactory.createDeleteProperty:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;ZLcom/oracle/truffle/js/runtime/JSContext;)Lcom/oracle/truffle/js/nodes/access/JSTargetableNode;
astore 3
start local 3 2: goto 12
end local 3 StackMap locals:
StackMap stack:
3: aload 2
getstatic com.oracle.truffle.js.parser.env.Environment$WrapAccess.Write:Lcom/oracle/truffle/js/parser/env/Environment$WrapAccess;
if_acmpne 7
4: getstatic com.oracle.truffle.js.parser.env.Environment.$assertionsDisabled:Z
ifne 5
aload 1
instanceof com.oracle.truffle.js.nodes.access.WriteNode
ifne 5
new java.lang.AssertionError
dup
aload 1
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.factory:Lcom/oracle/truffle/js/nodes/NodeFactory;
aconst_null
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.val$name:Ljava/lang/String;
aconst_null
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.context:Lcom/oracle/truffle/js/runtime/JSContext;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
invokevirtual com.oracle.truffle.js.parser.env.Environment.isStrictMode:()Z
invokevirtual com.oracle.truffle.js.nodes.NodeFactory.createWriteProperty:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/runtime/JSContext;Z)Lcom/oracle/truffle/js/nodes/access/WritePropertyNode;
astore 3
start local 3 6: goto 12
end local 3 StackMap locals:
StackMap stack:
7: aload 2
getstatic com.oracle.truffle.js.parser.env.Environment$WrapAccess.Read:Lcom/oracle/truffle/js/parser/env/Environment$WrapAccess;
if_acmpne 11
8: getstatic com.oracle.truffle.js.parser.env.Environment.$assertionsDisabled:Z
ifne 9
aload 1
instanceof com.oracle.truffle.js.nodes.ReadNode
ifne 9
aload 1
instanceof com.oracle.truffle.js.nodes.RepeatableNode
ifne 9
new java.lang.AssertionError
dup
aload 1
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
9: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.factory:Lcom/oracle/truffle/js/nodes/NodeFactory;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.context:Lcom/oracle/truffle/js/runtime/JSContext;
aconst_null
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.val$name:Ljava/lang/String;
invokevirtual com.oracle.truffle.js.nodes.NodeFactory.createReadProperty:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/lang/String;)Lcom/oracle/truffle/js/nodes/access/JSTargetableNode;
astore 3
start local 3 10: goto 12
end local 3 11: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
invokespecial java.lang.IllegalArgumentException.<init>:()V
athrow
start local 3 12: StackMap locals: com.oracle.truffle.js.nodes.access.JSTargetableNode
StackMap stack:
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.val$withVarName:Ljava/lang/String;
invokevirtual com.oracle.truffle.js.parser.env.Environment.findInternalSlot:(Ljava/lang/String;)Lcom/oracle/truffle/js/parser/env/Environment$VarRef;
astore 4
start local 4 13: aload 4
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
14: aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.factory:Lcom/oracle/truffle/js/nodes/NodeFactory;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.context:Lcom/oracle/truffle/js/runtime/JSContext;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.val$name:Ljava/lang/String;
aload 4
invokevirtual com.oracle.truffle.js.parser.env.Environment$VarRef.createReadNode:()Lcom/oracle/truffle/js/nodes/JavaScriptNode;
invokevirtual com.oracle.truffle.js.nodes.NodeFactory.createWithTarget:(Lcom/oracle/truffle/js/runtime/JSContext;Ljava/lang/String;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
astore 5
start local 5 15: aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.factory:Lcom/oracle/truffle/js/nodes/NodeFactory;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.val$name:Ljava/lang/String;
aload 5
aload 3
aload 1
invokevirtual com.oracle.truffle.js.nodes.NodeFactory.createWithVarWrapper:(Ljava/lang/String;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/access/JSTargetableNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/oracle/truffle/js/parser/env/Environment$2;
0 16 1 delegateNode Lcom/oracle/truffle/js/nodes/JavaScriptNode;
0 16 2 access Lcom/oracle/truffle/js/parser/env/Environment$WrapAccess;
2 3 3 withAccessNode Lcom/oracle/truffle/js/nodes/access/JSTargetableNode;
6 7 3 withAccessNode Lcom/oracle/truffle/js/nodes/access/JSTargetableNode;
10 11 3 withAccessNode Lcom/oracle/truffle/js/nodes/access/JSTargetableNode;
12 16 3 withAccessNode Lcom/oracle/truffle/js/nodes/access/JSTargetableNode;
13 16 4 withVarNameRef Lcom/oracle/truffle/js/parser/env/Environment$VarRef;
15 16 5 withTarget Lcom/oracle/truffle/js/nodes/JavaScriptNode;
MethodParameters:
Name Flags
delegateNode
access
public com.oracle.truffle.js.runtime.util.Pair<java.util.function.Supplier<com.oracle.truffle.js.nodes.JavaScriptNode>, java.util.function.UnaryOperator<com.oracle.truffle.js.nodes.JavaScriptNode>> applyCompound(com.oracle.truffle.js.runtime.util.Pair<java.util.function.Supplier<com.oracle.truffle.js.nodes.JavaScriptNode>, java.util.function.UnaryOperator<com.oracle.truffle.js.nodes.JavaScriptNode>>);
descriptor: (Lcom/oracle/truffle/js/runtime/util/Pair;)Lcom/oracle/truffle/js/runtime/util/Pair;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
invokevirtual com.oracle.truffle.js.parser.env.Environment.createTempVar:()Lcom/oracle/truffle/js/parser/env/Environment$VarRef;
astore 2
start local 2 1: aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.val$withVarName:Ljava/lang/String;
invokevirtual com.oracle.truffle.js.parser.env.Environment.findInternalSlot:(Ljava/lang/String;)Lcom/oracle/truffle/js/parser/env/Environment$VarRef;
astore 3
start local 3 2: aload 1
invokevirtual com.oracle.truffle.js.runtime.util.Pair.getFirst:()Ljava/lang/Object;
checkcast java.util.function.Supplier
astore 4
start local 4 3: aload 1
invokevirtual com.oracle.truffle.js.runtime.util.Pair.getSecond:()Ljava/lang/Object;
checkcast java.util.function.UnaryOperator
astore 5
start local 5 4: aload 0
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.val$name:Ljava/lang/String;
aload 2
aload 4
invokedynamic get(Lcom/oracle/truffle/js/parser/env/Environment$2;Ljava/lang/String;Lcom/oracle/truffle/js/parser/env/Environment$VarRef;Ljava/util/function/Supplier;)Ljava/util/function/Supplier;
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;
com/oracle/truffle/js/parser/env/Environment$2.lambda$0(Ljava/lang/String;Lcom/oracle/truffle/js/parser/env/Environment$VarRef;Ljava/util/function/Supplier;)Lcom/oracle/truffle/js/nodes/JavaScriptNode; (7)
()Lcom/oracle/truffle/js/nodes/JavaScriptNode;
astore 6
start local 6 5: aload 0
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.val$name:Ljava/lang/String;
aload 3
aload 2
aload 5
invokedynamic apply(Lcom/oracle/truffle/js/parser/env/Environment$2;Ljava/lang/String;Lcom/oracle/truffle/js/parser/env/Environment$VarRef;Lcom/oracle/truffle/js/parser/env/Environment$VarRef;Ljava/util/function/UnaryOperator;)Ljava/util/function/UnaryOperator;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/oracle/truffle/js/parser/env/Environment$2.lambda$1(Ljava/lang/String;Lcom/oracle/truffle/js/parser/env/Environment$VarRef;Lcom/oracle/truffle/js/parser/env/Environment$VarRef;Ljava/util/function/UnaryOperator;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/JavaScriptNode; (7)
(Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
astore 7
start local 7 6: new com.oracle.truffle.js.runtime.util.Pair
dup
aload 6
aload 7
invokespecial com.oracle.truffle.js.runtime.util.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/js/parser/env/Environment$2;
0 7 1 suppliers Lcom/oracle/truffle/js/runtime/util/Pair<Ljava/util/function/Supplier<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;Ljava/util/function/UnaryOperator<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;>;
1 7 2 withTargetTempVar Lcom/oracle/truffle/js/parser/env/Environment$VarRef;
2 7 3 withObjVar Lcom/oracle/truffle/js/parser/env/Environment$VarRef;
3 7 4 innerReadSupplier Ljava/util/function/Supplier<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;
4 7 5 innerWriteSupplier Ljava/util/function/UnaryOperator<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;
5 7 6 readSupplier Ljava/util/function/Supplier<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;
6 7 7 writeSupplier Ljava/util/function/UnaryOperator<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;
Signature: (Lcom/oracle/truffle/js/runtime/util/Pair<Ljava/util/function/Supplier<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;Ljava/util/function/UnaryOperator<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;>;)Lcom/oracle/truffle/js/runtime/util/Pair<Ljava/util/function/Supplier<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;Ljava/util/function/UnaryOperator<Lcom/oracle/truffle/js/nodes/JavaScriptNode;>;>;
MethodParameters:
Name Flags
suppliers
private com.oracle.truffle.js.nodes.JavaScriptNode lambda$0(java.lang.String, com.oracle.truffle.js.parser.env.Environment$VarRef, java.util.function.Supplier);
descriptor: (Ljava/lang/String;Lcom/oracle/truffle/js/parser/env/Environment$VarRef;Ljava/util/function/Supplier;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=4
start local 0 0: aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.factory:Lcom/oracle/truffle/js/nodes/NodeFactory;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.context:Lcom/oracle/truffle/js/runtime/JSContext;
aconst_null
aload 1
invokevirtual com.oracle.truffle.js.nodes.NodeFactory.createReadProperty:(Lcom/oracle/truffle/js/runtime/JSContext;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/lang/String;)Lcom/oracle/truffle/js/nodes/access/JSTargetableNode;
astore 4
start local 4 1: aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.factory:Lcom/oracle/truffle/js/nodes/NodeFactory;
aload 1
aload 2
invokevirtual com.oracle.truffle.js.parser.env.Environment$VarRef.createReadNode:()Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 4
aload 3
invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
checkcast com.oracle.truffle.js.nodes.JavaScriptNode
invokevirtual com.oracle.truffle.js.nodes.NodeFactory.createWithVarWrapper:(Ljava/lang/String;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/access/JSTargetableNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
areturn
end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/js/parser/env/Environment$2;
1 2 4 readWithProperty Lcom/oracle/truffle/js/nodes/access/JSTargetableNode;
private com.oracle.truffle.js.nodes.JavaScriptNode lambda$1(java.lang.String, com.oracle.truffle.js.parser.env.Environment$VarRef, com.oracle.truffle.js.parser.env.Environment$VarRef, java.util.function.UnaryOperator, com.oracle.truffle.js.nodes.JavaScriptNode);
descriptor: (Ljava/lang/String;Lcom/oracle/truffle/js/parser/env/Environment$VarRef;Lcom/oracle/truffle/js/parser/env/Environment$VarRef;Ljava/util/function/UnaryOperator;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=8, args_size=6
start local 0 start local 5 0: aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.factory:Lcom/oracle/truffle/js/nodes/NodeFactory;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.context:Lcom/oracle/truffle/js/runtime/JSContext;
aload 1
aload 2
invokevirtual com.oracle.truffle.js.parser.env.Environment$VarRef.createReadNode:()Lcom/oracle/truffle/js/nodes/JavaScriptNode;
invokevirtual com.oracle.truffle.js.nodes.NodeFactory.createWithTarget:(Lcom/oracle/truffle/js/runtime/JSContext;Ljava/lang/String;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
astore 6
start local 6 1: aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.factory:Lcom/oracle/truffle/js/nodes/NodeFactory;
aconst_null
aload 1
aconst_null
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.context:Lcom/oracle/truffle/js/runtime/JSContext;
aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
invokevirtual com.oracle.truffle.js.parser.env.Environment.isStrictMode:()Z
invokevirtual com.oracle.truffle.js.nodes.NodeFactory.createWriteProperty:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/runtime/JSContext;Z)Lcom/oracle/truffle/js/nodes/access/WritePropertyNode;
astore 7
start local 7 2: aload 0
getfield com.oracle.truffle.js.parser.env.Environment$2.this$0:Lcom/oracle/truffle/js/parser/env/Environment;
getfield com.oracle.truffle.js.parser.env.Environment.factory:Lcom/oracle/truffle/js/nodes/NodeFactory;
aload 1
aload 3
aload 6
invokevirtual com.oracle.truffle.js.parser.env.Environment$VarRef.createWriteNode:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
aload 7
aload 4
aload 5
invokeinterface java.util.function.UnaryOperator.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.js.nodes.JavaScriptNode
invokevirtual com.oracle.truffle.js.nodes.NodeFactory.createWithVarWrapper:(Ljava/lang/String;Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/access/JSTargetableNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
areturn
end local 7 end local 6 end local 5 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/js/parser/env/Environment$2;
0 3 5 rhs Lcom/oracle/truffle/js/nodes/JavaScriptNode;
1 3 6 withTarget Lcom/oracle/truffle/js/nodes/JavaScriptNode;
2 3 7 writeWithProperty Lcom/oracle/truffle/js/nodes/access/WritePropertyNode;
}
SourceFile: "Environment.java"
EnclosingMethod: com.oracle.truffle.js.parser.env.Environment.makeWithWrapClosure:(Lcom/oracle/truffle/js/parser/env/Environment$WrapClosure;Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/js/parser/env/Environment$WrapClosure;
NestHost: com.oracle.truffle.js.parser.env.Environment
InnerClasses:
com.oracle.truffle.js.parser.env.Environment$2
public abstract VarRef = com.oracle.truffle.js.parser.env.Environment$VarRef of com.oracle.truffle.js.parser.env.Environment
final WrapAccess = com.oracle.truffle.js.parser.env.Environment$WrapAccess of com.oracle.truffle.js.parser.env.Environment
abstract WrapClosure = com.oracle.truffle.js.parser.env.Environment$WrapClosure of com.oracle.truffle.js.parser.env.Environment
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles