1 // Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html 2 // generated by tblgen. You weren't going to edit it by hand, were you? 3 4 static const char cp1047_8859_1[256] = { 5 (char)0x00, /* 00 */ 6 (char)0x01, /* 01 */ 7 (char)0x02, /* 02 */ 8 (char)0x03, /* 03 */ 9 (char)0x9C, /* 04 */ 10 (char)0x09, /* 05 */ 11 (char)0x86, /* 06 */ 12 (char)0x7F, /* 07 */ 13 (char)0x97, /* 08 */ 14 (char)0x8D, /* 09 */ 15 (char)0x8E, /* 0A */ 16 (char)0x0B, /* 0B */ 17 (char)0x0C, /* 0C */ 18 (char)0x0D, /* 0D */ 19 (char)0x0E, /* 0E */ 20 (char)0x0F, /* 0F */ 21 (char)0x10, /* 10 */ 22 (char)0x11, /* 11 */ 23 (char)0x12, /* 12 */ 24 (char)0x13, /* 13 */ 25 (char)0x9D, /* 14 */ 26 (char)0x85, /* 15 */ 27 (char)0x08, /* 16 */ 28 (char)0x87, /* 17 */ 29 (char)0x18, /* 18 */ 30 (char)0x19, /* 19 */ 31 (char)0x92, /* 1A */ 32 (char)0x8F, /* 1B */ 33 (char)0x1C, /* 1C */ 34 (char)0x1D, /* 1D */ 35 (char)0x1E, /* 1E */ 36 (char)0x1F, /* 1F */ 37 (char)0x80, /* 20 */ 38 (char)0x81, /* 21 */ 39 (char)0x82, /* 22 */ 40 (char)0x83, /* 23 */ 41 (char)0x84, /* 24 */ 42 (char)0x0A, /* 25 */ 43 (char)0x17, /* 26 */ 44 (char)0x1B, /* 27 */ 45 (char)0x88, /* 28 */ 46 (char)0x89, /* 29 */ 47 (char)0x8A, /* 2A */ 48 (char)0x8B, /* 2B */ 49 (char)0x8C, /* 2C */ 50 (char)0x05, /* 2D */ 51 (char)0x06, /* 2E */ 52 (char)0x07, /* 2F */ 53 (char)0x90, /* 30 */ 54 (char)0x91, /* 31 */ 55 (char)0x16, /* 32 */ 56 (char)0x93, /* 33 */ 57 (char)0x94, /* 34 */ 58 (char)0x95, /* 35 */ 59 (char)0x96, /* 36 */ 60 (char)0x04, /* 37 */ 61 (char)0x98, /* 38 */ 62 (char)0x99, /* 39 */ 63 (char)0x9A, /* 3A */ 64 (char)0x9B, /* 3B */ 65 (char)0x14, /* 3C */ 66 (char)0x15, /* 3D */ 67 (char)0x9E, /* 3E */ 68 (char)0x1A, /* 3F */ 69 (char)0x20, /* 40 */ 70 (char)0xA0, /* 41 */ 71 (char)0xE2, /* 42 */ 72 (char)0xE4, /* 43 */ 73 (char)0xE0, /* 44 */ 74 (char)0xE1, /* 45 */ 75 (char)0xE3, /* 46 */ 76 (char)0xE5, /* 47 */ 77 (char)0xE7, /* 48 */ 78 (char)0xF1, /* 49 */ 79 (char)0xA2, /* 4A */ 80 (char)0x2E, /* 4B */ 81 (char)0x3C, /* 4C */ 82 (char)0x28, /* 4D */ 83 (char)0x2B, /* 4E */ 84 (char)0x7C, /* 4F */ 85 (char)0x26, /* 50 */ 86 (char)0xE9, /* 51 */ 87 (char)0xEA, /* 52 */ 88 (char)0xEB, /* 53 */ 89 (char)0xE8, /* 54 */ 90 (char)0xED, /* 55 */ 91 (char)0xEE, /* 56 */ 92 (char)0xEF, /* 57 */ 93 (char)0xEC, /* 58 */ 94 (char)0xDF, /* 59 */ 95 (char)0x21, /* 5A */ 96 (char)0x24, /* 5B */ 97 (char)0x2A, /* 5C */ 98 (char)0x29, /* 5D */ 99 (char)0x3B, /* 5E */ 100 (char)0x5E, /* 5F */ 101 (char)0x2D, /* 60 */ 102 (char)0x2F, /* 61 */ 103 (char)0xC2, /* 62 */ 104 (char)0xC4, /* 63 */ 105 (char)0xC0, /* 64 */ 106 (char)0xC1, /* 65 */ 107 (char)0xC3, /* 66 */ 108 (char)0xC5, /* 67 */ 109 (char)0xC7, /* 68 */ 110 (char)0xD1, /* 69 */ 111 (char)0xA6, /* 6A */ 112 (char)0x2C, /* 6B */ 113 (char)0x25, /* 6C */ 114 (char)0x5F, /* 6D */ 115 (char)0x3E, /* 6E */ 116 (char)0x3F, /* 6F */ 117 (char)0xF8, /* 70 */ 118 (char)0xC9, /* 71 */ 119 (char)0xCA, /* 72 */ 120 (char)0xCB, /* 73 */ 121 (char)0xC8, /* 74 */ 122 (char)0xCD, /* 75 */ 123 (char)0xCE, /* 76 */ 124 (char)0xCF, /* 77 */ 125 (char)0xCC, /* 78 */ 126 (char)0x60, /* 79 */ 127 (char)0x3A, /* 7A */ 128 (char)0x23, /* 7B */ 129 (char)0x40, /* 7C */ 130 (char)0x27, /* 7D */ 131 (char)0x3D, /* 7E */ 132 (char)0x22, /* 7F */ 133 (char)0xD8, /* 80 */ 134 (char)0x61, /* 81 */ 135 (char)0x62, /* 82 */ 136 (char)0x63, /* 83 */ 137 (char)0x64, /* 84 */ 138 (char)0x65, /* 85 */ 139 (char)0x66, /* 86 */ 140 (char)0x67, /* 87 */ 141 (char)0x68, /* 88 */ 142 (char)0x69, /* 89 */ 143 (char)0xAB, /* 8A */ 144 (char)0xBB, /* 8B */ 145 (char)0xF0, /* 8C */ 146 (char)0xFD, /* 8D */ 147 (char)0xFE, /* 8E */ 148 (char)0xB1, /* 8F */ 149 (char)0xB0, /* 90 */ 150 (char)0x6A, /* 91 */ 151 (char)0x6B, /* 92 */ 152 (char)0x6C, /* 93 */ 153 (char)0x6D, /* 94 */ 154 (char)0x6E, /* 95 */ 155 (char)0x6F, /* 96 */ 156 (char)0x70, /* 97 */ 157 (char)0x71, /* 98 */ 158 (char)0x72, /* 99 */ 159 (char)0xAA, /* 9A */ 160 (char)0xBA, /* 9B */ 161 (char)0xE6, /* 9C */ 162 (char)0xB8, /* 9D */ 163 (char)0xC6, /* 9E */ 164 (char)0xA4, /* 9F */ 165 (char)0xB5, /* A0 */ 166 (char)0x7E, /* A1 */ 167 (char)0x73, /* A2 */ 168 (char)0x74, /* A3 */ 169 (char)0x75, /* A4 */ 170 (char)0x76, /* A5 */ 171 (char)0x77, /* A6 */ 172 (char)0x78, /* A7 */ 173 (char)0x79, /* A8 */ 174 (char)0x7A, /* A9 */ 175 (char)0xA1, /* AA */ 176 (char)0xBF, /* AB */ 177 (char)0xD0, /* AC */ 178 (char)0x5B, /* AD */ 179 (char)0xDE, /* AE */ 180 (char)0xAE, /* AF */ 181 (char)0xAC, /* B0 */ 182 (char)0xA3, /* B1 */ 183 (char)0xA5, /* B2 */ 184 (char)0xB7, /* B3 */ 185 (char)0xA9, /* B4 */ 186 (char)0xA7, /* B5 */ 187 (char)0xB6, /* B6 */ 188 (char)0xBC, /* B7 */ 189 (char)0xBD, /* B8 */ 190 (char)0xBE, /* B9 */ 191 (char)0xDD, /* BA */ 192 (char)0xA8, /* BB */ 193 (char)0xAF, /* BC */ 194 (char)0x5D, /* BD */ 195 (char)0xB4, /* BE */ 196 (char)0xD7, /* BF */ 197 (char)0x7B, /* C0 */ 198 (char)0x41, /* C1 */ 199 (char)0x42, /* C2 */ 200 (char)0x43, /* C3 */ 201 (char)0x44, /* C4 */ 202 (char)0x45, /* C5 */ 203 (char)0x46, /* C6 */ 204 (char)0x47, /* C7 */ 205 (char)0x48, /* C8 */ 206 (char)0x49, /* C9 */ 207 (char)0xAD, /* CA */ 208 (char)0xF4, /* CB */ 209 (char)0xF6, /* CC */ 210 (char)0xF2, /* CD */ 211 (char)0xF3, /* CE */ 212 (char)0xF5, /* CF */ 213 (char)0x7D, /* D0 */ 214 (char)0x4A, /* D1 */ 215 (char)0x4B, /* D2 */ 216 (char)0x4C, /* D3 */ 217 (char)0x4D, /* D4 */ 218 (char)0x4E, /* D5 */ 219 (char)0x4F, /* D6 */ 220 (char)0x50, /* D7 */ 221 (char)0x51, /* D8 */ 222 (char)0x52, /* D9 */ 223 (char)0xB9, /* DA */ 224 (char)0xFB, /* DB */ 225 (char)0xFC, /* DC */ 226 (char)0xF9, /* DD */ 227 (char)0xFA, /* DE */ 228 (char)0xFF, /* DF */ 229 (char)0x5C, /* E0 */ 230 (char)0xF7, /* E1 */ 231 (char)0x53, /* E2 */ 232 (char)0x54, /* E3 */ 233 (char)0x55, /* E4 */ 234 (char)0x56, /* E5 */ 235 (char)0x57, /* E6 */ 236 (char)0x58, /* E7 */ 237 (char)0x59, /* E8 */ 238 (char)0x5A, /* E9 */ 239 (char)0xB2, /* EA */ 240 (char)0xD4, /* EB */ 241 (char)0xD6, /* EC */ 242 (char)0xD2, /* ED */ 243 (char)0xD3, /* EE */ 244 (char)0xD5, /* EF */ 245 (char)0x30, /* F0 */ 246 (char)0x31, /* F1 */ 247 (char)0x32, /* F2 */ 248 (char)0x33, /* F3 */ 249 (char)0x34, /* F4 */ 250 (char)0x35, /* F5 */ 251 (char)0x36, /* F6 */ 252 (char)0x37, /* F7 */ 253 (char)0x38, /* F8 */ 254 (char)0x39, /* F9 */ 255 (char)0xB3, /* FA */ 256 (char)0xDB, /* FB */ 257 (char)0xDC, /* FC */ 258 (char)0xD9, /* FD */ 259 (char)0xDA, /* FE */ 260 (char)0x9F, /* FF */ 261 }; 262 263 static const bool oldIllegal[256] = { 264 false, /* U+0000 */ 265 false, /* U+0001 */ 266 false, /* U+0002 */ 267 false, /* U+0003 */ 268 false, /* U+0004 */ 269 false, /* U+0005 */ 270 false, /* U+0006 */ 271 false, /* U+0007 */ 272 false, /* U+0008 */ 273 false, /* U+0009 */ 274 false, /* U+000A */ 275 false, /* U+000B */ 276 false, /* U+000C */ 277 false, /* U+000D */ 278 false, /* U+000E */ 279 false, /* U+000F */ 280 false, /* U+0010 */ 281 false, /* U+0011 */ 282 false, /* U+0012 */ 283 false, /* U+0013 */ 284 false, /* U+0014 */ 285 false, /* U+0015 */ 286 false, /* U+0016 */ 287 false, /* U+0017 */ 288 false, /* U+0018 */ 289 false, /* U+0019 */ 290 false, /* U+001A */ 291 false, /* U+001B */ 292 false, /* U+001C */ 293 false, /* U+001D */ 294 false, /* U+001E */ 295 false, /* U+001F */ 296 true, /* U+0020 */ 297 true, /* U+0021 */ 298 true, /* U+0022 */ 299 true, /* U+0023 */ 300 false, /* U+0024 */ 301 true, /* U+0025 */ 302 true, /* U+0026 */ 303 true, /* U+0027 */ 304 true, /* U+0028 */ 305 true, /* U+0029 */ 306 true, /* U+002A */ 307 true, /* U+002B */ 308 true, /* U+002C */ 309 true, /* U+002D */ 310 true, /* U+002E */ 311 true, /* U+002F */ 312 true, /* U+0030 */ 313 true, /* U+0031 */ 314 true, /* U+0032 */ 315 true, /* U+0033 */ 316 true, /* U+0034 */ 317 true, /* U+0035 */ 318 true, /* U+0036 */ 319 true, /* U+0037 */ 320 true, /* U+0038 */ 321 true, /* U+0039 */ 322 true, /* U+003A */ 323 true, /* U+003B */ 324 true, /* U+003C */ 325 true, /* U+003D */ 326 true, /* U+003E */ 327 true, /* U+003F */ 328 false, /* U+0040 */ 329 true, /* U+0041 */ 330 true, /* U+0042 */ 331 true, /* U+0043 */ 332 true, /* U+0044 */ 333 true, /* U+0045 */ 334 true, /* U+0046 */ 335 true, /* U+0047 */ 336 true, /* U+0048 */ 337 true, /* U+0049 */ 338 true, /* U+004A */ 339 true, /* U+004B */ 340 true, /* U+004C */ 341 true, /* U+004D */ 342 true, /* U+004E */ 343 true, /* U+004F */ 344 true, /* U+0050 */ 345 true, /* U+0051 */ 346 true, /* U+0052 */ 347 true, /* U+0053 */ 348 true, /* U+0054 */ 349 true, /* U+0055 */ 350 true, /* U+0056 */ 351 true, /* U+0057 */ 352 true, /* U+0058 */ 353 true, /* U+0059 */ 354 true, /* U+005A */ 355 true, /* U+005B */ 356 false, /* U+005C */ 357 true, /* U+005D */ 358 true, /* U+005E */ 359 true, /* U+005F */ 360 false, /* U+0060 */ 361 true, /* U+0061 */ 362 true, /* U+0062 */ 363 true, /* U+0063 */ 364 true, /* U+0064 */ 365 true, /* U+0065 */ 366 true, /* U+0066 */ 367 true, /* U+0067 */ 368 true, /* U+0068 */ 369 true, /* U+0069 */ 370 true, /* U+006A */ 371 true, /* U+006B */ 372 true, /* U+006C */ 373 true, /* U+006D */ 374 true, /* U+006E */ 375 true, /* U+006F */ 376 true, /* U+0070 */ 377 true, /* U+0071 */ 378 true, /* U+0072 */ 379 true, /* U+0073 */ 380 true, /* U+0074 */ 381 true, /* U+0075 */ 382 true, /* U+0076 */ 383 true, /* U+0077 */ 384 true, /* U+0078 */ 385 true, /* U+0079 */ 386 true, /* U+007A */ 387 true, /* U+007B */ 388 true, /* U+007C */ 389 true, /* U+007D */ 390 true, /* U+007E */ 391 false, /* U+007F */ 392 false, /* U+0080 */ 393 false, /* U+0081 */ 394 false, /* U+0082 */ 395 false, /* U+0083 */ 396 false, /* U+0084 */ 397 false, /* U+0085 */ 398 false, /* U+0086 */ 399 false, /* U+0087 */ 400 false, /* U+0088 */ 401 false, /* U+0089 */ 402 false, /* U+008A */ 403 false, /* U+008B */ 404 false, /* U+008C */ 405 false, /* U+008D */ 406 false, /* U+008E */ 407 false, /* U+008F */ 408 false, /* U+0090 */ 409 false, /* U+0091 */ 410 false, /* U+0092 */ 411 false, /* U+0093 */ 412 false, /* U+0094 */ 413 false, /* U+0095 */ 414 false, /* U+0096 */ 415 false, /* U+0097 */ 416 false, /* U+0098 */ 417 false, /* U+0099 */ 418 false, /* U+009A */ 419 false, /* U+009B */ 420 false, /* U+009C */ 421 false, /* U+009D */ 422 false, /* U+009E */ 423 false, /* U+009F */ 424 false, /* U+00A0 */ 425 false, /* U+00A1 */ 426 false, /* U+00A2 */ 427 false, /* U+00A3 */ 428 false, /* U+00A4 */ 429 false, /* U+00A5 */ 430 false, /* U+00A6 */ 431 false, /* U+00A7 */ 432 false, /* U+00A8 */ 433 false, /* U+00A9 */ 434 false, /* U+00AA */ 435 false, /* U+00AB */ 436 false, /* U+00AC */ 437 false, /* U+00AD */ 438 false, /* U+00AE */ 439 false, /* U+00AF */ 440 false, /* U+00B0 */ 441 false, /* U+00B1 */ 442 false, /* U+00B2 */ 443 false, /* U+00B3 */ 444 false, /* U+00B4 */ 445 false, /* U+00B5 */ 446 false, /* U+00B6 */ 447 false, /* U+00B7 */ 448 false, /* U+00B8 */ 449 false, /* U+00B9 */ 450 false, /* U+00BA */ 451 false, /* U+00BB */ 452 false, /* U+00BC */ 453 false, /* U+00BD */ 454 false, /* U+00BE */ 455 false, /* U+00BF */ 456 false, /* U+00C0 */ 457 false, /* U+00C1 */ 458 false, /* U+00C2 */ 459 false, /* U+00C3 */ 460 false, /* U+00C4 */ 461 false, /* U+00C5 */ 462 false, /* U+00C6 */ 463 false, /* U+00C7 */ 464 false, /* U+00C8 */ 465 false, /* U+00C9 */ 466 false, /* U+00CA */ 467 false, /* U+00CB */ 468 false, /* U+00CC */ 469 false, /* U+00CD */ 470 false, /* U+00CE */ 471 false, /* U+00CF */ 472 false, /* U+00D0 */ 473 false, /* U+00D1 */ 474 false, /* U+00D2 */ 475 false, /* U+00D3 */ 476 false, /* U+00D4 */ 477 false, /* U+00D5 */ 478 false, /* U+00D6 */ 479 false, /* U+00D7 */ 480 false, /* U+00D8 */ 481 false, /* U+00D9 */ 482 false, /* U+00DA */ 483 false, /* U+00DB */ 484 false, /* U+00DC */ 485 false, /* U+00DD */ 486 false, /* U+00DE */ 487 false, /* U+00DF */ 488 false, /* U+00E0 */ 489 false, /* U+00E1 */ 490 false, /* U+00E2 */ 491 false, /* U+00E3 */ 492 false, /* U+00E4 */ 493 false, /* U+00E5 */ 494 false, /* U+00E6 */ 495 false, /* U+00E7 */ 496 false, /* U+00E8 */ 497 false, /* U+00E9 */ 498 false, /* U+00EA */ 499 false, /* U+00EB */ 500 false, /* U+00EC */ 501 false, /* U+00ED */ 502 false, /* U+00EE */ 503 false, /* U+00EF */ 504 false, /* U+00F0 */ 505 false, /* U+00F1 */ 506 false, /* U+00F2 */ 507 false, /* U+00F3 */ 508 false, /* U+00F4 */ 509 false, /* U+00F5 */ 510 false, /* U+00F6 */ 511 false, /* U+00F7 */ 512 false, /* U+00F8 */ 513 false, /* U+00F9 */ 514 false, /* U+00FA */ 515 false, /* U+00FB */ 516 false, /* U+00FC */ 517 false, /* U+00FD */ 518 false, /* U+00FE */ 519 false, /* U+00FF */ 520 }; 521 522