summaryrefslogtreecommitdiff
path: root/gcc/ada/a-cihama.ads
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2012-01-23 09:35:53 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2012-01-23 09:35:53 +0000
commitdee4c239eae6d805bcdadd421af4593452466869 (patch)
treeb1fee48f14a9a5cc25d00c2a2db9351c395f6a27 /gcc/ada/a-cihama.ads
parent25122b4c8c15f7715109d918a36ec9a3a8c3d046 (diff)
downloadgcc-dee4c239eae6d805bcdadd421af4593452466869.tar.gz
2012-01-23 Matthew Heaney <heaney@adacore.com>
* a-cohase.ads, a-cihase.ads, a-cbhase.ads, a-coorse.ads, a-ciorse.ads, a-cborse.ads, a-cohama.ads, a-cihama.ads, a-cbhama.ads, a-coorma.ads, a-ciorma.ads, a-cborma.ads, a-cdlili.ads, a-cidlli.ads, a-cbdlli.ads, a-convec.ads, a-coinve.ads, a-cobove.ads (Cursor'Read, Cursor'Write): Declare in private part. (Reference_Type'Read, Reference_Type'Write): Ditto. (Constant_Reference_Type'Read, Constant_Reference_Type'Write): Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183418 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/a-cihama.ads')
-rw-r--r--gcc/ada/a-cihama.ads85
1 files changed, 43 insertions, 42 deletions
diff --git a/gcc/ada/a-cihama.ads b/gcc/ada/a-cihama.ads
index 2cd41eb0b46..f2158fdc79c 100644
--- a/gcc/ada/a-cihama.ads
+++ b/gcc/ada/a-cihama.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 2004-2011, Free Software Foundation, Inc. --
+-- Copyright (C) 2004-2012, Free Software Foundation, Inc. --
-- --
-- This specification is derived from the Ada Reference Manual for use with --
-- GNAT. The copyright notice above, and the license provisions that follow --
@@ -31,10 +31,11 @@
-- This unit was originally developed by Matthew J Heaney. --
------------------------------------------------------------------------------
+with Ada.Iterator_Interfaces;
+
private with Ada.Containers.Hash_Tables;
private with Ada.Finalization;
-with Ada.Streams; use Ada.Streams;
-with Ada.Iterator_Interfaces;
+private with Ada.Streams;
generic
type Key_Type (<>) is private;
@@ -139,34 +140,10 @@ package Ada.Containers.Indefinite_Hashed_Maps is
with
Implicit_Dereference => Element;
- procedure Write
- (Stream : not null access Root_Stream_Type'Class;
- Item : Constant_Reference_Type);
-
- for Constant_Reference_Type'Write use Write;
-
- procedure Read
- (Stream : not null access Root_Stream_Type'Class;
- Item : out Constant_Reference_Type);
-
- for Constant_Reference_Type'Read use Read;
-
type Reference_Type (Element : not null access Element_Type) is private
with
Implicit_Dereference => Element;
- procedure Write
- (Stream : not null access Root_Stream_Type'Class;
- Item : Reference_Type);
-
- for Reference_Type'Write use Write;
-
- procedure Read
- (Stream : not null access Root_Stream_Type'Class;
- Item : out Reference_Type);
-
- for Reference_Type'Read use Read;
-
function Constant_Reference
(Container : aliased Map;
Position : Cursor) return Constant_Reference_Type;
@@ -346,11 +323,25 @@ private
HT : HT_Types.Hash_Table_Type;
end record;
+ overriding procedure Adjust (Container : in out Map);
+
+ overriding procedure Finalize (Container : in out Map);
+
use HT_Types;
use Ada.Finalization;
+ use Ada.Streams;
- overriding procedure Adjust (Container : in out Map);
- overriding procedure Finalize (Container : in out Map);
+ procedure Write
+ (Stream : not null access Root_Stream_Type'Class;
+ Container : Map);
+
+ for Map'Write use Write;
+
+ procedure Read
+ (Stream : not null access Root_Stream_Type'Class;
+ Container : out Map);
+
+ for Map'Read use Read;
type Map_Access is access all Map;
for Map_Access'Storage_Size use 0;
@@ -366,34 +357,44 @@ private
for Cursor'Write use Write;
+ procedure Read
+ (Stream : not null access Root_Stream_Type'Class;
+ Item : out Cursor);
+
+ for Cursor'Read use Read;
+
type Constant_Reference_Type
(Element : not null access constant Element_Type) is null record;
- type Reference_Type
- (Element : not null access Element_Type) is null record;
+ procedure Write
+ (Stream : not null access Root_Stream_Type'Class;
+ Item : Constant_Reference_Type);
+
+ for Constant_Reference_Type'Write use Write;
procedure Read
(Stream : not null access Root_Stream_Type'Class;
- Item : out Cursor);
+ Item : out Constant_Reference_Type);
- for Cursor'Read use Read;
+ for Constant_Reference_Type'Read use Read;
- No_Element : constant Cursor :=
- (Container => null,
- Node => null);
+ type Reference_Type
+ (Element : not null access Element_Type) is null record;
procedure Write
- (Stream : not null access Root_Stream_Type'Class;
- Container : Map);
+ (Stream : not null access Root_Stream_Type'Class;
+ Item : Reference_Type);
- for Map'Write use Write;
+ for Reference_Type'Write use Write;
procedure Read
- (Stream : not null access Root_Stream_Type'Class;
- Container : out Map);
+ (Stream : not null access Root_Stream_Type'Class;
+ Item : out Reference_Type);
- for Map'Read use Read;
+ for Reference_Type'Read use Read;
Empty_Map : constant Map := (Controlled with HT => (null, 0, 0, 0));
+ No_Element : constant Cursor := (Container => null, Node => null);
+
end Ada.Containers.Indefinite_Hashed_Maps;