gnatprove_12.1.1_e1e1ce47/libexec/spark/lib/gcc/x86_64-pc-linux-gnu/12.1.0/adainclude/a-wichha.ads

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
------------------------------------------------------------------------------
--                                                                          --
--                         GNAT RUN-TIME COMPONENTS                         --
--                                                                          --
--         A D A . W I D E _ C H A R A C T E R S . H A N D L I N G          --
--                                                                          --
--                                 S p e c                                  --
--                                                                          --
-- This specification is derived 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. --
--                                                                          --
------------------------------------------------------------------------------

package Ada.Wide_Characters.Handling is
   pragma Pure;

   function Character_Set_Version return String;
   pragma Inline (Character_Set_Version);
   --  Returns an implementation-defined identifier that identifies the version
   --  of the character set standard that is used for categorizing characters
   --  by the implementation. For GNAT this is "Unicode v.v".

   function Is_Control (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Control);
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  other_control, otherwise returns False.

   function Is_Letter (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Letter);
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  letter_uppercase, letter_lowercase, letter_titlecase, letter_modifier,
   --  letter_other, or number_letter. Otherwise returns False.

   function Is_Lower (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Lower);
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  letter_lowercase, otherwise returns False.

   function Is_Upper (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Upper);
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  letter_uppercase, otherwise returns False.

   function Is_Basic (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Basic);
   --  Returns True if the Wide_Character designated by Item has no
   --  Decomposition Mapping in the code charts of ISO/IEC 10646:2017,
   --  otherwise returns False.

   function Is_Digit (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Digit);
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  number_decimal, otherwise returns False.

   function Is_Decimal_Digit (Item : Wide_Character) return Boolean
     renames Is_Digit;

   function Is_Hexadecimal_Digit (Item : Wide_Character) return Boolean;
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  number_decimal, or is in the range 'A' .. 'F' or 'a' .. 'f', otherwise
   --  returns False.

   function Is_Alphanumeric (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Alphanumeric);
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  letter_uppercase, letter_lowercase, letter_titlecase, letter_modifier,
   --  letter_other, number_letter, or number_decimal; otherwise returns False.

   function Is_Special (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Special);
   --  Returns True if the Wide_Character designated by Item is categorized
   --  as graphic_character, but not categorized as letter_uppercase,
   --  letter_lowercase, letter_titlecase, letter_modifier, letter_other,
   --  number_letter, or number_decimal. Otherwise returns False.

   function Is_Line_Terminator (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Line_Terminator);
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  separator_line or separator_paragraph, or if Item is a conventional line
   --  terminator character (CR, LF, VT, or FF). Otherwise returns False.

   function Is_Mark (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Mark);
   --  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_Format (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Other_Format);
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  other_format, otherwise returns False.

   function Is_Punctuation_Connector (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Punctuation_Connector);
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  punctuation_connector, otherwise returns False.

   function Is_Space (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Space);
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  separator_space, otherwise returns False.

   function Is_NFKC (Item : Wide_Character) return Boolean;
   pragma Inline (Is_NFKC);
   --  Returns True if the Wide_Character designated by Item could be present
   --  in a string normalized to Normalization Form KC (as defined by Clause
   --  21 of ISO/IEC 10646:2017), otherwise returns False.

   function Is_Graphic (Item : Wide_Character) return Boolean;
   pragma Inline (Is_Graphic);
   --  Returns True if the Wide_Character designated by Item is categorized as
   --  graphic_character, otherwise returns False.

   function To_Lower (Item : Wide_Character) return Wide_Character;
   pragma Inline (To_Lower);
   --  Returns the Simple Lowercase Mapping 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.

   function To_Lower (Item : Wide_String) return Wide_String;
   --  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.

   function To_Upper (Item : Wide_Character) return Wide_Character;
   pragma Inline (To_Upper);
   --  Returns the Simple Uppercase Mapping 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.

   function To_Upper (Item : Wide_String) return Wide_String;
   --  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.

   function To_Basic (Item : Wide_Character) return Wide_Character;
   pragma Inline (To_Basic);
   --  Returns the Wide_Character whose code point is given by the first value
   --  of its Decomposition Mapping in the code charts of ISO/IEC 10646:2017 if
   --  any, returns Item otherwise.

   function To_Basic (Item : Wide_String) return Wide_String;
   --  Returns the result of applying the To_Basic conversion to each
   --  Wide_Character 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. The lower bound of the result Wide_String is 1.

end Ada.Wide_Characters.Handling;