GPTextFiles.cp 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. FOREIGN MODULE GPTextFiles;
  2. IMPORT GPFiles;
  3. TYPE
  4. FILE* = POINTER TO RECORD (GPFiles.FILE) END;
  5. PROCEDURE findLocal*(IN fileName : ARRAY OF CHAR) : FILE;
  6. (** Find file with given name in current directory *)
  7. PROCEDURE findOnPath*(IN pathName : ARRAY OF CHAR;
  8. IN fileName : ARRAY OF CHAR) : FILE;
  9. (** Find file with given name on path given as property *)
  10. PROCEDURE getFullPathName*(f : FILE) : GPFiles.FileNameArray;
  11. (** Return full name of file *)
  12. PROCEDURE openFile*(IN fileName : ARRAY OF CHAR) : FILE;
  13. (** Open file with given absolute name *)
  14. PROCEDURE openFileRO*(IN fileName : ARRAY OF CHAR) : FILE;
  15. (** Open file READ-ONLY with given absolute name *)
  16. PROCEDURE CloseFile*(file : FILE);
  17. PROCEDURE createFile*(IN fileName : ARRAY OF CHAR) : FILE;
  18. (** Create file and open for reading *)
  19. PROCEDURE createPath*(IN pathName : ARRAY OF CHAR) : FILE;
  20. (** Create file and any necessary directories and opens file for reading *)
  21. PROCEDURE readChar*(file : FILE) : CHAR;
  22. PROCEDURE readNChars*(file : FILE; OUT buffPtr : ARRAY OF CHAR;
  23. requestedChars : INTEGER) : INTEGER;
  24. (** Return value is number actually read *)
  25. PROCEDURE WriteEOL*(file : FILE);
  26. PROCEDURE WriteChar*(file : FILE; ch : CHAR);
  27. PROCEDURE WriteNChars*(file : FILE; IN buffPtr : ARRAY OF CHAR;
  28. requestedChars : INTEGER);
  29. END GPTextFiles.