OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [ada/] [a-stzfix.ads] - Blame information for rev 750

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 706 jeremybenn
------------------------------------------------------------------------------
2
--                                                                          --
3
--                         GNAT RUN-TIME COMPONENTS                         --
4
--                                                                          --
5
--          A D A . S T R I N G S . W I D E _ W I D E _ F I X E D           --
6
--                                                                          --
7
--                                 S p e c                                  --
8
--                                                                          --
9
-- This specification is derived from the Ada Reference Manual for use with --
10
-- GNAT.  In accordance with the copyright of that document, you can freely --
11
-- copy and modify this specification,  provided that if you redistribute a --
12
-- modified version,  any changes that you have made are clearly indicated. --
13
--                                                                          --
14
------------------------------------------------------------------------------
15
 
16
with Ada.Strings.Wide_Wide_Maps;
17
 
18
package Ada.Strings.Wide_Wide_Fixed is
19
   pragma Preelaborate;
20
 
21
   ------------------------------------------------------------------------
22
   -- Copy Procedure for Wide_Wide_Strings of Possibly Different Lengths --
23
   ------------------------------------------------------------------------
24
 
25
   procedure Move
26
     (Source  : Wide_Wide_String;
27
      Target  : out Wide_Wide_String;
28
      Drop    : Truncation := Error;
29
      Justify : Alignment  := Left;
30
      Pad     : Wide_Wide_Character  := Ada.Strings.Wide_Wide_Space);
31
 
32
   ------------------------
33
   -- Search Subprograms --
34
   ------------------------
35
 
36
   function Index
37
     (Source  : Wide_Wide_String;
38
      Pattern : Wide_Wide_String;
39
      Going   : Direction := Forward;
40
      Mapping : Wide_Wide_Maps.Wide_Wide_Character_Mapping :=
41
                  Wide_Wide_Maps.Identity) return Natural;
42
 
43
   function Index
44
     (Source  : Wide_Wide_String;
45
      Pattern : Wide_Wide_String;
46
      Going   : Direction := Forward;
47
      Mapping : Wide_Wide_Maps.Wide_Wide_Character_Mapping_Function)
48
      return Natural;
49
 
50
   function Index
51
     (Source : Wide_Wide_String;
52
      Set    : Wide_Wide_Maps.Wide_Wide_Character_Set;
53
      Test   : Membership := Inside;
54
      Going  : Direction  := Forward) return Natural;
55
 
56
   function Index
57
     (Source  : Wide_Wide_String;
58
      Pattern : Wide_Wide_String;
59
      From    : Positive;
60
      Going   : Direction := Forward;
61
      Mapping : Wide_Wide_Maps.Wide_Wide_Character_Mapping :=
62
                  Wide_Wide_Maps.Identity)
63
      return Natural;
64
   pragma Ada_05 (Index);
65
 
66
   function Index
67
     (Source  : Wide_Wide_String;
68
      Pattern : Wide_Wide_String;
69
      From    : Positive;
70
      Going   : Direction := Forward;
71
      Mapping : Wide_Wide_Maps.Wide_Wide_Character_Mapping_Function)
72
      return Natural;
73
   pragma Ada_05 (Index);
74
 
75
   function Index
76
     (Source  : Wide_Wide_String;
77
      Set     : Wide_Wide_Maps.Wide_Wide_Character_Set;
78
      From    : Positive;
79
      Test    : Membership := Inside;
80
      Going   : Direction := Forward) return Natural;
81
   pragma Ada_05 (Index);
82
 
83
   function Index_Non_Blank
84
     (Source : Wide_Wide_String;
85
      Going  : Direction := Forward) return Natural;
86
 
87
   function Index_Non_Blank
88
     (Source : Wide_Wide_String;
89
      From   : Positive;
90
      Going  : Direction := Forward) return Natural;
91
   pragma Ada_05 (Index_Non_Blank);
92
 
93
   function Count
94
     (Source  : Wide_Wide_String;
95
      Pattern : Wide_Wide_String;
96
      Mapping : Wide_Wide_Maps.Wide_Wide_Character_Mapping :=
97
                  Wide_Wide_Maps.Identity)
98
      return Natural;
99
 
100
   function Count
101
     (Source  : Wide_Wide_String;
102
      Pattern : Wide_Wide_String;
103
      Mapping : Wide_Wide_Maps.Wide_Wide_Character_Mapping_Function)
104
      return Natural;
105
 
106
   function Count
107
     (Source : Wide_Wide_String;
108
      Set    : Wide_Wide_Maps.Wide_Wide_Character_Set) return Natural;
109
 
110
   procedure Find_Token
111
     (Source : Wide_Wide_String;
112
      Set    : Wide_Wide_Maps.Wide_Wide_Character_Set;
113
      From   : Positive;
114
      Test   : Membership;
115
      First  : out Positive;
116
      Last   : out Natural);
117
   pragma Ada_2012 (Find_Token);
118
 
119
   procedure Find_Token
120
     (Source : Wide_Wide_String;
121
      Set    : Wide_Wide_Maps.Wide_Wide_Character_Set;
122
      Test   : Membership;
123
      First  : out Positive;
124
      Last   : out Natural);
125
 
126
   ----------------------------------------------
127
   -- Wide_Wide_String Translation Subprograms --
128
   ----------------------------------------------
129
 
130
   function Translate
131
     (Source  : Wide_Wide_String;
132
      Mapping : Wide_Wide_Maps.Wide_Wide_Character_Mapping)
133
      return Wide_Wide_String;
134
 
135
   procedure Translate
136
     (Source  : in out Wide_Wide_String;
137
      Mapping : Wide_Wide_Maps.Wide_Wide_Character_Mapping);
138
 
139
   function Translate
140
     (Source  : Wide_Wide_String;
141
      Mapping : Wide_Wide_Maps.Wide_Wide_Character_Mapping_Function)
142
      return Wide_Wide_String;
143
 
144
   procedure Translate
145
     (Source  : in out Wide_Wide_String;
146
      Mapping : Wide_Wide_Maps.Wide_Wide_Character_Mapping_Function);
147
 
148
   -------------------------------------------------
149
   -- Wide_Wide_String Transformation Subprograms --
150
   -------------------------------------------------
151
 
152
   function Replace_Slice
153
     (Source : Wide_Wide_String;
154
      Low    : Positive;
155
      High   : Natural;
156
      By     : Wide_Wide_String) return Wide_Wide_String;
157
 
158
   procedure Replace_Slice
159
     (Source  : in out Wide_Wide_String;
160
      Low     : Positive;
161
      High    : Natural;
162
      By      : Wide_Wide_String;
163
      Drop    : Truncation := Error;
164
      Justify : Alignment  := Left;
165
      Pad     : Wide_Wide_Character  := Ada.Strings.Wide_Wide_Space);
166
 
167
   function Insert
168
     (Source   : Wide_Wide_String;
169
      Before   : Positive;
170
      New_Item : Wide_Wide_String) return Wide_Wide_String;
171
 
172
   procedure Insert
173
     (Source   : in out Wide_Wide_String;
174
      Before   : Positive;
175
      New_Item : Wide_Wide_String;
176
      Drop     : Truncation := Error);
177
 
178
   function Overwrite
179
     (Source   : Wide_Wide_String;
180
      Position : Positive;
181
      New_Item : Wide_Wide_String) return Wide_Wide_String;
182
 
183
   procedure Overwrite
184
     (Source   : in out Wide_Wide_String;
185
      Position : Positive;
186
      New_Item : Wide_Wide_String;
187
      Drop     : Truncation := Right);
188
 
189
   function Delete
190
     (Source  : Wide_Wide_String;
191
      From    : Positive;
192
      Through : Natural) return Wide_Wide_String;
193
 
194
   procedure Delete
195
     (Source  : in out Wide_Wide_String;
196
      From    : Positive;
197
      Through : Natural;
198
      Justify : Alignment := Left;
199
      Pad     : Wide_Wide_Character := Ada.Strings.Wide_Wide_Space);
200
 
201
   -------------------------------------------
202
   -- Wide_Wide_String Selector Subprograms --
203
   -------------------------------------------
204
 
205
   function Trim
206
     (Source : Wide_Wide_String;
207
      Side   : Trim_End) return Wide_Wide_String;
208
 
209
   procedure Trim
210
     (Source  : in out Wide_Wide_String;
211
      Side    : Trim_End;
212
      Justify : Alignment      := Left;
213
      Pad     : Wide_Wide_Character := Wide_Wide_Space);
214
 
215
   function Trim
216
     (Source : Wide_Wide_String;
217
      Left   : Wide_Wide_Maps.Wide_Wide_Character_Set;
218
      Right  : Wide_Wide_Maps.Wide_Wide_Character_Set)
219
      return Wide_Wide_String;
220
 
221
   procedure Trim
222
     (Source  : in out Wide_Wide_String;
223
      Left    : Wide_Wide_Maps.Wide_Wide_Character_Set;
224
      Right   : Wide_Wide_Maps.Wide_Wide_Character_Set;
225
      Justify : Alignment := Ada.Strings.Left;
226
      Pad     : Wide_Wide_Character := Ada.Strings.Wide_Wide_Space);
227
 
228
   function Head
229
     (Source : Wide_Wide_String;
230
      Count  : Natural;
231
      Pad    : Wide_Wide_Character := Ada.Strings.Wide_Wide_Space)
232
      return Wide_Wide_String;
233
 
234
   procedure Head
235
     (Source  : in out Wide_Wide_String;
236
      Count   : Natural;
237
      Justify : Alignment := Left;
238
      Pad     : Wide_Wide_Character := Ada.Strings.Wide_Wide_Space);
239
 
240
   function Tail
241
     (Source : Wide_Wide_String;
242
      Count  : Natural;
243
      Pad    : Wide_Wide_Character := Ada.Strings.Wide_Wide_Space)
244
      return Wide_Wide_String;
245
 
246
   procedure Tail
247
     (Source  : in out Wide_Wide_String;
248
      Count   : Natural;
249
      Justify : Alignment := Left;
250
      Pad     : Wide_Wide_Character := Ada.Strings.Wide_Wide_Space);
251
 
252
   --------------------------------------------
253
   -- Wide_Wide_String Constructor Functions --
254
   --------------------------------------------
255
 
256
   function "*"
257
     (Left  : Natural;
258
      Right : Wide_Wide_Character) return Wide_Wide_String;
259
 
260
   function "*"
261
     (Left  : Natural;
262
      Right : Wide_Wide_String) return Wide_Wide_String;
263
 
264
end Ada.Strings.Wide_Wide_Fixed;

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.