comparison graal/com.oracle.truffle.api/src/com/oracle/truffle/api/instrument/InstrumentationNode.java @ 20890:37912559d662

Truffle/Instrumentation: Javadoc work on instrument listener interfaces.
author Michael Van De Vanter <michael.van.de.vanter@oracle.com>
date Fri, 10 Apr 2015 17:55:09 -0700
parents 907128d02b31
children
comparison
equal deleted inserted replaced
20889:0e647427eee4 20890:37912559d662
26 26
27 import com.oracle.truffle.api.frame.*; 27 import com.oracle.truffle.api.frame.*;
28 import com.oracle.truffle.api.nodes.*; 28 import com.oracle.truffle.api.nodes.*;
29 29
30 /** 30 /**
31 * A marker interface for Truffle {@linkplain Node nodes} that support <em>Instrumentation</em> and 31 * A marker interface for Truffle {@linkplain Node nodes} that internally implement the
32 * are should not be part of any Guest Language execution semantics. 32 * <em>Instrumentation Framework</em>. Such nodes should not be part of any Guest Language execution
33 * semantics, and should in general not be visible to ordinary Instrumentation clients.
33 */ 34 */
34 public interface InstrumentationNode { 35 public interface InstrumentationNode {
35 36
36 /** 37 /**
37 * A short description of the particular role played by the node, intended to support debugging. 38 * A short description of the particular role played by the node, intended to support debugging.
38 */ 39 */
39 String instrumentationInfo(); 40 String instrumentationInfo();
40 41
41 /** 42 /**
42 * Events at a Truffle node that get propagated through the Instrumentation Framework. 43 * Events that propagate through the {@linkplain InstrumentationNode implementation nodes} of
44 * the Instrumentation Framework, not visible in this form to Instrumentation clients.
43 */ 45 */
44 interface TruffleEvents { 46 interface TruffleEvents {
45 47
46 /** 48 /**
47 * An AST node's execute method is about to be called. 49 * An AST node's execute method is about to be called.
60 62
61 /** 63 /**
62 * An AST Node's execute method has just thrown an exception. 64 * An AST Node's execute method has just thrown an exception.
63 */ 65 */
64 void returnExceptional(Node node, VirtualFrame vFrame, Exception exception); 66 void returnExceptional(Node node, VirtualFrame vFrame, Exception exception);
65
66 } 67 }
67 } 68 }