public abstract class JSArrayFirstElementIndexNode extends JSArrayElementIndexNode
context, MAX_CACHED_ARRAY_TYPES| Modifier | Constructor and Description |
|---|---|
protected |
JSArrayFirstElementIndexNode(JSContext context) |
| Modifier and Type | Method and Description |
|---|---|
static JSArrayFirstElementIndexNode |
create(JSContext context) |
long |
doObject(Object object,
long length,
boolean isArray,
JSHasPropertyNode hasPropertyNode) |
long |
doWithHolesCached(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
ScriptArray cachedArrayType,
JSArrayNextElementIndexNode nextElementIndexNode,
com.oracle.truffle.api.profiles.ConditionProfile isZero) |
long |
doWithHolesUncached(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSArrayNextElementIndexNode nextElementIndexNode,
com.oracle.truffle.api.profiles.ConditionProfile isZero,
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) |
long |
firstObjectViaEnumeration(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSHasPropertyNode hasPropertyNode) |
long |
firstObjectViaFullEnumeration(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSHasPropertyNode hasPropertyNode) |
getArrayType, getArrayTypeIfArray, hasHoles, hasPrototypeElements, isArray, isSuitableForEnumBasedProcessing, isSuitableForEnumBasedProcessingUsingOwnKeys, isSupportedArraycopy, onReplaceaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, lookupContextReference, lookupLanguageReference, notifyInserted, replace, replace, reportPolymorphicSpecialize, toStringprotected JSArrayFirstElementIndexNode(JSContext context)
public static JSArrayFirstElementIndexNode 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,
JSArrayNextElementIndexNode nextElementIndexNode,
com.oracle.truffle.api.profiles.ConditionProfile isZero)
public long doWithHolesUncached(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSArrayNextElementIndexNode nextElementIndexNode,
com.oracle.truffle.api.profiles.ConditionProfile isZero,
com.oracle.truffle.api.profiles.ValueProfile arrayTypeProfile)
public long firstObjectViaEnumeration(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSHasPropertyNode hasPropertyNode)
public long firstObjectViaFullEnumeration(com.oracle.truffle.api.object.DynamicObject object,
long length,
boolean isArray,
JSHasPropertyNode hasPropertyNode)
public long doObject(Object object, long length, boolean isArray, JSHasPropertyNode hasPropertyNode)