DEFINITION MODULE Storage ;

(*
   Author     : Gaius Mulley
   Title      : Storage
   Date       : Mon Jun 18 14:37:05 BST 1990
   Description: Implements the dynamic Storage handler for the
                Modula-2 compiler.
   Last update: Mon Jun 18 14:37:41 BST 1990
*)

FROM SYSTEM IMPORT ADDRESS ;

EXPORT QUALIFIED ALLOCATE, DEALLOCATE, Available ;



(*
   ALLOCATE - attempt to allocate memory from the heap.
              NIL is returned in, a, if ALLOCATE fails.
*)

PROCEDURE ALLOCATE (VAR a: ADDRESS ; Size: CARDINAL) ;


(*
   DEALLOCATE - return, Size, bytes to the heap.
*)

PROCEDURE DEALLOCATE (a: ADDRESS ; Size: CARDINAL) ;


(*
   Available - returns TRUE if, Size, bytes can be allocated.
*)

PROCEDURE Available (Size: CARDINAL) : BOOLEAN;


END Storage.