Class ArrayElementInfoNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.js.nodes.JavaScriptBaseNode
com.oracle.truffle.js.nodes.interop.ArrayElementInfoNode
- All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface, Cloneable
This node implements the
isArrayElement* messages for arrays.-
Nested Class Summary
Nested classes/interfaces inherited from class com.oracle.truffle.api.nodes.Node
com.oracle.truffle.api.nodes.Node.Child, com.oracle.truffle.api.nodes.Node.Children -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final int -
Method Summary
Modifier and TypeMethodDescriptionabstract com.oracle.truffle.api.utilities.TriStateexecute(JSArrayBase receiver, long index, int query) Returns:TriState.TRUEif this array element is readable/modifiable/insertable/removable.final booleanexecuteBoolean(JSArrayBase receiver, long index, int query) final voidexecuteCheck(JSArrayBase receiver, long index, int query) Methods inherited from class JavaScriptBaseNode
copy, getJSContext, getLanguage, getLanguageOptions, getRealm, hasOverloadedOperators, onReplace, reportLoopCount, reportLoopCountMethods inherited from class com.oracle.truffle.api.nodes.Node
accept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize, reportReplace, toString
-
Field Details
-
READABLE
public static final int READABLE- See Also:
-
MODIFIABLE
public static final int MODIFIABLE- See Also:
-
INSERTABLE
public static final int INSERTABLE- See Also:
-
REMOVABLE
public static final int REMOVABLE- See Also:
-
WRITABLE
public static final int WRITABLE- See Also:
-
-
Method Details
-
execute
public abstract com.oracle.truffle.api.utilities.TriState execute(JSArrayBase receiver, long index, int query) Returns:TriState.TRUEif this array element is readable/modifiable/insertable/removable.TriState.FALSEif the operation cannot be performed for this array element.TriState.UNDEFINEDif the message is not supported for this array instance.
-
executeBoolean
-
executeCheck
public final void executeCheck(JSArrayBase receiver, long index, int query) throws com.oracle.truffle.api.interop.UnsupportedMessageException, com.oracle.truffle.api.interop.InvalidArrayIndexException - Throws:
com.oracle.truffle.api.interop.UnsupportedMessageExceptioncom.oracle.truffle.api.interop.InvalidArrayIndexException
-