diff options
author | Jing Yu <jingyu@google.com> | 2009-11-05 15:11:04 -0800 |
---|---|---|
committer | Jing Yu <jingyu@google.com> | 2009-11-05 15:11:04 -0800 |
commit | df62c1c110e8532b995b23540b7e3695729c0779 (patch) | |
tree | dbbd4cbdb50ac38011e058a2533ee4c3168b0205 /gcc-4.2.1/gcc/ada/a-chtgop.ads | |
parent | 8d401cf711539af5a2f78d12447341d774892618 (diff) | |
download | toolchain_gcc-df62c1c110e8532b995b23540b7e3695729c0779.tar.gz toolchain_gcc-df62c1c110e8532b995b23540b7e3695729c0779.tar.bz2 toolchain_gcc-df62c1c110e8532b995b23540b7e3695729c0779.zip |
Check in gcc sources for prebuilt toolchains in Eclair.
Diffstat (limited to 'gcc-4.2.1/gcc/ada/a-chtgop.ads')
-rw-r--r-- | gcc-4.2.1/gcc/ada/a-chtgop.ads | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/gcc-4.2.1/gcc/ada/a-chtgop.ads b/gcc-4.2.1/gcc/ada/a-chtgop.ads new file mode 100644 index 000000000..7d6e545e2 --- /dev/null +++ b/gcc-4.2.1/gcc/ada/a-chtgop.ads @@ -0,0 +1,105 @@ +------------------------------------------------------------------------------ +-- -- +-- GNAT LIBRARY COMPONENTS -- +-- -- +-- A D A . C O N T A I N E R S . -- +-- H A S H _ T A B L E S . G E N E R I C _ O P E R A T I O N S -- +-- -- +-- 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. -- +-- -- +------------------------------------------------------------------------------ + +with Ada.Streams; + +generic + + with package HT_Types is + new Generic_Hash_Table_Types (<>); + + use HT_Types; + + with function Hash_Node (Node : Node_Access) return Hash_Type; + + with function Next (Node : Node_Access) return Node_Access; + + with procedure Set_Next + (Node : Node_Access; + Next : Node_Access); + + with function Copy_Node (Source : Node_Access) return Node_Access; + + with procedure Free (X : in out Node_Access); + +package Ada.Containers.Hash_Tables.Generic_Operations is + pragma Preelaborate; + + procedure Free_Hash_Table (Buckets : in out Buckets_Access); + + function Index + (Buckets : Buckets_Type; + Node : Node_Access) return Hash_Type; + pragma Inline (Index); + + function Index + (Hash_Table : Hash_Table_Type; + Node : Node_Access) return Hash_Type; + pragma Inline (Index); + + procedure Adjust (HT : in out Hash_Table_Type); + + procedure Finalize (HT : in out Hash_Table_Type); + + generic + with function Find + (HT : Hash_Table_Type; + Key : Node_Access) return Boolean; + function Generic_Equal + (L, R : Hash_Table_Type) return Boolean; + + procedure Clear (HT : in out Hash_Table_Type); + + procedure Move (Target, Source : in out Hash_Table_Type); + + function Capacity (HT : Hash_Table_Type) return Count_Type; + + procedure Reserve_Capacity + (HT : in out Hash_Table_Type; + N : Count_Type); + + procedure Delete_Node_Sans_Free + (HT : in out Hash_Table_Type; + X : Node_Access); + + function First (HT : Hash_Table_Type) return Node_Access; + + function Next + (HT : Hash_Table_Type; + Node : Node_Access) return Node_Access; + + generic + with procedure Process (Node : Node_Access); + procedure Generic_Iteration (HT : Hash_Table_Type); + + generic + use Ada.Streams; + with procedure Write + (Stream : access Root_Stream_Type'Class; + Node : Node_Access); + procedure Generic_Write + (Stream : access Root_Stream_Type'Class; + HT : Hash_Table_Type); + + generic + use Ada.Streams; + with function New_Node (Stream : access Root_Stream_Type'Class) + return Node_Access; + procedure Generic_Read + (Stream : access Root_Stream_Type'Class; + HT : out Hash_Table_Type); + +end Ada.Containers.Hash_Tables.Generic_Operations; |