public final class JSArray extends JSAbstractArray implements JSConstructorFactory.WithFunctionsAndSpecies, PrototypeSupplier
usesOrdinaryGetOwnProperty| Modifier and Type | Class and Description |
|---|---|
static class |
JSArray.ArrayLengthProxyProperty |
JSConstructorFactory.Default, JSConstructorFactory.WithFunctions, JSConstructorFactory.WithFunctionsAndSpecies| Modifier and Type | Field and Description |
|---|---|
static com.oracle.truffle.api.object.HiddenKey |
ARRAY_ITERATION_KIND_ID |
static String |
CLASS_NAME |
static String |
ENTRIES |
static JSArray |
INSTANCE |
static String |
ITERATOR_CLASS_NAME |
static String |
ITERATOR_PROTOTYPE_NAME |
static String |
PROTOTYPE_NAME |
ARRAY_LENGTH_NOT_WRITABLE, ARRAY_PROTOTYPE_NO_ELEMENTS_INVALIDATION, CANNOT_REDEFINE_PROPERTY_LENGTH, DEFAULT_JSARRAY_COMPARATOR, DEFAULT_JSARRAY_DOUBLE_COMPARATOR, DEFAULT_JSARRAY_INTEGER_COMPARATOR, LAZY_REGEX_ORIGINAL_INPUT_ID, LAZY_REGEX_RESULT_ID, LENGTH, MAKE_SLOW_ARRAY_NEVER_PART_OF_COMPILATION_MESSAGEEMPTY_STRING_ARRAY| Modifier and Type | Method and Description |
|---|---|
static com.oracle.truffle.api.object.DynamicObject |
create(JSContext context,
ScriptArray arrayType,
Object array,
ArrayAllocationSite site,
long length,
int usedLength,
int indexOffset,
int arrayOffset,
int holeCount) |
static com.oracle.truffle.api.object.DynamicObject |
create(JSContext context,
ScriptArray arrayType,
Object array,
long length) |
static com.oracle.truffle.api.object.DynamicObject |
create(JSContext context,
ScriptArray arrayType,
Object array,
long length,
int usedLength) |
static com.oracle.truffle.api.object.DynamicObject |
create(JSContext context,
ScriptArray arrayType,
Object array,
long length,
int usedLength,
int indexOffset,
int arrayOffset) |
static com.oracle.truffle.api.object.DynamicObject |
create(JSContext context,
ScriptArray arrayType,
Object array,
long length,
int usedLength,
int indexOffset,
int arrayOffset,
int holeCount) |
static com.oracle.truffle.api.object.DynamicObject |
createConstant(JSContext context,
Object[] elements) |
static com.oracle.truffle.api.object.DynamicObject |
createConstantByteArray(JSContext context,
byte[] byteArray) |
static com.oracle.truffle.api.object.DynamicObject |
createConstantDoubleArray(JSContext context,
double[] doubleArray) |
static com.oracle.truffle.api.object.DynamicObject |
createConstantEmptyArray(JSContext context) |
static com.oracle.truffle.api.object.DynamicObject |
createConstantEmptyArray(JSContext context,
ArrayAllocationSite site) |
static com.oracle.truffle.api.object.DynamicObject |
createConstantEmptyArray(JSContext context,
ArrayAllocationSite site,
int capacity) |
static com.oracle.truffle.api.object.DynamicObject |
createConstantEmptyArray(JSContext context,
int capacity) |
static com.oracle.truffle.api.object.DynamicObject |
createConstantIntArray(JSContext context,
int[] intArray) |
static com.oracle.truffle.api.object.DynamicObject |
createConstantObjectArray(JSContext context,
Object[] objectArray) |
static JSConstructor |
createConstructor(JSRealm realm) |
static com.oracle.truffle.api.object.DynamicObject |
createEmpty(JSContext context,
int length) |
static com.oracle.truffle.api.object.DynamicObject |
createEmpty(JSContext context,
long length) |
static com.oracle.truffle.api.object.DynamicObject |
createEmptyChecked(JSContext context,
long length)
Creates an empty array of a certain size.
|
static com.oracle.truffle.api.object.DynamicObject |
createEmptyZeroLength(JSContext context) |
static com.oracle.truffle.api.object.DynamicObject |
createLazyArray(JSContext context,
List<?> list,
int size) |
static com.oracle.truffle.api.object.DynamicObject |
createLazyRegexArray(JSContext context,
int length) |
static com.oracle.truffle.api.object.DynamicObject |
createLazyRegexArray(JSContext context,
int length,
Object regexResult,
String input,
com.oracle.truffle.api.object.DynamicObject groups,
com.oracle.truffle.api.object.DynamicObject indicesGroups) |
static com.oracle.truffle.api.object.DynamicObject |
createLazyRegexIndicesArray(JSContext context,
int length) |
com.oracle.truffle.api.object.DynamicObject |
createPrototype(JSRealm realm,
com.oracle.truffle.api.object.DynamicObject ctor) |
static com.oracle.truffle.api.object.DynamicObject |
createSparseArray(JSContext context,
long length) |
static com.oracle.truffle.api.object.DynamicObject |
createZeroBasedDoubleArray(JSContext context,
double[] doubleArray) |
static com.oracle.truffle.api.object.DynamicObject |
createZeroBasedHolesObjectArray(JSContext context,
Object[] objectArray,
int usedLength,
int arrayOffset,
int holeCount) |
static com.oracle.truffle.api.object.DynamicObject |
createZeroBasedIntArray(JSContext context,
int[] intArray) |
static com.oracle.truffle.api.object.DynamicObject |
createZeroBasedJSObjectArray(JSContext context,
com.oracle.truffle.api.object.DynamicObject[] objectArray) |
static com.oracle.truffle.api.object.DynamicObject |
createZeroBasedObjectArray(JSContext context,
Object[] objectArray) |
String |
getClassName() |
String |
getClassName(com.oracle.truffle.api.object.DynamicObject object)
The [[Class]] internal property.
|
com.oracle.truffle.api.object.DynamicObject |
getIntrinsicDefaultProto(JSRealm realm) |
List<Object> |
getOwnPropertyKeys(com.oracle.truffle.api.object.DynamicObject thisObj,
boolean strings,
boolean symbols)
GetOwnPropertyKeys (O, type).
|
static boolean |
isJSArray(Object obj) |
static boolean |
isJSFastArray(com.oracle.truffle.api.object.DynamicObject obj) |
static boolean |
isJSFastArray(Object obj) |
com.oracle.truffle.api.object.Shape |
makeInitialShape(JSContext context,
com.oracle.truffle.api.object.DynamicObject prototype) |
static boolean |
setLength(com.oracle.truffle.api.object.DynamicObject store,
Object value) |
arrayAccess, arrayGetAllocationSite, arrayGetArray, arrayGetArrayOffset, arrayGetArrayType, arrayGetHoleCount, arrayGetIndexOffset, arrayGetLength, arrayGetRegexResult, arrayGetRegexResultOriginalInput, arrayGetUsedLength, arraySetArray, arraySetArrayOffset, arraySetArrayType, arraySetHoleCount, arraySetIndexOffset, arraySetLength, arraySetLength, arraySetUsedLength, defineOwnProperty, defineOwnPropertyIndex, delete, delete, getBuiltinToStringTag, getLength, getOwnHelper, getOwnHelper, getOwnProperty, hasOwnProperty, hasOwnProperty, isSlowArray, makeSlowArray, ordinaryGetOwnPropertyArray, ownPropertyKeysFastArray, ownPropertyKeysSlowArray, preventExtensions, set, set, setIntegrityLevel, setLength, setPrototypeOf, testIntegrityLevel, toArray, toArrayLengthOrRangeError, toArrayLengthOrRangeError, toDisplayStringImpl, usesOrdinaryGetOwnPropertycheckProtoCycle, createSymbolSpeciesGetterFunction, deletePropertyDefault, getHelper, getHelper, getMethodHelper, getPrototypeOf, hasOnlyShapeProperties, hasProperty, hasProperty, invokeAccessorPropertySetter, isExtensible, ordinaryGetOwnProperty, ordinaryGetOwnPropertyIntl, ordinaryOwnPropertyKeys, ordinaryOwnPropertyKeys, ordinaryOwnPropertyKeysSlow, ordinarySet, ordinarySetIndex, ordinarySetWithReceiver, performOrdinarySetWithOwnDescriptor, preventExtensionsImpl, putConstructorSpeciesGetter, setIntegrityLevelFast, setPropertySlow, testIntegrityLevelFast, toString, usesOrdinaryIsExtensibledefaultToString, filterOwnPropertyKeys, formatToString, get, get, getToStringTag, isInstance, isInstance, isInstance, isInstance, ownPropertyKeys, testIntegrityLevelDefaultdispatch, equals, hashCode, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitfillConstructorcreateConstructorAndPrototypecreateConstructorObjectpublic static final String CLASS_NAME
public static final String PROTOTYPE_NAME
public static final String ITERATOR_CLASS_NAME
public static final String ITERATOR_PROTOTYPE_NAME
public static final String ENTRIES
public static final JSArray INSTANCE
public static final com.oracle.truffle.api.object.HiddenKey ARRAY_ITERATION_KIND_ID
public static com.oracle.truffle.api.object.DynamicObject createConstant(JSContext context, Object[] elements)
public static com.oracle.truffle.api.object.DynamicObject createEmpty(JSContext context, int length)
public static com.oracle.truffle.api.object.DynamicObject createEmpty(JSContext context, long length)
public static com.oracle.truffle.api.object.DynamicObject createEmptyChecked(JSContext context, long length)
public static com.oracle.truffle.api.object.DynamicObject createEmptyZeroLength(JSContext context)
public static com.oracle.truffle.api.object.DynamicObject create(JSContext context, ScriptArray arrayType, Object array, long length)
public static com.oracle.truffle.api.object.DynamicObject create(JSContext context, ScriptArray arrayType, Object array, long length, int usedLength)
public static com.oracle.truffle.api.object.DynamicObject create(JSContext context, ScriptArray arrayType, Object array, long length, int usedLength, int indexOffset, int arrayOffset)
public static com.oracle.truffle.api.object.DynamicObject create(JSContext context, ScriptArray arrayType, Object array, long length, int usedLength, int indexOffset, int arrayOffset, int holeCount)
public static com.oracle.truffle.api.object.DynamicObject create(JSContext context, ScriptArray arrayType, Object array, ArrayAllocationSite site, long length, int usedLength, int indexOffset, int arrayOffset, int holeCount)
public static boolean isJSArray(Object obj)
public static boolean isJSFastArray(Object obj)
public static boolean isJSFastArray(com.oracle.truffle.api.object.DynamicObject obj)
public String getClassName()
getClassName in interface JSConstructorFactorypublic String getClassName(com.oracle.truffle.api.object.DynamicObject object)
JSClassgetClassName in class JSClassobject - object to be usedpublic com.oracle.truffle.api.object.DynamicObject createPrototype(JSRealm realm, com.oracle.truffle.api.object.DynamicObject ctor)
createPrototype in interface JSConstructorFactorypublic com.oracle.truffle.api.object.Shape makeInitialShape(JSContext context, com.oracle.truffle.api.object.DynamicObject prototype)
makeInitialShape in class JSClasspublic List<Object> getOwnPropertyKeys(com.oracle.truffle.api.object.DynamicObject thisObj, boolean strings, boolean symbols)
JSClassgetOwnPropertyKeys in class JSAbstractArraypublic static JSConstructor createConstructor(JSRealm realm)
public static boolean setLength(com.oracle.truffle.api.object.DynamicObject store,
Object value)
public static com.oracle.truffle.api.object.DynamicObject createConstantEmptyArray(JSContext context, int capacity)
public static com.oracle.truffle.api.object.DynamicObject createConstantEmptyArray(JSContext context)
public static com.oracle.truffle.api.object.DynamicObject createConstantEmptyArray(JSContext context, ArrayAllocationSite site)
public static com.oracle.truffle.api.object.DynamicObject createConstantEmptyArray(JSContext context, ArrayAllocationSite site, int capacity)
public static com.oracle.truffle.api.object.DynamicObject createConstantByteArray(JSContext context, byte[] byteArray)
public static com.oracle.truffle.api.object.DynamicObject createConstantIntArray(JSContext context, int[] intArray)
public static com.oracle.truffle.api.object.DynamicObject createConstantDoubleArray(JSContext context, double[] doubleArray)
public static com.oracle.truffle.api.object.DynamicObject createConstantObjectArray(JSContext context, Object[] objectArray)
public static com.oracle.truffle.api.object.DynamicObject createZeroBasedHolesObjectArray(JSContext context, Object[] objectArray, int usedLength, int arrayOffset, int holeCount)
public static com.oracle.truffle.api.object.DynamicObject createZeroBasedIntArray(JSContext context, int[] intArray)
public static com.oracle.truffle.api.object.DynamicObject createZeroBasedDoubleArray(JSContext context, double[] doubleArray)
public static com.oracle.truffle.api.object.DynamicObject createZeroBasedObjectArray(JSContext context, Object[] objectArray)
public static com.oracle.truffle.api.object.DynamicObject createZeroBasedJSObjectArray(JSContext context, com.oracle.truffle.api.object.DynamicObject[] objectArray)
public static com.oracle.truffle.api.object.DynamicObject createSparseArray(JSContext context, long length)
public static com.oracle.truffle.api.object.DynamicObject createLazyRegexArray(JSContext context, int length)
public static com.oracle.truffle.api.object.DynamicObject createLazyRegexArray(JSContext context, int length, Object regexResult, String input, com.oracle.truffle.api.object.DynamicObject groups, com.oracle.truffle.api.object.DynamicObject indicesGroups)
public static com.oracle.truffle.api.object.DynamicObject createLazyRegexIndicesArray(JSContext context, int length)
public static com.oracle.truffle.api.object.DynamicObject createLazyArray(JSContext context, List<?> list, int size)
public com.oracle.truffle.api.object.DynamicObject getIntrinsicDefaultProto(JSRealm realm)
getIntrinsicDefaultProto in interface PrototypeSupplier