public final class ZeroBasedJSObjectArray extends AbstractJSObjectArray
AbstractWritableArray.SetSupportedProfileAccessDynamicArray.DynamicArrayCacheScriptArray.DefaultIterator, ScriptArray.ProfileAccess, ScriptArray.ProfileHolder, ScriptArray.SetLengthProfileAccessSET_SUPPORTED_PROFILE_ACCESScache, 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, SET_LENGTH_PROFILE| Modifier and Type | Method and Description |
|---|---|
ScriptArray |
addRangeImpl(com.oracle.truffle.api.object.DynamicObject object,
long offset,
int size)
This method grows the array by adding more elements of a given size.
|
static ZeroBasedJSObjectArray |
createZeroBasedJSObjectArray() |
long |
firstElementIndex(com.oracle.truffle.api.object.DynamicObject object)
First element index (inclusive).
|
com.oracle.truffle.api.object.DynamicObject |
getInBoundsFastJSObject(com.oracle.truffle.api.object.DynamicObject object,
int index) |
boolean |
hasHoles(com.oracle.truffle.api.object.DynamicObject object) |
boolean |
isSupported(com.oracle.truffle.api.object.DynamicObject object,
long index) |
long |
lastElementIndex(com.oracle.truffle.api.object.DynamicObject object)
Last element index (inclusive).
|
static <T> ZeroBasedJSObjectArray |
makeZeroBasedJSObjectArray(com.oracle.truffle.api.object.DynamicObject object,
int length,
int usedLength,
T[] array,
int integrityLevel) |
long |
nextElementIndex(com.oracle.truffle.api.object.DynamicObject object,
long index)
Returns the next index.
|
protected int |
prepareInBounds(com.oracle.truffle.api.object.DynamicObject object,
int index,
ScriptArray.ProfileHolder profile) |
protected int |
prepareInBoundsFast(com.oracle.truffle.api.object.DynamicObject object,
long index) |
protected int |
prepareSupported(com.oracle.truffle.api.object.DynamicObject object,
int index,
ScriptArray.ProfileHolder profile) |
ScriptArray |
removeRangeImpl(com.oracle.truffle.api.object.DynamicObject object,
long start,
long end)
This function deletes all elements in the range from [start..end[.
|
void |
setInBoundsFast(com.oracle.truffle.api.object.DynamicObject object,
int index,
JSDynamicObject value) |
protected void |
setLengthLess(com.oracle.truffle.api.object.DynamicObject object,
long length,
ScriptArray.ProfileHolder profile) |
Object[] |
toArray(com.oracle.truffle.api.object.DynamicObject object)
Creates an Object[] from this array, of size array.length.
|
ContiguousJSObjectArray |
toContiguous(com.oracle.truffle.api.object.DynamicObject object,
long index,
Object value) |
HolesJSObjectArray |
toHoles(com.oracle.truffle.api.object.DynamicObject object,
long index,
Object value) |
ZeroBasedObjectArray |
toObject(com.oracle.truffle.api.object.DynamicObject object,
long index,
Object value) |
protected ZeroBasedJSObjectArray |
withIntegrityLevel(int newIntegrityLevel) |
allocateArray, castNonNull, checkNonNull, cloneArray, deleteElementImpl, fillHoles, getArray, getArrayCapacity, getInBoundsFast, isHolePrepared, moveRangePrepared, resizeArray, setElementImpl, setHoleValue, setInBounds, setSupported, toDoubleclearUnusedArea, containsHoles, countHoles, createSetSupportedProfile, deleteElementHoles, getArrayOffset, getElement, getElementInBounds, getInBoundsFastDouble, getInBoundsFastInt, getIndexOffset, getUsedLength, hasElement, incrementHolesCount, isInBounds, isInBoundsFast, isSparse, isSupportedContiguous, isSupportedHoles, isSupportedZeroBased, length, lengthInt, nextElementIndexHoles, nextElementIndexZeroBased, prepareInBoundsContiguous, prepareInBoundsHoles, prepareInBoundsZeroBased, prepareSupportedContiguous, prepareSupportedHoles, prepareSupportedZeroBased, previousElementIndex, previousElementIndexHoles, removeRangeContiguous, removeRangeHoles, setArrayOffset, setArrayProperties, setIndexOffset, setLengthImpl, setLengthLessContiguous, setLengthLessZeroBased, toArrayZeroBased, toNonContiguous, toNonHoles, toSparse, traceWriteValuearray, createCache, freeze, isExtensible, isFrozen, isLengthNotWritable, isSealed, isStatelessType, preventExtensions, seal, setIntegrityLevel, setLengthNotWritable, toStringaddRange, asIterable, canDeleteElement, cast, createConstantArray, createConstantEmptyArray, createSetLengthProfile, deleteElement, isHolesType, isInstance, makeMultiRangeList, makeRangeList, nextPower, ownPropertyKeys, ownPropertyKeysContiguous, ownPropertyKeysHoles, removeRange, removeRange, setElement, setLength, setLength, toString, traceArrayTransition, traceWrite, valueIsBytepublic static <T> ZeroBasedJSObjectArray makeZeroBasedJSObjectArray(com.oracle.truffle.api.object.DynamicObject object, int length, int usedLength, T[] array, int integrityLevel)
public static ZeroBasedJSObjectArray createZeroBasedJSObjectArray()
public boolean isSupported(com.oracle.truffle.api.object.DynamicObject object,
long index)
isSupported in class AbstractWritableArraypublic com.oracle.truffle.api.object.DynamicObject getInBoundsFastJSObject(com.oracle.truffle.api.object.DynamicObject object,
int index)
getInBoundsFastJSObject in class AbstractJSObjectArraypublic void setInBoundsFast(com.oracle.truffle.api.object.DynamicObject object,
int index,
JSDynamicObject value)
setInBoundsFast in class AbstractJSObjectArrayprotected int prepareInBoundsFast(com.oracle.truffle.api.object.DynamicObject object,
long index)
prepareInBoundsFast in class AbstractWritableArrayprotected int prepareInBounds(com.oracle.truffle.api.object.DynamicObject object,
int index,
ScriptArray.ProfileHolder profile)
prepareInBounds in class AbstractWritableArrayprotected int prepareSupported(com.oracle.truffle.api.object.DynamicObject object,
int index,
ScriptArray.ProfileHolder profile)
prepareSupported in class AbstractWritableArrayprotected void setLengthLess(com.oracle.truffle.api.object.DynamicObject object,
long length,
ScriptArray.ProfileHolder profile)
setLengthLess in class AbstractWritableArraypublic ContiguousJSObjectArray toContiguous(com.oracle.truffle.api.object.DynamicObject object, long index, Object value)
toContiguous in class AbstractWritableArraypublic HolesJSObjectArray toHoles(com.oracle.truffle.api.object.DynamicObject object, long index, Object value)
toHoles in class AbstractJSObjectArraypublic ZeroBasedObjectArray toObject(com.oracle.truffle.api.object.DynamicObject object, long index, Object value)
toObject in class AbstractJSObjectArraypublic Object[] toArray(com.oracle.truffle.api.object.DynamicObject object)
ScriptArraytoArray in class AbstractWritableArraypublic long firstElementIndex(com.oracle.truffle.api.object.DynamicObject object)
ScriptArrayfirstElementIndex in class ScriptArraypublic long lastElementIndex(com.oracle.truffle.api.object.DynamicObject object)
ScriptArraylastElementIndex in class ScriptArraypublic ScriptArray removeRangeImpl(com.oracle.truffle.api.object.DynamicObject object, long start, long end)
ScriptArrayremoveRangeImpl in class ScriptArraypublic ScriptArray addRangeImpl(com.oracle.truffle.api.object.DynamicObject object, long offset, int size)
ScriptArrayaddRangeImpl in class ScriptArrayoffset - starting offset positionsize - size of the inserted empty arrayScriptArray instance with the new sizepublic boolean hasHoles(com.oracle.truffle.api.object.DynamicObject object)
hasHoles in class ScriptArrayprotected ZeroBasedJSObjectArray withIntegrityLevel(int newIntegrityLevel)
withIntegrityLevel in class AbstractJSObjectArraypublic long nextElementIndex(com.oracle.truffle.api.object.DynamicObject object,
long index)
ScriptArraynextElementIndex in class AbstractWritableArray