public final class ConstantObjectArray extends AbstractConstantArray
AbstractConstantArray.CreateWritableProfileAccessDynamicArray.DynamicArrayCacheScriptArray.DefaultIterator, ScriptArray.ProfileAccess, ScriptArray.ProfileHolder, ScriptArray.SetLengthProfileAccessCREATE_WRITABLE_PROFILEcache, 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.
|
Object |
cloneArray(com.oracle.truffle.api.object.DynamicObject object) |
static AbstractConstantArray |
createConstantHolesObjectArray() |
static ConstantObjectArray |
createConstantObjectArray() |
AbstractObjectArray |
createWriteableDouble(com.oracle.truffle.api.object.DynamicObject object,
long index,
double value,
ScriptArray.ProfileHolder profile) |
AbstractObjectArray |
createWriteableInt(com.oracle.truffle.api.object.DynamicObject object,
long index,
int value,
ScriptArray.ProfileHolder profile) |
AbstractObjectArray |
createWriteableJSObject(com.oracle.truffle.api.object.DynamicObject object,
long index,
JSDynamicObject value,
ScriptArray.ProfileHolder profile) |
AbstractObjectArray |
createWriteableObject(com.oracle.truffle.api.object.DynamicObject object,
long index,
Object value,
ScriptArray.ProfileHolder profile) |
ScriptArray |
deleteElementImpl(com.oracle.truffle.api.object.DynamicObject object,
long index,
boolean strict) |
long |
firstElementIndex(com.oracle.truffle.api.object.DynamicObject object)
First element index (inclusive).
|
Object |
getElementInBounds(com.oracle.truffle.api.object.DynamicObject object,
int index) |
static Object |
getElementInBoundsDirect(com.oracle.truffle.api.object.DynamicObject object,
int index) |
boolean |
hasElement(com.oracle.truffle.api.object.DynamicObject object,
long index) |
boolean |
hasHoles(com.oracle.truffle.api.object.DynamicObject object) |
boolean |
isHolesType()
This array type can have holes.
|
long |
lastElementIndex(com.oracle.truffle.api.object.DynamicObject object)
Last element index (inclusive).
|
int |
lengthInt(com.oracle.truffle.api.object.DynamicObject object) |
long |
nextElementIndex(com.oracle.truffle.api.object.DynamicObject object,
long index0)
Returns the next index.
|
List<Object> |
ownPropertyKeys(com.oracle.truffle.api.object.DynamicObject object) |
long |
previousElementIndex(com.oracle.truffle.api.object.DynamicObject object,
long index0)
Returns the previous index.
|
ScriptArray |
removeRangeImpl(com.oracle.truffle.api.object.DynamicObject object,
long start,
long end)
This function deletes all elements in the range from [start..end[.
|
ScriptArray |
setLengthImpl(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.
|
protected DynamicArray |
withIntegrityLevel(int newIntegrityLevel) |
createCreateWritableProfile, getElement, getElementInBounds, isInBoundsFast, length, setElementImplarray, createCache, freeze, isExtensible, isFrozen, isLengthNotWritable, isSealed, preventExtensions, seal, setIntegrityLevel, setLengthNotWritable, toStringaddRange, asIterable, canDeleteElement, cast, createConstantArray, createConstantEmptyArray, createSetLengthProfile, deleteElement, isInstance, makeMultiRangeList, makeRangeList, nextPower, ownPropertyKeysContiguous, ownPropertyKeysHoles, removeRange, removeRange, setElement, setLength, setLength, toString, traceArrayTransition, traceWrite, valueIsBytepublic static ConstantObjectArray createConstantObjectArray()
public static AbstractConstantArray createConstantHolesObjectArray()
public boolean hasElement(com.oracle.truffle.api.object.DynamicObject object,
long index)
hasElement in class ScriptArraypublic Object getElementInBounds(com.oracle.truffle.api.object.DynamicObject object, int index)
getElementInBounds in class AbstractConstantArraypublic static Object getElementInBoundsDirect(com.oracle.truffle.api.object.DynamicObject object, int index)
public boolean hasHoles(com.oracle.truffle.api.object.DynamicObject object)
hasHoles in class AbstractConstantArraypublic int lengthInt(com.oracle.truffle.api.object.DynamicObject object)
lengthInt in class ScriptArraypublic Object[] toArray(com.oracle.truffle.api.object.DynamicObject object)
ScriptArraytoArray in class ScriptArraypublic Object cloneArray(com.oracle.truffle.api.object.DynamicObject object)
cloneArray in class DynamicArraypublic long nextElementIndex(com.oracle.truffle.api.object.DynamicObject object,
long index0)
ScriptArraynextElementIndex in class AbstractConstantArraypublic long previousElementIndex(com.oracle.truffle.api.object.DynamicObject object,
long index0)
ScriptArraypreviousElementIndex in class AbstractConstantArraypublic long firstElementIndex(com.oracle.truffle.api.object.DynamicObject object)
ScriptArrayfirstElementIndex in class AbstractConstantArraypublic long lastElementIndex(com.oracle.truffle.api.object.DynamicObject object)
ScriptArraylastElementIndex in class AbstractConstantArraypublic ScriptArray deleteElementImpl(com.oracle.truffle.api.object.DynamicObject object, long index, boolean strict)
deleteElementImpl in class ScriptArraypublic ScriptArray setLengthImpl(com.oracle.truffle.api.object.DynamicObject object, long length, ScriptArray.ProfileHolder profile)
setLengthImpl in class ScriptArraypublic AbstractObjectArray createWriteableInt(com.oracle.truffle.api.object.DynamicObject object, long index, int value, ScriptArray.ProfileHolder profile)
createWriteableInt in class AbstractConstantArraypublic AbstractObjectArray createWriteableDouble(com.oracle.truffle.api.object.DynamicObject object, long index, double value, ScriptArray.ProfileHolder profile)
createWriteableDouble in class AbstractConstantArraypublic AbstractObjectArray createWriteableJSObject(com.oracle.truffle.api.object.DynamicObject object, long index, JSDynamicObject value, ScriptArray.ProfileHolder profile)
createWriteableJSObject in class AbstractConstantArraypublic AbstractObjectArray createWriteableObject(com.oracle.truffle.api.object.DynamicObject object, long index, Object value, ScriptArray.ProfileHolder profile)
createWriteableObject in class AbstractConstantArraypublic boolean isHolesType()
isHolesType 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 sizeprotected DynamicArray withIntegrityLevel(int newIntegrityLevel)
withIntegrityLevel in class DynamicArraypublic List<Object> ownPropertyKeys(com.oracle.truffle.api.object.DynamicObject object)
ownPropertyKeys in class ScriptArray