Class JSArrayNextElementIndexNode

java.lang.Object
com.oracle.truffle.api.nodes.Node
All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface, Cloneable

public abstract class JSArrayNextElementIndexNode extends JSArrayElementIndexNode
Provides the functionality of ScriptArray.nextElementIndex but additionally adheres to the prototype chain. It is implemented in a specialized and profiled fashion.
  • Constructor Details

    • JSArrayNextElementIndexNode

      protected JSArrayNextElementIndexNode(JSContext context)
  • Method Details

    • create

      public static JSArrayNextElementIndexNode create(JSContext context)
    • executeLong

      public final long executeLong(Object object, long currentIndex, long length)
    • executeLong

      public abstract long executeLong(Object object, long currentIndex, long length, boolean isArray)
    • doWithoutHolesCached

      public long doWithoutHolesCached(JSDynamicObject object, long currentIndex, long length, boolean isArray, ScriptArray cachedArrayType)
    • doWithoutHolesUncached

      public long doWithoutHolesUncached(JSDynamicObject object, long currentIndex, long length, boolean isArray)
    • nextWithHolesCached

      public long nextWithHolesCached(JSDynamicObject object, long currentIndex, long length, boolean isArray, ScriptArray cachedArrayType, com.oracle.truffle.api.nodes.Node node, JSArrayNextElementIndexNode nextElementIndexNode, com.oracle.truffle.api.profiles.InlinedConditionProfile isPlusOne)
    • nextWithHolesUncached

      public long nextWithHolesUncached(JSDynamicObject object, long currentIndex, long length, boolean isArray, JSArrayNextElementIndexNode nextElementIndexNode, com.oracle.truffle.api.profiles.InlinedConditionProfile isPlusOne, com.oracle.truffle.api.profiles.InlinedExactClassProfile arrayTypeProfile)
    • nextObjectViaEnumeration

      public long nextObjectViaEnumeration(JSDynamicObject object, long currentIndex, long length, boolean isArray, JSHasPropertyNode hasPropertyNode)
    • nextObjectViaFullEnumeration

      public long nextObjectViaFullEnumeration(JSDynamicObject object, long currentIndex, long length, boolean isArray, JSHasPropertyNode hasPropertyNode)
    • nextObjectViaPolling

      public long nextObjectViaPolling(Object object, long currentIndex, long length, boolean isArray, JSHasPropertyNode hasPropertyNode)