Class SLReturnNode

java.lang.Object
com.oracle.truffle.api.nodes.Node
All Implemented Interfaces:
com.oracle.truffle.api.instrumentation.InstrumentableNode, com.oracle.truffle.api.nodes.NodeInterface, Cloneable

public final class SLReturnNode extends SLStatementNode
Implementation of the SL return statement. We need to unwind an unknown number of interpreter frames that are between this SLReturnNode and the SLFunctionBodyNode of the method we are exiting. This is done by throwing an exception that is caught by the function body. The exception transports the return value.
  • Constructor Details

  • Method Details

    • executeVoid

      public void executeVoid(com.oracle.truffle.api.frame.VirtualFrame frame)
      Description copied from class: SLStatementNode
      Execute this node as as statement, where no return value is necessary.
      Specified by:
      executeVoid in class SLStatementNode