Mercurial > hg > truffle
diff truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLExpressionWrapperNode.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 | dc83cc1f94f2 |
children | 68a0c3dcea10 |
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLExpressionWrapperNode.java Sat Sep 19 16:29:32 2015 -0700 +++ b/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLExpressionWrapperNode.java Sun Sep 20 15:51:39 2015 -0700 @@ -41,11 +41,11 @@ package com.oracle.truffle.sl.nodes.instrument; import com.oracle.truffle.api.frame.VirtualFrame; +import com.oracle.truffle.api.instrument.EventHandlerNode; import com.oracle.truffle.api.instrument.Instrument; import com.oracle.truffle.api.instrument.KillException; import com.oracle.truffle.api.instrument.Probe; -import com.oracle.truffle.api.instrument.ProbeNode; -import com.oracle.truffle.api.instrument.ProbeNode.WrapperNode; +import com.oracle.truffle.api.instrument.WrapperNode; import com.oracle.truffle.api.nodes.Node; import com.oracle.truffle.api.nodes.NodeCost; import com.oracle.truffle.api.nodes.NodeInfo; @@ -63,7 +63,7 @@ @NodeInfo(cost = NodeCost.NONE) public final class SLExpressionWrapperNode extends SLExpressionNode implements WrapperNode { @Child private SLExpressionNode child; - @Child private ProbeNode probeNode; + @Child private EventHandlerNode eventHandlerNode; /** * Constructor. @@ -90,12 +90,12 @@ return child; } - public void insertProbe(ProbeNode newProbeNode) { - this.probeNode = newProbeNode; + public void insertEventHandlerNode(EventHandlerNode eventHandler) { + this.eventHandlerNode = eventHandler; } public Probe getProbe() { - return probeNode.getProbe(); + return eventHandlerNode.getProbe(); } public Node getChild() { @@ -105,16 +105,16 @@ @Override public Object executeGeneric(VirtualFrame vFrame) { - probeNode.enter(child, vFrame); + eventHandlerNode.enter(child, vFrame); Object result; try { result = child.executeGeneric(vFrame); - probeNode.returnValue(child, vFrame, result); + eventHandlerNode.returnValue(child, vFrame, result); } catch (KillException e) { throw (e); } catch (Exception e) { - probeNode.returnExceptional(child, vFrame, e); + eventHandlerNode.returnExceptional(child, vFrame, e); throw (e); } return result; @@ -132,14 +132,14 @@ @Override public SLFunction executeFunction(VirtualFrame vFrame) throws UnexpectedResultException { - probeNode.enter(child, vFrame); + eventHandlerNode.enter(child, vFrame); SLFunction result; try { result = child.executeFunction(vFrame); - probeNode.returnValue(child, vFrame, result); + eventHandlerNode.returnValue(child, vFrame, result); } catch (Exception e) { - probeNode.returnExceptional(child, vFrame, e); + eventHandlerNode.returnExceptional(child, vFrame, e); throw (e); } return result;