files.def 781 B

123456789101112131415161718192021222324
  1. DEFINITION MODULE Files;
  2. (* Sequential files, layered on IOChan (which wraps the runtime
  3. streams and files). File is an opaque handle; NIL means the open
  4. failed. Text is written/read as descriptor strings; integers as
  5. decimal. *)
  6. FROM SYSTEM IMPORT ADDRESS;
  7. TYPE FileRec;
  8. TYPE File = POINTER TO FileRec;
  9. PROCEDURE OpenRead(VAR name : ARRAY OF CHAR) : File;
  10. PROCEDURE OpenWrite(VAR name : ARRAY OF CHAR) : File;
  11. PROCEDURE Close(f : File);
  12. PROCEDURE ReadChar(f : File) : CHAR;
  13. PROCEDURE ReadString(f : File; VAR s : ARRAY OF CHAR); (* one line *)
  14. PROCEDURE ReadInt(f : File) : INTEGER;
  15. PROCEDURE WriteChar(f : File; c : CHAR);
  16. PROCEDURE WriteInt(f : File; n : INTEGER);
  17. PROCEDURE WriteString(f : File; VAR s : ARRAY OF CHAR);
  18. PROCEDURE WriteLn(f : File);
  19. END Files.