public final class ConstantObjectArray extends AbstractConstantArray
DynamicArray.DynamicArrayCacheScriptArray.CreateWritableProfileAccess, ScriptArray.DefaultIterator, ScriptArray.SetLengthProfileAccesscache, INTEGRITY_LEVEL_FROZEN, INTEGRITY_LEVEL_FROZEN_LENGTH_READONLY, INTEGRITY_LEVEL_MASK, INTEGRITY_LEVEL_NONE, INTEGRITY_LEVEL_NONE_LENGTH_READONLY, INTEGRITY_LEVEL_NOT_EXTENSIBLE, INTEGRITY_LEVEL_NOT_EXTENSIBLE_LENGTH_READONLY, INTEGRITY_LEVEL_SEALED, INTEGRITY_LEVEL_SEALED_LENGTH_READONLY, INTEGRITY_LEVELS, integrityLevel, LENGTH_NOT_WRITABLE, LENGTH_WRITABLE_MASKEMPTY_OBJECT_ARRAY| Modifier and Type | Method and Description |
|---|---|
ScriptArray |
addRangeImpl(JSDynamicObject object,
long offset,
int size)
This method grows the array by adding more elements of a given size.
|
Object |
cloneArray(JSDynamicObject object) |
static AbstractConstantArray |
createConstantHolesObjectArray() |
static ConstantObjectArray |
createConstantObjectArray() |
AbstractObjectArray |
createWriteableDouble(JSDynamicObject object,
long index,
double value,
com.oracle.truffle.api.nodes.Node node,
ScriptArray.CreateWritableProfileAccess profile) |
AbstractObjectArray |
createWriteableInt(JSDynamicObject object,
long index,
int value,
com.oracle.truffle.api.nodes.Node node,
ScriptArray.CreateWritableProfileAccess profile) |
AbstractObjectArray |
createWriteableJSObject(JSDynamicObject object,
long index,
JSDynamicObject value,
com.oracle.truffle.api.nodes.Node node,
ScriptArray.CreateWritableProfileAccess profile) |
AbstractObjectArray |
createWriteableObject(JSDynamicObject object,
long index,
Object value,
com.oracle.truffle.api.nodes.Node node,
ScriptArray.CreateWritableProfileAccess profile) |
ScriptArray |
deleteElementImpl(JSDynamicObject object,
long index,
boolean strict) |
long |
firstElementIndex(JSDynamicObject object)
First element index (inclusive).
|
Object |
getElementInBounds(JSDynamicObject object,
int index) |
static Object |
getElementInBoundsDirect(JSDynamicObject object,
int index) |
boolean |
hasElement(JSDynamicObject object,
long index) |
boolean |
hasHoles(JSDynamicObject object) |
boolean |
isHolesType()
This array type can have holes.
|
long |
lastElementIndex(JSDynamicObject object)
Last element index (inclusive).
|
int |
lengthInt(JSDynamicObject object) |
long |
nextElementIndex(JSDynamicObject object,
long index0)
Returns the next index.
|
List<Object> |
ownPropertyKeys(JSDynamicObject object) |
long |
previousElementIndex(JSDynamicObject object,
long index0)
Returns the previous index.
|
ScriptArray |
removeRangeImpl(JSDynamicObject object,
long start,
long end)
This function deletes all elements in the range from [start..end[.
|
ScriptArray |
setLengthImpl(JSDynamicObject object,
long length,
com.oracle.truffle.api.nodes.Node node,
ScriptArray.SetLengthProfileAccess profile) |
protected DynamicArray |
withIntegrityLevel(int newIntegrityLevel) |
getElement, getElementInBounds, isInBoundsFast, length, setElementImplcreateCache, freeze, isExtensible, isFrozen, isLengthNotWritable, isSealed, maybePreinitializeCache, preventExtensions, seal, setIntegrityLevel, setLengthNotWritable, toStringaddRange, asIterable, canDeleteElement, cast, createConstantArray, createConstantEmptyArray, deleteElement, isInstance, makeMultiRangeList, makeRangeList, nextPower, ownPropertyKeysContiguous, ownPropertyKeysHoles, removeRange, removeRange, setElement, setLength, setLength, shiftRange, shiftRangeImpl, toArray, toString, traceArrayTransition, traceWrite, valueIsBytepublic static ConstantObjectArray createConstantObjectArray()
public static AbstractConstantArray createConstantHolesObjectArray()
public boolean hasElement(JSDynamicObject object, long index)
hasElement in class ScriptArraypublic Object getElementInBounds(JSDynamicObject object, int index)
getElementInBounds in class AbstractConstantArraypublic static Object getElementInBoundsDirect(JSDynamicObject object, int index)
public boolean hasHoles(JSDynamicObject object)
hasHoles in class AbstractConstantArraypublic int lengthInt(JSDynamicObject object)
lengthInt in class ScriptArraypublic Object cloneArray(JSDynamicObject object)
cloneArray in class DynamicArraypublic long nextElementIndex(JSDynamicObject object, long index0)
ScriptArraynextElementIndex in class AbstractConstantArraypublic long previousElementIndex(JSDynamicObject object, long index0)
ScriptArraypreviousElementIndex in class AbstractConstantArraypublic long firstElementIndex(JSDynamicObject object)
ScriptArrayfirstElementIndex in class AbstractConstantArraypublic long lastElementIndex(JSDynamicObject object)
ScriptArraylastElementIndex in class AbstractConstantArraypublic ScriptArray deleteElementImpl(JSDynamicObject object, long index, boolean strict)
deleteElementImpl in class ScriptArraypublic ScriptArray setLengthImpl(JSDynamicObject object, long length, com.oracle.truffle.api.nodes.Node node, ScriptArray.SetLengthProfileAccess profile)
setLengthImpl in class ScriptArraypublic AbstractObjectArray createWriteableInt(JSDynamicObject object, long index, int value, com.oracle.truffle.api.nodes.Node node, ScriptArray.CreateWritableProfileAccess profile)
createWriteableInt in class AbstractConstantArraypublic AbstractObjectArray createWriteableDouble(JSDynamicObject object, long index, double value, com.oracle.truffle.api.nodes.Node node, ScriptArray.CreateWritableProfileAccess profile)
createWriteableDouble in class AbstractConstantArraypublic AbstractObjectArray createWriteableJSObject(JSDynamicObject object, long index, JSDynamicObject value, com.oracle.truffle.api.nodes.Node node, ScriptArray.CreateWritableProfileAccess profile)
createWriteableJSObject in class AbstractConstantArraypublic AbstractObjectArray createWriteableObject(JSDynamicObject object, long index, Object value, com.oracle.truffle.api.nodes.Node node, ScriptArray.CreateWritableProfileAccess profile)
createWriteableObject in class AbstractConstantArraypublic boolean isHolesType()
isHolesType in class ScriptArraypublic ScriptArray removeRangeImpl(JSDynamicObject object, long start, long end)
ScriptArrayremoveRangeImpl in class ScriptArraypublic ScriptArray addRangeImpl(JSDynamicObject object, long offset, int size)
ScriptArrayaddRangeImpl in class ScriptArrayoffset - starting offset positionsize - size of the inserted empty arrayScriptArray instance with the new sizeprotected DynamicArray withIntegrityLevel(int newIntegrityLevel)
withIntegrityLevel in class DynamicArraypublic List<Object> ownPropertyKeys(JSDynamicObject object)
ownPropertyKeys in class ScriptArray