Package org.jcsp.plugNplay.ints

# Class NumbersInt

java.lang.Object
org.jcsp.plugNplay.ints.NumbersInt

All Implemented Interfaces:
  `CSProcess`

public class NumbersInt extends Object implements CSProcess
Plugs together a network of low-level stateless components to generate the sequence of natural numbers.

## Process Diagram

### External View

             ______________
            |              | out
            |  NumbersInt  |-->----
            |______________|

### Internal View

             ___________________________________________
            |  _______________             ___________  |
            | |               |           |           | | out
            | | PrefixInt (0) |----->-----| Delta2Int |-->--
            | |_______________|           |___________| |
            |     |                              |      |
            |     |          ______________      |      |
            |     |         |              |     |      |
            |     +----invalid input: '<'----| SuccessorInt |--invalid input: '<'--+      |
            |               |______________|            |
            |                                NumbersInt |
            |___________________________________________|

## Description

The `NumbersInt` process generates the sequence of Natural numbers.

## Channel Protocols

Output Channels
out | int | All channels in this package carry integers.

Author:
  P.H. Welch and P.D. Austin

## Constructor Summary

Constructors
Constructor
Description
`NumbersInt(ChannelOutputInt out)`
Construct a new NumbersInt process with the output Channel out.

## Method Summary

Modifier and Type
Method
Description
`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 Details

### NumbersInt

public NumbersInt(ChannelOutputInt out)
Construct a new NumbersInt process with the output Channel out.

Parameters:
  `out` - the output channel

## Method Details

### run

public void run()
The main body of this process.

Specified by:
  `run` in interface `CSProcess`