public abstract class ForEachIndexCallNode extends JavaScriptBaseNode
Modifier and Type | Class and Description |
---|---|
protected static class |
ForEachIndexCallNode.BackwardForEachIndexCallNode |
static class |
ForEachIndexCallNode.CallbackNode |
protected static class |
ForEachIndexCallNode.ForwardForEachIndexCallNode |
static class |
ForEachIndexCallNode.MaybeResult<T> |
static class |
ForEachIndexCallNode.MaybeResultNode |
Modifier and Type | Field and Description |
---|---|
protected boolean |
checkHasProperty |
protected JSContext |
context |
protected com.oracle.truffle.api.profiles.LoopConditionProfile |
loopCond |
protected ForEachIndexCallNode.MaybeResultNode |
maybeResultNode |
protected JSClassProfile |
targetClassProfile |
Modifier | Constructor and Description |
---|---|
protected |
ForEachIndexCallNode(JSContext context,
ForEachIndexCallNode.CallbackNode callbackArgumentsNode,
ForEachIndexCallNode.MaybeResultNode maybeResultNode,
boolean checkHasProperty) |
Modifier and Type | Method and Description |
---|---|
protected Object |
callback(long index,
Object value,
Object target,
Object callback,
Object callbackThisArg,
Object currentResult) |
static ForEachIndexCallNode |
create(JSContext context,
ForEachIndexCallNode.CallbackNode callbackArgumentsNode,
ForEachIndexCallNode.MaybeResultNode maybeResultNode,
boolean forward,
boolean checkHasProperty) |
Object |
executeForEachIndex(Object target,
Object callback,
Object callbackThisArg,
long fromIndex,
long length,
Object initialResult) |
protected abstract Object |
executeForEachIndexFast(JSDynamicObject target,
Object callback,
Object callbackThisArg,
long fromIndex,
long length,
Object initialResult) |
protected abstract Object |
executeForEachIndexSlow(Object target,
Object callback,
Object callbackThisArg,
long fromIndex,
long length,
Object initialResult) |
protected long |
firstElementIndex(JSDynamicObject target,
long length) |
protected Object |
foreignRead(Object target,
long index,
boolean isForeignArray) |
protected Object |
getElement(Object target,
long index,
boolean isForeign,
boolean isForeignArray) |
protected com.oracle.truffle.api.interop.InteropLibrary |
getInterop() |
protected boolean |
hasDetachedBuffer(Object view) |
protected boolean |
hasProperty(Object target,
long index) |
protected long |
lastElementIndex(JSDynamicObject target,
long length) |
protected Object |
readElementInBounds(JSDynamicObject target,
long index) |
copy, getLanguage, getRealm, hasOverloadedOperators, onReplace
accept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize, toString
protected final JSClassProfile targetClassProfile
protected final com.oracle.truffle.api.profiles.LoopConditionProfile loopCond
protected ForEachIndexCallNode.MaybeResultNode maybeResultNode
protected final JSContext context
protected final boolean checkHasProperty
protected ForEachIndexCallNode(JSContext context, ForEachIndexCallNode.CallbackNode callbackArgumentsNode, ForEachIndexCallNode.MaybeResultNode maybeResultNode, boolean checkHasProperty)
public static ForEachIndexCallNode create(JSContext context, ForEachIndexCallNode.CallbackNode callbackArgumentsNode, ForEachIndexCallNode.MaybeResultNode maybeResultNode, boolean forward, boolean checkHasProperty)
public final Object executeForEachIndex(Object target, Object callback, Object callbackThisArg, long fromIndex, long length, Object initialResult)
protected abstract Object executeForEachIndexFast(JSDynamicObject target, Object callback, Object callbackThisArg, long fromIndex, long length, Object initialResult)
protected abstract Object executeForEachIndexSlow(Object target, Object callback, Object callbackThisArg, long fromIndex, long length, Object initialResult)
protected final long firstElementIndex(JSDynamicObject target, long length)
protected final long lastElementIndex(JSDynamicObject target, long length)
protected final com.oracle.truffle.api.interop.InteropLibrary getInterop()
protected Object getElement(Object target, long index, boolean isForeign, boolean isForeignArray)
protected final boolean hasDetachedBuffer(Object view)
protected final Object callback(long index, Object value, Object target, Object callback, Object callbackThisArg, Object currentResult)
protected final Object readElementInBounds(JSDynamicObject target, long index)
protected final boolean hasProperty(Object target, long index)