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

public abstract class ToArrayIndexNoToPropertyKeyNode extends JavaScriptBaseNode
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
    Modifier
    Constructor
    Description
    protected
     
  • Method Summary

    Modifier and Type
    Method
    Description
    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)
     
    protected static long
    convertFromStringNotInRange(com.oracle.truffle.api.strings.TruffleString index)
     
    protected static long
     
    protected static long
     
    protected static long
    doDoubleAsIntIndex(double value)
     
    protected static long
    doDoubleAsUintIndex(double value)
     
    protected static long
    doDoubleNonArrayIndex(double value)
     
    protected static long
    doInteger(int value)
     
    protected static long
     
    protected static long
    doLong(long value)
     
    protected static long
    doLongNonArrayIndex(long value)
     
    protected static long
    doNonArrayIndex(Object value, com.oracle.truffle.api.interop.InteropLibrary interop)
     
    protected static boolean
    doubleIsIntIndex(double d)
     
    protected static boolean
     
    abstract long
    executeLong(com.oracle.truffle.api.nodes.Node node, Object value)
     
    protected static boolean
     

    Methods inherited from class com.oracle.truffle.js.nodes.JavaScriptBaseNode

    copy, getJSContext, getLanguage, getLanguageOptions, getRealm, hasOverloadedOperators, onReplace

    Methods 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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • ToArrayIndexNoToPropertyKeyNode

      protected ToArrayIndexNoToPropertyKeyNode()
  • Method Details

    • executeLong

      public abstract long executeLong(com.oracle.truffle.api.nodes.Node node, Object value)
    • 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

      protected static long doBigInt(BigInt value)
    • doBigIntNonArrayIndex

      protected static long doBigIntNonArrayIndex(BigInt value)
    • 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

      protected static boolean notArrayIndex(Object o)
    • doNonArrayIndex

      protected static long doNonArrayIndex(Object value, com.oracle.truffle.api.interop.InteropLibrary interop)