CVS difference for ai05s/ai05-0185-1.txt
--- ai05s/ai05-0185-1.txt 2010/10/22 04:52:26 1.4
+++ ai05s/ai05-0185-1.txt 2010/11/25 02:46:32 1.5
@@ -1,7 +1,11 @@
-!standard A.3.5 (0) 10-10-15 AI05-0185-1/03
+!standard A.3.5 (0) 10-11-23 AI05-0185-1/04
!standard A.3.6 (0)
+!standard A.3.1(7/2)
+!standard A.3.2(4)
+!standard A.3.2(32)
!class amendment 09-11-02
!status Amendment 2012 10-08-11
+!status ARG Approved 5-0-3 10-10-31
!status work item 10-10-18
!status ARG Approved 8-0-0 10-06-20
!status work item 09-11-02
@@ -41,6 +45,43 @@
!wording
+Modify A.3.1(7/2):
+
+If an implementation chooses to provide implementation-defined operations on
+Wide_Character or Wide_String (such as [case mapping, classification, ]collating
+and sorting, etc.) it should do so by providing child units of Wide_Characters.
+Similarly if it chooses to provide implementation-defined operations on
+Wide_Wide_Character or Wide_Wide_String it should do so by providing child units
+of Wide_Wide_Characters.
+
+Add to the end of A.3.2(4):
+
+ function Is_Line_Terminator (Item : in Character) return Boolean;
+ function Is_Mark (Item : in Character) return Boolean;
+ function Is_Other_Format (Item : in Character) return Boolean;
+ function Is_Punctuation_Connector (Item : in Character) return Boolean;
+ function Is_Space (Item : in Character) return Boolean;
+
+Add following A.3.2(32)
+
+Is_Line_Terminator
+True if Item is a character with position 10 .. 13.
+
+Is_Mark
+Never True (no value of type Character has categories Mark, Non-Spacing
+or Mark, Spacing Combining).
+
+Is_Other_Format
+True if Item is a character with position 173 (Soft_Hyphen).
+
+Is_Punctuation_Connector
+True if Item is a character with position 95 ('_', known as Low_Line
+or Underscore).
+
+Is_Space
+True if Item is a character with position 32 (' ') or 160 (No_Break_Space).
+
+
A.3.5 The Package Wide_Characters.Handling
The package Wide_Characters.Handling provides operations for classifying
@@ -76,9 +117,9 @@
function Is_Mark (Item : Wide_Character) return Boolean;
- function Is_Other (Item : Wide_Character) return Boolean;
+ function Is_Other_Format (Item : Wide_Character) return Boolean;
- function Is_Punctuation (Item : Wide_Character) return Boolean;
+ function Is_Punctuation_Connector (Item : Wide_Character) return Boolean;
function Is_Space (Item : Wide_Character) return Boolean;
@@ -150,12 +191,12 @@
Returns True if the Wide_Character designated by Item is categorized as
mark_non_spacing or mark_spacing_combining, otherwise returns False.
- function Is_Other (Item : Wide_Character) return Boolean;
+ function Is_Other_Format (Item : Wide_Character) return Boolean;
Returns True if the Wide_Character designated by Item is categorized as
other_format, otherwise returns False.
- function Is_Punctuation (Item : Wide_Character) return Boolean;
+ function Is_Punctuation_Connector (Item : Wide_Character) return Boolean;
Returns True if the Wide_Character designated by Item is categorized as
punctuation_connector, otherwise returns False.
@@ -172,7 +213,8 @@
function To_Lower (Item : Wide_Character) return Wide_Character;
- Returns the Simple Lowercase Mapping of the Wide_Character designated by
+ Returns the Simple Lowercase Mapping as defined by documents referenced in
+ the note in section 1 of ISO/IEC 10646:2003 of the Wide_Character designated by
Item. If the Simple Lowercase Mapping does not exist for the
Wide_Character designated by Item, then the value of Item is returned.
@@ -181,11 +223,12 @@
Returns the result of applying the To_Lower Wide_Character to
Wide_Character conversion to each element of the Wide_String designated by
Item. The result is the null Wide_String if the value of the formal
- parameter is the null Wide_String.
+ parameter is the null Wide_String. The lower bound of the result Wide_String is 1.
function To_Upper (Item : Wide_Character) return Wide_Character;
- Returns the Simple Uppercase Mapping of the Wide_Character designated by
+ Returns the Simple Uppercase Mapping as defined by documents referenced in
+ the note in section 1 of ISO/IEC 10646:2003 of the Wide_Character designated by
Item. If the Simple Uppercase Mapping does not exist for the
Wide_Character designated by Item, then the value of Item is returned.
@@ -194,7 +237,7 @@
Returns the result of applying the To_Upper Wide_Character to
Wide_Character conversion to each element of the Wide_String designated by
Item. The result is the null Wide_String if the value of the formal
- parameter is the null Wide_String.
+ parameter is the null Wide_String. The lower bound of the result Wide_String is 1.
A.3.6 The Package Wide_Wide_Characters.Handling
@@ -248,6 +291,83 @@
(See discussion.)
+
+!corrigendum A.3.1(7/2)
+
+@drepl
+If an implementation chooses to provide implementation-defined operations on
+Wide_Character or Wide_String (such as case mapping, classification, collating
+and sorting, etc.) it should do so by providing child units of Wide_Characters.
+Similarly if it chooses to provide implementation-defined operations on
+Wide_Wide_Character or Wide_Wide_String it should do so by providing child units
+of Wide_Wide_Characters.
+@dby
+If an implementation chooses to provide implementation-defined operations on
+Wide_Character or Wide_String (such as collating
+and sorting, etc.) it should do so by providing child units of Wide_Characters.
+Similarly if it chooses to provide implementation-defined operations on
+Wide_Wide_Character or Wide_Wide_String it should do so by providing child units
+of Wide_Wide_Characters.
+
+!corrigendum A.3.2(4)
+
+@drepl
+@xcode< @b<function> Is_Control (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Graphic (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Letter (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Lower (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Upper (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Basic (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Digit (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Decimal_Digit (Item : @b<in> Character) @b<return> Boolean;
+ @b<renames> Is_Digit;
+ @b<function> Is_Hexadecimal_Digit (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Alphanumeric (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Special (Item : @b<in> Character) @b<return> Boolean;>
+@dby
+@xcode< @b<function> Is_Control (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Graphic (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Letter (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Lower (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Upper (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Basic (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Digit (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Decimal_Digit (Item : @b<in> Character) @b<return> Boolean;
+ @b<renames> Is_Digit;
+ @b<function> Is_Hexadecimal_Digit (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Alphanumeric (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Special (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Line_Terminator (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Mark (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Other_Format (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Punctuation_Connector (Item : @b<in> Character) @b<return> Boolean;
+ @b<function> Is_Space (Item : @b<in> Character) @b<return> Boolean;>
+
+!corrigendum A.3.2(32)
+
+@dinsa
+@xhang<@xterm<Is_Special>
+True if Item is a special graphic character. A @i<special graphic character> is a graphic
+character that is not alphanumeric.>
+@dinss
+@xhang<@xterm<Is_Line_Terminator>
+Is_Line_Terminator
+True if Item is a character with position 10 .. 13.>
+
+@xhang<@xterm<Is_Mark>
+Never True (no value of type Character has categories Mark, Non-Spacing
+or Mark, Spacing Combining).>
+
+@xhang<@xterm<Is_Other_Format>
+True if Item is a character with position 173 (Soft_Hyphen).>
+
+@xhang<@xterm<Is_Punctuation_Connector>
+True if Item is a character with position 95 ('_', known as Low_Line
+or Underscore).>
+
+@xhang<@xterm<Is_Space>
+True if Item is a character with position 32 (' ') or 160 (No_Break_Space).>
+
!corrigendum A.3.5(0)
@dinsc
@@ -284,9 +404,9 @@
@b<function> Is_Mark (Item : Wide_Character) @b<return> Boolean;
- @b<function> Is_Other (Item : Wide_Character) @b<return> Boolean;
+ @b<function> Is_Other_Format (Item : Wide_Character) @b<return> Boolean;
- @b<function> Is_Punctuation (Item : Wide_Character) @b<return> Boolean;
+ @b<function> Is_Punctuation_Connector (Item : Wide_Character) @b<return> Boolean;
@b<function> Is_Space (Item : Wide_Character) @b<return> Boolean;
@@ -361,12 +481,12 @@
@xindent<Returns True if the Wide_Character designated by Item is categorized as
@fa<mark_non_spacing> or @fa<mark_spacing_combining>, otherwise returns False.>
-@xcode<@b<function> Is_Other (Item : Wide_Character) @b<return> Boolean;>
+@xcode<@b<function> Is_Other_Format (Item : Wide_Character) @b<return> Boolean;>
@xindent<Returns True if the Wide_Character designated by Item is categorized as
@fa<other_format>, otherwise returns False.>
-@xcode<@b<function> Is_Punctuation (Item : Wide_Character) @b<return> Boolean;>
+@xcode<@b<function> Is_Punctuation_Connector (Item : Wide_Character) @b<return> Boolean;>
@xindent<Returns True if the Wide_Character designated by Item is categorized as
@fa<punctuation_connector>, otherwise returns False.>
@@ -383,7 +503,8 @@
@xcode<@b<function> To_Lower (Item : Wide_Character) @b<return> Wide_Character;>
-@xindent<Returns the Simple Lowercase Mapping of the Wide_Character designated
+@xindent<Returns the Simple Lowercase Mapping as defined by documents referenced
+in the note in section 1 of ISO/IEC 10646:2003 of the Wide_Character designated
by Item. If the Simple Lowercase Mapping does not exist for the Wide_Character
designated by Item, then the value of Item is returned.>
@@ -392,11 +513,12 @@
@xindent<Returns the result of applying the To_Lower Wide_Character to
Wide_Character conversion to each element of the Wide_String designated by Item.
The result is the null Wide_String if the value of the formal parameter is the
-null Wide_String.>
+null Wide_String. The lower bound of the result Wide_String is 1.>
@xcode<@b<function> To_Upper (Item : Wide_Character) @b<return> Wide_Character;>
-@xindent<Returns the Simple Uppercase Mapping of the Wide_Character designated
+@xindent<Returns the Simple Uppercase Mapping as defined by documents referenced
+in the note in section 1 of ISO/IEC 10646:2003 of the Wide_Character designated
by Item. If the Simple Uppercase Mapping does not exist for the Wide_Character
designated by Item, then the value of Item is returned.>
@@ -405,7 +527,7 @@
@xindent<Returns the result of applying the To_Upper Wide_Character to
Wide_Character conversion to each element of the Wide_String designated by Item.
The result is the null Wide_String if the value of the formal parameter is the
-null Wide_String.>
+null Wide_String. The lower bound of the result Wide_String is 1.>
!corrigendum A.3.6(0)
Questions? Ask the ACAA Technical Agent