Package com.oracle.truffle.api.instrument


package com.oracle.truffle.api.instrument
  • Class
    Description
    Access to AST-based debugging support, which is could be language implementation specific in the details chosen to be presented.
    Enables instrumentation by attaching Probes to some nodes in a (newly created, not yet executed) AST.
    A dynamically added/removed binding between a Probe, which provides notification of execution events taking place at a Node in a Guest Language (GL) Truffle AST, and a receiver, which consumes notifications on behalf of an external tool.
    A marker interface for Truffle nodes that support Instrumentation and are should not be part of any Guest Language execution semantics.
    Controls breaking out of an execution context, such as a shell or eval.
    A binding between a particular location in the Truffle AST representation of a running Guest Language (GL) program (i.e.
    An observer of events related to Probes: creating and tagging.
    Implementation interfaces and classes for attaching Probes to ProbeNode.WrapperNodes.
    Any Truffle node implementing this interface can be "instrumented" by installing a Probe that intercepts execution events at the node and routes them to any Instruments that have been attached to the Probe.
    A node that can be inserted into a Truffle AST, and which enables instrumentation at a particular Guest Language (GL) node.
    Controls breaking out of all executions and ending Truffle execution.
    A somewhat language-agnostic set of user-sensible syntactic categories, suitable for conventional imperative languages, and is being developed incrementally.
    Program element "tags", presumed to be singletons (best implemented as enums) that define user-visible behavior for debugging and other simple tools.
    Information about a guest language program element in a Truffle AST that can be marked as belonging to 0 or more tags.
    A trap that can be set to interrupt execution at probed nodes carrying a specific tag.
    A receiver of Truffle AST runtime execution events that can collect information and possibly intervene on behalf of an external tool.
    Visualization services for the benefit of instrumentation-based tools, possibly specialized for each guest language and possibly specialized for relevant information from the underlying Truffle implementation.