DEFINITION MODULE WholeIO;
(* Input and output of whole numbers in decimal text form over specified channels.
The read result is of the type IOConsts.ReadResults.
*)
FROM IOChan IMPORT ChanId;
(* 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 ( cid : ChanId;
VAR int : INTEGER);
(* Skips leading space and removes any remaining characters
that form part of a signed whole number.
A corresponding value is assigned to the parameter int.
The read result is set to the value allRight, outOfRange, wrongFormat,
endOfLine, or endOfInput. *)
PROCEDURE WriteInt (cid : ChanId;
int : INTEGER;
width : CARDINAL);
(* Writes the value of the parameter int in text form in a field of the
given minimum width. *)
PROCEDURE ReadCard ( cid : ChanId;
VAR card : CARDINAL);
(* Skips leading space and removes any remaining characters
that form part of an unsigned whole number.
A corresponding value is assigned to the parameter card.
The read result is set to the value allRight, outOfRange, wrongFormat,
endOfLine, or endOfInput. *)
PROCEDURE WriteCard (cid : ChanId;
card : CARDINAL;
width : CARDINAL);
(* Writes the value of the parameter card in text form in a field of the
given minimum width. *)
END WholeIO.