home *** CD-ROM | disk | FTP | other *** search
Modula Definition | 1988-01-10 | 3.2 KB | 63 lines |
- DEFINITION MODULE StackHandler;
- (*----------------------------------------------------------------------*
- * Dieses Modul verwaltet Stacks mit beliebigen Datenelementen bis zu *
- * 255 Bytes pro Element. *
- * Copyright 1987: Dipl.-Inform. Frank F. Wachtmeister *
- *----------------------------------------------------------------------*
- * System : ATARI 520 ST+, SM 124, PADERCOMP DL-2, EPSON FX-105 *
- * Compiler: TDI MODULA-2/ST 0272-742796(UK) *
- *----------------------------------------------------------------------*
- * Verwendete Module, die nicht zum Grundpaket gehören: *
- * Debugger: erhältlich über PASCAL Intern. 4/88 *
- *----------------------------------------------------------------------*
- * Folgende Fehlermeldungen sind über den Debugger implementiert: *
- * 101: Stack Overflow *
- * 102: Stack not initialized *
- * 103: Stack Element too large. Max. 255 Bytes *
- * 104: Empty Stack *
- * 105: Stack element inkompatible with given variable (Pop) *
- * *
- * Vergleiche Datei ERRORS.TXT *
- *----------------------------------------------------------------------*)
-
- FROM SYSTEM IMPORT BYTE;
-
- TYPE Stack;
-
- PROCEDURE InitStack (VAR s: Stack);
- (*----------------------------------------------------------------------*
- * InitStack initialisiert einen leeren Stack. *
- *----------------------------------------------------------------------*)
-
-
- PROCEDURE StackSize (VAR s: Stack): CARDINAL;
- (*----------------------------------------------------------------------*
- * StackSize liefert die Anzahl der Elemente eines Stacks. *
- * Leerer oder nicht initialisierter Stack: StackSize = 0 *
- *----------------------------------------------------------------------*)
-
-
- PROCEDURE Push (VAR s: Stack; elem: ARRAY OF BYTE);
- (*----------------------------------------------------------------------*
- * Push legt ein Element beliebigen Typs auf einen Stack s. *
- *----------------------------------------------------------------------*)
-
-
- PROCEDURE Pop (VAR s: Stack; VAR elem: ARRAY OF BYTE);
- (*----------------------------------------------------------------------*
- * Pop holt ein Element von einem Stack und verkleinert den Stack. *
- * Falls Grö₧e des Stackelements ungleich des übergebenen element's, *
- * wird die Fehlerroutine aufgerufen. *
- *----------------------------------------------------------------------*)
-
-
- PROCEDURE TopOfStack (VAR s: Stack; VAR elem: ARRAY OF BYTE);
- (*----------------------------------------------------------------------*
- * PopOfStack holt ein Element vom Stack, ohne diesen zu verkleinern. *
- * Typenkompatibilität wird wie bei Pop geprüft. *
- *----------------------------------------------------------------------*)
-
- END StackHandler.
-
-
-