MimZones.mesa
Copyright Ó 1986, 1991 by Xerox Corporation. All rights reserved.
Russ Atkinson (RRA) December 8, 1986 1:28:04 pm PST
MimZones: DEFINITIONS = BEGIN
counted: BOOL = TRUE;
TRUE iff permZone & tempZone are counted zones
permZone: ZONE;
Objects allocated from this zone are never freed.
(may be UNCOUNTED for some compilers)
tempZone: ZONE;
Objects allocated from this zone are freed at the end of every compilation.
(may be UNCOUNTED for some compilers)
permUZ: UNCOUNTED ZONE;
Objects allocated from this zone are never freed.
tempUZ: UNCOUNTED ZONE;
Objects allocated from this zone are freed at the end of every compilation.
(always UNCOUNTED)
ResetTempZones: PROC;
This proc is called to free all of the objects in the temp zones.
(provided that the temp zone is UNCOUNTED)
RegisterForReset: PROC [resetProc: PROC];
Each registered procedure is called prior to getting rid of the tempZone & tempUZ
END.