Class Successor

  • All Implemented Interfaces:
    CSProcess

    public final class Successor
    extends Object
    implements CSProcess
    Adds one to each Integer in the stream flowing through.

    Process Diagram

    Description

    Successor increments each Integer that flows through it.

    Channel Protocols

    Input Channels
    in java.lang.Number The Channel can accept data from any subclass of Number. All values will be converted to ints.
    Output Channels
    out java.lang.Integer The output will always be of type Integer.

    Example

    The following example shows how to use the Successor process in a small program. The program also uses some of the other building block processes. The program generates a sequence of numbers and adds one to them and prints this on the screen.
     import org.jcsp.lang.*;
     import org.jcsp.plugNplay.*;
     
     public class SuccessorExample {
     
       public static void main (String[] argv) {
     
         final One2OneChannel a = Channel.one2one ();
         final One2OneChannel b = Channel.one2one ();
     
         new Parallel (
           new CSProcess[] {
             new Numbers (a.out ()),
             new Successor (a.in (), b.out ()),
             new Printer (b.in (), "--> ", "\n")
           }
         ).run ();
     
       }
     
     }
     
    Author:
    P.H. Welch and P.D. Austin
    • Constructor Detail

      • Successor

        public Successor​(ChannelInput in,
                         ChannelOutput out)
        Construct a new Successor process with the input Channel in and the output Channel out.
        Parameters:
        in - the input Channel.
        out - the output Channel.
    • Method Detail

      • run

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