1 ------------------------------------------------------------------------------
3 -- GNAT RUNTIME COMPONENTS --
5 -- A D A . S T R I N G S . W I D E _ F I X E D --
10 -- This specification is adapted from the Ada Reference Manual for use with --
11 -- GNAT. In accordance with the copyright of that document, you can freely --
12 -- copy and modify this specification, provided that if you redistribute a --
13 -- modified version, any changes that you have made are clearly indicated. --
15 ------------------------------------------------------------------------------
18 with Ada.Strings.Wide_Maps;
20 package Ada.Strings.Wide_Fixed is
21 pragma Preelaborate (Wide_Fixed);
23 -------------------------------------------------------------------
24 -- Copy Procedure for Wide_Strings of Possibly Different Lengths --
25 -------------------------------------------------------------------
28 (Source : in Wide_String;
29 Target : out Wide_String;
30 Drop : in Truncation := Error;
31 Justify : in Alignment := Left;
32 Pad : in Wide_Character := Ada.Strings.Wide_Space);
34 ------------------------
35 -- Search Subprograms --
36 ------------------------
39 (Source : in Wide_String;
40 Pattern : in Wide_String;
41 Going : in Direction := Forward;
42 Mapping : in Wide_Maps.Wide_Character_Mapping := Wide_Maps.Identity)
46 (Source : in Wide_String;
47 Pattern : in Wide_String;
48 Going : in Direction := Forward;
49 Mapping : in Wide_Maps.Wide_Character_Mapping_Function)
53 (Source : in Wide_String;
54 Set : in Wide_Maps.Wide_Character_Set;
55 Test : in Membership := Inside;
56 Going : in Direction := Forward)
59 function Index_Non_Blank
60 (Source : in Wide_String;
61 Going : in Direction := Forward)
65 (Source : in Wide_String;
66 Pattern : in Wide_String;
67 Mapping : in Wide_Maps.Wide_Character_Mapping := Wide_Maps.Identity)
71 (Source : in Wide_String;
72 Pattern : in Wide_String;
73 Mapping : in Wide_Maps.Wide_Character_Mapping_Function)
77 (Source : in Wide_String;
78 Set : in Wide_Maps.Wide_Character_Set)
82 (Source : in Wide_String;
83 Set : in Wide_Maps.Wide_Character_Set;
88 -----------------------------------------
89 -- Wide_String Translation Subprograms --
90 -----------------------------------------
93 (Source : in Wide_String;
94 Mapping : in Wide_Maps.Wide_Character_Mapping)
98 (Source : in out Wide_String;
99 Mapping : in Wide_Maps.Wide_Character_Mapping);
102 (Source : in Wide_String;
103 Mapping : in Wide_Maps.Wide_Character_Mapping_Function)
107 (Source : in out Wide_String;
108 Mapping : in Wide_Maps.Wide_Character_Mapping_Function);
110 --------------------------------------------
111 -- Wide_String Transformation Subprograms --
112 --------------------------------------------
114 function Replace_Slice
115 (Source : in Wide_String;
121 procedure Replace_Slice
122 (Source : in out Wide_String;
126 Drop : in Truncation := Error;
127 Justify : in Alignment := Left;
128 Pad : in Wide_Character := Ada.Strings.Wide_Space);
131 (Source : in Wide_String;
132 Before : in Positive;
133 New_Item : in Wide_String)
137 (Source : in out Wide_String;
138 Before : in Positive;
139 New_Item : in Wide_String;
140 Drop : in Truncation := Error);
143 (Source : in Wide_String;
144 Position : in Positive;
145 New_Item : in Wide_String)
149 (Source : in out Wide_String;
150 Position : in Positive;
151 New_Item : in Wide_String;
152 Drop : in Truncation := Right);
155 (Source : in Wide_String;
157 Through : in Natural)
161 (Source : in out Wide_String;
163 Through : in Natural;
164 Justify : in Alignment := Left;
165 Pad : in Wide_Character := Ada.Strings.Wide_Space);
167 --------------------------------------
168 -- Wide_String Selector Subprograms --
169 --------------------------------------
172 (Source : in Wide_String;
177 (Source : in out Wide_String;
179 Justify : in Alignment := Left;
180 Pad : in Wide_Character := Wide_Space);
183 (Source : in Wide_String;
184 Left : in Wide_Maps.Wide_Character_Set;
185 Right : in Wide_Maps.Wide_Character_Set)
189 (Source : in out Wide_String;
190 Left : in Wide_Maps.Wide_Character_Set;
191 Right : in Wide_Maps.Wide_Character_Set;
192 Justify : in Alignment := Ada.Strings.Left;
193 Pad : in Wide_Character := Ada.Strings.Wide_Space);
196 (Source : in Wide_String;
198 Pad : in Wide_Character := Ada.Strings.Wide_Space)
202 (Source : in out Wide_String;
204 Justify : in Alignment := Left;
205 Pad : in Wide_Character := Ada.Strings.Wide_Space);
208 (Source : in Wide_String;
210 Pad : in Wide_Character := Ada.Strings.Wide_Space)
214 (Source : in out Wide_String;
216 Justify : in Alignment := Left;
217 Pad : in Wide_Character := Ada.Strings.Wide_Space);
219 ---------------------------------------
220 -- Wide_String Constructor Functions --
221 ---------------------------------------
225 Right : in Wide_Character)
230 Right : in Wide_String)
233 end Ada.Strings.Wide_Fixed;