expanded class interface MEMORY
   -- 
   --  Facilities for tuning up the garbage collection, and
   --  everything about memory control.
   -- 

feature(s) from MEMORY
   --  Status Report :

   collecting: BOOLEAN
      --  Is garbage collection enabled ?

feature(s) from MEMORY
   --  Status setting :

   collection_off
      --  Disable garbage collection.

   collection_on
      --  Enable garbage collection.

feature(s) from MEMORY
   --  Removal :

   dispose
      --  Action to be executed just before garbage collection 
      --  reclaims an object.

   full_collect
      --  Force a full collection cycle if garbage collection is
      --  enabled; do nothing otherwise.

feature(s) from MEMORY
   --  The Guru section (low level memory management) :

   pointer_size: INTEGER
      --  The size in number of bytes for a pointer.

   malloc (size: INTEGER): POINTER
      --  Memory allocation of size byte.
      require
         size > 0

   calloc (number_of_objects, size_of_one: INTEGER): POINTER
      --  Allocates memory for an array of number_of_objects elements
      --  of size_of_one bytes each and returns a pointer to the 
      --  allocated memory.
      --   The memory is set to zero.
      require
         number_of_objects > 0;
         size_of_one >= 1

   realloc (pointer: POINTER ;size: INTEGER): POINTER
      --  Memory re-allocation of size byte.
      require
         pointer.is_not_null;
         size > 0


end of expanded MEMORY