Class ToArrayIndexNoToPropertyKeyNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.js.nodes.JavaScriptBaseNode
com.oracle.truffle.js.nodes.cast.ToArrayIndexNoToPropertyKeyNode
- All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface,Cloneable
Converts value to array index or
JSRuntime.INVALID_ARRAY_INDEX.-
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 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected static longconvertFromString(com.oracle.truffle.api.nodes.Node node, com.oracle.truffle.api.strings.TruffleString index, com.oracle.truffle.api.strings.TruffleString.ReadCharUTF16Node stringReadNode, com.oracle.truffle.api.profiles.InlinedBranchProfile startsWithDigitBranch, com.oracle.truffle.api.profiles.InlinedBranchProfile isArrayIndexBranch, com.oracle.truffle.api.profiles.InlinedBranchProfile invalidArrayIndexBranch) protected static longconvertFromStringNotInRange(com.oracle.truffle.api.strings.TruffleString index) protected static longprotected static longdoBigIntNonArrayIndex(BigInt value) protected static longdoDoubleAsIntIndex(double value) protected static longdoDoubleAsUintIndex(double value) protected static longdoDoubleNonArrayIndex(double value) protected static longdoInteger(int value) protected static longdoIntegerNonArrayIndex(int value) protected static longdoLong(long value) protected static longdoLongNonArrayIndex(long value) protected static longdoNonArrayIndex(Object value, com.oracle.truffle.api.interop.InteropLibrary interop) protected static booleandoubleIsIntIndex(double d) protected static booleandoubleIsUintIndex(double d) abstract longexecuteLong(com.oracle.truffle.api.nodes.Node node, Object value) protected static booleanMethods inherited from class com.oracle.truffle.js.nodes.JavaScriptBaseNode
copy, getJSContext, getLanguage, getLanguageOptions, getRealm, hasOverloadedOperators, onReplaceMethods 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, toString
-
Constructor Details
-
ToArrayIndexNoToPropertyKeyNode
protected ToArrayIndexNoToPropertyKeyNode()
-
-
Method Details
-
executeLong
-
doInteger
protected static long doInteger(int value) -
doIntegerNonArrayIndex
protected static long doIntegerNonArrayIndex(int value) -
doLong
protected static long doLong(long value) -
doLongNonArrayIndex
protected static long doLongNonArrayIndex(long value) -
doubleIsIntIndex
protected static boolean doubleIsIntIndex(double d) -
doDoubleAsIntIndex
protected static long doDoubleAsIntIndex(double value) -
doubleIsUintIndex
protected static boolean doubleIsUintIndex(double d) -
doDoubleAsUintIndex
protected static long doDoubleAsUintIndex(double value) -
doDoubleNonArrayIndex
protected static long doDoubleNonArrayIndex(double value) -
doBigInt
-
doBigIntNonArrayIndex
-
convertFromString
protected static long convertFromString(com.oracle.truffle.api.nodes.Node node, com.oracle.truffle.api.strings.TruffleString index, com.oracle.truffle.api.strings.TruffleString.ReadCharUTF16Node stringReadNode, com.oracle.truffle.api.profiles.InlinedBranchProfile startsWithDigitBranch, com.oracle.truffle.api.profiles.InlinedBranchProfile isArrayIndexBranch, com.oracle.truffle.api.profiles.InlinedBranchProfile invalidArrayIndexBranch) -
convertFromStringNotInRange
protected static long convertFromStringNotInRange(com.oracle.truffle.api.strings.TruffleString index) -
notArrayIndex
-
doNonArrayIndex
protected static long doNonArrayIndex(Object value, com.oracle.truffle.api.interop.InteropLibrary interop)
-