public abstract class ArrayLiteralNode extends JavaScriptNode
| Modifier and Type | Class and Description |
|---|---|
static class |
ArrayLiteralNode.ArrayContentType |
static class |
ArrayLiteralNode.SpreadArrayNode |
| Modifier and Type | Field and Description |
|---|---|
protected JSContext |
context |
INTERMEDIATE_VALUE| Modifier | Constructor and Description |
|---|---|
|
ArrayLiteralNode(ArrayLiteralNode copy) |
protected |
ArrayLiteralNode(JSContext context) |
| Modifier and Type | Method and Description |
|---|---|
static ArrayLiteralNode |
create(JSContext context,
JavaScriptNode[] elements) |
static byte[] |
createByteArray(Object[] values) |
static double[] |
createDoubleArray(Object[] values) |
static int[] |
createIntArray(Object[] values) |
static ArrayLiteralNode |
createWithSpread(JSContext context,
JavaScriptNode[] elements) |
com.oracle.truffle.api.instrumentation.InstrumentableNode.WrapperNode |
createWrapper(com.oracle.truffle.api.instrumentation.ProbeNode probe) |
Object |
execute(com.oracle.truffle.api.frame.VirtualFrame frame)
Executes this node using the specified context and frame and returns the result value.
|
abstract com.oracle.truffle.api.object.DynamicObject |
executeDynamicObject(com.oracle.truffle.api.frame.VirtualFrame frame) |
Object |
getNodeObject() |
boolean |
hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag) |
static ArrayLiteralNode.ArrayContentType |
identifyPrimitiveContentType(Object[] values,
boolean createBytes) |
boolean |
isResultAlwaysOfType(Class<?> clazz) |
addCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, copyUninitialized, executeBoolean, executeByte, executeCharacter, executeDouble, executeFloat, executeInt, executeLargeInteger, executeLong, executeObjectArray, executeString, executeTruffleObject, executeVoid, expressionToString, getSourceSection, hasSourceSection, isInstrumentable, onReplace, removeSourceSection, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTagsaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, lookupContextReference, lookupLanguageReference, notifyInserted, replace, replace, reportPolymorphicSpecializeprotected final JSContext context
public ArrayLiteralNode(ArrayLiteralNode copy)
protected ArrayLiteralNode(JSContext context)
public final Object execute(com.oracle.truffle.api.frame.VirtualFrame frame)
JavaScriptNodeexecute in class JavaScriptNodeframe - the frame of the currently executing guest language methodpublic boolean hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag)
hasTag in interface com.oracle.truffle.api.instrumentation.InstrumentableNodehasTag in class JavaScriptNodepublic Object getNodeObject()
public com.oracle.truffle.api.instrumentation.InstrumentableNode.WrapperNode createWrapper(com.oracle.truffle.api.instrumentation.ProbeNode probe)
createWrapper in interface com.oracle.truffle.api.instrumentation.InstrumentableNodecreateWrapper in class JavaScriptNodepublic abstract com.oracle.truffle.api.object.DynamicObject executeDynamicObject(com.oracle.truffle.api.frame.VirtualFrame frame)
executeDynamicObject in class JavaScriptNodepublic static ArrayLiteralNode create(JSContext context, JavaScriptNode[] elements)
public static ArrayLiteralNode createWithSpread(JSContext context, JavaScriptNode[] elements)
public static ArrayLiteralNode.ArrayContentType identifyPrimitiveContentType(Object[] values, boolean createBytes)
public static double[] createDoubleArray(Object[] values)
public static int[] createIntArray(Object[] values)
public static byte[] createByteArray(Object[] values)
public boolean isResultAlwaysOfType(Class<?> clazz)
isResultAlwaysOfType in class JavaScriptNode