Class JSArrayDeleteRangeNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.js.nodes.JavaScriptBaseNode
com.oracle.truffle.js.nodes.array.JSArrayDeleteRangeNode
- All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface,Cloneable
Deletes a range of indices from a JS array. Does not shrink the array.
Used by
Array.prototype.sort.-
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
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedJSArrayDeleteRangeNode(JSContext context, boolean orThrow) -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddenseArray(JSDynamicObject array, ScriptArray arrayType, long start, long end, ScriptArray cachedArrayType, DeletePropertyNode deletePropertyNode) protected voiddoUncached(JSDynamicObject array, ScriptArray arrayType, long start, long end, DeletePropertyNode deletePropertyNode, JSArrayNextElementIndexNode nextElementIndexNode) abstract voidexecute(JSDynamicObject array, ScriptArray arrayType, long start, long end) protected voidsparseArray(JSDynamicObject array, ScriptArray arrayType, long start, long end, ScriptArray cachedArrayType, DeletePropertyNode deletePropertyNode, JSArrayNextElementIndexNode nextElementIndexNode) 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
-
Field Details
-
context
-
orThrow
protected final boolean orThrow
-
-
Constructor Details
-
JSArrayDeleteRangeNode
-
-
Method Details
-
execute
-
denseArray
protected void denseArray(JSDynamicObject array, ScriptArray arrayType, long start, long end, ScriptArray cachedArrayType, DeletePropertyNode deletePropertyNode) -
sparseArray
protected void sparseArray(JSDynamicObject array, ScriptArray arrayType, long start, long end, ScriptArray cachedArrayType, DeletePropertyNode deletePropertyNode, JSArrayNextElementIndexNode nextElementIndexNode) -
doUncached
protected void doUncached(JSDynamicObject array, ScriptArray arrayType, long start, long end, DeletePropertyNode deletePropertyNode, JSArrayNextElementIndexNode nextElementIndexNode)
-