public abstract class JSToObjectArrayNode extends JavaScriptBaseNode
By default, throws TypeError for null or
undefined (can be changed by using JSToObjectArrayNode.create(JSContext, boolean)).
| Modifier and Type | Field and Description |
|---|---|
protected JSContext |
context |
protected boolean |
nullOrUndefinedAsEmptyArray |
| Modifier | Constructor and Description |
|---|---|
protected |
JSToObjectArrayNode(JSContext context,
boolean nullOrUndefinedAsEmptyArray) |
| Modifier and Type | Method and Description |
|---|---|
static JSToObjectArrayNode |
create(JSContext context) |
static JSToObjectArrayNode |
create(JSContext context,
boolean nullOrUndefinedAsEmptyArray) |
static JavaScriptNode |
create(JSContext context,
JavaScriptNode operand) |
protected Object[] |
doFallback(Object value) |
protected Object[] |
doForeignObject(Object obj,
com.oracle.truffle.api.interop.InteropLibrary interop,
com.oracle.truffle.api.profiles.BranchProfile hasPropertiesBranch,
ImportValueNode foreignConvertNode) |
protected Object[] |
doList(Object value) |
protected Object[] |
doNull(Object value) |
protected Object[] |
doUndefined(Object value) |
abstract Object[] |
executeObjectArray(Object value) |
protected Object[] |
passArray(Object[] array) |
protected Object[] |
toArray(com.oracle.truffle.api.object.DynamicObject obj,
JSGetLengthNode getLengthNode,
ReadElementNode readNode) |
protected Object[] |
toArrayBoolean(boolean value) |
protected Object[] |
toArrayDouble(double value) |
protected Object[] |
toArrayInt(int value) |
protected Object[] |
toArrayString(CharSequence value) |
copy, getLanguage, getRealm, onReplaceaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize, toStringprotected final JSContext context
protected final boolean nullOrUndefinedAsEmptyArray
protected JSToObjectArrayNode(JSContext context, boolean nullOrUndefinedAsEmptyArray)
public static JSToObjectArrayNode create(JSContext context)
public static JSToObjectArrayNode create(JSContext context, boolean nullOrUndefinedAsEmptyArray)
public static JavaScriptNode create(JSContext context, JavaScriptNode operand)
protected Object[] toArray(com.oracle.truffle.api.object.DynamicObject obj, JSGetLengthNode getLengthNode, ReadElementNode readNode)
protected Object[] toArrayString(CharSequence value)
protected Object[] toArrayInt(int value)
protected Object[] toArrayDouble(double value)
protected Object[] toArrayBoolean(boolean value)
protected Object[] doForeignObject(Object obj, com.oracle.truffle.api.interop.InteropLibrary interop, com.oracle.truffle.api.profiles.BranchProfile hasPropertiesBranch, ImportValueNode foreignConvertNode)