generic type Key_Type (<>) is private; type Element_Type (<>) is limited private; type Element_Handle is access Element_Type; with function "<" (Left, Right : Key_Type) return Boolean is <>; -- Controlled variant of a map. The memory of an element pointed to by a -- previously inserted handle is freed upon calling Delete, Clear or during -- finalization of the controlled map. Thus control over objects inserted into -- this map resides with the controlled map. package Alog.Controlled_Map is
type Element_Handle is access Element_Type;
function "<"
( | Left, Right | : Key_Type) return Boolean is <>; |
procedure Insert
( | Container | : in out Map; |
Key | : Key_Type; | |
New_Item | : Element_Handle); |
function Element
( | Container | : Map; |
Key | : Key_Type) return Element_Handle; |
procedure Clear
( | Container | : in out Map); |
procedure Iterate
( | Container | : Map; |
Process | : not null access procedure (Handle : Element_Handle)); |