| OLD | NEW |
| 1 // Copyright 2007-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2007-2008 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| 11 // with the distribution. | 11 // with the distribution. |
| 12 // * Neither the name of Google Inc. nor the names of its | 12 // * Neither the name of Google Inc. nor the names of its |
| 13 // contributors may be used to endorse or promote products derived | 13 // contributors may be used to endorse or promote products derived |
| 14 // from this software without specific prior written permission. | 14 // from this software without specific prior written permission. |
| 15 // | 15 // |
| 16 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | 16 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| 17 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | 17 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| 18 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | 18 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| 19 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | 19 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| 20 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | 20 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| 21 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | 21 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| 22 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 22 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| 23 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 23 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| 24 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 24 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| 25 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 25 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| 26 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 26 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 27 // | 27 // |
| 28 // This file was generated at 2008-10-01 18:05:45.480436 | 28 // This file was generated at 2008-11-17 10:21:10.113455 |
| 29 | 29 |
| 30 #include "unicode-inl.h" | 30 #include "unicode-inl.h" |
| 31 #include <cstdlib> | 31 #include <cstdlib> |
| 32 #include <cstdio> | 32 #include <cstdio> |
| 33 | 33 |
| 34 namespace unibrow { | 34 namespace unibrow { |
| 35 | 35 |
| 36 /** | 36 /** |
| 37 * \file | 37 * \file |
| 38 * Implementations of functions for working with unicode. | 38 * Implementations of functions for working with unicode. |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 high = mid - 1; | 89 high = mid - 1; |
| 90 } | 90 } |
| 91 } | 91 } |
| 92 uint16_t field = TableGet<kEntryDist>(table, low); | 92 uint16_t field = TableGet<kEntryDist>(table, low); |
| 93 return (GetEntry(field) == value) || | 93 return (GetEntry(field) == value) || |
| 94 (GetEntry(field) < value && IsStart(field)); | 94 (GetEntry(field) < value && IsStart(field)); |
| 95 } | 95 } |
| 96 | 96 |
| 97 struct MultiCharacterSpecialCase { | 97 struct MultiCharacterSpecialCase { |
| 98 uint16_t length; | 98 uint16_t length; |
| 99 uchar chars[kMaxCaseConvertedSize]; | 99 uchar chars[kMaxMappingSize]; |
| 100 }; | 100 }; |
| 101 | 101 |
| 102 // Look up the mapping for the given character in the specified table, | 102 // Look up the mapping for the given character in the specified table, |
| 103 // which is of the specified length and uses the specified special case | 103 // which is of the specified length and uses the specified special case |
| 104 // mapping for multi-char mappings. The next parameter is the character | 104 // mapping for multi-char mappings. The next parameter is the character |
| 105 // following the one to map. The result will be written in to the result | 105 // following the one to map. The result will be written in to the result |
| 106 // buffer and the number of characters written will be returned. Finally, | 106 // buffer and the number of characters written will be returned. Finally, |
| 107 // if the allow_caching_ptr is non-null then false will be stored in | 107 // if the allow_caching_ptr is non-null then false will be stored in |
| 108 // it if the result contains multiple characters or depends on the | 108 // it if the result contains multiple characters or depends on the |
| 109 // context. | 109 // context. |
| (...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 424 bool Space::Is(uchar c) { | 424 bool Space::Is(uchar c) { |
| 425 int chunk_index = c >> 15; | 425 int chunk_index = c >> 15; |
| 426 switch (chunk_index) { | 426 switch (chunk_index) { |
| 427 case 0: return LookupPredicate(kSpaceTable0, | 427 case 0: return LookupPredicate(kSpaceTable0, |
| 428 kSpaceTable0Size, | 428 kSpaceTable0Size, |
| 429 c); | 429 c); |
| 430 default: return false; | 430 default: return false; |
| 431 } | 431 } |
| 432 } | 432 } |
| 433 | 433 |
| 434 // Titlecase: point.category == 'Lt' | |
| 435 | |
| 436 static const uint16_t kTitlecaseTable0Size = 13; | |
| 437 static const uint16_t kTitlecaseTable0[13] = { 453, 456, 459, 498, 40840, 8079,
40856, 8095, 40872, 8111, 8124, 8140, 8188 }; // NOLINT | |
| 438 bool Titlecase::Is(uchar c) { | |
| 439 int chunk_index = c >> 15; | |
| 440 switch (chunk_index) { | |
| 441 case 0: return LookupPredicate(kTitlecaseTable0, | |
| 442 kTitlecaseTable0Size, | |
| 443 c); | |
| 444 default: return false; | |
| 445 } | |
| 446 } | |
| 447 | |
| 448 // Number: point.category in ['Nd', 'Nl', 'No' ] | 434 // Number: point.category in ['Nd', 'Nl', 'No' ] |
| 449 | 435 |
| 450 static const uint16_t kNumberTable0Size = 86; | 436 static const uint16_t kNumberTable0Size = 86; |
| 451 static const uint16_t kNumberTable0[86] = { 32816, 57, 32946, 179, 185, 32956, 1
90, 34400, 1641, 34544, 1785, 34752, 1993, 35174, 2415, 35302, 2543, 35316, 2553
, 35430, 2671, 35558, 2799, 35686, 2927, 35814, 3058, 35942, 3183, 36070, 3311,
36198, 3439, 36432, 3673, 36560, 3801, 36640, 3891, 36928, 4169, 37737, 4988, 38
638, 5872, 38880, 6121, 38896, 6137, 38928, 6169, 39238, 6479, 39376, 6617, 3976
0, 7001, 8304, 41076, 8313, 41088, 8329, 41299, 8578, 42080, 9371, 42218, 9471,
42870, 10131, 11517, 12295, 45089, 12329, 45112, 12346, 45458, 12693, 45600, 128
41, 45649, 12895, 45696, 12937, 45745, 12991 }; // NOLINT | 437 static const uint16_t kNumberTable0[86] = { 32816, 57, 32946, 179, 185, 32956, 1
90, 34400, 1641, 34544, 1785, 34752, 1993, 35174, 2415, 35302, 2543, 35316, 2553
, 35430, 2671, 35558, 2799, 35686, 2927, 35814, 3058, 35942, 3183, 36070, 3311,
36198, 3439, 36432, 3673, 36560, 3801, 36640, 3891, 36928, 4169, 37737, 4988, 38
638, 5872, 38880, 6121, 38896, 6137, 38928, 6169, 39238, 6479, 39376, 6617, 3976
0, 7001, 8304, 41076, 8313, 41088, 8329, 41299, 8578, 42080, 9371, 42218, 9471,
42870, 10131, 11517, 12295, 45089, 12329, 45112, 12346, 45458, 12693, 45600, 128
41, 45649, 12895, 45696, 12937, 45745, 12991 }; // NOLINT |
| 452 static const uint16_t kNumberTable1Size = 2; | 438 static const uint16_t kNumberTable1Size = 2; |
| 453 static const uint16_t kNumberTable1[2] = { 65296, 32537 }; // NOLINT | 439 static const uint16_t kNumberTable1[2] = { 65296, 32537 }; // NOLINT |
| 454 static const uint16_t kNumberTable2Size = 19; | 440 static const uint16_t kNumberTable2Size = 19; |
| 455 static const uint16_t kNumberTable2[19] = { 33031, 307, 33088, 376, 394, 33568,
803, 833, 842, 33745, 981, 33952, 1193, 35094, 2329, 35392, 2631, 41984, 9314 };
// NOLINT | 441 static const uint16_t kNumberTable2[19] = { 33031, 307, 33088, 376, 394, 33568,
803, 833, 842, 33745, 981, 33952, 1193, 35094, 2329, 35392, 2631, 41984, 9314 };
// NOLINT |
| 456 static const uint16_t kNumberTable3Size = 4; | 442 static const uint16_t kNumberTable3Size = 4; |
| 457 static const uint16_t kNumberTable3[4] = { 54112, 21361, 55246, 22527 }; // NOLI
NT | 443 static const uint16_t kNumberTable3[4] = { 54112, 21361, 55246, 22527 }; // NOLI
NT |
| 458 bool Number::Is(uchar c) { | 444 bool Number::Is(uchar c) { |
| 459 int chunk_index = c >> 15; | 445 int chunk_index = c >> 15; |
| 460 switch (chunk_index) { | 446 switch (chunk_index) { |
| 461 case 0: return LookupPredicate(kNumberTable0, | 447 case 0: return LookupPredicate(kNumberTable0, |
| 462 kNumberTable0Size, | 448 kNumberTable0Size, |
| 463 c); | 449 c); |
| 464 case 1: return LookupPredicate(kNumberTable1, | 450 case 1: return LookupPredicate(kNumberTable1, |
| 465 kNumberTable1Size, | 451 kNumberTable1Size, |
| 466 c); | 452 c); |
| 467 case 2: return LookupPredicate(kNumberTable2, | 453 case 2: return LookupPredicate(kNumberTable2, |
| 468 kNumberTable2Size, | 454 kNumberTable2Size, |
| 469 c); | 455 c); |
| 470 case 3: return LookupPredicate(kNumberTable3, | 456 case 3: return LookupPredicate(kNumberTable3, |
| 471 kNumberTable3Size, | 457 kNumberTable3Size, |
| 472 c); | 458 c); |
| 473 default: return false; | 459 default: return false; |
| 474 } | 460 } |
| 475 } | 461 } |
| 476 | 462 |
| 477 // DecimalDigit: point.category == 'Nd' | |
| 478 | |
| 479 static const uint16_t kDecimalDigitTable0Size = 44; | |
| 480 static const uint16_t kDecimalDigitTable0[44] = { 32816, 57, 34400, 1641, 34544,
1785, 34752, 1993, 35174, 2415, 35302, 2543, 35430, 2671, 35558, 2799, 35686, 2
927, 35814, 3055, 35942, 3183, 36070, 3311, 36198, 3439, 36432, 3673, 36560, 380
1, 36640, 3881, 36928, 4169, 38880, 6121, 38928, 6169, 39238, 6479, 39376, 6617,
39760, 7001 }; // NOLINT | |
| 481 static const uint16_t kDecimalDigitTable1Size = 2; | |
| 482 static const uint16_t kDecimalDigitTable1[2] = { 65296, 32537 }; // NOLINT | |
| 483 static const uint16_t kDecimalDigitTable2Size = 2; | |
| 484 static const uint16_t kDecimalDigitTable2[2] = { 33952, 1193 }; // NOLINT | |
| 485 static const uint16_t kDecimalDigitTable3Size = 2; | |
| 486 static const uint16_t kDecimalDigitTable3[2] = { 55246, 22527 }; // NOLINT | |
| 487 bool DecimalDigit::Is(uchar c) { | |
| 488 int chunk_index = c >> 15; | |
| 489 switch (chunk_index) { | |
| 490 case 0: return LookupPredicate(kDecimalDigitTable0, | |
| 491 kDecimalDigitTable0Size, | |
| 492 c); | |
| 493 case 1: return LookupPredicate(kDecimalDigitTable1, | |
| 494 kDecimalDigitTable1Size, | |
| 495 c); | |
| 496 case 2: return LookupPredicate(kDecimalDigitTable2, | |
| 497 kDecimalDigitTable2Size, | |
| 498 c); | |
| 499 case 3: return LookupPredicate(kDecimalDigitTable3, | |
| 500 kDecimalDigitTable3Size, | |
| 501 c); | |
| 502 default: return false; | |
| 503 } | |
| 504 } | |
| 505 | |
| 506 // Ideographic: 'Id' in point.properties | |
| 507 | |
| 508 static const uint16_t kIdeographicTable0Size = 10; | |
| 509 static const uint16_t kIdeographicTable0[10] = { 45062, 12295, 45089, 12329, 451
12, 12346, 46080, 19893, 52736, 32767 }; // NOLINT | |
| 510 static const uint16_t kIdeographicTable1Size = 6; | |
| 511 static const uint16_t kIdeographicTable1[6] = { 32768, 8123, 63744, 31277, 64112
, 31449 }; // NOLINT | |
| 512 static const uint16_t kIdeographicTable4Size = 2; | |
| 513 static const uint16_t kIdeographicTable4[2] = { 32768, 32767 }; // NOLINT | |
| 514 static const uint16_t kIdeographicTable5Size = 4; | |
| 515 static const uint16_t kIdeographicTable5[4] = { 32768, 9942, 63488, 31261 }; //
NOLINT | |
| 516 bool Ideographic::Is(uchar c) { | |
| 517 int chunk_index = c >> 15; | |
| 518 switch (chunk_index) { | |
| 519 case 0: return LookupPredicate(kIdeographicTable0, | |
| 520 kIdeographicTable0Size, | |
| 521 c); | |
| 522 case 1: return LookupPredicate(kIdeographicTable1, | |
| 523 kIdeographicTable1Size, | |
| 524 c); | |
| 525 case 4: return LookupPredicate(kIdeographicTable4, | |
| 526 kIdeographicTable4Size, | |
| 527 c); | |
| 528 case 5: return LookupPredicate(kIdeographicTable5, | |
| 529 kIdeographicTable5Size, | |
| 530 c); | |
| 531 default: return false; | |
| 532 } | |
| 533 } | |
| 534 | |
| 535 // WhiteSpace: 'Ws' in point.properties | 463 // WhiteSpace: 'Ws' in point.properties |
| 536 | 464 |
| 537 static const uint16_t kWhiteSpaceTable0Size = 14; | 465 static const uint16_t kWhiteSpaceTable0Size = 14; |
| 538 static const uint16_t kWhiteSpaceTable0[14] = { 32777, 13, 32, 133, 160, 5760, 6
158, 40960, 8202, 41000, 8233, 8239, 8287, 12288 }; // NOLINT | 466 static const uint16_t kWhiteSpaceTable0[14] = { 32777, 13, 32, 133, 160, 5760, 6
158, 40960, 8202, 41000, 8233, 8239, 8287, 12288 }; // NOLINT |
| 539 bool WhiteSpace::Is(uchar c) { | 467 bool WhiteSpace::Is(uchar c) { |
| 540 int chunk_index = c >> 15; | 468 int chunk_index = c >> 15; |
| 541 switch (chunk_index) { | 469 switch (chunk_index) { |
| 542 case 0: return LookupPredicate(kWhiteSpaceTable0, | 470 case 0: return LookupPredicate(kWhiteSpaceTable0, |
| 543 kWhiteSpaceTable0Size, | 471 kWhiteSpaceTable0Size, |
| 544 c); | 472 c); |
| 545 default: return false; | 473 default: return false; |
| 546 } | 474 } |
| 547 } | 475 } |
| 548 | 476 |
| 549 // HexDigit: 'Hd' in point.properties | |
| 550 | |
| 551 static const uint16_t kHexDigitTable0Size = 6; | |
| 552 static const uint16_t kHexDigitTable0[6] = { 32816, 57, 32833, 70, 32865, 102 };
// NOLINT | |
| 553 static const uint16_t kHexDigitTable1Size = 6; | |
| 554 static const uint16_t kHexDigitTable1[6] = { 65296, 32537, 65313, 32550, 65345,
32582 }; // NOLINT | |
| 555 bool HexDigit::Is(uchar c) { | |
| 556 int chunk_index = c >> 15; | |
| 557 switch (chunk_index) { | |
| 558 case 0: return LookupPredicate(kHexDigitTable0, | |
| 559 kHexDigitTable0Size, | |
| 560 c); | |
| 561 case 1: return LookupPredicate(kHexDigitTable1, | |
| 562 kHexDigitTable1Size, | |
| 563 c); | |
| 564 default: return false; | |
| 565 } | |
| 566 } | |
| 567 | |
| 568 // AsciiHexDigit: 'Ah' in point.properties | |
| 569 | |
| 570 static const uint16_t kAsciiHexDigitTable0Size = 6; | |
| 571 static const uint16_t kAsciiHexDigitTable0[6] = { 32816, 57, 32833, 70, 32865, 1
02 }; // NOLINT | |
| 572 bool AsciiHexDigit::Is(uchar c) { | |
| 573 int chunk_index = c >> 15; | |
| 574 switch (chunk_index) { | |
| 575 case 0: return LookupPredicate(kAsciiHexDigitTable0, | |
| 576 kAsciiHexDigitTable0Size, | |
| 577 c); | |
| 578 default: return false; | |
| 579 } | |
| 580 } | |
| 581 | |
| 582 // BidiControl: 'Bc' in point.properties | |
| 583 | |
| 584 static const uint16_t kBidiControlTable0Size = 4; | |
| 585 static const uint16_t kBidiControlTable0[4] = { 40974, 8207, 41002, 8238 }; // N
OLINT | |
| 586 bool BidiControl::Is(uchar c) { | |
| 587 int chunk_index = c >> 15; | |
| 588 switch (chunk_index) { | |
| 589 case 0: return LookupPredicate(kBidiControlTable0, | |
| 590 kBidiControlTable0Size, | |
| 591 c); | |
| 592 default: return false; | |
| 593 } | |
| 594 } | |
| 595 | |
| 596 // JoinControl: 'Jc' in point.properties | |
| 597 | |
| 598 static const uint16_t kJoinControlTable0Size = 2; | |
| 599 static const uint16_t kJoinControlTable0[2] = { 40972, 8205 }; // NOLINT | |
| 600 bool JoinControl::Is(uchar c) { | |
| 601 int chunk_index = c >> 15; | |
| 602 switch (chunk_index) { | |
| 603 case 0: return LookupPredicate(kJoinControlTable0, | |
| 604 kJoinControlTable0Size, | |
| 605 c); | |
| 606 default: return false; | |
| 607 } | |
| 608 } | |
| 609 | |
| 610 // Dash: 'Dh' in point.properties | |
| 611 | |
| 612 static const uint16_t kDashTable0Size = 14; | |
| 613 static const uint16_t kDashTable0[14] = { 45, 1418, 1470, 6150, 40976, 8213, 827
5, 8315, 8331, 8722, 11799, 12316, 12336, 12448 }; // NOLINT | |
| 614 static const uint16_t kDashTable1Size = 5; | |
| 615 static const uint16_t kDashTable1[5] = { 65073, 32306, 32344, 32355, 32525 }; //
NOLINT | |
| 616 bool Dash::Is(uchar c) { | |
| 617 int chunk_index = c >> 15; | |
| 618 switch (chunk_index) { | |
| 619 case 0: return LookupPredicate(kDashTable0, | |
| 620 kDashTable0Size, | |
| 621 c); | |
| 622 case 1: return LookupPredicate(kDashTable1, | |
| 623 kDashTable1Size, | |
| 624 c); | |
| 625 default: return false; | |
| 626 } | |
| 627 } | |
| 628 | |
| 629 // Hyphen: 'Hp' in point.properties | |
| 630 | |
| 631 static const uint16_t kHyphenTable0Size = 8; | |
| 632 static const uint16_t kHyphenTable0[8] = { 45, 173, 1418, 6150, 40976, 8209, 117
99, 12539 }; // NOLINT | |
| 633 static const uint16_t kHyphenTable1Size = 3; | |
| 634 static const uint16_t kHyphenTable1[3] = { 32355, 32525, 32613 }; // NOLINT | |
| 635 bool Hyphen::Is(uchar c) { | |
| 636 int chunk_index = c >> 15; | |
| 637 switch (chunk_index) { | |
| 638 case 0: return LookupPredicate(kHyphenTable0, | |
| 639 kHyphenTable0Size, | |
| 640 c); | |
| 641 case 1: return LookupPredicate(kHyphenTable1, | |
| 642 kHyphenTable1Size, | |
| 643 c); | |
| 644 default: return false; | |
| 645 } | |
| 646 } | |
| 647 | |
| 648 // LineTerminator: 'Lt' in point.properties | 477 // LineTerminator: 'Lt' in point.properties |
| 649 | 478 |
| 650 static const uint16_t kLineTerminatorTable0Size = 4; | 479 static const uint16_t kLineTerminatorTable0Size = 4; |
| 651 static const uint16_t kLineTerminatorTable0[4] = { 10, 13, 41000, 8233 }; // NOL
INT | 480 static const uint16_t kLineTerminatorTable0[4] = { 10, 13, 41000, 8233 }; // NOL
INT |
| 652 bool LineTerminator::Is(uchar c) { | 481 bool LineTerminator::Is(uchar c) { |
| 653 int chunk_index = c >> 15; | 482 int chunk_index = c >> 15; |
| 654 switch (chunk_index) { | 483 switch (chunk_index) { |
| 655 case 0: return LookupPredicate(kLineTerminatorTable0, | 484 case 0: return LookupPredicate(kLineTerminatorTable0, |
| 656 kLineTerminatorTable0Size, | 485 kLineTerminatorTable0Size, |
| 657 c); | 486 c); |
| 658 default: return false; | 487 default: return false; |
| 659 } | 488 } |
| 660 } | 489 } |
| 661 | 490 |
| 662 // RegExpSpecialChar: 'Rx' in point.properties | |
| 663 | |
| 664 static const uint16_t kRegExpSpecialCharTable0Size = 9; | |
| 665 static const uint16_t kRegExpSpecialCharTable0[9] = { 36, 32808, 43, 46, 63, 328
59, 94, 32891, 125 }; // NOLINT | |
| 666 bool RegExpSpecialChar::Is(uchar c) { | |
| 667 int chunk_index = c >> 15; | |
| 668 switch (chunk_index) { | |
| 669 case 0: return LookupPredicate(kRegExpSpecialCharTable0, | |
| 670 kRegExpSpecialCharTable0Size, | |
| 671 c); | |
| 672 default: return false; | |
| 673 } | |
| 674 } | |
| 675 | |
| 676 // CombiningMark: point.category in ['Mn', 'Mc'] | 491 // CombiningMark: point.category in ['Mn', 'Mc'] |
| 677 | 492 |
| 678 static const uint16_t kCombiningMarkTable0Size = 214; | 493 static const uint16_t kCombiningMarkTable0Size = 214; |
| 679 static const uint16_t kCombiningMarkTable0[214] = { 33536, 879, 33923, 1158, 341
93, 1469, 1471, 34241, 1474, 34244, 1477, 1479, 34320, 1557, 34379, 1630, 1648,
34518, 1756, 34527, 1764, 34535, 1768, 34538, 1773, 1809, 34608, 1866, 34726, 19
68, 34795, 2035, 35073, 2307, 2364, 35134, 2381, 35153, 2388, 35170, 2403, 35201
, 2435, 2492, 35262, 2500, 35271, 2504, 35275, 2509, 2519, 35298, 2531, 35329, 2
563, 2620, 35390, 2626, 35399, 2632, 35403, 2637, 35440, 2673, 35457, 2691, 2748
, 35518, 2757, 35527, 2761, 35531, 2765, 35554, 2787, 35585, 2819, 2876, 35646,
2883, 35655, 2888, 35659, 2893, 35670, 2903, 2946, 35774, 3010, 35782, 3016, 357
86, 3021, 3031, 35841, 3075, 35902, 3140, 35910, 3144, 35914, 3149, 35925, 3158,
35970, 3203, 3260, 36030, 3268, 36038, 3272, 36042, 3277, 36053, 3286, 36066, 3
299, 36098, 3331, 36158, 3395, 36166, 3400, 36170, 3405, 3415, 36226, 3459, 3530
, 36303, 3540, 3542, 36312, 3551, 36338, 3571, 3633, 36404, 3642, 36423, 3662, 3
761, 36532, 3769, 36539, 3772, 36552, 3789, 36632, 3865, 3893, 3895, 3897, 36670
, 3903, 36721, 3972, 36742, 3975, 36752, 3991, 36761, 4028, 4038, 36908, 4146, 3
6918, 4153, 36950, 4185, 4959, 38674, 5908, 38706, 5940, 38738, 5971, 38770, 600
3, 38838, 6099, 6109, 38923, 6157, 6313, 39200, 6443, 39216, 6459, 39344, 6592,
39368, 6601, 39447, 6683, 39680, 6916, 39732, 6980, 39787, 7027, 40384, 7626, 40
446, 7679, 41168, 8412, 8417, 41189, 8431, 45098, 12335, 45209, 12442 }; // NOLI
NT | 494 static const uint16_t kCombiningMarkTable0[214] = { 33536, 879, 33923, 1158, 341
93, 1469, 1471, 34241, 1474, 34244, 1477, 1479, 34320, 1557, 34379, 1630, 1648,
34518, 1756, 34527, 1764, 34535, 1768, 34538, 1773, 1809, 34608, 1866, 34726, 19
68, 34795, 2035, 35073, 2307, 2364, 35134, 2381, 35153, 2388, 35170, 2403, 35201
, 2435, 2492, 35262, 2500, 35271, 2504, 35275, 2509, 2519, 35298, 2531, 35329, 2
563, 2620, 35390, 2626, 35399, 2632, 35403, 2637, 35440, 2673, 35457, 2691, 2748
, 35518, 2757, 35527, 2761, 35531, 2765, 35554, 2787, 35585, 2819, 2876, 35646,
2883, 35655, 2888, 35659, 2893, 35670, 2903, 2946, 35774, 3010, 35782, 3016, 357
86, 3021, 3031, 35841, 3075, 35902, 3140, 35910, 3144, 35914, 3149, 35925, 3158,
35970, 3203, 3260, 36030, 3268, 36038, 3272, 36042, 3277, 36053, 3286, 36066, 3
299, 36098, 3331, 36158, 3395, 36166, 3400, 36170, 3405, 3415, 36226, 3459, 3530
, 36303, 3540, 3542, 36312, 3551, 36338, 3571, 3633, 36404, 3642, 36423, 3662, 3
761, 36532, 3769, 36539, 3772, 36552, 3789, 36632, 3865, 3893, 3895, 3897, 36670
, 3903, 36721, 3972, 36742, 3975, 36752, 3991, 36761, 4028, 4038, 36908, 4146, 3
6918, 4153, 36950, 4185, 4959, 38674, 5908, 38706, 5940, 38738, 5971, 38770, 600
3, 38838, 6099, 6109, 38923, 6157, 6313, 39200, 6443, 39216, 6459, 39344, 6592,
39368, 6601, 39447, 6683, 39680, 6916, 39732, 6980, 39787, 7027, 40384, 7626, 40
446, 7679, 41168, 8412, 8417, 41189, 8431, 45098, 12335, 45209, 12442 }; // NOLI
NT |
| 680 static const uint16_t kCombiningMarkTable1Size = 10; | 495 static const uint16_t kCombiningMarkTable1Size = 10; |
| 681 static const uint16_t kCombiningMarkTable1[10] = { 10242, 10246, 10251, 43043, 1
0279, 31518, 65024, 32271, 65056, 32291 }; // NOLINT | 496 static const uint16_t kCombiningMarkTable1[10] = { 10242, 10246, 10251, 43043, 1
0279, 31518, 65024, 32271, 65056, 32291 }; // NOLINT |
| 682 static const uint16_t kCombiningMarkTable2Size = 9; | 497 static const uint16_t kCombiningMarkTable2Size = 9; |
| 683 static const uint16_t kCombiningMarkTable2[9] = { 35329, 2563, 35333, 2566, 3534
0, 2575, 35384, 2618, 2623 }; // NOLINT | 498 static const uint16_t kCombiningMarkTable2[9] = { 35329, 2563, 35333, 2566, 3534
0, 2575, 35384, 2618, 2623 }; // NOLINT |
| 684 static const uint16_t kCombiningMarkTable3Size = 12; | 499 static const uint16_t kCombiningMarkTable3Size = 12; |
| 685 static const uint16_t kCombiningMarkTable3[12] = { 53605, 20841, 53613, 20850, 5
3627, 20866, 53637, 20875, 53674, 20909, 53826, 21060 }; // NOLINT | 500 static const uint16_t kCombiningMarkTable3[12] = { 53605, 20841, 53613, 20850, 5
3627, 20866, 53637, 20875, 53674, 20909, 53826, 21060 }; // NOLINT |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 799 kToUppercaseTable2Size, | 614 kToUppercaseTable2Size, |
| 800 kToUppercaseMultiStrings2, | 615 kToUppercaseMultiStrings2, |
| 801 c, | 616 c, |
| 802 n, | 617 n, |
| 803 result, | 618 result, |
| 804 allow_caching_ptr); | 619 allow_caching_ptr); |
| 805 default: return 0; | 620 default: return 0; |
| 806 } | 621 } |
| 807 } | 622 } |
| 808 | 623 |
| 624 static const MultiCharacterSpecialCase kEcma262CanonicalizeMultiStrings0[] = { {
0, {0}} }; // NOLINT |
| 625 static const uint16_t kEcma262CanonicalizeTable0Size = 530; |
| 626 static const uint16_t kEcma262CanonicalizeTable0[1060] = { 32865, static_cast<ui
nt16_t>(-128), 122, static_cast<uint16_t>(-128), 181, 2972, 32992, static_cast<u
int16_t>(-128), 246, static_cast<uint16_t>(-128), 33016, static_cast<uint16_t>(-
128), 254, static_cast<uint16_t>(-128), 255, 484, 257, static_cast<uint16_t>(-4)
, 259, static_cast<uint16_t>(-4), 261, static_cast<uint16_t>(-4), 263, static_ca
st<uint16_t>(-4), 265, static_cast<uint16_t>(-4), 267, static_cast<uint16_t>(-4)
, 269, static_cast<uint16_t>(-4), 271, static_cast<uint16_t>(-4), 273, static_ca
st<uint16_t>(-4), 275, static_cast<uint16_t>(-4), 277, static_cast<uint16_t>(-4)
, 279, static_cast<uint16_t>(-4), 281, static_cast<uint16_t>(-4), 283, static_ca
st<uint16_t>(-4), 285, static_cast<uint16_t>(-4), 287, static_cast<uint16_t>(-4)
, 289, static_cast<uint16_t>(-4), 291, static_cast<uint16_t>(-4), 293, static_ca
st<uint16_t>(-4), 295, static_cast<uint16_t>(-4), 297, static_cast<uint16_t>(-4)
, 299, static_cast<uint16_t>(-4), 301, static_cast<uint16_t>(-4), 303, static_ca
st<uint16_t>(-4), 304, 0, 307, static_cast<uint16_t>(-4), 309, static_cast<uint1
6_t>(-4), 311, static_cast<uint16_t>(-4), 314, static_cast<uint16_t>(-4), 316, s
tatic_cast<uint16_t>(-4), 318, static_cast<uint16_t>(-4), 320, static_cast<uint1
6_t>(-4), 322, static_cast<uint16_t>(-4), 324, static_cast<uint16_t>(-4), 326, s
tatic_cast<uint16_t>(-4), 328, static_cast<uint16_t>(-4), 331, static_cast<uint1
6_t>(-4), 333, static_cast<uint16_t>(-4), 335, static_cast<uint16_t>(-4), 337, s
tatic_cast<uint16_t>(-4), 339, static_cast<uint16_t>(-4), 341, static_cast<uint1
6_t>(-4), 343, static_cast<uint16_t>(-4), 345, static_cast<uint16_t>(-4), 347, s
tatic_cast<uint16_t>(-4), 349, static_cast<uint16_t>(-4), 351, static_cast<uint1
6_t>(-4), 353, static_cast<uint16_t>(-4), 355, static_cast<uint16_t>(-4), 357, s
tatic_cast<uint16_t>(-4), 359, static_cast<uint16_t>(-4), 361, static_cast<uint1
6_t>(-4), 363, static_cast<uint16_t>(-4), 365, static_cast<uint16_t>(-4), 367, s
tatic_cast<uint16_t>(-4), 369, static_cast<uint16_t>(-4), 371, static_cast<uint1
6_t>(-4), 373, static_cast<uint16_t>(-4), 375, static_cast<uint16_t>(-4), 378, s
tatic_cast<uint16_t>(-4), 380, static_cast<uint16_t>(-4), 382, static_cast<uint1
6_t>(-4), 384, 780, 387, static_cast<uint16_t>(-4), 389, static_cast<uint16_t>(-
4), 392, static_cast<uint16_t>(-4), 396, static_cast<uint16_t>(-4), 402, static_
cast<uint16_t>(-4), 405, 388, 409, static_cast<uint16_t>(-4), 410, 652, 414, 520
, 417, static_cast<uint16_t>(-4), 419, static_cast<uint16_t>(-4), 421, static_ca
st<uint16_t>(-4), 424, static_cast<uint16_t>(-4), 429, static_cast<uint16_t>(-4)
, 432, static_cast<uint16_t>(-4), 436, static_cast<uint16_t>(-4), 438, static_ca
st<uint16_t>(-4), 441, static_cast<uint16_t>(-4), 445, static_cast<uint16_t>(-4)
, 447, 224, 453, static_cast<uint16_t>(-4), 454, static_cast<uint16_t>(-8), 456,
static_cast<uint16_t>(-4), 457, static_cast<uint16_t>(-8), 459, static_cast<uin
t16_t>(-4), 460, static_cast<uint16_t>(-8), 462, static_cast<uint16_t>(-4), 464,
static_cast<uint16_t>(-4), 466, static_cast<uint16_t>(-4), 468, static_cast<uin
t16_t>(-4), 470, static_cast<uint16_t>(-4), 472, static_cast<uint16_t>(-4), 474,
static_cast<uint16_t>(-4), 476, static_cast<uint16_t>(-4), 477, static_cast<uin
t16_t>(-316), 479, static_cast<uint16_t>(-4), 481, static_cast<uint16_t>(-4), 48
3, static_cast<uint16_t>(-4), 485, static_cast<uint16_t>(-4), 487, static_cast<u
int16_t>(-4), 489, static_cast<uint16_t>(-4), 491, static_cast<uint16_t>(-4), 49
3, static_cast<uint16_t>(-4), 495, static_cast<uint16_t>(-4), 498, static_cast<u
int16_t>(-4), 499, static_cast<uint16_t>(-8), 501, static_cast<uint16_t>(-4), 50
5, static_cast<uint16_t>(-4), 507, static_cast<uint16_t>(-4), 509, static_cast<u
int16_t>(-4), 511, static_cast<uint16_t>(-4), 513, static_cast<uint16_t>(-4), 51
5, static_cast<uint16_t>(-4), 517, static_cast<uint16_t>(-4), 519, static_cast<u
int16_t>(-4), 521, static_cast<uint16_t>(-4), 523, static_cast<uint16_t>(-4), 52
5, static_cast<uint16_t>(-4), 527, static_cast<uint16_t>(-4), 529, static_cast<u
int16_t>(-4), 531, static_cast<uint16_t>(-4), 533, static_cast<uint16_t>(-4), 53
5, static_cast<uint16_t>(-4), 537, static_cast<uint16_t>(-4), 539, static_cast<u
int16_t>(-4), 541, static_cast<uint16_t>(-4), 543, static_cast<uint16_t>(-4), 54
7, static_cast<uint16_t>(-4), 549, static_cast<uint16_t>(-4), 551, static_cast<u
int16_t>(-4), 553, static_cast<uint16_t>(-4), 555, static_cast<uint16_t>(-4), 55
7, static_cast<uint16_t>(-4), 559, static_cast<uint16_t>(-4), 561, static_cast<u
int16_t>(-4), 563, static_cast<uint16_t>(-4), 572, static_cast<uint16_t>(-4), 57
8, static_cast<uint16_t>(-4), 583, static_cast<uint16_t>(-4), 585, static_cast<u
int16_t>(-4), 587, static_cast<uint16_t>(-4), 589, static_cast<uint16_t>(-4), 59
1, static_cast<uint16_t>(-4), 595, static_cast<uint16_t>(-840), 596, static_cast
<uint16_t>(-824), 33366, static_cast<uint16_t>(-820), 599, static_cast<uint16_t>
(-820), 601, static_cast<uint16_t>(-808), 603, static_cast<uint16_t>(-812), 608,
static_cast<uint16_t>(-820), 611, static_cast<uint16_t>(-828), 616, static_cast
<uint16_t>(-836), 617, static_cast<uint16_t>(-844), 619, 42972, 623, static_cast
<uint16_t>(-844), 626, static_cast<uint16_t>(-852), 629, static_cast<uint16_t>(-
856), 637, 42908, 640, static_cast<uint16_t>(-872), 643, static_cast<uint16_t>(-
872), 648, static_cast<uint16_t>(-872), 649, static_cast<uint16_t>(-276), 33418,
static_cast<uint16_t>(-868), 651, static_cast<uint16_t>(-868), 652, static_cast
<uint16_t>(-284), 658, static_cast<uint16_t>(-876), 837, 336, 33659, 520, 893, 5
20, 940, static_cast<uint16_t>(-152), 33709, static_cast<uint16_t>(-148), 943, s
tatic_cast<uint16_t>(-148), 33713, static_cast<uint16_t>(-128), 961, static_cast
<uint16_t>(-128), 962, static_cast<uint16_t>(-124), 33731, static_cast<uint16_t>
(-128), 971, static_cast<uint16_t>(-128), 972, static_cast<uint16_t>(-256), 3374
1, static_cast<uint16_t>(-252), 974, static_cast<uint16_t>(-252), 976, static_ca
st<uint16_t>(-248), 977, static_cast<uint16_t>(-228), 981, static_cast<uint16_t>
(-188), 982, static_cast<uint16_t>(-216), 985, static_cast<uint16_t>(-4), 987, s
tatic_cast<uint16_t>(-4), 989, static_cast<uint16_t>(-4), 991, static_cast<uint1
6_t>(-4), 993, static_cast<uint16_t>(-4), 995, static_cast<uint16_t>(-4), 997, s
tatic_cast<uint16_t>(-4), 999, static_cast<uint16_t>(-4), 1001, static_cast<uint
16_t>(-4), 1003, static_cast<uint16_t>(-4), 1005, static_cast<uint16_t>(-4), 100
7, static_cast<uint16_t>(-4), 1008, static_cast<uint16_t>(-344), 1009, static_ca
st<uint16_t>(-320), 1010, 28, 1013, static_cast<uint16_t>(-384), 1016, static_ca
st<uint16_t>(-4), 1019, static_cast<uint16_t>(-4), 33840, static_cast<uint16_t>(
-128), 1103, static_cast<uint16_t>(-128), 33872, static_cast<uint16_t>(-320), 11
19, static_cast<uint16_t>(-320), 1121, static_cast<uint16_t>(-4), 1123, static_c
ast<uint16_t>(-4), 1125, static_cast<uint16_t>(-4), 1127, static_cast<uint16_t>(
-4), 1129, static_cast<uint16_t>(-4), 1131, static_cast<uint16_t>(-4), 1133, sta
tic_cast<uint16_t>(-4), 1135, static_cast<uint16_t>(-4), 1137, static_cast<uint1
6_t>(-4), 1139, static_cast<uint16_t>(-4), 1141, static_cast<uint16_t>(-4), 1143
, static_cast<uint16_t>(-4), 1145, static_cast<uint16_t>(-4), 1147, static_cast<
uint16_t>(-4), 1149, static_cast<uint16_t>(-4), 1151, static_cast<uint16_t>(-4),
1153, static_cast<uint16_t>(-4), 1163, static_cast<uint16_t>(-4), 1165, static_
cast<uint16_t>(-4), 1167, static_cast<uint16_t>(-4), 1169, static_cast<uint16_t>
(-4), 1171, static_cast<uint16_t>(-4), 1173, static_cast<uint16_t>(-4), 1175, st
atic_cast<uint16_t>(-4), 1177, static_cast<uint16_t>(-4), 1179, static_cast<uint
16_t>(-4), 1181, static_cast<uint16_t>(-4), 1183, static_cast<uint16_t>(-4), 118
5, static_cast<uint16_t>(-4), 1187, static_cast<uint16_t>(-4), 1189, static_cast
<uint16_t>(-4), 1191, static_cast<uint16_t>(-4), 1193, static_cast<uint16_t>(-4)
, 1195, static_cast<uint16_t>(-4), 1197, static_cast<uint16_t>(-4), 1199, static
_cast<uint16_t>(-4), 1201, static_cast<uint16_t>(-4), 1203, static_cast<uint16_t
>(-4), 1205, static_cast<uint16_t>(-4), 1207, static_cast<uint16_t>(-4), 1209, s
tatic_cast<uint16_t>(-4), 1211, static_cast<uint16_t>(-4), 1213, static_cast<uin
t16_t>(-4), 1215, static_cast<uint16_t>(-4), 1218, static_cast<uint16_t>(-4), 12
20, static_cast<uint16_t>(-4), 1222, static_cast<uint16_t>(-4), 1224, static_cas
t<uint16_t>(-4), 1226, static_cast<uint16_t>(-4), 1228, static_cast<uint16_t>(-4
), 1230, static_cast<uint16_t>(-4), 1231, static_cast<uint16_t>(-60), 1233, stat
ic_cast<uint16_t>(-4), 1235, static_cast<uint16_t>(-4), 1237, static_cast<uint16
_t>(-4), 1239, static_cast<uint16_t>(-4), 1241, static_cast<uint16_t>(-4), 1243,
static_cast<uint16_t>(-4), 1245, static_cast<uint16_t>(-4), 1247, static_cast<u
int16_t>(-4), 1249, static_cast<uint16_t>(-4), 1251, static_cast<uint16_t>(-4),
1253, static_cast<uint16_t>(-4), 1255, static_cast<uint16_t>(-4), 1257, static_c
ast<uint16_t>(-4), 1259, static_cast<uint16_t>(-4), 1261, static_cast<uint16_t>(
-4), 1263, static_cast<uint16_t>(-4), 1265, static_cast<uint16_t>(-4), 1267, sta
tic_cast<uint16_t>(-4), 1269, static_cast<uint16_t>(-4), 1271, static_cast<uint1
6_t>(-4), 1273, static_cast<uint16_t>(-4), 1275, static_cast<uint16_t>(-4), 1277
, static_cast<uint16_t>(-4), 1279, static_cast<uint16_t>(-4), 1281, static_cast<
uint16_t>(-4), 1283, static_cast<uint16_t>(-4), 1285, static_cast<uint16_t>(-4),
1287, static_cast<uint16_t>(-4), 1289, static_cast<uint16_t>(-4), 1291, static_
cast<uint16_t>(-4), 1293, static_cast<uint16_t>(-4), 1295, static_cast<uint16_t>
(-4), 1297, static_cast<uint16_t>(-4), 1299, static_cast<uint16_t>(-4), 34145, s
tatic_cast<uint16_t>(-192), 1414, static_cast<uint16_t>(-192), 7549, 15256, 7681
, static_cast<uint16_t>(-4), 7683, static_cast<uint16_t>(-4), 7685, static_cast<
uint16_t>(-4), 7687, static_cast<uint16_t>(-4), 7689, static_cast<uint16_t>(-4),
7691, static_cast<uint16_t>(-4), 7693, static_cast<uint16_t>(-4), 7695, static_
cast<uint16_t>(-4), 7697, static_cast<uint16_t>(-4), 7699, static_cast<uint16_t>
(-4), 7701, static_cast<uint16_t>(-4), 7703, static_cast<uint16_t>(-4), 7705, st
atic_cast<uint16_t>(-4), 7707, static_cast<uint16_t>(-4), 7709, static_cast<uint
16_t>(-4), 7711, static_cast<uint16_t>(-4), 7713, static_cast<uint16_t>(-4), 771
5, static_cast<uint16_t>(-4), 7717, static_cast<uint16_t>(-4), 7719, static_cast
<uint16_t>(-4), 7721, static_cast<uint16_t>(-4), 7723, static_cast<uint16_t>(-4)
, 7725, static_cast<uint16_t>(-4), 7727, static_cast<uint16_t>(-4), 7729, static
_cast<uint16_t>(-4), 7731, static_cast<uint16_t>(-4), 7733, static_cast<uint16_t
>(-4), 7735, static_cast<uint16_t>(-4), 7737, static_cast<uint16_t>(-4), 7739, s
tatic_cast<uint16_t>(-4), 7741, static_cast<uint16_t>(-4), 7743, static_cast<uin
t16_t>(-4), 7745, static_cast<uint16_t>(-4), 7747, static_cast<uint16_t>(-4), 77
49, static_cast<uint16_t>(-4), 7751, static_cast<uint16_t>(-4), 7753, static_cas
t<uint16_t>(-4), 7755, static_cast<uint16_t>(-4), 7757, static_cast<uint16_t>(-4
), 7759, static_cast<uint16_t>(-4), 7761, static_cast<uint16_t>(-4), 7763, stati
c_cast<uint16_t>(-4), 7765, static_cast<uint16_t>(-4), 7767, static_cast<uint16_
t>(-4), 7769, static_cast<uint16_t>(-4), 7771, static_cast<uint16_t>(-4), 7773,
static_cast<uint16_t>(-4), 7775, static_cast<uint16_t>(-4), 7777, static_cast<ui
nt16_t>(-4), 7779, static_cast<uint16_t>(-4), 7781, static_cast<uint16_t>(-4), 7
783, static_cast<uint16_t>(-4), 7785, static_cast<uint16_t>(-4), 7787, static_ca
st<uint16_t>(-4), 7789, static_cast<uint16_t>(-4), 7791, static_cast<uint16_t>(-
4), 7793, static_cast<uint16_t>(-4), 7795, static_cast<uint16_t>(-4), 7797, stat
ic_cast<uint16_t>(-4), 7799, static_cast<uint16_t>(-4), 7801, static_cast<uint16
_t>(-4), 7803, static_cast<uint16_t>(-4), 7805, static_cast<uint16_t>(-4), 7807,
static_cast<uint16_t>(-4), 7809, static_cast<uint16_t>(-4), 7811, static_cast<u
int16_t>(-4), 7813, static_cast<uint16_t>(-4), 7815, static_cast<uint16_t>(-4),
7817, static_cast<uint16_t>(-4), 7819, static_cast<uint16_t>(-4), 7821, static_c
ast<uint16_t>(-4), 7823, static_cast<uint16_t>(-4), 7825, static_cast<uint16_t>(
-4), 7827, static_cast<uint16_t>(-4), 7829, static_cast<uint16_t>(-4), 7835, sta
tic_cast<uint16_t>(-236), 7841, static_cast<uint16_t>(-4), 7843, static_cast<uin
t16_t>(-4), 7845, static_cast<uint16_t>(-4), 7847, static_cast<uint16_t>(-4), 78
49, static_cast<uint16_t>(-4), 7851, static_cast<uint16_t>(-4), 7853, static_cas
t<uint16_t>(-4), 7855, static_cast<uint16_t>(-4), 7857, static_cast<uint16_t>(-4
), 7859, static_cast<uint16_t>(-4), 7861, static_cast<uint16_t>(-4), 7863, stati
c_cast<uint16_t>(-4), 7865, static_cast<uint16_t>(-4), 7867, static_cast<uint16_
t>(-4), 7869, static_cast<uint16_t>(-4), 7871, static_cast<uint16_t>(-4), 7873,
static_cast<uint16_t>(-4), 7875, static_cast<uint16_t>(-4), 7877, static_cast<ui
nt16_t>(-4), 7879, static_cast<uint16_t>(-4), 7881, static_cast<uint16_t>(-4), 7
883, static_cast<uint16_t>(-4), 7885, static_cast<uint16_t>(-4), 7887, static_ca
st<uint16_t>(-4), 7889, static_cast<uint16_t>(-4), 7891, static_cast<uint16_t>(-
4), 7893, static_cast<uint16_t>(-4), 7895, static_cast<uint16_t>(-4), 7897, stat
ic_cast<uint16_t>(-4), 7899, static_cast<uint16_t>(-4), 7901, static_cast<uint16
_t>(-4), 7903, static_cast<uint16_t>(-4), 7905, static_cast<uint16_t>(-4), 7907,
static_cast<uint16_t>(-4), 7909, static_cast<uint16_t>(-4), 7911, static_cast<u
int16_t>(-4), 7913, static_cast<uint16_t>(-4), 7915, static_cast<uint16_t>(-4),
7917, static_cast<uint16_t>(-4), 7919, static_cast<uint16_t>(-4), 7921, static_c
ast<uint16_t>(-4), 7923, static_cast<uint16_t>(-4), 7925, static_cast<uint16_t>(
-4), 7927, static_cast<uint16_t>(-4), 7929, static_cast<uint16_t>(-4), 40704, 32
, 7943, 32, 40720, 32, 7957, 32, 40736, 32, 7975, 32, 40752, 32, 7991, 32, 40768
, 32, 8005, 32, 8017, 32, 8019, 32, 8021, 32, 8023, 32, 40800, 32, 8039, 32, 408
16, 296, 8049, 296, 40818, 344, 8053, 344, 40822, 400, 8055, 400, 40824, 512, 80
57, 512, 40826, 448, 8059, 448, 40828, 504, 8061, 504, 40880, 32, 8113, 32, 8126
, static_cast<uint16_t>(-28820), 40912, 32, 8145, 32, 40928, 32, 8161, 32, 8165,
28, 8526, static_cast<uint16_t>(-112), 41328, static_cast<uint16_t>(-64), 8575,
static_cast<uint16_t>(-64), 8580, static_cast<uint16_t>(-4), 42192, static_cast
<uint16_t>(-104), 9449, static_cast<uint16_t>(-104), 44080, static_cast<uint16_t
>(-192), 11358, static_cast<uint16_t>(-192), 11361, static_cast<uint16_t>(-4), 1
1365, static_cast<uint16_t>(-43180), 11366, static_cast<uint16_t>(-43168), 11368
, static_cast<uint16_t>(-4), 11370, static_cast<uint16_t>(-4), 11372, static_cas
t<uint16_t>(-4), 11382, static_cast<uint16_t>(-4), 11393, static_cast<uint16_t>(
-4), 11395, static_cast<uint16_t>(-4), 11397, static_cast<uint16_t>(-4), 11399,
static_cast<uint16_t>(-4), 11401, static_cast<uint16_t>(-4), 11403, static_cast<
uint16_t>(-4), 11405, static_cast<uint16_t>(-4), 11407, static_cast<uint16_t>(-4
), 11409, static_cast<uint16_t>(-4), 11411, static_cast<uint16_t>(-4), 11413, st
atic_cast<uint16_t>(-4), 11415, static_cast<uint16_t>(-4), 11417, static_cast<ui
nt16_t>(-4), 11419, static_cast<uint16_t>(-4), 11421, static_cast<uint16_t>(-4),
11423, static_cast<uint16_t>(-4), 11425, static_cast<uint16_t>(-4), 11427, stat
ic_cast<uint16_t>(-4), 11429, static_cast<uint16_t>(-4), 11431, static_cast<uint
16_t>(-4), 11433, static_cast<uint16_t>(-4), 11435, static_cast<uint16_t>(-4), 1
1437, static_cast<uint16_t>(-4), 11439, static_cast<uint16_t>(-4), 11441, static
_cast<uint16_t>(-4), 11443, static_cast<uint16_t>(-4), 11445, static_cast<uint16
_t>(-4), 11447, static_cast<uint16_t>(-4), 11449, static_cast<uint16_t>(-4), 114
51, static_cast<uint16_t>(-4), 11453, static_cast<uint16_t>(-4), 11455, static_c
ast<uint16_t>(-4), 11457, static_cast<uint16_t>(-4), 11459, static_cast<uint16_t
>(-4), 11461, static_cast<uint16_t>(-4), 11463, static_cast<uint16_t>(-4), 11465
, static_cast<uint16_t>(-4), 11467, static_cast<uint16_t>(-4), 11469, static_cas
t<uint16_t>(-4), 11471, static_cast<uint16_t>(-4), 11473, static_cast<uint16_t>(
-4), 11475, static_cast<uint16_t>(-4), 11477, static_cast<uint16_t>(-4), 11479,
static_cast<uint16_t>(-4), 11481, static_cast<uint16_t>(-4), 11483, static_cast<
uint16_t>(-4), 11485, static_cast<uint16_t>(-4), 11487, static_cast<uint16_t>(-4
), 11489, static_cast<uint16_t>(-4), 11491, static_cast<uint16_t>(-4), 44288, st
atic_cast<uint16_t>(-29056), 11557, static_cast<uint16_t>(-29056) }; // NOLINT |
| 627 static const MultiCharacterSpecialCase kEcma262CanonicalizeMultiStrings1[] = { {
0, {0}} }; // NOLINT |
| 628 static const uint16_t kEcma262CanonicalizeTable1Size = 2; |
| 629 static const uint16_t kEcma262CanonicalizeTable1[4] = { 65345, static_cast<uint1
6_t>(-128), 32602, static_cast<uint16_t>(-128) }; // NOLINT |
| 630 static const MultiCharacterSpecialCase kEcma262CanonicalizeMultiStrings2[] = { {
0, {0}} }; // NOLINT |
| 631 static const uint16_t kEcma262CanonicalizeTable2Size = 2; |
| 632 static const uint16_t kEcma262CanonicalizeTable2[4] = { 33832, static_cast<uint1
6_t>(-160), 1103, static_cast<uint16_t>(-160) }; // NOLINT |
| 633 int Ecma262Canonicalize::Convert(uchar c, |
| 634 uchar n, |
| 635 uchar* result, |
| 636 bool* allow_caching_ptr) { |
| 637 int chunk_index = c >> 15; |
| 638 switch (chunk_index) { |
| 639 case 0: return LookupMapping(kEcma262CanonicalizeTable0, |
| 640 kEcma262CanonicalizeTable0Size, |
| 641 kEcma262CanonicalizeMultiStrings0, |
| 642 c, |
| 643 n, |
| 644 result, |
| 645 allow_caching_ptr); |
| 646 case 1: return LookupMapping(kEcma262CanonicalizeTable1, |
| 647 kEcma262CanonicalizeTable1Size, |
| 648 kEcma262CanonicalizeMultiStrings1, |
| 649 c, |
| 650 n, |
| 651 result, |
| 652 allow_caching_ptr); |
| 653 case 2: return LookupMapping(kEcma262CanonicalizeTable2, |
| 654 kEcma262CanonicalizeTable2Size, |
| 655 kEcma262CanonicalizeMultiStrings2, |
| 656 c, |
| 657 n, |
| 658 result, |
| 659 allow_caching_ptr); |
| 660 default: return 0; |
| 661 } |
| 662 } |
| 663 |
| 664 static const MultiCharacterSpecialCase kEcma262UnCanonicalizeMultiStrings0[] = {
{2, {65, 97}}, {2, {66, 98}}, {2, {67, 99}}, {2, {68, 100}}, {2, {69, 101}}, {2
, {70, 102}}, {2, {71, 103}}, {2, {72, 104}}, {2, {73, 105}}, {2, {74, 106}}, {2
, {75, 107}}, {2, {76, 108}}, {2, {77, 109}}, {2, {78, 110}}, {2, {79, 111}}, {2
, {80, 112}}, {2, {81, 113}}, {2, {82, 114}}, {2, {83, 115}}, {2, {84, 116}}, {2
, {85, 117}}, {2, {86, 118}}, {2, {87, 119}}, {2, {88, 120}}, {2, {89, 121}}, {2
, {90, 122}}, {2, {181, 924}}, {2, {192, 224}}, {2, {193, 225}}, {2, {194, 226}}
, {2, {195, 227}}, {2, {196, 228}}, {2, {197, 229}}, {2, {198, 230}}, {2, {199,
231}}, {2, {200, 232}}, {2, {201, 233}}, {2, {202, 234}}, {2, {203, 235}}, {2, {
204, 236}}, {2, {205, 237}}, {2, {206, 238}}, {2, {207, 239}}, {2, {208, 240}},
{2, {209, 241}}, {2, {210, 242}}, {2, {211, 243}}, {2, {212, 244}}, {2, {213, 24
5}}, {2, {214, 246}}, {2, {216, 248}}, {2, {217, 249}}, {2, {218, 250}}, {2, {21
9, 251}}, {2, {220, 252}}, {2, {221, 253}}, {2, {222, 254}}, {2, {255, 376}}, {2
, {256, 257}}, {2, {258, 259}}, {2, {260, 261}}, {2, {262, 263}}, {2, {264, 265}
}, {2, {266, 267}}, {2, {268, 269}}, {2, {270, 271}}, {2, {272, 273}}, {2, {274,
275}}, {2, {276, 277}}, {2, {278, 279}}, {2, {280, 281}}, {2, {282, 283}}, {2,
{284, 285}}, {2, {286, 287}}, {2, {288, 289}}, {2, {290, 291}}, {2, {292, 293}},
{2, {294, 295}}, {2, {296, 297}}, {2, {298, 299}}, {2, {300, 301}}, {2, {302, 3
03}}, {2, {304, 304}}, {2, {306, 307}}, {2, {308, 309}}, {2, {310, 311}}, {2, {3
13, 314}}, {2, {315, 316}}, {2, {317, 318}}, {2, {319, 320}}, {2, {321, 322}}, {
2, {323, 324}}, {2, {325, 326}}, {2, {327, 328}}, {2, {330, 331}}, {2, {332, 333
}}, {2, {334, 335}}, {2, {336, 337}}, {2, {338, 339}}, {2, {340, 341}}, {2, {342
, 343}}, {2, {344, 345}}, {2, {346, 347}}, {2, {348, 349}}, {2, {350, 351}}, {2,
{352, 353}}, {2, {354, 355}}, {2, {356, 357}}, {2, {358, 359}}, {2, {360, 361}}
, {2, {362, 363}}, {2, {364, 365}}, {2, {366, 367}}, {2, {368, 369}}, {2, {370,
371}}, {2, {372, 373}}, {2, {374, 375}}, {2, {377, 378}}, {2, {379, 380}}, {2, {
381, 382}}, {2, {384, 579}}, {2, {386, 387}}, {2, {388, 389}}, {2, {391, 392}},
{2, {395, 396}}, {2, {401, 402}}, {2, {405, 502}}, {2, {408, 409}}, {2, {410, 57
3}}, {2, {414, 544}}, {2, {416, 417}}, {2, {418, 419}}, {2, {420, 421}}, {2, {42
3, 424}}, {2, {428, 429}}, {2, {431, 432}}, {2, {435, 436}}, {2, {437, 438}}, {2
, {440, 441}}, {2, {444, 445}}, {2, {447, 503}}, {2, {452, 453}}, {2, {452, 454}
}, {2, {455, 456}}, {2, {455, 457}}, {2, {458, 459}}, {2, {458, 460}}, {2, {461,
462}}, {2, {463, 464}}, {2, {465, 466}}, {2, {467, 468}}, {2, {469, 470}}, {2,
{471, 472}}, {2, {473, 474}}, {2, {475, 476}}, {2, {398, 477}}, {2, {478, 479}},
{2, {480, 481}}, {2, {482, 483}}, {2, {484, 485}}, {2, {486, 487}}, {2, {488, 4
89}}, {2, {490, 491}}, {2, {492, 493}}, {2, {494, 495}}, {2, {497, 498}}, {2, {4
97, 499}}, {2, {500, 501}}, {2, {504, 505}}, {2, {506, 507}}, {2, {508, 509}}, {
2, {510, 511}}, {2, {512, 513}}, {2, {514, 515}}, {2, {516, 517}}, {2, {518, 519
}}, {2, {520, 521}}, {2, {522, 523}}, {2, {524, 525}}, {2, {526, 527}}, {2, {528
, 529}}, {2, {530, 531}}, {2, {532, 533}}, {2, {534, 535}}, {2, {536, 537}}, {2,
{538, 539}}, {2, {540, 541}}, {2, {542, 543}}, {2, {546, 547}}, {2, {548, 549}}
, {2, {550, 551}}, {2, {552, 553}}, {2, {554, 555}}, {2, {556, 557}}, {2, {558,
559}}, {2, {560, 561}}, {2, {562, 563}}, {2, {571, 572}}, {2, {577, 578}}, {2, {
582, 583}}, {2, {584, 585}}, {2, {586, 587}}, {2, {588, 589}}, {2, {590, 591}},
{2, {385, 595}}, {2, {390, 596}}, {2, {393, 598}}, {2, {394, 599}}, {2, {399, 60
1}}, {2, {400, 603}}, {2, {403, 608}}, {2, {404, 611}}, {2, {407, 616}}, {2, {40
6, 617}}, {2, {619, 11362}}, {2, {412, 623}}, {2, {413, 626}}, {2, {415, 629}},
{2, {637, 11364}}, {2, {422, 640}}, {2, {425, 643}}, {2, {430, 648}}, {2, {580,
649}}, {2, {433, 650}}, {2, {434, 651}}, {2, {581, 652}}, {2, {439, 658}}, {2, {
837, 921}}, {2, {891, 1021}}, {2, {892, 1022}}, {2, {893, 1023}}, {2, {902, 940}
}, {2, {904, 941}}, {2, {905, 942}}, {2, {906, 943}}, {2, {913, 945}}, {2, {914,
946}}, {2, {915, 947}}, {2, {916, 948}}, {2, {917, 949}}, {2, {918, 950}}, {2,
{919, 951}}, {2, {920, 952}}, {2, {921, 953}}, {2, {922, 954}}, {2, {923, 955}},
{2, {924, 956}}, {2, {925, 957}}, {2, {926, 958}}, {2, {927, 959}}, {2, {928, 9
60}}, {2, {929, 961}}, {2, {931, 962}}, {2, {931, 963}}, {2, {932, 964}}, {2, {9
33, 965}}, {2, {934, 966}}, {2, {935, 967}}, {2, {936, 968}}, {2, {937, 969}}, {
2, {938, 970}}, {2, {939, 971}}, {2, {908, 972}}, {2, {910, 973}}, {2, {911, 974
}}, {2, {914, 976}}, {2, {920, 977}}, {2, {934, 981}}, {2, {928, 982}}, {2, {984
, 985}}, {2, {986, 987}}, {2, {988, 989}}, {2, {990, 991}}, {2, {992, 993}}, {2,
{994, 995}}, {2, {996, 997}}, {2, {998, 999}}, {2, {1000, 1001}}, {2, {1002, 10
03}}, {2, {1004, 1005}}, {2, {1006, 1007}}, {2, {922, 1008}}, {2, {929, 1009}},
{2, {1010, 1017}}, {2, {917, 1013}}, {2, {1015, 1016}}, {2, {1018, 1019}}, {2, {
1040, 1072}}, {2, {1041, 1073}}, {2, {1042, 1074}}, {2, {1043, 1075}}, {2, {1044
, 1076}}, {2, {1045, 1077}}, {2, {1046, 1078}}, {2, {1047, 1079}}, {2, {1048, 10
80}}, {2, {1049, 1081}}, {2, {1050, 1082}}, {2, {1051, 1083}}, {2, {1052, 1084}}
, {2, {1053, 1085}}, {2, {1054, 1086}}, {2, {1055, 1087}}, {2, {1056, 1088}}, {2
, {1057, 1089}}, {2, {1058, 1090}}, {2, {1059, 1091}}, {2, {1060, 1092}}, {2, {1
061, 1093}}, {2, {1062, 1094}}, {2, {1063, 1095}}, {2, {1064, 1096}}, {2, {1065,
1097}}, {2, {1066, 1098}}, {2, {1067, 1099}}, {2, {1068, 1100}}, {2, {1069, 110
1}}, {2, {1070, 1102}}, {2, {1071, 1103}}, {2, {1024, 1104}}, {2, {1025, 1105}},
{2, {1026, 1106}}, {2, {1027, 1107}}, {2, {1028, 1108}}, {2, {1029, 1109}}, {2,
{1030, 1110}}, {2, {1031, 1111}}, {2, {1032, 1112}}, {2, {1033, 1113}}, {2, {10
34, 1114}}, {2, {1035, 1115}}, {2, {1036, 1116}}, {2, {1037, 1117}}, {2, {1038,
1118}}, {2, {1039, 1119}}, {2, {1120, 1121}}, {2, {1122, 1123}}, {2, {1124, 1125
}}, {2, {1126, 1127}}, {2, {1128, 1129}}, {2, {1130, 1131}}, {2, {1132, 1133}},
{2, {1134, 1135}}, {2, {1136, 1137}}, {2, {1138, 1139}}, {2, {1140, 1141}}, {2,
{1142, 1143}}, {2, {1144, 1145}}, {2, {1146, 1147}}, {2, {1148, 1149}}, {2, {115
0, 1151}}, {2, {1152, 1153}}, {2, {1162, 1163}}, {2, {1164, 1165}}, {2, {1166, 1
167}}, {2, {1168, 1169}}, {2, {1170, 1171}}, {2, {1172, 1173}}, {2, {1174, 1175}
}, {2, {1176, 1177}}, {2, {1178, 1179}}, {2, {1180, 1181}}, {2, {1182, 1183}}, {
2, {1184, 1185}}, {2, {1186, 1187}}, {2, {1188, 1189}}, {2, {1190, 1191}}, {2, {
1192, 1193}}, {2, {1194, 1195}}, {2, {1196, 1197}}, {2, {1198, 1199}}, {2, {1200
, 1201}}, {2, {1202, 1203}}, {2, {1204, 1205}}, {2, {1206, 1207}}, {2, {1208, 12
09}}, {2, {1210, 1211}}, {2, {1212, 1213}}, {2, {1214, 1215}}, {2, {1217, 1218}}
, {2, {1219, 1220}}, {2, {1221, 1222}}, {2, {1223, 1224}}, {2, {1225, 1226}}, {2
, {1227, 1228}}, {2, {1229, 1230}}, {2, {1216, 1231}}, {2, {1232, 1233}}, {2, {1
234, 1235}}, {2, {1236, 1237}}, {2, {1238, 1239}}, {2, {1240, 1241}}, {2, {1242,
1243}}, {2, {1244, 1245}}, {2, {1246, 1247}}, {2, {1248, 1249}}, {2, {1250, 125
1}}, {2, {1252, 1253}}, {2, {1254, 1255}}, {2, {1256, 1257}}, {2, {1258, 1259}},
{2, {1260, 1261}}, {2, {1262, 1263}}, {2, {1264, 1265}}, {2, {1266, 1267}}, {2,
{1268, 1269}}, {2, {1270, 1271}}, {2, {1272, 1273}}, {2, {1274, 1275}}, {2, {12
76, 1277}}, {2, {1278, 1279}}, {2, {1280, 1281}}, {2, {1282, 1283}}, {2, {1284,
1285}}, {2, {1286, 1287}}, {2, {1288, 1289}}, {2, {1290, 1291}}, {2, {1292, 1293
}}, {2, {1294, 1295}}, {2, {1296, 1297}}, {2, {1298, 1299}}, {2, {1329, 1377}},
{2, {1330, 1378}}, {2, {1331, 1379}}, {2, {1332, 1380}}, {2, {1333, 1381}}, {2,
{1334, 1382}}, {2, {1335, 1383}}, {2, {1336, 1384}}, {2, {1337, 1385}}, {2, {133
8, 1386}}, {2, {1339, 1387}}, {2, {1340, 1388}}, {2, {1341, 1389}}, {2, {1342, 1
390}}, {2, {1343, 1391}}, {2, {1344, 1392}}, {2, {1345, 1393}}, {2, {1346, 1394}
}, {2, {1347, 1395}}, {2, {1348, 1396}}, {2, {1349, 1397}}, {2, {1350, 1398}}, {
2, {1351, 1399}}, {2, {1352, 1400}}, {2, {1353, 1401}}, {2, {1354, 1402}}, {2, {
1355, 1403}}, {2, {1356, 1404}}, {2, {1357, 1405}}, {2, {1358, 1406}}, {2, {1359
, 1407}}, {2, {1360, 1408}}, {2, {1361, 1409}}, {2, {1362, 1410}}, {2, {1363, 14
11}}, {2, {1364, 1412}}, {2, {1365, 1413}}, {2, {1366, 1414}}, {2, {7549, 11363}
}, {2, {7680, 7681}}, {2, {7682, 7683}}, {2, {7684, 7685}}, {2, {7686, 7687}}, {
2, {7688, 7689}}, {2, {7690, 7691}}, {2, {7692, 7693}}, {2, {7694, 7695}}, {2, {
7696, 7697}}, {2, {7698, 7699}}, {2, {7700, 7701}}, {2, {7702, 7703}}, {2, {7704
, 7705}}, {2, {7706, 7707}}, {2, {7708, 7709}}, {2, {7710, 7711}}, {2, {7712, 77
13}}, {2, {7714, 7715}}, {2, {7716, 7717}}, {2, {7718, 7719}}, {2, {7720, 7721}}
, {2, {7722, 7723}}, {2, {7724, 7725}}, {2, {7726, 7727}}, {2, {7728, 7729}}, {2
, {7730, 7731}}, {2, {7732, 7733}}, {2, {7734, 7735}}, {2, {7736, 7737}}, {2, {7
738, 7739}}, {2, {7740, 7741}}, {2, {7742, 7743}}, {2, {7744, 7745}}, {2, {7746,
7747}}, {2, {7748, 7749}}, {2, {7750, 7751}}, {2, {7752, 7753}}, {2, {7754, 775
5}}, {2, {7756, 7757}}, {2, {7758, 7759}}, {2, {7760, 7761}}, {2, {7762, 7763}},
{2, {7764, 7765}}, {2, {7766, 7767}}, {2, {7768, 7769}}, {2, {7770, 7771}}, {2,
{7772, 7773}}, {2, {7774, 7775}}, {2, {7776, 7777}}, {2, {7778, 7779}}, {2, {77
80, 7781}}, {2, {7782, 7783}}, {2, {7784, 7785}}, {2, {7786, 7787}}, {2, {7788,
7789}}, {2, {7790, 7791}}, {2, {7792, 7793}}, {2, {7794, 7795}}, {2, {7796, 7797
}}, {2, {7798, 7799}}, {2, {7800, 7801}}, {2, {7802, 7803}}, {2, {7804, 7805}},
{2, {7806, 7807}}, {2, {7808, 7809}}, {2, {7810, 7811}}, {2, {7812, 7813}}, {2,
{7814, 7815}}, {2, {7816, 7817}}, {2, {7818, 7819}}, {2, {7820, 7821}}, {2, {782
2, 7823}}, {2, {7824, 7825}}, {2, {7826, 7827}}, {2, {7828, 7829}}, {2, {7776, 7
835}}, {2, {7840, 7841}}, {2, {7842, 7843}}, {2, {7844, 7845}}, {2, {7846, 7847}
}, {2, {7848, 7849}}, {2, {7850, 7851}}, {2, {7852, 7853}}, {2, {7854, 7855}}, {
2, {7856, 7857}}, {2, {7858, 7859}}, {2, {7860, 7861}}, {2, {7862, 7863}}, {2, {
7864, 7865}}, {2, {7866, 7867}}, {2, {7868, 7869}}, {2, {7870, 7871}}, {2, {7872
, 7873}}, {2, {7874, 7875}}, {2, {7876, 7877}}, {2, {7878, 7879}}, {2, {7880, 78
81}}, {2, {7882, 7883}}, {2, {7884, 7885}}, {2, {7886, 7887}}, {2, {7888, 7889}}
, {2, {7890, 7891}}, {2, {7892, 7893}}, {2, {7894, 7895}}, {2, {7896, 7897}}, {2
, {7898, 7899}}, {2, {7900, 7901}}, {2, {7902, 7903}}, {2, {7904, 7905}}, {2, {7
906, 7907}}, {2, {7908, 7909}}, {2, {7910, 7911}}, {2, {7912, 7913}}, {2, {7914,
7915}}, {2, {7916, 7917}}, {2, {7918, 7919}}, {2, {7920, 7921}}, {2, {7922, 792
3}}, {2, {7924, 7925}}, {2, {7926, 7927}}, {2, {7928, 7929}}, {2, {7936, 7944}},
{2, {7937, 7945}}, {2, {7938, 7946}}, {2, {7939, 7947}}, {2, {7940, 7948}}, {2,
{7941, 7949}}, {2, {7942, 7950}}, {2, {7943, 7951}}, {2, {7952, 7960}}, {2, {79
53, 7961}}, {2, {7954, 7962}}, {2, {7955, 7963}}, {2, {7956, 7964}}, {2, {7957,
7965}}, {2, {7968, 7976}}, {2, {7969, 7977}}, {2, {7970, 7978}}, {2, {7971, 7979
}}, {2, {7972, 7980}}, {2, {7973, 7981}}, {2, {7974, 7982}}, {2, {7975, 7983}},
{2, {7984, 7992}}, {2, {7985, 7993}}, {2, {7986, 7994}}, {2, {7987, 7995}}, {2,
{7988, 7996}}, {2, {7989, 7997}}, {2, {7990, 7998}}, {2, {7991, 7999}}, {2, {800
0, 8008}}, {2, {8001, 8009}}, {2, {8002, 8010}}, {2, {8003, 8011}}, {2, {8004, 8
012}}, {2, {8005, 8013}}, {2, {8017, 8025}}, {2, {8019, 8027}}, {2, {8021, 8029}
}, {2, {8023, 8031}}, {2, {8032, 8040}}, {2, {8033, 8041}}, {2, {8034, 8042}}, {
2, {8035, 8043}}, {2, {8036, 8044}}, {2, {8037, 8045}}, {2, {8038, 8046}}, {2, {
8039, 8047}}, {2, {8048, 8122}}, {2, {8049, 8123}}, {2, {8050, 8136}}, {2, {8051
, 8137}}, {2, {8052, 8138}}, {2, {8053, 8139}}, {2, {8054, 8154}}, {2, {8055, 81
55}}, {2, {8056, 8184}}, {2, {8057, 8185}}, {2, {8058, 8170}}, {2, {8059, 8171}}
, {2, {8060, 8186}}, {2, {8061, 8187}}, {2, {8112, 8120}}, {2, {8113, 8121}}, {2
, {921, 8126}}, {2, {8144, 8152}}, {2, {8145, 8153}}, {2, {8160, 8168}}, {2, {81
61, 8169}}, {2, {8165, 8172}}, {2, {8498, 8526}}, {2, {8544, 8560}}, {2, {8545,
8561}}, {2, {8546, 8562}}, {2, {8547, 8563}}, {2, {8548, 8564}}, {2, {8549, 8565
}}, {2, {8550, 8566}}, {2, {8551, 8567}}, {2, {8552, 8568}}, {2, {8553, 8569}},
{2, {8554, 8570}}, {2, {8555, 8571}}, {2, {8556, 8572}}, {2, {8557, 8573}}, {2,
{8558, 8574}}, {2, {8559, 8575}}, {2, {8579, 8580}}, {2, {9398, 9424}}, {2, {939
9, 9425}}, {2, {9400, 9426}}, {2, {9401, 9427}}, {2, {9402, 9428}}, {2, {9403, 9
429}}, {2, {9404, 9430}}, {2, {9405, 9431}}, {2, {9406, 9432}}, {2, {9407, 9433}
}, {2, {9408, 9434}}, {2, {9409, 9435}}, {2, {9410, 9436}}, {2, {9411, 9437}}, {
2, {9412, 9438}}, {2, {9413, 9439}}, {2, {9414, 9440}}, {2, {9415, 9441}}, {2, {
9416, 9442}}, {2, {9417, 9443}}, {2, {9418, 9444}}, {2, {9419, 9445}}, {2, {9420
, 9446}}, {2, {9421, 9447}}, {2, {9422, 9448}}, {2, {9423, 9449}}, {2, {11264, 1
1312}}, {2, {11265, 11313}}, {2, {11266, 11314}}, {2, {11267, 11315}}, {2, {1126
8, 11316}}, {2, {11269, 11317}}, {2, {11270, 11318}}, {2, {11271, 11319}}, {2, {
11272, 11320}}, {2, {11273, 11321}}, {2, {11274, 11322}}, {2, {11275, 11323}}, {
2, {11276, 11324}}, {2, {11277, 11325}}, {2, {11278, 11326}}, {2, {11279, 11327}
}, {2, {11280, 11328}}, {2, {11281, 11329}}, {2, {11282, 11330}}, {2, {11283, 11
331}}, {2, {11284, 11332}}, {2, {11285, 11333}}, {2, {11286, 11334}}, {2, {11287
, 11335}}, {2, {11288, 11336}}, {2, {11289, 11337}}, {2, {11290, 11338}}, {2, {1
1291, 11339}}, {2, {11292, 11340}}, {2, {11293, 11341}}, {2, {11294, 11342}}, {2
, {11295, 11343}}, {2, {11296, 11344}}, {2, {11297, 11345}}, {2, {11298, 11346}}
, {2, {11299, 11347}}, {2, {11300, 11348}}, {2, {11301, 11349}}, {2, {11302, 113
50}}, {2, {11303, 11351}}, {2, {11304, 11352}}, {2, {11305, 11353}}, {2, {11306,
11354}}, {2, {11307, 11355}}, {2, {11308, 11356}}, {2, {11309, 11357}}, {2, {11
310, 11358}}, {2, {11360, 11361}}, {2, {570, 11365}}, {2, {574, 11366}}, {2, {11
367, 11368}}, {2, {11369, 11370}}, {2, {11371, 11372}}, {2, {11381, 11382}}, {2,
{11392, 11393}}, {2, {11394, 11395}}, {2, {11396, 11397}}, {2, {11398, 11399}},
{2, {11400, 11401}}, {2, {11402, 11403}}, {2, {11404, 11405}}, {2, {11406, 1140
7}}, {2, {11408, 11409}}, {2, {11410, 11411}}, {2, {11412, 11413}}, {2, {11414,
11415}}, {2, {11416, 11417}}, {2, {11418, 11419}}, {2, {11420, 11421}}, {2, {114
22, 11423}}, {2, {11424, 11425}}, {2, {11426, 11427}}, {2, {11428, 11429}}, {2,
{11430, 11431}}, {2, {11432, 11433}}, {2, {11434, 11435}}, {2, {11436, 11437}},
{2, {11438, 11439}}, {2, {11440, 11441}}, {2, {11442, 11443}}, {2, {11444, 11445
}}, {2, {11446, 11447}}, {2, {11448, 11449}}, {2, {11450, 11451}}, {2, {11452, 1
1453}}, {2, {11454, 11455}}, {2, {11456, 11457}}, {2, {11458, 11459}}, {2, {1146
0, 11461}}, {2, {11462, 11463}}, {2, {11464, 11465}}, {2, {11466, 11467}}, {2, {
11468, 11469}}, {2, {11470, 11471}}, {2, {11472, 11473}}, {2, {11474, 11475}}, {
2, {11476, 11477}}, {2, {11478, 11479}}, {2, {11480, 11481}}, {2, {11482, 11483}
}, {2, {11484, 11485}}, {2, {11486, 11487}}, {2, {11488, 11489}}, {2, {11490, 11
491}}, {2, {4256, 11520}}, {2, {4257, 11521}}, {2, {4258, 11522}}, {2, {4259, 11
523}}, {2, {4260, 11524}}, {2, {4261, 11525}}, {2, {4262, 11526}}, {2, {4263, 11
527}}, {2, {4264, 11528}}, {2, {4265, 11529}}, {2, {4266, 11530}}, {2, {4267, 11
531}}, {2, {4268, 11532}}, {2, {4269, 11533}}, {2, {4270, 11534}}, {2, {4271, 11
535}}, {2, {4272, 11536}}, {2, {4273, 11537}}, {2, {4274, 11538}}, {2, {4275, 11
539}}, {2, {4276, 11540}}, {2, {4277, 11541}}, {2, {4278, 11542}}, {2, {4279, 11
543}}, {2, {4280, 11544}}, {2, {4281, 11545}}, {2, {4282, 11546}}, {2, {4283, 11
547}}, {2, {4284, 11548}}, {2, {4285, 11549}}, {2, {4286, 11550}}, {2, {4287, 11
551}}, {2, {4288, 11552}}, {2, {4289, 11553}}, {2, {4290, 11554}}, {2, {4291, 11
555}}, {2, {4292, 11556}}, {2, {4293, 11557}}, {0, {0}} }; // NOLINT |
| 665 static const uint16_t kEcma262UnCanonicalizeTable0Size = 837; |
| 666 static const uint16_t kEcma262UnCanonicalizeTable0[1674] = { 97, 1, 98, 5, 99, 9
, 100, 13, 101, 17, 102, 21, 103, 25, 104, 29, 105, 33, 106, 37, 107, 41, 108, 4
5, 109, 49, 110, 53, 111, 57, 112, 61, 113, 65, 114, 69, 115, 73, 116, 77, 117,
81, 118, 85, 119, 89, 120, 93, 121, 97, 122, 101, 181, 105, 224, 109, 225, 113,
226, 117, 227, 121, 228, 125, 229, 129, 230, 133, 231, 137, 232, 141, 233, 145,
234, 149, 235, 153, 236, 157, 237, 161, 238, 165, 239, 169, 240, 173, 241, 177,
242, 181, 243, 185, 244, 189, 245, 193, 246, 197, 248, 201, 249, 205, 250, 209,
251, 213, 252, 217, 253, 221, 254, 225, 255, 229, 257, 233, 259, 237, 261, 241,
263, 245, 265, 249, 267, 253, 269, 257, 271, 261, 273, 265, 275, 269, 277, 273,
279, 277, 281, 281, 283, 285, 285, 289, 287, 293, 289, 297, 291, 301, 293, 305,
295, 309, 297, 313, 299, 317, 301, 321, 303, 325, 304, 329, 307, 333, 309, 337,
311, 341, 314, 345, 316, 349, 318, 353, 320, 357, 322, 361, 324, 365, 326, 369,
328, 373, 331, 377, 333, 381, 335, 385, 337, 389, 339, 393, 341, 397, 343, 401,
345, 405, 347, 409, 349, 413, 351, 417, 353, 421, 355, 425, 357, 429, 359, 433,
361, 437, 363, 441, 365, 445, 367, 449, 369, 453, 371, 457, 373, 461, 375, 465,
378, 469, 380, 473, 382, 477, 384, 481, 387, 485, 389, 489, 392, 493, 396, 497,
402, 501, 405, 505, 409, 509, 410, 513, 414, 517, 417, 521, 419, 525, 421, 529,
424, 533, 429, 537, 432, 541, 436, 545, 438, 549, 441, 553, 445, 557, 447, 561,
453, 565, 454, 569, 456, 573, 457, 577, 459, 581, 460, 585, 462, 589, 464, 593,
466, 597, 468, 601, 470, 605, 472, 609, 474, 613, 476, 617, 477, 621, 479, 625,
481, 629, 483, 633, 485, 637, 487, 641, 489, 645, 491, 649, 493, 653, 495, 657,
498, 661, 499, 665, 501, 669, 505, 673, 507, 677, 509, 681, 511, 685, 513, 689,
515, 693, 517, 697, 519, 701, 521, 705, 523, 709, 525, 713, 527, 717, 529, 721,
531, 725, 533, 729, 535, 733, 537, 737, 539, 741, 541, 745, 543, 749, 547, 753,
549, 757, 551, 761, 553, 765, 555, 769, 557, 773, 559, 777, 561, 781, 563, 785,
572, 789, 578, 793, 583, 797, 585, 801, 587, 805, 589, 809, 591, 813, 595, 817,
596, 821, 598, 825, 599, 829, 601, 833, 603, 837, 608, 841, 611, 845, 616, 849,
617, 853, 619, 857, 623, 861, 626, 865, 629, 869, 637, 873, 640, 877, 643, 881,
648, 885, 649, 889, 650, 893, 651, 897, 652, 901, 658, 905, 837, 909, 891, 913,
892, 917, 893, 921, 940, 925, 941, 929, 942, 933, 943, 937, 945, 941, 946, 945,
947, 949, 948, 953, 949, 957, 950, 961, 951, 965, 952, 969, 953, 973, 954, 977,
955, 981, 956, 985, 957, 989, 958, 993, 959, 997, 960, 1001, 961, 1005, 962, 100
9, 963, 1013, 964, 1017, 965, 1021, 966, 1025, 967, 1029, 968, 1033, 969, 1037,
970, 1041, 971, 1045, 972, 1049, 973, 1053, 974, 1057, 976, 1061, 977, 1065, 981
, 1069, 982, 1073, 985, 1077, 987, 1081, 989, 1085, 991, 1089, 993, 1093, 995, 1
097, 997, 1101, 999, 1105, 1001, 1109, 1003, 1113, 1005, 1117, 1007, 1121, 1008,
1125, 1009, 1129, 1010, 1133, 1013, 1137, 1016, 1141, 1019, 1145, 1072, 1149, 1
073, 1153, 1074, 1157, 1075, 1161, 1076, 1165, 1077, 1169, 1078, 1173, 1079, 117
7, 1080, 1181, 1081, 1185, 1082, 1189, 1083, 1193, 1084, 1197, 1085, 1201, 1086,
1205, 1087, 1209, 1088, 1213, 1089, 1217, 1090, 1221, 1091, 1225, 1092, 1229, 1
093, 1233, 1094, 1237, 1095, 1241, 1096, 1245, 1097, 1249, 1098, 1253, 1099, 125
7, 1100, 1261, 1101, 1265, 1102, 1269, 1103, 1273, 1104, 1277, 1105, 1281, 1106,
1285, 1107, 1289, 1108, 1293, 1109, 1297, 1110, 1301, 1111, 1305, 1112, 1309, 1
113, 1313, 1114, 1317, 1115, 1321, 1116, 1325, 1117, 1329, 1118, 1333, 1119, 133
7, 1121, 1341, 1123, 1345, 1125, 1349, 1127, 1353, 1129, 1357, 1131, 1361, 1133,
1365, 1135, 1369, 1137, 1373, 1139, 1377, 1141, 1381, 1143, 1385, 1145, 1389, 1
147, 1393, 1149, 1397, 1151, 1401, 1153, 1405, 1163, 1409, 1165, 1413, 1167, 141
7, 1169, 1421, 1171, 1425, 1173, 1429, 1175, 1433, 1177, 1437, 1179, 1441, 1181,
1445, 1183, 1449, 1185, 1453, 1187, 1457, 1189, 1461, 1191, 1465, 1193, 1469, 1
195, 1473, 1197, 1477, 1199, 1481, 1201, 1485, 1203, 1489, 1205, 1493, 1207, 149
7, 1209, 1501, 1211, 1505, 1213, 1509, 1215, 1513, 1218, 1517, 1220, 1521, 1222,
1525, 1224, 1529, 1226, 1533, 1228, 1537, 1230, 1541, 1231, 1545, 1233, 1549, 1
235, 1553, 1237, 1557, 1239, 1561, 1241, 1565, 1243, 1569, 1245, 1573, 1247, 157
7, 1249, 1581, 1251, 1585, 1253, 1589, 1255, 1593, 1257, 1597, 1259, 1601, 1261,
1605, 1263, 1609, 1265, 1613, 1267, 1617, 1269, 1621, 1271, 1625, 1273, 1629, 1
275, 1633, 1277, 1637, 1279, 1641, 1281, 1645, 1283, 1649, 1285, 1653, 1287, 165
7, 1289, 1661, 1291, 1665, 1293, 1669, 1295, 1673, 1297, 1677, 1299, 1681, 1377,
1685, 1378, 1689, 1379, 1693, 1380, 1697, 1381, 1701, 1382, 1705, 1383, 1709, 1
384, 1713, 1385, 1717, 1386, 1721, 1387, 1725, 1388, 1729, 1389, 1733, 1390, 173
7, 1391, 1741, 1392, 1745, 1393, 1749, 1394, 1753, 1395, 1757, 1396, 1761, 1397,
1765, 1398, 1769, 1399, 1773, 1400, 1777, 1401, 1781, 1402, 1785, 1403, 1789, 1
404, 1793, 1405, 1797, 1406, 1801, 1407, 1805, 1408, 1809, 1409, 1813, 1410, 181
7, 1411, 1821, 1412, 1825, 1413, 1829, 1414, 1833, 7549, 1837, 7681, 1841, 7683,
1845, 7685, 1849, 7687, 1853, 7689, 1857, 7691, 1861, 7693, 1865, 7695, 1869, 7
697, 1873, 7699, 1877, 7701, 1881, 7703, 1885, 7705, 1889, 7707, 1893, 7709, 189
7, 7711, 1901, 7713, 1905, 7715, 1909, 7717, 1913, 7719, 1917, 7721, 1921, 7723,
1925, 7725, 1929, 7727, 1933, 7729, 1937, 7731, 1941, 7733, 1945, 7735, 1949, 7
737, 1953, 7739, 1957, 7741, 1961, 7743, 1965, 7745, 1969, 7747, 1973, 7749, 197
7, 7751, 1981, 7753, 1985, 7755, 1989, 7757, 1993, 7759, 1997, 7761, 2001, 7763,
2005, 7765, 2009, 7767, 2013, 7769, 2017, 7771, 2021, 7773, 2025, 7775, 2029, 7
777, 2033, 7779, 2037, 7781, 2041, 7783, 2045, 7785, 2049, 7787, 2053, 7789, 205
7, 7791, 2061, 7793, 2065, 7795, 2069, 7797, 2073, 7799, 2077, 7801, 2081, 7803,
2085, 7805, 2089, 7807, 2093, 7809, 2097, 7811, 2101, 7813, 2105, 7815, 2109, 7
817, 2113, 7819, 2117, 7821, 2121, 7823, 2125, 7825, 2129, 7827, 2133, 7829, 213
7, 7835, 2141, 7841, 2145, 7843, 2149, 7845, 2153, 7847, 2157, 7849, 2161, 7851,
2165, 7853, 2169, 7855, 2173, 7857, 2177, 7859, 2181, 7861, 2185, 7863, 2189, 7
865, 2193, 7867, 2197, 7869, 2201, 7871, 2205, 7873, 2209, 7875, 2213, 7877, 221
7, 7879, 2221, 7881, 2225, 7883, 2229, 7885, 2233, 7887, 2237, 7889, 2241, 7891,
2245, 7893, 2249, 7895, 2253, 7897, 2257, 7899, 2261, 7901, 2265, 7903, 2269, 7
905, 2273, 7907, 2277, 7909, 2281, 7911, 2285, 7913, 2289, 7915, 2293, 7917, 229
7, 7919, 2301, 7921, 2305, 7923, 2309, 7925, 2313, 7927, 2317, 7929, 2321, 7936,
2325, 7937, 2329, 7938, 2333, 7939, 2337, 7940, 2341, 7941, 2345, 7942, 2349, 7
943, 2353, 7952, 2357, 7953, 2361, 7954, 2365, 7955, 2369, 7956, 2373, 7957, 237
7, 7968, 2381, 7969, 2385, 7970, 2389, 7971, 2393, 7972, 2397, 7973, 2401, 7974,
2405, 7975, 2409, 7984, 2413, 7985, 2417, 7986, 2421, 7987, 2425, 7988, 2429, 7
989, 2433, 7990, 2437, 7991, 2441, 8000, 2445, 8001, 2449, 8002, 2453, 8003, 245
7, 8004, 2461, 8005, 2465, 8017, 2469, 8019, 2473, 8021, 2477, 8023, 2481, 8032,
2485, 8033, 2489, 8034, 2493, 8035, 2497, 8036, 2501, 8037, 2505, 8038, 2509, 8
039, 2513, 8048, 2517, 8049, 2521, 8050, 2525, 8051, 2529, 8052, 2533, 8053, 253
7, 8054, 2541, 8055, 2545, 8056, 2549, 8057, 2553, 8058, 2557, 8059, 2561, 8060,
2565, 8061, 2569, 8112, 2573, 8113, 2577, 8126, 2581, 8144, 2585, 8145, 2589, 8
160, 2593, 8161, 2597, 8165, 2601, 8526, 2605, 8560, 2609, 8561, 2613, 8562, 261
7, 8563, 2621, 8564, 2625, 8565, 2629, 8566, 2633, 8567, 2637, 8568, 2641, 8569,
2645, 8570, 2649, 8571, 2653, 8572, 2657, 8573, 2661, 8574, 2665, 8575, 2669, 8
580, 2673, 9424, 2677, 9425, 2681, 9426, 2685, 9427, 2689, 9428, 2693, 9429, 269
7, 9430, 2701, 9431, 2705, 9432, 2709, 9433, 2713, 9434, 2717, 9435, 2721, 9436,
2725, 9437, 2729, 9438, 2733, 9439, 2737, 9440, 2741, 9441, 2745, 9442, 2749, 9
443, 2753, 9444, 2757, 9445, 2761, 9446, 2765, 9447, 2769, 9448, 2773, 9449, 277
7, 11312, 2781, 11313, 2785, 11314, 2789, 11315, 2793, 11316, 2797, 11317, 2801,
11318, 2805, 11319, 2809, 11320, 2813, 11321, 2817, 11322, 2821, 11323, 2825, 1
1324, 2829, 11325, 2833, 11326, 2837, 11327, 2841, 11328, 2845, 11329, 2849, 113
30, 2853, 11331, 2857, 11332, 2861, 11333, 2865, 11334, 2869, 11335, 2873, 11336
, 2877, 11337, 2881, 11338, 2885, 11339, 2889, 11340, 2893, 11341, 2897, 11342,
2901, 11343, 2905, 11344, 2909, 11345, 2913, 11346, 2917, 11347, 2921, 11348, 29
25, 11349, 2929, 11350, 2933, 11351, 2937, 11352, 2941, 11353, 2945, 11354, 2949
, 11355, 2953, 11356, 2957, 11357, 2961, 11358, 2965, 11361, 2969, 11365, 2973,
11366, 2977, 11368, 2981, 11370, 2985, 11372, 2989, 11382, 2993, 11393, 2997, 11
395, 3001, 11397, 3005, 11399, 3009, 11401, 3013, 11403, 3017, 11405, 3021, 1140
7, 3025, 11409, 3029, 11411, 3033, 11413, 3037, 11415, 3041, 11417, 3045, 11419,
3049, 11421, 3053, 11423, 3057, 11425, 3061, 11427, 3065, 11429, 3069, 11431, 3
073, 11433, 3077, 11435, 3081, 11437, 3085, 11439, 3089, 11441, 3093, 11443, 309
7, 11445, 3101, 11447, 3105, 11449, 3109, 11451, 3113, 11453, 3117, 11455, 3121,
11457, 3125, 11459, 3129, 11461, 3133, 11463, 3137, 11465, 3141, 11467, 3145, 1
1469, 3149, 11471, 3153, 11473, 3157, 11475, 3161, 11477, 3165, 11479, 3169, 114
81, 3173, 11483, 3177, 11485, 3181, 11487, 3185, 11489, 3189, 11491, 3193, 11520
, 3197, 11521, 3201, 11522, 3205, 11523, 3209, 11524, 3213, 11525, 3217, 11526,
3221, 11527, 3225, 11528, 3229, 11529, 3233, 11530, 3237, 11531, 3241, 11532, 32
45, 11533, 3249, 11534, 3253, 11535, 3257, 11536, 3261, 11537, 3265, 11538, 3269
, 11539, 3273, 11540, 3277, 11541, 3281, 11542, 3285, 11543, 3289, 11544, 3293,
11545, 3297, 11546, 3301, 11547, 3305, 11548, 3309, 11549, 3313, 11550, 3317, 11
551, 3321, 11552, 3325, 11553, 3329, 11554, 3333, 11555, 3337, 11556, 3341, 1155
7, 3345 }; // NOLINT |
| 667 static const MultiCharacterSpecialCase kEcma262UnCanonicalizeMultiStrings1[] = {
{2, {65313, 65345}}, {2, {65314, 65346}}, {2, {65315, 65347}}, {2, {65316, 6534
8}}, {2, {65317, 65349}}, {2, {65318, 65350}}, {2, {65319, 65351}}, {2, {65320,
65352}}, {2, {65321, 65353}}, {2, {65322, 65354}}, {2, {65323, 65355}}, {2, {653
24, 65356}}, {2, {65325, 65357}}, {2, {65326, 65358}}, {2, {65327, 65359}}, {2,
{65328, 65360}}, {2, {65329, 65361}}, {2, {65330, 65362}}, {2, {65331, 65363}},
{2, {65332, 65364}}, {2, {65333, 65365}}, {2, {65334, 65366}}, {2, {65335, 65367
}}, {2, {65336, 65368}}, {2, {65337, 65369}}, {2, {65338, 65370}}, {0, {0}} }; /
/ NOLINT |
| 668 static const uint16_t kEcma262UnCanonicalizeTable1Size = 26; |
| 669 static const uint16_t kEcma262UnCanonicalizeTable1[52] = { 32577, 1, 32578, 5, 3
2579, 9, 32580, 13, 32581, 17, 32582, 21, 32583, 25, 32584, 29, 32585, 33, 32586
, 37, 32587, 41, 32588, 45, 32589, 49, 32590, 53, 32591, 57, 32592, 61, 32593, 6
5, 32594, 69, 32595, 73, 32596, 77, 32597, 81, 32598, 85, 32599, 89, 32600, 93,
32601, 97, 32602, 101 }; // NOLINT |
| 670 static const MultiCharacterSpecialCase kEcma262UnCanonicalizeMultiStrings2[] = {
{2, {66560, 66600}}, {2, {66561, 66601}}, {2, {66562, 66602}}, {2, {66563, 6660
3}}, {2, {66564, 66604}}, {2, {66565, 66605}}, {2, {66566, 66606}}, {2, {66567,
66607}}, {2, {66568, 66608}}, {2, {66569, 66609}}, {2, {66570, 66610}}, {2, {665
71, 66611}}, {2, {66572, 66612}}, {2, {66573, 66613}}, {2, {66574, 66614}}, {2,
{66575, 66615}}, {2, {66576, 66616}}, {2, {66577, 66617}}, {2, {66578, 66618}},
{2, {66579, 66619}}, {2, {66580, 66620}}, {2, {66581, 66621}}, {2, {66582, 66622
}}, {2, {66583, 66623}}, {2, {66584, 66624}}, {2, {66585, 66625}}, {2, {66586, 6
6626}}, {2, {66587, 66627}}, {2, {66588, 66628}}, {2, {66589, 66629}}, {2, {6659
0, 66630}}, {2, {66591, 66631}}, {2, {66592, 66632}}, {2, {66593, 66633}}, {2, {
66594, 66634}}, {2, {66595, 66635}}, {2, {66596, 66636}}, {2, {66597, 66637}}, {
2, {66598, 66638}}, {2, {66599, 66639}}, {0, {0}} }; // NOLINT |
| 671 static const uint16_t kEcma262UnCanonicalizeTable2Size = 40; |
| 672 static const uint16_t kEcma262UnCanonicalizeTable2[80] = { 1064, 1, 1065, 5, 106
6, 9, 1067, 13, 1068, 17, 1069, 21, 1070, 25, 1071, 29, 1072, 33, 1073, 37, 1074
, 41, 1075, 45, 1076, 49, 1077, 53, 1078, 57, 1079, 61, 1080, 65, 1081, 69, 1082
, 73, 1083, 77, 1084, 81, 1085, 85, 1086, 89, 1087, 93, 1088, 97, 1089, 101, 109
0, 105, 1091, 109, 1092, 113, 1093, 117, 1094, 121, 1095, 125, 1096, 129, 1097,
133, 1098, 137, 1099, 141, 1100, 145, 1101, 149, 1102, 153, 1103, 157 }; // NOLI
NT |
| 673 int Ecma262UnCanonicalize::Convert(uchar c, |
| 674 uchar n, |
| 675 uchar* result, |
| 676 bool* allow_caching_ptr) { |
| 677 int chunk_index = c >> 15; |
| 678 switch (chunk_index) { |
| 679 case 0: return LookupMapping(kEcma262UnCanonicalizeTable0, |
| 680 kEcma262UnCanonicalizeTable0Size, |
| 681 kEcma262UnCanonicalizeMultiStrings0, |
| 682 c, |
| 683 n, |
| 684 result, |
| 685 allow_caching_ptr); |
| 686 case 1: return LookupMapping(kEcma262UnCanonicalizeTable1, |
| 687 kEcma262UnCanonicalizeTable1Size, |
| 688 kEcma262UnCanonicalizeMultiStrings1, |
| 689 c, |
| 690 n, |
| 691 result, |
| 692 allow_caching_ptr); |
| 693 case 2: return LookupMapping(kEcma262UnCanonicalizeTable2, |
| 694 kEcma262UnCanonicalizeTable2Size, |
| 695 kEcma262UnCanonicalizeMultiStrings2, |
| 696 c, |
| 697 n, |
| 698 result, |
| 699 allow_caching_ptr); |
| 700 default: return 0; |
| 701 } |
| 702 } |
| 703 |
| 809 | 704 |
| 810 uchar UnicodeData::kMaxCodePoint = 1114109; | 705 uchar UnicodeData::kMaxCodePoint = 1114109; |
| 811 | 706 |
| 812 int UnicodeData::GetByteCount() { | 707 int UnicodeData::GetByteCount() { |
| 813 return 0 + (sizeof(uint16_t) * kUppercaseTable0Size) + (sizeof(uint16_t) * kUp
percaseTable1Size) + (sizeof(uint16_t) * kUppercaseTable2Size) + (sizeof(uint16_
t) * kUppercaseTable3Size) + (sizeof(uint16_t) * kLowercaseTable0Size) + (sizeof
(uint16_t) * kLowercaseTable1Size) + (sizeof(uint16_t) * kLowercaseTable2Size) +
(sizeof(uint16_t) * kLowercaseTable3Size) + (sizeof(uint16_t) * kLetterTable0Si
ze) + (sizeof(uint16_t) * kLetterTable1Size) + (sizeof(uint16_t) * kLetterTable2
Size) + (sizeof(uint16_t) * kLetterTable3Size) + (sizeof(uint16_t) * kLetterTabl
e4Size) + (sizeof(uint16_t) * kLetterTable5Size) + (sizeof(uint16_t) * kSpaceTab
le0Size) + (sizeof(uint16_t) * kTitlecaseTable0Size) + (sizeof(uint16_t) * kNumb
erTable0Size) + (sizeof(uint16_t) * kNumberTable1Size) + (sizeof(uint16_t) * kNu
mberTable2Size) + (sizeof(uint16_t) * kNumberTable3Size) + (sizeof(uint16_t) * k
DecimalDigitTable0Size) + (sizeof(uint16_t) * kDecimalDigitTable1Size) + (sizeof
(uint16_t) * kDecimalDigitTable2Size) + (sizeof(uint16_t) * kDecimalDigitTable3S
ize) + (sizeof(uint16_t) * kIdeographicTable0Size) + (sizeof(uint16_t) * kIdeogr
aphicTable1Size) + (sizeof(uint16_t) * kIdeographicTable4Size) + (sizeof(uint16_
t) * kIdeographicTable5Size) + (sizeof(uint16_t) * kWhiteSpaceTable0Size) + (siz
eof(uint16_t) * kHexDigitTable0Size) + (sizeof(uint16_t) * kHexDigitTable1Size)
+ (sizeof(uint16_t) * kAsciiHexDigitTable0Size) + (sizeof(uint16_t) * kBidiContr
olTable0Size) + (sizeof(uint16_t) * kJoinControlTable0Size) + (sizeof(uint16_t)
* kDashTable0Size) + (sizeof(uint16_t) * kDashTable1Size) + (sizeof(uint16_t) *
kHyphenTable0Size) + (sizeof(uint16_t) * kHyphenTable1Size) + (sizeof(uint16_t)
* kLineTerminatorTable0Size) + (sizeof(uint16_t) * kRegExpSpecialCharTable0Size)
+ (sizeof(uint16_t) * kCombiningMarkTable0Size) + (sizeof(uint16_t) * kCombinin
gMarkTable1Size) + (sizeof(uint16_t) * kCombiningMarkTable2Size) + (sizeof(uint1
6_t) * kCombiningMarkTable3Size) + (sizeof(uint16_t) * kCombiningMarkTable28Size
) + (sizeof(uint16_t) * kConnectorPunctuationTable0Size) + (sizeof(uint16_t) * k
ConnectorPunctuationTable1Size) + (sizeof(uint16_t) * kToLowercaseTable0Size) +
(sizeof(uint16_t) * kToLowercaseTable1Size) + (sizeof(uint16_t) * kToLowercaseTa
ble2Size) + (sizeof(uint16_t) * kToUppercaseTable0Size) + (sizeof(uint16_t) * kT
oUppercaseTable1Size) + (sizeof(uint16_t) * kToUppercaseTable2Size); // NOLINT | 708 return 0 + (sizeof(uint16_t) * kUppercaseTable0Size) + (sizeof(uint16_t) * kUp
percaseTable1Size) + (sizeof(uint16_t) * kUppercaseTable2Size) + (sizeof(uint16_
t) * kUppercaseTable3Size) + (sizeof(uint16_t) * kLowercaseTable0Size) + (sizeof
(uint16_t) * kLowercaseTable1Size) + (sizeof(uint16_t) * kLowercaseTable2Size) +
(sizeof(uint16_t) * kLowercaseTable3Size) + (sizeof(uint16_t) * kLetterTable0Si
ze) + (sizeof(uint16_t) * kLetterTable1Size) + (sizeof(uint16_t) * kLetterTable2
Size) + (sizeof(uint16_t) * kLetterTable3Size) + (sizeof(uint16_t) * kLetterTabl
e4Size) + (sizeof(uint16_t) * kLetterTable5Size) + (sizeof(uint16_t) * kSpaceTab
le0Size) + (sizeof(uint16_t) * kNumberTable0Size) + (sizeof(uint16_t) * kNumberT
able1Size) + (sizeof(uint16_t) * kNumberTable2Size) + (sizeof(uint16_t) * kNumbe
rTable3Size) + (sizeof(uint16_t) * kWhiteSpaceTable0Size) + (sizeof(uint16_t) *
kLineTerminatorTable0Size) + (sizeof(uint16_t) * kCombiningMarkTable0Size) + (si
zeof(uint16_t) * kCombiningMarkTable1Size) + (sizeof(uint16_t) * kCombiningMarkT
able2Size) + (sizeof(uint16_t) * kCombiningMarkTable3Size) + (sizeof(uint16_t) *
kCombiningMarkTable28Size) + (sizeof(uint16_t) * kConnectorPunctuationTable0Siz
e) + (sizeof(uint16_t) * kConnectorPunctuationTable1Size) + (sizeof(uint16_t) *
kToLowercaseTable0Size) + (sizeof(uint16_t) * kToLowercaseTable1Size) + (sizeof(
uint16_t) * kToLowercaseTable2Size) + (sizeof(uint16_t) * kToUppercaseTable0Size
) + (sizeof(uint16_t) * kToUppercaseTable1Size) + (sizeof(uint16_t) * kToUpperca
seTable2Size) + (sizeof(uint16_t) * kEcma262CanonicalizeTable0Size) + (sizeof(ui
nt16_t) * kEcma262CanonicalizeTable1Size) + (sizeof(uint16_t) * kEcma262Canonica
lizeTable2Size) + (sizeof(uint16_t) * kEcma262UnCanonicalizeTable0Size) + (sizeo
f(uint16_t) * kEcma262UnCanonicalizeTable1Size) + (sizeof(uint16_t) * kEcma262Un
CanonicalizeTable2Size); // NOLINT |
| 814 } | 709 } |
| 815 | 710 |
| 816 } // namespace unicode | 711 } // namespace unicode |
| OLD | NEW |