Mercurial > hg > truffle
comparison truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/vm/InitializationTest.java @ 22226:c896a8e70777
Truffle/Instrumentation:
Redesign instrumentation node classes to reduce the public API exposure.
- ProbeNode is no longer public
- Public interface InstrumentationNode.TruffleEvents is now abstract class EventHandlerNode with package private constructor
- Interface ProbeNode.WrapperNode is no longer inside ProbeNode and has been expanded slightly so ProbeNode can be package private
author | Michael Van De Vanter <michael.van.de.vanter@oracle.com> |
---|---|
date | Sun, 20 Sep 2015 15:51:39 -0700 |
parents | 20380d1d41f2 |
children | 68a0c3dcea10 |
comparison
equal
deleted
inserted
replaced
22225:a0fa69e3e60e | 22226:c896a8e70777 |
---|---|
42 import com.oracle.truffle.api.frame.MaterializedFrame; | 42 import com.oracle.truffle.api.frame.MaterializedFrame; |
43 import com.oracle.truffle.api.frame.VirtualFrame; | 43 import com.oracle.truffle.api.frame.VirtualFrame; |
44 import com.oracle.truffle.api.instrument.ASTProber; | 44 import com.oracle.truffle.api.instrument.ASTProber; |
45 import com.oracle.truffle.api.instrument.AdvancedInstrumentResultListener; | 45 import com.oracle.truffle.api.instrument.AdvancedInstrumentResultListener; |
46 import com.oracle.truffle.api.instrument.AdvancedInstrumentRootFactory; | 46 import com.oracle.truffle.api.instrument.AdvancedInstrumentRootFactory; |
47 import com.oracle.truffle.api.instrument.EventHandlerNode; | |
47 import com.oracle.truffle.api.instrument.Instrumenter; | 48 import com.oracle.truffle.api.instrument.Instrumenter; |
48 import com.oracle.truffle.api.instrument.Probe; | 49 import com.oracle.truffle.api.instrument.Probe; |
49 import com.oracle.truffle.api.instrument.ProbeNode; | |
50 import com.oracle.truffle.api.instrument.ProbeNode.WrapperNode; | |
51 import com.oracle.truffle.api.instrument.StandardSyntaxTag; | 50 import com.oracle.truffle.api.instrument.StandardSyntaxTag; |
52 import com.oracle.truffle.api.instrument.ToolSupportProvider; | 51 import com.oracle.truffle.api.instrument.ToolSupportProvider; |
53 import com.oracle.truffle.api.instrument.Visualizer; | 52 import com.oracle.truffle.api.instrument.Visualizer; |
53 import com.oracle.truffle.api.instrument.WrapperNode; | |
54 import com.oracle.truffle.api.nodes.Node; | 54 import com.oracle.truffle.api.nodes.Node; |
55 import com.oracle.truffle.api.nodes.NodeVisitor; | 55 import com.oracle.truffle.api.nodes.NodeVisitor; |
56 import com.oracle.truffle.api.nodes.RootNode; | 56 import com.oracle.truffle.api.nodes.RootNode; |
57 import com.oracle.truffle.api.source.Source; | 57 import com.oracle.truffle.api.source.Source; |
58 import com.oracle.truffle.api.source.SourceSection; | 58 import com.oracle.truffle.api.source.SourceSection; |
138 return true; | 138 return true; |
139 } | 139 } |
140 | 140 |
141 @SuppressWarnings("deprecation") | 141 @SuppressWarnings("deprecation") |
142 @Override | 142 @Override |
143 public ProbeNode.WrapperNode createWrapperNode() { | 143 public WrapperNode createWrapperNode() { |
144 throw new UnsupportedOperationException(); | 144 throw new UnsupportedOperationException(); |
145 } | 145 } |
146 | 146 |
147 Object constant() { | 147 Object constant() { |
148 return constant; | 148 return constant; |
149 } | 149 } |
150 | 150 |
151 } | 151 } |
152 | 152 |
153 private static class ANodeWrapper extends ANode implements ProbeNode.WrapperNode { | 153 private static class ANodeWrapper extends ANode implements WrapperNode { |
154 @Child ANode child; | 154 @Child ANode child; |
155 private ProbeNode probeNode; | 155 @Child private EventHandlerNode eventHandlerNode; |
156 | 156 |
157 ANodeWrapper(ANode node) { | 157 ANodeWrapper(ANode node) { |
158 super(1); // dummy | 158 super(1); // dummy |
159 this.child = node; | 159 this.child = node; |
160 } | 160 } |
164 return child; | 164 return child; |
165 } | 165 } |
166 | 166 |
167 @Override | 167 @Override |
168 public Probe getProbe() { | 168 public Probe getProbe() { |
169 return probeNode.getProbe(); | 169 return eventHandlerNode.getProbe(); |
170 } | 170 } |
171 | 171 |
172 @Override | 172 @Override |
173 public void insertProbe(ProbeNode pn) { | 173 public void insertEventHandlerNode(EventHandlerNode eventHandler) { |
174 this.probeNode = pn; | 174 this.eventHandlerNode = eventHandler; |
175 } | 175 } |
176 | 176 |
177 @Override | 177 @Override |
178 public String instrumentationInfo() { | 178 public String instrumentationInfo() { |
179 throw new UnsupportedOperationException(); | 179 throw new UnsupportedOperationException(); |