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