| Interface | Description |
|---|---|
| ASTPrinter |
Access to AST-based debugging support, which is could be language implementation specific in the
details chosen to be presented.
|
| ASTProber |
Enables instrumentation by attaching Probes to some nodes in a (newly created,
not yet executed) AST.
|
| InstrumentationNode |
A marker interface for Truffle nodes that support Instrumentation and
are should not be part of any Guest Language execution semantics.
|
| Probe.ProbeListener |
An observer of events related to
Probes: creating and tagging. |
| ProbeNode.Instrumentable |
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. |
| ProbeNode.WrapperNode |
A node that can be inserted into a Truffle AST, and which enables instrumentation at
a particular Guest Language (GL) node.
|
| SyntaxTag |
Program element "tags", presumed to be singletons (best implemented as enums) that define
user-visible behavior for debugging and other simple tools.
|
| SyntaxTagged |
Information about a guest language program element in a Truffle AST that can be marked as
belonging to 0 or more tags.
|
| TruffleEventReceiver |
A receiver of Truffle AST runtime execution events that can collect information and possibly
intervene on behalf of an external tool.
|
| Visualizer |
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.
|
| Class | Description |
|---|---|
| Instrument |
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. |
| Probe |
A binding between a particular location in the Truffle AST representation of a running Guest
Language (GL) program (i.e.
|
| ProbeNode |
Implementation interfaces and classes for attaching
Probes to ProbeNode.WrapperNodes. |
| SyntaxTagTrap |
A trap that can be set to interrupt execution at probed nodes carrying a specific tag.
|
| Enum | Description |
|---|---|
| StandardSyntaxTag |
A somewhat language-agnostic set of user-sensible syntactic categories, suitable for conventional
imperative languages, and is being developed incrementally.
|
| Exception | Description |
|---|---|
| KillException |
Controls breaking out of an execution context, such as a shell or eval.
|
| QuitException |
Controls breaking out of all executions and ending Truffle execution.
|