CVS difference for ais/ai-00428.txt

Differences between 1.2 and version 1.3
Log of other versions for file ais/ai-00428.txt

--- ais/ai-00428.txt	2005/04/14 22:16:13	1.2
+++ ais/ai-00428.txt	2005/05/15 23:36:36	1.3
@@ -1,5 +1,7 @@
-!standard A.10.12(1)                                  05-04-10  AI95-00428/01
+!standard A.10.11(1)                                  05-05-05  AI95-00428/02
 !class amendment 05-04-10
+!status Amendment 200Y 05-05-05
+!status ARG Approved 10-0-1  05-04-16
 !status work item 05-04-10
 !status received 05-04-10
 !priority High
@@ -39,7 +41,7 @@
 The generic library package Text_IO.Bounded_IO has the following
 declaration:
 
-with Ada.Strings.Bounded.Generic_Bounded_Length;
+with Ada.Strings.Bounded;
 generic
     with package Bounded is
                      new Ada.Strings.Bounded.Generic_Bounded_Length (<>);
@@ -121,7 +123,7 @@
 
    Equivalent to Item := Get_Line;
 
-Add after A.11(4):
+Add after A.11(3):
 
 The specification of package Wide_Text_IO.Wide_Bounded_IO is the same as
 that for Text_IO.Bounded_IO, except that any occurrence of Bounded_String
@@ -132,22 +134,122 @@
 is replaced by Wide_Wide_Bounded_String, and any occurrence of package Bounded
 is replaced by Wide_Wide_Bounded.
 
-Amend the AARM notes immediately following accordingly and change their
-number to A.11(5.a) etc.
+Amend the AARM notes in A.11 accordingly.
 
 !discussion
 
 This follows the pattern of Unbounded_IO with obvious changes because of
 the genericity of bounded strings.
 
-Poor Old John was asked to write this as a punishment for mentioning that
-it was missing from Ada 2005 in the rationale.
-
 !example
 
 (See discussion.)
+
+!corrigendum A.10.11(01)
+
+@dinsc
+
+The package Text_IO.Bounded_IO provides input-output in
+human-readable form for Bounded_Strings.
+
+@i<@s8<Static Semantics>>
+
+The generic library package Text_IO.Bounded_IO has the following declaration:
+
+@xcode<@b<with> Ada.Strings.Bounded;
+@b<generic>
+   @b<with package> Bounded @b<is>
+                     @b<new> Ada.Strings.Bounded.Generic_Bounded_Length (<@>);
+@b<package> Ada.Text_IO.Bounded_IO @b<is>
+
+   @b<procedure> Put
+      (File : @b<in> File_Type;
+       Item : @b<in> Bounded.Bounded_String);
+
+   @b<procedure> Put
+      (Item : @b<in> Bounded.Bounded_String);
+
+   @b<procedure> Put_Line
+      (File : @b<in> File_Type;
+       Item : @b<in> Bounded.Bounded_String);
+
+   @b<procedure> Put_Line
+      (Item : @b<in> Bounded.Bounded_String);
+
+   @b<function> Get_Line
+      (File : @b<in> File_Type)
+      @b<return> Bounded.Bounded_String;
+
+   @b<function> Get_Line
+      @b<return> Bounded.Bounded_String;
+
+   @b<procedure> Get_Line
+      (File : @b<in> File_Type; Item : @b<out> Bounded.Bounded_String);
+
+   @b<procedure> Get_Line
+      (Item : @b<out> Bounded.Bounded_String);
+
+@b<end> Ada.Text_IO.Bounded_IO;>
+
+For an item of type Bounded_String, the following subprograms are provided:
+
+@xcode<@b<procedure> Put
+   (File : @b<in> File_Type;
+    Item : @b<in> Bounded.Bounded_String);>
+
+@xindent<Equivalent to Text_IO.Put (File, Bounded.To_String(Item));>
+
+@xcode<@b<procedure> Put
+   (Item : @b<in> Bounded.Bounded_String);>
+
+@xindent<Equivalent to Text_IO.Put (Bounded.To_String(Item));>
+
+@xcode<@b<procedure> Put_Line
+   (File : @b<in> File_Type;
+    Item : @b<in> Bounded.Bounded_String);>
+
+@xindent<Equivalent to Text_IO.Put_Line (File, Bounded.To_String(Item));>
+
+@xcode<@b<procedure> Put_Line
+   (Item : @b<in> Bounded.Bounded_String);>
+
+@xindent<Equivalent to Text_IO.Put_Line (Bounded.To_String(Item));>
+
+@xcode<@b<function> Get_Line
+   (File : @b<in> File_Type)
+   @b<return> Bounded.Bounded_String;>
+
+@xindent<Returns Bounded.To_Bounded_String(Text_IO.Get_Line(File));>
+
+@xcode<@b<function> Get_Line
+   @b<return> Bounded.Bounded_String;>
+
+@xindent<Returns Bounded.To_Bounded_String(Text_IO.Get_Line);>
+
+@xcode<@b<procedure> Get_Line
+   (File : @b<in> File_Type; Item : @b<out> Bounded.Bounded_String);>
+
+@xindent<Equivalent to Item := Get_Line (File);>
+
+@xcode<@b<procedure> Get_Line
+   (Item : @b<out> Bounded.Bounded_String);>
+
+@xindent<Equivalent to Item := Get_Line;>
+
+!corrigendum A.11(3)
+
+@dinsa
+Nongeneric equivalents of Wide_Text_IO.Integer_IO and Wide_Text_IO.Float_IO are
+provided (as for Text_IO) for each predefined numeric type, with names such as
+Ada.Integer_Wide_Text_IO, Ada.Long_Integer_Wide_Text_IO,
+Ada.Float_Wide_Text_IO, Ada.Long_Float_Wide_Text_IO.
+@dinst
+The specification of package Wide_Text_IO.Wide_Bounded_IO is the same as
+that for Text_IO.Bounded_IO, except that any occurrence of Bounded_String
+is replaced by Wide_Bounded_String, and any occurrence of package Bounded
+is replaced by Wide_Bounded.
+
 
---!corrigendum
 
 !ACATS test
 

Questions? Ask the ACAA Technical Agent