Package org.jcsp.lang

Class Skip

  • All Implemented Interfaces:
    CSProcess

    public class Skip
    extends Guard
    implements CSProcess
    This is a process that immediately terminates and a Guard that is always ready.

    Description

    Skip is a process that starts, engages in no events, performs no computation and terminates.

    It can also be used as a Guard in an Alternative that is always ready. This makes it useful for polling a set of guards to test if any are ready: include it as the last element of the guard array and priSelect.

    Note: the process is also included for completeness – it is one of the fundamental primitives of CSP, where it is a unit of sequential composition and parallel interleaving. In JCSP, it is a unit of Sequence, Parallel and PriParallel .

    See Also:
    Stop
    • Constructor Summary

      Constructors 
      Constructor Description
      Skip()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) boolean disable()
      Disables this guard.
      (package private) boolean enable​(Alternative alt)
      Enables this guard.
      void run()
      The main body of this process.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Skip

        public Skip()
    • Method Detail

      • enable

        boolean enable​(Alternative alt)
        Enables this guard.
        Specified by:
        enable in class Guard
        Parameters:
        alt - the Alternative doing the enabling.
        Returns:
        true if and only if the event is ready
      • disable

        boolean disable()
        Disables this guard.
        Specified by:
        disable in class Guard
        Returns:
        true if and only if the event was ready
      • run

        public void run()
        The main body of this process.
        Specified by:
        run in interface CSProcess