mirror of
https://github.com/vishapoberon/compiler.git
synced 2026-04-06 14:32:24 +00:00
Remove redundant writer in OPM. Fix Files.Readline for CR/LF and guarantee 0 termination.
This commit is contained in:
parent
ef815aa131
commit
ed7043324d
201 changed files with 255 additions and 1552 deletions
|
|
@ -642,19 +642,12 @@ Especially Length would become fairly complex.
|
|||
END ReadString;
|
||||
|
||||
PROCEDURE ReadLine* (VAR R: Rider; VAR x: ARRAY OF CHAR);
|
||||
VAR i: INTEGER; ch: CHAR; b : BOOLEAN;
|
||||
VAR i: INTEGER;
|
||||
BEGIN
|
||||
i := 0;
|
||||
b := FALSE;
|
||||
REPEAT
|
||||
Read(R, ch);
|
||||
IF ((ch = 0X) OR (ch = 0AX) OR (ch = 0DX)) THEN
|
||||
b := TRUE
|
||||
ELSE
|
||||
x[i] := ch;
|
||||
INC(i);
|
||||
END;
|
||||
UNTIL b
|
||||
i := 0; REPEAT Read(R, x[i]); INC(i) UNTIL (x[i-1] = 0X) OR (x[i-1] = 0AX);
|
||||
IF x[i-1] = 0AX THEN DEC(i) END; (* Omit trailing LF *)
|
||||
IF (i > 0) & (x[i-1] = 0DX) THEN DEC(i) END; (* Also omit preceeding trailing CR if present. *)
|
||||
x[i] := 0X; (* Guarantee zero termination. *)
|
||||
END ReadLine;
|
||||
|
||||
PROCEDURE ReadNum*(VAR R: Rider; VAR x: ARRAY OF SYSTEM.BYTE);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue