Class JSNewNode

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

public abstract class JSNewNode extends JavaScriptNode
11.2.2 The new Operator.
  • Field Details

  • Constructor Details

  • Method Details

    • hasTag

      public boolean hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag)
      Specified by:
      hasTag in interface com.oracle.truffle.api.instrumentation.InstrumentableNode
      Overrides:
      hasTag in class JavaScriptNode
    • getNodeObject

      public Object getNodeObject()
    • materializeInstrumentableNodes

      public com.oracle.truffle.api.instrumentation.InstrumentableNode materializeInstrumentableNodes(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
    • create

      public static JSNewNode create(JSContext context, JavaScriptNode function, AbstractFunctionArgumentsNode arguments)
    • getTarget

      public JavaScriptNode getTarget()
    • doNewReturnThis

      public Object doNewReturnThis(com.oracle.truffle.api.frame.VirtualFrame frame, JSDynamicObject target, JSFunctionCallNode callNew)
    • doNewJSProxy

      protected Object doNewJSProxy(com.oracle.truffle.api.frame.VirtualFrame frame, JSDynamicObject proxy, JSFunctionCallNode callNew)
    • doJSAdapter

      public Object doJSAdapter(com.oracle.truffle.api.frame.VirtualFrame frame, JSDynamicObject target)
    • createClassNotFoundError

      public Object createClassNotFoundError(com.oracle.truffle.api.frame.VirtualFrame frame, JSDynamicObject target)
    • doNewForeignObject

      public Object doNewForeignObject(com.oracle.truffle.api.frame.VirtualFrame frame, Object target, com.oracle.truffle.api.nodes.Node node, com.oracle.truffle.api.interop.InteropLibrary interop, ExportValueNode convert, ImportValueNode toJSType, com.oracle.truffle.api.profiles.InlinedConditionProfile isHostClassProf, com.oracle.truffle.api.profiles.InlinedConditionProfile isAbstractProf)
    • createFunctionTypeError

      public Object createFunctionTypeError(com.oracle.truffle.api.frame.VirtualFrame frame, Object target)
    • copyUninitialized

      protected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
      Overrides:
      copyUninitialized in class JavaScriptNode