| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- DEFINITION MODULE FileIO;
- (* Self-hosted V3 FileIO over the runtime shim (SysShim). Provides
- the subset used by the Coco/R-generated scanner/parser/driver,
- plus the classic string helpers. Stage-2 counterpart of the
- host-supplied FileIO used to bootstrap. *)
- FROM SYSTEM IMPORT ADDRESS;
- TYPE
- File = ADDRESS;
- INT32 = INTEGER;
- CONST
- EOF = CHR(0);
- EOL = CHR(10);
- ESC = CHR(27);
- CR = CHR(13);
- LF = CHR(10);
- BS = CHR(8);
- DEL = CHR(127);
- BitSetSize = 16;
- Long0 = 0;
- Long1 = 1;
- Long2 = 2;
- PathSep = ":";
- DirSep = "/";
- VAR
- Okay: BOOLEAN;
- con, err: File;
- StdIn, StdOut: File;
- PROCEDURE NextParameter (VAR s: ARRAY OF CHAR);
- PROCEDURE Open (VAR f: File; fileName: ARRAY OF CHAR; newFile: BOOLEAN);
- PROCEDURE Close (VAR f: File);
- PROCEDURE ReadBytes (f: File; VAR buf: ARRAY OF CHAR; VAR len: CARDINAL);
- PROCEDURE Write (f: File; ch: CHAR);
- PROCEDURE WriteLn (f: File);
- PROCEDURE WriteString (f: File; str: ARRAY OF CHAR);
- PROCEDURE WriteInt (f: File; int: INTEGER; wid: CARDINAL);
- PROCEDURE WriteCard (f: File; card, wid: CARDINAL);
- PROCEDURE SLENGTH (stringVal: ARRAY OF CHAR): CARDINAL;
- PROCEDURE Assign (source: ARRAY OF CHAR; VAR destination: ARRAY OF CHAR);
- PROCEDURE Extract (source: ARRAY OF CHAR;
- startIndex, numberToExtract: CARDINAL;
- VAR destination: ARRAY OF CHAR);
- PROCEDURE Concat (stringVal1, stringVal2: ARRAY OF CHAR;
- VAR destination: ARRAY OF CHAR);
- PROCEDURE Compare (stringVal1, stringVal2: ARRAY OF CHAR): INTEGER;
- END FileIO.
|