home *** CD-ROM | disk | FTP | other *** search
Modula Definition | 1991-08-10 | 1.8 KB | 73 lines |
- DEFINITION MODULE errors;
-
- (*
- By: Greg Mumm
-
- "FatalError" will close all files, cleanup memory and HALT the program.
-
- WARNING: Memory allocations are freed with a call to "freeheap". Make
- sure any memory allocations are set up with this in mind!
- *)
-
- FROM FileSystem IMPORT File;
-
- FROM Scan IMPORT NameString, STRING;
-
- TYPE
-
- ErrorType =
- ( none,
- FileError,
- FileNotOpened,
- Scan_DataPastEndOfLine,
- OutOfMemory,
- FileClose,
- MultipleModule,
- UserHalt,
- CliHelp, (* Prints simple help information *)
- WorkBench,
- NoProgramName,
- NoSupportDEFINITION,
- NoSupportIMPLEMENTATION,
- NoSupportFiles,
- NoSupportGeneric,
- WriteStatement,
- UndeterminedProcedure
-
- );
-
-
- (* Fatal error--clean up memory and close all files
- *)
-
- PROCEDURE FatalError ( message : ErrorType );
-
-
- (* Non fatal error-just print the error
- *)
- PROCEDURE ErrorMessage ( message : ErrorType );
-
-
-
- (* Error concerning a file. The fact that we know it has something to
- do with a file allows us to to print line numbers etc..
- *)
- PROCEDURE ErrorFileMessage ( message : ErrorType ;
- name : NameString ;
- LineNumber : CARDINAL );
-
-
- (* Internal error in a module somewhere. This type error should not
- happen on a properly running program. All memory is de-allocated,
- Everything including files are cleaned up and closed
- *)
-
- PROCEDURE internal ( AlertString : STRING );
-
-
- (* Clean Up memory, close all files
- *)
- PROCEDURE CleanUp ();
-
- END errors.
-