Class AbstractObjectArray
java.lang.Object
com.oracle.truffle.js.runtime.array.ScriptArray
com.oracle.truffle.js.runtime.array.DynamicArray
com.oracle.truffle.js.runtime.array.dyn.AbstractWritableArray
com.oracle.truffle.js.runtime.array.dyn.AbstractObjectArray
- Direct Known Subclasses:
AbstractContiguousObjectArray,ZeroBasedObjectArray
-
Nested Class Summary
Nested classes/interfaces inherited from class com.oracle.truffle.js.runtime.array.dyn.AbstractWritableArray
AbstractWritableArray.SetSupportedProfileAccessNested classes/interfaces inherited from class com.oracle.truffle.js.runtime.array.DynamicArray
DynamicArray.DynamicArrayCacheNested classes/interfaces inherited from class com.oracle.truffle.js.runtime.array.ScriptArray
ScriptArray.CreateWritableProfileAccess, ScriptArray.DefaultIterator, ScriptArray.SetLengthProfileAccess -
Field Summary
Fields inherited from class com.oracle.truffle.js.runtime.array.DynamicArray
cache, 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_MASKFields inherited from class com.oracle.truffle.js.runtime.array.ScriptArray
EMPTY_OBJECT_ARRAY -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractObjectArray(int integrityLevel, DynamicArray.DynamicArrayCache cache) -
Method Summary
Modifier and TypeMethodDescriptionfinal ObjectallocateArray(int length) protected ObjectcastNonNull(Object value) protected static ObjectcheckNonNull(Object value) cloneArray(JSDynamicObject object) deleteElementImpl(JSDynamicObject object, long index, boolean strict) protected final voidfillHoles(JSDynamicObject object, int internalIndex, int grown, com.oracle.truffle.api.nodes.Node node, AbstractWritableArray.SetSupportedProfileAccess profile) protected static Object[]getArray(JSDynamicObject object) protected final intgetArrayCapacity(JSDynamicObject object) getInBoundsFast(JSDynamicObject object, int index) abstract ObjectgetInBoundsFastObject(JSDynamicObject object, int index) protected final booleanisHolePrepared(JSDynamicObject object, int preparedIndex) Returns true when the array contains a hole at that index.protected final voidmoveRangePrepared(JSDynamicObject object, int src, int dst, int len) Movelenelements fromsrctodst.protected final voidresizeArray(JSDynamicObject object, int newCapacity, int oldCapacity, int offset) final ScriptArraysetElementImpl(JSDynamicObject object, long index, Object value, boolean strict) protected final voidsetHoleValue(JSDynamicObject object, int preparedIndex) final voidsetInBounds(JSDynamicObject object, int index, Object value, com.oracle.truffle.api.nodes.Node node, AbstractWritableArray.SetSupportedProfileAccess profile) abstract voidsetInBoundsFast(JSDynamicObject object, int index, Object value) final voidsetSupported(JSDynamicObject object, int index, Object value, com.oracle.truffle.api.nodes.Node node, AbstractWritableArray.SetSupportedProfileAccess profile) final AbstractWritableArraytoDouble(JSDynamicObject object, long index, double value) abstract AbstractObjectArraytoHoles(JSDynamicObject object, long index, Object value) final AbstractWritableArraytoObject(JSDynamicObject object, long index, Object value) protected abstract AbstractObjectArraywithIntegrityLevel(int newIntegrityLevel) Methods inherited from class com.oracle.truffle.js.runtime.array.dyn.AbstractWritableArray
assertHoleCount, checkFillHoles, clearUnusedArea, containsHoles, countHoles, deleteElementHoles, getArrayOffset, getElement, getElementInBounds, getInBoundsFastDouble, getInBoundsFastInt, getIndexOffset, getUsedLength, hasElement, hasHoles, hasHolesOrUnused, 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, setArrayProperties, setIndexOffset, setLengthImpl, setLengthLess, setLengthLessContiguous, setLengthLessZeroBased, shiftRangeImpl, toContiguous, toNonContiguous, toNonHoles, toSparse, traceWriteValue, unusedElementsAreHolesMethods inherited from class com.oracle.truffle.js.runtime.array.DynamicArray
createCache, freeze, isExtensible, isFrozen, isLengthNotWritable, isSealed, maybePreinitializeCache, preventExtensions, seal, setIntegrityLevel, setLengthNotWritable, toStringMethods inherited from class com.oracle.truffle.js.runtime.array.ScriptArray
addRange, addRangeImpl, asIterable, canDeleteElement, cast, createConstantArray, createConstantEmptyArray, deleteElement, firstElementIndex, isHolesType, isInstance, lastElementIndex, makeMultiRangeList, makeRangeList, nextPower, ownPropertyKeys, ownPropertyKeysContiguous, ownPropertyKeysHoles, removeRange, removeRange, removeRangeImpl, setElement, setLength, setLength, shiftRange, toArray, traceArrayTransition, traceWrite, valueIsByte
-
Constructor Details
-
AbstractObjectArray
-
-
Method Details
-
setInBoundsFast
-
setElementImpl
public final ScriptArray setElementImpl(JSDynamicObject object, long index, Object value, boolean strict) - Specified by:
setElementImplin classScriptArray
-
getInBoundsFast
- Specified by:
getInBoundsFastin classAbstractWritableArray
-
getArray
-
getInBoundsFastObject
-
setInBounds
public final void setInBounds(JSDynamicObject object, int index, Object value, com.oracle.truffle.api.nodes.Node node, AbstractWritableArray.SetSupportedProfileAccess profile) -
setSupported
public final void setSupported(JSDynamicObject object, int index, Object value, com.oracle.truffle.api.nodes.Node node, AbstractWritableArray.SetSupportedProfileAccess profile) -
setHoleValue
- Specified by:
setHoleValuein classAbstractWritableArray
-
fillHoles
protected final void fillHoles(JSDynamicObject object, int internalIndex, int grown, com.oracle.truffle.api.nodes.Node node, AbstractWritableArray.SetSupportedProfileAccess profile) - Overrides:
fillHolesin classAbstractWritableArray
-
isHolePrepared
Description copied from class:AbstractWritableArrayReturns true when the array contains a hole at that index. The index is a prepared (internal) index.- Specified by:
isHolePreparedin classAbstractWritableArray
-
getArrayCapacity
- Specified by:
getArrayCapacityin classAbstractWritableArray
-
resizeArray
protected final void resizeArray(JSDynamicObject object, int newCapacity, int oldCapacity, int offset) - Specified by:
resizeArrayin classAbstractWritableArray
-
toHoles
- Specified by:
toHolesin classAbstractWritableArray
-
toDouble
- Specified by:
toDoublein classAbstractWritableArray
-
toObject
- Specified by:
toObjectin classAbstractWritableArray
-
deleteElementImpl
- Specified by:
deleteElementImplin classScriptArray
-
moveRangePrepared
Description copied from class:AbstractWritableArrayMovelenelements fromsrctodst.- Specified by:
moveRangePreparedin classAbstractWritableArray
-
allocateArray
- Specified by:
allocateArrayin classAbstractWritableArray
-
cloneArray
- Specified by:
cloneArrayin classDynamicArray
-
withIntegrityLevel
- Specified by:
withIntegrityLevelin classAbstractWritableArray
-
checkNonNull
-
castNonNull
-