public abstract class com.oracle.truffle.js.nodes.interop.JSInteropInstantiateNode extends com.oracle.truffle.js.nodes.interop.JSInteropCallNode
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.truffle.js.nodes.interop.JSInteropInstantiateNode
super_class: com.oracle.truffle.js.nodes.interop.JSInteropCallNode
{
protected void <init>();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.oracle.truffle.js.nodes.interop.JSInteropCallNode.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/js/nodes/interop/JSInteropInstantiateNode;
public abstract java.lang.Object execute(com.oracle.truffle.api.object.DynamicObject, java.lang.Object[]);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;[Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
MethodParameters:
Name Flags
function
args
java.lang.Object doDefault(com.oracle.truffle.api.object.DynamicObject, java.lang.Object[], com.oracle.truffle.js.nodes.unary.IsConstructorNode, com.oracle.truffle.js.nodes.function.JSFunctionCallNode, com.oracle.truffle.js.nodes.interop.ImportValueNode);
descriptor: (Lcom/oracle/truffle/api/object/DynamicObject;[Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/unary/IsConstructorNode;Lcom/oracle/truffle/js/nodes/function/JSFunctionCallNode;Lcom/oracle/truffle/js/nodes/interop/ImportValueNode;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=4, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 3
aload 1
invokevirtual com.oracle.truffle.js.nodes.unary.IsConstructorNode.executeBoolean:(Ljava/lang/Object;)Z
ifne 2
1: invokestatic com.oracle.truffle.api.interop.UnsupportedMessageException.create:()Lcom/oracle/truffle/api/interop/UnsupportedMessageException;
athrow
2: StackMap locals:
StackMap stack:
aload 2
aload 5
invokestatic com.oracle.truffle.js.nodes.interop.JSInteropInstantiateNode.prepare:([Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/interop/ImportValueNode;)[Ljava/lang/Object;
astore 6
start local 6 3: aload 4
ifnonnull 5
4: aload 1
aload 6
invokestatic com.oracle.truffle.js.runtime.JSRuntime.construct:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
areturn
5: StackMap locals: java.lang.Object[]
StackMap stack:
aload 4
getstatic com.oracle.truffle.js.runtime.builtins.JSFunction.CONSTRUCT:Lcom/oracle/truffle/js/runtime/objects/JSDynamicObject;
aload 1
aload 6
invokestatic com.oracle.truffle.js.runtime.JSArguments.create:(Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;)[Ljava/lang/Object;
invokevirtual com.oracle.truffle.js.nodes.function.JSFunctionCallNode.executeCall:([Ljava/lang/Object;)Ljava/lang/Object;
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 6 0 this Lcom/oracle/truffle/js/nodes/interop/JSInteropInstantiateNode;
0 6 1 function Lcom/oracle/truffle/api/object/DynamicObject;
0 6 2 arguments [Ljava/lang/Object;
0 6 3 isConstructorNode Lcom/oracle/truffle/js/nodes/unary/IsConstructorNode;
0 6 4 callNode Lcom/oracle/truffle/js/nodes/function/JSFunctionCallNode;
0 6 5 importValueNode Lcom/oracle/truffle/js/nodes/interop/ImportValueNode;
3 6 6 preparedArgs [Ljava/lang/Object;
Exceptions:
throws com.oracle.truffle.api.interop.UnsupportedMessageException
RuntimeVisibleAnnotations:
com.oracle.truffle.api.dsl.Specialization()
RuntimeInvisibleParameterAnnotations:
0:
1:
2:
com.oracle.truffle.api.dsl.Cached()
3:
com.oracle.truffle.api.dsl.Cached(value = "createNew()", uncached = "getUncachedCall()")
4:
com.oracle.truffle.api.dsl.Cached()
MethodParameters:
Name Flags
function
arguments
isConstructorNode
callNode
importValueNode
}
SourceFile: "JSInteropInstantiateNode.java"
RuntimeInvisibleAnnotations:
com.oracle.truffle.api.dsl.GenerateUncached()