GENERIC INTERFACEMatrixFmtLex (RF, M);
Arithmetic for Modula-3, see doc for details
FROM Arithmetic IMPORT Error;
IMPORT Rd, Wr, Thread;
IMPORT Lex AS L;
IMPORT FloatMode;
TYPE T = M.T;
TYPE
FmtStyle = RECORD
width : CARDINAL := 12;
elemStyle := RF.FmtStyle{};
END;
PROCEDURE Fmt (x: T; READONLY style := FmtStyle{}; ): TEXT
RAISES {Thread.Alerted, Wr.Failure};
TYPE TexStyle = RECORD elemStyle := RF.TexStyle{}; END;
PROCEDURE Tex (x: T; READONLY style := TexStyle{}; ): TEXT
RAISES {Thread.Alerted, Wr.Failure};
TYPE
LexStyle = RECORD
colSep := ' ';
rowTerm := '\n';
matTerm := '\n';
elemStyle := RF.LexStyle{};
END;
PROCEDURE Lex (rd: Rd.T; READONLY style := LexStyle{}; ): T
RAISES {L.Error, FloatMode.Trap, Rd.Failure, Thread.Alerted};
END MatrixFmtLex.