Class OwnPropertyKeysNode

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

public abstract class OwnPropertyKeysNode extends JavaScriptBaseNode
[[OwnPropertyKeys]]. The returned keys are instanceof TruffleString or Symbol. Requires a JSObject or a foreign object with members, throws a TypeError otherwise.
  • Constructor Details

    • OwnPropertyKeysNode

      public OwnPropertyKeysNode()
  • Method Details

    • execute

      public abstract List<Object> execute(Object obj)
    • doObject

      protected static List<Object> doObject(JSObject obj, JSClassProfile classProfile)
    • doForeignObject

      protected static List<Object> doForeignObject(Object obj, com.oracle.truffle.api.nodes.Node node, com.oracle.truffle.api.interop.InteropLibrary interop, com.oracle.truffle.api.interop.InteropLibrary members, com.oracle.truffle.api.interop.InteropLibrary asString, com.oracle.truffle.api.strings.TruffleString.SwitchEncodingNode switchEncodingNode, com.oracle.truffle.api.profiles.InlinedBranchProfile errorBranch)
    • doNotObject

      protected static List<Object> doNotObject(Object obj)
    • create

      public static OwnPropertyKeysNode create()
    • getUncached

      public static OwnPropertyKeysNode getUncached()