public abstract class JSArrayLastElementIndexNode extends JSArrayElementIndexNode
context, MAX_CACHED_ARRAY_TYPES| Modifier | Constructor and Description |
|---|---|
protected |
JSArrayLastElementIndexNode(JSContext context) |
| Modifier and Type | Method and Description |
|---|---|
static JSArrayLastElementIndexNode |
create(JSContext context) |
long |
doObject(Object object,
long length,
boolean isArray,
JSHasPropertyNode hasPropertyNode) |
long |
doObjectViaEnumeration(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSHasPropertyNode hasPropertyNode) |
long |
doObjectViaFullEnumeration(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSHasPropertyNode hasPropertyNode) |
long |
doWithHolesCached(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
ScriptArray cachedArrayType,
JSArrayPreviousElementIndexNode previousElementIndexNode,
com.oracle.truffle.api.profiles.ConditionProfile isLengthMinusOne) |
long |
doWithHolesUncached(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSArrayPreviousElementIndexNode previousElementIndexNode,
com.oracle.truffle.api.profiles.ConditionProfile isLengthMinusOne,
com.oracle.truffle.api.profiles.ValueProfile arrayTypeProfile) |
long |
doWithoutHolesCached(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
ScriptArray cachedArrayType) |
long |
doWithoutHolesUncached(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray) |
long |
executeLong(Object object,
long length) |
abstract long |
executeLong(Object object,
long length,
boolean isArray) |
getArrayType, getArrayTypeIfArray, hasHoles, hasPrototypeElements, isArray, isSuitableForEnumBasedProcessing, isSuitableForEnumBasedProcessingUsingOwnKeys, isSupportedArraycopy, getLanguage, getRealm, onReplaceaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize, toStringprotected JSArrayLastElementIndexNode(JSContext context)
public static JSArrayLastElementIndexNode create(JSContext context)
public final long executeLong(Object object, long length)
public abstract long executeLong(Object object, long length, boolean isArray)
public long doWithoutHolesCached(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
ScriptArray cachedArrayType)
public long doWithoutHolesUncached(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray)
public long doWithHolesCached(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
ScriptArray cachedArrayType,
JSArrayPreviousElementIndexNode previousElementIndexNode,
com.oracle.truffle.api.profiles.ConditionProfile isLengthMinusOne)
public long doWithHolesUncached(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSArrayPreviousElementIndexNode previousElementIndexNode,
com.oracle.truffle.api.profiles.ConditionProfile isLengthMinusOne,
com.oracle.truffle.api.profiles.ValueProfile arrayTypeProfile)
public long doObjectViaEnumeration(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSHasPropertyNode hasPropertyNode)
public long doObjectViaFullEnumeration(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSHasPropertyNode hasPropertyNode)
public long doObject(Object object, long length, boolean isArray, JSHasPropertyNode hasPropertyNode)