Class SLWhileRepeatingNode

java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.sl.nodes.controlflow.SLWhileRepeatingNode
All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface, com.oracle.truffle.api.nodes.RepeatingNode, Cloneable

public final class SLWhileRepeatingNode extends com.oracle.truffle.api.nodes.Node implements com.oracle.truffle.api.nodes.RepeatingNode
The loop body of a while loop. A Truffle framework LoopNode between the SLWhileNode and SLWhileRepeatingNode allows Truffle to perform loop optimizations, for example, compile just the loop body for long running loops.
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.oracle.truffle.api.nodes.Node

    com.oracle.truffle.api.nodes.Node.Child, com.oracle.truffle.api.nodes.Node.Children
  • Field Summary

    Fields inherited from interface com.oracle.truffle.api.nodes.RepeatingNode

    BREAK_LOOP_STATUS, CONTINUE_LOOP_STATUS
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    executeRepeating(com.oracle.truffle.api.frame.VirtualFrame frame)
     
     

    Methods inherited from class com.oracle.truffle.api.nodes.Node

    accept, adoptChildren, atomic, atomic, copy, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, onReplace, replace, replace, reportPolymorphicSpecialize, reportReplace

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface com.oracle.truffle.api.nodes.RepeatingNode

    executeRepeatingWithValue, initialLoopStatus, shouldContinue
  • Constructor Details

  • Method Details

    • executeRepeating

      public boolean executeRepeating(com.oracle.truffle.api.frame.VirtualFrame frame)
      Specified by:
      executeRepeating in interface com.oracle.truffle.api.nodes.RepeatingNode
    • toString

      public String toString()
      Overrides:
      toString in class com.oracle.truffle.api.nodes.Node