| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 2012-03-06 09:55:58.934483 | 28 // This file was generated at 2014-02-07 15:31:16.733174 |
| 29 | 29 |
| 30 #include "unicode-inl.h" | 30 #include "unicode-inl.h" |
| 31 #include <stdlib.h> | 31 #include <stdlib.h> |
| 32 #include <stdio.h> | 32 #include <stdio.h> |
| 33 | 33 |
| 34 namespace unibrow { | 34 namespace unibrow { |
| 35 | 35 |
| 36 static const int kStartBit = (1 << 30); | 36 static const int kStartBit = (1 << 30); |
| 37 static const int kChunkBits = (1 << 13); | 37 static const int kChunkBits = (1 << 13); |
| 38 static const uchar kSentinel = static_cast<uchar>(-1); | 38 static const uchar kSentinel = static_cast<uchar>(-1); |
| (...skipping 664 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 703 kLetterTable6Size, | 703 kLetterTable6Size, |
| 704 c); | 704 c); |
| 705 case 7: return LookupPredicate(kLetterTable7, | 705 case 7: return LookupPredicate(kLetterTable7, |
| 706 kLetterTable7Size, | 706 kLetterTable7Size, |
| 707 c); | 707 c); |
| 708 default: return false; | 708 default: return false; |
| 709 } | 709 } |
| 710 } | 710 } |
| 711 | 711 |
| 712 | 712 |
| 713 // Space: point.category == 'Zs' | |
| 714 | |
| 715 static const uint16_t kSpaceTable0Size = 4; | |
| 716 static const int32_t kSpaceTable0[4] = { | |
| 717 32, 160, 5760, 6158 }; // NOLINT | |
| 718 static const uint16_t kSpaceTable1Size = 5; | |
| 719 static const int32_t kSpaceTable1[5] = { | |
| 720 1073741824, 10, 47, 95, 4096 }; // NOLINT | |
| 721 bool Space::Is(uchar c) { | |
| 722 int chunk_index = c >> 13; | |
| 723 switch (chunk_index) { | |
| 724 case 0: return LookupPredicate(kSpaceTable0, | |
| 725 kSpaceTable0Size, | |
| 726 c); | |
| 727 case 1: return LookupPredicate(kSpaceTable1, | |
| 728 kSpaceTable1Size, | |
| 729 c); | |
| 730 default: return false; | |
| 731 } | |
| 732 } | |
| 733 | |
| 734 | |
| 735 // Number: point.category == 'Nd' | 713 // Number: point.category == 'Nd' |
| 736 | 714 |
| 737 static const uint16_t kNumberTable0Size = 56; | 715 static const uint16_t kNumberTable0Size = 56; |
| 738 static const int32_t kNumberTable0[56] = { | 716 static const int32_t kNumberTable0[56] = { |
| 739 1073741872, 57, 1073743456, 1641, 1073743600, 1785, 1073743808, 1993, // NOLI
NT | 717 1073741872, 57, 1073743456, 1641, 1073743600, 1785, 1073743808, 1993, // NOLI
NT |
| 740 1073744230, 2415, 1073744358, 2543, 1073744486, 2671, 1073744614, 2799, // NO
LINT | 718 1073744230, 2415, 1073744358, 2543, 1073744486, 2671, 1073744614, 2799, // NO
LINT |
| 741 1073744742, 2927, 1073744870, 3055, 1073744998, 3183, 1073745126, 3311, // NO
LINT | 719 1073744742, 2927, 1073744870, 3055, 1073744998, 3183, 1073745126, 3311, // NO
LINT |
| 742 1073745254, 3439, 1073745488, 3673, 1073745616, 3801, 1073745696, 3881, // NO
LINT | 720 1073745254, 3439, 1073745488, 3673, 1073745616, 3801, 1073745696, 3881, // NO
LINT |
| 743 1073745984, 4169, 1073746064, 4249, 1073747936, 6121, 1073747984, 6169, // NO
LINT | 721 1073745984, 4169, 1073746064, 4249, 1073747936, 6121, 1073747984, 6169, // NO
LINT |
| 744 1073748294, 6479, 1073748432, 6617, 1073748608, 6793, 1073748624, 6809, // NO
LINT | 722 1073748294, 6479, 1073748432, 6617, 1073748608, 6793, 1073748624, 6809, // NO
LINT |
| (...skipping 15 matching lines...) Expand all Loading... |
| 760 kNumberTable5Size, | 738 kNumberTable5Size, |
| 761 c); | 739 c); |
| 762 case 7: return LookupPredicate(kNumberTable7, | 740 case 7: return LookupPredicate(kNumberTable7, |
| 763 kNumberTable7Size, | 741 kNumberTable7Size, |
| 764 c); | 742 c); |
| 765 default: return false; | 743 default: return false; |
| 766 } | 744 } |
| 767 } | 745 } |
| 768 | 746 |
| 769 | 747 |
| 770 // WhiteSpace: 'Ws' in point.properties | 748 // WhiteSpace: point.category == 'Zs' |
| 771 | 749 |
| 772 static const uint16_t kWhiteSpaceTable0Size = 7; | 750 static const uint16_t kWhiteSpaceTable0Size = 4; |
| 773 static const int32_t kWhiteSpaceTable0[7] = { | 751 static const int32_t kWhiteSpaceTable0[4] = { |
| 774 1073741833, 13, 32, 133, 160, 5760, 6158 }; // NOLINT | 752 32, 160, 5760, 6158 }; // NOLINT |
| 775 static const uint16_t kWhiteSpaceTable1Size = 7; | 753 static const uint16_t kWhiteSpaceTable1Size = 5; |
| 776 static const int32_t kWhiteSpaceTable1[7] = { | 754 static const int32_t kWhiteSpaceTable1[5] = { |
| 777 1073741824, 10, 1073741864, 41, 47, 95, 4096 }; // NOLINT | 755 1073741824, 10, 47, 95, 4096 }; // NOLINT |
| 778 bool WhiteSpace::Is(uchar c) { | 756 bool WhiteSpace::Is(uchar c) { |
| 779 int chunk_index = c >> 13; | 757 int chunk_index = c >> 13; |
| 780 switch (chunk_index) { | 758 switch (chunk_index) { |
| 781 case 0: return LookupPredicate(kWhiteSpaceTable0, | 759 case 0: return LookupPredicate(kWhiteSpaceTable0, |
| 782 kWhiteSpaceTable0Size, | 760 kWhiteSpaceTable0Size, |
| 783 c); | 761 c); |
| 784 case 1: return LookupPredicate(kWhiteSpaceTable1, | 762 case 1: return LookupPredicate(kWhiteSpaceTable1, |
| 785 kWhiteSpaceTable1Size, | 763 kWhiteSpaceTable1Size, |
| 786 c); | 764 c); |
| 787 default: return false; | 765 default: return false; |
| (...skipping 1038 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1826 + kLowercaseTable5Size * sizeof(int32_t) // NOLINT | 1804 + kLowercaseTable5Size * sizeof(int32_t) // NOLINT |
| 1827 + kLowercaseTable7Size * sizeof(int32_t) // NOLINT | 1805 + kLowercaseTable7Size * sizeof(int32_t) // NOLINT |
| 1828 + kLetterTable0Size * sizeof(int32_t) // NOLINT | 1806 + kLetterTable0Size * sizeof(int32_t) // NOLINT |
| 1829 + kLetterTable1Size * sizeof(int32_t) // NOLINT | 1807 + kLetterTable1Size * sizeof(int32_t) // NOLINT |
| 1830 + kLetterTable2Size * sizeof(int32_t) // NOLINT | 1808 + kLetterTable2Size * sizeof(int32_t) // NOLINT |
| 1831 + kLetterTable3Size * sizeof(int32_t) // NOLINT | 1809 + kLetterTable3Size * sizeof(int32_t) // NOLINT |
| 1832 + kLetterTable4Size * sizeof(int32_t) // NOLINT | 1810 + kLetterTable4Size * sizeof(int32_t) // NOLINT |
| 1833 + kLetterTable5Size * sizeof(int32_t) // NOLINT | 1811 + kLetterTable5Size * sizeof(int32_t) // NOLINT |
| 1834 + kLetterTable6Size * sizeof(int32_t) // NOLINT | 1812 + kLetterTable6Size * sizeof(int32_t) // NOLINT |
| 1835 + kLetterTable7Size * sizeof(int32_t) // NOLINT | 1813 + kLetterTable7Size * sizeof(int32_t) // NOLINT |
| 1836 + kSpaceTable0Size * sizeof(int32_t) // NOLINT | |
| 1837 + kSpaceTable1Size * sizeof(int32_t) // NOLINT | |
| 1838 + kNumberTable0Size * sizeof(int32_t) // NOLINT | 1814 + kNumberTable0Size * sizeof(int32_t) // NOLINT |
| 1839 + kNumberTable5Size * sizeof(int32_t) // NOLINT | 1815 + kNumberTable5Size * sizeof(int32_t) // NOLINT |
| 1840 + kNumberTable7Size * sizeof(int32_t) // NOLINT | 1816 + kNumberTable7Size * sizeof(int32_t) // NOLINT |
| 1841 + kWhiteSpaceTable0Size * sizeof(int32_t) // NOLINT | 1817 + kWhiteSpaceTable0Size * sizeof(int32_t) // NOLINT |
| 1842 + kWhiteSpaceTable1Size * sizeof(int32_t) // NOLINT | 1818 + kWhiteSpaceTable1Size * sizeof(int32_t) // NOLINT |
| 1843 + kLineTerminatorTable0Size * sizeof(int32_t) // NOLINT | 1819 + kLineTerminatorTable0Size * sizeof(int32_t) // NOLINT |
| 1844 + kLineTerminatorTable1Size * sizeof(int32_t) // NOLINT | 1820 + kLineTerminatorTable1Size * sizeof(int32_t) // NOLINT |
| 1845 + kCombiningMarkTable0Size * sizeof(int32_t) // NOLINT | 1821 + kCombiningMarkTable0Size * sizeof(int32_t) // NOLINT |
| 1846 + kCombiningMarkTable1Size * sizeof(int32_t) // NOLINT | 1822 + kCombiningMarkTable1Size * sizeof(int32_t) // NOLINT |
| 1847 + kCombiningMarkTable5Size * sizeof(int32_t) // NOLINT | 1823 + kCombiningMarkTable5Size * sizeof(int32_t) // NOLINT |
| (...skipping 16 matching lines...) Expand all Loading... |
| 1864 + kEcma262UnCanonicalizeMultiStrings0Size * sizeof(MultiCharacterSpecialCa
se<4>) // NOLINT | 1840 + kEcma262UnCanonicalizeMultiStrings0Size * sizeof(MultiCharacterSpecialCa
se<4>) // NOLINT |
| 1865 + kEcma262UnCanonicalizeMultiStrings1Size * sizeof(MultiCharacterSpecialCa
se<2>) // NOLINT | 1841 + kEcma262UnCanonicalizeMultiStrings1Size * sizeof(MultiCharacterSpecialCa
se<2>) // NOLINT |
| 1866 + kEcma262UnCanonicalizeMultiStrings5Size * sizeof(MultiCharacterSpecialCa
se<2>) // NOLINT | 1842 + kEcma262UnCanonicalizeMultiStrings5Size * sizeof(MultiCharacterSpecialCa
se<2>) // NOLINT |
| 1867 + kEcma262UnCanonicalizeMultiStrings7Size * sizeof(MultiCharacterSpecialCa
se<2>) // NOLINT | 1843 + kEcma262UnCanonicalizeMultiStrings7Size * sizeof(MultiCharacterSpecialCa
se<2>) // NOLINT |
| 1868 + kCanonicalizationRangeMultiStrings0Size * sizeof(MultiCharacterSpecialCa
se<1>) // NOLINT | 1844 + kCanonicalizationRangeMultiStrings0Size * sizeof(MultiCharacterSpecialCa
se<1>) // NOLINT |
| 1869 + kCanonicalizationRangeMultiStrings1Size * sizeof(MultiCharacterSpecialCa
se<1>) // NOLINT | 1845 + kCanonicalizationRangeMultiStrings1Size * sizeof(MultiCharacterSpecialCa
se<1>) // NOLINT |
| 1870 + kCanonicalizationRangeMultiStrings7Size * sizeof(MultiCharacterSpecialCa
se<1>); // NOLINT | 1846 + kCanonicalizationRangeMultiStrings7Size * sizeof(MultiCharacterSpecialCa
se<1>); // NOLINT |
| 1871 } | 1847 } |
| 1872 | 1848 |
| 1873 } // namespace unicode | 1849 } // namespace unicode |
| OLD | NEW |