Class ToArrayLengthNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.js.nodes.JavaScriptBaseNode
com.oracle.truffle.js.nodes.cast.ToArrayLengthNode
- All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface,Cloneable
Checks if the provided value is a valid length argument for the Array(len) constructor and
converts it to a uint32 value. Returns a negative result if the value is not a valid length.
-
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 -
Method Summary
Modifier and TypeMethodDescriptionprotected static longdoDouble(double value) protected static longdoInt(int value) protected static longdoLong(long value) protected static longdoSafeInteger(SafeInteger value) abstract longexecuteLong(Object value) booleanisTypeNumber(long result) protected static longrangeError(double value) protected static longrangeError(long value) protected static longrangeError(SafeInteger value) protected static longtypeNotNumber(Object value) Methods 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
-
Method Details
-
executeLong
-
isTypeNumber
public boolean isTypeNumber(long result) -
doInt
protected static long doInt(int value) -
doSafeInteger
-
rangeError
-
doLong
protected static long doLong(long value) -
rangeError
protected static long rangeError(long value) -
doDouble
protected static long doDouble(double value) -
rangeError
protected static long rangeError(double value) -
typeNotNumber
-