c5345bf6ac
in reversed order
22 lines
797 B
Modula-2
22 lines
797 B
Modula-2
(*$Foreign*)
|
|
DEFINITION MODULE Epilogue;
|
|
(*
|
|
Module: install module termination procedures to be called at
|
|
program termination
|
|
Author: Ceriel J.H. Jacobs
|
|
Version: $Header$
|
|
|
|
MODULA-2 offers a facility for the initialization of modules, but there
|
|
is no mechanism to have some code executed when the program finishes.
|
|
This module is a feeble attempt at solving this problem.
|
|
*)
|
|
PROCEDURE CallAtEnd(p: PROC): BOOLEAN;
|
|
(* Add procedure "p" to the list of procedures that must be executed when
|
|
the program finishes.
|
|
When the program finishes, these procedures are executed in the REVERSE
|
|
order in which they were added to the list.
|
|
This procedure returns FALSE when there are too many procedures to be
|
|
called (the list has a fixed size).
|
|
*)
|
|
END Epilogue.
|