Class JavaScriptRootNode

java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.api.nodes.ExecutableNode
com.oracle.truffle.api.nodes.RootNode
com.oracle.truffle.js.runtime.JavaScriptRootNode
All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface, Cloneable
Direct Known Subclasses:
AsyncIteratorCloseNode.AsyncIteratorCloseRootNode, AsyncIteratorPrototypeBuiltins.AsyncIteratorAwaitNode.AsyncIteratorRootNode, ConstructorRootNode, InstanceofNode.OrdinaryHasInstanceRootNode, JavaScriptRealmBoundaryRootNode, NewTargetRootNode, PerformPromiseAllNode.PromiseAllMarkerRootNode, PromiseReactionJobNode.PromiseReactionJobRootNode, ThrowTypeErrorRootNode

public abstract class JavaScriptRootNode extends com.oracle.truffle.api.nodes.RootNode
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.oracle.truffle.api.nodes.Node

    com.oracle.truffle.api.nodes.Node.Child, com.oracle.truffle.api.nodes.Node.Children
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final com.oracle.truffle.api.frame.FrameDescriptor
     
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
     
    protected
     
    protected
    JavaScriptRootNode(JavaScriptLanguage lang, com.oracle.truffle.api.source.SourceSection sourceSection)
     
    protected
    JavaScriptRootNode(JavaScriptLanguage lang, com.oracle.truffle.api.source.SourceSection sourceSection, com.oracle.truffle.api.frame.FrameDescriptor frameDescriptor)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected boolean
     
    static List<com.oracle.truffle.api.TruffleStackTraceElement>
    findAsynchronousFrames(JavaScriptRootNode rootNode, com.oracle.truffle.api.frame.Frame frame)
     
    protected final JavaScriptLanguage
     
    protected final JSRealm
     
    com.oracle.truffle.api.source.SourceSection
     
    boolean
    isCaptureFramesForTrace(boolean compiledFrame)
     
    boolean
    Is this a regular JS function with standard arguments, to be included in stack traces.
    boolean
     
    boolean
    Is this a root node for the resumption of a suspended function.

    Methods inherited from class com.oracle.truffle.api.nodes.RootNode

    cloneUninitialized, computeSize, copy, createConstantNode, execute, findAsynchronousFrames, findBytecodeIndex, findInstrumentableCallNode, getCallTarget, getFrameDescriptor, getName, getParentFrameDescriptor, getQualifiedName, isCaptureFramesForTrace, isCaptureFramesForTrace, isCloneUninitializedSupported, isCloningAllowed, isInstrumentable, isSameFrame, isTrivial, prepareForAOT, prepareForCall, prepareForCompilation, prepareForInstrumentation, translateStackTraceElement

    Methods inherited from class com.oracle.truffle.api.nodes.ExecutableNode

    getLanguage, getLanguageInfo

    Methods inherited from class com.oracle.truffle.api.nodes.Node

    accept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, onReplace, replace, replace, reportPolymorphicSpecialize, reportReplace, toString

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • MODULE_DUMMY_FRAMEDESCRIPTOR

      public static final com.oracle.truffle.api.frame.FrameDescriptor MODULE_DUMMY_FRAMEDESCRIPTOR
  • Constructor Details

    • JavaScriptRootNode

      protected JavaScriptRootNode()
    • JavaScriptRootNode

      protected JavaScriptRootNode(JavaScriptLanguage lang)
    • JavaScriptRootNode

      protected JavaScriptRootNode(JavaScriptLanguage lang, com.oracle.truffle.api.source.SourceSection sourceSection)
    • JavaScriptRootNode

      protected JavaScriptRootNode(JavaScriptLanguage lang, com.oracle.truffle.api.source.SourceSection sourceSection, com.oracle.truffle.api.frame.FrameDescriptor frameDescriptor)
  • Method Details

    • getSourceSection

      public com.oracle.truffle.api.source.SourceSection getSourceSection()
      Overrides:
      getSourceSection in class com.oracle.truffle.api.nodes.Node
    • isInternal

      public boolean isInternal()
      Overrides:
      isInternal in class com.oracle.truffle.api.nodes.RootNode
    • isFunction

      public boolean isFunction()
      Is this a regular JS function with standard arguments, to be included in stack traces.
    • isResumption

      public boolean isResumption()
      Is this a root node for the resumption of a suspended function.
    • isCaptureFramesForTrace

      public boolean isCaptureFramesForTrace(boolean compiledFrame)
      Overrides:
      isCaptureFramesForTrace in class com.oracle.truffle.api.nodes.RootNode
    • countsTowardsStackTraceLimit

      protected boolean countsTowardsStackTraceLimit()
      Overrides:
      countsTowardsStackTraceLimit in class com.oracle.truffle.api.nodes.RootNode
    • findAsynchronousFrames

      public static List<com.oracle.truffle.api.TruffleStackTraceElement> findAsynchronousFrames(JavaScriptRootNode rootNode, com.oracle.truffle.api.frame.Frame frame)
    • getRealm

      protected final JSRealm getRealm()
    • getLanguage

      protected final JavaScriptLanguage getLanguage()