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 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) |
| Modifier and Type | Method and Description |
|---|---|
protected Object |
callback(long index,
Object value,
Object target,
Object callback,
Object callbackThisArg,
Object currentResult) |
protected void |
checkHasDetachedBuffer(Object view) |
static ForEachIndexCallNode |
create(JSContext context,
ForEachIndexCallNode.CallbackNode callbackArgumentsNode,
ForEachIndexCallNode.MaybeResultNode maybeResultNode,
boolean forward) |
Object |
executeForEachIndex(Object target,
Object callback,
Object callbackThisArg,
long fromIndex,
long length,
Object initialResult) |
protected abstract Object |
executeForEachIndexFast(com.oracle.truffle.api.object.DynamicObject 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(com.oracle.truffle.api.object.DynamicObject 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 |
hasProperty(Object target,
long index) |
protected long |
lastElementIndex(com.oracle.truffle.api.object.DynamicObject target,
long length) |
protected Object |
readElementInBounds(com.oracle.truffle.api.object.DynamicObject target,
long index) |
copy, 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 final JSClassProfile targetClassProfile
protected final com.oracle.truffle.api.profiles.LoopConditionProfile loopCond
protected ForEachIndexCallNode.MaybeResultNode maybeResultNode
protected final JSContext context
protected ForEachIndexCallNode(JSContext context, ForEachIndexCallNode.CallbackNode callbackArgumentsNode, ForEachIndexCallNode.MaybeResultNode maybeResultNode)
public static ForEachIndexCallNode create(JSContext context, ForEachIndexCallNode.CallbackNode callbackArgumentsNode, ForEachIndexCallNode.MaybeResultNode maybeResultNode, boolean forward)
public final Object executeForEachIndex(Object target, Object callback, Object callbackThisArg, long fromIndex, long length, Object initialResult)
protected abstract Object executeForEachIndexFast(com.oracle.truffle.api.object.DynamicObject 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(com.oracle.truffle.api.object.DynamicObject target,
long length)
protected final long lastElementIndex(com.oracle.truffle.api.object.DynamicObject 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 void checkHasDetachedBuffer(Object view)
protected final Object callback(long index, Object value, Object target, Object callback, Object callbackThisArg, Object currentResult)
protected final Object readElementInBounds(com.oracle.truffle.api.object.DynamicObject target, long index)
protected final boolean hasProperty(Object target, long index)