1------------------------------------------------------------------------------ 2-- -- 3-- GNAT RUN-TIME COMPONENTS -- 4-- -- 5-- A D A . S T R I N G S . M A P S . C O N S T A N T S -- 6-- -- 7-- S p e c -- 8-- -- 9-- Copyright (C) 1992-2014, Free Software Foundation, Inc. -- 10-- -- 11-- This specification is derived from the Ada Reference Manual for use with -- 12-- GNAT. The copyright notice above, and the license provisions that follow -- 13-- apply solely to the contents of the part following the private keyword. -- 14-- -- 15-- GNAT is free software; you can redistribute it and/or modify it under -- 16-- terms of the GNU General Public License as published by the Free Soft- -- 17-- ware Foundation; either version 3, or (at your option) any later ver- -- 18-- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- 19-- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -- 20-- or FITNESS FOR A PARTICULAR PURPOSE. -- 21-- -- 22-- As a special exception under Section 7 of GPL version 3, you are granted -- 23-- additional permissions described in the GCC Runtime Library Exception, -- 24-- version 3.1, as published by the Free Software Foundation. -- 25-- -- 26-- You should have received a copy of the GNU General Public License and -- 27-- a copy of the GCC Runtime Library Exception along with this program; -- 28-- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see -- 29-- <http://www.gnu.org/licenses/>. -- 30-- -- 31-- GNAT was originally developed by the GNAT team at New York University. -- 32-- Extensive contributions were provided by Ada Core Technologies Inc. -- 33-- -- 34------------------------------------------------------------------------------ 35 36with Ada.Characters.Latin_1; 37 38package Ada.Strings.Maps.Constants is 39 pragma Pure; 40 -- In accordance with Ada 2005 AI-362 41 42 Control_Set : constant Character_Set; 43 Graphic_Set : constant Character_Set; 44 Letter_Set : constant Character_Set; 45 Lower_Set : constant Character_Set; 46 Upper_Set : constant Character_Set; 47 Basic_Set : constant Character_Set; 48 Decimal_Digit_Set : constant Character_Set; 49 Hexadecimal_Digit_Set : constant Character_Set; 50 Alphanumeric_Set : constant Character_Set; 51 Special_Set : constant Character_Set; 52 ISO_646_Set : constant Character_Set; 53 54 Lower_Case_Map : constant Character_Mapping; 55 -- Maps to lower case for letters, else identity 56 57 Upper_Case_Map : constant Character_Mapping; 58 -- Maps to upper case for letters, else identity 59 60 Basic_Map : constant Character_Mapping; 61 -- Maps to basic letters for letters, else identity 62 63private 64 package L renames Ada.Characters.Latin_1; 65 66 Control_Set : constant Character_Set := 67 (L.NUL .. L.US => True, 68 L.DEL .. L.APC => True, 69 others => False); 70 71 Graphic_Set : constant Character_Set := 72 (L.Space .. L.Tilde => True, 73 L.No_Break_Space .. L.LC_Y_Diaeresis => True, 74 others => False); 75 76 Letter_Set : constant Character_Set := 77 ('A' .. 'Z' => True, 78 L.LC_A .. L.LC_Z => True, 79 L.UC_A_Grave .. L.UC_O_Diaeresis => True, 80 L.UC_O_Oblique_Stroke .. L.LC_O_Diaeresis => True, 81 L.LC_O_Oblique_Stroke .. L.LC_Y_Diaeresis => True, 82 others => False); 83 84 Lower_Set : constant Character_Set := 85 (L.LC_A .. L.LC_Z => True, 86 L.LC_German_Sharp_S .. L.LC_O_Diaeresis => True, 87 L.LC_O_Oblique_Stroke .. L.LC_Y_Diaeresis => True, 88 others => False); 89 90 Upper_Set : constant Character_Set := 91 ('A' .. 'Z' => True, 92 L.UC_A_Grave .. L.UC_O_Diaeresis => True, 93 L.UC_O_Oblique_Stroke .. L.UC_Icelandic_Thorn => True, 94 others => False); 95 96 Basic_Set : constant Character_Set := 97 ('A' .. 'Z' => True, 98 L.LC_A .. L.LC_Z => True, 99 L.UC_AE_Diphthong .. L.UC_AE_Diphthong => True, 100 L.LC_AE_Diphthong .. L.LC_AE_Diphthong => True, 101 L.LC_German_Sharp_S .. L.LC_German_Sharp_S => True, 102 L.UC_Icelandic_Thorn .. L.UC_Icelandic_Thorn => True, 103 L.LC_Icelandic_Thorn .. L.LC_Icelandic_Thorn => True, 104 L.UC_Icelandic_Eth .. L.UC_Icelandic_Eth => True, 105 L.LC_Icelandic_Eth .. L.LC_Icelandic_Eth => True, 106 others => False); 107 108 Decimal_Digit_Set : constant Character_Set := 109 ('0' .. '9' => True, 110 others => False); 111 112 Hexadecimal_Digit_Set : constant Character_Set := 113 ('0' .. '9' => True, 114 'A' .. 'F' => True, 115 L.LC_A .. L.LC_F => True, 116 others => False); 117 118 Alphanumeric_Set : constant Character_Set := 119 ('0' .. '9' => True, 120 'A' .. 'Z' => True, 121 L.LC_A .. L.LC_Z => True, 122 L.UC_A_Grave .. L.UC_O_Diaeresis => True, 123 L.UC_O_Oblique_Stroke .. L.LC_O_Diaeresis => True, 124 L.LC_O_Oblique_Stroke .. L.LC_Y_Diaeresis => True, 125 others => False); 126 127 Special_Set : constant Character_Set := 128 (L.Space .. L.Solidus => True, 129 L.Colon .. L.Commercial_At => True, 130 L.Left_Square_Bracket .. L.Grave => True, 131 L.Left_Curly_Bracket .. L.Tilde => True, 132 L.No_Break_Space .. L.Inverted_Question => True, 133 L.Multiplication_Sign .. L.Multiplication_Sign => True, 134 L.Division_Sign .. L.Division_Sign => True, 135 others => False); 136 137 ISO_646_Set : constant Character_Set := 138 (L.NUL .. L.DEL => True, 139 others => False); 140 141 Lower_Case_Map : constant Character_Mapping := 142 (L.NUL & -- NUL 0 143 L.SOH & -- SOH 1 144 L.STX & -- STX 2 145 L.ETX & -- ETX 3 146 L.EOT & -- EOT 4 147 L.ENQ & -- ENQ 5 148 L.ACK & -- ACK 6 149 L.BEL & -- BEL 7 150 L.BS & -- BS 8 151 L.HT & -- HT 9 152 L.LF & -- LF 10 153 L.VT & -- VT 11 154 L.FF & -- FF 12 155 L.CR & -- CR 13 156 L.SO & -- SO 14 157 L.SI & -- SI 15 158 L.DLE & -- DLE 16 159 L.DC1 & -- DC1 17 160 L.DC2 & -- DC2 18 161 L.DC3 & -- DC3 19 162 L.DC4 & -- DC4 20 163 L.NAK & -- NAK 21 164 L.SYN & -- SYN 22 165 L.ETB & -- ETB 23 166 L.CAN & -- CAN 24 167 L.EM & -- EM 25 168 L.SUB & -- SUB 26 169 L.ESC & -- ESC 27 170 L.FS & -- FS 28 171 L.GS & -- GS 29 172 L.RS & -- RS 30 173 L.US & -- US 31 174 L.Space & -- ' ' 32 175 L.Exclamation & -- '!' 33 176 L.Quotation & -- '"' 34 177 L.Number_Sign & -- '#' 35 178 L.Dollar_Sign & -- '$' 36 179 L.Percent_Sign & -- '%' 37 180 L.Ampersand & -- '&' 38 181 L.Apostrophe & -- ''' 39 182 L.Left_Parenthesis & -- '(' 40 183 L.Right_Parenthesis & -- ')' 41 184 L.Asterisk & -- '*' 42 185 L.Plus_Sign & -- '+' 43 186 L.Comma & -- ',' 44 187 L.Hyphen & -- '-' 45 188 L.Full_Stop & -- '.' 46 189 L.Solidus & -- '/' 47 190 '0' & -- '0' 48 191 '1' & -- '1' 49 192 '2' & -- '2' 50 193 '3' & -- '3' 51 194 '4' & -- '4' 52 195 '5' & -- '5' 53 196 '6' & -- '6' 54 197 '7' & -- '7' 55 198 '8' & -- '8' 56 199 '9' & -- '9' 57 200 L.Colon & -- ':' 58 201 L.Semicolon & -- ';' 59 202 L.Less_Than_Sign & -- '<' 60 203 L.Equals_Sign & -- '=' 61 204 L.Greater_Than_Sign & -- '>' 62 205 L.Question & -- '?' 63 206 L.Commercial_At & -- '@' 64 207 L.LC_A & -- 'a' 65 208 L.LC_B & -- 'b' 66 209 L.LC_C & -- 'c' 67 210 L.LC_D & -- 'd' 68 211 L.LC_E & -- 'e' 69 212 L.LC_F & -- 'f' 70 213 L.LC_G & -- 'g' 71 214 L.LC_H & -- 'h' 72 215 L.LC_I & -- 'i' 73 216 L.LC_J & -- 'j' 74 217 L.LC_K & -- 'k' 75 218 L.LC_L & -- 'l' 76 219 L.LC_M & -- 'm' 77 220 L.LC_N & -- 'n' 78 221 L.LC_O & -- 'o' 79 222 L.LC_P & -- 'p' 80 223 L.LC_Q & -- 'q' 81 224 L.LC_R & -- 'r' 82 225 L.LC_S & -- 's' 83 226 L.LC_T & -- 't' 84 227 L.LC_U & -- 'u' 85 228 L.LC_V & -- 'v' 86 229 L.LC_W & -- 'w' 87 230 L.LC_X & -- 'x' 88 231 L.LC_Y & -- 'y' 89 232 L.LC_Z & -- 'z' 90 233 L.Left_Square_Bracket & -- '[' 91 234 L.Reverse_Solidus & -- '\' 92 235 L.Right_Square_Bracket & -- ']' 93 236 L.Circumflex & -- '^' 94 237 L.Low_Line & -- '_' 95 238 L.Grave & -- '`' 96 239 L.LC_A & -- 'a' 97 240 L.LC_B & -- 'b' 98 241 L.LC_C & -- 'c' 99 242 L.LC_D & -- 'd' 100 243 L.LC_E & -- 'e' 101 244 L.LC_F & -- 'f' 102 245 L.LC_G & -- 'g' 103 246 L.LC_H & -- 'h' 104 247 L.LC_I & -- 'i' 105 248 L.LC_J & -- 'j' 106 249 L.LC_K & -- 'k' 107 250 L.LC_L & -- 'l' 108 251 L.LC_M & -- 'm' 109 252 L.LC_N & -- 'n' 110 253 L.LC_O & -- 'o' 111 254 L.LC_P & -- 'p' 112 255 L.LC_Q & -- 'q' 113 256 L.LC_R & -- 'r' 114 257 L.LC_S & -- 's' 115 258 L.LC_T & -- 't' 116 259 L.LC_U & -- 'u' 117 260 L.LC_V & -- 'v' 118 261 L.LC_W & -- 'w' 119 262 L.LC_X & -- 'x' 120 263 L.LC_Y & -- 'y' 121 264 L.LC_Z & -- 'z' 122 265 L.Left_Curly_Bracket & -- '{' 123 266 L.Vertical_Line & -- '|' 124 267 L.Right_Curly_Bracket & -- '}' 125 268 L.Tilde & -- '~' 126 269 L.DEL & -- DEL 127 270 L.Reserved_128 & -- Reserved_128 128 271 L.Reserved_129 & -- Reserved_129 129 272 L.BPH & -- BPH 130 273 L.NBH & -- NBH 131 274 L.Reserved_132 & -- Reserved_132 132 275 L.NEL & -- NEL 133 276 L.SSA & -- SSA 134 277 L.ESA & -- ESA 135 278 L.HTS & -- HTS 136 279 L.HTJ & -- HTJ 137 280 L.VTS & -- VTS 138 281 L.PLD & -- PLD 139 282 L.PLU & -- PLU 140 283 L.RI & -- RI 141 284 L.SS2 & -- SS2 142 285 L.SS3 & -- SS3 143 286 L.DCS & -- DCS 144 287 L.PU1 & -- PU1 145 288 L.PU2 & -- PU2 146 289 L.STS & -- STS 147 290 L.CCH & -- CCH 148 291 L.MW & -- MW 149 292 L.SPA & -- SPA 150 293 L.EPA & -- EPA 151 294 L.SOS & -- SOS 152 295 L.Reserved_153 & -- Reserved_153 153 296 L.SCI & -- SCI 154 297 L.CSI & -- CSI 155 298 L.ST & -- ST 156 299 L.OSC & -- OSC 157 300 L.PM & -- PM 158 301 L.APC & -- APC 159 302 L.No_Break_Space & -- No_Break_Space 160 303 L.Inverted_Exclamation & -- Inverted_Exclamation 161 304 L.Cent_Sign & -- Cent_Sign 162 305 L.Pound_Sign & -- Pound_Sign 163 306 L.Currency_Sign & -- Currency_Sign 164 307 L.Yen_Sign & -- Yen_Sign 165 308 L.Broken_Bar & -- Broken_Bar 166 309 L.Section_Sign & -- Section_Sign 167 310 L.Diaeresis & -- Diaeresis 168 311 L.Copyright_Sign & -- Copyright_Sign 169 312 L.Feminine_Ordinal_Indicator & -- Feminine_Ordinal_Indicator 170 313 L.Left_Angle_Quotation & -- Left_Angle_Quotation 171 314 L.Not_Sign & -- Not_Sign 172 315 L.Soft_Hyphen & -- Soft_Hyphen 173 316 L.Registered_Trade_Mark_Sign & -- Registered_Trade_Mark_Sign 174 317 L.Macron & -- Macron 175 318 L.Degree_Sign & -- Degree_Sign 176 319 L.Plus_Minus_Sign & -- Plus_Minus_Sign 177 320 L.Superscript_Two & -- Superscript_Two 178 321 L.Superscript_Three & -- Superscript_Three 179 322 L.Acute & -- Acute 180 323 L.Micro_Sign & -- Micro_Sign 181 324 L.Pilcrow_Sign & -- Pilcrow_Sign 182 325 L.Middle_Dot & -- Middle_Dot 183 326 L.Cedilla & -- Cedilla 184 327 L.Superscript_One & -- Superscript_One 185 328 L.Masculine_Ordinal_Indicator & -- Masculine_Ordinal_Indicator 186 329 L.Right_Angle_Quotation & -- Right_Angle_Quotation 187 330 L.Fraction_One_Quarter & -- Fraction_One_Quarter 188 331 L.Fraction_One_Half & -- Fraction_One_Half 189 332 L.Fraction_Three_Quarters & -- Fraction_Three_Quarters 190 333 L.Inverted_Question & -- Inverted_Question 191 334 L.LC_A_Grave & -- UC_A_Grave 192 335 L.LC_A_Acute & -- UC_A_Acute 193 336 L.LC_A_Circumflex & -- UC_A_Circumflex 194 337 L.LC_A_Tilde & -- UC_A_Tilde 195 338 L.LC_A_Diaeresis & -- UC_A_Diaeresis 196 339 L.LC_A_Ring & -- UC_A_Ring 197 340 L.LC_AE_Diphthong & -- UC_AE_Diphthong 198 341 L.LC_C_Cedilla & -- UC_C_Cedilla 199 342 L.LC_E_Grave & -- UC_E_Grave 200 343 L.LC_E_Acute & -- UC_E_Acute 201 344 L.LC_E_Circumflex & -- UC_E_Circumflex 202 345 L.LC_E_Diaeresis & -- UC_E_Diaeresis 203 346 L.LC_I_Grave & -- UC_I_Grave 204 347 L.LC_I_Acute & -- UC_I_Acute 205 348 L.LC_I_Circumflex & -- UC_I_Circumflex 206 349 L.LC_I_Diaeresis & -- UC_I_Diaeresis 207 350 L.LC_Icelandic_Eth & -- UC_Icelandic_Eth 208 351 L.LC_N_Tilde & -- UC_N_Tilde 209 352 L.LC_O_Grave & -- UC_O_Grave 210 353 L.LC_O_Acute & -- UC_O_Acute 211 354 L.LC_O_Circumflex & -- UC_O_Circumflex 212 355 L.LC_O_Tilde & -- UC_O_Tilde 213 356 L.LC_O_Diaeresis & -- UC_O_Diaeresis 214 357 L.Multiplication_Sign & -- Multiplication_Sign 215 358 L.LC_O_Oblique_Stroke & -- UC_O_Oblique_Stroke 216 359 L.LC_U_Grave & -- UC_U_Grave 217 360 L.LC_U_Acute & -- UC_U_Acute 218 361 L.LC_U_Circumflex & -- UC_U_Circumflex 219 362 L.LC_U_Diaeresis & -- UC_U_Diaeresis 220 363 L.LC_Y_Acute & -- UC_Y_Acute 221 364 L.LC_Icelandic_Thorn & -- UC_Icelandic_Thorn 222 365 L.LC_German_Sharp_S & -- LC_German_Sharp_S 223 366 L.LC_A_Grave & -- LC_A_Grave 224 367 L.LC_A_Acute & -- LC_A_Acute 225 368 L.LC_A_Circumflex & -- LC_A_Circumflex 226 369 L.LC_A_Tilde & -- LC_A_Tilde 227 370 L.LC_A_Diaeresis & -- LC_A_Diaeresis 228 371 L.LC_A_Ring & -- LC_A_Ring 229 372 L.LC_AE_Diphthong & -- LC_AE_Diphthong 230 373 L.LC_C_Cedilla & -- LC_C_Cedilla 231 374 L.LC_E_Grave & -- LC_E_Grave 232 375 L.LC_E_Acute & -- LC_E_Acute 233 376 L.LC_E_Circumflex & -- LC_E_Circumflex 234 377 L.LC_E_Diaeresis & -- LC_E_Diaeresis 235 378 L.LC_I_Grave & -- LC_I_Grave 236 379 L.LC_I_Acute & -- LC_I_Acute 237 380 L.LC_I_Circumflex & -- LC_I_Circumflex 238 381 L.LC_I_Diaeresis & -- LC_I_Diaeresis 239 382 L.LC_Icelandic_Eth & -- LC_Icelandic_Eth 240 383 L.LC_N_Tilde & -- LC_N_Tilde 241 384 L.LC_O_Grave & -- LC_O_Grave 242 385 L.LC_O_Acute & -- LC_O_Acute 243 386 L.LC_O_Circumflex & -- LC_O_Circumflex 244 387 L.LC_O_Tilde & -- LC_O_Tilde 245 388 L.LC_O_Diaeresis & -- LC_O_Diaeresis 246 389 L.Division_Sign & -- Division_Sign 247 390 L.LC_O_Oblique_Stroke & -- LC_O_Oblique_Stroke 248 391 L.LC_U_Grave & -- LC_U_Grave 249 392 L.LC_U_Acute & -- LC_U_Acute 250 393 L.LC_U_Circumflex & -- LC_U_Circumflex 251 394 L.LC_U_Diaeresis & -- LC_U_Diaeresis 252 395 L.LC_Y_Acute & -- LC_Y_Acute 253 396 L.LC_Icelandic_Thorn & -- LC_Icelandic_Thorn 254 397 L.LC_Y_Diaeresis); -- LC_Y_Diaeresis 255 398 399 Upper_Case_Map : constant Character_Mapping := 400 (L.NUL & -- NUL 0 401 L.SOH & -- SOH 1 402 L.STX & -- STX 2 403 L.ETX & -- ETX 3 404 L.EOT & -- EOT 4 405 L.ENQ & -- ENQ 5 406 L.ACK & -- ACK 6 407 L.BEL & -- BEL 7 408 L.BS & -- BS 8 409 L.HT & -- HT 9 410 L.LF & -- LF 10 411 L.VT & -- VT 11 412 L.FF & -- FF 12 413 L.CR & -- CR 13 414 L.SO & -- SO 14 415 L.SI & -- SI 15 416 L.DLE & -- DLE 16 417 L.DC1 & -- DC1 17 418 L.DC2 & -- DC2 18 419 L.DC3 & -- DC3 19 420 L.DC4 & -- DC4 20 421 L.NAK & -- NAK 21 422 L.SYN & -- SYN 22 423 L.ETB & -- ETB 23 424 L.CAN & -- CAN 24 425 L.EM & -- EM 25 426 L.SUB & -- SUB 26 427 L.ESC & -- ESC 27 428 L.FS & -- FS 28 429 L.GS & -- GS 29 430 L.RS & -- RS 30 431 L.US & -- US 31 432 L.Space & -- ' ' 32 433 L.Exclamation & -- '!' 33 434 L.Quotation & -- '"' 34 435 L.Number_Sign & -- '#' 35 436 L.Dollar_Sign & -- '$' 36 437 L.Percent_Sign & -- '%' 37 438 L.Ampersand & -- '&' 38 439 L.Apostrophe & -- ''' 39 440 L.Left_Parenthesis & -- '(' 40 441 L.Right_Parenthesis & -- ')' 41 442 L.Asterisk & -- '*' 42 443 L.Plus_Sign & -- '+' 43 444 L.Comma & -- ',' 44 445 L.Hyphen & -- '-' 45 446 L.Full_Stop & -- '.' 46 447 L.Solidus & -- '/' 47 448 '0' & -- '0' 48 449 '1' & -- '1' 49 450 '2' & -- '2' 50 451 '3' & -- '3' 51 452 '4' & -- '4' 52 453 '5' & -- '5' 53 454 '6' & -- '6' 54 455 '7' & -- '7' 55 456 '8' & -- '8' 56 457 '9' & -- '9' 57 458 L.Colon & -- ':' 58 459 L.Semicolon & -- ';' 59 460 L.Less_Than_Sign & -- '<' 60 461 L.Equals_Sign & -- '=' 61 462 L.Greater_Than_Sign & -- '>' 62 463 L.Question & -- '?' 63 464 L.Commercial_At & -- '@' 64 465 'A' & -- 'A' 65 466 'B' & -- 'B' 66 467 'C' & -- 'C' 67 468 'D' & -- 'D' 68 469 'E' & -- 'E' 69 470 'F' & -- 'F' 70 471 'G' & -- 'G' 71 472 'H' & -- 'H' 72 473 'I' & -- 'I' 73 474 'J' & -- 'J' 74 475 'K' & -- 'K' 75 476 'L' & -- 'L' 76 477 'M' & -- 'M' 77 478 'N' & -- 'N' 78 479 'O' & -- 'O' 79 480 'P' & -- 'P' 80 481 'Q' & -- 'Q' 81 482 'R' & -- 'R' 82 483 'S' & -- 'S' 83 484 'T' & -- 'T' 84 485 'U' & -- 'U' 85 486 'V' & -- 'V' 86 487 'W' & -- 'W' 87 488 'X' & -- 'X' 88 489 'Y' & -- 'Y' 89 490 'Z' & -- 'Z' 90 491 L.Left_Square_Bracket & -- '[' 91 492 L.Reverse_Solidus & -- '\' 92 493 L.Right_Square_Bracket & -- ']' 93 494 L.Circumflex & -- '^' 94 495 L.Low_Line & -- '_' 95 496 L.Grave & -- '`' 96 497 'A' & -- 'a' 97 498 'B' & -- 'b' 98 499 'C' & -- 'c' 99 500 'D' & -- 'd' 100 501 'E' & -- 'e' 101 502 'F' & -- 'f' 102 503 'G' & -- 'g' 103 504 'H' & -- 'h' 104 505 'I' & -- 'i' 105 506 'J' & -- 'j' 106 507 'K' & -- 'k' 107 508 'L' & -- 'l' 108 509 'M' & -- 'm' 109 510 'N' & -- 'n' 110 511 'O' & -- 'o' 111 512 'P' & -- 'p' 112 513 'Q' & -- 'q' 113 514 'R' & -- 'r' 114 515 'S' & -- 's' 115 516 'T' & -- 't' 116 517 'U' & -- 'u' 117 518 'V' & -- 'v' 118 519 'W' & -- 'w' 119 520 'X' & -- 'x' 120 521 'Y' & -- 'y' 121 522 'Z' & -- 'z' 122 523 L.Left_Curly_Bracket & -- '{' 123 524 L.Vertical_Line & -- '|' 124 525 L.Right_Curly_Bracket & -- '}' 125 526 L.Tilde & -- '~' 126 527 L.DEL & -- DEL 127 528 L.Reserved_128 & -- Reserved_128 128 529 L.Reserved_129 & -- Reserved_129 129 530 L.BPH & -- BPH 130 531 L.NBH & -- NBH 131 532 L.Reserved_132 & -- Reserved_132 132 533 L.NEL & -- NEL 133 534 L.SSA & -- SSA 134 535 L.ESA & -- ESA 135 536 L.HTS & -- HTS 136 537 L.HTJ & -- HTJ 137 538 L.VTS & -- VTS 138 539 L.PLD & -- PLD 139 540 L.PLU & -- PLU 140 541 L.RI & -- RI 141 542 L.SS2 & -- SS2 142 543 L.SS3 & -- SS3 143 544 L.DCS & -- DCS 144 545 L.PU1 & -- PU1 145 546 L.PU2 & -- PU2 146 547 L.STS & -- STS 147 548 L.CCH & -- CCH 148 549 L.MW & -- MW 149 550 L.SPA & -- SPA 150 551 L.EPA & -- EPA 151 552 L.SOS & -- SOS 152 553 L.Reserved_153 & -- Reserved_153 153 554 L.SCI & -- SCI 154 555 L.CSI & -- CSI 155 556 L.ST & -- ST 156 557 L.OSC & -- OSC 157 558 L.PM & -- PM 158 559 L.APC & -- APC 159 560 L.No_Break_Space & -- No_Break_Space 160 561 L.Inverted_Exclamation & -- Inverted_Exclamation 161 562 L.Cent_Sign & -- Cent_Sign 162 563 L.Pound_Sign & -- Pound_Sign 163 564 L.Currency_Sign & -- Currency_Sign 164 565 L.Yen_Sign & -- Yen_Sign 165 566 L.Broken_Bar & -- Broken_Bar 166 567 L.Section_Sign & -- Section_Sign 167 568 L.Diaeresis & -- Diaeresis 168 569 L.Copyright_Sign & -- Copyright_Sign 169 570 L.Feminine_Ordinal_Indicator & -- Feminine_Ordinal_Indicator 170 571 L.Left_Angle_Quotation & -- Left_Angle_Quotation 171 572 L.Not_Sign & -- Not_Sign 172 573 L.Soft_Hyphen & -- Soft_Hyphen 173 574 L.Registered_Trade_Mark_Sign & -- Registered_Trade_Mark_Sign 174 575 L.Macron & -- Macron 175 576 L.Degree_Sign & -- Degree_Sign 176 577 L.Plus_Minus_Sign & -- Plus_Minus_Sign 177 578 L.Superscript_Two & -- Superscript_Two 178 579 L.Superscript_Three & -- Superscript_Three 179 580 L.Acute & -- Acute 180 581 L.Micro_Sign & -- Micro_Sign 181 582 L.Pilcrow_Sign & -- Pilcrow_Sign 182 583 L.Middle_Dot & -- Middle_Dot 183 584 L.Cedilla & -- Cedilla 184 585 L.Superscript_One & -- Superscript_One 185 586 L.Masculine_Ordinal_Indicator & -- Masculine_Ordinal_Indicator 186 587 L.Right_Angle_Quotation & -- Right_Angle_Quotation 187 588 L.Fraction_One_Quarter & -- Fraction_One_Quarter 188 589 L.Fraction_One_Half & -- Fraction_One_Half 189 590 L.Fraction_Three_Quarters & -- Fraction_Three_Quarters 190 591 L.Inverted_Question & -- Inverted_Question 191 592 L.UC_A_Grave & -- UC_A_Grave 192 593 L.UC_A_Acute & -- UC_A_Acute 193 594 L.UC_A_Circumflex & -- UC_A_Circumflex 194 595 L.UC_A_Tilde & -- UC_A_Tilde 195 596 L.UC_A_Diaeresis & -- UC_A_Diaeresis 196 597 L.UC_A_Ring & -- UC_A_Ring 197 598 L.UC_AE_Diphthong & -- UC_AE_Diphthong 198 599 L.UC_C_Cedilla & -- UC_C_Cedilla 199 600 L.UC_E_Grave & -- UC_E_Grave 200 601 L.UC_E_Acute & -- UC_E_Acute 201 602 L.UC_E_Circumflex & -- UC_E_Circumflex 202 603 L.UC_E_Diaeresis & -- UC_E_Diaeresis 203 604 L.UC_I_Grave & -- UC_I_Grave 204 605 L.UC_I_Acute & -- UC_I_Acute 205 606 L.UC_I_Circumflex & -- UC_I_Circumflex 206 607 L.UC_I_Diaeresis & -- UC_I_Diaeresis 207 608 L.UC_Icelandic_Eth & -- UC_Icelandic_Eth 208 609 L.UC_N_Tilde & -- UC_N_Tilde 209 610 L.UC_O_Grave & -- UC_O_Grave 210 611 L.UC_O_Acute & -- UC_O_Acute 211 612 L.UC_O_Circumflex & -- UC_O_Circumflex 212 613 L.UC_O_Tilde & -- UC_O_Tilde 213 614 L.UC_O_Diaeresis & -- UC_O_Diaeresis 214 615 L.Multiplication_Sign & -- Multiplication_Sign 215 616 L.UC_O_Oblique_Stroke & -- UC_O_Oblique_Stroke 216 617 L.UC_U_Grave & -- UC_U_Grave 217 618 L.UC_U_Acute & -- UC_U_Acute 218 619 L.UC_U_Circumflex & -- UC_U_Circumflex 219 620 L.UC_U_Diaeresis & -- UC_U_Diaeresis 220 621 L.UC_Y_Acute & -- UC_Y_Acute 221 622 L.UC_Icelandic_Thorn & -- UC_Icelandic_Thorn 222 623 L.LC_German_Sharp_S & -- LC_German_Sharp_S 223 624 L.UC_A_Grave & -- LC_A_Grave 224 625 L.UC_A_Acute & -- LC_A_Acute 225 626 L.UC_A_Circumflex & -- LC_A_Circumflex 226 627 L.UC_A_Tilde & -- LC_A_Tilde 227 628 L.UC_A_Diaeresis & -- LC_A_Diaeresis 228 629 L.UC_A_Ring & -- LC_A_Ring 229 630 L.UC_AE_Diphthong & -- LC_AE_Diphthong 230 631 L.UC_C_Cedilla & -- LC_C_Cedilla 231 632 L.UC_E_Grave & -- LC_E_Grave 232 633 L.UC_E_Acute & -- LC_E_Acute 233 634 L.UC_E_Circumflex & -- LC_E_Circumflex 234 635 L.UC_E_Diaeresis & -- LC_E_Diaeresis 235 636 L.UC_I_Grave & -- LC_I_Grave 236 637 L.UC_I_Acute & -- LC_I_Acute 237 638 L.UC_I_Circumflex & -- LC_I_Circumflex 238 639 L.UC_I_Diaeresis & -- LC_I_Diaeresis 239 640 L.UC_Icelandic_Eth & -- LC_Icelandic_Eth 240 641 L.UC_N_Tilde & -- LC_N_Tilde 241 642 L.UC_O_Grave & -- LC_O_Grave 242 643 L.UC_O_Acute & -- LC_O_Acute 243 644 L.UC_O_Circumflex & -- LC_O_Circumflex 244 645 L.UC_O_Tilde & -- LC_O_Tilde 245 646 L.UC_O_Diaeresis & -- LC_O_Diaeresis 246 647 L.Division_Sign & -- Division_Sign 247 648 L.UC_O_Oblique_Stroke & -- LC_O_Oblique_Stroke 248 649 L.UC_U_Grave & -- LC_U_Grave 249 650 L.UC_U_Acute & -- LC_U_Acute 250 651 L.UC_U_Circumflex & -- LC_U_Circumflex 251 652 L.UC_U_Diaeresis & -- LC_U_Diaeresis 252 653 L.UC_Y_Acute & -- LC_Y_Acute 253 654 L.UC_Icelandic_Thorn & -- LC_Icelandic_Thorn 254 655 L.LC_Y_Diaeresis); -- LC_Y_Diaeresis 255 656 657 Basic_Map : constant Character_Mapping := 658 (L.NUL & -- NUL 0 659 L.SOH & -- SOH 1 660 L.STX & -- STX 2 661 L.ETX & -- ETX 3 662 L.EOT & -- EOT 4 663 L.ENQ & -- ENQ 5 664 L.ACK & -- ACK 6 665 L.BEL & -- BEL 7 666 L.BS & -- BS 8 667 L.HT & -- HT 9 668 L.LF & -- LF 10 669 L.VT & -- VT 11 670 L.FF & -- FF 12 671 L.CR & -- CR 13 672 L.SO & -- SO 14 673 L.SI & -- SI 15 674 L.DLE & -- DLE 16 675 L.DC1 & -- DC1 17 676 L.DC2 & -- DC2 18 677 L.DC3 & -- DC3 19 678 L.DC4 & -- DC4 20 679 L.NAK & -- NAK 21 680 L.SYN & -- SYN 22 681 L.ETB & -- ETB 23 682 L.CAN & -- CAN 24 683 L.EM & -- EM 25 684 L.SUB & -- SUB 26 685 L.ESC & -- ESC 27 686 L.FS & -- FS 28 687 L.GS & -- GS 29 688 L.RS & -- RS 30 689 L.US & -- US 31 690 L.Space & -- ' ' 32 691 L.Exclamation & -- '!' 33 692 L.Quotation & -- '"' 34 693 L.Number_Sign & -- '#' 35 694 L.Dollar_Sign & -- '$' 36 695 L.Percent_Sign & -- '%' 37 696 L.Ampersand & -- '&' 38 697 L.Apostrophe & -- ''' 39 698 L.Left_Parenthesis & -- '(' 40 699 L.Right_Parenthesis & -- ')' 41 700 L.Asterisk & -- '*' 42 701 L.Plus_Sign & -- '+' 43 702 L.Comma & -- ',' 44 703 L.Hyphen & -- '-' 45 704 L.Full_Stop & -- '.' 46 705 L.Solidus & -- '/' 47 706 '0' & -- '0' 48 707 '1' & -- '1' 49 708 '2' & -- '2' 50 709 '3' & -- '3' 51 710 '4' & -- '4' 52 711 '5' & -- '5' 53 712 '6' & -- '6' 54 713 '7' & -- '7' 55 714 '8' & -- '8' 56 715 '9' & -- '9' 57 716 L.Colon & -- ':' 58 717 L.Semicolon & -- ';' 59 718 L.Less_Than_Sign & -- '<' 60 719 L.Equals_Sign & -- '=' 61 720 L.Greater_Than_Sign & -- '>' 62 721 L.Question & -- '?' 63 722 L.Commercial_At & -- '@' 64 723 'A' & -- 'A' 65 724 'B' & -- 'B' 66 725 'C' & -- 'C' 67 726 'D' & -- 'D' 68 727 'E' & -- 'E' 69 728 'F' & -- 'F' 70 729 'G' & -- 'G' 71 730 'H' & -- 'H' 72 731 'I' & -- 'I' 73 732 'J' & -- 'J' 74 733 'K' & -- 'K' 75 734 'L' & -- 'L' 76 735 'M' & -- 'M' 77 736 'N' & -- 'N' 78 737 'O' & -- 'O' 79 738 'P' & -- 'P' 80 739 'Q' & -- 'Q' 81 740 'R' & -- 'R' 82 741 'S' & -- 'S' 83 742 'T' & -- 'T' 84 743 'U' & -- 'U' 85 744 'V' & -- 'V' 86 745 'W' & -- 'W' 87 746 'X' & -- 'X' 88 747 'Y' & -- 'Y' 89 748 'Z' & -- 'Z' 90 749 L.Left_Square_Bracket & -- '[' 91 750 L.Reverse_Solidus & -- '\' 92 751 L.Right_Square_Bracket & -- ']' 93 752 L.Circumflex & -- '^' 94 753 L.Low_Line & -- '_' 95 754 L.Grave & -- '`' 96 755 L.LC_A & -- 'a' 97 756 L.LC_B & -- 'b' 98 757 L.LC_C & -- 'c' 99 758 L.LC_D & -- 'd' 100 759 L.LC_E & -- 'e' 101 760 L.LC_F & -- 'f' 102 761 L.LC_G & -- 'g' 103 762 L.LC_H & -- 'h' 104 763 L.LC_I & -- 'i' 105 764 L.LC_J & -- 'j' 106 765 L.LC_K & -- 'k' 107 766 L.LC_L & -- 'l' 108 767 L.LC_M & -- 'm' 109 768 L.LC_N & -- 'n' 110 769 L.LC_O & -- 'o' 111 770 L.LC_P & -- 'p' 112 771 L.LC_Q & -- 'q' 113 772 L.LC_R & -- 'r' 114 773 L.LC_S & -- 's' 115 774 L.LC_T & -- 't' 116 775 L.LC_U & -- 'u' 117 776 L.LC_V & -- 'v' 118 777 L.LC_W & -- 'w' 119 778 L.LC_X & -- 'x' 120 779 L.LC_Y & -- 'y' 121 780 L.LC_Z & -- 'z' 122 781 L.Left_Curly_Bracket & -- '{' 123 782 L.Vertical_Line & -- '|' 124 783 L.Right_Curly_Bracket & -- '}' 125 784 L.Tilde & -- '~' 126 785 L.DEL & -- DEL 127 786 L.Reserved_128 & -- Reserved_128 128 787 L.Reserved_129 & -- Reserved_129 129 788 L.BPH & -- BPH 130 789 L.NBH & -- NBH 131 790 L.Reserved_132 & -- Reserved_132 132 791 L.NEL & -- NEL 133 792 L.SSA & -- SSA 134 793 L.ESA & -- ESA 135 794 L.HTS & -- HTS 136 795 L.HTJ & -- HTJ 137 796 L.VTS & -- VTS 138 797 L.PLD & -- PLD 139 798 L.PLU & -- PLU 140 799 L.RI & -- RI 141 800 L.SS2 & -- SS2 142 801 L.SS3 & -- SS3 143 802 L.DCS & -- DCS 144 803 L.PU1 & -- PU1 145 804 L.PU2 & -- PU2 146 805 L.STS & -- STS 147 806 L.CCH & -- CCH 148 807 L.MW & -- MW 149 808 L.SPA & -- SPA 150 809 L.EPA & -- EPA 151 810 L.SOS & -- SOS 152 811 L.Reserved_153 & -- Reserved_153 153 812 L.SCI & -- SCI 154 813 L.CSI & -- CSI 155 814 L.ST & -- ST 156 815 L.OSC & -- OSC 157 816 L.PM & -- PM 158 817 L.APC & -- APC 159 818 L.No_Break_Space & -- No_Break_Space 160 819 L.Inverted_Exclamation & -- Inverted_Exclamation 161 820 L.Cent_Sign & -- Cent_Sign 162 821 L.Pound_Sign & -- Pound_Sign 163 822 L.Currency_Sign & -- Currency_Sign 164 823 L.Yen_Sign & -- Yen_Sign 165 824 L.Broken_Bar & -- Broken_Bar 166 825 L.Section_Sign & -- Section_Sign 167 826 L.Diaeresis & -- Diaeresis 168 827 L.Copyright_Sign & -- Copyright_Sign 169 828 L.Feminine_Ordinal_Indicator & -- Feminine_Ordinal_Indicator 170 829 L.Left_Angle_Quotation & -- Left_Angle_Quotation 171 830 L.Not_Sign & -- Not_Sign 172 831 L.Soft_Hyphen & -- Soft_Hyphen 173 832 L.Registered_Trade_Mark_Sign & -- Registered_Trade_Mark_Sign 174 833 L.Macron & -- Macron 175 834 L.Degree_Sign & -- Degree_Sign 176 835 L.Plus_Minus_Sign & -- Plus_Minus_Sign 177 836 L.Superscript_Two & -- Superscript_Two 178 837 L.Superscript_Three & -- Superscript_Three 179 838 L.Acute & -- Acute 180 839 L.Micro_Sign & -- Micro_Sign 181 840 L.Pilcrow_Sign & -- Pilcrow_Sign 182 841 L.Middle_Dot & -- Middle_Dot 183 842 L.Cedilla & -- Cedilla 184 843 L.Superscript_One & -- Superscript_One 185 844 L.Masculine_Ordinal_Indicator & -- Masculine_Ordinal_Indicator 186 845 L.Right_Angle_Quotation & -- Right_Angle_Quotation 187 846 L.Fraction_One_Quarter & -- Fraction_One_Quarter 188 847 L.Fraction_One_Half & -- Fraction_One_Half 189 848 L.Fraction_Three_Quarters & -- Fraction_Three_Quarters 190 849 L.Inverted_Question & -- Inverted_Question 191 850 'A' & -- UC_A_Grave 192 851 'A' & -- UC_A_Acute 193 852 'A' & -- UC_A_Circumflex 194 853 'A' & -- UC_A_Tilde 195 854 'A' & -- UC_A_Diaeresis 196 855 'A' & -- UC_A_Ring 197 856 L.UC_AE_Diphthong & -- UC_AE_Diphthong 198 857 'C' & -- UC_C_Cedilla 199 858 'E' & -- UC_E_Grave 200 859 'E' & -- UC_E_Acute 201 860 'E' & -- UC_E_Circumflex 202 861 'E' & -- UC_E_Diaeresis 203 862 'I' & -- UC_I_Grave 204 863 'I' & -- UC_I_Acute 205 864 'I' & -- UC_I_Circumflex 206 865 'I' & -- UC_I_Diaeresis 207 866 L.UC_Icelandic_Eth & -- UC_Icelandic_Eth 208 867 'N' & -- UC_N_Tilde 209 868 'O' & -- UC_O_Grave 210 869 'O' & -- UC_O_Acute 211 870 'O' & -- UC_O_Circumflex 212 871 'O' & -- UC_O_Tilde 213 872 'O' & -- UC_O_Diaeresis 214 873 L.Multiplication_Sign & -- Multiplication_Sign 215 874 'O' & -- UC_O_Oblique_Stroke 216 875 'U' & -- UC_U_Grave 217 876 'U' & -- UC_U_Acute 218 877 'U' & -- UC_U_Circumflex 219 878 'U' & -- UC_U_Diaeresis 220 879 'Y' & -- UC_Y_Acute 221 880 L.UC_Icelandic_Thorn & -- UC_Icelandic_Thorn 222 881 L.LC_German_Sharp_S & -- LC_German_Sharp_S 223 882 L.LC_A & -- LC_A_Grave 224 883 L.LC_A & -- LC_A_Acute 225 884 L.LC_A & -- LC_A_Circumflex 226 885 L.LC_A & -- LC_A_Tilde 227 886 L.LC_A & -- LC_A_Diaeresis 228 887 L.LC_A & -- LC_A_Ring 229 888 L.LC_AE_Diphthong & -- LC_AE_Diphthong 230 889 L.LC_C & -- LC_C_Cedilla 231 890 L.LC_E & -- LC_E_Grave 232 891 L.LC_E & -- LC_E_Acute 233 892 L.LC_E & -- LC_E_Circumflex 234 893 L.LC_E & -- LC_E_Diaeresis 235 894 L.LC_I & -- LC_I_Grave 236 895 L.LC_I & -- LC_I_Acute 237 896 L.LC_I & -- LC_I_Circumflex 238 897 L.LC_I & -- LC_I_Diaeresis 239 898 L.LC_Icelandic_Eth & -- LC_Icelandic_Eth 240 899 L.LC_N & -- LC_N_Tilde 241 900 L.LC_O & -- LC_O_Grave 242 901 L.LC_O & -- LC_O_Acute 243 902 L.LC_O & -- LC_O_Circumflex 244 903 L.LC_O & -- LC_O_Tilde 245 904 L.LC_O & -- LC_O_Diaeresis 246 905 L.Division_Sign & -- Division_Sign 247 906 L.LC_O & -- LC_O_Oblique_Stroke 248 907 L.LC_U & -- LC_U_Grave 249 908 L.LC_U & -- LC_U_Acute 250 909 L.LC_U & -- LC_U_Circumflex 251 910 L.LC_U & -- LC_U_Diaeresis 252 911 L.LC_Y & -- LC_Y_Acute 253 912 L.LC_Icelandic_Thorn & -- LC_Icelandic_Thorn 254 913 L.LC_Y); -- LC_Y_Diaeresis 255 914 915end Ada.Strings.Maps.Constants; 916