------------------------------------------------------------------------------ -- -- -- GNAT LIBRARY COMPONENTS -- -- -- -- ADA.CONTAINERS.HASH_TABLES.GENERIC_KEYS -- -- -- -- S p e c -- -- -- -- This specification is adapted from the Ada Reference Manual for use with -- -- GNAT. In accordance with the copyright of that document, you can freely -- -- copy and modify this specification, provided that if you redistribute a -- -- modified version, any changes that you have made are clearly indicated. -- -- -- ------------------------------------------------------------------------------ generic with package HT_Types is new Generic_Hash_Table_Types (<>); type HT_Type is new HT_Types.Hash_Table_Type with private; use HT_Types; Null_Node : Node_Access; with function Next (Node : Node_Access) return Node_Access; with procedure Set_Next (Node : Node_Access; Next : Node_Access); type Key_Type (<>) is limited private; with function Hash (Key : Key_Type) return Hash_Type; with function Equivalent_Keys (Key : Key_Type; Node : Node_Access) return Boolean; package Ada.Containers.Hash_Tables.Generic_Keys is pragma Preelaborate; function Index (HT : HT_Type; Key : Key_Type) return Hash_Type; pragma Inline (Index); procedure Delete_Key_Sans_Free (HT : in out HT_Type; Key : Key_Type; X : out Node_Access); function Find (HT : HT_Type; Key : Key_Type) return Node_Access; generic with function New_Node (Next : Node_Access) return Node_Access; procedure Generic_Conditional_Insert (HT : in out HT_Type; Key : Key_Type; Node : out Node_Access; Success : out Boolean); end Ada.Containers.Hash_Tables.Generic_Keys;