Class JSToIndexNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.js.nodes.JavaScriptBaseNode
com.oracle.truffle.js.nodes.cast.JSToIndexNode
- All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface,Cloneable
Implementation of the abstract operation ToIndex(value) (ES7 7.1.17).
-
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 TypeMethodDescriptionstatic JSToIndexNodecreate()protected longdoDouble(double value, com.oracle.truffle.api.profiles.InlinedBranchProfile negativeIndexBranch, com.oracle.truffle.api.profiles.InlinedBranchProfile tooLargeIndexBranch) protected longdoInt(int value, com.oracle.truffle.api.profiles.InlinedBranchProfile negativeIndexBranch) protected static longdoObject(Object value, JSToNumberNode toNumberNode, JSToIndexNode recursiveToIndexNode) protected longdoSafeInteger(SafeInteger value, com.oracle.truffle.api.profiles.InlinedBranchProfile negativeIndexBranch) protected static longdoUndefined(Object value) abstract longexecuteLong(Object value) Methods inherited from class com.oracle.truffle.js.nodes.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
-
Constructor Details
-
JSToIndexNode
public JSToIndexNode()
-
-
Method Details
-
create
-
executeLong
-
doInt
protected long doInt(int value, com.oracle.truffle.api.profiles.InlinedBranchProfile negativeIndexBranch) -
doSafeInteger
protected long doSafeInteger(SafeInteger value, com.oracle.truffle.api.profiles.InlinedBranchProfile negativeIndexBranch) -
doDouble
protected long doDouble(double value, com.oracle.truffle.api.profiles.InlinedBranchProfile negativeIndexBranch, com.oracle.truffle.api.profiles.InlinedBranchProfile tooLargeIndexBranch) -
doUndefined
-
doObject
protected static long doObject(Object value, JSToNumberNode toNumberNode, JSToIndexNode recursiveToIndexNode)
-