public abstract class AbstractIntArray extends AbstractWritableArray
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 | Constructor and Description |
|---|---|
protected |
AbstractIntArray(int integrityLevel,
DynamicArray.DynamicArrayCache cache) |
| Modifier and Type | Method and Description |
|---|---|
Object |
allocateArray(int length) |
Object |
cloneArray(com.oracle.truffle.api.object.DynamicObject object) |
protected static boolean |
containsHoleValue(com.oracle.truffle.api.object.DynamicObject object) |
protected static Object[] |
convertToObject(com.oracle.truffle.api.object.DynamicObject object) |
ScriptArray |
deleteElementImpl(com.oracle.truffle.api.object.DynamicObject object,
long index,
boolean strict) |
protected static int[] |
getArray(com.oracle.truffle.api.object.DynamicObject object) |
protected int |
getArrayCapacity(com.oracle.truffle.api.object.DynamicObject object) |
Object |
getInBoundsFast(com.oracle.truffle.api.object.DynamicObject object,
int index) |
abstract int |
getInBoundsFastInt(com.oracle.truffle.api.object.DynamicObject object,
int index) |
protected boolean |
isHolePrepared(com.oracle.truffle.api.object.DynamicObject object,
int preparedIndex)
Returns true when the array contains a hole at that index.
|
protected void |
moveRangePrepared(com.oracle.truffle.api.object.DynamicObject object,
int src,
int dst,
int len)
Move
len elements from src to dst. |
protected void |
resizeArray(com.oracle.truffle.api.object.DynamicObject object,
int newCapacity,
int oldCapacity,
int offset) |
ScriptArray |
setElementImpl(com.oracle.truffle.api.object.DynamicObject object,
long index,
Object value,
boolean strict) |
protected void |
setHoleValue(com.oracle.truffle.api.object.DynamicObject object,
int preparedIndex) |
void |
setInBounds(com.oracle.truffle.api.object.DynamicObject object,
int index,
int value,
ScriptArray.ProfileHolder profile) |
abstract void |
setInBoundsFast(com.oracle.truffle.api.object.DynamicObject object,
int index,
int value) |
void |
setSupported(com.oracle.truffle.api.object.DynamicObject object,
int index,
int value,
ScriptArray.ProfileHolder profile) |
abstract AbstractWritableArray |
toHoles(com.oracle.truffle.api.object.DynamicObject object,
long index,
Object value) |
protected abstract HolesObjectArray |
toObjectHoles(com.oracle.truffle.api.object.DynamicObject object) |
protected abstract AbstractIntArray |
withIntegrityLevel(int newIntegrityLevel) |
clearUnusedArea, containsHoles, countHoles, createSetSupportedProfile, deleteElementHoles, fillHoles, getArrayOffset, getElement, getElementInBounds, getInBoundsFastDouble, getIndexOffset, getUsedLength, hasElement, incrementHolesCount, isInBounds, isInBoundsFast, isSparse, isSupported, isSupportedContiguous, isSupportedHoles, isSupportedZeroBased, length, lengthInt, nextElementIndex, nextElementIndexHoles, nextElementIndexZeroBased, prepareInBounds, prepareInBoundsContiguous, prepareInBoundsFast, prepareInBoundsHoles, prepareInBoundsZeroBased, prepareSupported, prepareSupportedContiguous, prepareSupportedHoles, prepareSupportedZeroBased, previousElementIndex, previousElementIndexHoles, removeRangeContiguous, removeRangeHoles, setArrayOffset, setArrayProperties, setIndexOffset, setLengthImpl, setLengthLess, setLengthLessContiguous, setLengthLessZeroBased, toArray, toArrayZeroBased, toContiguous, toDouble, toNonContiguous, toNonHoles, toObject, toSparse, traceWriteValuearray, createCache, freeze, isExtensible, isFrozen, isLengthNotWritable, isSealed, preventExtensions, seal, setIntegrityLevel, setLengthNotWritable, toStringaddRange, addRangeImpl, asIterable, canDeleteElement, cast, createConstantArray, createConstantEmptyArray, createSetLengthProfile, deleteElement, firstElementIndex, hasHoles, isHolesType, isInstance, lastElementIndex, makeMultiRangeList, makeRangeList, nextPower, ownPropertyKeys, ownPropertyKeysContiguous, ownPropertyKeysHoles, removeRange, removeRange, removeRangeImpl, setElement, setLength, setLength, toString, traceArrayTransition, traceWrite, valueIsByteprotected AbstractIntArray(int integrityLevel,
DynamicArray.DynamicArrayCache cache)
public final ScriptArray setElementImpl(com.oracle.truffle.api.object.DynamicObject object, long index, Object value, boolean strict)
setElementImpl in class ScriptArraypublic Object getInBoundsFast(com.oracle.truffle.api.object.DynamicObject object, int index)
getInBoundsFast in class AbstractWritableArrayprotected static int[] getArray(com.oracle.truffle.api.object.DynamicObject object)
public abstract int getInBoundsFastInt(com.oracle.truffle.api.object.DynamicObject object,
int index)
getInBoundsFastInt in class AbstractWritableArraypublic abstract void setInBoundsFast(com.oracle.truffle.api.object.DynamicObject object,
int index,
int value)
public final void setInBounds(com.oracle.truffle.api.object.DynamicObject object,
int index,
int value,
ScriptArray.ProfileHolder profile)
public final void setSupported(com.oracle.truffle.api.object.DynamicObject object,
int index,
int value,
ScriptArray.ProfileHolder profile)
protected final void setHoleValue(com.oracle.truffle.api.object.DynamicObject object,
int preparedIndex)
setHoleValue in class AbstractWritableArrayprotected final boolean isHolePrepared(com.oracle.truffle.api.object.DynamicObject object,
int preparedIndex)
AbstractWritableArrayisHolePrepared in class AbstractWritableArrayprotected final int getArrayCapacity(com.oracle.truffle.api.object.DynamicObject object)
getArrayCapacity in class AbstractWritableArrayprotected final void resizeArray(com.oracle.truffle.api.object.DynamicObject object,
int newCapacity,
int oldCapacity,
int offset)
resizeArray in class AbstractWritableArraypublic abstract AbstractWritableArray toHoles(com.oracle.truffle.api.object.DynamicObject object, long index, Object value)
toHoles in class AbstractWritableArraypublic ScriptArray deleteElementImpl(com.oracle.truffle.api.object.DynamicObject object, long index, boolean strict)
deleteElementImpl in class ScriptArrayprotected abstract HolesObjectArray toObjectHoles(com.oracle.truffle.api.object.DynamicObject object)
protected static Object[] convertToObject(com.oracle.truffle.api.object.DynamicObject object)
protected static boolean containsHoleValue(com.oracle.truffle.api.object.DynamicObject object)
protected final void moveRangePrepared(com.oracle.truffle.api.object.DynamicObject object,
int src,
int dst,
int len)
AbstractWritableArraylen elements from src to dst.moveRangePrepared in class AbstractWritableArraypublic final Object allocateArray(int length)
allocateArray in class AbstractWritableArraypublic Object cloneArray(com.oracle.truffle.api.object.DynamicObject object)
cloneArray in class DynamicArrayprotected abstract AbstractIntArray withIntegrityLevel(int newIntegrityLevel)
withIntegrityLevel in class AbstractWritableArray