Class ProbeNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.api.instrument.ProbeNode
- All Implemented Interfaces:
InstrumentationNode
,TruffleEventReceiver
,NodeInterface
,Cloneable
Implementation interfaces and classes for attaching
Probe
s to ProbeNode.WrapperNode
s.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface
Any Truffle node implementing this interface can be "instrumented" by installing aProbe
that intercepts execution events at the node and routes them to anyInstrument
s that have been attached to theProbe
.static interface
A node that can be inserted into a Truffle AST, and which enables instrumentation at a particular Guest Language (GL) node.Nested classes/interfaces inherited from class com.oracle.truffle.api.nodes.Node
Node.Child, Node.Children
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract Probe
getProbe()
static Probe
insertProbe
(ProbeNode.WrapperNode wrapper) Create a newProbe
associated with, and attached to, a Guest Language specific instance ofProbeNode.WrapperNode
.static void
insertProbeLite
(ProbeNode.WrapperNode wrapper, TruffleEventReceiver eventReceiver) Creates a newProbeNode.ProbeLiteNode
associated with, and attached to, a Guest Language specific instance ofProbeNode.WrapperNode
.Methods inherited from class com.oracle.truffle.api.nodes.Node
accept, adoptChildren, assignSourceSection, atomic, atomic, clearSourceSection, clone, copy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLanguage, getParent, getRootNode, getSourceSection, insert, insert, isReplaceable, onAdopt, onReplace, replace, replace, toString
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.oracle.truffle.api.instrument.InstrumentationNode
instrumentationInfo
Methods inherited from interface com.oracle.truffle.api.instrument.TruffleEventReceiver
enter, returnExceptional, returnValue, returnVoid
-
Constructor Details
-
ProbeNode
public ProbeNode()
-
-
Method Details
-
insertProbe
Create a newProbe
associated with, and attached to, a Guest Language specific instance ofProbeNode.WrapperNode
. -
insertProbeLite
public static void insertProbeLite(ProbeNode.WrapperNode wrapper, TruffleEventReceiver eventReceiver) Creates a newProbeNode.ProbeLiteNode
associated with, and attached to, a Guest Language specific instance ofProbeNode.WrapperNode
. -
getProbe
- Returns:
- the
Probe
permanently associated with thisProbeNode
. - Throws:
IllegalStateException
- if this location was "lite-Probed"
-