| (* Library module defined by the International Standard |
| Information technology - programming languages |
| BS ISO/IEC 10514-1:1996E Part 1: Modula-2, Base Language. |
| |
| Copyright ISO/IEC (International Organization for Standardization |
| and International Electrotechnical Commission) 1996-2021. |
| |
| It may be freely copied for the purpose of implementation (see page |
| 707 of the Information technology - Programming languages Part 1: |
| Modula-2, Base Language. BS ISO/IEC 10514-1:1996). *) |
| |
| DEFINITION MODULE SWholeIO; |
| |
| (* Input and output of whole numbers in decimal text form over |
| default channels. The read result is of the type |
| IOConsts.ReadResults. |
| *) |
| |
| (* The text form of a signed whole number is |
| ["+" | "-"], decimal digit, {decimal digit} |
| |
| The text form of an unsigned whole number is |
| decimal digit, {decimal digit} |
| *) |
| |
| PROCEDURE ReadInt (VAR int: INTEGER); |
| (* Skips leading spaces, and removes any remaining characters |
| from the default input channel that form part of a signed |
| whole number. The value of this number is assigned |
| to int. The read result is set to the value allRight, |
| outOfRange, wrongFormat, endOfLine, or endOfInput. |
| *) |
| |
| PROCEDURE WriteInt (int: INTEGER; width: CARDINAL); |
| (* Writes the value of int to the default output channel in |
| text form, in a field of the given minimum width. |
| *) |
| |
| PROCEDURE ReadCard (VAR card: CARDINAL); |
| (* Skips leading spaces, and removes any remaining characters |
| from the default input channel that form part of an |
| unsigned whole number. The value of this number is |
| assigned to card. The read result is set to the value |
| allRight, outOfRange, wrongFormat, endOfLine, or endOfInput. |
| *) |
| |
| PROCEDURE WriteCard (card: CARDINAL; width: CARDINAL); |
| (* Writes the value of card to the default output channel in |
| text form, in a field of the given minimum width. |
| *) |
| |
| END SWholeIO. |