| 1 | /* |
| 2 | * Copyright (C) 2017-2019 Apple Inc. All rights reserved. |
| 3 | * |
| 4 | * Redistribution and use in source and binary forms, with or without |
| 5 | * modification, are permitted provided that the following conditions |
| 6 | * are met: |
| 7 | * |
| 8 | * 1. Redistributions of source code must retain the above copyright |
| 9 | * notice, this list of conditions and the following disclaimer. |
| 10 | * 2. Redistributions in binary form must reproduce the above copyright |
| 11 | * notice, this list of conditions and the following disclaimer in the |
| 12 | * documentation and/or other materials provided with the distribution. |
| 13 | * |
| 14 | * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY |
| 15 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| 16 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| 17 | * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY |
| 18 | * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
| 19 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
| 20 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND |
| 21 | * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| 22 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
| 23 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 24 | */ |
| 25 | |
| 26 | // DO NO EDIT! - This file was generated by /home/ubuntu/webkit/Source/JavaScriptCore/yarr/generateYarrUnicodePropertyTables.py |
| 27 | static std::unique_ptr<CharacterClass> createCharacterClass0() |
| 28 | { |
| 29 | // Name = Any, number of codePoints: 1114112 |
| 30 | auto characterClass = std::make_unique<CharacterClass>( |
| 31 | std::initializer_list<UChar32>({}), |
| 32 | std::initializer_list<CharacterRange>({{0x00, 0x7f}}), |
| 33 | std::initializer_list<UChar32>({}), |
| 34 | std::initializer_list<CharacterRange>({{0x0080, 0x10ffff}}), |
| 35 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 36 | return characterClass; |
| 37 | } |
| 38 | |
| 39 | static std::unique_ptr<CharacterClass> createCharacterClass1() |
| 40 | { |
| 41 | // Name = ASCII, number of codePoints: 128 |
| 42 | auto characterClass = std::make_unique<CharacterClass>( |
| 43 | std::initializer_list<UChar32>({}), |
| 44 | std::initializer_list<CharacterRange>({{0x00, 0x7f}}), |
| 45 | std::initializer_list<UChar32>({}), |
| 46 | std::initializer_list<CharacterRange>({}), |
| 47 | CharacterClassWidths::HasBMPChars); |
| 48 | return characterClass; |
| 49 | } |
| 50 | |
| 51 | static std::unique_ptr<CharacterClass> createCharacterClass2() |
| 52 | { |
| 53 | // Name = Assigned, number of codePoints: 276955 |
| 54 | auto characterClass = std::make_unique<CharacterClass>( |
| 55 | std::initializer_list<UChar32>({}), |
| 56 | std::initializer_list<CharacterRange>({{0x00, 0x7f}}), |
| 57 | std::initializer_list<UChar32>({0x038c, 0x085e, 0x09b2, 0x09d7, 0x0a3c, 0x0a51, 0x0a5e, 0x0ad0, |
| 58 | 0x0b9c, 0x0bd0, 0x0bd7, 0x0cde, 0x0dbd, 0x0dca, 0x0dd6, 0x0e84, |
| 59 | 0x0e8a, 0x0e8d, 0x0ea5, 0x0ea7, 0x0ec6, 0x10c7, 0x10cd, 0x1258, |
| 60 | 0x12c0, 0x1940, 0x1f59, 0x1f5b, 0x1f5d, 0x2d27, 0x2d2d, 0xfb3e, |
| 61 | 0xfeff, 0x101a0, 0x1056f, 0x10808, 0x1083c, 0x1093f, 0x110cd, 0x11288, |
| 62 | 0x11350, 0x11357, 0x1145b, 0x118ff, 0x11d3a, 0x1d4a2, 0x1d4bb, 0x1d546, |
| 63 | 0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, 0x1ee42, 0x1ee47, 0x1ee49, 0x1ee4b, |
| 64 | 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, 0x1ee5d, 0x1ee5f, 0x1ee64, 0x1ee7e, |
| 65 | 0x1f97a, 0xe0001}), |
| 66 | std::initializer_list<CharacterRange>({{0x0080, 0x0377}, {0x037a, 0x037f}, {0x0384, 0x038a}, {0x038e, 0x03a1}, |
| 67 | {0x03a3, 0x052f}, {0x0531, 0x0556}, {0x0559, 0x058a}, {0x058d, 0x058f}, |
| 68 | {0x0591, 0x05c7}, {0x05d0, 0x05ea}, {0x05ef, 0x05f4}, {0x0600, 0x061c}, |
| 69 | {0x061e, 0x070d}, {0x070f, 0x074a}, {0x074d, 0x07b1}, {0x07c0, 0x07fa}, |
| 70 | {0x07fd, 0x082d}, {0x0830, 0x083e}, {0x0840, 0x085b}, {0x0860, 0x086a}, |
| 71 | {0x08a0, 0x08b4}, {0x08b6, 0x08bd}, {0x08d3, 0x0983}, {0x0985, 0x098c}, |
| 72 | {0x098f, 0x0990}, {0x0993, 0x09a8}, {0x09aa, 0x09b0}, {0x09b6, 0x09b9}, |
| 73 | {0x09bc, 0x09c4}, {0x09c7, 0x09c8}, {0x09cb, 0x09ce}, {0x09dc, 0x09dd}, |
| 74 | {0x09df, 0x09e3}, {0x09e6, 0x09fe}, {0x0a01, 0x0a03}, {0x0a05, 0x0a0a}, |
| 75 | {0x0a0f, 0x0a10}, {0x0a13, 0x0a28}, {0x0a2a, 0x0a30}, {0x0a32, 0x0a33}, |
| 76 | {0x0a35, 0x0a36}, {0x0a38, 0x0a39}, {0x0a3e, 0x0a42}, {0x0a47, 0x0a48}, |
| 77 | {0x0a4b, 0x0a4d}, {0x0a59, 0x0a5c}, {0x0a66, 0x0a76}, {0x0a81, 0x0a83}, |
| 78 | {0x0a85, 0x0a8d}, {0x0a8f, 0x0a91}, {0x0a93, 0x0aa8}, {0x0aaa, 0x0ab0}, |
| 79 | {0x0ab2, 0x0ab3}, {0x0ab5, 0x0ab9}, {0x0abc, 0x0ac5}, {0x0ac7, 0x0ac9}, |
| 80 | {0x0acb, 0x0acd}, {0x0ae0, 0x0ae3}, {0x0ae6, 0x0af1}, {0x0af9, 0x0aff}, |
| 81 | {0x0b01, 0x0b03}, {0x0b05, 0x0b0c}, {0x0b0f, 0x0b10}, {0x0b13, 0x0b28}, |
| 82 | {0x0b2a, 0x0b30}, {0x0b32, 0x0b33}, {0x0b35, 0x0b39}, {0x0b3c, 0x0b44}, |
| 83 | {0x0b47, 0x0b48}, {0x0b4b, 0x0b4d}, {0x0b56, 0x0b57}, {0x0b5c, 0x0b5d}, |
| 84 | {0x0b5f, 0x0b63}, {0x0b66, 0x0b77}, {0x0b82, 0x0b83}, {0x0b85, 0x0b8a}, |
| 85 | {0x0b8e, 0x0b90}, {0x0b92, 0x0b95}, {0x0b99, 0x0b9a}, {0x0b9e, 0x0b9f}, |
| 86 | {0x0ba3, 0x0ba4}, {0x0ba8, 0x0baa}, {0x0bae, 0x0bb9}, {0x0bbe, 0x0bc2}, |
| 87 | {0x0bc6, 0x0bc8}, {0x0bca, 0x0bcd}, {0x0be6, 0x0bfa}, {0x0c00, 0x0c0c}, |
| 88 | {0x0c0e, 0x0c10}, {0x0c12, 0x0c28}, {0x0c2a, 0x0c39}, {0x0c3d, 0x0c44}, |
| 89 | {0x0c46, 0x0c48}, {0x0c4a, 0x0c4d}, {0x0c55, 0x0c56}, {0x0c58, 0x0c5a}, |
| 90 | {0x0c60, 0x0c63}, {0x0c66, 0x0c6f}, {0x0c78, 0x0c8c}, {0x0c8e, 0x0c90}, |
| 91 | {0x0c92, 0x0ca8}, {0x0caa, 0x0cb3}, {0x0cb5, 0x0cb9}, {0x0cbc, 0x0cc4}, |
| 92 | {0x0cc6, 0x0cc8}, {0x0cca, 0x0ccd}, {0x0cd5, 0x0cd6}, {0x0ce0, 0x0ce3}, |
| 93 | {0x0ce6, 0x0cef}, {0x0cf1, 0x0cf2}, {0x0d00, 0x0d03}, {0x0d05, 0x0d0c}, |
| 94 | {0x0d0e, 0x0d10}, {0x0d12, 0x0d44}, {0x0d46, 0x0d48}, {0x0d4a, 0x0d4f}, |
| 95 | {0x0d54, 0x0d63}, {0x0d66, 0x0d7f}, {0x0d82, 0x0d83}, {0x0d85, 0x0d96}, |
| 96 | {0x0d9a, 0x0db1}, {0x0db3, 0x0dbb}, {0x0dc0, 0x0dc6}, {0x0dcf, 0x0dd4}, |
| 97 | {0x0dd8, 0x0ddf}, {0x0de6, 0x0def}, {0x0df2, 0x0df4}, {0x0e01, 0x0e3a}, |
| 98 | {0x0e3f, 0x0e5b}, {0x0e81, 0x0e82}, {0x0e87, 0x0e88}, {0x0e94, 0x0e97}, |
| 99 | {0x0e99, 0x0e9f}, {0x0ea1, 0x0ea3}, {0x0eaa, 0x0eab}, {0x0ead, 0x0eb9}, |
| 100 | {0x0ebb, 0x0ebd}, {0x0ec0, 0x0ec4}, {0x0ec8, 0x0ecd}, {0x0ed0, 0x0ed9}, |
| 101 | {0x0edc, 0x0edf}, {0x0f00, 0x0f47}, {0x0f49, 0x0f6c}, {0x0f71, 0x0f97}, |
| 102 | {0x0f99, 0x0fbc}, {0x0fbe, 0x0fcc}, {0x0fce, 0x0fda}, {0x1000, 0x10c5}, |
| 103 | {0x10d0, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x125a, 0x125d}, |
| 104 | {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, |
| 105 | {0x12b8, 0x12be}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, |
| 106 | {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x137c}, {0x1380, 0x1399}, |
| 107 | {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1400, 0x169c}, {0x16a0, 0x16f8}, |
| 108 | {0x1700, 0x170c}, {0x170e, 0x1714}, {0x1720, 0x1736}, {0x1740, 0x1753}, |
| 109 | {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}, {0x1780, 0x17dd}, |
| 110 | {0x17e0, 0x17e9}, {0x17f0, 0x17f9}, {0x1800, 0x180e}, {0x1810, 0x1819}, |
| 111 | {0x1820, 0x1878}, {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, |
| 112 | {0x1920, 0x192b}, {0x1930, 0x193b}, {0x1944, 0x196d}, {0x1970, 0x1974}, |
| 113 | {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x19de, 0x1a1b}, |
| 114 | {0x1a1e, 0x1a5e}, {0x1a60, 0x1a7c}, {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, |
| 115 | {0x1aa0, 0x1aad}, {0x1ab0, 0x1abe}, {0x1b00, 0x1b4b}, {0x1b50, 0x1b7c}, |
| 116 | {0x1b80, 0x1bf3}, {0x1bfc, 0x1c37}, {0x1c3b, 0x1c49}, {0x1c4d, 0x1c88}, |
| 117 | {0x1c90, 0x1cba}, {0x1cbd, 0x1cc7}, {0x1cd0, 0x1cf9}, {0x1d00, 0x1df9}, |
| 118 | {0x1dfb, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, |
| 119 | {0x1f50, 0x1f57}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fc4}, |
| 120 | {0x1fc6, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fdd, 0x1fef}, {0x1ff2, 0x1ff4}, |
| 121 | {0x1ff6, 0x1ffe}, {0x2000, 0x2064}, {0x2066, 0x2071}, {0x2074, 0x208e}, |
| 122 | {0x2090, 0x209c}, {0x20a0, 0x20bf}, {0x20d0, 0x20f0}, {0x2100, 0x218b}, |
| 123 | {0x2190, 0x2426}, {0x2440, 0x244a}, {0x2460, 0x2b73}, {0x2b76, 0x2b95}, |
| 124 | {0x2b98, 0x2bc8}, {0x2bca, 0x2bfe}, {0x2c00, 0x2c2e}, {0x2c30, 0x2c5e}, |
| 125 | {0x2c60, 0x2cf3}, {0x2cf9, 0x2d25}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d70}, |
| 126 | {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, |
| 127 | {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, |
| 128 | {0x2dd8, 0x2dde}, {0x2de0, 0x2e4e}, {0x2e80, 0x2e99}, {0x2e9b, 0x2ef3}, |
| 129 | {0x2f00, 0x2fd5}, {0x2ff0, 0x2ffb}, {0x3000, 0x303f}, {0x3041, 0x3096}, |
| 130 | {0x3099, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x3190, 0x31ba}, |
| 131 | {0x31c0, 0x31e3}, {0x31f0, 0x321e}, {0x3220, 0x32fe}, {0x3300, 0x4db5}, |
| 132 | {0x4dc0, 0x9fef}, {0xa000, 0xa48c}, {0xa490, 0xa4c6}, {0xa4d0, 0xa62b}, |
| 133 | {0xa640, 0xa6f7}, {0xa700, 0xa7b9}, {0xa7f7, 0xa82b}, {0xa830, 0xa839}, |
| 134 | {0xa840, 0xa877}, {0xa880, 0xa8c5}, {0xa8ce, 0xa8d9}, {0xa8e0, 0xa953}, |
| 135 | {0xa95f, 0xa97c}, {0xa980, 0xa9cd}, {0xa9cf, 0xa9d9}, {0xa9de, 0xa9fe}, |
| 136 | {0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, {0xaa50, 0xaa59}, {0xaa5c, 0xaac2}, |
| 137 | {0xaadb, 0xaaf6}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, |
| 138 | {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab65}, {0xab70, 0xabed}, |
| 139 | {0xabf0, 0xabf9}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, |
| 140 | {0xd800, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, |
| 141 | {0xfb1d, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, |
| 142 | {0xfb46, 0xfbc1}, {0xfbd3, 0xfd3f}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, |
| 143 | {0xfdf0, 0xfdfd}, {0xfe00, 0xfe19}, {0xfe20, 0xfe52}, {0xfe54, 0xfe66}, |
| 144 | {0xfe68, 0xfe6b}, {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, {0xff01, 0xffbe}, |
| 145 | {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, |
| 146 | {0xffe0, 0xffe6}, {0xffe8, 0xffee}, {0xfff9, 0xfffd}, {0x10000, 0x1000b}, |
| 147 | {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, |
| 148 | {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10100, 0x10102}, {0x10107, 0x10133}, |
| 149 | {0x10137, 0x1018e}, {0x10190, 0x1019b}, {0x101d0, 0x101fd}, {0x10280, 0x1029c}, |
| 150 | {0x102a0, 0x102d0}, {0x102e0, 0x102fb}, {0x10300, 0x10323}, {0x1032d, 0x1034a}, |
| 151 | {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x1039f, 0x103c3}, {0x103c8, 0x103d5}, |
| 152 | {0x10400, 0x1049d}, {0x104a0, 0x104a9}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, |
| 153 | {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10600, 0x10736}, {0x10740, 0x10755}, |
| 154 | {0x10760, 0x10767}, {0x10800, 0x10805}, {0x1080a, 0x10835}, {0x10837, 0x10838}, |
| 155 | {0x1083f, 0x10855}, {0x10857, 0x1089e}, {0x108a7, 0x108af}, {0x108e0, 0x108f2}, |
| 156 | {0x108f4, 0x108f5}, {0x108fb, 0x1091b}, {0x1091f, 0x10939}, {0x10980, 0x109b7}, |
| 157 | {0x109bc, 0x109cf}, {0x109d2, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, |
| 158 | {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a3f, 0x10a48}, |
| 159 | {0x10a50, 0x10a58}, {0x10a60, 0x10a9f}, {0x10ac0, 0x10ae6}, {0x10aeb, 0x10af6}, |
| 160 | {0x10b00, 0x10b35}, {0x10b39, 0x10b55}, {0x10b58, 0x10b72}, {0x10b78, 0x10b91}, |
| 161 | {0x10b99, 0x10b9c}, {0x10ba9, 0x10baf}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, |
| 162 | {0x10cc0, 0x10cf2}, {0x10cfa, 0x10d27}, {0x10d30, 0x10d39}, {0x10e60, 0x10e7e}, |
| 163 | {0x10f00, 0x10f27}, {0x10f30, 0x10f59}, {0x11000, 0x1104d}, {0x11052, 0x1106f}, |
| 164 | {0x1107f, 0x110c1}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, {0x11100, 0x11134}, |
| 165 | {0x11136, 0x11146}, {0x11150, 0x11176}, {0x11180, 0x111cd}, {0x111d0, 0x111df}, |
| 166 | {0x111e1, 0x111f4}, {0x11200, 0x11211}, {0x11213, 0x1123e}, {0x11280, 0x11286}, |
| 167 | {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a9}, {0x112b0, 0x112ea}, |
| 168 | {0x112f0, 0x112f9}, {0x11300, 0x11303}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, |
| 169 | {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, |
| 170 | {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, {0x1135d, 0x11363}, |
| 171 | {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11400, 0x11459}, {0x1145d, 0x1145e}, |
| 172 | {0x11480, 0x114c7}, {0x114d0, 0x114d9}, {0x11580, 0x115b5}, {0x115b8, 0x115dd}, |
| 173 | {0x11600, 0x11644}, {0x11650, 0x11659}, {0x11660, 0x1166c}, {0x11680, 0x116b7}, |
| 174 | {0x116c0, 0x116c9}, {0x11700, 0x1171a}, {0x1171d, 0x1172b}, {0x11730, 0x1173f}, |
| 175 | {0x11800, 0x1183b}, {0x118a0, 0x118f2}, {0x11a00, 0x11a47}, {0x11a50, 0x11a83}, |
| 176 | {0x11a86, 0x11aa2}, {0x11ac0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, |
| 177 | {0x11c38, 0x11c45}, {0x11c50, 0x11c6c}, {0x11c70, 0x11c8f}, {0x11c92, 0x11ca7}, |
| 178 | {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, |
| 179 | {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d47}, {0x11d50, 0x11d59}, {0x11d60, 0x11d65}, |
| 180 | {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, |
| 181 | {0x11da0, 0x11da9}, {0x11ee0, 0x11ef8}, {0x12000, 0x12399}, {0x12400, 0x1246e}, |
| 182 | {0x12470, 0x12474}, {0x12480, 0x12543}, {0x13000, 0x1342e}, {0x14400, 0x14646}, |
| 183 | {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a60, 0x16a69}, {0x16a6e, 0x16a6f}, |
| 184 | {0x16ad0, 0x16aed}, {0x16af0, 0x16af5}, {0x16b00, 0x16b45}, {0x16b50, 0x16b59}, |
| 185 | {0x16b5b, 0x16b61}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e9a}, |
| 186 | {0x16f00, 0x16f44}, {0x16f50, 0x16f7e}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, |
| 187 | {0x17000, 0x187f1}, {0x18800, 0x18af2}, {0x1b000, 0x1b11e}, {0x1b170, 0x1b2fb}, |
| 188 | {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, |
| 189 | {0x1bc9c, 0x1bca3}, {0x1d000, 0x1d0f5}, {0x1d100, 0x1d126}, {0x1d129, 0x1d1e8}, |
| 190 | {0x1d200, 0x1d245}, {0x1d2e0, 0x1d2f3}, {0x1d300, 0x1d356}, {0x1d360, 0x1d378}, |
| 191 | {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, |
| 192 | {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, |
| 193 | {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, |
| 194 | {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, |
| 195 | {0x1d6a8, 0x1d7cb}, {0x1d7ce, 0x1da8b}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, |
| 196 | {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, |
| 197 | {0x1e026, 0x1e02a}, {0x1e800, 0x1e8c4}, {0x1e8c7, 0x1e8d6}, {0x1e900, 0x1e94a}, |
| 198 | {0x1e950, 0x1e959}, {0x1e95e, 0x1e95f}, {0x1ec71, 0x1ecb4}, {0x1ee00, 0x1ee03}, |
| 199 | {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, |
| 200 | {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, |
| 201 | {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, |
| 202 | {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, |
| 203 | {0x1eef0, 0x1eef1}, {0x1f000, 0x1f02b}, {0x1f030, 0x1f093}, {0x1f0a0, 0x1f0ae}, |
| 204 | {0x1f0b1, 0x1f0bf}, {0x1f0c1, 0x1f0cf}, {0x1f0d1, 0x1f0f5}, {0x1f100, 0x1f10c}, |
| 205 | {0x1f110, 0x1f16b}, {0x1f170, 0x1f1ac}, {0x1f1e6, 0x1f202}, {0x1f210, 0x1f23b}, |
| 206 | {0x1f240, 0x1f248}, {0x1f250, 0x1f251}, {0x1f260, 0x1f265}, {0x1f300, 0x1f6d4}, |
| 207 | {0x1f6e0, 0x1f6ec}, {0x1f6f0, 0x1f6f9}, {0x1f700, 0x1f773}, {0x1f780, 0x1f7d8}, |
| 208 | {0x1f800, 0x1f80b}, {0x1f810, 0x1f847}, {0x1f850, 0x1f859}, {0x1f860, 0x1f887}, |
| 209 | {0x1f890, 0x1f8ad}, {0x1f900, 0x1f90b}, {0x1f910, 0x1f93e}, {0x1f940, 0x1f970}, |
| 210 | {0x1f973, 0x1f976}, {0x1f97c, 0x1f9a2}, {0x1f9b0, 0x1f9b9}, {0x1f9c0, 0x1f9c2}, |
| 211 | {0x1f9d0, 0x1f9ff}, {0x1fa60, 0x1fa6d}, {0x20000, 0x2a6d6}, {0x2a700, 0x2b734}, |
| 212 | {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}, |
| 213 | {0xe0020, 0xe007f}, {0xe0100, 0xe01ef}, {0xf0000, 0xffffd}, {0x100000, 0x10fffd}}), |
| 214 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 215 | return characterClass; |
| 216 | } |
| 217 | |
| 218 | static std::unique_ptr<CharacterClass> createCharacterClass3() |
| 219 | { |
| 220 | // Name = Other, number of codePoints: 976890 |
| 221 | auto characterClass = std::make_unique<CharacterClass>( |
| 222 | std::initializer_list<UChar32>({0x7f}), |
| 223 | std::initializer_list<CharacterRange>({{0x00, 0x1f}}), |
| 224 | std::initializer_list<UChar32>({0x00ad, 0x038b, 0x038d, 0x03a2, 0x0530, 0x0590, 0x06dd, 0x083f, |
| 225 | 0x085f, 0x08b5, 0x08e2, 0x0984, 0x09a9, 0x09b1, 0x09de, 0x0a04, |
| 226 | 0x0a29, 0x0a31, 0x0a34, 0x0a37, 0x0a3d, 0x0a5d, 0x0a84, 0x0a8e, |
| 227 | 0x0a92, 0x0aa9, 0x0ab1, 0x0ab4, 0x0ac6, 0x0aca, 0x0b00, 0x0b04, |
| 228 | 0x0b29, 0x0b31, 0x0b34, 0x0b5e, 0x0b84, 0x0b91, 0x0b9b, 0x0b9d, |
| 229 | 0x0bc9, 0x0c0d, 0x0c11, 0x0c29, 0x0c45, 0x0c49, 0x0c57, 0x0c8d, |
| 230 | 0x0c91, 0x0ca9, 0x0cb4, 0x0cc5, 0x0cc9, 0x0cdf, 0x0cf0, 0x0d04, |
| 231 | 0x0d0d, 0x0d11, 0x0d45, 0x0d49, 0x0d84, 0x0db2, 0x0dbc, 0x0dd5, |
| 232 | 0x0dd7, 0x0e83, 0x0e89, 0x0e98, 0x0ea0, 0x0ea4, 0x0ea6, 0x0eac, |
| 233 | 0x0eba, 0x0ec5, 0x0ec7, 0x0f48, 0x0f98, 0x0fbd, 0x0fcd, 0x10c6, |
| 234 | 0x1249, 0x1257, 0x1259, 0x1289, 0x12b1, 0x12bf, 0x12c1, 0x12d7, |
| 235 | 0x1311, 0x170d, 0x176d, 0x1771, 0x191f, 0x1a5f, 0x1dfa, 0x1f58, |
| 236 | 0x1f5a, 0x1f5c, 0x1f5e, 0x1fb5, 0x1fc5, 0x1fdc, 0x1ff5, 0x1fff, |
| 237 | 0x208f, 0x2bc9, 0x2bff, 0x2c2f, 0x2c5f, 0x2d26, 0x2da7, 0x2daf, |
| 238 | 0x2db7, 0x2dbf, 0x2dc7, 0x2dcf, 0x2dd7, 0x2ddf, 0x2e9a, 0x3040, |
| 239 | 0x3130, 0x318f, 0x321f, 0x32ff, 0xa9ce, 0xa9ff, 0xab27, 0xab2f, |
| 240 | 0xfb37, 0xfb3d, 0xfb3f, 0xfb42, 0xfb45, 0xfe53, 0xfe67, 0xfe75, |
| 241 | 0xffe7, 0x1000c, 0x10027, 0x1003b, 0x1003e, 0x1018f, 0x1039e, 0x10809, |
| 242 | 0x10836, 0x10856, 0x108f3, 0x10a04, 0x10a14, 0x10a18, 0x110bd, 0x11135, |
| 243 | 0x111e0, 0x11212, 0x11287, 0x11289, 0x1128e, 0x1129e, 0x11304, 0x11329, |
| 244 | 0x11331, 0x11334, 0x1133a, 0x1145a, 0x1145c, 0x11c09, 0x11c37, 0x11ca8, |
| 245 | 0x11d07, 0x11d0a, 0x11d3b, 0x11d3e, 0x11d66, 0x11d69, 0x11d8f, 0x11d92, |
| 246 | 0x1246f, 0x16a5f, 0x16b5a, 0x16b62, 0x1d455, 0x1d49d, 0x1d4ad, 0x1d4ba, |
| 247 | 0x1d4bc, 0x1d4c4, 0x1d506, 0x1d515, 0x1d51d, 0x1d53a, 0x1d53f, 0x1d545, |
| 248 | 0x1d551, 0x1daa0, 0x1e007, 0x1e022, 0x1e025, 0x1ee04, 0x1ee20, 0x1ee23, |
| 249 | 0x1ee28, 0x1ee33, 0x1ee38, 0x1ee3a, 0x1ee48, 0x1ee4a, 0x1ee4c, 0x1ee50, |
| 250 | 0x1ee53, 0x1ee58, 0x1ee5a, 0x1ee5c, 0x1ee5e, 0x1ee60, 0x1ee63, 0x1ee6b, |
| 251 | 0x1ee73, 0x1ee78, 0x1ee7d, 0x1ee7f, 0x1ee8a, 0x1eea4, 0x1eeaa, 0x1f0c0, |
| 252 | 0x1f0d0, 0x1f93f, 0x1f97b}), |
| 253 | std::initializer_list<CharacterRange>({{0x0080, 0x009f}, {0x0378, 0x0379}, {0x0380, 0x0383}, {0x0557, 0x0558}, |
| 254 | {0x058b, 0x058c}, {0x05c8, 0x05cf}, {0x05eb, 0x05ee}, {0x05f5, 0x0605}, |
| 255 | {0x061c, 0x061d}, {0x070e, 0x070f}, {0x074b, 0x074c}, {0x07b2, 0x07bf}, |
| 256 | {0x07fb, 0x07fc}, {0x082e, 0x082f}, {0x085c, 0x085d}, {0x086b, 0x089f}, |
| 257 | {0x08be, 0x08d2}, {0x098d, 0x098e}, {0x0991, 0x0992}, {0x09b3, 0x09b5}, |
| 258 | {0x09ba, 0x09bb}, {0x09c5, 0x09c6}, {0x09c9, 0x09ca}, {0x09cf, 0x09d6}, |
| 259 | {0x09d8, 0x09db}, {0x09e4, 0x09e5}, {0x09ff, 0x0a00}, {0x0a0b, 0x0a0e}, |
| 260 | {0x0a11, 0x0a12}, {0x0a3a, 0x0a3b}, {0x0a43, 0x0a46}, {0x0a49, 0x0a4a}, |
| 261 | {0x0a4e, 0x0a50}, {0x0a52, 0x0a58}, {0x0a5f, 0x0a65}, {0x0a77, 0x0a80}, |
| 262 | {0x0aba, 0x0abb}, {0x0ace, 0x0acf}, {0x0ad1, 0x0adf}, {0x0ae4, 0x0ae5}, |
| 263 | {0x0af2, 0x0af8}, {0x0b0d, 0x0b0e}, {0x0b11, 0x0b12}, {0x0b3a, 0x0b3b}, |
| 264 | {0x0b45, 0x0b46}, {0x0b49, 0x0b4a}, {0x0b4e, 0x0b55}, {0x0b58, 0x0b5b}, |
| 265 | {0x0b64, 0x0b65}, {0x0b78, 0x0b81}, {0x0b8b, 0x0b8d}, {0x0b96, 0x0b98}, |
| 266 | {0x0ba0, 0x0ba2}, {0x0ba5, 0x0ba7}, {0x0bab, 0x0bad}, {0x0bba, 0x0bbd}, |
| 267 | {0x0bc3, 0x0bc5}, {0x0bce, 0x0bcf}, {0x0bd1, 0x0bd6}, {0x0bd8, 0x0be5}, |
| 268 | {0x0bfb, 0x0bff}, {0x0c3a, 0x0c3c}, {0x0c4e, 0x0c54}, {0x0c5b, 0x0c5f}, |
| 269 | {0x0c64, 0x0c65}, {0x0c70, 0x0c77}, {0x0cba, 0x0cbb}, {0x0cce, 0x0cd4}, |
| 270 | {0x0cd7, 0x0cdd}, {0x0ce4, 0x0ce5}, {0x0cf3, 0x0cff}, {0x0d50, 0x0d53}, |
| 271 | {0x0d64, 0x0d65}, {0x0d80, 0x0d81}, {0x0d97, 0x0d99}, {0x0dbe, 0x0dbf}, |
| 272 | {0x0dc7, 0x0dc9}, {0x0dcb, 0x0dce}, {0x0de0, 0x0de5}, {0x0df0, 0x0df1}, |
| 273 | {0x0df5, 0x0e00}, {0x0e3b, 0x0e3e}, {0x0e5c, 0x0e80}, {0x0e85, 0x0e86}, |
| 274 | {0x0e8b, 0x0e8c}, {0x0e8e, 0x0e93}, {0x0ea8, 0x0ea9}, {0x0ebe, 0x0ebf}, |
| 275 | {0x0ece, 0x0ecf}, {0x0eda, 0x0edb}, {0x0ee0, 0x0eff}, {0x0f6d, 0x0f70}, |
| 276 | {0x0fdb, 0x0fff}, {0x10c8, 0x10cc}, {0x10ce, 0x10cf}, {0x124e, 0x124f}, |
| 277 | {0x125e, 0x125f}, {0x128e, 0x128f}, {0x12b6, 0x12b7}, {0x12c6, 0x12c7}, |
| 278 | {0x1316, 0x1317}, {0x135b, 0x135c}, {0x137d, 0x137f}, {0x139a, 0x139f}, |
| 279 | {0x13f6, 0x13f7}, {0x13fe, 0x13ff}, {0x169d, 0x169f}, {0x16f9, 0x16ff}, |
| 280 | {0x1715, 0x171f}, {0x1737, 0x173f}, {0x1754, 0x175f}, {0x1774, 0x177f}, |
| 281 | {0x17de, 0x17df}, {0x17ea, 0x17ef}, {0x17fa, 0x17ff}, {0x180e, 0x180f}, |
| 282 | {0x181a, 0x181f}, {0x1879, 0x187f}, {0x18ab, 0x18af}, {0x18f6, 0x18ff}, |
| 283 | {0x192c, 0x192f}, {0x193c, 0x193f}, {0x1941, 0x1943}, {0x196e, 0x196f}, |
| 284 | {0x1975, 0x197f}, {0x19ac, 0x19af}, {0x19ca, 0x19cf}, {0x19db, 0x19dd}, |
| 285 | {0x1a1c, 0x1a1d}, {0x1a7d, 0x1a7e}, {0x1a8a, 0x1a8f}, {0x1a9a, 0x1a9f}, |
| 286 | {0x1aae, 0x1aaf}, {0x1abf, 0x1aff}, {0x1b4c, 0x1b4f}, {0x1b7d, 0x1b7f}, |
| 287 | {0x1bf4, 0x1bfb}, {0x1c38, 0x1c3a}, {0x1c4a, 0x1c4c}, {0x1c89, 0x1c8f}, |
| 288 | {0x1cbb, 0x1cbc}, {0x1cc8, 0x1ccf}, {0x1cfa, 0x1cff}, {0x1f16, 0x1f17}, |
| 289 | {0x1f1e, 0x1f1f}, {0x1f46, 0x1f47}, {0x1f4e, 0x1f4f}, {0x1f7e, 0x1f7f}, |
| 290 | {0x1fd4, 0x1fd5}, {0x1ff0, 0x1ff1}, {0x200b, 0x200f}, {0x202a, 0x202e}, |
| 291 | {0x2060, 0x206f}, {0x2072, 0x2073}, {0x209d, 0x209f}, {0x20c0, 0x20cf}, |
| 292 | {0x20f1, 0x20ff}, {0x218c, 0x218f}, {0x2427, 0x243f}, {0x244b, 0x245f}, |
| 293 | {0x2b74, 0x2b75}, {0x2b96, 0x2b97}, {0x2cf4, 0x2cf8}, {0x2d28, 0x2d2c}, |
| 294 | {0x2d2e, 0x2d2f}, {0x2d68, 0x2d6e}, {0x2d71, 0x2d7e}, {0x2d97, 0x2d9f}, |
| 295 | {0x2e4f, 0x2e7f}, {0x2ef4, 0x2eff}, {0x2fd6, 0x2fef}, {0x2ffc, 0x2fff}, |
| 296 | {0x3097, 0x3098}, {0x3100, 0x3104}, {0x31bb, 0x31bf}, {0x31e4, 0x31ef}, |
| 297 | {0x4db6, 0x4dbf}, {0x9ff0, 0x9fff}, {0xa48d, 0xa48f}, {0xa4c7, 0xa4cf}, |
| 298 | {0xa62c, 0xa63f}, {0xa6f8, 0xa6ff}, {0xa7ba, 0xa7f6}, {0xa82c, 0xa82f}, |
| 299 | {0xa83a, 0xa83f}, {0xa878, 0xa87f}, {0xa8c6, 0xa8cd}, {0xa8da, 0xa8df}, |
| 300 | {0xa954, 0xa95e}, {0xa97d, 0xa97f}, {0xa9da, 0xa9dd}, {0xaa37, 0xaa3f}, |
| 301 | {0xaa4e, 0xaa4f}, {0xaa5a, 0xaa5b}, {0xaac3, 0xaada}, {0xaaf7, 0xab00}, |
| 302 | {0xab07, 0xab08}, {0xab0f, 0xab10}, {0xab17, 0xab1f}, {0xab66, 0xab6f}, |
| 303 | {0xabee, 0xabef}, {0xabfa, 0xabff}, {0xd7a4, 0xd7af}, {0xd7c7, 0xd7ca}, |
| 304 | {0xd7fc, 0xf8ff}, {0xfa6e, 0xfa6f}, {0xfada, 0xfaff}, {0xfb07, 0xfb12}, |
| 305 | {0xfb18, 0xfb1c}, {0xfbc2, 0xfbd2}, {0xfd40, 0xfd4f}, {0xfd90, 0xfd91}, |
| 306 | {0xfdc8, 0xfdef}, {0xfdfe, 0xfdff}, {0xfe1a, 0xfe1f}, {0xfe6c, 0xfe6f}, |
| 307 | {0xfefd, 0xff00}, {0xffbf, 0xffc1}, {0xffc8, 0xffc9}, {0xffd0, 0xffd1}, |
| 308 | {0xffd8, 0xffd9}, {0xffdd, 0xffdf}, {0xffef, 0xfffb}, {0xfffe, 0xffff}, |
| 309 | {0x1004e, 0x1004f}, {0x1005e, 0x1007f}, {0x100fb, 0x100ff}, {0x10103, 0x10106}, |
| 310 | {0x10134, 0x10136}, {0x1019c, 0x1019f}, {0x101a1, 0x101cf}, {0x101fe, 0x1027f}, |
| 311 | {0x1029d, 0x1029f}, {0x102d1, 0x102df}, {0x102fc, 0x102ff}, {0x10324, 0x1032c}, |
| 312 | {0x1034b, 0x1034f}, {0x1037b, 0x1037f}, {0x103c4, 0x103c7}, {0x103d6, 0x103ff}, |
| 313 | {0x1049e, 0x1049f}, {0x104aa, 0x104af}, {0x104d4, 0x104d7}, {0x104fc, 0x104ff}, |
| 314 | {0x10528, 0x1052f}, {0x10564, 0x1056e}, {0x10570, 0x105ff}, {0x10737, 0x1073f}, |
| 315 | {0x10756, 0x1075f}, {0x10768, 0x107ff}, {0x10806, 0x10807}, {0x10839, 0x1083b}, |
| 316 | {0x1083d, 0x1083e}, {0x1089f, 0x108a6}, {0x108b0, 0x108df}, {0x108f6, 0x108fa}, |
| 317 | {0x1091c, 0x1091e}, {0x1093a, 0x1093e}, {0x10940, 0x1097f}, {0x109b8, 0x109bb}, |
| 318 | {0x109d0, 0x109d1}, {0x10a07, 0x10a0b}, {0x10a36, 0x10a37}, {0x10a3b, 0x10a3e}, |
| 319 | {0x10a49, 0x10a4f}, {0x10a59, 0x10a5f}, {0x10aa0, 0x10abf}, {0x10ae7, 0x10aea}, |
| 320 | {0x10af7, 0x10aff}, {0x10b36, 0x10b38}, {0x10b56, 0x10b57}, {0x10b73, 0x10b77}, |
| 321 | {0x10b92, 0x10b98}, {0x10b9d, 0x10ba8}, {0x10bb0, 0x10bff}, {0x10c49, 0x10c7f}, |
| 322 | {0x10cb3, 0x10cbf}, {0x10cf3, 0x10cf9}, {0x10d28, 0x10d2f}, {0x10d3a, 0x10e5f}, |
| 323 | {0x10e7f, 0x10eff}, {0x10f28, 0x10f2f}, {0x10f5a, 0x10fff}, {0x1104e, 0x11051}, |
| 324 | {0x11070, 0x1107e}, {0x110c2, 0x110cf}, {0x110e9, 0x110ef}, {0x110fa, 0x110ff}, |
| 325 | {0x11147, 0x1114f}, {0x11177, 0x1117f}, {0x111ce, 0x111cf}, {0x111f5, 0x111ff}, |
| 326 | {0x1123f, 0x1127f}, {0x112aa, 0x112af}, {0x112eb, 0x112ef}, {0x112fa, 0x112ff}, |
| 327 | {0x1130d, 0x1130e}, {0x11311, 0x11312}, {0x11345, 0x11346}, {0x11349, 0x1134a}, |
| 328 | {0x1134e, 0x1134f}, {0x11351, 0x11356}, {0x11358, 0x1135c}, {0x11364, 0x11365}, |
| 329 | {0x1136d, 0x1136f}, {0x11375, 0x113ff}, {0x1145f, 0x1147f}, {0x114c8, 0x114cf}, |
| 330 | {0x114da, 0x1157f}, {0x115b6, 0x115b7}, {0x115de, 0x115ff}, {0x11645, 0x1164f}, |
| 331 | {0x1165a, 0x1165f}, {0x1166d, 0x1167f}, {0x116b8, 0x116bf}, {0x116ca, 0x116ff}, |
| 332 | {0x1171b, 0x1171c}, {0x1172c, 0x1172f}, {0x11740, 0x117ff}, {0x1183c, 0x1189f}, |
| 333 | {0x118f3, 0x118fe}, {0x11900, 0x119ff}, {0x11a48, 0x11a4f}, {0x11a84, 0x11a85}, |
| 334 | {0x11aa3, 0x11abf}, {0x11af9, 0x11bff}, {0x11c46, 0x11c4f}, {0x11c6d, 0x11c6f}, |
| 335 | {0x11c90, 0x11c91}, {0x11cb7, 0x11cff}, {0x11d37, 0x11d39}, {0x11d48, 0x11d4f}, |
| 336 | {0x11d5a, 0x11d5f}, {0x11d99, 0x11d9f}, {0x11daa, 0x11edf}, {0x11ef9, 0x11fff}, |
| 337 | {0x1239a, 0x123ff}, {0x12475, 0x1247f}, {0x12544, 0x12fff}, {0x1342f, 0x143ff}, |
| 338 | {0x14647, 0x167ff}, {0x16a39, 0x16a3f}, {0x16a6a, 0x16a6d}, {0x16a70, 0x16acf}, |
| 339 | {0x16aee, 0x16aef}, {0x16af6, 0x16aff}, {0x16b46, 0x16b4f}, {0x16b78, 0x16b7c}, |
| 340 | {0x16b90, 0x16e3f}, {0x16e9b, 0x16eff}, {0x16f45, 0x16f4f}, {0x16f7f, 0x16f8e}, |
| 341 | {0x16fa0, 0x16fdf}, {0x16fe2, 0x16fff}, {0x187f2, 0x187ff}, {0x18af3, 0x1afff}, |
| 342 | {0x1b11f, 0x1b16f}, {0x1b2fc, 0x1bbff}, {0x1bc6b, 0x1bc6f}, {0x1bc7d, 0x1bc7f}, |
| 343 | {0x1bc89, 0x1bc8f}, {0x1bc9a, 0x1bc9b}, {0x1bca0, 0x1cfff}, {0x1d0f6, 0x1d0ff}, |
| 344 | {0x1d127, 0x1d128}, {0x1d173, 0x1d17a}, {0x1d1e9, 0x1d1ff}, {0x1d246, 0x1d2df}, |
| 345 | {0x1d2f4, 0x1d2ff}, {0x1d357, 0x1d35f}, {0x1d379, 0x1d3ff}, {0x1d4a0, 0x1d4a1}, |
| 346 | {0x1d4a3, 0x1d4a4}, {0x1d4a7, 0x1d4a8}, {0x1d50b, 0x1d50c}, {0x1d547, 0x1d549}, |
| 347 | {0x1d6a6, 0x1d6a7}, {0x1d7cc, 0x1d7cd}, {0x1da8c, 0x1da9a}, {0x1dab0, 0x1dfff}, |
| 348 | {0x1e019, 0x1e01a}, {0x1e02b, 0x1e7ff}, {0x1e8c5, 0x1e8c6}, {0x1e8d7, 0x1e8ff}, |
| 349 | {0x1e94b, 0x1e94f}, {0x1e95a, 0x1e95d}, {0x1e960, 0x1ec70}, {0x1ecb5, 0x1edff}, |
| 350 | {0x1ee25, 0x1ee26}, {0x1ee3c, 0x1ee41}, {0x1ee43, 0x1ee46}, {0x1ee55, 0x1ee56}, |
| 351 | {0x1ee65, 0x1ee66}, {0x1ee9c, 0x1eea0}, {0x1eebc, 0x1eeef}, {0x1eef2, 0x1efff}, |
| 352 | {0x1f02c, 0x1f02f}, {0x1f094, 0x1f09f}, {0x1f0af, 0x1f0b0}, {0x1f0f6, 0x1f0ff}, |
| 353 | {0x1f10d, 0x1f10f}, {0x1f16c, 0x1f16f}, {0x1f1ad, 0x1f1e5}, {0x1f203, 0x1f20f}, |
| 354 | {0x1f23c, 0x1f23f}, {0x1f249, 0x1f24f}, {0x1f252, 0x1f25f}, {0x1f266, 0x1f2ff}, |
| 355 | {0x1f6d5, 0x1f6df}, {0x1f6ed, 0x1f6ef}, {0x1f6fa, 0x1f6ff}, {0x1f774, 0x1f77f}, |
| 356 | {0x1f7d9, 0x1f7ff}, {0x1f80c, 0x1f80f}, {0x1f848, 0x1f84f}, {0x1f85a, 0x1f85f}, |
| 357 | {0x1f888, 0x1f88f}, {0x1f8ae, 0x1f8ff}, {0x1f90c, 0x1f90f}, {0x1f971, 0x1f972}, |
| 358 | {0x1f977, 0x1f979}, {0x1f9a3, 0x1f9af}, {0x1f9ba, 0x1f9bf}, {0x1f9c3, 0x1f9cf}, |
| 359 | {0x1fa00, 0x1fa5f}, {0x1fa6e, 0x1ffff}, {0x2a6d7, 0x2a6ff}, {0x2b735, 0x2b73f}, |
| 360 | {0x2b81e, 0x2b81f}, {0x2cea2, 0x2ceaf}, {0x2ebe1, 0x2f7ff}, {0x2fa1e, 0xe00ff}, |
| 361 | {0xe01f0, 0x10ffff}}), |
| 362 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 363 | return characterClass; |
| 364 | } |
| 365 | |
| 366 | static std::unique_ptr<CharacterClass> createCharacterClass4() |
| 367 | { |
| 368 | // Name = Unassigned, number of codePoints: 837157 |
| 369 | auto characterClass = std::make_unique<CharacterClass>( |
| 370 | std::initializer_list<UChar32>({}), |
| 371 | std::initializer_list<CharacterRange>({}), |
| 372 | std::initializer_list<UChar32>({0x038b, 0x038d, 0x03a2, 0x0530, 0x0590, 0x061d, 0x070e, 0x083f, |
| 373 | 0x085f, 0x08b5, 0x0984, 0x09a9, 0x09b1, 0x09de, 0x0a04, 0x0a29, |
| 374 | 0x0a31, 0x0a34, 0x0a37, 0x0a3d, 0x0a5d, 0x0a84, 0x0a8e, 0x0a92, |
| 375 | 0x0aa9, 0x0ab1, 0x0ab4, 0x0ac6, 0x0aca, 0x0b00, 0x0b04, 0x0b29, |
| 376 | 0x0b31, 0x0b34, 0x0b5e, 0x0b84, 0x0b91, 0x0b9b, 0x0b9d, 0x0bc9, |
| 377 | 0x0c0d, 0x0c11, 0x0c29, 0x0c45, 0x0c49, 0x0c57, 0x0c8d, 0x0c91, |
| 378 | 0x0ca9, 0x0cb4, 0x0cc5, 0x0cc9, 0x0cdf, 0x0cf0, 0x0d04, 0x0d0d, |
| 379 | 0x0d11, 0x0d45, 0x0d49, 0x0d84, 0x0db2, 0x0dbc, 0x0dd5, 0x0dd7, |
| 380 | 0x0e83, 0x0e89, 0x0e98, 0x0ea0, 0x0ea4, 0x0ea6, 0x0eac, 0x0eba, |
| 381 | 0x0ec5, 0x0ec7, 0x0f48, 0x0f98, 0x0fbd, 0x0fcd, 0x10c6, 0x1249, |
| 382 | 0x1257, 0x1259, 0x1289, 0x12b1, 0x12bf, 0x12c1, 0x12d7, 0x1311, |
| 383 | 0x170d, 0x176d, 0x1771, 0x180f, 0x191f, 0x1a5f, 0x1dfa, 0x1f58, |
| 384 | 0x1f5a, 0x1f5c, 0x1f5e, 0x1fb5, 0x1fc5, 0x1fdc, 0x1ff5, 0x1fff, |
| 385 | 0x2065, 0x208f, 0x2bc9, 0x2bff, 0x2c2f, 0x2c5f, 0x2d26, 0x2da7, |
| 386 | 0x2daf, 0x2db7, 0x2dbf, 0x2dc7, 0x2dcf, 0x2dd7, 0x2ddf, 0x2e9a, |
| 387 | 0x3040, 0x3130, 0x318f, 0x321f, 0x32ff, 0xa9ce, 0xa9ff, 0xab27, |
| 388 | 0xab2f, 0xfb37, 0xfb3d, 0xfb3f, 0xfb42, 0xfb45, 0xfe53, 0xfe67, |
| 389 | 0xfe75, 0xff00, 0xffe7, 0x1000c, 0x10027, 0x1003b, 0x1003e, 0x1018f, |
| 390 | 0x1039e, 0x10809, 0x10836, 0x10856, 0x108f3, 0x10a04, 0x10a14, 0x10a18, |
| 391 | 0x11135, 0x111e0, 0x11212, 0x11287, 0x11289, 0x1128e, 0x1129e, 0x11304, |
| 392 | 0x11329, 0x11331, 0x11334, 0x1133a, 0x1145a, 0x1145c, 0x11c09, 0x11c37, |
| 393 | 0x11ca8, 0x11d07, 0x11d0a, 0x11d3b, 0x11d3e, 0x11d66, 0x11d69, 0x11d8f, |
| 394 | 0x11d92, 0x1246f, 0x16a5f, 0x16b5a, 0x16b62, 0x1d455, 0x1d49d, 0x1d4ad, |
| 395 | 0x1d4ba, 0x1d4bc, 0x1d4c4, 0x1d506, 0x1d515, 0x1d51d, 0x1d53a, 0x1d53f, |
| 396 | 0x1d545, 0x1d551, 0x1daa0, 0x1e007, 0x1e022, 0x1e025, 0x1ee04, 0x1ee20, |
| 397 | 0x1ee23, 0x1ee28, 0x1ee33, 0x1ee38, 0x1ee3a, 0x1ee48, 0x1ee4a, 0x1ee4c, |
| 398 | 0x1ee50, 0x1ee53, 0x1ee58, 0x1ee5a, 0x1ee5c, 0x1ee5e, 0x1ee60, 0x1ee63, |
| 399 | 0x1ee6b, 0x1ee73, 0x1ee78, 0x1ee7d, 0x1ee7f, 0x1ee8a, 0x1eea4, 0x1eeaa, |
| 400 | 0x1f0c0, 0x1f0d0, 0x1f93f, 0x1f97b}), |
| 401 | std::initializer_list<CharacterRange>({{0x0378, 0x0379}, {0x0380, 0x0383}, {0x0557, 0x0558}, {0x058b, 0x058c}, |
| 402 | {0x05c8, 0x05cf}, {0x05eb, 0x05ee}, {0x05f5, 0x05ff}, {0x074b, 0x074c}, |
| 403 | {0x07b2, 0x07bf}, {0x07fb, 0x07fc}, {0x082e, 0x082f}, {0x085c, 0x085d}, |
| 404 | {0x086b, 0x089f}, {0x08be, 0x08d2}, {0x098d, 0x098e}, {0x0991, 0x0992}, |
| 405 | {0x09b3, 0x09b5}, {0x09ba, 0x09bb}, {0x09c5, 0x09c6}, {0x09c9, 0x09ca}, |
| 406 | {0x09cf, 0x09d6}, {0x09d8, 0x09db}, {0x09e4, 0x09e5}, {0x09ff, 0x0a00}, |
| 407 | {0x0a0b, 0x0a0e}, {0x0a11, 0x0a12}, {0x0a3a, 0x0a3b}, {0x0a43, 0x0a46}, |
| 408 | {0x0a49, 0x0a4a}, {0x0a4e, 0x0a50}, {0x0a52, 0x0a58}, {0x0a5f, 0x0a65}, |
| 409 | {0x0a77, 0x0a80}, {0x0aba, 0x0abb}, {0x0ace, 0x0acf}, {0x0ad1, 0x0adf}, |
| 410 | {0x0ae4, 0x0ae5}, {0x0af2, 0x0af8}, {0x0b0d, 0x0b0e}, {0x0b11, 0x0b12}, |
| 411 | {0x0b3a, 0x0b3b}, {0x0b45, 0x0b46}, {0x0b49, 0x0b4a}, {0x0b4e, 0x0b55}, |
| 412 | {0x0b58, 0x0b5b}, {0x0b64, 0x0b65}, {0x0b78, 0x0b81}, {0x0b8b, 0x0b8d}, |
| 413 | {0x0b96, 0x0b98}, {0x0ba0, 0x0ba2}, {0x0ba5, 0x0ba7}, {0x0bab, 0x0bad}, |
| 414 | {0x0bba, 0x0bbd}, {0x0bc3, 0x0bc5}, {0x0bce, 0x0bcf}, {0x0bd1, 0x0bd6}, |
| 415 | {0x0bd8, 0x0be5}, {0x0bfb, 0x0bff}, {0x0c3a, 0x0c3c}, {0x0c4e, 0x0c54}, |
| 416 | {0x0c5b, 0x0c5f}, {0x0c64, 0x0c65}, {0x0c70, 0x0c77}, {0x0cba, 0x0cbb}, |
| 417 | {0x0cce, 0x0cd4}, {0x0cd7, 0x0cdd}, {0x0ce4, 0x0ce5}, {0x0cf3, 0x0cff}, |
| 418 | {0x0d50, 0x0d53}, {0x0d64, 0x0d65}, {0x0d80, 0x0d81}, {0x0d97, 0x0d99}, |
| 419 | {0x0dbe, 0x0dbf}, {0x0dc7, 0x0dc9}, {0x0dcb, 0x0dce}, {0x0de0, 0x0de5}, |
| 420 | {0x0df0, 0x0df1}, {0x0df5, 0x0e00}, {0x0e3b, 0x0e3e}, {0x0e5c, 0x0e80}, |
| 421 | {0x0e85, 0x0e86}, {0x0e8b, 0x0e8c}, {0x0e8e, 0x0e93}, {0x0ea8, 0x0ea9}, |
| 422 | {0x0ebe, 0x0ebf}, {0x0ece, 0x0ecf}, {0x0eda, 0x0edb}, {0x0ee0, 0x0eff}, |
| 423 | {0x0f6d, 0x0f70}, {0x0fdb, 0x0fff}, {0x10c8, 0x10cc}, {0x10ce, 0x10cf}, |
| 424 | {0x124e, 0x124f}, {0x125e, 0x125f}, {0x128e, 0x128f}, {0x12b6, 0x12b7}, |
| 425 | {0x12c6, 0x12c7}, {0x1316, 0x1317}, {0x135b, 0x135c}, {0x137d, 0x137f}, |
| 426 | {0x139a, 0x139f}, {0x13f6, 0x13f7}, {0x13fe, 0x13ff}, {0x169d, 0x169f}, |
| 427 | {0x16f9, 0x16ff}, {0x1715, 0x171f}, {0x1737, 0x173f}, {0x1754, 0x175f}, |
| 428 | {0x1774, 0x177f}, {0x17de, 0x17df}, {0x17ea, 0x17ef}, {0x17fa, 0x17ff}, |
| 429 | {0x181a, 0x181f}, {0x1879, 0x187f}, {0x18ab, 0x18af}, {0x18f6, 0x18ff}, |
| 430 | {0x192c, 0x192f}, {0x193c, 0x193f}, {0x1941, 0x1943}, {0x196e, 0x196f}, |
| 431 | {0x1975, 0x197f}, {0x19ac, 0x19af}, {0x19ca, 0x19cf}, {0x19db, 0x19dd}, |
| 432 | {0x1a1c, 0x1a1d}, {0x1a7d, 0x1a7e}, {0x1a8a, 0x1a8f}, {0x1a9a, 0x1a9f}, |
| 433 | {0x1aae, 0x1aaf}, {0x1abf, 0x1aff}, {0x1b4c, 0x1b4f}, {0x1b7d, 0x1b7f}, |
| 434 | {0x1bf4, 0x1bfb}, {0x1c38, 0x1c3a}, {0x1c4a, 0x1c4c}, {0x1c89, 0x1c8f}, |
| 435 | {0x1cbb, 0x1cbc}, {0x1cc8, 0x1ccf}, {0x1cfa, 0x1cff}, {0x1f16, 0x1f17}, |
| 436 | {0x1f1e, 0x1f1f}, {0x1f46, 0x1f47}, {0x1f4e, 0x1f4f}, {0x1f7e, 0x1f7f}, |
| 437 | {0x1fd4, 0x1fd5}, {0x1ff0, 0x1ff1}, {0x2072, 0x2073}, {0x209d, 0x209f}, |
| 438 | {0x20c0, 0x20cf}, {0x20f1, 0x20ff}, {0x218c, 0x218f}, {0x2427, 0x243f}, |
| 439 | {0x244b, 0x245f}, {0x2b74, 0x2b75}, {0x2b96, 0x2b97}, {0x2cf4, 0x2cf8}, |
| 440 | {0x2d28, 0x2d2c}, {0x2d2e, 0x2d2f}, {0x2d68, 0x2d6e}, {0x2d71, 0x2d7e}, |
| 441 | {0x2d97, 0x2d9f}, {0x2e4f, 0x2e7f}, {0x2ef4, 0x2eff}, {0x2fd6, 0x2fef}, |
| 442 | {0x2ffc, 0x2fff}, {0x3097, 0x3098}, {0x3100, 0x3104}, {0x31bb, 0x31bf}, |
| 443 | {0x31e4, 0x31ef}, {0x4db6, 0x4dbf}, {0x9ff0, 0x9fff}, {0xa48d, 0xa48f}, |
| 444 | {0xa4c7, 0xa4cf}, {0xa62c, 0xa63f}, {0xa6f8, 0xa6ff}, {0xa7ba, 0xa7f6}, |
| 445 | {0xa82c, 0xa82f}, {0xa83a, 0xa83f}, {0xa878, 0xa87f}, {0xa8c6, 0xa8cd}, |
| 446 | {0xa8da, 0xa8df}, {0xa954, 0xa95e}, {0xa97d, 0xa97f}, {0xa9da, 0xa9dd}, |
| 447 | {0xaa37, 0xaa3f}, {0xaa4e, 0xaa4f}, {0xaa5a, 0xaa5b}, {0xaac3, 0xaada}, |
| 448 | {0xaaf7, 0xab00}, {0xab07, 0xab08}, {0xab0f, 0xab10}, {0xab17, 0xab1f}, |
| 449 | {0xab66, 0xab6f}, {0xabee, 0xabef}, {0xabfa, 0xabff}, {0xd7a4, 0xd7af}, |
| 450 | {0xd7c7, 0xd7ca}, {0xd7fc, 0xd7ff}, {0xfa6e, 0xfa6f}, {0xfada, 0xfaff}, |
| 451 | {0xfb07, 0xfb12}, {0xfb18, 0xfb1c}, {0xfbc2, 0xfbd2}, {0xfd40, 0xfd4f}, |
| 452 | {0xfd90, 0xfd91}, {0xfdc8, 0xfdef}, {0xfdfe, 0xfdff}, {0xfe1a, 0xfe1f}, |
| 453 | {0xfe6c, 0xfe6f}, {0xfefd, 0xfefe}, {0xffbf, 0xffc1}, {0xffc8, 0xffc9}, |
| 454 | {0xffd0, 0xffd1}, {0xffd8, 0xffd9}, {0xffdd, 0xffdf}, {0xffef, 0xfff8}, |
| 455 | {0xfffe, 0xffff}, {0x1004e, 0x1004f}, {0x1005e, 0x1007f}, {0x100fb, 0x100ff}, |
| 456 | {0x10103, 0x10106}, {0x10134, 0x10136}, {0x1019c, 0x1019f}, {0x101a1, 0x101cf}, |
| 457 | {0x101fe, 0x1027f}, {0x1029d, 0x1029f}, {0x102d1, 0x102df}, {0x102fc, 0x102ff}, |
| 458 | {0x10324, 0x1032c}, {0x1034b, 0x1034f}, {0x1037b, 0x1037f}, {0x103c4, 0x103c7}, |
| 459 | {0x103d6, 0x103ff}, {0x1049e, 0x1049f}, {0x104aa, 0x104af}, {0x104d4, 0x104d7}, |
| 460 | {0x104fc, 0x104ff}, {0x10528, 0x1052f}, {0x10564, 0x1056e}, {0x10570, 0x105ff}, |
| 461 | {0x10737, 0x1073f}, {0x10756, 0x1075f}, {0x10768, 0x107ff}, {0x10806, 0x10807}, |
| 462 | {0x10839, 0x1083b}, {0x1083d, 0x1083e}, {0x1089f, 0x108a6}, {0x108b0, 0x108df}, |
| 463 | {0x108f6, 0x108fa}, {0x1091c, 0x1091e}, {0x1093a, 0x1093e}, {0x10940, 0x1097f}, |
| 464 | {0x109b8, 0x109bb}, {0x109d0, 0x109d1}, {0x10a07, 0x10a0b}, {0x10a36, 0x10a37}, |
| 465 | {0x10a3b, 0x10a3e}, {0x10a49, 0x10a4f}, {0x10a59, 0x10a5f}, {0x10aa0, 0x10abf}, |
| 466 | {0x10ae7, 0x10aea}, {0x10af7, 0x10aff}, {0x10b36, 0x10b38}, {0x10b56, 0x10b57}, |
| 467 | {0x10b73, 0x10b77}, {0x10b92, 0x10b98}, {0x10b9d, 0x10ba8}, {0x10bb0, 0x10bff}, |
| 468 | {0x10c49, 0x10c7f}, {0x10cb3, 0x10cbf}, {0x10cf3, 0x10cf9}, {0x10d28, 0x10d2f}, |
| 469 | {0x10d3a, 0x10e5f}, {0x10e7f, 0x10eff}, {0x10f28, 0x10f2f}, {0x10f5a, 0x10fff}, |
| 470 | {0x1104e, 0x11051}, {0x11070, 0x1107e}, {0x110c2, 0x110cc}, {0x110ce, 0x110cf}, |
| 471 | {0x110e9, 0x110ef}, {0x110fa, 0x110ff}, {0x11147, 0x1114f}, {0x11177, 0x1117f}, |
| 472 | {0x111ce, 0x111cf}, {0x111f5, 0x111ff}, {0x1123f, 0x1127f}, {0x112aa, 0x112af}, |
| 473 | {0x112eb, 0x112ef}, {0x112fa, 0x112ff}, {0x1130d, 0x1130e}, {0x11311, 0x11312}, |
| 474 | {0x11345, 0x11346}, {0x11349, 0x1134a}, {0x1134e, 0x1134f}, {0x11351, 0x11356}, |
| 475 | {0x11358, 0x1135c}, {0x11364, 0x11365}, {0x1136d, 0x1136f}, {0x11375, 0x113ff}, |
| 476 | {0x1145f, 0x1147f}, {0x114c8, 0x114cf}, {0x114da, 0x1157f}, {0x115b6, 0x115b7}, |
| 477 | {0x115de, 0x115ff}, {0x11645, 0x1164f}, {0x1165a, 0x1165f}, {0x1166d, 0x1167f}, |
| 478 | {0x116b8, 0x116bf}, {0x116ca, 0x116ff}, {0x1171b, 0x1171c}, {0x1172c, 0x1172f}, |
| 479 | {0x11740, 0x117ff}, {0x1183c, 0x1189f}, {0x118f3, 0x118fe}, {0x11900, 0x119ff}, |
| 480 | {0x11a48, 0x11a4f}, {0x11a84, 0x11a85}, {0x11aa3, 0x11abf}, {0x11af9, 0x11bff}, |
| 481 | {0x11c46, 0x11c4f}, {0x11c6d, 0x11c6f}, {0x11c90, 0x11c91}, {0x11cb7, 0x11cff}, |
| 482 | {0x11d37, 0x11d39}, {0x11d48, 0x11d4f}, {0x11d5a, 0x11d5f}, {0x11d99, 0x11d9f}, |
| 483 | {0x11daa, 0x11edf}, {0x11ef9, 0x11fff}, {0x1239a, 0x123ff}, {0x12475, 0x1247f}, |
| 484 | {0x12544, 0x12fff}, {0x1342f, 0x143ff}, {0x14647, 0x167ff}, {0x16a39, 0x16a3f}, |
| 485 | {0x16a6a, 0x16a6d}, {0x16a70, 0x16acf}, {0x16aee, 0x16aef}, {0x16af6, 0x16aff}, |
| 486 | {0x16b46, 0x16b4f}, {0x16b78, 0x16b7c}, {0x16b90, 0x16e3f}, {0x16e9b, 0x16eff}, |
| 487 | {0x16f45, 0x16f4f}, {0x16f7f, 0x16f8e}, {0x16fa0, 0x16fdf}, {0x16fe2, 0x16fff}, |
| 488 | {0x187f2, 0x187ff}, {0x18af3, 0x1afff}, {0x1b11f, 0x1b16f}, {0x1b2fc, 0x1bbff}, |
| 489 | {0x1bc6b, 0x1bc6f}, {0x1bc7d, 0x1bc7f}, {0x1bc89, 0x1bc8f}, {0x1bc9a, 0x1bc9b}, |
| 490 | {0x1bca4, 0x1cfff}, {0x1d0f6, 0x1d0ff}, {0x1d127, 0x1d128}, {0x1d1e9, 0x1d1ff}, |
| 491 | {0x1d246, 0x1d2df}, {0x1d2f4, 0x1d2ff}, {0x1d357, 0x1d35f}, {0x1d379, 0x1d3ff}, |
| 492 | {0x1d4a0, 0x1d4a1}, {0x1d4a3, 0x1d4a4}, {0x1d4a7, 0x1d4a8}, {0x1d50b, 0x1d50c}, |
| 493 | {0x1d547, 0x1d549}, {0x1d6a6, 0x1d6a7}, {0x1d7cc, 0x1d7cd}, {0x1da8c, 0x1da9a}, |
| 494 | {0x1dab0, 0x1dfff}, {0x1e019, 0x1e01a}, {0x1e02b, 0x1e7ff}, {0x1e8c5, 0x1e8c6}, |
| 495 | {0x1e8d7, 0x1e8ff}, {0x1e94b, 0x1e94f}, {0x1e95a, 0x1e95d}, {0x1e960, 0x1ec70}, |
| 496 | {0x1ecb5, 0x1edff}, {0x1ee25, 0x1ee26}, {0x1ee3c, 0x1ee41}, {0x1ee43, 0x1ee46}, |
| 497 | {0x1ee55, 0x1ee56}, {0x1ee65, 0x1ee66}, {0x1ee9c, 0x1eea0}, {0x1eebc, 0x1eeef}, |
| 498 | {0x1eef2, 0x1efff}, {0x1f02c, 0x1f02f}, {0x1f094, 0x1f09f}, {0x1f0af, 0x1f0b0}, |
| 499 | {0x1f0f6, 0x1f0ff}, {0x1f10d, 0x1f10f}, {0x1f16c, 0x1f16f}, {0x1f1ad, 0x1f1e5}, |
| 500 | {0x1f203, 0x1f20f}, {0x1f23c, 0x1f23f}, {0x1f249, 0x1f24f}, {0x1f252, 0x1f25f}, |
| 501 | {0x1f266, 0x1f2ff}, {0x1f6d5, 0x1f6df}, {0x1f6ed, 0x1f6ef}, {0x1f6fa, 0x1f6ff}, |
| 502 | {0x1f774, 0x1f77f}, {0x1f7d9, 0x1f7ff}, {0x1f80c, 0x1f80f}, {0x1f848, 0x1f84f}, |
| 503 | {0x1f85a, 0x1f85f}, {0x1f888, 0x1f88f}, {0x1f8ae, 0x1f8ff}, {0x1f90c, 0x1f90f}, |
| 504 | {0x1f971, 0x1f972}, {0x1f977, 0x1f979}, {0x1f9a3, 0x1f9af}, {0x1f9ba, 0x1f9bf}, |
| 505 | {0x1f9c3, 0x1f9cf}, {0x1fa00, 0x1fa5f}, {0x1fa6e, 0x1ffff}, {0x2a6d7, 0x2a6ff}, |
| 506 | {0x2b735, 0x2b73f}, {0x2b81e, 0x2b81f}, {0x2cea2, 0x2ceaf}, {0x2ebe1, 0x2f7ff}, |
| 507 | {0x2fa1e, 0xe0000}, {0xe0002, 0xe001f}, {0xe0080, 0xe00ff}, {0xe01f0, 0xeffff}, |
| 508 | {0xffffe, 0xfffff}, {0x10fffe, 0x10ffff}}), |
| 509 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 510 | return characterClass; |
| 511 | } |
| 512 | |
| 513 | static std::unique_ptr<CharacterClass> createCharacterClass5() |
| 514 | { |
| 515 | // Name = Letter, number of codePoints: 125419 |
| 516 | auto characterClass = std::make_unique<CharacterClass>( |
| 517 | std::initializer_list<UChar32>({}), |
| 518 | std::initializer_list<CharacterRange>({{0x41, 0x5a}, {0x61, 0x7a}}), |
| 519 | std::initializer_list<UChar32>({0x00aa, 0x00b5, 0x00ba, 0x02ec, 0x02ee, 0x037f, 0x0386, 0x038c, |
| 520 | 0x0559, 0x06d5, 0x06ff, 0x0710, 0x07b1, 0x07fa, 0x081a, 0x0824, |
| 521 | 0x0828, 0x093d, 0x0950, 0x09b2, 0x09bd, 0x09ce, 0x09fc, 0x0a5e, |
| 522 | 0x0abd, 0x0ad0, 0x0af9, 0x0b3d, 0x0b71, 0x0b83, 0x0b9c, 0x0bd0, |
| 523 | 0x0c3d, 0x0c80, 0x0cbd, 0x0cde, 0x0d3d, 0x0d4e, 0x0dbd, 0x0e84, |
| 524 | 0x0e8a, 0x0e8d, 0x0ea5, 0x0ea7, 0x0ebd, 0x0ec6, 0x0f00, 0x103f, |
| 525 | 0x1061, 0x108e, 0x10c7, 0x10cd, 0x1258, 0x12c0, 0x17d7, 0x17dc, |
| 526 | 0x18aa, 0x1aa7, 0x1f59, 0x1f5b, 0x1f5d, 0x1fbe, 0x2071, 0x207f, |
| 527 | 0x2102, 0x2107, 0x2115, 0x2124, 0x2126, 0x2128, 0x214e, 0x2d27, |
| 528 | 0x2d2d, 0x2d6f, 0x2e2f, 0xa8fb, 0xa9cf, 0xaa7a, 0xaab1, 0xaac0, |
| 529 | 0xaac2, 0xfb1d, 0xfb3e, 0x10808, 0x1083c, 0x10a00, 0x10f27, 0x11144, |
| 530 | 0x11176, 0x111da, 0x111dc, 0x11288, 0x1133d, 0x11350, 0x114c7, 0x11644, |
| 531 | 0x118ff, 0x11a00, 0x11a3a, 0x11a50, 0x11a9d, 0x11c40, 0x11d46, 0x11d98, |
| 532 | 0x16f50, 0x1d4a2, 0x1d4bb, 0x1d546, 0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, |
| 533 | 0x1ee42, 0x1ee47, 0x1ee49, 0x1ee4b, 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, |
| 534 | 0x1ee5d, 0x1ee5f, 0x1ee64, 0x1ee7e}), |
| 535 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00f6}, {0x00f8, 0x02c1}, {0x02c6, 0x02d1}, |
| 536 | {0x02e0, 0x02e4}, {0x0370, 0x0374}, {0x0376, 0x0377}, {0x037a, 0x037d}, |
| 537 | {0x0388, 0x038a}, {0x038e, 0x03a1}, {0x03a3, 0x03f5}, {0x03f7, 0x0481}, |
| 538 | {0x048a, 0x052f}, {0x0531, 0x0556}, {0x0560, 0x0588}, {0x05d0, 0x05ea}, |
| 539 | {0x05ef, 0x05f2}, {0x0620, 0x064a}, {0x066e, 0x066f}, {0x0671, 0x06d3}, |
| 540 | {0x06e5, 0x06e6}, {0x06ee, 0x06ef}, {0x06fa, 0x06fc}, {0x0712, 0x072f}, |
| 541 | {0x074d, 0x07a5}, {0x07ca, 0x07ea}, {0x07f4, 0x07f5}, {0x0800, 0x0815}, |
| 542 | {0x0840, 0x0858}, {0x0860, 0x086a}, {0x08a0, 0x08b4}, {0x08b6, 0x08bd}, |
| 543 | {0x0904, 0x0939}, {0x0958, 0x0961}, {0x0971, 0x0980}, {0x0985, 0x098c}, |
| 544 | {0x098f, 0x0990}, {0x0993, 0x09a8}, {0x09aa, 0x09b0}, {0x09b6, 0x09b9}, |
| 545 | {0x09dc, 0x09dd}, {0x09df, 0x09e1}, {0x09f0, 0x09f1}, {0x0a05, 0x0a0a}, |
| 546 | {0x0a0f, 0x0a10}, {0x0a13, 0x0a28}, {0x0a2a, 0x0a30}, {0x0a32, 0x0a33}, |
| 547 | {0x0a35, 0x0a36}, {0x0a38, 0x0a39}, {0x0a59, 0x0a5c}, {0x0a72, 0x0a74}, |
| 548 | {0x0a85, 0x0a8d}, {0x0a8f, 0x0a91}, {0x0a93, 0x0aa8}, {0x0aaa, 0x0ab0}, |
| 549 | {0x0ab2, 0x0ab3}, {0x0ab5, 0x0ab9}, {0x0ae0, 0x0ae1}, {0x0b05, 0x0b0c}, |
| 550 | {0x0b0f, 0x0b10}, {0x0b13, 0x0b28}, {0x0b2a, 0x0b30}, {0x0b32, 0x0b33}, |
| 551 | {0x0b35, 0x0b39}, {0x0b5c, 0x0b5d}, {0x0b5f, 0x0b61}, {0x0b85, 0x0b8a}, |
| 552 | {0x0b8e, 0x0b90}, {0x0b92, 0x0b95}, {0x0b99, 0x0b9a}, {0x0b9e, 0x0b9f}, |
| 553 | {0x0ba3, 0x0ba4}, {0x0ba8, 0x0baa}, {0x0bae, 0x0bb9}, {0x0c05, 0x0c0c}, |
| 554 | {0x0c0e, 0x0c10}, {0x0c12, 0x0c28}, {0x0c2a, 0x0c39}, {0x0c58, 0x0c5a}, |
| 555 | {0x0c60, 0x0c61}, {0x0c85, 0x0c8c}, {0x0c8e, 0x0c90}, {0x0c92, 0x0ca8}, |
| 556 | {0x0caa, 0x0cb3}, {0x0cb5, 0x0cb9}, {0x0ce0, 0x0ce1}, {0x0cf1, 0x0cf2}, |
| 557 | {0x0d05, 0x0d0c}, {0x0d0e, 0x0d10}, {0x0d12, 0x0d3a}, {0x0d54, 0x0d56}, |
| 558 | {0x0d5f, 0x0d61}, {0x0d7a, 0x0d7f}, {0x0d85, 0x0d96}, {0x0d9a, 0x0db1}, |
| 559 | {0x0db3, 0x0dbb}, {0x0dc0, 0x0dc6}, {0x0e01, 0x0e30}, {0x0e32, 0x0e33}, |
| 560 | {0x0e40, 0x0e46}, {0x0e81, 0x0e82}, {0x0e87, 0x0e88}, {0x0e94, 0x0e97}, |
| 561 | {0x0e99, 0x0e9f}, {0x0ea1, 0x0ea3}, {0x0eaa, 0x0eab}, {0x0ead, 0x0eb0}, |
| 562 | {0x0eb2, 0x0eb3}, {0x0ec0, 0x0ec4}, {0x0edc, 0x0edf}, {0x0f40, 0x0f47}, |
| 563 | {0x0f49, 0x0f6c}, {0x0f88, 0x0f8c}, {0x1000, 0x102a}, {0x1050, 0x1055}, |
| 564 | {0x105a, 0x105d}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081}, |
| 565 | {0x10a0, 0x10c5}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, |
| 566 | {0x1250, 0x1256}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, |
| 567 | {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c2, 0x12c5}, |
| 568 | {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, |
| 569 | {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1401, 0x166c}, |
| 570 | {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16f1, 0x16f8}, |
| 571 | {0x1700, 0x170c}, {0x170e, 0x1711}, {0x1720, 0x1731}, {0x1740, 0x1751}, |
| 572 | {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x1820, 0x1878}, |
| 573 | {0x1880, 0x1884}, {0x1887, 0x18a8}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, |
| 574 | {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, |
| 575 | {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4b}, |
| 576 | {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, |
| 577 | {0x1c4d, 0x1c4f}, {0x1c5a, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, |
| 578 | {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf1}, {0x1cf5, 0x1cf6}, |
| 579 | {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, |
| 580 | {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, |
| 581 | {0x1fb6, 0x1fbc}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, |
| 582 | {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, |
| 583 | {0x2090, 0x209c}, {0x210a, 0x2113}, {0x2119, 0x211d}, {0x212a, 0x212d}, |
| 584 | {0x212f, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x2183, 0x2184}, |
| 585 | {0x2c00, 0x2c2e}, {0x2c30, 0x2c5e}, {0x2c60, 0x2ce4}, {0x2ceb, 0x2cee}, |
| 586 | {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d30, 0x2d67}, {0x2d80, 0x2d96}, |
| 587 | {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, |
| 588 | {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, |
| 589 | {0x3005, 0x3006}, {0x3031, 0x3035}, {0x303b, 0x303c}, {0x3041, 0x3096}, |
| 590 | {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, |
| 591 | {0x3131, 0x318e}, {0x31a0, 0x31ba}, {0x31f0, 0x31ff}, {0x3400, 0x4db5}, |
| 592 | {0x4e00, 0x9fef}, {0xa000, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, |
| 593 | {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, {0xa67f, 0xa69d}, |
| 594 | {0xa6a0, 0xa6e5}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7b9}, |
| 595 | {0xa7f7, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, |
| 596 | {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fd, 0xa8fe}, |
| 597 | {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, |
| 598 | {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, |
| 599 | {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7e, 0xaaaf}, |
| 600 | {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, |
| 601 | {0xaaf2, 0xaaf4}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, |
| 602 | {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab65}, |
| 603 | {0xab70, 0xabe2}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, |
| 604 | {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, |
| 605 | {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb40, 0xfb41}, |
| 606 | {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, |
| 607 | {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfb}, {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, |
| 608 | {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, {0xffc2, 0xffc7}, |
| 609 | {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, |
| 610 | {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, |
| 611 | {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, |
| 612 | {0x10300, 0x1031f}, {0x1032d, 0x10340}, {0x10342, 0x10349}, {0x10350, 0x10375}, |
| 613 | {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x10400, 0x1049d}, |
| 614 | {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, |
| 615 | {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10800, 0x10805}, |
| 616 | {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083f, 0x10855}, {0x10860, 0x10876}, |
| 617 | {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, |
| 618 | {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a10, 0x10a13}, |
| 619 | {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, |
| 620 | {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, |
| 621 | {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, |
| 622 | {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10f00, 0x10f1c}, {0x10f30, 0x10f45}, |
| 623 | {0x11003, 0x11037}, {0x11083, 0x110af}, {0x110d0, 0x110e8}, {0x11103, 0x11126}, |
| 624 | {0x11150, 0x11172}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, {0x11200, 0x11211}, |
| 625 | {0x11213, 0x1122b}, {0x11280, 0x11286}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, |
| 626 | {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, |
| 627 | {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, |
| 628 | {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x11480, 0x114af}, |
| 629 | {0x114c4, 0x114c5}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, |
| 630 | {0x11680, 0x116aa}, {0x11700, 0x1171a}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, |
| 631 | {0x11a0b, 0x11a32}, {0x11a5c, 0x11a83}, {0x11a86, 0x11a89}, {0x11ac0, 0x11af8}, |
| 632 | {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, |
| 633 | {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, |
| 634 | {0x11d6a, 0x11d89}, {0x11ee0, 0x11ef2}, {0x12000, 0x12399}, {0x12480, 0x12543}, |
| 635 | {0x13000, 0x1342e}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, |
| 636 | {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, |
| 637 | {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f44}, {0x16f93, 0x16f9f}, |
| 638 | {0x16fe0, 0x16fe1}, {0x17000, 0x187f1}, {0x18800, 0x18af2}, {0x1b000, 0x1b11e}, |
| 639 | {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, |
| 640 | {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, |
| 641 | {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bd, 0x1d4c3}, |
| 642 | {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, |
| 643 | {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d54a, 0x1d550}, |
| 644 | {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, |
| 645 | {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, |
| 646 | {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, |
| 647 | {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, |
| 648 | {0x1ee21, 0x1ee22}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee4d, 0x1ee4f}, |
| 649 | {0x1ee51, 0x1ee52}, {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, |
| 650 | {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, |
| 651 | {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x20000, 0x2a6d6}, |
| 652 | {0x2a700, 0x2b734}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, |
| 653 | {0x2f800, 0x2fa1d}}), |
| 654 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 655 | return characterClass; |
| 656 | } |
| 657 | |
| 658 | static std::unique_ptr<CharacterClass> createCharacterClass6() |
| 659 | { |
| 660 | // Name = Cased_Letter, number of codePoints: 3957 |
| 661 | auto characterClass = std::make_unique<CharacterClass>( |
| 662 | std::initializer_list<UChar32>({}), |
| 663 | std::initializer_list<CharacterRange>({{0x41, 0x5a}, {0x61, 0x7a}}), |
| 664 | std::initializer_list<UChar32>({0x00b5, 0x037f, 0x0386, 0x038c, 0x10c7, 0x10cd, 0x1f59, 0x1f5b, |
| 665 | 0x1f5d, 0x1fbe, 0x2102, 0x2107, 0x2115, 0x2124, 0x2126, 0x2128, |
| 666 | 0x2139, 0x214e, 0x2d27, 0x2d2d, 0xa7fa, 0x1d4a2, 0x1d4bb, 0x1d546}), |
| 667 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00f6}, {0x00f8, 0x01ba}, {0x01bc, 0x01bf}, |
| 668 | {0x01c4, 0x0293}, {0x0295, 0x02af}, {0x0370, 0x0373}, {0x0376, 0x0377}, |
| 669 | {0x037b, 0x037d}, {0x0388, 0x038a}, {0x038e, 0x03a1}, {0x03a3, 0x03f5}, |
| 670 | {0x03f7, 0x0481}, {0x048a, 0x052f}, {0x0531, 0x0556}, {0x0560, 0x0588}, |
| 671 | {0x10a0, 0x10c5}, {0x10d0, 0x10fa}, {0x10fd, 0x10ff}, {0x13a0, 0x13f5}, |
| 672 | {0x13f8, 0x13fd}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, |
| 673 | {0x1d00, 0x1d2b}, {0x1d6b, 0x1d77}, {0x1d79, 0x1d9a}, {0x1e00, 0x1f15}, |
| 674 | {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, |
| 675 | {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fc2, 0x1fc4}, |
| 676 | {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, |
| 677 | {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x210a, 0x2113}, {0x2119, 0x211d}, |
| 678 | {0x212a, 0x212d}, {0x212f, 0x2134}, {0x213c, 0x213f}, {0x2145, 0x2149}, |
| 679 | {0x2183, 0x2184}, {0x2c00, 0x2c2e}, {0x2c30, 0x2c5e}, {0x2c60, 0x2c7b}, |
| 680 | {0x2c7e, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, |
| 681 | {0xa640, 0xa66d}, {0xa680, 0xa69b}, {0xa722, 0xa76f}, {0xa771, 0xa787}, |
| 682 | {0xa78b, 0xa78e}, {0xa790, 0xa7b9}, {0xab30, 0xab5a}, {0xab60, 0xab65}, |
| 683 | {0xab70, 0xabbf}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xff21, 0xff3a}, |
| 684 | {0xff41, 0xff5a}, {0x10400, 0x1044f}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, |
| 685 | {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x118a0, 0x118df}, {0x16e40, 0x16e7f}, |
| 686 | {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, |
| 687 | {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, |
| 688 | {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, |
| 689 | {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, |
| 690 | {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, |
| 691 | {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, |
| 692 | {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1e900, 0x1e943}}), |
| 693 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 694 | return characterClass; |
| 695 | } |
| 696 | |
| 697 | static std::unique_ptr<CharacterClass> createCharacterClass7() |
| 698 | { |
| 699 | // Name = Control, number of codePoints: 65 |
| 700 | auto characterClass = std::make_unique<CharacterClass>( |
| 701 | std::initializer_list<UChar32>({0x7f}), |
| 702 | std::initializer_list<CharacterRange>({{0x00, 0x1f}}), |
| 703 | std::initializer_list<UChar32>({}), |
| 704 | std::initializer_list<CharacterRange>({{0x0080, 0x009f}}), |
| 705 | CharacterClassWidths::HasBMPChars); |
| 706 | return characterClass; |
| 707 | } |
| 708 | |
| 709 | static std::unique_ptr<CharacterClass> createCharacterClass8() |
| 710 | { |
| 711 | // Name = Separator, number of codePoints: 19 |
| 712 | auto characterClass = std::make_unique<CharacterClass>( |
| 713 | std::initializer_list<UChar32>({0x20}), |
| 714 | std::initializer_list<CharacterRange>({}), |
| 715 | std::initializer_list<UChar32>({0x00a0, 0x1680, 0x202f, 0x205f, 0x3000}), |
| 716 | std::initializer_list<CharacterRange>({{0x2000, 0x200a}, {0x2028, 0x2029}}), |
| 717 | CharacterClassWidths::HasBMPChars); |
| 718 | return characterClass; |
| 719 | } |
| 720 | |
| 721 | static std::unique_ptr<CharacterClass> createCharacterClass9() |
| 722 | { |
| 723 | // Name = Space_Separator, number of codePoints: 17 |
| 724 | auto characterClass = std::make_unique<CharacterClass>( |
| 725 | std::initializer_list<UChar32>({0x20}), |
| 726 | std::initializer_list<CharacterRange>({}), |
| 727 | std::initializer_list<UChar32>({0x00a0, 0x1680, 0x202f, 0x205f, 0x3000}), |
| 728 | std::initializer_list<CharacterRange>({{0x2000, 0x200a}}), |
| 729 | CharacterClassWidths::HasBMPChars); |
| 730 | return characterClass; |
| 731 | } |
| 732 | |
| 733 | static std::unique_ptr<CharacterClass> createCharacterClass10() |
| 734 | { |
| 735 | // Name = Punctuation, number of codePoints: 788 |
| 736 | auto characterClass = std::make_unique<CharacterClass>( |
| 737 | std::initializer_list<UChar32>({0x5f, 0x7b, 0x7d}), |
| 738 | std::initializer_list<CharacterRange>({{0x21, 0x23}, {0x25, 0x2a}, {0x2c, 0x2f}, {0x3a, 0x3b}, |
| 739 | {0x3f, 0x40}, {0x5b, 0x5d}}), |
| 740 | std::initializer_list<UChar32>({0x00a1, 0x00a7, 0x00ab, 0x00bb, 0x00bf, 0x037e, 0x0387, 0x05be, |
| 741 | 0x05c0, 0x05c3, 0x05c6, 0x061b, 0x06d4, 0x085e, 0x0970, 0x09fd, |
| 742 | 0x0a76, 0x0af0, 0x0c84, 0x0df4, 0x0e4f, 0x0f14, 0x0f85, 0x10fb, |
| 743 | 0x1400, 0x1cd3, 0x2d70, 0x3030, 0x303d, 0x30a0, 0x30fb, 0xa673, |
| 744 | 0xa67e, 0xa8fc, 0xa95f, 0xabeb, 0xfe63, 0xfe68, 0xff3f, 0xff5b, |
| 745 | 0xff5d, 0x1039f, 0x103d0, 0x1056f, 0x10857, 0x1091f, 0x1093f, 0x10a7f, |
| 746 | 0x111cd, 0x111db, 0x112a9, 0x1145b, 0x1145d, 0x114c6, 0x1183b, 0x16af5, |
| 747 | 0x16b44, 0x1bc9f}), |
| 748 | std::initializer_list<CharacterRange>({{0x00b6, 0x00b7}, {0x055a, 0x055f}, {0x0589, 0x058a}, {0x05f3, 0x05f4}, |
| 749 | {0x0609, 0x060a}, {0x060c, 0x060d}, {0x061e, 0x061f}, {0x066a, 0x066d}, |
| 750 | {0x0700, 0x070d}, {0x07f7, 0x07f9}, {0x0830, 0x083e}, {0x0964, 0x0965}, |
| 751 | {0x0e5a, 0x0e5b}, {0x0f04, 0x0f12}, {0x0f3a, 0x0f3d}, {0x0fd0, 0x0fd4}, |
| 752 | {0x0fd9, 0x0fda}, {0x104a, 0x104f}, {0x1360, 0x1368}, {0x166d, 0x166e}, |
| 753 | {0x169b, 0x169c}, {0x16eb, 0x16ed}, {0x1735, 0x1736}, {0x17d4, 0x17d6}, |
| 754 | {0x17d8, 0x17da}, {0x1800, 0x180a}, {0x1944, 0x1945}, {0x1a1e, 0x1a1f}, |
| 755 | {0x1aa0, 0x1aa6}, {0x1aa8, 0x1aad}, {0x1b5a, 0x1b60}, {0x1bfc, 0x1bff}, |
| 756 | {0x1c3b, 0x1c3f}, {0x1c7e, 0x1c7f}, {0x1cc0, 0x1cc7}, {0x2010, 0x2027}, |
| 757 | {0x2030, 0x2043}, {0x2045, 0x2051}, {0x2053, 0x205e}, {0x207d, 0x207e}, |
| 758 | {0x208d, 0x208e}, {0x2308, 0x230b}, {0x2329, 0x232a}, {0x2768, 0x2775}, |
| 759 | {0x27c5, 0x27c6}, {0x27e6, 0x27ef}, {0x2983, 0x2998}, {0x29d8, 0x29db}, |
| 760 | {0x29fc, 0x29fd}, {0x2cf9, 0x2cfc}, {0x2cfe, 0x2cff}, {0x2e00, 0x2e2e}, |
| 761 | {0x2e30, 0x2e4e}, {0x3001, 0x3003}, {0x3008, 0x3011}, {0x3014, 0x301f}, |
| 762 | {0xa4fe, 0xa4ff}, {0xa60d, 0xa60f}, {0xa6f2, 0xa6f7}, {0xa874, 0xa877}, |
| 763 | {0xa8ce, 0xa8cf}, {0xa8f8, 0xa8fa}, {0xa92e, 0xa92f}, {0xa9c1, 0xa9cd}, |
| 764 | {0xa9de, 0xa9df}, {0xaa5c, 0xaa5f}, {0xaade, 0xaadf}, {0xaaf0, 0xaaf1}, |
| 765 | {0xfd3e, 0xfd3f}, {0xfe10, 0xfe19}, {0xfe30, 0xfe52}, {0xfe54, 0xfe61}, |
| 766 | {0xfe6a, 0xfe6b}, {0xff01, 0xff03}, {0xff05, 0xff0a}, {0xff0c, 0xff0f}, |
| 767 | {0xff1a, 0xff1b}, {0xff1f, 0xff20}, {0xff3b, 0xff3d}, {0xff5f, 0xff65}, |
| 768 | {0x10100, 0x10102}, {0x10a50, 0x10a58}, {0x10af0, 0x10af6}, {0x10b39, 0x10b3f}, |
| 769 | {0x10b99, 0x10b9c}, {0x10f55, 0x10f59}, {0x11047, 0x1104d}, {0x110bb, 0x110bc}, |
| 770 | {0x110be, 0x110c1}, {0x11140, 0x11143}, {0x11174, 0x11175}, {0x111c5, 0x111c8}, |
| 771 | {0x111dd, 0x111df}, {0x11238, 0x1123d}, {0x1144b, 0x1144f}, {0x115c1, 0x115d7}, |
| 772 | {0x11641, 0x11643}, {0x11660, 0x1166c}, {0x1173c, 0x1173e}, {0x11a3f, 0x11a46}, |
| 773 | {0x11a9a, 0x11a9c}, {0x11a9e, 0x11aa2}, {0x11c41, 0x11c45}, {0x11c70, 0x11c71}, |
| 774 | {0x11ef7, 0x11ef8}, {0x12470, 0x12474}, {0x16a6e, 0x16a6f}, {0x16b37, 0x16b3b}, |
| 775 | {0x16e97, 0x16e9a}, {0x1da87, 0x1da8b}, {0x1e95e, 0x1e95f}}), |
| 776 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 777 | return characterClass; |
| 778 | } |
| 779 | |
| 780 | static std::unique_ptr<CharacterClass> createCharacterClass11() |
| 781 | { |
| 782 | // Name = Other_Punctuation, number of codePoints: 584 |
| 783 | auto characterClass = std::make_unique<CharacterClass>( |
| 784 | std::initializer_list<UChar32>({0x2a, 0x2c, 0x5c}), |
| 785 | std::initializer_list<CharacterRange>({{0x21, 0x23}, {0x25, 0x27}, {0x2e, 0x2f}, {0x3a, 0x3b}, |
| 786 | {0x3f, 0x40}}), |
| 787 | std::initializer_list<UChar32>({0x00a1, 0x00a7, 0x00bf, 0x037e, 0x0387, 0x0589, 0x05c0, 0x05c3, |
| 788 | 0x05c6, 0x061b, 0x06d4, 0x085e, 0x0970, 0x09fd, 0x0a76, 0x0af0, |
| 789 | 0x0c84, 0x0df4, 0x0e4f, 0x0f14, 0x0f85, 0x10fb, 0x1cd3, 0x2053, |
| 790 | 0x2d70, 0x2e0b, 0x2e1b, 0x2e41, 0x303d, 0x30fb, 0xa673, 0xa67e, |
| 791 | 0xa8fc, 0xa95f, 0xabeb, 0xfe19, 0xfe30, 0xfe68, 0xff0a, 0xff0c, |
| 792 | 0xff3c, 0xff61, 0x1039f, 0x103d0, 0x1056f, 0x10857, 0x1091f, 0x1093f, |
| 793 | 0x10a7f, 0x111cd, 0x111db, 0x112a9, 0x1145b, 0x1145d, 0x114c6, 0x1183b, |
| 794 | 0x16af5, 0x16b44, 0x1bc9f}), |
| 795 | std::initializer_list<CharacterRange>({{0x00b6, 0x00b7}, {0x055a, 0x055f}, {0x05f3, 0x05f4}, {0x0609, 0x060a}, |
| 796 | {0x060c, 0x060d}, {0x061e, 0x061f}, {0x066a, 0x066d}, {0x0700, 0x070d}, |
| 797 | {0x07f7, 0x07f9}, {0x0830, 0x083e}, {0x0964, 0x0965}, {0x0e5a, 0x0e5b}, |
| 798 | {0x0f04, 0x0f12}, {0x0fd0, 0x0fd4}, {0x0fd9, 0x0fda}, {0x104a, 0x104f}, |
| 799 | {0x1360, 0x1368}, {0x166d, 0x166e}, {0x16eb, 0x16ed}, {0x1735, 0x1736}, |
| 800 | {0x17d4, 0x17d6}, {0x17d8, 0x17da}, {0x1800, 0x1805}, {0x1807, 0x180a}, |
| 801 | {0x1944, 0x1945}, {0x1a1e, 0x1a1f}, {0x1aa0, 0x1aa6}, {0x1aa8, 0x1aad}, |
| 802 | {0x1b5a, 0x1b60}, {0x1bfc, 0x1bff}, {0x1c3b, 0x1c3f}, {0x1c7e, 0x1c7f}, |
| 803 | {0x1cc0, 0x1cc7}, {0x2016, 0x2017}, {0x2020, 0x2027}, {0x2030, 0x2038}, |
| 804 | {0x203b, 0x203e}, {0x2041, 0x2043}, {0x2047, 0x2051}, {0x2055, 0x205e}, |
| 805 | {0x2cf9, 0x2cfc}, {0x2cfe, 0x2cff}, {0x2e00, 0x2e01}, {0x2e06, 0x2e08}, |
| 806 | {0x2e0e, 0x2e16}, {0x2e18, 0x2e19}, {0x2e1e, 0x2e1f}, {0x2e2a, 0x2e2e}, |
| 807 | {0x2e30, 0x2e39}, {0x2e3c, 0x2e3f}, {0x2e43, 0x2e4e}, {0x3001, 0x3003}, |
| 808 | {0xa4fe, 0xa4ff}, {0xa60d, 0xa60f}, {0xa6f2, 0xa6f7}, {0xa874, 0xa877}, |
| 809 | {0xa8ce, 0xa8cf}, {0xa8f8, 0xa8fa}, {0xa92e, 0xa92f}, {0xa9c1, 0xa9cd}, |
| 810 | {0xa9de, 0xa9df}, {0xaa5c, 0xaa5f}, {0xaade, 0xaadf}, {0xaaf0, 0xaaf1}, |
| 811 | {0xfe10, 0xfe16}, {0xfe45, 0xfe46}, {0xfe49, 0xfe4c}, {0xfe50, 0xfe52}, |
| 812 | {0xfe54, 0xfe57}, {0xfe5f, 0xfe61}, {0xfe6a, 0xfe6b}, {0xff01, 0xff03}, |
| 813 | {0xff05, 0xff07}, {0xff0e, 0xff0f}, {0xff1a, 0xff1b}, {0xff1f, 0xff20}, |
| 814 | {0xff64, 0xff65}, {0x10100, 0x10102}, {0x10a50, 0x10a58}, {0x10af0, 0x10af6}, |
| 815 | {0x10b39, 0x10b3f}, {0x10b99, 0x10b9c}, {0x10f55, 0x10f59}, {0x11047, 0x1104d}, |
| 816 | {0x110bb, 0x110bc}, {0x110be, 0x110c1}, {0x11140, 0x11143}, {0x11174, 0x11175}, |
| 817 | {0x111c5, 0x111c8}, {0x111dd, 0x111df}, {0x11238, 0x1123d}, {0x1144b, 0x1144f}, |
| 818 | {0x115c1, 0x115d7}, {0x11641, 0x11643}, {0x11660, 0x1166c}, {0x1173c, 0x1173e}, |
| 819 | {0x11a3f, 0x11a46}, {0x11a9a, 0x11a9c}, {0x11a9e, 0x11aa2}, {0x11c41, 0x11c45}, |
| 820 | {0x11c70, 0x11c71}, {0x11ef7, 0x11ef8}, {0x12470, 0x12474}, {0x16a6e, 0x16a6f}, |
| 821 | {0x16b37, 0x16b3b}, {0x16e97, 0x16e9a}, {0x1da87, 0x1da8b}, {0x1e95e, 0x1e95f}}), |
| 822 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 823 | return characterClass; |
| 824 | } |
| 825 | |
| 826 | static std::unique_ptr<CharacterClass> createCharacterClass12() |
| 827 | { |
| 828 | // Name = Symbol, number of codePoints: 7110 |
| 829 | auto characterClass = std::make_unique<CharacterClass>( |
| 830 | std::initializer_list<UChar32>({0x24, 0x2b, 0x5e, 0x60, 0x7c, 0x7e}), |
| 831 | std::initializer_list<CharacterRange>({{0x3c, 0x3e}}), |
| 832 | std::initializer_list<UChar32>({0x00ac, 0x00b4, 0x00b8, 0x00d7, 0x00f7, 0x02ed, 0x0375, 0x03f6, |
| 833 | 0x0482, 0x060b, 0x06de, 0x06e9, 0x07f6, 0x0af1, 0x0b70, 0x0c7f, |
| 834 | 0x0d4f, 0x0d79, 0x0e3f, 0x0f13, 0x0f34, 0x0f36, 0x0f38, 0x17db, |
| 835 | 0x1940, 0x1fbd, 0x2044, 0x2052, 0x2114, 0x2125, 0x2127, 0x2129, |
| 836 | 0x212e, 0x214f, 0x3004, 0x3020, 0x3250, 0xab5b, 0xfb29, 0xfe62, |
| 837 | 0xfe69, 0xff04, 0xff0b, 0xff3e, 0xff40, 0xff5c, 0xff5e, 0x101a0, |
| 838 | 0x10ac8, 0x1173f, 0x16b45, 0x1bc9c, 0x1d245, 0x1d6c1, 0x1d6db, 0x1d6fb, |
| 839 | 0x1d715, 0x1d735, 0x1d74f, 0x1d76f, 0x1d789, 0x1d7a9, 0x1d7c3, 0x1ecac, |
| 840 | 0x1ecb0, 0x1f97a}), |
| 841 | std::initializer_list<CharacterRange>({{0x00a2, 0x00a6}, {0x00a8, 0x00a9}, {0x00ae, 0x00b1}, {0x02c2, 0x02c5}, |
| 842 | {0x02d2, 0x02df}, {0x02e5, 0x02eb}, {0x02ef, 0x02ff}, {0x0384, 0x0385}, |
| 843 | {0x058d, 0x058f}, {0x0606, 0x0608}, {0x060e, 0x060f}, {0x06fd, 0x06fe}, |
| 844 | {0x07fe, 0x07ff}, {0x09f2, 0x09f3}, {0x09fa, 0x09fb}, {0x0bf3, 0x0bfa}, |
| 845 | {0x0f01, 0x0f03}, {0x0f15, 0x0f17}, {0x0f1a, 0x0f1f}, {0x0fbe, 0x0fc5}, |
| 846 | {0x0fc7, 0x0fcc}, {0x0fce, 0x0fcf}, {0x0fd5, 0x0fd8}, {0x109e, 0x109f}, |
| 847 | {0x1390, 0x1399}, {0x19de, 0x19ff}, {0x1b61, 0x1b6a}, {0x1b74, 0x1b7c}, |
| 848 | {0x1fbf, 0x1fc1}, {0x1fcd, 0x1fcf}, {0x1fdd, 0x1fdf}, {0x1fed, 0x1fef}, |
| 849 | {0x1ffd, 0x1ffe}, {0x207a, 0x207c}, {0x208a, 0x208c}, {0x20a0, 0x20bf}, |
| 850 | {0x2100, 0x2101}, {0x2103, 0x2106}, {0x2108, 0x2109}, {0x2116, 0x2118}, |
| 851 | {0x211e, 0x2123}, {0x213a, 0x213b}, {0x2140, 0x2144}, {0x214a, 0x214d}, |
| 852 | {0x218a, 0x218b}, {0x2190, 0x2307}, {0x230c, 0x2328}, {0x232b, 0x2426}, |
| 853 | {0x2440, 0x244a}, {0x249c, 0x24e9}, {0x2500, 0x2767}, {0x2794, 0x27c4}, |
| 854 | {0x27c7, 0x27e5}, {0x27f0, 0x2982}, {0x2999, 0x29d7}, {0x29dc, 0x29fb}, |
| 855 | {0x29fe, 0x2b73}, {0x2b76, 0x2b95}, {0x2b98, 0x2bc8}, {0x2bca, 0x2bfe}, |
| 856 | {0x2ce5, 0x2cea}, {0x2e80, 0x2e99}, {0x2e9b, 0x2ef3}, {0x2f00, 0x2fd5}, |
| 857 | {0x2ff0, 0x2ffb}, {0x3012, 0x3013}, {0x3036, 0x3037}, {0x303e, 0x303f}, |
| 858 | {0x309b, 0x309c}, {0x3190, 0x3191}, {0x3196, 0x319f}, {0x31c0, 0x31e3}, |
| 859 | {0x3200, 0x321e}, {0x322a, 0x3247}, {0x3260, 0x327f}, {0x328a, 0x32b0}, |
| 860 | {0x32c0, 0x32fe}, {0x3300, 0x33ff}, {0x4dc0, 0x4dff}, {0xa490, 0xa4c6}, |
| 861 | {0xa700, 0xa716}, {0xa720, 0xa721}, {0xa789, 0xa78a}, {0xa828, 0xa82b}, |
| 862 | {0xa836, 0xa839}, {0xaa77, 0xaa79}, {0xfbb2, 0xfbc1}, {0xfdfc, 0xfdfd}, |
| 863 | {0xfe64, 0xfe66}, {0xff1c, 0xff1e}, {0xffe0, 0xffe6}, {0xffe8, 0xffee}, |
| 864 | {0xfffc, 0xfffd}, {0x10137, 0x1013f}, {0x10179, 0x10189}, {0x1018c, 0x1018e}, |
| 865 | {0x10190, 0x1019b}, {0x101d0, 0x101fc}, {0x10877, 0x10878}, {0x16b3c, 0x16b3f}, |
| 866 | {0x1d000, 0x1d0f5}, {0x1d100, 0x1d126}, {0x1d129, 0x1d164}, {0x1d16a, 0x1d16c}, |
| 867 | {0x1d183, 0x1d184}, {0x1d18c, 0x1d1a9}, {0x1d1ae, 0x1d1e8}, {0x1d200, 0x1d241}, |
| 868 | {0x1d300, 0x1d356}, {0x1d800, 0x1d9ff}, {0x1da37, 0x1da3a}, {0x1da6d, 0x1da74}, |
| 869 | {0x1da76, 0x1da83}, {0x1da85, 0x1da86}, {0x1eef0, 0x1eef1}, {0x1f000, 0x1f02b}, |
| 870 | {0x1f030, 0x1f093}, {0x1f0a0, 0x1f0ae}, {0x1f0b1, 0x1f0bf}, {0x1f0c1, 0x1f0cf}, |
| 871 | {0x1f0d1, 0x1f0f5}, {0x1f110, 0x1f16b}, {0x1f170, 0x1f1ac}, {0x1f1e6, 0x1f202}, |
| 872 | {0x1f210, 0x1f23b}, {0x1f240, 0x1f248}, {0x1f250, 0x1f251}, {0x1f260, 0x1f265}, |
| 873 | {0x1f300, 0x1f6d4}, {0x1f6e0, 0x1f6ec}, {0x1f6f0, 0x1f6f9}, {0x1f700, 0x1f773}, |
| 874 | {0x1f780, 0x1f7d8}, {0x1f800, 0x1f80b}, {0x1f810, 0x1f847}, {0x1f850, 0x1f859}, |
| 875 | {0x1f860, 0x1f887}, {0x1f890, 0x1f8ad}, {0x1f900, 0x1f90b}, {0x1f910, 0x1f93e}, |
| 876 | {0x1f940, 0x1f970}, {0x1f973, 0x1f976}, {0x1f97c, 0x1f9a2}, {0x1f9b0, 0x1f9b9}, |
| 877 | {0x1f9c0, 0x1f9c2}, {0x1f9d0, 0x1f9ff}, {0x1fa60, 0x1fa6d}}), |
| 878 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 879 | return characterClass; |
| 880 | } |
| 881 | |
| 882 | static std::unique_ptr<CharacterClass> createCharacterClass13() |
| 883 | { |
| 884 | // Name = Currency_Symbol, number of codePoints: 57 |
| 885 | auto characterClass = std::make_unique<CharacterClass>( |
| 886 | std::initializer_list<UChar32>({0x24}), |
| 887 | std::initializer_list<CharacterRange>({}), |
| 888 | std::initializer_list<UChar32>({0x058f, 0x060b, 0x09fb, 0x0af1, 0x0bf9, 0x0e3f, 0x17db, 0xa838, |
| 889 | 0xfdfc, 0xfe69, 0xff04, 0x1ecb0}), |
| 890 | std::initializer_list<CharacterRange>({{0x00a2, 0x00a5}, {0x07fe, 0x07ff}, {0x09f2, 0x09f3}, {0x20a0, 0x20bf}, |
| 891 | {0xffe0, 0xffe1}, {0xffe5, 0xffe6}}), |
| 892 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 893 | return characterClass; |
| 894 | } |
| 895 | |
| 896 | static std::unique_ptr<CharacterClass> createCharacterClass14() |
| 897 | { |
| 898 | // Name = Open_Punctuation, number of codePoints: 75 |
| 899 | auto characterClass = std::make_unique<CharacterClass>( |
| 900 | std::initializer_list<UChar32>({0x28, 0x5b, 0x7b}), |
| 901 | std::initializer_list<CharacterRange>({}), |
| 902 | std::initializer_list<UChar32>({0x0f3a, 0x0f3c, 0x169b, 0x201a, 0x201e, 0x2045, 0x207d, 0x208d, |
| 903 | 0x2308, 0x230a, 0x2329, 0x2768, 0x276a, 0x276c, 0x276e, 0x2770, |
| 904 | 0x2772, 0x2774, 0x27c5, 0x27e6, 0x27e8, 0x27ea, 0x27ec, 0x27ee, |
| 905 | 0x2983, 0x2985, 0x2987, 0x2989, 0x298b, 0x298d, 0x298f, 0x2991, |
| 906 | 0x2993, 0x2995, 0x2997, 0x29d8, 0x29da, 0x29fc, 0x2e22, 0x2e24, |
| 907 | 0x2e26, 0x2e28, 0x2e42, 0x3008, 0x300a, 0x300c, 0x300e, 0x3010, |
| 908 | 0x3014, 0x3016, 0x3018, 0x301a, 0x301d, 0xfd3f, 0xfe17, 0xfe35, |
| 909 | 0xfe37, 0xfe39, 0xfe3b, 0xfe3d, 0xfe3f, 0xfe41, 0xfe43, 0xfe47, |
| 910 | 0xfe59, 0xfe5b, 0xfe5d, 0xff08, 0xff3b, 0xff5b, 0xff5f, 0xff62}), |
| 911 | std::initializer_list<CharacterRange>({}), |
| 912 | CharacterClassWidths::HasBMPChars); |
| 913 | return characterClass; |
| 914 | } |
| 915 | |
| 916 | static std::unique_ptr<CharacterClass> createCharacterClass15() |
| 917 | { |
| 918 | // Name = Close_Punctuation, number of codePoints: 73 |
| 919 | auto characterClass = std::make_unique<CharacterClass>( |
| 920 | std::initializer_list<UChar32>({0x29, 0x5d, 0x7d}), |
| 921 | std::initializer_list<CharacterRange>({}), |
| 922 | std::initializer_list<UChar32>({0x0f3b, 0x0f3d, 0x169c, 0x2046, 0x207e, 0x208e, 0x2309, 0x230b, |
| 923 | 0x232a, 0x2769, 0x276b, 0x276d, 0x276f, 0x2771, 0x2773, 0x2775, |
| 924 | 0x27c6, 0x27e7, 0x27e9, 0x27eb, 0x27ed, 0x27ef, 0x2984, 0x2986, |
| 925 | 0x2988, 0x298a, 0x298c, 0x298e, 0x2990, 0x2992, 0x2994, 0x2996, |
| 926 | 0x2998, 0x29d9, 0x29db, 0x29fd, 0x2e23, 0x2e25, 0x2e27, 0x2e29, |
| 927 | 0x3009, 0x300b, 0x300d, 0x300f, 0x3011, 0x3015, 0x3017, 0x3019, |
| 928 | 0x301b, 0xfd3e, 0xfe18, 0xfe36, 0xfe38, 0xfe3a, 0xfe3c, 0xfe3e, |
| 929 | 0xfe40, 0xfe42, 0xfe44, 0xfe48, 0xfe5a, 0xfe5c, 0xfe5e, 0xff09, |
| 930 | 0xff3d, 0xff5d, 0xff60, 0xff63}), |
| 931 | std::initializer_list<CharacterRange>({{0x301e, 0x301f}}), |
| 932 | CharacterClassWidths::HasBMPChars); |
| 933 | return characterClass; |
| 934 | } |
| 935 | |
| 936 | static std::unique_ptr<CharacterClass> createCharacterClass16() |
| 937 | { |
| 938 | // Name = Math_Symbol, number of codePoints: 948 |
| 939 | auto characterClass = std::make_unique<CharacterClass>( |
| 940 | std::initializer_list<UChar32>({0x2b, 0x7c, 0x7e}), |
| 941 | std::initializer_list<CharacterRange>({{0x3c, 0x3e}}), |
| 942 | std::initializer_list<UChar32>({0x00ac, 0x00b1, 0x00d7, 0x00f7, 0x03f6, 0x2044, 0x2052, 0x2118, |
| 943 | 0x214b, 0x21a0, 0x21a3, 0x21a6, 0x21ae, 0x21d2, 0x21d4, 0x237c, |
| 944 | 0x25b7, 0x25c1, 0x266f, 0xfb29, 0xfe62, 0xff0b, 0xff5c, 0xff5e, |
| 945 | 0xffe2, 0x1d6c1, 0x1d6db, 0x1d6fb, 0x1d715, 0x1d735, 0x1d74f, 0x1d76f, |
| 946 | 0x1d789, 0x1d7a9, 0x1d7c3}), |
| 947 | std::initializer_list<CharacterRange>({{0x0606, 0x0608}, {0x207a, 0x207c}, {0x208a, 0x208c}, {0x2140, 0x2144}, |
| 948 | {0x2190, 0x2194}, {0x219a, 0x219b}, {0x21ce, 0x21cf}, {0x21f4, 0x22ff}, |
| 949 | {0x2320, 0x2321}, {0x239b, 0x23b3}, {0x23dc, 0x23e1}, {0x25f8, 0x25ff}, |
| 950 | {0x27c0, 0x27c4}, {0x27c7, 0x27e5}, {0x27f0, 0x27ff}, {0x2900, 0x2982}, |
| 951 | {0x2999, 0x29d7}, {0x29dc, 0x29fb}, {0x29fe, 0x2aff}, {0x2b30, 0x2b44}, |
| 952 | {0x2b47, 0x2b4c}, {0xfe64, 0xfe66}, {0xff1c, 0xff1e}, {0xffe9, 0xffec}, |
| 953 | {0x1eef0, 0x1eef1}}), |
| 954 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 955 | return characterClass; |
| 956 | } |
| 957 | |
| 958 | static std::unique_ptr<CharacterClass> createCharacterClass17() |
| 959 | { |
| 960 | // Name = Dash_Punctuation, number of codePoints: 24 |
| 961 | auto characterClass = std::make_unique<CharacterClass>( |
| 962 | std::initializer_list<UChar32>({0x2d}), |
| 963 | std::initializer_list<CharacterRange>({}), |
| 964 | std::initializer_list<UChar32>({0x058a, 0x05be, 0x1400, 0x1806, 0x2e17, 0x2e1a, 0x2e40, 0x301c, |
| 965 | 0x3030, 0x30a0, 0xfe58, 0xfe63, 0xff0d}), |
| 966 | std::initializer_list<CharacterRange>({{0x2010, 0x2015}, {0x2e3a, 0x2e3b}, {0xfe31, 0xfe32}}), |
| 967 | CharacterClassWidths::HasBMPChars); |
| 968 | return characterClass; |
| 969 | } |
| 970 | |
| 971 | static std::unique_ptr<CharacterClass> createCharacterClass18() |
| 972 | { |
| 973 | // Name = Number, number of codePoints: 1653 |
| 974 | auto characterClass = std::make_unique<CharacterClass>( |
| 975 | std::initializer_list<UChar32>({}), |
| 976 | std::initializer_list<CharacterRange>({{0x30, 0x39}}), |
| 977 | std::initializer_list<UChar32>({0x00b9, 0x2070, 0x2cfd, 0x3007, 0x10341, 0x1034a}), |
| 978 | std::initializer_list<CharacterRange>({{0x00b2, 0x00b3}, {0x00bc, 0x00be}, {0x0660, 0x0669}, {0x06f0, 0x06f9}, |
| 979 | {0x07c0, 0x07c9}, {0x0966, 0x096f}, {0x09e6, 0x09ef}, {0x09f4, 0x09f9}, |
| 980 | {0x0a66, 0x0a6f}, {0x0ae6, 0x0aef}, {0x0b66, 0x0b6f}, {0x0b72, 0x0b77}, |
| 981 | {0x0be6, 0x0bf2}, {0x0c66, 0x0c6f}, {0x0c78, 0x0c7e}, {0x0ce6, 0x0cef}, |
| 982 | {0x0d58, 0x0d5e}, {0x0d66, 0x0d78}, {0x0de6, 0x0def}, {0x0e50, 0x0e59}, |
| 983 | {0x0ed0, 0x0ed9}, {0x0f20, 0x0f33}, {0x1040, 0x1049}, {0x1090, 0x1099}, |
| 984 | {0x1369, 0x137c}, {0x16ee, 0x16f0}, {0x17e0, 0x17e9}, {0x17f0, 0x17f9}, |
| 985 | {0x1810, 0x1819}, {0x1946, 0x194f}, {0x19d0, 0x19da}, {0x1a80, 0x1a89}, |
| 986 | {0x1a90, 0x1a99}, {0x1b50, 0x1b59}, {0x1bb0, 0x1bb9}, {0x1c40, 0x1c49}, |
| 987 | {0x1c50, 0x1c59}, {0x2074, 0x2079}, {0x2080, 0x2089}, {0x2150, 0x2182}, |
| 988 | {0x2185, 0x2189}, {0x2460, 0x249b}, {0x24ea, 0x24ff}, {0x2776, 0x2793}, |
| 989 | {0x3021, 0x3029}, {0x3038, 0x303a}, {0x3192, 0x3195}, {0x3220, 0x3229}, |
| 990 | {0x3248, 0x324f}, {0x3251, 0x325f}, {0x3280, 0x3289}, {0x32b1, 0x32bf}, |
| 991 | {0xa620, 0xa629}, {0xa6e6, 0xa6ef}, {0xa830, 0xa835}, {0xa8d0, 0xa8d9}, |
| 992 | {0xa900, 0xa909}, {0xa9d0, 0xa9d9}, {0xa9f0, 0xa9f9}, {0xaa50, 0xaa59}, |
| 993 | {0xabf0, 0xabf9}, {0xff10, 0xff19}, {0x10107, 0x10133}, {0x10140, 0x10178}, |
| 994 | {0x1018a, 0x1018b}, {0x102e1, 0x102fb}, {0x10320, 0x10323}, {0x103d1, 0x103d5}, |
| 995 | {0x104a0, 0x104a9}, {0x10858, 0x1085f}, {0x10879, 0x1087f}, {0x108a7, 0x108af}, |
| 996 | {0x108fb, 0x108ff}, {0x10916, 0x1091b}, {0x109bc, 0x109bd}, {0x109c0, 0x109cf}, |
| 997 | {0x109d2, 0x109ff}, {0x10a40, 0x10a48}, {0x10a7d, 0x10a7e}, {0x10a9d, 0x10a9f}, |
| 998 | {0x10aeb, 0x10aef}, {0x10b58, 0x10b5f}, {0x10b78, 0x10b7f}, {0x10ba9, 0x10baf}, |
| 999 | {0x10cfa, 0x10cff}, {0x10d30, 0x10d39}, {0x10e60, 0x10e7e}, {0x10f1d, 0x10f26}, |
| 1000 | {0x10f51, 0x10f54}, {0x11052, 0x1106f}, {0x110f0, 0x110f9}, {0x11136, 0x1113f}, |
| 1001 | {0x111d0, 0x111d9}, {0x111e1, 0x111f4}, {0x112f0, 0x112f9}, {0x11450, 0x11459}, |
| 1002 | {0x114d0, 0x114d9}, {0x11650, 0x11659}, {0x116c0, 0x116c9}, {0x11730, 0x1173b}, |
| 1003 | {0x118e0, 0x118f2}, {0x11c50, 0x11c6c}, {0x11d50, 0x11d59}, {0x11da0, 0x11da9}, |
| 1004 | {0x12400, 0x1246e}, {0x16a60, 0x16a69}, {0x16b50, 0x16b59}, {0x16b5b, 0x16b61}, |
| 1005 | {0x16e80, 0x16e96}, {0x1d2e0, 0x1d2f3}, {0x1d360, 0x1d378}, {0x1d7ce, 0x1d7ff}, |
| 1006 | {0x1e8c7, 0x1e8cf}, {0x1e950, 0x1e959}, {0x1ec71, 0x1ecab}, {0x1ecad, 0x1ecaf}, |
| 1007 | {0x1ecb1, 0x1ecb4}, {0x1f100, 0x1f10c}}), |
| 1008 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1009 | return characterClass; |
| 1010 | } |
| 1011 | |
| 1012 | static std::unique_ptr<CharacterClass> createCharacterClass19() |
| 1013 | { |
| 1014 | // Name = Decimal_Number, number of codePoints: 610 |
| 1015 | auto characterClass = std::make_unique<CharacterClass>( |
| 1016 | std::initializer_list<UChar32>({}), |
| 1017 | std::initializer_list<CharacterRange>({{0x30, 0x39}}), |
| 1018 | std::initializer_list<UChar32>({}), |
| 1019 | std::initializer_list<CharacterRange>({{0x0660, 0x0669}, {0x06f0, 0x06f9}, {0x07c0, 0x07c9}, {0x0966, 0x096f}, |
| 1020 | {0x09e6, 0x09ef}, {0x0a66, 0x0a6f}, {0x0ae6, 0x0aef}, {0x0b66, 0x0b6f}, |
| 1021 | {0x0be6, 0x0bef}, {0x0c66, 0x0c6f}, {0x0ce6, 0x0cef}, {0x0d66, 0x0d6f}, |
| 1022 | {0x0de6, 0x0def}, {0x0e50, 0x0e59}, {0x0ed0, 0x0ed9}, {0x0f20, 0x0f29}, |
| 1023 | {0x1040, 0x1049}, {0x1090, 0x1099}, {0x17e0, 0x17e9}, {0x1810, 0x1819}, |
| 1024 | {0x1946, 0x194f}, {0x19d0, 0x19d9}, {0x1a80, 0x1a89}, {0x1a90, 0x1a99}, |
| 1025 | {0x1b50, 0x1b59}, {0x1bb0, 0x1bb9}, {0x1c40, 0x1c49}, {0x1c50, 0x1c59}, |
| 1026 | {0xa620, 0xa629}, {0xa8d0, 0xa8d9}, {0xa900, 0xa909}, {0xa9d0, 0xa9d9}, |
| 1027 | {0xa9f0, 0xa9f9}, {0xaa50, 0xaa59}, {0xabf0, 0xabf9}, {0xff10, 0xff19}, |
| 1028 | {0x104a0, 0x104a9}, {0x10d30, 0x10d39}, {0x11066, 0x1106f}, {0x110f0, 0x110f9}, |
| 1029 | {0x11136, 0x1113f}, {0x111d0, 0x111d9}, {0x112f0, 0x112f9}, {0x11450, 0x11459}, |
| 1030 | {0x114d0, 0x114d9}, {0x11650, 0x11659}, {0x116c0, 0x116c9}, {0x11730, 0x11739}, |
| 1031 | {0x118e0, 0x118e9}, {0x11c50, 0x11c59}, {0x11d50, 0x11d59}, {0x11da0, 0x11da9}, |
| 1032 | {0x16a60, 0x16a69}, {0x16b50, 0x16b59}, {0x1d7ce, 0x1d7ff}, {0x1e950, 0x1e959}}), |
| 1033 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1034 | return characterClass; |
| 1035 | } |
| 1036 | |
| 1037 | static std::unique_ptr<CharacterClass> createCharacterClass20() |
| 1038 | { |
| 1039 | // Name = Uppercase_Letter, number of codePoints: 1781 |
| 1040 | auto characterClass = std::make_unique<CharacterClass>( |
| 1041 | std::initializer_list<UChar32>({}), |
| 1042 | std::initializer_list<CharacterRange>({{0x41, 0x5a}}), |
| 1043 | std::initializer_list<UChar32>({0x0100, 0x0102, 0x0104, 0x0106, 0x0108, 0x010a, 0x010c, 0x010e, |
| 1044 | 0x0110, 0x0112, 0x0114, 0x0116, 0x0118, 0x011a, 0x011c, 0x011e, |
| 1045 | 0x0120, 0x0122, 0x0124, 0x0126, 0x0128, 0x012a, 0x012c, 0x012e, |
| 1046 | 0x0130, 0x0132, 0x0134, 0x0136, 0x0139, 0x013b, 0x013d, 0x013f, |
| 1047 | 0x0141, 0x0143, 0x0145, 0x0147, 0x014a, 0x014c, 0x014e, 0x0150, |
| 1048 | 0x0152, 0x0154, 0x0156, 0x0158, 0x015a, 0x015c, 0x015e, 0x0160, |
| 1049 | 0x0162, 0x0164, 0x0166, 0x0168, 0x016a, 0x016c, 0x016e, 0x0170, |
| 1050 | 0x0172, 0x0174, 0x0176, 0x017b, 0x017d, 0x0184, 0x01a2, 0x01a4, |
| 1051 | 0x01a9, 0x01ac, 0x01b5, 0x01bc, 0x01c4, 0x01c7, 0x01ca, 0x01cd, |
| 1052 | 0x01cf, 0x01d1, 0x01d3, 0x01d5, 0x01d7, 0x01d9, 0x01db, 0x01de, |
| 1053 | 0x01e0, 0x01e2, 0x01e4, 0x01e6, 0x01e8, 0x01ea, 0x01ec, 0x01ee, |
| 1054 | 0x01f1, 0x01f4, 0x01fa, 0x01fc, 0x01fe, 0x0200, 0x0202, 0x0204, |
| 1055 | 0x0206, 0x0208, 0x020a, 0x020c, 0x020e, 0x0210, 0x0212, 0x0214, |
| 1056 | 0x0216, 0x0218, 0x021a, 0x021c, 0x021e, 0x0220, 0x0222, 0x0224, |
| 1057 | 0x0226, 0x0228, 0x022a, 0x022c, 0x022e, 0x0230, 0x0232, 0x0241, |
| 1058 | 0x0248, 0x024a, 0x024c, 0x024e, 0x0370, 0x0372, 0x0376, 0x037f, |
| 1059 | 0x0386, 0x038c, 0x03cf, 0x03d8, 0x03da, 0x03dc, 0x03de, 0x03e0, |
| 1060 | 0x03e2, 0x03e4, 0x03e6, 0x03e8, 0x03ea, 0x03ec, 0x03ee, 0x03f4, |
| 1061 | 0x03f7, 0x0460, 0x0462, 0x0464, 0x0466, 0x0468, 0x046a, 0x046c, |
| 1062 | 0x046e, 0x0470, 0x0472, 0x0474, 0x0476, 0x0478, 0x047a, 0x047c, |
| 1063 | 0x047e, 0x0480, 0x048a, 0x048c, 0x048e, 0x0490, 0x0492, 0x0494, |
| 1064 | 0x0496, 0x0498, 0x049a, 0x049c, 0x049e, 0x04a0, 0x04a2, 0x04a4, |
| 1065 | 0x04a6, 0x04a8, 0x04aa, 0x04ac, 0x04ae, 0x04b0, 0x04b2, 0x04b4, |
| 1066 | 0x04b6, 0x04b8, 0x04ba, 0x04bc, 0x04be, 0x04c3, 0x04c5, 0x04c7, |
| 1067 | 0x04c9, 0x04cb, 0x04cd, 0x04d0, 0x04d2, 0x04d4, 0x04d6, 0x04d8, |
| 1068 | 0x04da, 0x04dc, 0x04de, 0x04e0, 0x04e2, 0x04e4, 0x04e6, 0x04e8, |
| 1069 | 0x04ea, 0x04ec, 0x04ee, 0x04f0, 0x04f2, 0x04f4, 0x04f6, 0x04f8, |
| 1070 | 0x04fa, 0x04fc, 0x04fe, 0x0500, 0x0502, 0x0504, 0x0506, 0x0508, |
| 1071 | 0x050a, 0x050c, 0x050e, 0x0510, 0x0512, 0x0514, 0x0516, 0x0518, |
| 1072 | 0x051a, 0x051c, 0x051e, 0x0520, 0x0522, 0x0524, 0x0526, 0x0528, |
| 1073 | 0x052a, 0x052c, 0x052e, 0x10c7, 0x10cd, 0x1e00, 0x1e02, 0x1e04, |
| 1074 | 0x1e06, 0x1e08, 0x1e0a, 0x1e0c, 0x1e0e, 0x1e10, 0x1e12, 0x1e14, |
| 1075 | 0x1e16, 0x1e18, 0x1e1a, 0x1e1c, 0x1e1e, 0x1e20, 0x1e22, 0x1e24, |
| 1076 | 0x1e26, 0x1e28, 0x1e2a, 0x1e2c, 0x1e2e, 0x1e30, 0x1e32, 0x1e34, |
| 1077 | 0x1e36, 0x1e38, 0x1e3a, 0x1e3c, 0x1e3e, 0x1e40, 0x1e42, 0x1e44, |
| 1078 | 0x1e46, 0x1e48, 0x1e4a, 0x1e4c, 0x1e4e, 0x1e50, 0x1e52, 0x1e54, |
| 1079 | 0x1e56, 0x1e58, 0x1e5a, 0x1e5c, 0x1e5e, 0x1e60, 0x1e62, 0x1e64, |
| 1080 | 0x1e66, 0x1e68, 0x1e6a, 0x1e6c, 0x1e6e, 0x1e70, 0x1e72, 0x1e74, |
| 1081 | 0x1e76, 0x1e78, 0x1e7a, 0x1e7c, 0x1e7e, 0x1e80, 0x1e82, 0x1e84, |
| 1082 | 0x1e86, 0x1e88, 0x1e8a, 0x1e8c, 0x1e8e, 0x1e90, 0x1e92, 0x1e94, |
| 1083 | 0x1e9e, 0x1ea0, 0x1ea2, 0x1ea4, 0x1ea6, 0x1ea8, 0x1eaa, 0x1eac, |
| 1084 | 0x1eae, 0x1eb0, 0x1eb2, 0x1eb4, 0x1eb6, 0x1eb8, 0x1eba, 0x1ebc, |
| 1085 | 0x1ebe, 0x1ec0, 0x1ec2, 0x1ec4, 0x1ec6, 0x1ec8, 0x1eca, 0x1ecc, |
| 1086 | 0x1ece, 0x1ed0, 0x1ed2, 0x1ed4, 0x1ed6, 0x1ed8, 0x1eda, 0x1edc, |
| 1087 | 0x1ede, 0x1ee0, 0x1ee2, 0x1ee4, 0x1ee6, 0x1ee8, 0x1eea, 0x1eec, |
| 1088 | 0x1eee, 0x1ef0, 0x1ef2, 0x1ef4, 0x1ef6, 0x1ef8, 0x1efa, 0x1efc, |
| 1089 | 0x1efe, 0x1f59, 0x1f5b, 0x1f5d, 0x1f5f, 0x2102, 0x2107, 0x2115, |
| 1090 | 0x2124, 0x2126, 0x2128, 0x2145, 0x2183, 0x2c60, 0x2c67, 0x2c69, |
| 1091 | 0x2c6b, 0x2c72, 0x2c75, 0x2c82, 0x2c84, 0x2c86, 0x2c88, 0x2c8a, |
| 1092 | 0x2c8c, 0x2c8e, 0x2c90, 0x2c92, 0x2c94, 0x2c96, 0x2c98, 0x2c9a, |
| 1093 | 0x2c9c, 0x2c9e, 0x2ca0, 0x2ca2, 0x2ca4, 0x2ca6, 0x2ca8, 0x2caa, |
| 1094 | 0x2cac, 0x2cae, 0x2cb0, 0x2cb2, 0x2cb4, 0x2cb6, 0x2cb8, 0x2cba, |
| 1095 | 0x2cbc, 0x2cbe, 0x2cc0, 0x2cc2, 0x2cc4, 0x2cc6, 0x2cc8, 0x2cca, |
| 1096 | 0x2ccc, 0x2cce, 0x2cd0, 0x2cd2, 0x2cd4, 0x2cd6, 0x2cd8, 0x2cda, |
| 1097 | 0x2cdc, 0x2cde, 0x2ce0, 0x2ce2, 0x2ceb, 0x2ced, 0x2cf2, 0xa640, |
| 1098 | 0xa642, 0xa644, 0xa646, 0xa648, 0xa64a, 0xa64c, 0xa64e, 0xa650, |
| 1099 | 0xa652, 0xa654, 0xa656, 0xa658, 0xa65a, 0xa65c, 0xa65e, 0xa660, |
| 1100 | 0xa662, 0xa664, 0xa666, 0xa668, 0xa66a, 0xa66c, 0xa680, 0xa682, |
| 1101 | 0xa684, 0xa686, 0xa688, 0xa68a, 0xa68c, 0xa68e, 0xa690, 0xa692, |
| 1102 | 0xa694, 0xa696, 0xa698, 0xa69a, 0xa722, 0xa724, 0xa726, 0xa728, |
| 1103 | 0xa72a, 0xa72c, 0xa72e, 0xa732, 0xa734, 0xa736, 0xa738, 0xa73a, |
| 1104 | 0xa73c, 0xa73e, 0xa740, 0xa742, 0xa744, 0xa746, 0xa748, 0xa74a, |
| 1105 | 0xa74c, 0xa74e, 0xa750, 0xa752, 0xa754, 0xa756, 0xa758, 0xa75a, |
| 1106 | 0xa75c, 0xa75e, 0xa760, 0xa762, 0xa764, 0xa766, 0xa768, 0xa76a, |
| 1107 | 0xa76c, 0xa76e, 0xa779, 0xa77b, 0xa780, 0xa782, 0xa784, 0xa786, |
| 1108 | 0xa78b, 0xa78d, 0xa790, 0xa792, 0xa796, 0xa798, 0xa79a, 0xa79c, |
| 1109 | 0xa79e, 0xa7a0, 0xa7a2, 0xa7a4, 0xa7a6, 0xa7a8, 0xa7b6, 0xa7b8, |
| 1110 | 0x1d49c, 0x1d4a2, 0x1d546, 0x1d7ca}), |
| 1111 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00de}, {0x0178, 0x0179}, {0x0181, 0x0182}, |
| 1112 | {0x0186, 0x0187}, {0x0189, 0x018b}, {0x018e, 0x0191}, {0x0193, 0x0194}, |
| 1113 | {0x0196, 0x0198}, {0x019c, 0x019d}, {0x019f, 0x01a0}, {0x01a6, 0x01a7}, |
| 1114 | {0x01ae, 0x01af}, {0x01b1, 0x01b3}, {0x01b7, 0x01b8}, {0x01f6, 0x01f8}, |
| 1115 | {0x023a, 0x023b}, {0x023d, 0x023e}, {0x0243, 0x0246}, {0x0388, 0x038a}, |
| 1116 | {0x038e, 0x038f}, {0x0391, 0x03a1}, {0x03a3, 0x03ab}, {0x03d2, 0x03d4}, |
| 1117 | {0x03f9, 0x03fa}, {0x03fd, 0x042f}, {0x04c0, 0x04c1}, {0x0531, 0x0556}, |
| 1118 | {0x10a0, 0x10c5}, {0x13a0, 0x13f5}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, |
| 1119 | {0x1f08, 0x1f0f}, {0x1f18, 0x1f1d}, {0x1f28, 0x1f2f}, {0x1f38, 0x1f3f}, |
| 1120 | {0x1f48, 0x1f4d}, {0x1f68, 0x1f6f}, {0x1fb8, 0x1fbb}, {0x1fc8, 0x1fcb}, |
| 1121 | {0x1fd8, 0x1fdb}, {0x1fe8, 0x1fec}, {0x1ff8, 0x1ffb}, {0x210b, 0x210d}, |
| 1122 | {0x2110, 0x2112}, {0x2119, 0x211d}, {0x212a, 0x212d}, {0x2130, 0x2133}, |
| 1123 | {0x213e, 0x213f}, {0x2c00, 0x2c2e}, {0x2c62, 0x2c64}, {0x2c6d, 0x2c70}, |
| 1124 | {0x2c7e, 0x2c80}, {0xa77d, 0xa77e}, {0xa7aa, 0xa7ae}, {0xa7b0, 0xa7b4}, |
| 1125 | {0xff21, 0xff3a}, {0x10400, 0x10427}, {0x104b0, 0x104d3}, {0x10c80, 0x10cb2}, |
| 1126 | {0x118a0, 0x118bf}, {0x16e40, 0x16e5f}, {0x1d400, 0x1d419}, {0x1d434, 0x1d44d}, |
| 1127 | {0x1d468, 0x1d481}, {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, |
| 1128 | {0x1d4ae, 0x1d4b5}, {0x1d4d0, 0x1d4e9}, {0x1d504, 0x1d505}, {0x1d507, 0x1d50a}, |
| 1129 | {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d538, 0x1d539}, {0x1d53b, 0x1d53e}, |
| 1130 | {0x1d540, 0x1d544}, {0x1d54a, 0x1d550}, {0x1d56c, 0x1d585}, {0x1d5a0, 0x1d5b9}, |
| 1131 | {0x1d5d4, 0x1d5ed}, {0x1d608, 0x1d621}, {0x1d63c, 0x1d655}, {0x1d670, 0x1d689}, |
| 1132 | {0x1d6a8, 0x1d6c0}, {0x1d6e2, 0x1d6fa}, {0x1d71c, 0x1d734}, {0x1d756, 0x1d76e}, |
| 1133 | {0x1d790, 0x1d7a8}, {0x1e900, 0x1e921}}), |
| 1134 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1135 | return characterClass; |
| 1136 | } |
| 1137 | |
| 1138 | static std::unique_ptr<CharacterClass> createCharacterClass21() |
| 1139 | { |
| 1140 | // Name = Modifier_Symbol, number of codePoints: 121 |
| 1141 | auto characterClass = std::make_unique<CharacterClass>( |
| 1142 | std::initializer_list<UChar32>({0x5e, 0x60}), |
| 1143 | std::initializer_list<CharacterRange>({}), |
| 1144 | std::initializer_list<UChar32>({0x00a8, 0x00af, 0x00b4, 0x00b8, 0x02ed, 0x0375, 0x1fbd, 0xab5b, |
| 1145 | 0xff3e, 0xff40, 0xffe3}), |
| 1146 | std::initializer_list<CharacterRange>({{0x02c2, 0x02c5}, {0x02d2, 0x02df}, {0x02e5, 0x02eb}, {0x02ef, 0x02ff}, |
| 1147 | {0x0384, 0x0385}, {0x1fbf, 0x1fc1}, {0x1fcd, 0x1fcf}, {0x1fdd, 0x1fdf}, |
| 1148 | {0x1fed, 0x1fef}, {0x1ffd, 0x1ffe}, {0x309b, 0x309c}, {0xa700, 0xa716}, |
| 1149 | {0xa720, 0xa721}, {0xa789, 0xa78a}, {0xfbb2, 0xfbc1}, {0x1f3fb, 0x1f3ff}}), |
| 1150 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1151 | return characterClass; |
| 1152 | } |
| 1153 | |
| 1154 | static std::unique_ptr<CharacterClass> createCharacterClass22() |
| 1155 | { |
| 1156 | // Name = Connector_Punctuation, number of codePoints: 10 |
| 1157 | auto characterClass = std::make_unique<CharacterClass>( |
| 1158 | std::initializer_list<UChar32>({0x5f}), |
| 1159 | std::initializer_list<CharacterRange>({}), |
| 1160 | std::initializer_list<UChar32>({0x2054, 0xff3f}), |
| 1161 | std::initializer_list<CharacterRange>({{0x203f, 0x2040}, {0xfe33, 0xfe34}, {0xfe4d, 0xfe4f}}), |
| 1162 | CharacterClassWidths::HasBMPChars); |
| 1163 | return characterClass; |
| 1164 | } |
| 1165 | |
| 1166 | static std::unique_ptr<CharacterClass> createCharacterClass23() |
| 1167 | { |
| 1168 | // Name = Lowercase_Letter, number of codePoints: 2145 |
| 1169 | auto characterClass = std::make_unique<CharacterClass>( |
| 1170 | std::initializer_list<UChar32>({}), |
| 1171 | std::initializer_list<CharacterRange>({{0x61, 0x7a}}), |
| 1172 | std::initializer_list<UChar32>({0x00b5, 0x0101, 0x0103, 0x0105, 0x0107, 0x0109, 0x010b, 0x010d, |
| 1173 | 0x010f, 0x0111, 0x0113, 0x0115, 0x0117, 0x0119, 0x011b, 0x011d, |
| 1174 | 0x011f, 0x0121, 0x0123, 0x0125, 0x0127, 0x0129, 0x012b, 0x012d, |
| 1175 | 0x012f, 0x0131, 0x0133, 0x0135, 0x013a, 0x013c, 0x013e, 0x0140, |
| 1176 | 0x0142, 0x0144, 0x0146, 0x014b, 0x014d, 0x014f, 0x0151, 0x0153, |
| 1177 | 0x0155, 0x0157, 0x0159, 0x015b, 0x015d, 0x015f, 0x0161, 0x0163, |
| 1178 | 0x0165, 0x0167, 0x0169, 0x016b, 0x016d, 0x016f, 0x0171, 0x0173, |
| 1179 | 0x0175, 0x0177, 0x017a, 0x017c, 0x0183, 0x0185, 0x0188, 0x0192, |
| 1180 | 0x0195, 0x019e, 0x01a1, 0x01a3, 0x01a5, 0x01a8, 0x01ad, 0x01b0, |
| 1181 | 0x01b4, 0x01b6, 0x01c6, 0x01c9, 0x01cc, 0x01ce, 0x01d0, 0x01d2, |
| 1182 | 0x01d4, 0x01d6, 0x01d8, 0x01da, 0x01df, 0x01e1, 0x01e3, 0x01e5, |
| 1183 | 0x01e7, 0x01e9, 0x01eb, 0x01ed, 0x01f3, 0x01f5, 0x01f9, 0x01fb, |
| 1184 | 0x01fd, 0x01ff, 0x0201, 0x0203, 0x0205, 0x0207, 0x0209, 0x020b, |
| 1185 | 0x020d, 0x020f, 0x0211, 0x0213, 0x0215, 0x0217, 0x0219, 0x021b, |
| 1186 | 0x021d, 0x021f, 0x0221, 0x0223, 0x0225, 0x0227, 0x0229, 0x022b, |
| 1187 | 0x022d, 0x022f, 0x0231, 0x023c, 0x0242, 0x0247, 0x0249, 0x024b, |
| 1188 | 0x024d, 0x0371, 0x0373, 0x0377, 0x0390, 0x03d9, 0x03db, 0x03dd, |
| 1189 | 0x03df, 0x03e1, 0x03e3, 0x03e5, 0x03e7, 0x03e9, 0x03eb, 0x03ed, |
| 1190 | 0x03f5, 0x03f8, 0x0461, 0x0463, 0x0465, 0x0467, 0x0469, 0x046b, |
| 1191 | 0x046d, 0x046f, 0x0471, 0x0473, 0x0475, 0x0477, 0x0479, 0x047b, |
| 1192 | 0x047d, 0x047f, 0x0481, 0x048b, 0x048d, 0x048f, 0x0491, 0x0493, |
| 1193 | 0x0495, 0x0497, 0x0499, 0x049b, 0x049d, 0x049f, 0x04a1, 0x04a3, |
| 1194 | 0x04a5, 0x04a7, 0x04a9, 0x04ab, 0x04ad, 0x04af, 0x04b1, 0x04b3, |
| 1195 | 0x04b5, 0x04b7, 0x04b9, 0x04bb, 0x04bd, 0x04bf, 0x04c2, 0x04c4, |
| 1196 | 0x04c6, 0x04c8, 0x04ca, 0x04cc, 0x04d1, 0x04d3, 0x04d5, 0x04d7, |
| 1197 | 0x04d9, 0x04db, 0x04dd, 0x04df, 0x04e1, 0x04e3, 0x04e5, 0x04e7, |
| 1198 | 0x04e9, 0x04eb, 0x04ed, 0x04ef, 0x04f1, 0x04f3, 0x04f5, 0x04f7, |
| 1199 | 0x04f9, 0x04fb, 0x04fd, 0x04ff, 0x0501, 0x0503, 0x0505, 0x0507, |
| 1200 | 0x0509, 0x050b, 0x050d, 0x050f, 0x0511, 0x0513, 0x0515, 0x0517, |
| 1201 | 0x0519, 0x051b, 0x051d, 0x051f, 0x0521, 0x0523, 0x0525, 0x0527, |
| 1202 | 0x0529, 0x052b, 0x052d, 0x052f, 0x1e01, 0x1e03, 0x1e05, 0x1e07, |
| 1203 | 0x1e09, 0x1e0b, 0x1e0d, 0x1e0f, 0x1e11, 0x1e13, 0x1e15, 0x1e17, |
| 1204 | 0x1e19, 0x1e1b, 0x1e1d, 0x1e1f, 0x1e21, 0x1e23, 0x1e25, 0x1e27, |
| 1205 | 0x1e29, 0x1e2b, 0x1e2d, 0x1e2f, 0x1e31, 0x1e33, 0x1e35, 0x1e37, |
| 1206 | 0x1e39, 0x1e3b, 0x1e3d, 0x1e3f, 0x1e41, 0x1e43, 0x1e45, 0x1e47, |
| 1207 | 0x1e49, 0x1e4b, 0x1e4d, 0x1e4f, 0x1e51, 0x1e53, 0x1e55, 0x1e57, |
| 1208 | 0x1e59, 0x1e5b, 0x1e5d, 0x1e5f, 0x1e61, 0x1e63, 0x1e65, 0x1e67, |
| 1209 | 0x1e69, 0x1e6b, 0x1e6d, 0x1e6f, 0x1e71, 0x1e73, 0x1e75, 0x1e77, |
| 1210 | 0x1e79, 0x1e7b, 0x1e7d, 0x1e7f, 0x1e81, 0x1e83, 0x1e85, 0x1e87, |
| 1211 | 0x1e89, 0x1e8b, 0x1e8d, 0x1e8f, 0x1e91, 0x1e93, 0x1e9f, 0x1ea1, |
| 1212 | 0x1ea3, 0x1ea5, 0x1ea7, 0x1ea9, 0x1eab, 0x1ead, 0x1eaf, 0x1eb1, |
| 1213 | 0x1eb3, 0x1eb5, 0x1eb7, 0x1eb9, 0x1ebb, 0x1ebd, 0x1ebf, 0x1ec1, |
| 1214 | 0x1ec3, 0x1ec5, 0x1ec7, 0x1ec9, 0x1ecb, 0x1ecd, 0x1ecf, 0x1ed1, |
| 1215 | 0x1ed3, 0x1ed5, 0x1ed7, 0x1ed9, 0x1edb, 0x1edd, 0x1edf, 0x1ee1, |
| 1216 | 0x1ee3, 0x1ee5, 0x1ee7, 0x1ee9, 0x1eeb, 0x1eed, 0x1eef, 0x1ef1, |
| 1217 | 0x1ef3, 0x1ef5, 0x1ef7, 0x1ef9, 0x1efb, 0x1efd, 0x1fbe, 0x210a, |
| 1218 | 0x2113, 0x212f, 0x2134, 0x2139, 0x214e, 0x2184, 0x2c61, 0x2c68, |
| 1219 | 0x2c6a, 0x2c6c, 0x2c71, 0x2c81, 0x2c83, 0x2c85, 0x2c87, 0x2c89, |
| 1220 | 0x2c8b, 0x2c8d, 0x2c8f, 0x2c91, 0x2c93, 0x2c95, 0x2c97, 0x2c99, |
| 1221 | 0x2c9b, 0x2c9d, 0x2c9f, 0x2ca1, 0x2ca3, 0x2ca5, 0x2ca7, 0x2ca9, |
| 1222 | 0x2cab, 0x2cad, 0x2caf, 0x2cb1, 0x2cb3, 0x2cb5, 0x2cb7, 0x2cb9, |
| 1223 | 0x2cbb, 0x2cbd, 0x2cbf, 0x2cc1, 0x2cc3, 0x2cc5, 0x2cc7, 0x2cc9, |
| 1224 | 0x2ccb, 0x2ccd, 0x2ccf, 0x2cd1, 0x2cd3, 0x2cd5, 0x2cd7, 0x2cd9, |
| 1225 | 0x2cdb, 0x2cdd, 0x2cdf, 0x2ce1, 0x2cec, 0x2cee, 0x2cf3, 0x2d27, |
| 1226 | 0x2d2d, 0xa641, 0xa643, 0xa645, 0xa647, 0xa649, 0xa64b, 0xa64d, |
| 1227 | 0xa64f, 0xa651, 0xa653, 0xa655, 0xa657, 0xa659, 0xa65b, 0xa65d, |
| 1228 | 0xa65f, 0xa661, 0xa663, 0xa665, 0xa667, 0xa669, 0xa66b, 0xa66d, |
| 1229 | 0xa681, 0xa683, 0xa685, 0xa687, 0xa689, 0xa68b, 0xa68d, 0xa68f, |
| 1230 | 0xa691, 0xa693, 0xa695, 0xa697, 0xa699, 0xa69b, 0xa723, 0xa725, |
| 1231 | 0xa727, 0xa729, 0xa72b, 0xa72d, 0xa733, 0xa735, 0xa737, 0xa739, |
| 1232 | 0xa73b, 0xa73d, 0xa73f, 0xa741, 0xa743, 0xa745, 0xa747, 0xa749, |
| 1233 | 0xa74b, 0xa74d, 0xa74f, 0xa751, 0xa753, 0xa755, 0xa757, 0xa759, |
| 1234 | 0xa75b, 0xa75d, 0xa75f, 0xa761, 0xa763, 0xa765, 0xa767, 0xa769, |
| 1235 | 0xa76b, 0xa76d, 0xa76f, 0xa77a, 0xa77c, 0xa77f, 0xa781, 0xa783, |
| 1236 | 0xa785, 0xa787, 0xa78c, 0xa78e, 0xa791, 0xa797, 0xa799, 0xa79b, |
| 1237 | 0xa79d, 0xa79f, 0xa7a1, 0xa7a3, 0xa7a5, 0xa7a7, 0xa7a9, 0xa7af, |
| 1238 | 0xa7b5, 0xa7b7, 0xa7b9, 0xa7fa, 0x1d4bb, 0x1d7cb}), |
| 1239 | std::initializer_list<CharacterRange>({{0x00df, 0x00f6}, {0x00f8, 0x00ff}, {0x0137, 0x0138}, {0x0148, 0x0149}, |
| 1240 | {0x017e, 0x0180}, {0x018c, 0x018d}, {0x0199, 0x019b}, {0x01aa, 0x01ab}, |
| 1241 | {0x01b9, 0x01ba}, {0x01bd, 0x01bf}, {0x01dc, 0x01dd}, {0x01ef, 0x01f0}, |
| 1242 | {0x0233, 0x0239}, {0x023f, 0x0240}, {0x024f, 0x0293}, {0x0295, 0x02af}, |
| 1243 | {0x037b, 0x037d}, {0x03ac, 0x03ce}, {0x03d0, 0x03d1}, {0x03d5, 0x03d7}, |
| 1244 | {0x03ef, 0x03f3}, {0x03fb, 0x03fc}, {0x0430, 0x045f}, {0x04ce, 0x04cf}, |
| 1245 | {0x0560, 0x0588}, {0x10d0, 0x10fa}, {0x10fd, 0x10ff}, {0x13f8, 0x13fd}, |
| 1246 | {0x1c80, 0x1c88}, {0x1d00, 0x1d2b}, {0x1d6b, 0x1d77}, {0x1d79, 0x1d9a}, |
| 1247 | {0x1e95, 0x1e9d}, {0x1eff, 0x1f07}, {0x1f10, 0x1f15}, {0x1f20, 0x1f27}, |
| 1248 | {0x1f30, 0x1f37}, {0x1f40, 0x1f45}, {0x1f50, 0x1f57}, {0x1f60, 0x1f67}, |
| 1249 | {0x1f70, 0x1f7d}, {0x1f80, 0x1f87}, {0x1f90, 0x1f97}, {0x1fa0, 0x1fa7}, |
| 1250 | {0x1fb0, 0x1fb4}, {0x1fb6, 0x1fb7}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fc7}, |
| 1251 | {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fd7}, {0x1fe0, 0x1fe7}, {0x1ff2, 0x1ff4}, |
| 1252 | {0x1ff6, 0x1ff7}, {0x210e, 0x210f}, {0x213c, 0x213d}, {0x2146, 0x2149}, |
| 1253 | {0x2c30, 0x2c5e}, {0x2c65, 0x2c66}, {0x2c73, 0x2c74}, {0x2c76, 0x2c7b}, |
| 1254 | {0x2ce3, 0x2ce4}, {0x2d00, 0x2d25}, {0xa72f, 0xa731}, {0xa771, 0xa778}, |
| 1255 | {0xa793, 0xa795}, {0xab30, 0xab5a}, {0xab60, 0xab65}, {0xab70, 0xabbf}, |
| 1256 | {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xff41, 0xff5a}, {0x10428, 0x1044f}, |
| 1257 | {0x104d8, 0x104fb}, {0x10cc0, 0x10cf2}, {0x118c0, 0x118df}, {0x16e60, 0x16e7f}, |
| 1258 | {0x1d41a, 0x1d433}, {0x1d44e, 0x1d454}, {0x1d456, 0x1d467}, {0x1d482, 0x1d49b}, |
| 1259 | {0x1d4b6, 0x1d4b9}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d4cf}, {0x1d4ea, 0x1d503}, |
| 1260 | {0x1d51e, 0x1d537}, {0x1d552, 0x1d56b}, {0x1d586, 0x1d59f}, {0x1d5ba, 0x1d5d3}, |
| 1261 | {0x1d5ee, 0x1d607}, {0x1d622, 0x1d63b}, {0x1d656, 0x1d66f}, {0x1d68a, 0x1d6a5}, |
| 1262 | {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6e1}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d71b}, |
| 1263 | {0x1d736, 0x1d74e}, {0x1d750, 0x1d755}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d78f}, |
| 1264 | {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7c9}, {0x1e922, 0x1e943}}), |
| 1265 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1266 | return characterClass; |
| 1267 | } |
| 1268 | |
| 1269 | static std::unique_ptr<CharacterClass> createCharacterClass24() |
| 1270 | { |
| 1271 | // Name = Other_Symbol, number of codePoints: 5984 |
| 1272 | auto characterClass = std::make_unique<CharacterClass>( |
| 1273 | std::initializer_list<UChar32>({}), |
| 1274 | std::initializer_list<CharacterRange>({}), |
| 1275 | std::initializer_list<UChar32>({0x00a6, 0x00a9, 0x00ae, 0x00b0, 0x0482, 0x06de, 0x06e9, 0x07f6, |
| 1276 | 0x09fa, 0x0b70, 0x0bfa, 0x0c7f, 0x0d4f, 0x0d79, 0x0f13, 0x0f34, |
| 1277 | 0x0f36, 0x0f38, 0x1940, 0x2114, 0x2125, 0x2127, 0x2129, 0x212e, |
| 1278 | 0x214a, 0x214f, 0x21d3, 0x3004, 0x3020, 0x3250, 0xa839, 0xfdfd, |
| 1279 | 0xffe4, 0xffe8, 0x101a0, 0x10ac8, 0x1173f, 0x16b45, 0x1bc9c, 0x1d245, |
| 1280 | 0x1ecac, 0x1f97a}), |
| 1281 | std::initializer_list<CharacterRange>({{0x058d, 0x058e}, {0x060e, 0x060f}, {0x06fd, 0x06fe}, {0x0bf3, 0x0bf8}, |
| 1282 | {0x0f01, 0x0f03}, {0x0f15, 0x0f17}, {0x0f1a, 0x0f1f}, {0x0fbe, 0x0fc5}, |
| 1283 | {0x0fc7, 0x0fcc}, {0x0fce, 0x0fcf}, {0x0fd5, 0x0fd8}, {0x109e, 0x109f}, |
| 1284 | {0x1390, 0x1399}, {0x19de, 0x19ff}, {0x1b61, 0x1b6a}, {0x1b74, 0x1b7c}, |
| 1285 | {0x2100, 0x2101}, {0x2103, 0x2106}, {0x2108, 0x2109}, {0x2116, 0x2117}, |
| 1286 | {0x211e, 0x2123}, {0x213a, 0x213b}, {0x214c, 0x214d}, {0x218a, 0x218b}, |
| 1287 | {0x2195, 0x2199}, {0x219c, 0x219f}, {0x21a1, 0x21a2}, {0x21a4, 0x21a5}, |
| 1288 | {0x21a7, 0x21ad}, {0x21af, 0x21cd}, {0x21d0, 0x21d1}, {0x21d5, 0x21f3}, |
| 1289 | {0x2300, 0x2307}, {0x230c, 0x231f}, {0x2322, 0x2328}, {0x232b, 0x237b}, |
| 1290 | {0x237d, 0x239a}, {0x23b4, 0x23db}, {0x23e2, 0x2426}, {0x2440, 0x244a}, |
| 1291 | {0x249c, 0x24e9}, {0x2500, 0x25b6}, {0x25b8, 0x25c0}, {0x25c2, 0x25f7}, |
| 1292 | {0x2600, 0x266e}, {0x2670, 0x2767}, {0x2794, 0x27bf}, {0x2800, 0x28ff}, |
| 1293 | {0x2b00, 0x2b2f}, {0x2b45, 0x2b46}, {0x2b4d, 0x2b73}, {0x2b76, 0x2b95}, |
| 1294 | {0x2b98, 0x2bc8}, {0x2bca, 0x2bfe}, {0x2ce5, 0x2cea}, {0x2e80, 0x2e99}, |
| 1295 | {0x2e9b, 0x2ef3}, {0x2f00, 0x2fd5}, {0x2ff0, 0x2ffb}, {0x3012, 0x3013}, |
| 1296 | {0x3036, 0x3037}, {0x303e, 0x303f}, {0x3190, 0x3191}, {0x3196, 0x319f}, |
| 1297 | {0x31c0, 0x31e3}, {0x3200, 0x321e}, {0x322a, 0x3247}, {0x3260, 0x327f}, |
| 1298 | {0x328a, 0x32b0}, {0x32c0, 0x32fe}, {0x3300, 0x33ff}, {0x4dc0, 0x4dff}, |
| 1299 | {0xa490, 0xa4c6}, {0xa828, 0xa82b}, {0xa836, 0xa837}, {0xaa77, 0xaa79}, |
| 1300 | {0xffed, 0xffee}, {0xfffc, 0xfffd}, {0x10137, 0x1013f}, {0x10179, 0x10189}, |
| 1301 | {0x1018c, 0x1018e}, {0x10190, 0x1019b}, {0x101d0, 0x101fc}, {0x10877, 0x10878}, |
| 1302 | {0x16b3c, 0x16b3f}, {0x1d000, 0x1d0f5}, {0x1d100, 0x1d126}, {0x1d129, 0x1d164}, |
| 1303 | {0x1d16a, 0x1d16c}, {0x1d183, 0x1d184}, {0x1d18c, 0x1d1a9}, {0x1d1ae, 0x1d1e8}, |
| 1304 | {0x1d200, 0x1d241}, {0x1d300, 0x1d356}, {0x1d800, 0x1d9ff}, {0x1da37, 0x1da3a}, |
| 1305 | {0x1da6d, 0x1da74}, {0x1da76, 0x1da83}, {0x1da85, 0x1da86}, {0x1f000, 0x1f02b}, |
| 1306 | {0x1f030, 0x1f093}, {0x1f0a0, 0x1f0ae}, {0x1f0b1, 0x1f0bf}, {0x1f0c1, 0x1f0cf}, |
| 1307 | {0x1f0d1, 0x1f0f5}, {0x1f110, 0x1f16b}, {0x1f170, 0x1f1ac}, {0x1f1e6, 0x1f202}, |
| 1308 | {0x1f210, 0x1f23b}, {0x1f240, 0x1f248}, {0x1f250, 0x1f251}, {0x1f260, 0x1f265}, |
| 1309 | {0x1f300, 0x1f3fa}, {0x1f400, 0x1f6d4}, {0x1f6e0, 0x1f6ec}, {0x1f6f0, 0x1f6f9}, |
| 1310 | {0x1f700, 0x1f773}, {0x1f780, 0x1f7d8}, {0x1f800, 0x1f80b}, {0x1f810, 0x1f847}, |
| 1311 | {0x1f850, 0x1f859}, {0x1f860, 0x1f887}, {0x1f890, 0x1f8ad}, {0x1f900, 0x1f90b}, |
| 1312 | {0x1f910, 0x1f93e}, {0x1f940, 0x1f970}, {0x1f973, 0x1f976}, {0x1f97c, 0x1f9a2}, |
| 1313 | {0x1f9b0, 0x1f9b9}, {0x1f9c0, 0x1f9c2}, {0x1f9d0, 0x1f9ff}, {0x1fa60, 0x1fa6d}}), |
| 1314 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1315 | return characterClass; |
| 1316 | } |
| 1317 | |
| 1318 | static std::unique_ptr<CharacterClass> createCharacterClass25() |
| 1319 | { |
| 1320 | // Name = Other_Letter, number of codePoints: 121212 |
| 1321 | auto characterClass = std::make_unique<CharacterClass>( |
| 1322 | std::initializer_list<UChar32>({}), |
| 1323 | std::initializer_list<CharacterRange>({}), |
| 1324 | std::initializer_list<UChar32>({0x00aa, 0x00ba, 0x01bb, 0x0294, 0x06d5, 0x06ff, 0x0710, 0x07b1, |
| 1325 | 0x093d, 0x0950, 0x09b2, 0x09bd, 0x09ce, 0x09fc, 0x0a5e, 0x0abd, |
| 1326 | 0x0ad0, 0x0af9, 0x0b3d, 0x0b71, 0x0b83, 0x0b9c, 0x0bd0, 0x0c3d, |
| 1327 | 0x0c80, 0x0cbd, 0x0cde, 0x0d3d, 0x0d4e, 0x0dbd, 0x0e84, 0x0e8a, |
| 1328 | 0x0e8d, 0x0ea5, 0x0ea7, 0x0ebd, 0x0f00, 0x103f, 0x1061, 0x108e, |
| 1329 | 0x1258, 0x12c0, 0x17dc, 0x18aa, 0x3006, 0x303c, 0x309f, 0x30ff, |
| 1330 | 0xa66e, 0xa78f, 0xa7f7, 0xa8fb, 0xaa7a, 0xaab1, 0xaac0, 0xaac2, |
| 1331 | 0xaaf2, 0xfb1d, 0xfb3e, 0x10808, 0x1083c, 0x10a00, 0x10f27, 0x11144, |
| 1332 | 0x11176, 0x111da, 0x111dc, 0x11288, 0x1133d, 0x11350, 0x114c7, 0x11644, |
| 1333 | 0x118ff, 0x11a00, 0x11a3a, 0x11a50, 0x11a9d, 0x11c40, 0x11d46, 0x11d98, |
| 1334 | 0x16f50, 0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, 0x1ee42, 0x1ee47, 0x1ee49, |
| 1335 | 0x1ee4b, 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, 0x1ee5d, 0x1ee5f, 0x1ee64, |
| 1336 | 0x1ee7e}), |
| 1337 | std::initializer_list<CharacterRange>({{0x01c0, 0x01c3}, {0x05d0, 0x05ea}, {0x05ef, 0x05f2}, {0x0620, 0x063f}, |
| 1338 | {0x0641, 0x064a}, {0x066e, 0x066f}, {0x0671, 0x06d3}, {0x06ee, 0x06ef}, |
| 1339 | {0x06fa, 0x06fc}, {0x0712, 0x072f}, {0x074d, 0x07a5}, {0x07ca, 0x07ea}, |
| 1340 | {0x0800, 0x0815}, {0x0840, 0x0858}, {0x0860, 0x086a}, {0x08a0, 0x08b4}, |
| 1341 | {0x08b6, 0x08bd}, {0x0904, 0x0939}, {0x0958, 0x0961}, {0x0972, 0x0980}, |
| 1342 | {0x0985, 0x098c}, {0x098f, 0x0990}, {0x0993, 0x09a8}, {0x09aa, 0x09b0}, |
| 1343 | {0x09b6, 0x09b9}, {0x09dc, 0x09dd}, {0x09df, 0x09e1}, {0x09f0, 0x09f1}, |
| 1344 | {0x0a05, 0x0a0a}, {0x0a0f, 0x0a10}, {0x0a13, 0x0a28}, {0x0a2a, 0x0a30}, |
| 1345 | {0x0a32, 0x0a33}, {0x0a35, 0x0a36}, {0x0a38, 0x0a39}, {0x0a59, 0x0a5c}, |
| 1346 | {0x0a72, 0x0a74}, {0x0a85, 0x0a8d}, {0x0a8f, 0x0a91}, {0x0a93, 0x0aa8}, |
| 1347 | {0x0aaa, 0x0ab0}, {0x0ab2, 0x0ab3}, {0x0ab5, 0x0ab9}, {0x0ae0, 0x0ae1}, |
| 1348 | {0x0b05, 0x0b0c}, {0x0b0f, 0x0b10}, {0x0b13, 0x0b28}, {0x0b2a, 0x0b30}, |
| 1349 | {0x0b32, 0x0b33}, {0x0b35, 0x0b39}, {0x0b5c, 0x0b5d}, {0x0b5f, 0x0b61}, |
| 1350 | {0x0b85, 0x0b8a}, {0x0b8e, 0x0b90}, {0x0b92, 0x0b95}, {0x0b99, 0x0b9a}, |
| 1351 | {0x0b9e, 0x0b9f}, {0x0ba3, 0x0ba4}, {0x0ba8, 0x0baa}, {0x0bae, 0x0bb9}, |
| 1352 | {0x0c05, 0x0c0c}, {0x0c0e, 0x0c10}, {0x0c12, 0x0c28}, {0x0c2a, 0x0c39}, |
| 1353 | {0x0c58, 0x0c5a}, {0x0c60, 0x0c61}, {0x0c85, 0x0c8c}, {0x0c8e, 0x0c90}, |
| 1354 | {0x0c92, 0x0ca8}, {0x0caa, 0x0cb3}, {0x0cb5, 0x0cb9}, {0x0ce0, 0x0ce1}, |
| 1355 | {0x0cf1, 0x0cf2}, {0x0d05, 0x0d0c}, {0x0d0e, 0x0d10}, {0x0d12, 0x0d3a}, |
| 1356 | {0x0d54, 0x0d56}, {0x0d5f, 0x0d61}, {0x0d7a, 0x0d7f}, {0x0d85, 0x0d96}, |
| 1357 | {0x0d9a, 0x0db1}, {0x0db3, 0x0dbb}, {0x0dc0, 0x0dc6}, {0x0e01, 0x0e30}, |
| 1358 | {0x0e32, 0x0e33}, {0x0e40, 0x0e45}, {0x0e81, 0x0e82}, {0x0e87, 0x0e88}, |
| 1359 | {0x0e94, 0x0e97}, {0x0e99, 0x0e9f}, {0x0ea1, 0x0ea3}, {0x0eaa, 0x0eab}, |
| 1360 | {0x0ead, 0x0eb0}, {0x0eb2, 0x0eb3}, {0x0ec0, 0x0ec4}, {0x0edc, 0x0edf}, |
| 1361 | {0x0f40, 0x0f47}, {0x0f49, 0x0f6c}, {0x0f88, 0x0f8c}, {0x1000, 0x102a}, |
| 1362 | {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1065, 0x1066}, {0x106e, 0x1070}, |
| 1363 | {0x1075, 0x1081}, {0x1100, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, |
| 1364 | {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, |
| 1365 | {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, |
| 1366 | {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, |
| 1367 | {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, |
| 1368 | {0x16f1, 0x16f8}, {0x1700, 0x170c}, {0x170e, 0x1711}, {0x1720, 0x1731}, |
| 1369 | {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, |
| 1370 | {0x1820, 0x1842}, {0x1844, 0x1878}, {0x1880, 0x1884}, {0x1887, 0x18a8}, |
| 1371 | {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, |
| 1372 | {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, |
| 1373 | {0x1b05, 0x1b33}, {0x1b45, 0x1b4b}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, |
| 1374 | {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, {0x1c5a, 0x1c77}, |
| 1375 | {0x1ce9, 0x1cec}, {0x1cee, 0x1cf1}, {0x1cf5, 0x1cf6}, {0x2135, 0x2138}, |
| 1376 | {0x2d30, 0x2d67}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, |
| 1377 | {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, |
| 1378 | {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x3041, 0x3096}, {0x30a1, 0x30fa}, |
| 1379 | {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31ba}, {0x31f0, 0x31ff}, |
| 1380 | {0x3400, 0x4db5}, {0x4e00, 0x9fef}, {0xa000, 0xa014}, {0xa016, 0xa48c}, |
| 1381 | {0xa4d0, 0xa4f7}, {0xa500, 0xa60b}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, |
| 1382 | {0xa6a0, 0xa6e5}, {0xa7fb, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, |
| 1383 | {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, |
| 1384 | {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, |
| 1385 | {0xa984, 0xa9b2}, {0xa9e0, 0xa9e4}, {0xa9e7, 0xa9ef}, {0xa9fa, 0xa9fe}, |
| 1386 | {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa6f}, |
| 1387 | {0xaa71, 0xaa76}, {0xaa7e, 0xaaaf}, {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, |
| 1388 | {0xaadb, 0xaadc}, {0xaae0, 0xaaea}, {0xab01, 0xab06}, {0xab09, 0xab0e}, |
| 1389 | {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xabc0, 0xabe2}, |
| 1390 | {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, |
| 1391 | {0xfa70, 0xfad9}, {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, |
| 1392 | {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfd3d}, |
| 1393 | {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfb}, {0xfe70, 0xfe74}, |
| 1394 | {0xfe76, 0xfefc}, {0xff66, 0xff6f}, {0xff71, 0xff9d}, {0xffa0, 0xffbe}, |
| 1395 | {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, |
| 1396 | {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, |
| 1397 | {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10280, 0x1029c}, |
| 1398 | {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x10340}, {0x10342, 0x10349}, |
| 1399 | {0x10350, 0x10375}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, |
| 1400 | {0x10450, 0x1049d}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10600, 0x10736}, |
| 1401 | {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10800, 0x10805}, {0x1080a, 0x10835}, |
| 1402 | {0x10837, 0x10838}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, |
| 1403 | {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, |
| 1404 | {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, |
| 1405 | {0x10a19, 0x10a35}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, |
| 1406 | {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, |
| 1407 | {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10d00, 0x10d23}, {0x10f00, 0x10f1c}, |
| 1408 | {0x10f30, 0x10f45}, {0x11003, 0x11037}, {0x11083, 0x110af}, {0x110d0, 0x110e8}, |
| 1409 | {0x11103, 0x11126}, {0x11150, 0x11172}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, |
| 1410 | {0x11200, 0x11211}, {0x11213, 0x1122b}, {0x11280, 0x11286}, {0x1128a, 0x1128d}, |
| 1411 | {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, |
| 1412 | {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, |
| 1413 | {0x11335, 0x11339}, {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, |
| 1414 | {0x11480, 0x114af}, {0x114c4, 0x114c5}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, |
| 1415 | {0x11600, 0x1162f}, {0x11680, 0x116aa}, {0x11700, 0x1171a}, {0x11800, 0x1182b}, |
| 1416 | {0x11a0b, 0x11a32}, {0x11a5c, 0x11a83}, {0x11a86, 0x11a89}, {0x11ac0, 0x11af8}, |
| 1417 | {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, |
| 1418 | {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, |
| 1419 | {0x11d6a, 0x11d89}, {0x11ee0, 0x11ef2}, {0x12000, 0x12399}, {0x12480, 0x12543}, |
| 1420 | {0x13000, 0x1342e}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, |
| 1421 | {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, |
| 1422 | {0x16f00, 0x16f44}, {0x17000, 0x187f1}, {0x18800, 0x18af2}, {0x1b000, 0x1b11e}, |
| 1423 | {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, |
| 1424 | {0x1bc90, 0x1bc99}, {0x1e800, 0x1e8c4}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, |
| 1425 | {0x1ee21, 0x1ee22}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee4d, 0x1ee4f}, |
| 1426 | {0x1ee51, 0x1ee52}, {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, |
| 1427 | {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, |
| 1428 | {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x20000, 0x2a6d6}, |
| 1429 | {0x2a700, 0x2b734}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, |
| 1430 | {0x2f800, 0x2fa1d}}), |
| 1431 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1432 | return characterClass; |
| 1433 | } |
| 1434 | |
| 1435 | static std::unique_ptr<CharacterClass> createCharacterClass26() |
| 1436 | { |
| 1437 | // Name = Initial_Punctuation, number of codePoints: 12 |
| 1438 | auto characterClass = std::make_unique<CharacterClass>( |
| 1439 | std::initializer_list<UChar32>({}), |
| 1440 | std::initializer_list<CharacterRange>({}), |
| 1441 | std::initializer_list<UChar32>({0x00ab, 0x2018, 0x201f, 0x2039, 0x2e02, 0x2e04, 0x2e09, 0x2e0c, |
| 1442 | 0x2e1c, 0x2e20}), |
| 1443 | std::initializer_list<CharacterRange>({{0x201b, 0x201c}}), |
| 1444 | CharacterClassWidths::HasBMPChars); |
| 1445 | return characterClass; |
| 1446 | } |
| 1447 | |
| 1448 | static std::unique_ptr<CharacterClass> createCharacterClass27() |
| 1449 | { |
| 1450 | // Name = Format, number of codePoints: 152 |
| 1451 | auto characterClass = std::make_unique<CharacterClass>( |
| 1452 | std::initializer_list<UChar32>({}), |
| 1453 | std::initializer_list<CharacterRange>({}), |
| 1454 | std::initializer_list<UChar32>({0x00ad, 0x061c, 0x06dd, 0x070f, 0x08e2, 0x180e, 0xfeff, 0x110bd, |
| 1455 | 0x110cd, 0xe0001}), |
| 1456 | std::initializer_list<CharacterRange>({{0x0600, 0x0605}, {0x200b, 0x200f}, {0x202a, 0x202e}, {0x2060, 0x2064}, |
| 1457 | {0x2066, 0x206f}, {0xfff9, 0xfffb}, {0x1bca0, 0x1bca3}, {0x1d173, 0x1d17a}, |
| 1458 | {0xe0020, 0xe007f}}), |
| 1459 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1460 | return characterClass; |
| 1461 | } |
| 1462 | |
| 1463 | static std::unique_ptr<CharacterClass> createCharacterClass28() |
| 1464 | { |
| 1465 | // Name = Other_Number, number of codePoints: 807 |
| 1466 | auto characterClass = std::make_unique<CharacterClass>( |
| 1467 | std::initializer_list<UChar32>({}), |
| 1468 | std::initializer_list<CharacterRange>({}), |
| 1469 | std::initializer_list<UChar32>({0x00b9, 0x19da, 0x2070, 0x2189, 0x2cfd}), |
| 1470 | std::initializer_list<CharacterRange>({{0x00b2, 0x00b3}, {0x00bc, 0x00be}, {0x09f4, 0x09f9}, {0x0b72, 0x0b77}, |
| 1471 | {0x0bf0, 0x0bf2}, {0x0c78, 0x0c7e}, {0x0d58, 0x0d5e}, {0x0d70, 0x0d78}, |
| 1472 | {0x0f2a, 0x0f33}, {0x1369, 0x137c}, {0x17f0, 0x17f9}, {0x2074, 0x2079}, |
| 1473 | {0x2080, 0x2089}, {0x2150, 0x215f}, {0x2460, 0x249b}, {0x24ea, 0x24ff}, |
| 1474 | {0x2776, 0x2793}, {0x3192, 0x3195}, {0x3220, 0x3229}, {0x3248, 0x324f}, |
| 1475 | {0x3251, 0x325f}, {0x3280, 0x3289}, {0x32b1, 0x32bf}, {0xa830, 0xa835}, |
| 1476 | {0x10107, 0x10133}, {0x10175, 0x10178}, {0x1018a, 0x1018b}, {0x102e1, 0x102fb}, |
| 1477 | {0x10320, 0x10323}, {0x10858, 0x1085f}, {0x10879, 0x1087f}, {0x108a7, 0x108af}, |
| 1478 | {0x108fb, 0x108ff}, {0x10916, 0x1091b}, {0x109bc, 0x109bd}, {0x109c0, 0x109cf}, |
| 1479 | {0x109d2, 0x109ff}, {0x10a40, 0x10a48}, {0x10a7d, 0x10a7e}, {0x10a9d, 0x10a9f}, |
| 1480 | {0x10aeb, 0x10aef}, {0x10b58, 0x10b5f}, {0x10b78, 0x10b7f}, {0x10ba9, 0x10baf}, |
| 1481 | {0x10cfa, 0x10cff}, {0x10e60, 0x10e7e}, {0x10f1d, 0x10f26}, {0x10f51, 0x10f54}, |
| 1482 | {0x11052, 0x11065}, {0x111e1, 0x111f4}, {0x1173a, 0x1173b}, {0x118ea, 0x118f2}, |
| 1483 | {0x11c5a, 0x11c6c}, {0x16b5b, 0x16b61}, {0x16e80, 0x16e96}, {0x1d2e0, 0x1d2f3}, |
| 1484 | {0x1d360, 0x1d378}, {0x1e8c7, 0x1e8cf}, {0x1ec71, 0x1ecab}, {0x1ecad, 0x1ecaf}, |
| 1485 | {0x1ecb1, 0x1ecb4}, {0x1f100, 0x1f10c}}), |
| 1486 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1487 | return characterClass; |
| 1488 | } |
| 1489 | |
| 1490 | static std::unique_ptr<CharacterClass> createCharacterClass29() |
| 1491 | { |
| 1492 | // Name = Final_Punctuation, number of codePoints: 10 |
| 1493 | auto characterClass = std::make_unique<CharacterClass>( |
| 1494 | std::initializer_list<UChar32>({}), |
| 1495 | std::initializer_list<CharacterRange>({}), |
| 1496 | std::initializer_list<UChar32>({0x00bb, 0x2019, 0x201d, 0x203a, 0x2e03, 0x2e05, 0x2e0a, 0x2e0d, |
| 1497 | 0x2e1d, 0x2e21}), |
| 1498 | std::initializer_list<CharacterRange>({}), |
| 1499 | CharacterClassWidths::HasBMPChars); |
| 1500 | return characterClass; |
| 1501 | } |
| 1502 | |
| 1503 | static std::unique_ptr<CharacterClass> createCharacterClass30() |
| 1504 | { |
| 1505 | // Name = Titlecase_Letter, number of codePoints: 31 |
| 1506 | auto characterClass = std::make_unique<CharacterClass>( |
| 1507 | std::initializer_list<UChar32>({}), |
| 1508 | std::initializer_list<CharacterRange>({}), |
| 1509 | std::initializer_list<UChar32>({0x01c5, 0x01c8, 0x01cb, 0x01f2, 0x1fbc, 0x1fcc, 0x1ffc}), |
| 1510 | std::initializer_list<CharacterRange>({{0x1f88, 0x1f8f}, {0x1f98, 0x1f9f}, {0x1fa8, 0x1faf}}), |
| 1511 | CharacterClassWidths::HasBMPChars); |
| 1512 | return characterClass; |
| 1513 | } |
| 1514 | |
| 1515 | static std::unique_ptr<CharacterClass> createCharacterClass31() |
| 1516 | { |
| 1517 | // Name = Modifier_Letter, number of codePoints: 250 |
| 1518 | auto characterClass = std::make_unique<CharacterClass>( |
| 1519 | std::initializer_list<UChar32>({}), |
| 1520 | std::initializer_list<CharacterRange>({}), |
| 1521 | std::initializer_list<UChar32>({0x02ec, 0x02ee, 0x0374, 0x037a, 0x0559, 0x0640, 0x07fa, 0x081a, |
| 1522 | 0x0824, 0x0828, 0x0971, 0x0e46, 0x0ec6, 0x10fc, 0x17d7, 0x1843, |
| 1523 | 0x1aa7, 0x1d78, 0x2071, 0x207f, 0x2d6f, 0x2e2f, 0x3005, 0x303b, |
| 1524 | 0xa015, 0xa60c, 0xa67f, 0xa770, 0xa788, 0xa9cf, 0xa9e6, 0xaa70, |
| 1525 | 0xaadd, 0xff70}), |
| 1526 | std::initializer_list<CharacterRange>({{0x02b0, 0x02c1}, {0x02c6, 0x02d1}, {0x02e0, 0x02e4}, {0x06e5, 0x06e6}, |
| 1527 | {0x07f4, 0x07f5}, {0x1c78, 0x1c7d}, {0x1d2c, 0x1d6a}, {0x1d9b, 0x1dbf}, |
| 1528 | {0x2090, 0x209c}, {0x2c7c, 0x2c7d}, {0x3031, 0x3035}, {0x309d, 0x309e}, |
| 1529 | {0x30fc, 0x30fe}, {0xa4f8, 0xa4fd}, {0xa69c, 0xa69d}, {0xa717, 0xa71f}, |
| 1530 | {0xa7f8, 0xa7f9}, {0xaaf3, 0xaaf4}, {0xab5c, 0xab5f}, {0xff9e, 0xff9f}, |
| 1531 | {0x16b40, 0x16b43}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}}), |
| 1532 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1533 | return characterClass; |
| 1534 | } |
| 1535 | |
| 1536 | static std::unique_ptr<CharacterClass> createCharacterClass32() |
| 1537 | { |
| 1538 | // Name = Mark, number of codePoints: 2233 |
| 1539 | auto characterClass = std::make_unique<CharacterClass>( |
| 1540 | std::initializer_list<UChar32>({}), |
| 1541 | std::initializer_list<CharacterRange>({}), |
| 1542 | std::initializer_list<UChar32>({0x05bf, 0x05c7, 0x0670, 0x0711, 0x07fd, 0x09bc, 0x09d7, 0x09fe, |
| 1543 | 0x0a3c, 0x0a51, 0x0a75, 0x0abc, 0x0b3c, 0x0b82, 0x0bd7, 0x0cbc, |
| 1544 | 0x0d57, 0x0dca, 0x0dd6, 0x0e31, 0x0eb1, 0x0f35, 0x0f37, 0x0f39, |
| 1545 | 0x0fc6, 0x108f, 0x17dd, 0x18a9, 0x1a7f, 0x1ced, 0x2d7f, 0xa802, |
| 1546 | 0xa806, 0xa80b, 0xa8ff, 0xa9e5, 0xaa43, 0xaab0, 0xaac1, 0xfb1e, |
| 1547 | 0x101fd, 0x102e0, 0x10a3f, 0x11173, 0x1123e, 0x11357, 0x1145e, 0x11a47, |
| 1548 | 0x11d3a, 0x11d47, 0x1da75, 0x1da84}), |
| 1549 | std::initializer_list<CharacterRange>({{0x0300, 0x036f}, {0x0483, 0x0489}, {0x0591, 0x05bd}, {0x05c1, 0x05c2}, |
| 1550 | {0x05c4, 0x05c5}, {0x0610, 0x061a}, {0x064b, 0x065f}, {0x06d6, 0x06dc}, |
| 1551 | {0x06df, 0x06e4}, {0x06e7, 0x06e8}, {0x06ea, 0x06ed}, {0x0730, 0x074a}, |
| 1552 | {0x07a6, 0x07b0}, {0x07eb, 0x07f3}, {0x0816, 0x0819}, {0x081b, 0x0823}, |
| 1553 | {0x0825, 0x0827}, {0x0829, 0x082d}, {0x0859, 0x085b}, {0x08d3, 0x08e1}, |
| 1554 | {0x08e3, 0x0903}, {0x093a, 0x093c}, {0x093e, 0x094f}, {0x0951, 0x0957}, |
| 1555 | {0x0962, 0x0963}, {0x0981, 0x0983}, {0x09be, 0x09c4}, {0x09c7, 0x09c8}, |
| 1556 | {0x09cb, 0x09cd}, {0x09e2, 0x09e3}, {0x0a01, 0x0a03}, {0x0a3e, 0x0a42}, |
| 1557 | {0x0a47, 0x0a48}, {0x0a4b, 0x0a4d}, {0x0a70, 0x0a71}, {0x0a81, 0x0a83}, |
| 1558 | {0x0abe, 0x0ac5}, {0x0ac7, 0x0ac9}, {0x0acb, 0x0acd}, {0x0ae2, 0x0ae3}, |
| 1559 | {0x0afa, 0x0aff}, {0x0b01, 0x0b03}, {0x0b3e, 0x0b44}, {0x0b47, 0x0b48}, |
| 1560 | {0x0b4b, 0x0b4d}, {0x0b56, 0x0b57}, {0x0b62, 0x0b63}, {0x0bbe, 0x0bc2}, |
| 1561 | {0x0bc6, 0x0bc8}, {0x0bca, 0x0bcd}, {0x0c00, 0x0c04}, {0x0c3e, 0x0c44}, |
| 1562 | {0x0c46, 0x0c48}, {0x0c4a, 0x0c4d}, {0x0c55, 0x0c56}, {0x0c62, 0x0c63}, |
| 1563 | {0x0c81, 0x0c83}, {0x0cbe, 0x0cc4}, {0x0cc6, 0x0cc8}, {0x0cca, 0x0ccd}, |
| 1564 | {0x0cd5, 0x0cd6}, {0x0ce2, 0x0ce3}, {0x0d00, 0x0d03}, {0x0d3b, 0x0d3c}, |
| 1565 | {0x0d3e, 0x0d44}, {0x0d46, 0x0d48}, {0x0d4a, 0x0d4d}, {0x0d62, 0x0d63}, |
| 1566 | {0x0d82, 0x0d83}, {0x0dcf, 0x0dd4}, {0x0dd8, 0x0ddf}, {0x0df2, 0x0df3}, |
| 1567 | {0x0e34, 0x0e3a}, {0x0e47, 0x0e4e}, {0x0eb4, 0x0eb9}, {0x0ebb, 0x0ebc}, |
| 1568 | {0x0ec8, 0x0ecd}, {0x0f18, 0x0f19}, {0x0f3e, 0x0f3f}, {0x0f71, 0x0f84}, |
| 1569 | {0x0f86, 0x0f87}, {0x0f8d, 0x0f97}, {0x0f99, 0x0fbc}, {0x102b, 0x103e}, |
| 1570 | {0x1056, 0x1059}, {0x105e, 0x1060}, {0x1062, 0x1064}, {0x1067, 0x106d}, |
| 1571 | {0x1071, 0x1074}, {0x1082, 0x108d}, {0x109a, 0x109d}, {0x135d, 0x135f}, |
| 1572 | {0x1712, 0x1714}, {0x1732, 0x1734}, {0x1752, 0x1753}, {0x1772, 0x1773}, |
| 1573 | {0x17b4, 0x17d3}, {0x180b, 0x180d}, {0x1885, 0x1886}, {0x1920, 0x192b}, |
| 1574 | {0x1930, 0x193b}, {0x1a17, 0x1a1b}, {0x1a55, 0x1a5e}, {0x1a60, 0x1a7c}, |
| 1575 | {0x1ab0, 0x1abe}, {0x1b00, 0x1b04}, {0x1b34, 0x1b44}, {0x1b6b, 0x1b73}, |
| 1576 | {0x1b80, 0x1b82}, {0x1ba1, 0x1bad}, {0x1be6, 0x1bf3}, {0x1c24, 0x1c37}, |
| 1577 | {0x1cd0, 0x1cd2}, {0x1cd4, 0x1ce8}, {0x1cf2, 0x1cf4}, {0x1cf7, 0x1cf9}, |
| 1578 | {0x1dc0, 0x1df9}, {0x1dfb, 0x1dff}, {0x20d0, 0x20f0}, {0x2cef, 0x2cf1}, |
| 1579 | {0x2de0, 0x2dff}, {0x302a, 0x302f}, {0x3099, 0x309a}, {0xa66f, 0xa672}, |
| 1580 | {0xa674, 0xa67d}, {0xa69e, 0xa69f}, {0xa6f0, 0xa6f1}, {0xa823, 0xa827}, |
| 1581 | {0xa880, 0xa881}, {0xa8b4, 0xa8c5}, {0xa8e0, 0xa8f1}, {0xa926, 0xa92d}, |
| 1582 | {0xa947, 0xa953}, {0xa980, 0xa983}, {0xa9b3, 0xa9c0}, {0xaa29, 0xaa36}, |
| 1583 | {0xaa4c, 0xaa4d}, {0xaa7b, 0xaa7d}, {0xaab2, 0xaab4}, {0xaab7, 0xaab8}, |
| 1584 | {0xaabe, 0xaabf}, {0xaaeb, 0xaaef}, {0xaaf5, 0xaaf6}, {0xabe3, 0xabea}, |
| 1585 | {0xabec, 0xabed}, {0xfe00, 0xfe0f}, {0xfe20, 0xfe2f}, {0x10376, 0x1037a}, |
| 1586 | {0x10a01, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a0f}, {0x10a38, 0x10a3a}, |
| 1587 | {0x10ae5, 0x10ae6}, {0x10d24, 0x10d27}, {0x10f46, 0x10f50}, {0x11000, 0x11002}, |
| 1588 | {0x11038, 0x11046}, {0x1107f, 0x11082}, {0x110b0, 0x110ba}, {0x11100, 0x11102}, |
| 1589 | {0x11127, 0x11134}, {0x11145, 0x11146}, {0x11180, 0x11182}, {0x111b3, 0x111c0}, |
| 1590 | {0x111c9, 0x111cc}, {0x1122c, 0x11237}, {0x112df, 0x112ea}, {0x11300, 0x11303}, |
| 1591 | {0x1133b, 0x1133c}, {0x1133e, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, |
| 1592 | {0x11362, 0x11363}, {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11435, 0x11446}, |
| 1593 | {0x114b0, 0x114c3}, {0x115af, 0x115b5}, {0x115b8, 0x115c0}, {0x115dc, 0x115dd}, |
| 1594 | {0x11630, 0x11640}, {0x116ab, 0x116b7}, {0x1171d, 0x1172b}, {0x1182c, 0x1183a}, |
| 1595 | {0x11a01, 0x11a0a}, {0x11a33, 0x11a39}, {0x11a3b, 0x11a3e}, {0x11a51, 0x11a5b}, |
| 1596 | {0x11a8a, 0x11a99}, {0x11c2f, 0x11c36}, {0x11c38, 0x11c3f}, {0x11c92, 0x11ca7}, |
| 1597 | {0x11ca9, 0x11cb6}, {0x11d31, 0x11d36}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d45}, |
| 1598 | {0x11d8a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d97}, {0x11ef3, 0x11ef6}, |
| 1599 | {0x16af0, 0x16af4}, {0x16b30, 0x16b36}, {0x16f51, 0x16f7e}, {0x16f8f, 0x16f92}, |
| 1600 | {0x1bc9d, 0x1bc9e}, {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, |
| 1601 | {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, {0x1da00, 0x1da36}, |
| 1602 | {0x1da3b, 0x1da6c}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1e000, 0x1e006}, |
| 1603 | {0x1e008, 0x1e018}, {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, |
| 1604 | {0x1e8d0, 0x1e8d6}, {0x1e944, 0x1e94a}, {0xe0100, 0xe01ef}}), |
| 1605 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1606 | return characterClass; |
| 1607 | } |
| 1608 | |
| 1609 | static std::unique_ptr<CharacterClass> createCharacterClass33() |
| 1610 | { |
| 1611 | // Name = Nonspacing_Mark, number of codePoints: 1805 |
| 1612 | auto characterClass = std::make_unique<CharacterClass>( |
| 1613 | std::initializer_list<UChar32>({}), |
| 1614 | std::initializer_list<CharacterRange>({}), |
| 1615 | std::initializer_list<UChar32>({0x05bf, 0x05c7, 0x0670, 0x0711, 0x07fd, 0x093a, 0x093c, 0x094d, |
| 1616 | 0x0981, 0x09bc, 0x09cd, 0x09fe, 0x0a3c, 0x0a51, 0x0a75, 0x0abc, |
| 1617 | 0x0acd, 0x0b01, 0x0b3c, 0x0b3f, 0x0b4d, 0x0b56, 0x0b82, 0x0bc0, |
| 1618 | 0x0bcd, 0x0c00, 0x0c04, 0x0c81, 0x0cbc, 0x0cbf, 0x0cc6, 0x0d4d, |
| 1619 | 0x0dca, 0x0dd6, 0x0e31, 0x0eb1, 0x0f35, 0x0f37, 0x0f39, 0x0fc6, |
| 1620 | 0x1082, 0x108d, 0x109d, 0x17c6, 0x17dd, 0x18a9, 0x1932, 0x1a1b, |
| 1621 | 0x1a56, 0x1a60, 0x1a62, 0x1a7f, 0x1b34, 0x1b3c, 0x1b42, 0x1be6, |
| 1622 | 0x1bed, 0x1ced, 0x1cf4, 0x20e1, 0x2d7f, 0xa66f, 0xa802, 0xa806, |
| 1623 | 0xa80b, 0xa8ff, 0xa9b3, 0xa9bc, 0xa9e5, 0xaa43, 0xaa4c, 0xaa7c, |
| 1624 | 0xaab0, 0xaac1, 0xaaf6, 0xabe5, 0xabe8, 0xabed, 0xfb1e, 0x101fd, |
| 1625 | 0x102e0, 0x10a3f, 0x11001, 0x11173, 0x11234, 0x1123e, 0x112df, 0x11340, |
| 1626 | 0x11446, 0x1145e, 0x114ba, 0x1163d, 0x116ab, 0x116ad, 0x116b7, 0x11a47, |
| 1627 | 0x11c3f, 0x11d3a, 0x11d47, 0x11d95, 0x11d97, 0x1da75, 0x1da84}), |
| 1628 | std::initializer_list<CharacterRange>({{0x0300, 0x036f}, {0x0483, 0x0487}, {0x0591, 0x05bd}, {0x05c1, 0x05c2}, |
| 1629 | {0x05c4, 0x05c5}, {0x0610, 0x061a}, {0x064b, 0x065f}, {0x06d6, 0x06dc}, |
| 1630 | {0x06df, 0x06e4}, {0x06e7, 0x06e8}, {0x06ea, 0x06ed}, {0x0730, 0x074a}, |
| 1631 | {0x07a6, 0x07b0}, {0x07eb, 0x07f3}, {0x0816, 0x0819}, {0x081b, 0x0823}, |
| 1632 | {0x0825, 0x0827}, {0x0829, 0x082d}, {0x0859, 0x085b}, {0x08d3, 0x08e1}, |
| 1633 | {0x08e3, 0x0902}, {0x0941, 0x0948}, {0x0951, 0x0957}, {0x0962, 0x0963}, |
| 1634 | {0x09c1, 0x09c4}, {0x09e2, 0x09e3}, {0x0a01, 0x0a02}, {0x0a41, 0x0a42}, |
| 1635 | {0x0a47, 0x0a48}, {0x0a4b, 0x0a4d}, {0x0a70, 0x0a71}, {0x0a81, 0x0a82}, |
| 1636 | {0x0ac1, 0x0ac5}, {0x0ac7, 0x0ac8}, {0x0ae2, 0x0ae3}, {0x0afa, 0x0aff}, |
| 1637 | {0x0b41, 0x0b44}, {0x0b62, 0x0b63}, {0x0c3e, 0x0c40}, {0x0c46, 0x0c48}, |
| 1638 | {0x0c4a, 0x0c4d}, {0x0c55, 0x0c56}, {0x0c62, 0x0c63}, {0x0ccc, 0x0ccd}, |
| 1639 | {0x0ce2, 0x0ce3}, {0x0d00, 0x0d01}, {0x0d3b, 0x0d3c}, {0x0d41, 0x0d44}, |
| 1640 | {0x0d62, 0x0d63}, {0x0dd2, 0x0dd4}, {0x0e34, 0x0e3a}, {0x0e47, 0x0e4e}, |
| 1641 | {0x0eb4, 0x0eb9}, {0x0ebb, 0x0ebc}, {0x0ec8, 0x0ecd}, {0x0f18, 0x0f19}, |
| 1642 | {0x0f71, 0x0f7e}, {0x0f80, 0x0f84}, {0x0f86, 0x0f87}, {0x0f8d, 0x0f97}, |
| 1643 | {0x0f99, 0x0fbc}, {0x102d, 0x1030}, {0x1032, 0x1037}, {0x1039, 0x103a}, |
| 1644 | {0x103d, 0x103e}, {0x1058, 0x1059}, {0x105e, 0x1060}, {0x1071, 0x1074}, |
| 1645 | {0x1085, 0x1086}, {0x135d, 0x135f}, {0x1712, 0x1714}, {0x1732, 0x1734}, |
| 1646 | {0x1752, 0x1753}, {0x1772, 0x1773}, {0x17b4, 0x17b5}, {0x17b7, 0x17bd}, |
| 1647 | {0x17c9, 0x17d3}, {0x180b, 0x180d}, {0x1885, 0x1886}, {0x1920, 0x1922}, |
| 1648 | {0x1927, 0x1928}, {0x1939, 0x193b}, {0x1a17, 0x1a18}, {0x1a58, 0x1a5e}, |
| 1649 | {0x1a65, 0x1a6c}, {0x1a73, 0x1a7c}, {0x1ab0, 0x1abd}, {0x1b00, 0x1b03}, |
| 1650 | {0x1b36, 0x1b3a}, {0x1b6b, 0x1b73}, {0x1b80, 0x1b81}, {0x1ba2, 0x1ba5}, |
| 1651 | {0x1ba8, 0x1ba9}, {0x1bab, 0x1bad}, {0x1be8, 0x1be9}, {0x1bef, 0x1bf1}, |
| 1652 | {0x1c2c, 0x1c33}, {0x1c36, 0x1c37}, {0x1cd0, 0x1cd2}, {0x1cd4, 0x1ce0}, |
| 1653 | {0x1ce2, 0x1ce8}, {0x1cf8, 0x1cf9}, {0x1dc0, 0x1df9}, {0x1dfb, 0x1dff}, |
| 1654 | {0x20d0, 0x20dc}, {0x20e5, 0x20f0}, {0x2cef, 0x2cf1}, {0x2de0, 0x2dff}, |
| 1655 | {0x302a, 0x302d}, {0x3099, 0x309a}, {0xa674, 0xa67d}, {0xa69e, 0xa69f}, |
| 1656 | {0xa6f0, 0xa6f1}, {0xa825, 0xa826}, {0xa8c4, 0xa8c5}, {0xa8e0, 0xa8f1}, |
| 1657 | {0xa926, 0xa92d}, {0xa947, 0xa951}, {0xa980, 0xa982}, {0xa9b6, 0xa9b9}, |
| 1658 | {0xaa29, 0xaa2e}, {0xaa31, 0xaa32}, {0xaa35, 0xaa36}, {0xaab2, 0xaab4}, |
| 1659 | {0xaab7, 0xaab8}, {0xaabe, 0xaabf}, {0xaaec, 0xaaed}, {0xfe00, 0xfe0f}, |
| 1660 | {0xfe20, 0xfe2f}, {0x10376, 0x1037a}, {0x10a01, 0x10a03}, {0x10a05, 0x10a06}, |
| 1661 | {0x10a0c, 0x10a0f}, {0x10a38, 0x10a3a}, {0x10ae5, 0x10ae6}, {0x10d24, 0x10d27}, |
| 1662 | {0x10f46, 0x10f50}, {0x11038, 0x11046}, {0x1107f, 0x11081}, {0x110b3, 0x110b6}, |
| 1663 | {0x110b9, 0x110ba}, {0x11100, 0x11102}, {0x11127, 0x1112b}, {0x1112d, 0x11134}, |
| 1664 | {0x11180, 0x11181}, {0x111b6, 0x111be}, {0x111c9, 0x111cc}, {0x1122f, 0x11231}, |
| 1665 | {0x11236, 0x11237}, {0x112e3, 0x112ea}, {0x11300, 0x11301}, {0x1133b, 0x1133c}, |
| 1666 | {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11438, 0x1143f}, {0x11442, 0x11444}, |
| 1667 | {0x114b3, 0x114b8}, {0x114bf, 0x114c0}, {0x114c2, 0x114c3}, {0x115b2, 0x115b5}, |
| 1668 | {0x115bc, 0x115bd}, {0x115bf, 0x115c0}, {0x115dc, 0x115dd}, {0x11633, 0x1163a}, |
| 1669 | {0x1163f, 0x11640}, {0x116b0, 0x116b5}, {0x1171d, 0x1171f}, {0x11722, 0x11725}, |
| 1670 | {0x11727, 0x1172b}, {0x1182f, 0x11837}, {0x11839, 0x1183a}, {0x11a01, 0x11a0a}, |
| 1671 | {0x11a33, 0x11a38}, {0x11a3b, 0x11a3e}, {0x11a51, 0x11a56}, {0x11a59, 0x11a5b}, |
| 1672 | {0x11a8a, 0x11a96}, {0x11a98, 0x11a99}, {0x11c30, 0x11c36}, {0x11c38, 0x11c3d}, |
| 1673 | {0x11c92, 0x11ca7}, {0x11caa, 0x11cb0}, {0x11cb2, 0x11cb3}, {0x11cb5, 0x11cb6}, |
| 1674 | {0x11d31, 0x11d36}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d45}, {0x11d90, 0x11d91}, |
| 1675 | {0x11ef3, 0x11ef4}, {0x16af0, 0x16af4}, {0x16b30, 0x16b36}, {0x16f8f, 0x16f92}, |
| 1676 | {0x1bc9d, 0x1bc9e}, {0x1d167, 0x1d169}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, |
| 1677 | {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, {0x1da00, 0x1da36}, {0x1da3b, 0x1da6c}, |
| 1678 | {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, |
| 1679 | {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e8d0, 0x1e8d6}, |
| 1680 | {0x1e944, 0x1e94a}, {0xe0100, 0xe01ef}}), |
| 1681 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1682 | return characterClass; |
| 1683 | } |
| 1684 | |
| 1685 | static std::unique_ptr<CharacterClass> createCharacterClass34() |
| 1686 | { |
| 1687 | // Name = Enclosing_Mark, number of codePoints: 13 |
| 1688 | auto characterClass = std::make_unique<CharacterClass>( |
| 1689 | std::initializer_list<UChar32>({}), |
| 1690 | std::initializer_list<CharacterRange>({}), |
| 1691 | std::initializer_list<UChar32>({0x1abe}), |
| 1692 | std::initializer_list<CharacterRange>({{0x0488, 0x0489}, {0x20dd, 0x20e0}, {0x20e2, 0x20e4}, {0xa670, 0xa672}}), |
| 1693 | CharacterClassWidths::HasBMPChars); |
| 1694 | return characterClass; |
| 1695 | } |
| 1696 | |
| 1697 | static std::unique_ptr<CharacterClass> createCharacterClass35() |
| 1698 | { |
| 1699 | // Name = Spacing_Mark, number of codePoints: 415 |
| 1700 | auto characterClass = std::make_unique<CharacterClass>( |
| 1701 | std::initializer_list<UChar32>({}), |
| 1702 | std::initializer_list<CharacterRange>({}), |
| 1703 | std::initializer_list<UChar32>({0x0903, 0x093b, 0x09d7, 0x0a03, 0x0a83, 0x0ac9, 0x0b3e, 0x0b40, |
| 1704 | 0x0b57, 0x0bd7, 0x0cbe, 0x0d57, 0x0f7f, 0x1031, 0x1038, 0x108f, |
| 1705 | 0x17b6, 0x1a55, 0x1a57, 0x1a61, 0x1b04, 0x1b35, 0x1b3b, 0x1b82, |
| 1706 | 0x1ba1, 0x1baa, 0x1be7, 0x1bee, 0x1ce1, 0x1cf7, 0xa827, 0xa983, |
| 1707 | 0xaa4d, 0xaa7b, 0xaa7d, 0xaaeb, 0xaaf5, 0xabec, 0x11000, 0x11002, |
| 1708 | 0x11082, 0x1112c, 0x11182, 0x11235, 0x11357, 0x11445, 0x114b9, 0x114c1, |
| 1709 | 0x115be, 0x1163e, 0x116ac, 0x116b6, 0x11726, 0x11838, 0x11a39, 0x11a97, |
| 1710 | 0x11c2f, 0x11c3e, 0x11ca9, 0x11cb1, 0x11cb4, 0x11d96}), |
| 1711 | std::initializer_list<CharacterRange>({{0x093e, 0x0940}, {0x0949, 0x094c}, {0x094e, 0x094f}, {0x0982, 0x0983}, |
| 1712 | {0x09be, 0x09c0}, {0x09c7, 0x09c8}, {0x09cb, 0x09cc}, {0x0a3e, 0x0a40}, |
| 1713 | {0x0abe, 0x0ac0}, {0x0acb, 0x0acc}, {0x0b02, 0x0b03}, {0x0b47, 0x0b48}, |
| 1714 | {0x0b4b, 0x0b4c}, {0x0bbe, 0x0bbf}, {0x0bc1, 0x0bc2}, {0x0bc6, 0x0bc8}, |
| 1715 | {0x0bca, 0x0bcc}, {0x0c01, 0x0c03}, {0x0c41, 0x0c44}, {0x0c82, 0x0c83}, |
| 1716 | {0x0cc0, 0x0cc4}, {0x0cc7, 0x0cc8}, {0x0cca, 0x0ccb}, {0x0cd5, 0x0cd6}, |
| 1717 | {0x0d02, 0x0d03}, {0x0d3e, 0x0d40}, {0x0d46, 0x0d48}, {0x0d4a, 0x0d4c}, |
| 1718 | {0x0d82, 0x0d83}, {0x0dcf, 0x0dd1}, {0x0dd8, 0x0ddf}, {0x0df2, 0x0df3}, |
| 1719 | {0x0f3e, 0x0f3f}, {0x102b, 0x102c}, {0x103b, 0x103c}, {0x1056, 0x1057}, |
| 1720 | {0x1062, 0x1064}, {0x1067, 0x106d}, {0x1083, 0x1084}, {0x1087, 0x108c}, |
| 1721 | {0x109a, 0x109c}, {0x17be, 0x17c5}, {0x17c7, 0x17c8}, {0x1923, 0x1926}, |
| 1722 | {0x1929, 0x192b}, {0x1930, 0x1931}, {0x1933, 0x1938}, {0x1a19, 0x1a1a}, |
| 1723 | {0x1a63, 0x1a64}, {0x1a6d, 0x1a72}, {0x1b3d, 0x1b41}, {0x1b43, 0x1b44}, |
| 1724 | {0x1ba6, 0x1ba7}, {0x1bea, 0x1bec}, {0x1bf2, 0x1bf3}, {0x1c24, 0x1c2b}, |
| 1725 | {0x1c34, 0x1c35}, {0x1cf2, 0x1cf3}, {0x302e, 0x302f}, {0xa823, 0xa824}, |
| 1726 | {0xa880, 0xa881}, {0xa8b4, 0xa8c3}, {0xa952, 0xa953}, {0xa9b4, 0xa9b5}, |
| 1727 | {0xa9ba, 0xa9bb}, {0xa9bd, 0xa9c0}, {0xaa2f, 0xaa30}, {0xaa33, 0xaa34}, |
| 1728 | {0xaaee, 0xaaef}, {0xabe3, 0xabe4}, {0xabe6, 0xabe7}, {0xabe9, 0xabea}, |
| 1729 | {0x110b0, 0x110b2}, {0x110b7, 0x110b8}, {0x11145, 0x11146}, {0x111b3, 0x111b5}, |
| 1730 | {0x111bf, 0x111c0}, {0x1122c, 0x1122e}, {0x11232, 0x11233}, {0x112e0, 0x112e2}, |
| 1731 | {0x11302, 0x11303}, {0x1133e, 0x1133f}, {0x11341, 0x11344}, {0x11347, 0x11348}, |
| 1732 | {0x1134b, 0x1134d}, {0x11362, 0x11363}, {0x11435, 0x11437}, {0x11440, 0x11441}, |
| 1733 | {0x114b0, 0x114b2}, {0x114bb, 0x114be}, {0x115af, 0x115b1}, {0x115b8, 0x115bb}, |
| 1734 | {0x11630, 0x11632}, {0x1163b, 0x1163c}, {0x116ae, 0x116af}, {0x11720, 0x11721}, |
| 1735 | {0x1182c, 0x1182e}, {0x11a57, 0x11a58}, {0x11d8a, 0x11d8e}, {0x11d93, 0x11d94}, |
| 1736 | {0x11ef5, 0x11ef6}, {0x16f51, 0x16f7e}, {0x1d165, 0x1d166}, {0x1d16d, 0x1d172}}), |
| 1737 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1738 | return characterClass; |
| 1739 | } |
| 1740 | |
| 1741 | static std::unique_ptr<CharacterClass> createCharacterClass36() |
| 1742 | { |
| 1743 | // Name = Letter_Number, number of codePoints: 236 |
| 1744 | auto characterClass = std::make_unique<CharacterClass>( |
| 1745 | std::initializer_list<UChar32>({}), |
| 1746 | std::initializer_list<CharacterRange>({}), |
| 1747 | std::initializer_list<UChar32>({0x3007, 0x10341, 0x1034a}), |
| 1748 | std::initializer_list<CharacterRange>({{0x16ee, 0x16f0}, {0x2160, 0x2182}, {0x2185, 0x2188}, {0x3021, 0x3029}, |
| 1749 | {0x3038, 0x303a}, {0xa6e6, 0xa6ef}, {0x10140, 0x10174}, {0x103d1, 0x103d5}, |
| 1750 | {0x12400, 0x1246e}}), |
| 1751 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1752 | return characterClass; |
| 1753 | } |
| 1754 | |
| 1755 | static std::unique_ptr<CharacterClass> createCharacterClass37() |
| 1756 | { |
| 1757 | // Name = Line_Separator, number of codePoints: 1 |
| 1758 | auto characterClass = std::make_unique<CharacterClass>( |
| 1759 | std::initializer_list<UChar32>({}), |
| 1760 | std::initializer_list<CharacterRange>({}), |
| 1761 | std::initializer_list<UChar32>({0x2028}), |
| 1762 | std::initializer_list<CharacterRange>({}), |
| 1763 | CharacterClassWidths::HasBMPChars); |
| 1764 | return characterClass; |
| 1765 | } |
| 1766 | |
| 1767 | static std::unique_ptr<CharacterClass> createCharacterClass38() |
| 1768 | { |
| 1769 | // Name = Paragraph_Separator, number of codePoints: 1 |
| 1770 | auto characterClass = std::make_unique<CharacterClass>( |
| 1771 | std::initializer_list<UChar32>({}), |
| 1772 | std::initializer_list<CharacterRange>({}), |
| 1773 | std::initializer_list<UChar32>({0x2029}), |
| 1774 | std::initializer_list<CharacterRange>({}), |
| 1775 | CharacterClassWidths::HasBMPChars); |
| 1776 | return characterClass; |
| 1777 | } |
| 1778 | |
| 1779 | static std::unique_ptr<CharacterClass> createCharacterClass39() |
| 1780 | { |
| 1781 | // Name = Surrogate, number of codePoints: 2048 |
| 1782 | auto characterClass = std::make_unique<CharacterClass>( |
| 1783 | std::initializer_list<UChar32>({}), |
| 1784 | std::initializer_list<CharacterRange>({}), |
| 1785 | std::initializer_list<UChar32>({}), |
| 1786 | std::initializer_list<CharacterRange>({{0xd800, 0xdfff}}), |
| 1787 | CharacterClassWidths::HasBMPChars); |
| 1788 | return characterClass; |
| 1789 | } |
| 1790 | |
| 1791 | static std::unique_ptr<CharacterClass> createCharacterClass40() |
| 1792 | { |
| 1793 | // Name = Private_Use, number of codePoints: 137468 |
| 1794 | auto characterClass = std::make_unique<CharacterClass>( |
| 1795 | std::initializer_list<UChar32>({}), |
| 1796 | std::initializer_list<CharacterRange>({}), |
| 1797 | std::initializer_list<UChar32>({}), |
| 1798 | std::initializer_list<CharacterRange>({{0xe000, 0xf8ff}, {0xf0000, 0xffffd}, {0x100000, 0x10fffd}}), |
| 1799 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1800 | return characterClass; |
| 1801 | } |
| 1802 | |
| 1803 | static std::unique_ptr<CharacterClass> createCharacterClass41() |
| 1804 | { |
| 1805 | // Name = Bidi_Mirrored, number of codePoints: 545 |
| 1806 | auto characterClass = std::make_unique<CharacterClass>( |
| 1807 | std::initializer_list<UChar32>({0x3c, 0x3e, 0x5b, 0x5d, 0x7b, 0x7d}), |
| 1808 | std::initializer_list<CharacterRange>({{0x28, 0x29}}), |
| 1809 | std::initializer_list<UChar32>({0x00ab, 0x00bb, 0x2140, 0x2211, 0x2224, 0x2226, 0x2239, 0x2262, |
| 1810 | 0x2298, 0x27c0, 0x29b8, 0x29c9, 0x29e1, 0x2a24, 0x2a26, 0x2a29, |
| 1811 | 0x2adc, 0x2ade, 0x2af3, 0x2afd, 0x2bfe, 0xff1c, 0xff1e, 0xff3b, |
| 1812 | 0xff3d, 0xff5b, 0xff5d, 0x1d6db, 0x1d715, 0x1d74f, 0x1d789, 0x1d7c3}), |
| 1813 | std::initializer_list<CharacterRange>({{0x0f3a, 0x0f3d}, {0x169b, 0x169c}, {0x2039, 0x203a}, {0x2045, 0x2046}, |
| 1814 | {0x207d, 0x207e}, {0x208d, 0x208e}, {0x2201, 0x2204}, {0x2208, 0x220d}, |
| 1815 | {0x2215, 0x2216}, {0x221a, 0x221d}, {0x221f, 0x2222}, {0x222b, 0x2233}, |
| 1816 | {0x223b, 0x224c}, {0x2252, 0x2255}, {0x225f, 0x2260}, {0x2264, 0x226b}, |
| 1817 | {0x226e, 0x228c}, {0x228f, 0x2292}, {0x22a2, 0x22a3}, {0x22a6, 0x22b8}, |
| 1818 | {0x22be, 0x22bf}, {0x22c9, 0x22cd}, {0x22d0, 0x22d1}, {0x22d6, 0x22ed}, |
| 1819 | {0x22f0, 0x22ff}, {0x2308, 0x230b}, {0x2320, 0x2321}, {0x2329, 0x232a}, |
| 1820 | {0x2768, 0x2775}, {0x27c3, 0x27c6}, {0x27c8, 0x27c9}, {0x27cb, 0x27cd}, |
| 1821 | {0x27d3, 0x27d6}, {0x27dc, 0x27de}, {0x27e2, 0x27ef}, {0x2983, 0x2998}, |
| 1822 | {0x299b, 0x29a0}, {0x29a2, 0x29af}, {0x29c0, 0x29c5}, {0x29ce, 0x29d2}, |
| 1823 | {0x29d4, 0x29d5}, {0x29d8, 0x29dc}, {0x29e3, 0x29e5}, {0x29e8, 0x29e9}, |
| 1824 | {0x29f4, 0x29f9}, {0x29fc, 0x29fd}, {0x2a0a, 0x2a1c}, {0x2a1e, 0x2a21}, |
| 1825 | {0x2a2b, 0x2a2e}, {0x2a34, 0x2a35}, {0x2a3c, 0x2a3e}, {0x2a57, 0x2a58}, |
| 1826 | {0x2a64, 0x2a65}, {0x2a6a, 0x2a6d}, {0x2a6f, 0x2a70}, {0x2a73, 0x2a74}, |
| 1827 | {0x2a79, 0x2aa3}, {0x2aa6, 0x2aad}, {0x2aaf, 0x2ad6}, {0x2ae2, 0x2ae6}, |
| 1828 | {0x2aec, 0x2aee}, {0x2af7, 0x2afb}, {0x2e02, 0x2e05}, {0x2e09, 0x2e0a}, |
| 1829 | {0x2e0c, 0x2e0d}, {0x2e1c, 0x2e1d}, {0x2e20, 0x2e29}, {0x3008, 0x3011}, |
| 1830 | {0x3014, 0x301b}, {0xfe59, 0xfe5e}, {0xfe64, 0xfe65}, {0xff08, 0xff09}, |
| 1831 | {0xff5f, 0xff60}, {0xff62, 0xff63}}), |
| 1832 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1833 | return characterClass; |
| 1834 | } |
| 1835 | |
| 1836 | static std::unique_ptr<CharacterClass> createCharacterClass42() |
| 1837 | { |
| 1838 | // Name = Math, number of codePoints: 2310 |
| 1839 | auto characterClass = std::make_unique<CharacterClass>( |
| 1840 | std::initializer_list<UChar32>({0x2b, 0x5e, 0x7c, 0x7e}), |
| 1841 | std::initializer_list<CharacterRange>({{0x3c, 0x3e}}), |
| 1842 | std::initializer_list<UChar32>({0x00ac, 0x00b1, 0x00d7, 0x00f7, 0x03d5, 0x2016, 0x2040, 0x2044, |
| 1843 | 0x2052, 0x20e1, 0x2102, 0x2107, 0x2115, 0x2124, 0x214b, 0x21dd, |
| 1844 | 0x237c, 0x23b7, 0x23d0, 0x25e2, 0x25e4, 0x2640, 0x2642, 0xfb29, |
| 1845 | 0xfe68, 0xff0b, 0xff3c, 0xff3e, 0xff5c, 0xff5e, 0xffe2, 0x1d4a2, |
| 1846 | 0x1d4bb, 0x1d546, 0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, 0x1ee42, 0x1ee47, |
| 1847 | 0x1ee49, 0x1ee4b, 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, 0x1ee5d, 0x1ee5f, |
| 1848 | 0x1ee64, 0x1ee7e}), |
| 1849 | std::initializer_list<CharacterRange>({{0x03d0, 0x03d2}, {0x03f0, 0x03f1}, {0x03f4, 0x03f6}, {0x0606, 0x0608}, |
| 1850 | {0x2032, 0x2034}, {0x2061, 0x2064}, {0x207a, 0x207e}, {0x208a, 0x208e}, |
| 1851 | {0x20d0, 0x20dc}, {0x20e5, 0x20e6}, {0x20eb, 0x20ef}, {0x210a, 0x2113}, |
| 1852 | {0x2118, 0x211d}, {0x2128, 0x2129}, {0x212c, 0x212d}, {0x212f, 0x2131}, |
| 1853 | {0x2133, 0x2138}, {0x213c, 0x2149}, {0x2190, 0x21a7}, {0x21a9, 0x21ae}, |
| 1854 | {0x21b0, 0x21b1}, {0x21b6, 0x21b7}, {0x21bc, 0x21db}, {0x21e4, 0x21e5}, |
| 1855 | {0x21f4, 0x22ff}, {0x2308, 0x230b}, {0x2320, 0x2321}, {0x239b, 0x23b5}, |
| 1856 | {0x23dc, 0x23e2}, {0x25a0, 0x25a1}, {0x25ae, 0x25b7}, {0x25bc, 0x25c1}, |
| 1857 | {0x25c6, 0x25c7}, {0x25ca, 0x25cb}, {0x25cf, 0x25d3}, {0x25e7, 0x25ec}, |
| 1858 | {0x25f8, 0x25ff}, {0x2605, 0x2606}, {0x2660, 0x2663}, {0x266d, 0x266f}, |
| 1859 | {0x27c0, 0x27ff}, {0x2900, 0x2aff}, {0x2b30, 0x2b44}, {0x2b47, 0x2b4c}, |
| 1860 | {0xfe61, 0xfe66}, {0xff1c, 0xff1e}, {0xffe9, 0xffec}, {0x1d400, 0x1d454}, |
| 1861 | {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, |
| 1862 | {0x1d4ae, 0x1d4b9}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, |
| 1863 | {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, |
| 1864 | {0x1d540, 0x1d544}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d7cb}, |
| 1865 | {0x1d7ce, 0x1d7ff}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, |
| 1866 | {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, |
| 1867 | {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, |
| 1868 | {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, |
| 1869 | {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1eef0, 0x1eef1}}), |
| 1870 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 1871 | return characterClass; |
| 1872 | } |
| 1873 | |
| 1874 | static std::unique_ptr<CharacterClass> createCharacterClass43() |
| 1875 | { |
| 1876 | // Name = Alphabetic, number of codePoints: 126989 |
| 1877 | auto characterClass = std::make_unique<CharacterClass>( |
| 1878 | std::initializer_list<UChar32>({}), |
| 1879 | std::initializer_list<CharacterRange>({{0x41, 0x5a}, {0x61, 0x7a}}), |
| 1880 | std::initializer_list<UChar32>({0x00aa, 0x00b5, 0x00ba, 0x02ec, 0x02ee, 0x0345, 0x037f, 0x0386, |
| 1881 | 0x038c, 0x0559, 0x05bf, 0x05c7, 0x06ff, 0x07fa, 0x09b2, 0x09ce, |
| 1882 | 0x09d7, 0x09fc, 0x0a51, 0x0a5e, 0x0ad0, 0x0b71, 0x0b9c, 0x0bd0, |
| 1883 | 0x0bd7, 0x0cde, 0x0d4e, 0x0dbd, 0x0dd6, 0x0e4d, 0x0e84, 0x0e8a, |
| 1884 | 0x0e8d, 0x0ea5, 0x0ea7, 0x0ec6, 0x0ecd, 0x0f00, 0x1038, 0x108e, |
| 1885 | 0x10c7, 0x10cd, 0x1258, 0x12c0, 0x135f, 0x17d7, 0x17dc, 0x1aa7, |
| 1886 | 0x1f59, 0x1f5b, 0x1f5d, 0x1fbe, 0x2071, 0x207f, 0x2102, 0x2107, |
| 1887 | 0x2115, 0x2124, 0x2126, 0x2128, 0x214e, 0x2d27, 0x2d2d, 0x2d6f, |
| 1888 | 0x2e2f, 0xa8c5, 0xa8fb, 0xa9cf, 0xaa7a, 0xaac0, 0xaac2, 0xfb3e, |
| 1889 | 0x10808, 0x1083c, 0x10f27, 0x11176, 0x111da, 0x111dc, 0x11237, 0x1123e, |
| 1890 | 0x11288, 0x11350, 0x11357, 0x114c7, 0x11640, 0x11644, 0x118ff, 0x11a9d, |
| 1891 | 0x11c40, 0x11d3a, 0x11d43, 0x11d98, 0x1bc9e, 0x1d4a2, 0x1d4bb, 0x1d546, |
| 1892 | 0x1e947, 0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, 0x1ee42, 0x1ee47, 0x1ee49, |
| 1893 | 0x1ee4b, 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, 0x1ee5d, 0x1ee5f, 0x1ee64, |
| 1894 | 0x1ee7e}), |
| 1895 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00f6}, {0x00f8, 0x02c1}, {0x02c6, 0x02d1}, |
| 1896 | {0x02e0, 0x02e4}, {0x0370, 0x0374}, {0x0376, 0x0377}, {0x037a, 0x037d}, |
| 1897 | {0x0388, 0x038a}, {0x038e, 0x03a1}, {0x03a3, 0x03f5}, {0x03f7, 0x0481}, |
| 1898 | {0x048a, 0x052f}, {0x0531, 0x0556}, {0x0560, 0x0588}, {0x05b0, 0x05bd}, |
| 1899 | {0x05c1, 0x05c2}, {0x05c4, 0x05c5}, {0x05d0, 0x05ea}, {0x05ef, 0x05f2}, |
| 1900 | {0x0610, 0x061a}, {0x0620, 0x0657}, {0x0659, 0x065f}, {0x066e, 0x06d3}, |
| 1901 | {0x06d5, 0x06dc}, {0x06e1, 0x06e8}, {0x06ed, 0x06ef}, {0x06fa, 0x06fc}, |
| 1902 | {0x0710, 0x073f}, {0x074d, 0x07b1}, {0x07ca, 0x07ea}, {0x07f4, 0x07f5}, |
| 1903 | {0x0800, 0x0817}, {0x081a, 0x082c}, {0x0840, 0x0858}, {0x0860, 0x086a}, |
| 1904 | {0x08a0, 0x08b4}, {0x08b6, 0x08bd}, {0x08d4, 0x08df}, {0x08e3, 0x08e9}, |
| 1905 | {0x08f0, 0x093b}, {0x093d, 0x094c}, {0x094e, 0x0950}, {0x0955, 0x0963}, |
| 1906 | {0x0971, 0x0983}, {0x0985, 0x098c}, {0x098f, 0x0990}, {0x0993, 0x09a8}, |
| 1907 | {0x09aa, 0x09b0}, {0x09b6, 0x09b9}, {0x09bd, 0x09c4}, {0x09c7, 0x09c8}, |
| 1908 | {0x09cb, 0x09cc}, {0x09dc, 0x09dd}, {0x09df, 0x09e3}, {0x09f0, 0x09f1}, |
| 1909 | {0x0a01, 0x0a03}, {0x0a05, 0x0a0a}, {0x0a0f, 0x0a10}, {0x0a13, 0x0a28}, |
| 1910 | {0x0a2a, 0x0a30}, {0x0a32, 0x0a33}, {0x0a35, 0x0a36}, {0x0a38, 0x0a39}, |
| 1911 | {0x0a3e, 0x0a42}, {0x0a47, 0x0a48}, {0x0a4b, 0x0a4c}, {0x0a59, 0x0a5c}, |
| 1912 | {0x0a70, 0x0a75}, {0x0a81, 0x0a83}, {0x0a85, 0x0a8d}, {0x0a8f, 0x0a91}, |
| 1913 | {0x0a93, 0x0aa8}, {0x0aaa, 0x0ab0}, {0x0ab2, 0x0ab3}, {0x0ab5, 0x0ab9}, |
| 1914 | {0x0abd, 0x0ac5}, {0x0ac7, 0x0ac9}, {0x0acb, 0x0acc}, {0x0ae0, 0x0ae3}, |
| 1915 | {0x0af9, 0x0afc}, {0x0b01, 0x0b03}, {0x0b05, 0x0b0c}, {0x0b0f, 0x0b10}, |
| 1916 | {0x0b13, 0x0b28}, {0x0b2a, 0x0b30}, {0x0b32, 0x0b33}, {0x0b35, 0x0b39}, |
| 1917 | {0x0b3d, 0x0b44}, {0x0b47, 0x0b48}, {0x0b4b, 0x0b4c}, {0x0b56, 0x0b57}, |
| 1918 | {0x0b5c, 0x0b5d}, {0x0b5f, 0x0b63}, {0x0b82, 0x0b83}, {0x0b85, 0x0b8a}, |
| 1919 | {0x0b8e, 0x0b90}, {0x0b92, 0x0b95}, {0x0b99, 0x0b9a}, {0x0b9e, 0x0b9f}, |
| 1920 | {0x0ba3, 0x0ba4}, {0x0ba8, 0x0baa}, {0x0bae, 0x0bb9}, {0x0bbe, 0x0bc2}, |
| 1921 | {0x0bc6, 0x0bc8}, {0x0bca, 0x0bcc}, {0x0c00, 0x0c03}, {0x0c05, 0x0c0c}, |
| 1922 | {0x0c0e, 0x0c10}, {0x0c12, 0x0c28}, {0x0c2a, 0x0c39}, {0x0c3d, 0x0c44}, |
| 1923 | {0x0c46, 0x0c48}, {0x0c4a, 0x0c4c}, {0x0c55, 0x0c56}, {0x0c58, 0x0c5a}, |
| 1924 | {0x0c60, 0x0c63}, {0x0c80, 0x0c83}, {0x0c85, 0x0c8c}, {0x0c8e, 0x0c90}, |
| 1925 | {0x0c92, 0x0ca8}, {0x0caa, 0x0cb3}, {0x0cb5, 0x0cb9}, {0x0cbd, 0x0cc4}, |
| 1926 | {0x0cc6, 0x0cc8}, {0x0cca, 0x0ccc}, {0x0cd5, 0x0cd6}, {0x0ce0, 0x0ce3}, |
| 1927 | {0x0cf1, 0x0cf2}, {0x0d00, 0x0d03}, {0x0d05, 0x0d0c}, {0x0d0e, 0x0d10}, |
| 1928 | {0x0d12, 0x0d3a}, {0x0d3d, 0x0d44}, {0x0d46, 0x0d48}, {0x0d4a, 0x0d4c}, |
| 1929 | {0x0d54, 0x0d57}, {0x0d5f, 0x0d63}, {0x0d7a, 0x0d7f}, {0x0d82, 0x0d83}, |
| 1930 | {0x0d85, 0x0d96}, {0x0d9a, 0x0db1}, {0x0db3, 0x0dbb}, {0x0dc0, 0x0dc6}, |
| 1931 | {0x0dcf, 0x0dd4}, {0x0dd8, 0x0ddf}, {0x0df2, 0x0df3}, {0x0e01, 0x0e3a}, |
| 1932 | {0x0e40, 0x0e46}, {0x0e81, 0x0e82}, {0x0e87, 0x0e88}, {0x0e94, 0x0e97}, |
| 1933 | {0x0e99, 0x0e9f}, {0x0ea1, 0x0ea3}, {0x0eaa, 0x0eab}, {0x0ead, 0x0eb9}, |
| 1934 | {0x0ebb, 0x0ebd}, {0x0ec0, 0x0ec4}, {0x0edc, 0x0edf}, {0x0f40, 0x0f47}, |
| 1935 | {0x0f49, 0x0f6c}, {0x0f71, 0x0f81}, {0x0f88, 0x0f97}, {0x0f99, 0x0fbc}, |
| 1936 | {0x1000, 0x1036}, {0x103b, 0x103f}, {0x1050, 0x1062}, {0x1065, 0x1068}, |
| 1937 | {0x106e, 0x1086}, {0x109c, 0x109d}, {0x10a0, 0x10c5}, {0x10d0, 0x10fa}, |
| 1938 | {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x125a, 0x125d}, |
| 1939 | {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, |
| 1940 | {0x12b8, 0x12be}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, |
| 1941 | {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, |
| 1942 | {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, |
| 1943 | {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x170c}, {0x170e, 0x1713}, |
| 1944 | {0x1720, 0x1733}, {0x1740, 0x1753}, {0x1760, 0x176c}, {0x176e, 0x1770}, |
| 1945 | {0x1772, 0x1773}, {0x1780, 0x17b3}, {0x17b6, 0x17c8}, {0x1820, 0x1878}, |
| 1946 | {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1920, 0x192b}, |
| 1947 | {0x1930, 0x1938}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, |
| 1948 | {0x19b0, 0x19c9}, {0x1a00, 0x1a1b}, {0x1a20, 0x1a5e}, {0x1a61, 0x1a74}, |
| 1949 | {0x1b00, 0x1b33}, {0x1b35, 0x1b43}, {0x1b45, 0x1b4b}, {0x1b80, 0x1ba9}, |
| 1950 | {0x1bac, 0x1baf}, {0x1bba, 0x1be5}, {0x1be7, 0x1bf1}, {0x1c00, 0x1c35}, |
| 1951 | {0x1c4d, 0x1c4f}, {0x1c5a, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, |
| 1952 | {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf6}, |
| 1953 | {0x1d00, 0x1dbf}, {0x1de7, 0x1df4}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, |
| 1954 | {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f5f, 0x1f7d}, |
| 1955 | {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, |
| 1956 | {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, |
| 1957 | {0x1ff6, 0x1ffc}, {0x2090, 0x209c}, {0x210a, 0x2113}, {0x2119, 0x211d}, |
| 1958 | {0x212a, 0x212d}, {0x212f, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, |
| 1959 | {0x2160, 0x2188}, {0x24b6, 0x24e9}, {0x2c00, 0x2c2e}, {0x2c30, 0x2c5e}, |
| 1960 | {0x2c60, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, |
| 1961 | {0x2d30, 0x2d67}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, |
| 1962 | {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, |
| 1963 | {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, |
| 1964 | {0x3021, 0x3029}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, |
| 1965 | {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, |
| 1966 | {0x3131, 0x318e}, {0x31a0, 0x31ba}, {0x31f0, 0x31ff}, {0x3400, 0x4db5}, |
| 1967 | {0x4e00, 0x9fef}, {0xa000, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, |
| 1968 | {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, {0xa674, 0xa67b}, |
| 1969 | {0xa67f, 0xa6ef}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7b9}, |
| 1970 | {0xa7f7, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa827}, |
| 1971 | {0xa840, 0xa873}, {0xa880, 0xa8c3}, {0xa8f2, 0xa8f7}, {0xa8fd, 0xa8fe}, |
| 1972 | {0xa90a, 0xa92a}, {0xa930, 0xa952}, {0xa960, 0xa97c}, {0xa980, 0xa9b2}, |
| 1973 | {0xa9b4, 0xa9bf}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, {0xa9fa, 0xa9fe}, |
| 1974 | {0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, {0xaa60, 0xaa76}, {0xaa7e, 0xaabe}, |
| 1975 | {0xaadb, 0xaadd}, {0xaae0, 0xaaef}, {0xaaf2, 0xaaf5}, {0xab01, 0xab06}, |
| 1976 | {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, |
| 1977 | {0xab30, 0xab5a}, {0xab5c, 0xab65}, {0xab70, 0xabea}, {0xac00, 0xd7a3}, |
| 1978 | {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, |
| 1979 | {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb28}, {0xfb2a, 0xfb36}, |
| 1980 | {0xfb38, 0xfb3c}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, |
| 1981 | {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfb}, |
| 1982 | {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, |
| 1983 | {0xff66, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, |
| 1984 | {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, |
| 1985 | {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, |
| 1986 | {0x10140, 0x10174}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, |
| 1987 | {0x1032d, 0x1034a}, {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, |
| 1988 | {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, |
| 1989 | {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10600, 0x10736}, |
| 1990 | {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10800, 0x10805}, {0x1080a, 0x10835}, |
| 1991 | {0x10837, 0x10838}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, |
| 1992 | {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, |
| 1993 | {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, |
| 1994 | {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a60, 0x10a7c}, |
| 1995 | {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, |
| 1996 | {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, |
| 1997 | {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10f00, 0x10f1c}, |
| 1998 | {0x10f30, 0x10f45}, {0x11000, 0x11045}, {0x11082, 0x110b8}, {0x110d0, 0x110e8}, |
| 1999 | {0x11100, 0x11132}, {0x11144, 0x11146}, {0x11150, 0x11172}, {0x11180, 0x111bf}, |
| 2000 | {0x111c1, 0x111c4}, {0x11200, 0x11211}, {0x11213, 0x11234}, {0x11280, 0x11286}, |
| 2001 | {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112e8}, |
| 2002 | {0x11300, 0x11303}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, |
| 2003 | {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133d, 0x11344}, |
| 2004 | {0x11347, 0x11348}, {0x1134b, 0x1134c}, {0x1135d, 0x11363}, {0x11400, 0x11441}, |
| 2005 | {0x11443, 0x11445}, {0x11447, 0x1144a}, {0x11480, 0x114c1}, {0x114c4, 0x114c5}, |
| 2006 | {0x11580, 0x115b5}, {0x115b8, 0x115be}, {0x115d8, 0x115dd}, {0x11600, 0x1163e}, |
| 2007 | {0x11680, 0x116b5}, {0x11700, 0x1171a}, {0x1171d, 0x1172a}, {0x11800, 0x11838}, |
| 2008 | {0x118a0, 0x118df}, {0x11a00, 0x11a32}, {0x11a35, 0x11a3e}, {0x11a50, 0x11a83}, |
| 2009 | {0x11a86, 0x11a97}, {0x11ac0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, |
| 2010 | {0x11c38, 0x11c3e}, {0x11c72, 0x11c8f}, {0x11c92, 0x11ca7}, {0x11ca9, 0x11cb6}, |
| 2011 | {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3c, 0x11d3d}, |
| 2012 | {0x11d3f, 0x11d41}, {0x11d46, 0x11d47}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, |
| 2013 | {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d96}, {0x11ee0, 0x11ef6}, |
| 2014 | {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x13000, 0x1342e}, |
| 2015 | {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16ad0, 0x16aed}, |
| 2016 | {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, |
| 2017 | {0x16e40, 0x16e7f}, {0x16f00, 0x16f44}, {0x16f50, 0x16f7e}, {0x16f93, 0x16f9f}, |
| 2018 | {0x16fe0, 0x16fe1}, {0x17000, 0x187f1}, {0x18800, 0x18af2}, {0x1b000, 0x1b11e}, |
| 2019 | {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, |
| 2020 | {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, |
| 2021 | {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bd, 0x1d4c3}, |
| 2022 | {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, |
| 2023 | {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d54a, 0x1d550}, |
| 2024 | {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, |
| 2025 | {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, |
| 2026 | {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, |
| 2027 | {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, |
| 2028 | {0x1e026, 0x1e02a}, {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1ee00, 0x1ee03}, |
| 2029 | {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, |
| 2030 | {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, |
| 2031 | {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, |
| 2032 | {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, |
| 2033 | {0x1f130, 0x1f149}, {0x1f150, 0x1f169}, {0x1f170, 0x1f189}, {0x20000, 0x2a6d6}, |
| 2034 | {0x2a700, 0x2b734}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, |
| 2035 | {0x2f800, 0x2fa1d}}), |
| 2036 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 2037 | return characterClass; |
| 2038 | } |
| 2039 | |
| 2040 | static std::unique_ptr<CharacterClass> createCharacterClass44() |
| 2041 | { |
| 2042 | // Name = Lowercase, number of codePoints: 2334 |
| 2043 | auto characterClass = std::make_unique<CharacterClass>( |
| 2044 | std::initializer_list<UChar32>({}), |
| 2045 | std::initializer_list<CharacterRange>({{0x61, 0x7a}}), |
| 2046 | std::initializer_list<UChar32>({0x00aa, 0x00b5, 0x00ba, 0x0101, 0x0103, 0x0105, 0x0107, 0x0109, |
| 2047 | 0x010b, 0x010d, 0x010f, 0x0111, 0x0113, 0x0115, 0x0117, 0x0119, |
| 2048 | 0x011b, 0x011d, 0x011f, 0x0121, 0x0123, 0x0125, 0x0127, 0x0129, |
| 2049 | 0x012b, 0x012d, 0x012f, 0x0131, 0x0133, 0x0135, 0x013a, 0x013c, |
| 2050 | 0x013e, 0x0140, 0x0142, 0x0144, 0x0146, 0x014b, 0x014d, 0x014f, |
| 2051 | 0x0151, 0x0153, 0x0155, 0x0157, 0x0159, 0x015b, 0x015d, 0x015f, |
| 2052 | 0x0161, 0x0163, 0x0165, 0x0167, 0x0169, 0x016b, 0x016d, 0x016f, |
| 2053 | 0x0171, 0x0173, 0x0175, 0x0177, 0x017a, 0x017c, 0x0183, 0x0185, |
| 2054 | 0x0188, 0x0192, 0x0195, 0x019e, 0x01a1, 0x01a3, 0x01a5, 0x01a8, |
| 2055 | 0x01ad, 0x01b0, 0x01b4, 0x01b6, 0x01c6, 0x01c9, 0x01cc, 0x01ce, |
| 2056 | 0x01d0, 0x01d2, 0x01d4, 0x01d6, 0x01d8, 0x01da, 0x01df, 0x01e1, |
| 2057 | 0x01e3, 0x01e5, 0x01e7, 0x01e9, 0x01eb, 0x01ed, 0x01f3, 0x01f5, |
| 2058 | 0x01f9, 0x01fb, 0x01fd, 0x01ff, 0x0201, 0x0203, 0x0205, 0x0207, |
| 2059 | 0x0209, 0x020b, 0x020d, 0x020f, 0x0211, 0x0213, 0x0215, 0x0217, |
| 2060 | 0x0219, 0x021b, 0x021d, 0x021f, 0x0221, 0x0223, 0x0225, 0x0227, |
| 2061 | 0x0229, 0x022b, 0x022d, 0x022f, 0x0231, 0x023c, 0x0242, 0x0247, |
| 2062 | 0x0249, 0x024b, 0x024d, 0x0345, 0x0371, 0x0373, 0x0377, 0x0390, |
| 2063 | 0x03d9, 0x03db, 0x03dd, 0x03df, 0x03e1, 0x03e3, 0x03e5, 0x03e7, |
| 2064 | 0x03e9, 0x03eb, 0x03ed, 0x03f5, 0x03f8, 0x0461, 0x0463, 0x0465, |
| 2065 | 0x0467, 0x0469, 0x046b, 0x046d, 0x046f, 0x0471, 0x0473, 0x0475, |
| 2066 | 0x0477, 0x0479, 0x047b, 0x047d, 0x047f, 0x0481, 0x048b, 0x048d, |
| 2067 | 0x048f, 0x0491, 0x0493, 0x0495, 0x0497, 0x0499, 0x049b, 0x049d, |
| 2068 | 0x049f, 0x04a1, 0x04a3, 0x04a5, 0x04a7, 0x04a9, 0x04ab, 0x04ad, |
| 2069 | 0x04af, 0x04b1, 0x04b3, 0x04b5, 0x04b7, 0x04b9, 0x04bb, 0x04bd, |
| 2070 | 0x04bf, 0x04c2, 0x04c4, 0x04c6, 0x04c8, 0x04ca, 0x04cc, 0x04d1, |
| 2071 | 0x04d3, 0x04d5, 0x04d7, 0x04d9, 0x04db, 0x04dd, 0x04df, 0x04e1, |
| 2072 | 0x04e3, 0x04e5, 0x04e7, 0x04e9, 0x04eb, 0x04ed, 0x04ef, 0x04f1, |
| 2073 | 0x04f3, 0x04f5, 0x04f7, 0x04f9, 0x04fb, 0x04fd, 0x04ff, 0x0501, |
| 2074 | 0x0503, 0x0505, 0x0507, 0x0509, 0x050b, 0x050d, 0x050f, 0x0511, |
| 2075 | 0x0513, 0x0515, 0x0517, 0x0519, 0x051b, 0x051d, 0x051f, 0x0521, |
| 2076 | 0x0523, 0x0525, 0x0527, 0x0529, 0x052b, 0x052d, 0x052f, 0x1e01, |
| 2077 | 0x1e03, 0x1e05, 0x1e07, 0x1e09, 0x1e0b, 0x1e0d, 0x1e0f, 0x1e11, |
| 2078 | 0x1e13, 0x1e15, 0x1e17, 0x1e19, 0x1e1b, 0x1e1d, 0x1e1f, 0x1e21, |
| 2079 | 0x1e23, 0x1e25, 0x1e27, 0x1e29, 0x1e2b, 0x1e2d, 0x1e2f, 0x1e31, |
| 2080 | 0x1e33, 0x1e35, 0x1e37, 0x1e39, 0x1e3b, 0x1e3d, 0x1e3f, 0x1e41, |
| 2081 | 0x1e43, 0x1e45, 0x1e47, 0x1e49, 0x1e4b, 0x1e4d, 0x1e4f, 0x1e51, |
| 2082 | 0x1e53, 0x1e55, 0x1e57, 0x1e59, 0x1e5b, 0x1e5d, 0x1e5f, 0x1e61, |
| 2083 | 0x1e63, 0x1e65, 0x1e67, 0x1e69, 0x1e6b, 0x1e6d, 0x1e6f, 0x1e71, |
| 2084 | 0x1e73, 0x1e75, 0x1e77, 0x1e79, 0x1e7b, 0x1e7d, 0x1e7f, 0x1e81, |
| 2085 | 0x1e83, 0x1e85, 0x1e87, 0x1e89, 0x1e8b, 0x1e8d, 0x1e8f, 0x1e91, |
| 2086 | 0x1e93, 0x1e9f, 0x1ea1, 0x1ea3, 0x1ea5, 0x1ea7, 0x1ea9, 0x1eab, |
| 2087 | 0x1ead, 0x1eaf, 0x1eb1, 0x1eb3, 0x1eb5, 0x1eb7, 0x1eb9, 0x1ebb, |
| 2088 | 0x1ebd, 0x1ebf, 0x1ec1, 0x1ec3, 0x1ec5, 0x1ec7, 0x1ec9, 0x1ecb, |
| 2089 | 0x1ecd, 0x1ecf, 0x1ed1, 0x1ed3, 0x1ed5, 0x1ed7, 0x1ed9, 0x1edb, |
| 2090 | 0x1edd, 0x1edf, 0x1ee1, 0x1ee3, 0x1ee5, 0x1ee7, 0x1ee9, 0x1eeb, |
| 2091 | 0x1eed, 0x1eef, 0x1ef1, 0x1ef3, 0x1ef5, 0x1ef7, 0x1ef9, 0x1efb, |
| 2092 | 0x1efd, 0x1fbe, 0x2071, 0x207f, 0x210a, 0x2113, 0x212f, 0x2134, |
| 2093 | 0x2139, 0x214e, 0x2184, 0x2c61, 0x2c68, 0x2c6a, 0x2c6c, 0x2c71, |
| 2094 | 0x2c81, 0x2c83, 0x2c85, 0x2c87, 0x2c89, 0x2c8b, 0x2c8d, 0x2c8f, |
| 2095 | 0x2c91, 0x2c93, 0x2c95, 0x2c97, 0x2c99, 0x2c9b, 0x2c9d, 0x2c9f, |
| 2096 | 0x2ca1, 0x2ca3, 0x2ca5, 0x2ca7, 0x2ca9, 0x2cab, 0x2cad, 0x2caf, |
| 2097 | 0x2cb1, 0x2cb3, 0x2cb5, 0x2cb7, 0x2cb9, 0x2cbb, 0x2cbd, 0x2cbf, |
| 2098 | 0x2cc1, 0x2cc3, 0x2cc5, 0x2cc7, 0x2cc9, 0x2ccb, 0x2ccd, 0x2ccf, |
| 2099 | 0x2cd1, 0x2cd3, 0x2cd5, 0x2cd7, 0x2cd9, 0x2cdb, 0x2cdd, 0x2cdf, |
| 2100 | 0x2ce1, 0x2cec, 0x2cee, 0x2cf3, 0x2d27, 0x2d2d, 0xa641, 0xa643, |
| 2101 | 0xa645, 0xa647, 0xa649, 0xa64b, 0xa64d, 0xa64f, 0xa651, 0xa653, |
| 2102 | 0xa655, 0xa657, 0xa659, 0xa65b, 0xa65d, 0xa65f, 0xa661, 0xa663, |
| 2103 | 0xa665, 0xa667, 0xa669, 0xa66b, 0xa66d, 0xa681, 0xa683, 0xa685, |
| 2104 | 0xa687, 0xa689, 0xa68b, 0xa68d, 0xa68f, 0xa691, 0xa693, 0xa695, |
| 2105 | 0xa697, 0xa699, 0xa723, 0xa725, 0xa727, 0xa729, 0xa72b, 0xa72d, |
| 2106 | 0xa733, 0xa735, 0xa737, 0xa739, 0xa73b, 0xa73d, 0xa73f, 0xa741, |
| 2107 | 0xa743, 0xa745, 0xa747, 0xa749, 0xa74b, 0xa74d, 0xa74f, 0xa751, |
| 2108 | 0xa753, 0xa755, 0xa757, 0xa759, 0xa75b, 0xa75d, 0xa75f, 0xa761, |
| 2109 | 0xa763, 0xa765, 0xa767, 0xa769, 0xa76b, 0xa76d, 0xa77a, 0xa77c, |
| 2110 | 0xa77f, 0xa781, 0xa783, 0xa785, 0xa787, 0xa78c, 0xa78e, 0xa791, |
| 2111 | 0xa797, 0xa799, 0xa79b, 0xa79d, 0xa79f, 0xa7a1, 0xa7a3, 0xa7a5, |
| 2112 | 0xa7a7, 0xa7a9, 0xa7af, 0xa7b5, 0xa7b7, 0xa7b9, 0x1d4bb, 0x1d7cb}), |
| 2113 | std::initializer_list<CharacterRange>({{0x00df, 0x00f6}, {0x00f8, 0x00ff}, {0x0137, 0x0138}, {0x0148, 0x0149}, |
| 2114 | {0x017e, 0x0180}, {0x018c, 0x018d}, {0x0199, 0x019b}, {0x01aa, 0x01ab}, |
| 2115 | {0x01b9, 0x01ba}, {0x01bd, 0x01bf}, {0x01dc, 0x01dd}, {0x01ef, 0x01f0}, |
| 2116 | {0x0233, 0x0239}, {0x023f, 0x0240}, {0x024f, 0x0293}, {0x0295, 0x02b8}, |
| 2117 | {0x02c0, 0x02c1}, {0x02e0, 0x02e4}, {0x037a, 0x037d}, {0x03ac, 0x03ce}, |
| 2118 | {0x03d0, 0x03d1}, {0x03d5, 0x03d7}, {0x03ef, 0x03f3}, {0x03fb, 0x03fc}, |
| 2119 | {0x0430, 0x045f}, {0x04ce, 0x04cf}, {0x0560, 0x0588}, {0x10d0, 0x10fa}, |
| 2120 | {0x10fd, 0x10ff}, {0x13f8, 0x13fd}, {0x1c80, 0x1c88}, {0x1d00, 0x1dbf}, |
| 2121 | {0x1e95, 0x1e9d}, {0x1eff, 0x1f07}, {0x1f10, 0x1f15}, {0x1f20, 0x1f27}, |
| 2122 | {0x1f30, 0x1f37}, {0x1f40, 0x1f45}, {0x1f50, 0x1f57}, {0x1f60, 0x1f67}, |
| 2123 | {0x1f70, 0x1f7d}, {0x1f80, 0x1f87}, {0x1f90, 0x1f97}, {0x1fa0, 0x1fa7}, |
| 2124 | {0x1fb0, 0x1fb4}, {0x1fb6, 0x1fb7}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fc7}, |
| 2125 | {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fd7}, {0x1fe0, 0x1fe7}, {0x1ff2, 0x1ff4}, |
| 2126 | {0x1ff6, 0x1ff7}, {0x2090, 0x209c}, {0x210e, 0x210f}, {0x213c, 0x213d}, |
| 2127 | {0x2146, 0x2149}, {0x2170, 0x217f}, {0x24d0, 0x24e9}, {0x2c30, 0x2c5e}, |
| 2128 | {0x2c65, 0x2c66}, {0x2c73, 0x2c74}, {0x2c76, 0x2c7d}, {0x2ce3, 0x2ce4}, |
| 2129 | {0x2d00, 0x2d25}, {0xa69b, 0xa69d}, {0xa72f, 0xa731}, {0xa76f, 0xa778}, |
| 2130 | {0xa793, 0xa795}, {0xa7f8, 0xa7fa}, {0xab30, 0xab5a}, {0xab5c, 0xab65}, |
| 2131 | {0xab70, 0xabbf}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xff41, 0xff5a}, |
| 2132 | {0x10428, 0x1044f}, {0x104d8, 0x104fb}, {0x10cc0, 0x10cf2}, {0x118c0, 0x118df}, |
| 2133 | {0x16e60, 0x16e7f}, {0x1d41a, 0x1d433}, {0x1d44e, 0x1d454}, {0x1d456, 0x1d467}, |
| 2134 | {0x1d482, 0x1d49b}, {0x1d4b6, 0x1d4b9}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d4cf}, |
| 2135 | {0x1d4ea, 0x1d503}, {0x1d51e, 0x1d537}, {0x1d552, 0x1d56b}, {0x1d586, 0x1d59f}, |
| 2136 | {0x1d5ba, 0x1d5d3}, {0x1d5ee, 0x1d607}, {0x1d622, 0x1d63b}, {0x1d656, 0x1d66f}, |
| 2137 | {0x1d68a, 0x1d6a5}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6e1}, {0x1d6fc, 0x1d714}, |
| 2138 | {0x1d716, 0x1d71b}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d755}, {0x1d770, 0x1d788}, |
| 2139 | {0x1d78a, 0x1d78f}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7c9}, {0x1e922, 0x1e943}}), |
| 2140 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 2141 | return characterClass; |
| 2142 | } |
| 2143 | |
| 2144 | static std::unique_ptr<CharacterClass> createCharacterClass45() |
| 2145 | { |
| 2146 | // Name = Uppercase, number of codePoints: 1901 |
| 2147 | auto characterClass = std::make_unique<CharacterClass>( |
| 2148 | std::initializer_list<UChar32>({}), |
| 2149 | std::initializer_list<CharacterRange>({{0x41, 0x5a}}), |
| 2150 | std::initializer_list<UChar32>({0x0100, 0x0102, 0x0104, 0x0106, 0x0108, 0x010a, 0x010c, 0x010e, |
| 2151 | 0x0110, 0x0112, 0x0114, 0x0116, 0x0118, 0x011a, 0x011c, 0x011e, |
| 2152 | 0x0120, 0x0122, 0x0124, 0x0126, 0x0128, 0x012a, 0x012c, 0x012e, |
| 2153 | 0x0130, 0x0132, 0x0134, 0x0136, 0x0139, 0x013b, 0x013d, 0x013f, |
| 2154 | 0x0141, 0x0143, 0x0145, 0x0147, 0x014a, 0x014c, 0x014e, 0x0150, |
| 2155 | 0x0152, 0x0154, 0x0156, 0x0158, 0x015a, 0x015c, 0x015e, 0x0160, |
| 2156 | 0x0162, 0x0164, 0x0166, 0x0168, 0x016a, 0x016c, 0x016e, 0x0170, |
| 2157 | 0x0172, 0x0174, 0x0176, 0x017b, 0x017d, 0x0184, 0x01a2, 0x01a4, |
| 2158 | 0x01a9, 0x01ac, 0x01b5, 0x01bc, 0x01c4, 0x01c7, 0x01ca, 0x01cd, |
| 2159 | 0x01cf, 0x01d1, 0x01d3, 0x01d5, 0x01d7, 0x01d9, 0x01db, 0x01de, |
| 2160 | 0x01e0, 0x01e2, 0x01e4, 0x01e6, 0x01e8, 0x01ea, 0x01ec, 0x01ee, |
| 2161 | 0x01f1, 0x01f4, 0x01fa, 0x01fc, 0x01fe, 0x0200, 0x0202, 0x0204, |
| 2162 | 0x0206, 0x0208, 0x020a, 0x020c, 0x020e, 0x0210, 0x0212, 0x0214, |
| 2163 | 0x0216, 0x0218, 0x021a, 0x021c, 0x021e, 0x0220, 0x0222, 0x0224, |
| 2164 | 0x0226, 0x0228, 0x022a, 0x022c, 0x022e, 0x0230, 0x0232, 0x0241, |
| 2165 | 0x0248, 0x024a, 0x024c, 0x024e, 0x0370, 0x0372, 0x0376, 0x037f, |
| 2166 | 0x0386, 0x038c, 0x03cf, 0x03d8, 0x03da, 0x03dc, 0x03de, 0x03e0, |
| 2167 | 0x03e2, 0x03e4, 0x03e6, 0x03e8, 0x03ea, 0x03ec, 0x03ee, 0x03f4, |
| 2168 | 0x03f7, 0x0460, 0x0462, 0x0464, 0x0466, 0x0468, 0x046a, 0x046c, |
| 2169 | 0x046e, 0x0470, 0x0472, 0x0474, 0x0476, 0x0478, 0x047a, 0x047c, |
| 2170 | 0x047e, 0x0480, 0x048a, 0x048c, 0x048e, 0x0490, 0x0492, 0x0494, |
| 2171 | 0x0496, 0x0498, 0x049a, 0x049c, 0x049e, 0x04a0, 0x04a2, 0x04a4, |
| 2172 | 0x04a6, 0x04a8, 0x04aa, 0x04ac, 0x04ae, 0x04b0, 0x04b2, 0x04b4, |
| 2173 | 0x04b6, 0x04b8, 0x04ba, 0x04bc, 0x04be, 0x04c3, 0x04c5, 0x04c7, |
| 2174 | 0x04c9, 0x04cb, 0x04cd, 0x04d0, 0x04d2, 0x04d4, 0x04d6, 0x04d8, |
| 2175 | 0x04da, 0x04dc, 0x04de, 0x04e0, 0x04e2, 0x04e4, 0x04e6, 0x04e8, |
| 2176 | 0x04ea, 0x04ec, 0x04ee, 0x04f0, 0x04f2, 0x04f4, 0x04f6, 0x04f8, |
| 2177 | 0x04fa, 0x04fc, 0x04fe, 0x0500, 0x0502, 0x0504, 0x0506, 0x0508, |
| 2178 | 0x050a, 0x050c, 0x050e, 0x0510, 0x0512, 0x0514, 0x0516, 0x0518, |
| 2179 | 0x051a, 0x051c, 0x051e, 0x0520, 0x0522, 0x0524, 0x0526, 0x0528, |
| 2180 | 0x052a, 0x052c, 0x052e, 0x10c7, 0x10cd, 0x1e00, 0x1e02, 0x1e04, |
| 2181 | 0x1e06, 0x1e08, 0x1e0a, 0x1e0c, 0x1e0e, 0x1e10, 0x1e12, 0x1e14, |
| 2182 | 0x1e16, 0x1e18, 0x1e1a, 0x1e1c, 0x1e1e, 0x1e20, 0x1e22, 0x1e24, |
| 2183 | 0x1e26, 0x1e28, 0x1e2a, 0x1e2c, 0x1e2e, 0x1e30, 0x1e32, 0x1e34, |
| 2184 | 0x1e36, 0x1e38, 0x1e3a, 0x1e3c, 0x1e3e, 0x1e40, 0x1e42, 0x1e44, |
| 2185 | 0x1e46, 0x1e48, 0x1e4a, 0x1e4c, 0x1e4e, 0x1e50, 0x1e52, 0x1e54, |
| 2186 | 0x1e56, 0x1e58, 0x1e5a, 0x1e5c, 0x1e5e, 0x1e60, 0x1e62, 0x1e64, |
| 2187 | 0x1e66, 0x1e68, 0x1e6a, 0x1e6c, 0x1e6e, 0x1e70, 0x1e72, 0x1e74, |
| 2188 | 0x1e76, 0x1e78, 0x1e7a, 0x1e7c, 0x1e7e, 0x1e80, 0x1e82, 0x1e84, |
| 2189 | 0x1e86, 0x1e88, 0x1e8a, 0x1e8c, 0x1e8e, 0x1e90, 0x1e92, 0x1e94, |
| 2190 | 0x1e9e, 0x1ea0, 0x1ea2, 0x1ea4, 0x1ea6, 0x1ea8, 0x1eaa, 0x1eac, |
| 2191 | 0x1eae, 0x1eb0, 0x1eb2, 0x1eb4, 0x1eb6, 0x1eb8, 0x1eba, 0x1ebc, |
| 2192 | 0x1ebe, 0x1ec0, 0x1ec2, 0x1ec4, 0x1ec6, 0x1ec8, 0x1eca, 0x1ecc, |
| 2193 | 0x1ece, 0x1ed0, 0x1ed2, 0x1ed4, 0x1ed6, 0x1ed8, 0x1eda, 0x1edc, |
| 2194 | 0x1ede, 0x1ee0, 0x1ee2, 0x1ee4, 0x1ee6, 0x1ee8, 0x1eea, 0x1eec, |
| 2195 | 0x1eee, 0x1ef0, 0x1ef2, 0x1ef4, 0x1ef6, 0x1ef8, 0x1efa, 0x1efc, |
| 2196 | 0x1efe, 0x1f59, 0x1f5b, 0x1f5d, 0x1f5f, 0x2102, 0x2107, 0x2115, |
| 2197 | 0x2124, 0x2126, 0x2128, 0x2145, 0x2183, 0x2c60, 0x2c67, 0x2c69, |
| 2198 | 0x2c6b, 0x2c72, 0x2c75, 0x2c82, 0x2c84, 0x2c86, 0x2c88, 0x2c8a, |
| 2199 | 0x2c8c, 0x2c8e, 0x2c90, 0x2c92, 0x2c94, 0x2c96, 0x2c98, 0x2c9a, |
| 2200 | 0x2c9c, 0x2c9e, 0x2ca0, 0x2ca2, 0x2ca4, 0x2ca6, 0x2ca8, 0x2caa, |
| 2201 | 0x2cac, 0x2cae, 0x2cb0, 0x2cb2, 0x2cb4, 0x2cb6, 0x2cb8, 0x2cba, |
| 2202 | 0x2cbc, 0x2cbe, 0x2cc0, 0x2cc2, 0x2cc4, 0x2cc6, 0x2cc8, 0x2cca, |
| 2203 | 0x2ccc, 0x2cce, 0x2cd0, 0x2cd2, 0x2cd4, 0x2cd6, 0x2cd8, 0x2cda, |
| 2204 | 0x2cdc, 0x2cde, 0x2ce0, 0x2ce2, 0x2ceb, 0x2ced, 0x2cf2, 0xa640, |
| 2205 | 0xa642, 0xa644, 0xa646, 0xa648, 0xa64a, 0xa64c, 0xa64e, 0xa650, |
| 2206 | 0xa652, 0xa654, 0xa656, 0xa658, 0xa65a, 0xa65c, 0xa65e, 0xa660, |
| 2207 | 0xa662, 0xa664, 0xa666, 0xa668, 0xa66a, 0xa66c, 0xa680, 0xa682, |
| 2208 | 0xa684, 0xa686, 0xa688, 0xa68a, 0xa68c, 0xa68e, 0xa690, 0xa692, |
| 2209 | 0xa694, 0xa696, 0xa698, 0xa69a, 0xa722, 0xa724, 0xa726, 0xa728, |
| 2210 | 0xa72a, 0xa72c, 0xa72e, 0xa732, 0xa734, 0xa736, 0xa738, 0xa73a, |
| 2211 | 0xa73c, 0xa73e, 0xa740, 0xa742, 0xa744, 0xa746, 0xa748, 0xa74a, |
| 2212 | 0xa74c, 0xa74e, 0xa750, 0xa752, 0xa754, 0xa756, 0xa758, 0xa75a, |
| 2213 | 0xa75c, 0xa75e, 0xa760, 0xa762, 0xa764, 0xa766, 0xa768, 0xa76a, |
| 2214 | 0xa76c, 0xa76e, 0xa779, 0xa77b, 0xa780, 0xa782, 0xa784, 0xa786, |
| 2215 | 0xa78b, 0xa78d, 0xa790, 0xa792, 0xa796, 0xa798, 0xa79a, 0xa79c, |
| 2216 | 0xa79e, 0xa7a0, 0xa7a2, 0xa7a4, 0xa7a6, 0xa7a8, 0xa7b6, 0xa7b8, |
| 2217 | 0x1d49c, 0x1d4a2, 0x1d546, 0x1d7ca}), |
| 2218 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00de}, {0x0178, 0x0179}, {0x0181, 0x0182}, |
| 2219 | {0x0186, 0x0187}, {0x0189, 0x018b}, {0x018e, 0x0191}, {0x0193, 0x0194}, |
| 2220 | {0x0196, 0x0198}, {0x019c, 0x019d}, {0x019f, 0x01a0}, {0x01a6, 0x01a7}, |
| 2221 | {0x01ae, 0x01af}, {0x01b1, 0x01b3}, {0x01b7, 0x01b8}, {0x01f6, 0x01f8}, |
| 2222 | {0x023a, 0x023b}, {0x023d, 0x023e}, {0x0243, 0x0246}, {0x0388, 0x038a}, |
| 2223 | {0x038e, 0x038f}, {0x0391, 0x03a1}, {0x03a3, 0x03ab}, {0x03d2, 0x03d4}, |
| 2224 | {0x03f9, 0x03fa}, {0x03fd, 0x042f}, {0x04c0, 0x04c1}, {0x0531, 0x0556}, |
| 2225 | {0x10a0, 0x10c5}, {0x13a0, 0x13f5}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, |
| 2226 | {0x1f08, 0x1f0f}, {0x1f18, 0x1f1d}, {0x1f28, 0x1f2f}, {0x1f38, 0x1f3f}, |
| 2227 | {0x1f48, 0x1f4d}, {0x1f68, 0x1f6f}, {0x1fb8, 0x1fbb}, {0x1fc8, 0x1fcb}, |
| 2228 | {0x1fd8, 0x1fdb}, {0x1fe8, 0x1fec}, {0x1ff8, 0x1ffb}, {0x210b, 0x210d}, |
| 2229 | {0x2110, 0x2112}, {0x2119, 0x211d}, {0x212a, 0x212d}, {0x2130, 0x2133}, |
| 2230 | {0x213e, 0x213f}, {0x2160, 0x216f}, {0x24b6, 0x24cf}, {0x2c00, 0x2c2e}, |
| 2231 | {0x2c62, 0x2c64}, {0x2c6d, 0x2c70}, {0x2c7e, 0x2c80}, {0xa77d, 0xa77e}, |
| 2232 | {0xa7aa, 0xa7ae}, {0xa7b0, 0xa7b4}, {0xff21, 0xff3a}, {0x10400, 0x10427}, |
| 2233 | {0x104b0, 0x104d3}, {0x10c80, 0x10cb2}, {0x118a0, 0x118bf}, {0x16e40, 0x16e5f}, |
| 2234 | {0x1d400, 0x1d419}, {0x1d434, 0x1d44d}, {0x1d468, 0x1d481}, {0x1d49e, 0x1d49f}, |
| 2235 | {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b5}, {0x1d4d0, 0x1d4e9}, |
| 2236 | {0x1d504, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, |
| 2237 | {0x1d538, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d54a, 0x1d550}, |
| 2238 | {0x1d56c, 0x1d585}, {0x1d5a0, 0x1d5b9}, {0x1d5d4, 0x1d5ed}, {0x1d608, 0x1d621}, |
| 2239 | {0x1d63c, 0x1d655}, {0x1d670, 0x1d689}, {0x1d6a8, 0x1d6c0}, {0x1d6e2, 0x1d6fa}, |
| 2240 | {0x1d71c, 0x1d734}, {0x1d756, 0x1d76e}, {0x1d790, 0x1d7a8}, {0x1e900, 0x1e921}, |
| 2241 | {0x1f130, 0x1f149}, {0x1f150, 0x1f169}, {0x1f170, 0x1f189}}), |
| 2242 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 2243 | return characterClass; |
| 2244 | } |
| 2245 | |
| 2246 | static std::unique_ptr<CharacterClass> createCharacterClass46() |
| 2247 | { |
| 2248 | // Name = Cased, number of codePoints: 4266 |
| 2249 | auto characterClass = std::make_unique<CharacterClass>( |
| 2250 | std::initializer_list<UChar32>({}), |
| 2251 | std::initializer_list<CharacterRange>({{0x41, 0x5a}, {0x61, 0x7a}}), |
| 2252 | std::initializer_list<UChar32>({0x00aa, 0x00b5, 0x00ba, 0x0345, 0x037f, 0x0386, 0x038c, 0x10c7, |
| 2253 | 0x10cd, 0x1f59, 0x1f5b, 0x1f5d, 0x1fbe, 0x2071, 0x207f, 0x2102, |
| 2254 | 0x2107, 0x2115, 0x2124, 0x2126, 0x2128, 0x2139, 0x214e, 0x2d27, |
| 2255 | 0x2d2d, 0x1d4a2, 0x1d4bb, 0x1d546}), |
| 2256 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00f6}, {0x00f8, 0x01ba}, {0x01bc, 0x01bf}, |
| 2257 | {0x01c4, 0x0293}, {0x0295, 0x02b8}, {0x02c0, 0x02c1}, {0x02e0, 0x02e4}, |
| 2258 | {0x0370, 0x0373}, {0x0376, 0x0377}, {0x037a, 0x037d}, {0x0388, 0x038a}, |
| 2259 | {0x038e, 0x03a1}, {0x03a3, 0x03f5}, {0x03f7, 0x0481}, {0x048a, 0x052f}, |
| 2260 | {0x0531, 0x0556}, {0x0560, 0x0588}, {0x10a0, 0x10c5}, {0x10d0, 0x10fa}, |
| 2261 | {0x10fd, 0x10ff}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1c80, 0x1c88}, |
| 2262 | {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, |
| 2263 | {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, |
| 2264 | {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fc2, 0x1fc4}, |
| 2265 | {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, |
| 2266 | {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2090, 0x209c}, {0x210a, 0x2113}, |
| 2267 | {0x2119, 0x211d}, {0x212a, 0x212d}, {0x212f, 0x2134}, {0x213c, 0x213f}, |
| 2268 | {0x2145, 0x2149}, {0x2160, 0x217f}, {0x2183, 0x2184}, {0x24b6, 0x24e9}, |
| 2269 | {0x2c00, 0x2c2e}, {0x2c30, 0x2c5e}, {0x2c60, 0x2ce4}, {0x2ceb, 0x2cee}, |
| 2270 | {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, {0xa640, 0xa66d}, {0xa680, 0xa69d}, |
| 2271 | {0xa722, 0xa787}, {0xa78b, 0xa78e}, {0xa790, 0xa7b9}, {0xa7f8, 0xa7fa}, |
| 2272 | {0xab30, 0xab5a}, {0xab5c, 0xab65}, {0xab70, 0xabbf}, {0xfb00, 0xfb06}, |
| 2273 | {0xfb13, 0xfb17}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0x10400, 0x1044f}, |
| 2274 | {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, |
| 2275 | {0x118a0, 0x118df}, {0x16e40, 0x16e7f}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, |
| 2276 | {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, |
| 2277 | {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, |
| 2278 | {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, |
| 2279 | {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, |
| 2280 | {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, |
| 2281 | {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, |
| 2282 | {0x1d7c4, 0x1d7cb}, {0x1e900, 0x1e943}, {0x1f130, 0x1f149}, {0x1f150, 0x1f169}, |
| 2283 | {0x1f170, 0x1f189}}), |
| 2284 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 2285 | return characterClass; |
| 2286 | } |
| 2287 | |
| 2288 | static std::unique_ptr<CharacterClass> createCharacterClass47() |
| 2289 | { |
| 2290 | // Name = Case_Ignorable, number of codePoints: 2357 |
| 2291 | auto characterClass = std::make_unique<CharacterClass>( |
| 2292 | std::initializer_list<UChar32>({0x27, 0x2e, 0x3a, 0x5e, 0x60}), |
| 2293 | std::initializer_list<CharacterRange>({}), |
| 2294 | std::initializer_list<UChar32>({0x00a8, 0x00ad, 0x00af, 0x00b4, 0x037a, 0x0387, 0x0559, 0x05bf, |
| 2295 | 0x05c7, 0x05f4, 0x061c, 0x0640, 0x0670, 0x070f, 0x0711, 0x07fa, |
| 2296 | 0x07fd, 0x093a, 0x093c, 0x094d, 0x0971, 0x0981, 0x09bc, 0x09cd, |
| 2297 | 0x09fe, 0x0a3c, 0x0a51, 0x0a75, 0x0abc, 0x0acd, 0x0b01, 0x0b3c, |
| 2298 | 0x0b3f, 0x0b4d, 0x0b56, 0x0b82, 0x0bc0, 0x0bcd, 0x0c00, 0x0c04, |
| 2299 | 0x0c81, 0x0cbc, 0x0cbf, 0x0cc6, 0x0d4d, 0x0dca, 0x0dd6, 0x0e31, |
| 2300 | 0x0eb1, 0x0ec6, 0x0f35, 0x0f37, 0x0f39, 0x0fc6, 0x1082, 0x108d, |
| 2301 | 0x109d, 0x10fc, 0x17c6, 0x17d7, 0x17dd, 0x1843, 0x18a9, 0x1932, |
| 2302 | 0x1a1b, 0x1a56, 0x1a60, 0x1a62, 0x1a7f, 0x1aa7, 0x1b34, 0x1b3c, |
| 2303 | 0x1b42, 0x1be6, 0x1bed, 0x1ced, 0x1cf4, 0x1d78, 0x1fbd, 0x2024, |
| 2304 | 0x2027, 0x2071, 0x207f, 0x2d6f, 0x2d7f, 0x2e2f, 0x3005, 0x303b, |
| 2305 | 0xa015, 0xa60c, 0xa67f, 0xa770, 0xa802, 0xa806, 0xa80b, 0xa8ff, |
| 2306 | 0xa9b3, 0xa9bc, 0xa9cf, 0xaa43, 0xaa4c, 0xaa70, 0xaa7c, 0xaab0, |
| 2307 | 0xaac1, 0xaadd, 0xaaf6, 0xabe5, 0xabe8, 0xabed, 0xfb1e, 0xfe13, |
| 2308 | 0xfe52, 0xfe55, 0xfeff, 0xff07, 0xff0e, 0xff1a, 0xff3e, 0xff40, |
| 2309 | 0xff70, 0xffe3, 0x101fd, 0x102e0, 0x10a3f, 0x11001, 0x110bd, 0x110cd, |
| 2310 | 0x11173, 0x11234, 0x1123e, 0x112df, 0x11340, 0x11446, 0x1145e, 0x114ba, |
| 2311 | 0x1163d, 0x116ab, 0x116ad, 0x116b7, 0x11a47, 0x11c3f, 0x11d3a, 0x11d47, |
| 2312 | 0x11d95, 0x11d97, 0x1da75, 0x1da84, 0xe0001}), |
| 2313 | std::initializer_list<CharacterRange>({{0x00b7, 0x00b8}, {0x02b0, 0x036f}, {0x0374, 0x0375}, {0x0384, 0x0385}, |
| 2314 | {0x0483, 0x0489}, {0x0591, 0x05bd}, {0x05c1, 0x05c2}, {0x05c4, 0x05c5}, |
| 2315 | {0x0600, 0x0605}, {0x0610, 0x061a}, {0x064b, 0x065f}, {0x06d6, 0x06dd}, |
| 2316 | {0x06df, 0x06e8}, {0x06ea, 0x06ed}, {0x0730, 0x074a}, {0x07a6, 0x07b0}, |
| 2317 | {0x07eb, 0x07f5}, {0x0816, 0x082d}, {0x0859, 0x085b}, {0x08d3, 0x0902}, |
| 2318 | {0x0941, 0x0948}, {0x0951, 0x0957}, {0x0962, 0x0963}, {0x09c1, 0x09c4}, |
| 2319 | {0x09e2, 0x09e3}, {0x0a01, 0x0a02}, {0x0a41, 0x0a42}, {0x0a47, 0x0a48}, |
| 2320 | {0x0a4b, 0x0a4d}, {0x0a70, 0x0a71}, {0x0a81, 0x0a82}, {0x0ac1, 0x0ac5}, |
| 2321 | {0x0ac7, 0x0ac8}, {0x0ae2, 0x0ae3}, {0x0afa, 0x0aff}, {0x0b41, 0x0b44}, |
| 2322 | {0x0b62, 0x0b63}, {0x0c3e, 0x0c40}, {0x0c46, 0x0c48}, {0x0c4a, 0x0c4d}, |
| 2323 | {0x0c55, 0x0c56}, {0x0c62, 0x0c63}, {0x0ccc, 0x0ccd}, {0x0ce2, 0x0ce3}, |
| 2324 | {0x0d00, 0x0d01}, {0x0d3b, 0x0d3c}, {0x0d41, 0x0d44}, {0x0d62, 0x0d63}, |
| 2325 | {0x0dd2, 0x0dd4}, {0x0e34, 0x0e3a}, {0x0e46, 0x0e4e}, {0x0eb4, 0x0eb9}, |
| 2326 | {0x0ebb, 0x0ebc}, {0x0ec8, 0x0ecd}, {0x0f18, 0x0f19}, {0x0f71, 0x0f7e}, |
| 2327 | {0x0f80, 0x0f84}, {0x0f86, 0x0f87}, {0x0f8d, 0x0f97}, {0x0f99, 0x0fbc}, |
| 2328 | {0x102d, 0x1030}, {0x1032, 0x1037}, {0x1039, 0x103a}, {0x103d, 0x103e}, |
| 2329 | {0x1058, 0x1059}, {0x105e, 0x1060}, {0x1071, 0x1074}, {0x1085, 0x1086}, |
| 2330 | {0x135d, 0x135f}, {0x1712, 0x1714}, {0x1732, 0x1734}, {0x1752, 0x1753}, |
| 2331 | {0x1772, 0x1773}, {0x17b4, 0x17b5}, {0x17b7, 0x17bd}, {0x17c9, 0x17d3}, |
| 2332 | {0x180b, 0x180e}, {0x1885, 0x1886}, {0x1920, 0x1922}, {0x1927, 0x1928}, |
| 2333 | {0x1939, 0x193b}, {0x1a17, 0x1a18}, {0x1a58, 0x1a5e}, {0x1a65, 0x1a6c}, |
| 2334 | {0x1a73, 0x1a7c}, {0x1ab0, 0x1abe}, {0x1b00, 0x1b03}, {0x1b36, 0x1b3a}, |
| 2335 | {0x1b6b, 0x1b73}, {0x1b80, 0x1b81}, {0x1ba2, 0x1ba5}, {0x1ba8, 0x1ba9}, |
| 2336 | {0x1bab, 0x1bad}, {0x1be8, 0x1be9}, {0x1bef, 0x1bf1}, {0x1c2c, 0x1c33}, |
| 2337 | {0x1c36, 0x1c37}, {0x1c78, 0x1c7d}, {0x1cd0, 0x1cd2}, {0x1cd4, 0x1ce0}, |
| 2338 | {0x1ce2, 0x1ce8}, {0x1cf8, 0x1cf9}, {0x1d2c, 0x1d6a}, {0x1d9b, 0x1df9}, |
| 2339 | {0x1dfb, 0x1dff}, {0x1fbf, 0x1fc1}, {0x1fcd, 0x1fcf}, {0x1fdd, 0x1fdf}, |
| 2340 | {0x1fed, 0x1fef}, {0x1ffd, 0x1ffe}, {0x200b, 0x200f}, {0x2018, 0x2019}, |
| 2341 | {0x202a, 0x202e}, {0x2060, 0x2064}, {0x2066, 0x206f}, {0x2090, 0x209c}, |
| 2342 | {0x20d0, 0x20f0}, {0x2c7c, 0x2c7d}, {0x2cef, 0x2cf1}, {0x2de0, 0x2dff}, |
| 2343 | {0x302a, 0x302d}, {0x3031, 0x3035}, {0x3099, 0x309e}, {0x30fc, 0x30fe}, |
| 2344 | {0xa4f8, 0xa4fd}, {0xa66f, 0xa672}, {0xa674, 0xa67d}, {0xa69c, 0xa69f}, |
| 2345 | {0xa6f0, 0xa6f1}, {0xa700, 0xa721}, {0xa788, 0xa78a}, {0xa7f8, 0xa7f9}, |
| 2346 | {0xa825, 0xa826}, {0xa8c4, 0xa8c5}, {0xa8e0, 0xa8f1}, {0xa926, 0xa92d}, |
| 2347 | {0xa947, 0xa951}, {0xa980, 0xa982}, {0xa9b6, 0xa9b9}, {0xa9e5, 0xa9e6}, |
| 2348 | {0xaa29, 0xaa2e}, {0xaa31, 0xaa32}, {0xaa35, 0xaa36}, {0xaab2, 0xaab4}, |
| 2349 | {0xaab7, 0xaab8}, {0xaabe, 0xaabf}, {0xaaec, 0xaaed}, {0xaaf3, 0xaaf4}, |
| 2350 | {0xab5b, 0xab5f}, {0xfbb2, 0xfbc1}, {0xfe00, 0xfe0f}, {0xfe20, 0xfe2f}, |
| 2351 | {0xff9e, 0xff9f}, {0xfff9, 0xfffb}, {0x10376, 0x1037a}, {0x10a01, 0x10a03}, |
| 2352 | {0x10a05, 0x10a06}, {0x10a0c, 0x10a0f}, {0x10a38, 0x10a3a}, {0x10ae5, 0x10ae6}, |
| 2353 | {0x10d24, 0x10d27}, {0x10f46, 0x10f50}, {0x11038, 0x11046}, {0x1107f, 0x11081}, |
| 2354 | {0x110b3, 0x110b6}, {0x110b9, 0x110ba}, {0x11100, 0x11102}, {0x11127, 0x1112b}, |
| 2355 | {0x1112d, 0x11134}, {0x11180, 0x11181}, {0x111b6, 0x111be}, {0x111c9, 0x111cc}, |
| 2356 | {0x1122f, 0x11231}, {0x11236, 0x11237}, {0x112e3, 0x112ea}, {0x11300, 0x11301}, |
| 2357 | {0x1133b, 0x1133c}, {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11438, 0x1143f}, |
| 2358 | {0x11442, 0x11444}, {0x114b3, 0x114b8}, {0x114bf, 0x114c0}, {0x114c2, 0x114c3}, |
| 2359 | {0x115b2, 0x115b5}, {0x115bc, 0x115bd}, {0x115bf, 0x115c0}, {0x115dc, 0x115dd}, |
| 2360 | {0x11633, 0x1163a}, {0x1163f, 0x11640}, {0x116b0, 0x116b5}, {0x1171d, 0x1171f}, |
| 2361 | {0x11722, 0x11725}, {0x11727, 0x1172b}, {0x1182f, 0x11837}, {0x11839, 0x1183a}, |
| 2362 | {0x11a01, 0x11a0a}, {0x11a33, 0x11a38}, {0x11a3b, 0x11a3e}, {0x11a51, 0x11a56}, |
| 2363 | {0x11a59, 0x11a5b}, {0x11a8a, 0x11a96}, {0x11a98, 0x11a99}, {0x11c30, 0x11c36}, |
| 2364 | {0x11c38, 0x11c3d}, {0x11c92, 0x11ca7}, {0x11caa, 0x11cb0}, {0x11cb2, 0x11cb3}, |
| 2365 | {0x11cb5, 0x11cb6}, {0x11d31, 0x11d36}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d45}, |
| 2366 | {0x11d90, 0x11d91}, {0x11ef3, 0x11ef4}, {0x16af0, 0x16af4}, {0x16b30, 0x16b36}, |
| 2367 | {0x16b40, 0x16b43}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x1bc9d, 0x1bc9e}, |
| 2368 | {0x1bca0, 0x1bca3}, {0x1d167, 0x1d169}, {0x1d173, 0x1d182}, {0x1d185, 0x1d18b}, |
| 2369 | {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, {0x1da00, 0x1da36}, {0x1da3b, 0x1da6c}, |
| 2370 | {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, |
| 2371 | {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e8d0, 0x1e8d6}, |
| 2372 | {0x1e944, 0x1e94a}, {0x1f3fb, 0x1f3ff}, {0xe0020, 0xe007f}, {0xe0100, 0xe01ef}}), |
| 2373 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 2374 | return characterClass; |
| 2375 | } |
| 2376 | |
| 2377 | static std::unique_ptr<CharacterClass> createCharacterClass48() |
| 2378 | { |
| 2379 | // Name = Changes_When_Lowercased, number of codePoints: 1383 |
| 2380 | auto characterClass = std::make_unique<CharacterClass>( |
| 2381 | std::initializer_list<UChar32>({}), |
| 2382 | std::initializer_list<CharacterRange>({{0x41, 0x5a}}), |
| 2383 | std::initializer_list<UChar32>({0x0100, 0x0102, 0x0104, 0x0106, 0x0108, 0x010a, 0x010c, 0x010e, |
| 2384 | 0x0110, 0x0112, 0x0114, 0x0116, 0x0118, 0x011a, 0x011c, 0x011e, |
| 2385 | 0x0120, 0x0122, 0x0124, 0x0126, 0x0128, 0x012a, 0x012c, 0x012e, |
| 2386 | 0x0130, 0x0132, 0x0134, 0x0136, 0x0139, 0x013b, 0x013d, 0x013f, |
| 2387 | 0x0141, 0x0143, 0x0145, 0x0147, 0x014a, 0x014c, 0x014e, 0x0150, |
| 2388 | 0x0152, 0x0154, 0x0156, 0x0158, 0x015a, 0x015c, 0x015e, 0x0160, |
| 2389 | 0x0162, 0x0164, 0x0166, 0x0168, 0x016a, 0x016c, 0x016e, 0x0170, |
| 2390 | 0x0172, 0x0174, 0x0176, 0x017b, 0x017d, 0x0184, 0x01a2, 0x01a4, |
| 2391 | 0x01a9, 0x01ac, 0x01b5, 0x01bc, 0x01cd, 0x01cf, 0x01d1, 0x01d3, |
| 2392 | 0x01d5, 0x01d7, 0x01d9, 0x01db, 0x01de, 0x01e0, 0x01e2, 0x01e4, |
| 2393 | 0x01e6, 0x01e8, 0x01ea, 0x01ec, 0x01ee, 0x01f4, 0x01fa, 0x01fc, |
| 2394 | 0x01fe, 0x0200, 0x0202, 0x0204, 0x0206, 0x0208, 0x020a, 0x020c, |
| 2395 | 0x020e, 0x0210, 0x0212, 0x0214, 0x0216, 0x0218, 0x021a, 0x021c, |
| 2396 | 0x021e, 0x0220, 0x0222, 0x0224, 0x0226, 0x0228, 0x022a, 0x022c, |
| 2397 | 0x022e, 0x0230, 0x0232, 0x0241, 0x0248, 0x024a, 0x024c, 0x024e, |
| 2398 | 0x0370, 0x0372, 0x0376, 0x037f, 0x0386, 0x038c, 0x03cf, 0x03d8, |
| 2399 | 0x03da, 0x03dc, 0x03de, 0x03e0, 0x03e2, 0x03e4, 0x03e6, 0x03e8, |
| 2400 | 0x03ea, 0x03ec, 0x03ee, 0x03f4, 0x03f7, 0x0460, 0x0462, 0x0464, |
| 2401 | 0x0466, 0x0468, 0x046a, 0x046c, 0x046e, 0x0470, 0x0472, 0x0474, |
| 2402 | 0x0476, 0x0478, 0x047a, 0x047c, 0x047e, 0x0480, 0x048a, 0x048c, |
| 2403 | 0x048e, 0x0490, 0x0492, 0x0494, 0x0496, 0x0498, 0x049a, 0x049c, |
| 2404 | 0x049e, 0x04a0, 0x04a2, 0x04a4, 0x04a6, 0x04a8, 0x04aa, 0x04ac, |
| 2405 | 0x04ae, 0x04b0, 0x04b2, 0x04b4, 0x04b6, 0x04b8, 0x04ba, 0x04bc, |
| 2406 | 0x04be, 0x04c3, 0x04c5, 0x04c7, 0x04c9, 0x04cb, 0x04cd, 0x04d0, |
| 2407 | 0x04d2, 0x04d4, 0x04d6, 0x04d8, 0x04da, 0x04dc, 0x04de, 0x04e0, |
| 2408 | 0x04e2, 0x04e4, 0x04e6, 0x04e8, 0x04ea, 0x04ec, 0x04ee, 0x04f0, |
| 2409 | 0x04f2, 0x04f4, 0x04f6, 0x04f8, 0x04fa, 0x04fc, 0x04fe, 0x0500, |
| 2410 | 0x0502, 0x0504, 0x0506, 0x0508, 0x050a, 0x050c, 0x050e, 0x0510, |
| 2411 | 0x0512, 0x0514, 0x0516, 0x0518, 0x051a, 0x051c, 0x051e, 0x0520, |
| 2412 | 0x0522, 0x0524, 0x0526, 0x0528, 0x052a, 0x052c, 0x052e, 0x10c7, |
| 2413 | 0x10cd, 0x1e00, 0x1e02, 0x1e04, 0x1e06, 0x1e08, 0x1e0a, 0x1e0c, |
| 2414 | 0x1e0e, 0x1e10, 0x1e12, 0x1e14, 0x1e16, 0x1e18, 0x1e1a, 0x1e1c, |
| 2415 | 0x1e1e, 0x1e20, 0x1e22, 0x1e24, 0x1e26, 0x1e28, 0x1e2a, 0x1e2c, |
| 2416 | 0x1e2e, 0x1e30, 0x1e32, 0x1e34, 0x1e36, 0x1e38, 0x1e3a, 0x1e3c, |
| 2417 | 0x1e3e, 0x1e40, 0x1e42, 0x1e44, 0x1e46, 0x1e48, 0x1e4a, 0x1e4c, |
| 2418 | 0x1e4e, 0x1e50, 0x1e52, 0x1e54, 0x1e56, 0x1e58, 0x1e5a, 0x1e5c, |
| 2419 | 0x1e5e, 0x1e60, 0x1e62, 0x1e64, 0x1e66, 0x1e68, 0x1e6a, 0x1e6c, |
| 2420 | 0x1e6e, 0x1e70, 0x1e72, 0x1e74, 0x1e76, 0x1e78, 0x1e7a, 0x1e7c, |
| 2421 | 0x1e7e, 0x1e80, 0x1e82, 0x1e84, 0x1e86, 0x1e88, 0x1e8a, 0x1e8c, |
| 2422 | 0x1e8e, 0x1e90, 0x1e92, 0x1e94, 0x1e9e, 0x1ea0, 0x1ea2, 0x1ea4, |
| 2423 | 0x1ea6, 0x1ea8, 0x1eaa, 0x1eac, 0x1eae, 0x1eb0, 0x1eb2, 0x1eb4, |
| 2424 | 0x1eb6, 0x1eb8, 0x1eba, 0x1ebc, 0x1ebe, 0x1ec0, 0x1ec2, 0x1ec4, |
| 2425 | 0x1ec6, 0x1ec8, 0x1eca, 0x1ecc, 0x1ece, 0x1ed0, 0x1ed2, 0x1ed4, |
| 2426 | 0x1ed6, 0x1ed8, 0x1eda, 0x1edc, 0x1ede, 0x1ee0, 0x1ee2, 0x1ee4, |
| 2427 | 0x1ee6, 0x1ee8, 0x1eea, 0x1eec, 0x1eee, 0x1ef0, 0x1ef2, 0x1ef4, |
| 2428 | 0x1ef6, 0x1ef8, 0x1efa, 0x1efc, 0x1efe, 0x1f59, 0x1f5b, 0x1f5d, |
| 2429 | 0x1f5f, 0x2126, 0x2132, 0x2183, 0x2c60, 0x2c67, 0x2c69, 0x2c6b, |
| 2430 | 0x2c72, 0x2c75, 0x2c82, 0x2c84, 0x2c86, 0x2c88, 0x2c8a, 0x2c8c, |
| 2431 | 0x2c8e, 0x2c90, 0x2c92, 0x2c94, 0x2c96, 0x2c98, 0x2c9a, 0x2c9c, |
| 2432 | 0x2c9e, 0x2ca0, 0x2ca2, 0x2ca4, 0x2ca6, 0x2ca8, 0x2caa, 0x2cac, |
| 2433 | 0x2cae, 0x2cb0, 0x2cb2, 0x2cb4, 0x2cb6, 0x2cb8, 0x2cba, 0x2cbc, |
| 2434 | 0x2cbe, 0x2cc0, 0x2cc2, 0x2cc4, 0x2cc6, 0x2cc8, 0x2cca, 0x2ccc, |
| 2435 | 0x2cce, 0x2cd0, 0x2cd2, 0x2cd4, 0x2cd6, 0x2cd8, 0x2cda, 0x2cdc, |
| 2436 | 0x2cde, 0x2ce0, 0x2ce2, 0x2ceb, 0x2ced, 0x2cf2, 0xa640, 0xa642, |
| 2437 | 0xa644, 0xa646, 0xa648, 0xa64a, 0xa64c, 0xa64e, 0xa650, 0xa652, |
| 2438 | 0xa654, 0xa656, 0xa658, 0xa65a, 0xa65c, 0xa65e, 0xa660, 0xa662, |
| 2439 | 0xa664, 0xa666, 0xa668, 0xa66a, 0xa66c, 0xa680, 0xa682, 0xa684, |
| 2440 | 0xa686, 0xa688, 0xa68a, 0xa68c, 0xa68e, 0xa690, 0xa692, 0xa694, |
| 2441 | 0xa696, 0xa698, 0xa69a, 0xa722, 0xa724, 0xa726, 0xa728, 0xa72a, |
| 2442 | 0xa72c, 0xa72e, 0xa732, 0xa734, 0xa736, 0xa738, 0xa73a, 0xa73c, |
| 2443 | 0xa73e, 0xa740, 0xa742, 0xa744, 0xa746, 0xa748, 0xa74a, 0xa74c, |
| 2444 | 0xa74e, 0xa750, 0xa752, 0xa754, 0xa756, 0xa758, 0xa75a, 0xa75c, |
| 2445 | 0xa75e, 0xa760, 0xa762, 0xa764, 0xa766, 0xa768, 0xa76a, 0xa76c, |
| 2446 | 0xa76e, 0xa779, 0xa77b, 0xa780, 0xa782, 0xa784, 0xa786, 0xa78b, |
| 2447 | 0xa78d, 0xa790, 0xa792, 0xa796, 0xa798, 0xa79a, 0xa79c, 0xa79e, |
| 2448 | 0xa7a0, 0xa7a2, 0xa7a4, 0xa7a6, 0xa7a8, 0xa7b6, 0xa7b8}), |
| 2449 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00de}, {0x0178, 0x0179}, {0x0181, 0x0182}, |
| 2450 | {0x0186, 0x0187}, {0x0189, 0x018b}, {0x018e, 0x0191}, {0x0193, 0x0194}, |
| 2451 | {0x0196, 0x0198}, {0x019c, 0x019d}, {0x019f, 0x01a0}, {0x01a6, 0x01a7}, |
| 2452 | {0x01ae, 0x01af}, {0x01b1, 0x01b3}, {0x01b7, 0x01b8}, {0x01c4, 0x01c5}, |
| 2453 | {0x01c7, 0x01c8}, {0x01ca, 0x01cb}, {0x01f1, 0x01f2}, {0x01f6, 0x01f8}, |
| 2454 | {0x023a, 0x023b}, {0x023d, 0x023e}, {0x0243, 0x0246}, {0x0388, 0x038a}, |
| 2455 | {0x038e, 0x038f}, {0x0391, 0x03a1}, {0x03a3, 0x03ab}, {0x03f9, 0x03fa}, |
| 2456 | {0x03fd, 0x042f}, {0x04c0, 0x04c1}, {0x0531, 0x0556}, {0x10a0, 0x10c5}, |
| 2457 | {0x13a0, 0x13f5}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1f08, 0x1f0f}, |
| 2458 | {0x1f18, 0x1f1d}, {0x1f28, 0x1f2f}, {0x1f38, 0x1f3f}, {0x1f48, 0x1f4d}, |
| 2459 | {0x1f68, 0x1f6f}, {0x1f88, 0x1f8f}, {0x1f98, 0x1f9f}, {0x1fa8, 0x1faf}, |
| 2460 | {0x1fb8, 0x1fbc}, {0x1fc8, 0x1fcc}, {0x1fd8, 0x1fdb}, {0x1fe8, 0x1fec}, |
| 2461 | {0x1ff8, 0x1ffc}, {0x212a, 0x212b}, {0x2160, 0x216f}, {0x24b6, 0x24cf}, |
| 2462 | {0x2c00, 0x2c2e}, {0x2c62, 0x2c64}, {0x2c6d, 0x2c70}, {0x2c7e, 0x2c80}, |
| 2463 | {0xa77d, 0xa77e}, {0xa7aa, 0xa7ae}, {0xa7b0, 0xa7b4}, {0xff21, 0xff3a}, |
| 2464 | {0x10400, 0x10427}, {0x104b0, 0x104d3}, {0x10c80, 0x10cb2}, {0x118a0, 0x118bf}, |
| 2465 | {0x16e40, 0x16e5f}, {0x1e900, 0x1e921}}), |
| 2466 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 2467 | return characterClass; |
| 2468 | } |
| 2469 | |
| 2470 | static std::unique_ptr<CharacterClass> createCharacterClass49() |
| 2471 | { |
| 2472 | // Name = Changes_When_Uppercased, number of codePoints: 1475 |
| 2473 | auto characterClass = std::make_unique<CharacterClass>( |
| 2474 | std::initializer_list<UChar32>({}), |
| 2475 | std::initializer_list<CharacterRange>({{0x61, 0x7a}}), |
| 2476 | std::initializer_list<UChar32>({0x00b5, 0x0101, 0x0103, 0x0105, 0x0107, 0x0109, 0x010b, 0x010d, |
| 2477 | 0x010f, 0x0111, 0x0113, 0x0115, 0x0117, 0x0119, 0x011b, 0x011d, |
| 2478 | 0x011f, 0x0121, 0x0123, 0x0125, 0x0127, 0x0129, 0x012b, 0x012d, |
| 2479 | 0x012f, 0x0131, 0x0133, 0x0135, 0x0137, 0x013a, 0x013c, 0x013e, |
| 2480 | 0x0140, 0x0142, 0x0144, 0x0146, 0x014b, 0x014d, 0x014f, 0x0151, |
| 2481 | 0x0153, 0x0155, 0x0157, 0x0159, 0x015b, 0x015d, 0x015f, 0x0161, |
| 2482 | 0x0163, 0x0165, 0x0167, 0x0169, 0x016b, 0x016d, 0x016f, 0x0171, |
| 2483 | 0x0173, 0x0175, 0x0177, 0x017a, 0x017c, 0x0183, 0x0185, 0x0188, |
| 2484 | 0x018c, 0x0192, 0x0195, 0x019e, 0x01a1, 0x01a3, 0x01a5, 0x01a8, |
| 2485 | 0x01ad, 0x01b0, 0x01b4, 0x01b6, 0x01b9, 0x01bd, 0x01bf, 0x01ce, |
| 2486 | 0x01d0, 0x01d2, 0x01d4, 0x01d6, 0x01d8, 0x01da, 0x01df, 0x01e1, |
| 2487 | 0x01e3, 0x01e5, 0x01e7, 0x01e9, 0x01eb, 0x01ed, 0x01f5, 0x01f9, |
| 2488 | 0x01fb, 0x01fd, 0x01ff, 0x0201, 0x0203, 0x0205, 0x0207, 0x0209, |
| 2489 | 0x020b, 0x020d, 0x020f, 0x0211, 0x0213, 0x0215, 0x0217, 0x0219, |
| 2490 | 0x021b, 0x021d, 0x021f, 0x0223, 0x0225, 0x0227, 0x0229, 0x022b, |
| 2491 | 0x022d, 0x022f, 0x0231, 0x0233, 0x023c, 0x0242, 0x0247, 0x0249, |
| 2492 | 0x024b, 0x024d, 0x0259, 0x0263, 0x026f, 0x0275, 0x027d, 0x0280, |
| 2493 | 0x0283, 0x0292, 0x0345, 0x0371, 0x0373, 0x0377, 0x0390, 0x03d9, |
| 2494 | 0x03db, 0x03dd, 0x03df, 0x03e1, 0x03e3, 0x03e5, 0x03e7, 0x03e9, |
| 2495 | 0x03eb, 0x03ed, 0x03f5, 0x03f8, 0x03fb, 0x0461, 0x0463, 0x0465, |
| 2496 | 0x0467, 0x0469, 0x046b, 0x046d, 0x046f, 0x0471, 0x0473, 0x0475, |
| 2497 | 0x0477, 0x0479, 0x047b, 0x047d, 0x047f, 0x0481, 0x048b, 0x048d, |
| 2498 | 0x048f, 0x0491, 0x0493, 0x0495, 0x0497, 0x0499, 0x049b, 0x049d, |
| 2499 | 0x049f, 0x04a1, 0x04a3, 0x04a5, 0x04a7, 0x04a9, 0x04ab, 0x04ad, |
| 2500 | 0x04af, 0x04b1, 0x04b3, 0x04b5, 0x04b7, 0x04b9, 0x04bb, 0x04bd, |
| 2501 | 0x04bf, 0x04c2, 0x04c4, 0x04c6, 0x04c8, 0x04ca, 0x04cc, 0x04d1, |
| 2502 | 0x04d3, 0x04d5, 0x04d7, 0x04d9, 0x04db, 0x04dd, 0x04df, 0x04e1, |
| 2503 | 0x04e3, 0x04e5, 0x04e7, 0x04e9, 0x04eb, 0x04ed, 0x04ef, 0x04f1, |
| 2504 | 0x04f3, 0x04f5, 0x04f7, 0x04f9, 0x04fb, 0x04fd, 0x04ff, 0x0501, |
| 2505 | 0x0503, 0x0505, 0x0507, 0x0509, 0x050b, 0x050d, 0x050f, 0x0511, |
| 2506 | 0x0513, 0x0515, 0x0517, 0x0519, 0x051b, 0x051d, 0x051f, 0x0521, |
| 2507 | 0x0523, 0x0525, 0x0527, 0x0529, 0x052b, 0x052d, 0x052f, 0x1d79, |
| 2508 | 0x1d7d, 0x1e01, 0x1e03, 0x1e05, 0x1e07, 0x1e09, 0x1e0b, 0x1e0d, |
| 2509 | 0x1e0f, 0x1e11, 0x1e13, 0x1e15, 0x1e17, 0x1e19, 0x1e1b, 0x1e1d, |
| 2510 | 0x1e1f, 0x1e21, 0x1e23, 0x1e25, 0x1e27, 0x1e29, 0x1e2b, 0x1e2d, |
| 2511 | 0x1e2f, 0x1e31, 0x1e33, 0x1e35, 0x1e37, 0x1e39, 0x1e3b, 0x1e3d, |
| 2512 | 0x1e3f, 0x1e41, 0x1e43, 0x1e45, 0x1e47, 0x1e49, 0x1e4b, 0x1e4d, |
| 2513 | 0x1e4f, 0x1e51, 0x1e53, 0x1e55, 0x1e57, 0x1e59, 0x1e5b, 0x1e5d, |
| 2514 | 0x1e5f, 0x1e61, 0x1e63, 0x1e65, 0x1e67, 0x1e69, 0x1e6b, 0x1e6d, |
| 2515 | 0x1e6f, 0x1e71, 0x1e73, 0x1e75, 0x1e77, 0x1e79, 0x1e7b, 0x1e7d, |
| 2516 | 0x1e7f, 0x1e81, 0x1e83, 0x1e85, 0x1e87, 0x1e89, 0x1e8b, 0x1e8d, |
| 2517 | 0x1e8f, 0x1e91, 0x1e93, 0x1ea1, 0x1ea3, 0x1ea5, 0x1ea7, 0x1ea9, |
| 2518 | 0x1eab, 0x1ead, 0x1eaf, 0x1eb1, 0x1eb3, 0x1eb5, 0x1eb7, 0x1eb9, |
| 2519 | 0x1ebb, 0x1ebd, 0x1ebf, 0x1ec1, 0x1ec3, 0x1ec5, 0x1ec7, 0x1ec9, |
| 2520 | 0x1ecb, 0x1ecd, 0x1ecf, 0x1ed1, 0x1ed3, 0x1ed5, 0x1ed7, 0x1ed9, |
| 2521 | 0x1edb, 0x1edd, 0x1edf, 0x1ee1, 0x1ee3, 0x1ee5, 0x1ee7, 0x1ee9, |
| 2522 | 0x1eeb, 0x1eed, 0x1eef, 0x1ef1, 0x1ef3, 0x1ef5, 0x1ef7, 0x1ef9, |
| 2523 | 0x1efb, 0x1efd, 0x1fbc, 0x1fbe, 0x1fcc, 0x1ffc, 0x214e, 0x2184, |
| 2524 | 0x2c61, 0x2c68, 0x2c6a, 0x2c6c, 0x2c73, 0x2c76, 0x2c81, 0x2c83, |
| 2525 | 0x2c85, 0x2c87, 0x2c89, 0x2c8b, 0x2c8d, 0x2c8f, 0x2c91, 0x2c93, |
| 2526 | 0x2c95, 0x2c97, 0x2c99, 0x2c9b, 0x2c9d, 0x2c9f, 0x2ca1, 0x2ca3, |
| 2527 | 0x2ca5, 0x2ca7, 0x2ca9, 0x2cab, 0x2cad, 0x2caf, 0x2cb1, 0x2cb3, |
| 2528 | 0x2cb5, 0x2cb7, 0x2cb9, 0x2cbb, 0x2cbd, 0x2cbf, 0x2cc1, 0x2cc3, |
| 2529 | 0x2cc5, 0x2cc7, 0x2cc9, 0x2ccb, 0x2ccd, 0x2ccf, 0x2cd1, 0x2cd3, |
| 2530 | 0x2cd5, 0x2cd7, 0x2cd9, 0x2cdb, 0x2cdd, 0x2cdf, 0x2ce1, 0x2ce3, |
| 2531 | 0x2cec, 0x2cee, 0x2cf3, 0x2d27, 0x2d2d, 0xa641, 0xa643, 0xa645, |
| 2532 | 0xa647, 0xa649, 0xa64b, 0xa64d, 0xa64f, 0xa651, 0xa653, 0xa655, |
| 2533 | 0xa657, 0xa659, 0xa65b, 0xa65d, 0xa65f, 0xa661, 0xa663, 0xa665, |
| 2534 | 0xa667, 0xa669, 0xa66b, 0xa66d, 0xa681, 0xa683, 0xa685, 0xa687, |
| 2535 | 0xa689, 0xa68b, 0xa68d, 0xa68f, 0xa691, 0xa693, 0xa695, 0xa697, |
| 2536 | 0xa699, 0xa69b, 0xa723, 0xa725, 0xa727, 0xa729, 0xa72b, 0xa72d, |
| 2537 | 0xa72f, 0xa733, 0xa735, 0xa737, 0xa739, 0xa73b, 0xa73d, 0xa73f, |
| 2538 | 0xa741, 0xa743, 0xa745, 0xa747, 0xa749, 0xa74b, 0xa74d, 0xa74f, |
| 2539 | 0xa751, 0xa753, 0xa755, 0xa757, 0xa759, 0xa75b, 0xa75d, 0xa75f, |
| 2540 | 0xa761, 0xa763, 0xa765, 0xa767, 0xa769, 0xa76b, 0xa76d, 0xa76f, |
| 2541 | 0xa77a, 0xa77c, 0xa77f, 0xa781, 0xa783, 0xa785, 0xa787, 0xa78c, |
| 2542 | 0xa791, 0xa793, 0xa797, 0xa799, 0xa79b, 0xa79d, 0xa79f, 0xa7a1, |
| 2543 | 0xa7a3, 0xa7a5, 0xa7a7, 0xa7a9, 0xa7b5, 0xa7b7, 0xa7b9, 0xab53}), |
| 2544 | std::initializer_list<CharacterRange>({{0x00df, 0x00f6}, {0x00f8, 0x00ff}, {0x0148, 0x0149}, {0x017e, 0x0180}, |
| 2545 | {0x0199, 0x019a}, {0x01c5, 0x01c6}, {0x01c8, 0x01c9}, {0x01cb, 0x01cc}, |
| 2546 | {0x01dc, 0x01dd}, {0x01ef, 0x01f0}, {0x01f2, 0x01f3}, {0x023f, 0x0240}, |
| 2547 | {0x024f, 0x0254}, {0x0256, 0x0257}, {0x025b, 0x025c}, {0x0260, 0x0261}, |
| 2548 | {0x0265, 0x0266}, {0x0268, 0x026c}, {0x0271, 0x0272}, {0x0287, 0x028c}, |
| 2549 | {0x029d, 0x029e}, {0x037b, 0x037d}, {0x03ac, 0x03ce}, {0x03d0, 0x03d1}, |
| 2550 | {0x03d5, 0x03d7}, {0x03ef, 0x03f3}, {0x0430, 0x045f}, {0x04ce, 0x04cf}, |
| 2551 | {0x0561, 0x0587}, {0x10d0, 0x10fa}, {0x10fd, 0x10ff}, {0x13f8, 0x13fd}, |
| 2552 | {0x1c80, 0x1c88}, {0x1e95, 0x1e9b}, {0x1eff, 0x1f07}, {0x1f10, 0x1f15}, |
| 2553 | {0x1f20, 0x1f27}, {0x1f30, 0x1f37}, {0x1f40, 0x1f45}, {0x1f50, 0x1f57}, |
| 2554 | {0x1f60, 0x1f67}, {0x1f70, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fb7}, |
| 2555 | {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fc7}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fd7}, |
| 2556 | {0x1fe0, 0x1fe7}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ff7}, {0x2170, 0x217f}, |
| 2557 | {0x24d0, 0x24e9}, {0x2c30, 0x2c5e}, {0x2c65, 0x2c66}, {0x2d00, 0x2d25}, |
| 2558 | {0xab70, 0xabbf}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xff41, 0xff5a}, |
| 2559 | {0x10428, 0x1044f}, {0x104d8, 0x104fb}, {0x10cc0, 0x10cf2}, {0x118c0, 0x118df}, |
| 2560 | {0x16e60, 0x16e7f}, {0x1e922, 0x1e943}}), |
| 2561 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 2562 | return characterClass; |
| 2563 | } |
| 2564 | |
| 2565 | static std::unique_ptr<CharacterClass> createCharacterClass50() |
| 2566 | { |
| 2567 | // Name = Changes_When_Titlecased, number of codePoints: 1402 |
| 2568 | auto characterClass = std::make_unique<CharacterClass>( |
| 2569 | std::initializer_list<UChar32>({}), |
| 2570 | std::initializer_list<CharacterRange>({{0x61, 0x7a}}), |
| 2571 | std::initializer_list<UChar32>({0x00b5, 0x0101, 0x0103, 0x0105, 0x0107, 0x0109, 0x010b, 0x010d, |
| 2572 | 0x010f, 0x0111, 0x0113, 0x0115, 0x0117, 0x0119, 0x011b, 0x011d, |
| 2573 | 0x011f, 0x0121, 0x0123, 0x0125, 0x0127, 0x0129, 0x012b, 0x012d, |
| 2574 | 0x012f, 0x0131, 0x0133, 0x0135, 0x0137, 0x013a, 0x013c, 0x013e, |
| 2575 | 0x0140, 0x0142, 0x0144, 0x0146, 0x014b, 0x014d, 0x014f, 0x0151, |
| 2576 | 0x0153, 0x0155, 0x0157, 0x0159, 0x015b, 0x015d, 0x015f, 0x0161, |
| 2577 | 0x0163, 0x0165, 0x0167, 0x0169, 0x016b, 0x016d, 0x016f, 0x0171, |
| 2578 | 0x0173, 0x0175, 0x0177, 0x017a, 0x017c, 0x0183, 0x0185, 0x0188, |
| 2579 | 0x018c, 0x0192, 0x0195, 0x019e, 0x01a1, 0x01a3, 0x01a5, 0x01a8, |
| 2580 | 0x01ad, 0x01b0, 0x01b4, 0x01b6, 0x01b9, 0x01bd, 0x01bf, 0x01c4, |
| 2581 | 0x01cc, 0x01ce, 0x01d0, 0x01d2, 0x01d4, 0x01d6, 0x01d8, 0x01da, |
| 2582 | 0x01df, 0x01e1, 0x01e3, 0x01e5, 0x01e7, 0x01e9, 0x01eb, 0x01ed, |
| 2583 | 0x01f3, 0x01f5, 0x01f9, 0x01fb, 0x01fd, 0x01ff, 0x0201, 0x0203, |
| 2584 | 0x0205, 0x0207, 0x0209, 0x020b, 0x020d, 0x020f, 0x0211, 0x0213, |
| 2585 | 0x0215, 0x0217, 0x0219, 0x021b, 0x021d, 0x021f, 0x0223, 0x0225, |
| 2586 | 0x0227, 0x0229, 0x022b, 0x022d, 0x022f, 0x0231, 0x0233, 0x023c, |
| 2587 | 0x0242, 0x0247, 0x0249, 0x024b, 0x024d, 0x0259, 0x0263, 0x026f, |
| 2588 | 0x0275, 0x027d, 0x0280, 0x0283, 0x0292, 0x0345, 0x0371, 0x0373, |
| 2589 | 0x0377, 0x0390, 0x03d9, 0x03db, 0x03dd, 0x03df, 0x03e1, 0x03e3, |
| 2590 | 0x03e5, 0x03e7, 0x03e9, 0x03eb, 0x03ed, 0x03f5, 0x03f8, 0x03fb, |
| 2591 | 0x0461, 0x0463, 0x0465, 0x0467, 0x0469, 0x046b, 0x046d, 0x046f, |
| 2592 | 0x0471, 0x0473, 0x0475, 0x0477, 0x0479, 0x047b, 0x047d, 0x047f, |
| 2593 | 0x0481, 0x048b, 0x048d, 0x048f, 0x0491, 0x0493, 0x0495, 0x0497, |
| 2594 | 0x0499, 0x049b, 0x049d, 0x049f, 0x04a1, 0x04a3, 0x04a5, 0x04a7, |
| 2595 | 0x04a9, 0x04ab, 0x04ad, 0x04af, 0x04b1, 0x04b3, 0x04b5, 0x04b7, |
| 2596 | 0x04b9, 0x04bb, 0x04bd, 0x04bf, 0x04c2, 0x04c4, 0x04c6, 0x04c8, |
| 2597 | 0x04ca, 0x04cc, 0x04d1, 0x04d3, 0x04d5, 0x04d7, 0x04d9, 0x04db, |
| 2598 | 0x04dd, 0x04df, 0x04e1, 0x04e3, 0x04e5, 0x04e7, 0x04e9, 0x04eb, |
| 2599 | 0x04ed, 0x04ef, 0x04f1, 0x04f3, 0x04f5, 0x04f7, 0x04f9, 0x04fb, |
| 2600 | 0x04fd, 0x04ff, 0x0501, 0x0503, 0x0505, 0x0507, 0x0509, 0x050b, |
| 2601 | 0x050d, 0x050f, 0x0511, 0x0513, 0x0515, 0x0517, 0x0519, 0x051b, |
| 2602 | 0x051d, 0x051f, 0x0521, 0x0523, 0x0525, 0x0527, 0x0529, 0x052b, |
| 2603 | 0x052d, 0x052f, 0x1d79, 0x1d7d, 0x1e01, 0x1e03, 0x1e05, 0x1e07, |
| 2604 | 0x1e09, 0x1e0b, 0x1e0d, 0x1e0f, 0x1e11, 0x1e13, 0x1e15, 0x1e17, |
| 2605 | 0x1e19, 0x1e1b, 0x1e1d, 0x1e1f, 0x1e21, 0x1e23, 0x1e25, 0x1e27, |
| 2606 | 0x1e29, 0x1e2b, 0x1e2d, 0x1e2f, 0x1e31, 0x1e33, 0x1e35, 0x1e37, |
| 2607 | 0x1e39, 0x1e3b, 0x1e3d, 0x1e3f, 0x1e41, 0x1e43, 0x1e45, 0x1e47, |
| 2608 | 0x1e49, 0x1e4b, 0x1e4d, 0x1e4f, 0x1e51, 0x1e53, 0x1e55, 0x1e57, |
| 2609 | 0x1e59, 0x1e5b, 0x1e5d, 0x1e5f, 0x1e61, 0x1e63, 0x1e65, 0x1e67, |
| 2610 | 0x1e69, 0x1e6b, 0x1e6d, 0x1e6f, 0x1e71, 0x1e73, 0x1e75, 0x1e77, |
| 2611 | 0x1e79, 0x1e7b, 0x1e7d, 0x1e7f, 0x1e81, 0x1e83, 0x1e85, 0x1e87, |
| 2612 | 0x1e89, 0x1e8b, 0x1e8d, 0x1e8f, 0x1e91, 0x1e93, 0x1ea1, 0x1ea3, |
| 2613 | 0x1ea5, 0x1ea7, 0x1ea9, 0x1eab, 0x1ead, 0x1eaf, 0x1eb1, 0x1eb3, |
| 2614 | 0x1eb5, 0x1eb7, 0x1eb9, 0x1ebb, 0x1ebd, 0x1ebf, 0x1ec1, 0x1ec3, |
| 2615 | 0x1ec5, 0x1ec7, 0x1ec9, 0x1ecb, 0x1ecd, 0x1ecf, 0x1ed1, 0x1ed3, |
| 2616 | 0x1ed5, 0x1ed7, 0x1ed9, 0x1edb, 0x1edd, 0x1edf, 0x1ee1, 0x1ee3, |
| 2617 | 0x1ee5, 0x1ee7, 0x1ee9, 0x1eeb, 0x1eed, 0x1eef, 0x1ef1, 0x1ef3, |
| 2618 | 0x1ef5, 0x1ef7, 0x1ef9, 0x1efb, 0x1efd, 0x1fbe, 0x214e, 0x2184, |
| 2619 | 0x2c61, 0x2c68, 0x2c6a, 0x2c6c, 0x2c73, 0x2c76, 0x2c81, 0x2c83, |
| 2620 | 0x2c85, 0x2c87, 0x2c89, 0x2c8b, 0x2c8d, 0x2c8f, 0x2c91, 0x2c93, |
| 2621 | 0x2c95, 0x2c97, 0x2c99, 0x2c9b, 0x2c9d, 0x2c9f, 0x2ca1, 0x2ca3, |
| 2622 | 0x2ca5, 0x2ca7, 0x2ca9, 0x2cab, 0x2cad, 0x2caf, 0x2cb1, 0x2cb3, |
| 2623 | 0x2cb5, 0x2cb7, 0x2cb9, 0x2cbb, 0x2cbd, 0x2cbf, 0x2cc1, 0x2cc3, |
| 2624 | 0x2cc5, 0x2cc7, 0x2cc9, 0x2ccb, 0x2ccd, 0x2ccf, 0x2cd1, 0x2cd3, |
| 2625 | 0x2cd5, 0x2cd7, 0x2cd9, 0x2cdb, 0x2cdd, 0x2cdf, 0x2ce1, 0x2ce3, |
| 2626 | 0x2cec, 0x2cee, 0x2cf3, 0x2d27, 0x2d2d, 0xa641, 0xa643, 0xa645, |
| 2627 | 0xa647, 0xa649, 0xa64b, 0xa64d, 0xa64f, 0xa651, 0xa653, 0xa655, |
| 2628 | 0xa657, 0xa659, 0xa65b, 0xa65d, 0xa65f, 0xa661, 0xa663, 0xa665, |
| 2629 | 0xa667, 0xa669, 0xa66b, 0xa66d, 0xa681, 0xa683, 0xa685, 0xa687, |
| 2630 | 0xa689, 0xa68b, 0xa68d, 0xa68f, 0xa691, 0xa693, 0xa695, 0xa697, |
| 2631 | 0xa699, 0xa69b, 0xa723, 0xa725, 0xa727, 0xa729, 0xa72b, 0xa72d, |
| 2632 | 0xa72f, 0xa733, 0xa735, 0xa737, 0xa739, 0xa73b, 0xa73d, 0xa73f, |
| 2633 | 0xa741, 0xa743, 0xa745, 0xa747, 0xa749, 0xa74b, 0xa74d, 0xa74f, |
| 2634 | 0xa751, 0xa753, 0xa755, 0xa757, 0xa759, 0xa75b, 0xa75d, 0xa75f, |
| 2635 | 0xa761, 0xa763, 0xa765, 0xa767, 0xa769, 0xa76b, 0xa76d, 0xa76f, |
| 2636 | 0xa77a, 0xa77c, 0xa77f, 0xa781, 0xa783, 0xa785, 0xa787, 0xa78c, |
| 2637 | 0xa791, 0xa793, 0xa797, 0xa799, 0xa79b, 0xa79d, 0xa79f, 0xa7a1, |
| 2638 | 0xa7a3, 0xa7a5, 0xa7a7, 0xa7a9, 0xa7b5, 0xa7b7, 0xa7b9, 0xab53}), |
| 2639 | std::initializer_list<CharacterRange>({{0x00df, 0x00f6}, {0x00f8, 0x00ff}, {0x0148, 0x0149}, {0x017e, 0x0180}, |
| 2640 | {0x0199, 0x019a}, {0x01c6, 0x01c7}, {0x01c9, 0x01ca}, {0x01dc, 0x01dd}, |
| 2641 | {0x01ef, 0x01f1}, {0x023f, 0x0240}, {0x024f, 0x0254}, {0x0256, 0x0257}, |
| 2642 | {0x025b, 0x025c}, {0x0260, 0x0261}, {0x0265, 0x0266}, {0x0268, 0x026c}, |
| 2643 | {0x0271, 0x0272}, {0x0287, 0x028c}, {0x029d, 0x029e}, {0x037b, 0x037d}, |
| 2644 | {0x03ac, 0x03ce}, {0x03d0, 0x03d1}, {0x03d5, 0x03d7}, {0x03ef, 0x03f3}, |
| 2645 | {0x0430, 0x045f}, {0x04ce, 0x04cf}, {0x0561, 0x0587}, {0x13f8, 0x13fd}, |
| 2646 | {0x1c80, 0x1c88}, {0x1e95, 0x1e9b}, {0x1eff, 0x1f07}, {0x1f10, 0x1f15}, |
| 2647 | {0x1f20, 0x1f27}, {0x1f30, 0x1f37}, {0x1f40, 0x1f45}, {0x1f50, 0x1f57}, |
| 2648 | {0x1f60, 0x1f67}, {0x1f70, 0x1f7d}, {0x1f80, 0x1f87}, {0x1f90, 0x1f97}, |
| 2649 | {0x1fa0, 0x1fa7}, {0x1fb0, 0x1fb4}, {0x1fb6, 0x1fb7}, {0x1fc2, 0x1fc4}, |
| 2650 | {0x1fc6, 0x1fc7}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fd7}, {0x1fe0, 0x1fe7}, |
| 2651 | {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ff7}, {0x2170, 0x217f}, {0x24d0, 0x24e9}, |
| 2652 | {0x2c30, 0x2c5e}, {0x2c65, 0x2c66}, {0x2d00, 0x2d25}, {0xab70, 0xabbf}, |
| 2653 | {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xff41, 0xff5a}, {0x10428, 0x1044f}, |
| 2654 | {0x104d8, 0x104fb}, {0x10cc0, 0x10cf2}, {0x118c0, 0x118df}, {0x16e60, 0x16e7f}, |
| 2655 | {0x1e922, 0x1e943}}), |
| 2656 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 2657 | return characterClass; |
| 2658 | } |
| 2659 | |
| 2660 | static std::unique_ptr<CharacterClass> createCharacterClass51() |
| 2661 | { |
| 2662 | // Name = Changes_When_Casefolded, number of codePoints: 1456 |
| 2663 | auto characterClass = std::make_unique<CharacterClass>( |
| 2664 | std::initializer_list<UChar32>({}), |
| 2665 | std::initializer_list<CharacterRange>({{0x41, 0x5a}}), |
| 2666 | std::initializer_list<UChar32>({0x00b5, 0x0100, 0x0102, 0x0104, 0x0106, 0x0108, 0x010a, 0x010c, |
| 2667 | 0x010e, 0x0110, 0x0112, 0x0114, 0x0116, 0x0118, 0x011a, 0x011c, |
| 2668 | 0x011e, 0x0120, 0x0122, 0x0124, 0x0126, 0x0128, 0x012a, 0x012c, |
| 2669 | 0x012e, 0x0130, 0x0132, 0x0134, 0x0136, 0x0139, 0x013b, 0x013d, |
| 2670 | 0x013f, 0x0141, 0x0143, 0x0145, 0x0147, 0x014c, 0x014e, 0x0150, |
| 2671 | 0x0152, 0x0154, 0x0156, 0x0158, 0x015a, 0x015c, 0x015e, 0x0160, |
| 2672 | 0x0162, 0x0164, 0x0166, 0x0168, 0x016a, 0x016c, 0x016e, 0x0170, |
| 2673 | 0x0172, 0x0174, 0x0176, 0x017b, 0x017d, 0x017f, 0x0184, 0x01a2, |
| 2674 | 0x01a4, 0x01a9, 0x01ac, 0x01b5, 0x01bc, 0x01cd, 0x01cf, 0x01d1, |
| 2675 | 0x01d3, 0x01d5, 0x01d7, 0x01d9, 0x01db, 0x01de, 0x01e0, 0x01e2, |
| 2676 | 0x01e4, 0x01e6, 0x01e8, 0x01ea, 0x01ec, 0x01ee, 0x01f4, 0x01fa, |
| 2677 | 0x01fc, 0x01fe, 0x0200, 0x0202, 0x0204, 0x0206, 0x0208, 0x020a, |
| 2678 | 0x020c, 0x020e, 0x0210, 0x0212, 0x0214, 0x0216, 0x0218, 0x021a, |
| 2679 | 0x021c, 0x021e, 0x0220, 0x0222, 0x0224, 0x0226, 0x0228, 0x022a, |
| 2680 | 0x022c, 0x022e, 0x0230, 0x0232, 0x0241, 0x0248, 0x024a, 0x024c, |
| 2681 | 0x024e, 0x0345, 0x0370, 0x0372, 0x0376, 0x037f, 0x0386, 0x038c, |
| 2682 | 0x03c2, 0x03d8, 0x03da, 0x03dc, 0x03de, 0x03e0, 0x03e2, 0x03e4, |
| 2683 | 0x03e6, 0x03e8, 0x03ea, 0x03ec, 0x03ee, 0x03f7, 0x0460, 0x0462, |
| 2684 | 0x0464, 0x0466, 0x0468, 0x046a, 0x046c, 0x046e, 0x0470, 0x0472, |
| 2685 | 0x0474, 0x0476, 0x0478, 0x047a, 0x047c, 0x047e, 0x0480, 0x048a, |
| 2686 | 0x048c, 0x048e, 0x0490, 0x0492, 0x0494, 0x0496, 0x0498, 0x049a, |
| 2687 | 0x049c, 0x049e, 0x04a0, 0x04a2, 0x04a4, 0x04a6, 0x04a8, 0x04aa, |
| 2688 | 0x04ac, 0x04ae, 0x04b0, 0x04b2, 0x04b4, 0x04b6, 0x04b8, 0x04ba, |
| 2689 | 0x04bc, 0x04be, 0x04c3, 0x04c5, 0x04c7, 0x04c9, 0x04cb, 0x04cd, |
| 2690 | 0x04d0, 0x04d2, 0x04d4, 0x04d6, 0x04d8, 0x04da, 0x04dc, 0x04de, |
| 2691 | 0x04e0, 0x04e2, 0x04e4, 0x04e6, 0x04e8, 0x04ea, 0x04ec, 0x04ee, |
| 2692 | 0x04f0, 0x04f2, 0x04f4, 0x04f6, 0x04f8, 0x04fa, 0x04fc, 0x04fe, |
| 2693 | 0x0500, 0x0502, 0x0504, 0x0506, 0x0508, 0x050a, 0x050c, 0x050e, |
| 2694 | 0x0510, 0x0512, 0x0514, 0x0516, 0x0518, 0x051a, 0x051c, 0x051e, |
| 2695 | 0x0520, 0x0522, 0x0524, 0x0526, 0x0528, 0x052a, 0x052c, 0x052e, |
| 2696 | 0x0587, 0x10c7, 0x10cd, 0x1e00, 0x1e02, 0x1e04, 0x1e06, 0x1e08, |
| 2697 | 0x1e0a, 0x1e0c, 0x1e0e, 0x1e10, 0x1e12, 0x1e14, 0x1e16, 0x1e18, |
| 2698 | 0x1e1a, 0x1e1c, 0x1e1e, 0x1e20, 0x1e22, 0x1e24, 0x1e26, 0x1e28, |
| 2699 | 0x1e2a, 0x1e2c, 0x1e2e, 0x1e30, 0x1e32, 0x1e34, 0x1e36, 0x1e38, |
| 2700 | 0x1e3a, 0x1e3c, 0x1e3e, 0x1e40, 0x1e42, 0x1e44, 0x1e46, 0x1e48, |
| 2701 | 0x1e4a, 0x1e4c, 0x1e4e, 0x1e50, 0x1e52, 0x1e54, 0x1e56, 0x1e58, |
| 2702 | 0x1e5a, 0x1e5c, 0x1e5e, 0x1e60, 0x1e62, 0x1e64, 0x1e66, 0x1e68, |
| 2703 | 0x1e6a, 0x1e6c, 0x1e6e, 0x1e70, 0x1e72, 0x1e74, 0x1e76, 0x1e78, |
| 2704 | 0x1e7a, 0x1e7c, 0x1e7e, 0x1e80, 0x1e82, 0x1e84, 0x1e86, 0x1e88, |
| 2705 | 0x1e8a, 0x1e8c, 0x1e8e, 0x1e90, 0x1e92, 0x1e94, 0x1e9e, 0x1ea0, |
| 2706 | 0x1ea2, 0x1ea4, 0x1ea6, 0x1ea8, 0x1eaa, 0x1eac, 0x1eae, 0x1eb0, |
| 2707 | 0x1eb2, 0x1eb4, 0x1eb6, 0x1eb8, 0x1eba, 0x1ebc, 0x1ebe, 0x1ec0, |
| 2708 | 0x1ec2, 0x1ec4, 0x1ec6, 0x1ec8, 0x1eca, 0x1ecc, 0x1ece, 0x1ed0, |
| 2709 | 0x1ed2, 0x1ed4, 0x1ed6, 0x1ed8, 0x1eda, 0x1edc, 0x1ede, 0x1ee0, |
| 2710 | 0x1ee2, 0x1ee4, 0x1ee6, 0x1ee8, 0x1eea, 0x1eec, 0x1eee, 0x1ef0, |
| 2711 | 0x1ef2, 0x1ef4, 0x1ef6, 0x1ef8, 0x1efa, 0x1efc, 0x1efe, 0x1f59, |
| 2712 | 0x1f5b, 0x1f5d, 0x1f5f, 0x2126, 0x2132, 0x2183, 0x2c60, 0x2c67, |
| 2713 | 0x2c69, 0x2c6b, 0x2c72, 0x2c75, 0x2c82, 0x2c84, 0x2c86, 0x2c88, |
| 2714 | 0x2c8a, 0x2c8c, 0x2c8e, 0x2c90, 0x2c92, 0x2c94, 0x2c96, 0x2c98, |
| 2715 | 0x2c9a, 0x2c9c, 0x2c9e, 0x2ca0, 0x2ca2, 0x2ca4, 0x2ca6, 0x2ca8, |
| 2716 | 0x2caa, 0x2cac, 0x2cae, 0x2cb0, 0x2cb2, 0x2cb4, 0x2cb6, 0x2cb8, |
| 2717 | 0x2cba, 0x2cbc, 0x2cbe, 0x2cc0, 0x2cc2, 0x2cc4, 0x2cc6, 0x2cc8, |
| 2718 | 0x2cca, 0x2ccc, 0x2cce, 0x2cd0, 0x2cd2, 0x2cd4, 0x2cd6, 0x2cd8, |
| 2719 | 0x2cda, 0x2cdc, 0x2cde, 0x2ce0, 0x2ce2, 0x2ceb, 0x2ced, 0x2cf2, |
| 2720 | 0xa640, 0xa642, 0xa644, 0xa646, 0xa648, 0xa64a, 0xa64c, 0xa64e, |
| 2721 | 0xa650, 0xa652, 0xa654, 0xa656, 0xa658, 0xa65a, 0xa65c, 0xa65e, |
| 2722 | 0xa660, 0xa662, 0xa664, 0xa666, 0xa668, 0xa66a, 0xa66c, 0xa680, |
| 2723 | 0xa682, 0xa684, 0xa686, 0xa688, 0xa68a, 0xa68c, 0xa68e, 0xa690, |
| 2724 | 0xa692, 0xa694, 0xa696, 0xa698, 0xa69a, 0xa722, 0xa724, 0xa726, |
| 2725 | 0xa728, 0xa72a, 0xa72c, 0xa72e, 0xa732, 0xa734, 0xa736, 0xa738, |
| 2726 | 0xa73a, 0xa73c, 0xa73e, 0xa740, 0xa742, 0xa744, 0xa746, 0xa748, |
| 2727 | 0xa74a, 0xa74c, 0xa74e, 0xa750, 0xa752, 0xa754, 0xa756, 0xa758, |
| 2728 | 0xa75a, 0xa75c, 0xa75e, 0xa760, 0xa762, 0xa764, 0xa766, 0xa768, |
| 2729 | 0xa76a, 0xa76c, 0xa76e, 0xa779, 0xa77b, 0xa780, 0xa782, 0xa784, |
| 2730 | 0xa786, 0xa78b, 0xa78d, 0xa790, 0xa792, 0xa796, 0xa798, 0xa79a, |
| 2731 | 0xa79c, 0xa79e, 0xa7a0, 0xa7a2, 0xa7a4, 0xa7a6, 0xa7a8, 0xa7b6, |
| 2732 | 0xa7b8}), |
| 2733 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00df}, {0x0149, 0x014a}, {0x0178, 0x0179}, |
| 2734 | {0x0181, 0x0182}, {0x0186, 0x0187}, {0x0189, 0x018b}, {0x018e, 0x0191}, |
| 2735 | {0x0193, 0x0194}, {0x0196, 0x0198}, {0x019c, 0x019d}, {0x019f, 0x01a0}, |
| 2736 | {0x01a6, 0x01a7}, {0x01ae, 0x01af}, {0x01b1, 0x01b3}, {0x01b7, 0x01b8}, |
| 2737 | {0x01c4, 0x01c5}, {0x01c7, 0x01c8}, {0x01ca, 0x01cb}, {0x01f1, 0x01f2}, |
| 2738 | {0x01f6, 0x01f8}, {0x023a, 0x023b}, {0x023d, 0x023e}, {0x0243, 0x0246}, |
| 2739 | {0x0388, 0x038a}, {0x038e, 0x038f}, {0x0391, 0x03a1}, {0x03a3, 0x03ab}, |
| 2740 | {0x03cf, 0x03d1}, {0x03d5, 0x03d6}, {0x03f0, 0x03f1}, {0x03f4, 0x03f5}, |
| 2741 | {0x03f9, 0x03fa}, {0x03fd, 0x042f}, {0x04c0, 0x04c1}, {0x0531, 0x0556}, |
| 2742 | {0x10a0, 0x10c5}, {0x13f8, 0x13fd}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, |
| 2743 | {0x1cbd, 0x1cbf}, {0x1e9a, 0x1e9b}, {0x1f08, 0x1f0f}, {0x1f18, 0x1f1d}, |
| 2744 | {0x1f28, 0x1f2f}, {0x1f38, 0x1f3f}, {0x1f48, 0x1f4d}, {0x1f68, 0x1f6f}, |
| 2745 | {0x1f80, 0x1faf}, {0x1fb2, 0x1fb4}, {0x1fb7, 0x1fbc}, {0x1fc2, 0x1fc4}, |
| 2746 | {0x1fc7, 0x1fcc}, {0x1fd8, 0x1fdb}, {0x1fe8, 0x1fec}, {0x1ff2, 0x1ff4}, |
| 2747 | {0x1ff7, 0x1ffc}, {0x212a, 0x212b}, {0x2160, 0x216f}, {0x24b6, 0x24cf}, |
| 2748 | {0x2c00, 0x2c2e}, {0x2c62, 0x2c64}, {0x2c6d, 0x2c70}, {0x2c7e, 0x2c80}, |
| 2749 | {0xa77d, 0xa77e}, {0xa7aa, 0xa7ae}, {0xa7b0, 0xa7b4}, {0xab70, 0xabbf}, |
| 2750 | {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xff21, 0xff3a}, {0x10400, 0x10427}, |
| 2751 | {0x104b0, 0x104d3}, {0x10c80, 0x10cb2}, {0x118a0, 0x118bf}, {0x16e40, 0x16e5f}, |
| 2752 | {0x1e900, 0x1e921}}), |
| 2753 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 2754 | return characterClass; |
| 2755 | } |
| 2756 | |
| 2757 | static std::unique_ptr<CharacterClass> createCharacterClass52() |
| 2758 | { |
| 2759 | // Name = Changes_When_Casemapped, number of codePoints: 2827 |
| 2760 | auto characterClass = std::make_unique<CharacterClass>( |
| 2761 | std::initializer_list<UChar32>({}), |
| 2762 | std::initializer_list<CharacterRange>({{0x41, 0x5a}, {0x61, 0x7a}}), |
| 2763 | std::initializer_list<UChar32>({0x00b5, 0x01bf, 0x0259, 0x0263, 0x026f, 0x0275, 0x027d, 0x0280, |
| 2764 | 0x0283, 0x0292, 0x0345, 0x037f, 0x0386, 0x038c, 0x10c7, 0x10cd, |
| 2765 | 0x1d79, 0x1d7d, 0x1e9e, 0x1f59, 0x1f5b, 0x1f5d, 0x1fbe, 0x2126, |
| 2766 | 0x2132, 0x214e, 0x2d27, 0x2d2d, 0xab53}), |
| 2767 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00f6}, {0x00f8, 0x0137}, {0x0139, 0x018c}, |
| 2768 | {0x018e, 0x019a}, {0x019c, 0x01a9}, {0x01ac, 0x01b9}, {0x01bc, 0x01bd}, |
| 2769 | {0x01c4, 0x0220}, {0x0222, 0x0233}, {0x023a, 0x0254}, {0x0256, 0x0257}, |
| 2770 | {0x025b, 0x025c}, {0x0260, 0x0261}, {0x0265, 0x0266}, {0x0268, 0x026c}, |
| 2771 | {0x0271, 0x0272}, {0x0287, 0x028c}, {0x029d, 0x029e}, {0x0370, 0x0373}, |
| 2772 | {0x0376, 0x0377}, {0x037b, 0x037d}, {0x0388, 0x038a}, {0x038e, 0x03a1}, |
| 2773 | {0x03a3, 0x03d1}, {0x03d5, 0x03f5}, {0x03f7, 0x03fb}, {0x03fd, 0x0481}, |
| 2774 | {0x048a, 0x052f}, {0x0531, 0x0556}, {0x0561, 0x0587}, {0x10a0, 0x10c5}, |
| 2775 | {0x10d0, 0x10fa}, {0x10fd, 0x10ff}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, |
| 2776 | {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1e00, 0x1e9b}, |
| 2777 | {0x1ea0, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, |
| 2778 | {0x1f50, 0x1f57}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, |
| 2779 | {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, |
| 2780 | {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x212a, 0x212b}, |
| 2781 | {0x2160, 0x217f}, {0x2183, 0x2184}, {0x24b6, 0x24e9}, {0x2c00, 0x2c2e}, |
| 2782 | {0x2c30, 0x2c5e}, {0x2c60, 0x2c70}, {0x2c72, 0x2c73}, {0x2c75, 0x2c76}, |
| 2783 | {0x2c7e, 0x2ce3}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, |
| 2784 | {0xa640, 0xa66d}, {0xa680, 0xa69b}, {0xa722, 0xa72f}, {0xa732, 0xa76f}, |
| 2785 | {0xa779, 0xa787}, {0xa78b, 0xa78d}, {0xa790, 0xa793}, {0xa796, 0xa7ae}, |
| 2786 | {0xa7b0, 0xa7b9}, {0xab70, 0xabbf}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, |
| 2787 | {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0x10400, 0x1044f}, {0x104b0, 0x104d3}, |
| 2788 | {0x104d8, 0x104fb}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x118a0, 0x118df}, |
| 2789 | {0x16e40, 0x16e7f}, {0x1e900, 0x1e943}}), |
| 2790 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 2791 | return characterClass; |
| 2792 | } |
| 2793 | |
| 2794 | static std::unique_ptr<CharacterClass> createCharacterClass53() |
| 2795 | { |
| 2796 | // Name = ID_Start, number of codePoints: 125660 |
| 2797 | auto characterClass = std::make_unique<CharacterClass>( |
| 2798 | std::initializer_list<UChar32>({}), |
| 2799 | std::initializer_list<CharacterRange>({{0x41, 0x5a}, {0x61, 0x7a}}), |
| 2800 | std::initializer_list<UChar32>({0x00aa, 0x00b5, 0x00ba, 0x02ec, 0x02ee, 0x037f, 0x0386, 0x038c, |
| 2801 | 0x0559, 0x06d5, 0x06ff, 0x0710, 0x07b1, 0x07fa, 0x081a, 0x0824, |
| 2802 | 0x0828, 0x093d, 0x0950, 0x09b2, 0x09bd, 0x09ce, 0x09fc, 0x0a5e, |
| 2803 | 0x0abd, 0x0ad0, 0x0af9, 0x0b3d, 0x0b71, 0x0b83, 0x0b9c, 0x0bd0, |
| 2804 | 0x0c3d, 0x0c80, 0x0cbd, 0x0cde, 0x0d3d, 0x0d4e, 0x0dbd, 0x0e84, |
| 2805 | 0x0e8a, 0x0e8d, 0x0ea5, 0x0ea7, 0x0ebd, 0x0ec6, 0x0f00, 0x103f, |
| 2806 | 0x1061, 0x108e, 0x10c7, 0x10cd, 0x1258, 0x12c0, 0x17d7, 0x17dc, |
| 2807 | 0x18aa, 0x1aa7, 0x1f59, 0x1f5b, 0x1f5d, 0x1fbe, 0x2071, 0x207f, |
| 2808 | 0x2102, 0x2107, 0x2115, 0x2124, 0x2126, 0x2128, 0x214e, 0x2d27, |
| 2809 | 0x2d2d, 0x2d6f, 0xa8fb, 0xa9cf, 0xaa7a, 0xaab1, 0xaac0, 0xaac2, |
| 2810 | 0xfb1d, 0xfb3e, 0x10808, 0x1083c, 0x10a00, 0x10f27, 0x11144, 0x11176, |
| 2811 | 0x111da, 0x111dc, 0x11288, 0x1133d, 0x11350, 0x114c7, 0x11644, 0x118ff, |
| 2812 | 0x11a00, 0x11a3a, 0x11a50, 0x11a9d, 0x11c40, 0x11d46, 0x11d98, 0x16f50, |
| 2813 | 0x1d4a2, 0x1d4bb, 0x1d546, 0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, 0x1ee42, |
| 2814 | 0x1ee47, 0x1ee49, 0x1ee4b, 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, 0x1ee5d, |
| 2815 | 0x1ee5f, 0x1ee64, 0x1ee7e}), |
| 2816 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00f6}, {0x00f8, 0x02c1}, {0x02c6, 0x02d1}, |
| 2817 | {0x02e0, 0x02e4}, {0x0370, 0x0374}, {0x0376, 0x0377}, {0x037a, 0x037d}, |
| 2818 | {0x0388, 0x038a}, {0x038e, 0x03a1}, {0x03a3, 0x03f5}, {0x03f7, 0x0481}, |
| 2819 | {0x048a, 0x052f}, {0x0531, 0x0556}, {0x0560, 0x0588}, {0x05d0, 0x05ea}, |
| 2820 | {0x05ef, 0x05f2}, {0x0620, 0x064a}, {0x066e, 0x066f}, {0x0671, 0x06d3}, |
| 2821 | {0x06e5, 0x06e6}, {0x06ee, 0x06ef}, {0x06fa, 0x06fc}, {0x0712, 0x072f}, |
| 2822 | {0x074d, 0x07a5}, {0x07ca, 0x07ea}, {0x07f4, 0x07f5}, {0x0800, 0x0815}, |
| 2823 | {0x0840, 0x0858}, {0x0860, 0x086a}, {0x08a0, 0x08b4}, {0x08b6, 0x08bd}, |
| 2824 | {0x0904, 0x0939}, {0x0958, 0x0961}, {0x0971, 0x0980}, {0x0985, 0x098c}, |
| 2825 | {0x098f, 0x0990}, {0x0993, 0x09a8}, {0x09aa, 0x09b0}, {0x09b6, 0x09b9}, |
| 2826 | {0x09dc, 0x09dd}, {0x09df, 0x09e1}, {0x09f0, 0x09f1}, {0x0a05, 0x0a0a}, |
| 2827 | {0x0a0f, 0x0a10}, {0x0a13, 0x0a28}, {0x0a2a, 0x0a30}, {0x0a32, 0x0a33}, |
| 2828 | {0x0a35, 0x0a36}, {0x0a38, 0x0a39}, {0x0a59, 0x0a5c}, {0x0a72, 0x0a74}, |
| 2829 | {0x0a85, 0x0a8d}, {0x0a8f, 0x0a91}, {0x0a93, 0x0aa8}, {0x0aaa, 0x0ab0}, |
| 2830 | {0x0ab2, 0x0ab3}, {0x0ab5, 0x0ab9}, {0x0ae0, 0x0ae1}, {0x0b05, 0x0b0c}, |
| 2831 | {0x0b0f, 0x0b10}, {0x0b13, 0x0b28}, {0x0b2a, 0x0b30}, {0x0b32, 0x0b33}, |
| 2832 | {0x0b35, 0x0b39}, {0x0b5c, 0x0b5d}, {0x0b5f, 0x0b61}, {0x0b85, 0x0b8a}, |
| 2833 | {0x0b8e, 0x0b90}, {0x0b92, 0x0b95}, {0x0b99, 0x0b9a}, {0x0b9e, 0x0b9f}, |
| 2834 | {0x0ba3, 0x0ba4}, {0x0ba8, 0x0baa}, {0x0bae, 0x0bb9}, {0x0c05, 0x0c0c}, |
| 2835 | {0x0c0e, 0x0c10}, {0x0c12, 0x0c28}, {0x0c2a, 0x0c39}, {0x0c58, 0x0c5a}, |
| 2836 | {0x0c60, 0x0c61}, {0x0c85, 0x0c8c}, {0x0c8e, 0x0c90}, {0x0c92, 0x0ca8}, |
| 2837 | {0x0caa, 0x0cb3}, {0x0cb5, 0x0cb9}, {0x0ce0, 0x0ce1}, {0x0cf1, 0x0cf2}, |
| 2838 | {0x0d05, 0x0d0c}, {0x0d0e, 0x0d10}, {0x0d12, 0x0d3a}, {0x0d54, 0x0d56}, |
| 2839 | {0x0d5f, 0x0d61}, {0x0d7a, 0x0d7f}, {0x0d85, 0x0d96}, {0x0d9a, 0x0db1}, |
| 2840 | {0x0db3, 0x0dbb}, {0x0dc0, 0x0dc6}, {0x0e01, 0x0e30}, {0x0e32, 0x0e33}, |
| 2841 | {0x0e40, 0x0e46}, {0x0e81, 0x0e82}, {0x0e87, 0x0e88}, {0x0e94, 0x0e97}, |
| 2842 | {0x0e99, 0x0e9f}, {0x0ea1, 0x0ea3}, {0x0eaa, 0x0eab}, {0x0ead, 0x0eb0}, |
| 2843 | {0x0eb2, 0x0eb3}, {0x0ec0, 0x0ec4}, {0x0edc, 0x0edf}, {0x0f40, 0x0f47}, |
| 2844 | {0x0f49, 0x0f6c}, {0x0f88, 0x0f8c}, {0x1000, 0x102a}, {0x1050, 0x1055}, |
| 2845 | {0x105a, 0x105d}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081}, |
| 2846 | {0x10a0, 0x10c5}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, |
| 2847 | {0x1250, 0x1256}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, |
| 2848 | {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c2, 0x12c5}, |
| 2849 | {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, |
| 2850 | {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1401, 0x166c}, |
| 2851 | {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, |
| 2852 | {0x1700, 0x170c}, {0x170e, 0x1711}, {0x1720, 0x1731}, {0x1740, 0x1751}, |
| 2853 | {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x1820, 0x1878}, |
| 2854 | {0x1880, 0x18a8}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, |
| 2855 | {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, |
| 2856 | {0x1a20, 0x1a54}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4b}, {0x1b83, 0x1ba0}, |
| 2857 | {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, |
| 2858 | {0x1c5a, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, |
| 2859 | {0x1ce9, 0x1cec}, {0x1cee, 0x1cf1}, {0x1cf5, 0x1cf6}, {0x1d00, 0x1dbf}, |
| 2860 | {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, |
| 2861 | {0x1f50, 0x1f57}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, |
| 2862 | {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, |
| 2863 | {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2090, 0x209c}, |
| 2864 | {0x210a, 0x2113}, {0x2118, 0x211d}, {0x212a, 0x2139}, {0x213c, 0x213f}, |
| 2865 | {0x2145, 0x2149}, {0x2160, 0x2188}, {0x2c00, 0x2c2e}, {0x2c30, 0x2c5e}, |
| 2866 | {0x2c60, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, |
| 2867 | {0x2d30, 0x2d67}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, |
| 2868 | {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, |
| 2869 | {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x3005, 0x3007}, {0x3021, 0x3029}, |
| 2870 | {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, {0x309b, 0x309f}, |
| 2871 | {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, |
| 2872 | {0x31a0, 0x31ba}, {0x31f0, 0x31ff}, {0x3400, 0x4db5}, {0x4e00, 0x9fef}, |
| 2873 | {0xa000, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa61f}, |
| 2874 | {0xa62a, 0xa62b}, {0xa640, 0xa66e}, {0xa67f, 0xa69d}, {0xa6a0, 0xa6ef}, |
| 2875 | {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7b9}, {0xa7f7, 0xa801}, |
| 2876 | {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, {0xa840, 0xa873}, |
| 2877 | {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, |
| 2878 | {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, {0xa9e0, 0xa9e4}, |
| 2879 | {0xa9e6, 0xa9ef}, {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, |
| 2880 | {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7e, 0xaaaf}, {0xaab5, 0xaab6}, |
| 2881 | {0xaab9, 0xaabd}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, |
| 2882 | {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, |
| 2883 | {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab65}, {0xab70, 0xabe2}, |
| 2884 | {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, |
| 2885 | {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1f, 0xfb28}, |
| 2886 | {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, |
| 2887 | {0xfb46, 0xfbb1}, {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, |
| 2888 | {0xfdf0, 0xfdfb}, {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, {0xff21, 0xff3a}, |
| 2889 | {0xff41, 0xff5a}, {0xff66, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, |
| 2890 | {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, |
| 2891 | {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, |
| 2892 | {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, |
| 2893 | {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x10375}, {0x10380, 0x1039d}, |
| 2894 | {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, |
| 2895 | {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, |
| 2896 | {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10800, 0x10805}, |
| 2897 | {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083f, 0x10855}, {0x10860, 0x10876}, |
| 2898 | {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, |
| 2899 | {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a10, 0x10a13}, |
| 2900 | {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, |
| 2901 | {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, |
| 2902 | {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, |
| 2903 | {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10f00, 0x10f1c}, {0x10f30, 0x10f45}, |
| 2904 | {0x11003, 0x11037}, {0x11083, 0x110af}, {0x110d0, 0x110e8}, {0x11103, 0x11126}, |
| 2905 | {0x11150, 0x11172}, {0x11183, 0x111b2}, {0x111c1, 0x111c4}, {0x11200, 0x11211}, |
| 2906 | {0x11213, 0x1122b}, {0x11280, 0x11286}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, |
| 2907 | {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, |
| 2908 | {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, |
| 2909 | {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x11480, 0x114af}, |
| 2910 | {0x114c4, 0x114c5}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, |
| 2911 | {0x11680, 0x116aa}, {0x11700, 0x1171a}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, |
| 2912 | {0x11a0b, 0x11a32}, {0x11a5c, 0x11a83}, {0x11a86, 0x11a89}, {0x11ac0, 0x11af8}, |
| 2913 | {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, |
| 2914 | {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, |
| 2915 | {0x11d6a, 0x11d89}, {0x11ee0, 0x11ef2}, {0x12000, 0x12399}, {0x12400, 0x1246e}, |
| 2916 | {0x12480, 0x12543}, {0x13000, 0x1342e}, {0x14400, 0x14646}, {0x16800, 0x16a38}, |
| 2917 | {0x16a40, 0x16a5e}, {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, |
| 2918 | {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f44}, |
| 2919 | {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x17000, 0x187f1}, {0x18800, 0x18af2}, |
| 2920 | {0x1b000, 0x1b11e}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, |
| 2921 | {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, |
| 2922 | {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, |
| 2923 | {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, |
| 2924 | {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, |
| 2925 | {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, |
| 2926 | {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, |
| 2927 | {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, |
| 2928 | {0x1d7c4, 0x1d7cb}, {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1ee00, 0x1ee03}, |
| 2929 | {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, |
| 2930 | {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, |
| 2931 | {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, |
| 2932 | {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, |
| 2933 | {0x20000, 0x2a6d6}, {0x2a700, 0x2b734}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, |
| 2934 | {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}}), |
| 2935 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 2936 | return characterClass; |
| 2937 | } |
| 2938 | |
| 2939 | static std::unique_ptr<CharacterClass> createCharacterClass54() |
| 2940 | { |
| 2941 | // Name = ID_Continue, number of codePoints: 128510 |
| 2942 | auto characterClass = std::make_unique<CharacterClass>( |
| 2943 | std::initializer_list<UChar32>({0x5f}), |
| 2944 | std::initializer_list<CharacterRange>({{0x30, 0x39}, {0x41, 0x5a}, {0x61, 0x7a}}), |
| 2945 | std::initializer_list<UChar32>({0x00aa, 0x00b5, 0x00b7, 0x00ba, 0x02ec, 0x02ee, 0x037f, 0x038c, |
| 2946 | 0x0559, 0x05bf, 0x05c7, 0x06ff, 0x07fa, 0x07fd, 0x09b2, 0x09d7, |
| 2947 | 0x09fc, 0x09fe, 0x0a3c, 0x0a51, 0x0a5e, 0x0ad0, 0x0b71, 0x0b9c, |
| 2948 | 0x0bd0, 0x0bd7, 0x0cde, 0x0dbd, 0x0dca, 0x0dd6, 0x0e84, 0x0e8a, |
| 2949 | 0x0e8d, 0x0ea5, 0x0ea7, 0x0ec6, 0x0f00, 0x0f35, 0x0f37, 0x0f39, |
| 2950 | 0x0fc6, 0x10c7, 0x10cd, 0x1258, 0x12c0, 0x17d7, 0x1aa7, 0x1f59, |
| 2951 | 0x1f5b, 0x1f5d, 0x1fbe, 0x2054, 0x2071, 0x207f, 0x20e1, 0x2102, |
| 2952 | 0x2107, 0x2115, 0x2124, 0x2126, 0x2128, 0x214e, 0x2d27, 0x2d2d, |
| 2953 | 0x2d6f, 0xa8fb, 0xfb3e, 0xff3f, 0x101fd, 0x102e0, 0x10808, 0x1083c, |
| 2954 | 0x10a3f, 0x10f27, 0x11176, 0x111dc, 0x1123e, 0x11288, 0x11350, 0x11357, |
| 2955 | 0x1145e, 0x114c7, 0x11644, 0x118ff, 0x11a47, 0x11a9d, 0x11d3a, 0x1d4a2, |
| 2956 | 0x1d4bb, 0x1d546, 0x1da75, 0x1da84, 0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, |
| 2957 | 0x1ee42, 0x1ee47, 0x1ee49, 0x1ee4b, 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, |
| 2958 | 0x1ee5d, 0x1ee5f, 0x1ee64, 0x1ee7e}), |
| 2959 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00f6}, {0x00f8, 0x02c1}, {0x02c6, 0x02d1}, |
| 2960 | {0x02e0, 0x02e4}, {0x0300, 0x0374}, {0x0376, 0x0377}, {0x037a, 0x037d}, |
| 2961 | {0x0386, 0x038a}, {0x038e, 0x03a1}, {0x03a3, 0x03f5}, {0x03f7, 0x0481}, |
| 2962 | {0x0483, 0x0487}, {0x048a, 0x052f}, {0x0531, 0x0556}, {0x0560, 0x0588}, |
| 2963 | {0x0591, 0x05bd}, {0x05c1, 0x05c2}, {0x05c4, 0x05c5}, {0x05d0, 0x05ea}, |
| 2964 | {0x05ef, 0x05f2}, {0x0610, 0x061a}, {0x0620, 0x0669}, {0x066e, 0x06d3}, |
| 2965 | {0x06d5, 0x06dc}, {0x06df, 0x06e8}, {0x06ea, 0x06fc}, {0x0710, 0x074a}, |
| 2966 | {0x074d, 0x07b1}, {0x07c0, 0x07f5}, {0x0800, 0x082d}, {0x0840, 0x085b}, |
| 2967 | {0x0860, 0x086a}, {0x08a0, 0x08b4}, {0x08b6, 0x08bd}, {0x08d3, 0x08e1}, |
| 2968 | {0x08e3, 0x0963}, {0x0966, 0x096f}, {0x0971, 0x0983}, {0x0985, 0x098c}, |
| 2969 | {0x098f, 0x0990}, {0x0993, 0x09a8}, {0x09aa, 0x09b0}, {0x09b6, 0x09b9}, |
| 2970 | {0x09bc, 0x09c4}, {0x09c7, 0x09c8}, {0x09cb, 0x09ce}, {0x09dc, 0x09dd}, |
| 2971 | {0x09df, 0x09e3}, {0x09e6, 0x09f1}, {0x0a01, 0x0a03}, {0x0a05, 0x0a0a}, |
| 2972 | {0x0a0f, 0x0a10}, {0x0a13, 0x0a28}, {0x0a2a, 0x0a30}, {0x0a32, 0x0a33}, |
| 2973 | {0x0a35, 0x0a36}, {0x0a38, 0x0a39}, {0x0a3e, 0x0a42}, {0x0a47, 0x0a48}, |
| 2974 | {0x0a4b, 0x0a4d}, {0x0a59, 0x0a5c}, {0x0a66, 0x0a75}, {0x0a81, 0x0a83}, |
| 2975 | {0x0a85, 0x0a8d}, {0x0a8f, 0x0a91}, {0x0a93, 0x0aa8}, {0x0aaa, 0x0ab0}, |
| 2976 | {0x0ab2, 0x0ab3}, {0x0ab5, 0x0ab9}, {0x0abc, 0x0ac5}, {0x0ac7, 0x0ac9}, |
| 2977 | {0x0acb, 0x0acd}, {0x0ae0, 0x0ae3}, {0x0ae6, 0x0aef}, {0x0af9, 0x0aff}, |
| 2978 | {0x0b01, 0x0b03}, {0x0b05, 0x0b0c}, {0x0b0f, 0x0b10}, {0x0b13, 0x0b28}, |
| 2979 | {0x0b2a, 0x0b30}, {0x0b32, 0x0b33}, {0x0b35, 0x0b39}, {0x0b3c, 0x0b44}, |
| 2980 | {0x0b47, 0x0b48}, {0x0b4b, 0x0b4d}, {0x0b56, 0x0b57}, {0x0b5c, 0x0b5d}, |
| 2981 | {0x0b5f, 0x0b63}, {0x0b66, 0x0b6f}, {0x0b82, 0x0b83}, {0x0b85, 0x0b8a}, |
| 2982 | {0x0b8e, 0x0b90}, {0x0b92, 0x0b95}, {0x0b99, 0x0b9a}, {0x0b9e, 0x0b9f}, |
| 2983 | {0x0ba3, 0x0ba4}, {0x0ba8, 0x0baa}, {0x0bae, 0x0bb9}, {0x0bbe, 0x0bc2}, |
| 2984 | {0x0bc6, 0x0bc8}, {0x0bca, 0x0bcd}, {0x0be6, 0x0bef}, {0x0c00, 0x0c0c}, |
| 2985 | {0x0c0e, 0x0c10}, {0x0c12, 0x0c28}, {0x0c2a, 0x0c39}, {0x0c3d, 0x0c44}, |
| 2986 | {0x0c46, 0x0c48}, {0x0c4a, 0x0c4d}, {0x0c55, 0x0c56}, {0x0c58, 0x0c5a}, |
| 2987 | {0x0c60, 0x0c63}, {0x0c66, 0x0c6f}, {0x0c80, 0x0c83}, {0x0c85, 0x0c8c}, |
| 2988 | {0x0c8e, 0x0c90}, {0x0c92, 0x0ca8}, {0x0caa, 0x0cb3}, {0x0cb5, 0x0cb9}, |
| 2989 | {0x0cbc, 0x0cc4}, {0x0cc6, 0x0cc8}, {0x0cca, 0x0ccd}, {0x0cd5, 0x0cd6}, |
| 2990 | {0x0ce0, 0x0ce3}, {0x0ce6, 0x0cef}, {0x0cf1, 0x0cf2}, {0x0d00, 0x0d03}, |
| 2991 | {0x0d05, 0x0d0c}, {0x0d0e, 0x0d10}, {0x0d12, 0x0d44}, {0x0d46, 0x0d48}, |
| 2992 | {0x0d4a, 0x0d4e}, {0x0d54, 0x0d57}, {0x0d5f, 0x0d63}, {0x0d66, 0x0d6f}, |
| 2993 | {0x0d7a, 0x0d7f}, {0x0d82, 0x0d83}, {0x0d85, 0x0d96}, {0x0d9a, 0x0db1}, |
| 2994 | {0x0db3, 0x0dbb}, {0x0dc0, 0x0dc6}, {0x0dcf, 0x0dd4}, {0x0dd8, 0x0ddf}, |
| 2995 | {0x0de6, 0x0def}, {0x0df2, 0x0df3}, {0x0e01, 0x0e3a}, {0x0e40, 0x0e4e}, |
| 2996 | {0x0e50, 0x0e59}, {0x0e81, 0x0e82}, {0x0e87, 0x0e88}, {0x0e94, 0x0e97}, |
| 2997 | {0x0e99, 0x0e9f}, {0x0ea1, 0x0ea3}, {0x0eaa, 0x0eab}, {0x0ead, 0x0eb9}, |
| 2998 | {0x0ebb, 0x0ebd}, {0x0ec0, 0x0ec4}, {0x0ec8, 0x0ecd}, {0x0ed0, 0x0ed9}, |
| 2999 | {0x0edc, 0x0edf}, {0x0f18, 0x0f19}, {0x0f20, 0x0f29}, {0x0f3e, 0x0f47}, |
| 3000 | {0x0f49, 0x0f6c}, {0x0f71, 0x0f84}, {0x0f86, 0x0f97}, {0x0f99, 0x0fbc}, |
| 3001 | {0x1000, 0x1049}, {0x1050, 0x109d}, {0x10a0, 0x10c5}, {0x10d0, 0x10fa}, |
| 3002 | {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x125a, 0x125d}, |
| 3003 | {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, |
| 3004 | {0x12b8, 0x12be}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, |
| 3005 | {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x135f}, {0x1369, 0x1371}, |
| 3006 | {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1401, 0x166c}, |
| 3007 | {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, |
| 3008 | {0x1700, 0x170c}, {0x170e, 0x1714}, {0x1720, 0x1734}, {0x1740, 0x1753}, |
| 3009 | {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}, {0x1780, 0x17d3}, |
| 3010 | {0x17dc, 0x17dd}, {0x17e0, 0x17e9}, {0x180b, 0x180d}, {0x1810, 0x1819}, |
| 3011 | {0x1820, 0x1878}, {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, |
| 3012 | {0x1920, 0x192b}, {0x1930, 0x193b}, {0x1946, 0x196d}, {0x1970, 0x1974}, |
| 3013 | {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x1a00, 0x1a1b}, |
| 3014 | {0x1a20, 0x1a5e}, {0x1a60, 0x1a7c}, {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, |
| 3015 | {0x1ab0, 0x1abd}, {0x1b00, 0x1b4b}, {0x1b50, 0x1b59}, {0x1b6b, 0x1b73}, |
| 3016 | {0x1b80, 0x1bf3}, {0x1c00, 0x1c37}, {0x1c40, 0x1c49}, {0x1c4d, 0x1c7d}, |
| 3017 | {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1cd0, 0x1cd2}, |
| 3018 | {0x1cd4, 0x1cf9}, {0x1d00, 0x1df9}, {0x1dfb, 0x1f15}, {0x1f18, 0x1f1d}, |
| 3019 | {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f5f, 0x1f7d}, |
| 3020 | {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, |
| 3021 | {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, |
| 3022 | {0x1ff6, 0x1ffc}, {0x203f, 0x2040}, {0x2090, 0x209c}, {0x20d0, 0x20dc}, |
| 3023 | {0x20e5, 0x20f0}, {0x210a, 0x2113}, {0x2118, 0x211d}, {0x212a, 0x2139}, |
| 3024 | {0x213c, 0x213f}, {0x2145, 0x2149}, {0x2160, 0x2188}, {0x2c00, 0x2c2e}, |
| 3025 | {0x2c30, 0x2c5e}, {0x2c60, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, |
| 3026 | {0x2d30, 0x2d67}, {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, |
| 3027 | {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, |
| 3028 | {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, |
| 3029 | {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, |
| 3030 | {0x3099, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, |
| 3031 | {0x3131, 0x318e}, {0x31a0, 0x31ba}, {0x31f0, 0x31ff}, {0x3400, 0x4db5}, |
| 3032 | {0x4e00, 0x9fef}, {0xa000, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, |
| 3033 | {0xa610, 0xa62b}, {0xa640, 0xa66f}, {0xa674, 0xa67d}, {0xa67f, 0xa6f1}, |
| 3034 | {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7b9}, {0xa7f7, 0xa827}, |
| 3035 | {0xa840, 0xa873}, {0xa880, 0xa8c5}, {0xa8d0, 0xa8d9}, {0xa8e0, 0xa8f7}, |
| 3036 | {0xa8fd, 0xa92d}, {0xa930, 0xa953}, {0xa960, 0xa97c}, {0xa980, 0xa9c0}, |
| 3037 | {0xa9cf, 0xa9d9}, {0xa9e0, 0xa9fe}, {0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, |
| 3038 | {0xaa50, 0xaa59}, {0xaa60, 0xaa76}, {0xaa7a, 0xaac2}, {0xaadb, 0xaadd}, |
| 3039 | {0xaae0, 0xaaef}, {0xaaf2, 0xaaf6}, {0xab01, 0xab06}, {0xab09, 0xab0e}, |
| 3040 | {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, |
| 3041 | {0xab5c, 0xab65}, {0xab70, 0xabea}, {0xabec, 0xabed}, {0xabf0, 0xabf9}, |
| 3042 | {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, |
| 3043 | {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb28}, |
| 3044 | {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, |
| 3045 | {0xfb46, 0xfbb1}, {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, |
| 3046 | {0xfdf0, 0xfdfb}, {0xfe00, 0xfe0f}, {0xfe20, 0xfe2f}, {0xfe33, 0xfe34}, |
| 3047 | {0xfe4d, 0xfe4f}, {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, {0xff10, 0xff19}, |
| 3048 | {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, {0xffc2, 0xffc7}, |
| 3049 | {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, |
| 3050 | {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, |
| 3051 | {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x10280, 0x1029c}, |
| 3052 | {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x1037a}, |
| 3053 | {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, |
| 3054 | {0x10400, 0x1049d}, {0x104a0, 0x104a9}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, |
| 3055 | {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10600, 0x10736}, {0x10740, 0x10755}, |
| 3056 | {0x10760, 0x10767}, {0x10800, 0x10805}, {0x1080a, 0x10835}, {0x10837, 0x10838}, |
| 3057 | {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, |
| 3058 | {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, |
| 3059 | {0x109be, 0x109bf}, {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, |
| 3060 | {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a60, 0x10a7c}, |
| 3061 | {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae6}, {0x10b00, 0x10b35}, |
| 3062 | {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, |
| 3063 | {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10d30, 0x10d39}, |
| 3064 | {0x10f00, 0x10f1c}, {0x10f30, 0x10f50}, {0x11000, 0x11046}, {0x11066, 0x1106f}, |
| 3065 | {0x1107f, 0x110ba}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, {0x11100, 0x11134}, |
| 3066 | {0x11136, 0x1113f}, {0x11144, 0x11146}, {0x11150, 0x11173}, {0x11180, 0x111c4}, |
| 3067 | {0x111c9, 0x111cc}, {0x111d0, 0x111da}, {0x11200, 0x11211}, {0x11213, 0x11237}, |
| 3068 | {0x11280, 0x11286}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, |
| 3069 | {0x112b0, 0x112ea}, {0x112f0, 0x112f9}, {0x11300, 0x11303}, {0x11305, 0x1130c}, |
| 3070 | {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, |
| 3071 | {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, |
| 3072 | {0x1135d, 0x11363}, {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11400, 0x1144a}, |
| 3073 | {0x11450, 0x11459}, {0x11480, 0x114c5}, {0x114d0, 0x114d9}, {0x11580, 0x115b5}, |
| 3074 | {0x115b8, 0x115c0}, {0x115d8, 0x115dd}, {0x11600, 0x11640}, {0x11650, 0x11659}, |
| 3075 | {0x11680, 0x116b7}, {0x116c0, 0x116c9}, {0x11700, 0x1171a}, {0x1171d, 0x1172b}, |
| 3076 | {0x11730, 0x11739}, {0x11800, 0x1183a}, {0x118a0, 0x118e9}, {0x11a00, 0x11a3e}, |
| 3077 | {0x11a50, 0x11a83}, {0x11a86, 0x11a99}, {0x11ac0, 0x11af8}, {0x11c00, 0x11c08}, |
| 3078 | {0x11c0a, 0x11c36}, {0x11c38, 0x11c40}, {0x11c50, 0x11c59}, {0x11c72, 0x11c8f}, |
| 3079 | {0x11c92, 0x11ca7}, {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, |
| 3080 | {0x11d0b, 0x11d36}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d47}, {0x11d50, 0x11d59}, |
| 3081 | {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, |
| 3082 | {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, {0x11ee0, 0x11ef6}, {0x12000, 0x12399}, |
| 3083 | {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x13000, 0x1342e}, {0x14400, 0x14646}, |
| 3084 | {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a60, 0x16a69}, {0x16ad0, 0x16aed}, |
| 3085 | {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, {0x16b50, 0x16b59}, |
| 3086 | {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f44}, |
| 3087 | {0x16f50, 0x16f7e}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x17000, 0x187f1}, |
| 3088 | {0x18800, 0x18af2}, {0x1b000, 0x1b11e}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, |
| 3089 | {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1bc9d, 0x1bc9e}, |
| 3090 | {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, |
| 3091 | {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, |
| 3092 | {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, |
| 3093 | {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, |
| 3094 | {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, |
| 3095 | {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, |
| 3096 | {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, |
| 3097 | {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, |
| 3098 | {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36}, {0x1da3b, 0x1da6c}, |
| 3099 | {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, |
| 3100 | {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e800, 0x1e8c4}, |
| 3101 | {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94a}, {0x1e950, 0x1e959}, {0x1ee00, 0x1ee03}, |
| 3102 | {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, |
| 3103 | {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, |
| 3104 | {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, |
| 3105 | {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, |
| 3106 | {0x20000, 0x2a6d6}, {0x2a700, 0x2b734}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, |
| 3107 | {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}, {0xe0100, 0xe01ef}}), |
| 3108 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 3109 | return characterClass; |
| 3110 | } |
| 3111 | |
| 3112 | static std::unique_ptr<CharacterClass> createCharacterClass55() |
| 3113 | { |
| 3114 | // Name = XID_Start, number of codePoints: 125637 |
| 3115 | auto characterClass = std::make_unique<CharacterClass>( |
| 3116 | std::initializer_list<UChar32>({}), |
| 3117 | std::initializer_list<CharacterRange>({{0x41, 0x5a}, {0x61, 0x7a}}), |
| 3118 | std::initializer_list<UChar32>({0x00aa, 0x00b5, 0x00ba, 0x02ec, 0x02ee, 0x037f, 0x0386, 0x038c, |
| 3119 | 0x0559, 0x06d5, 0x06ff, 0x0710, 0x07b1, 0x07fa, 0x081a, 0x0824, |
| 3120 | 0x0828, 0x093d, 0x0950, 0x09b2, 0x09bd, 0x09ce, 0x09fc, 0x0a5e, |
| 3121 | 0x0abd, 0x0ad0, 0x0af9, 0x0b3d, 0x0b71, 0x0b83, 0x0b9c, 0x0bd0, |
| 3122 | 0x0c3d, 0x0c80, 0x0cbd, 0x0cde, 0x0d3d, 0x0d4e, 0x0dbd, 0x0e32, |
| 3123 | 0x0e84, 0x0e8a, 0x0e8d, 0x0ea5, 0x0ea7, 0x0eb2, 0x0ebd, 0x0ec6, |
| 3124 | 0x0f00, 0x103f, 0x1061, 0x108e, 0x10c7, 0x10cd, 0x1258, 0x12c0, |
| 3125 | 0x17d7, 0x17dc, 0x18aa, 0x1aa7, 0x1f59, 0x1f5b, 0x1f5d, 0x1fbe, |
| 3126 | 0x2071, 0x207f, 0x2102, 0x2107, 0x2115, 0x2124, 0x2126, 0x2128, |
| 3127 | 0x214e, 0x2d27, 0x2d2d, 0x2d6f, 0xa8fb, 0xa9cf, 0xaa7a, 0xaab1, |
| 3128 | 0xaac0, 0xaac2, 0xfb1d, 0xfb3e, 0xfe71, 0xfe73, 0xfe77, 0xfe79, |
| 3129 | 0xfe7b, 0xfe7d, 0x10808, 0x1083c, 0x10a00, 0x10f27, 0x11144, 0x11176, |
| 3130 | 0x111da, 0x111dc, 0x11288, 0x1133d, 0x11350, 0x114c7, 0x11644, 0x118ff, |
| 3131 | 0x11a00, 0x11a3a, 0x11a50, 0x11a9d, 0x11c40, 0x11d46, 0x11d98, 0x16f50, |
| 3132 | 0x1d4a2, 0x1d4bb, 0x1d546, 0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, 0x1ee42, |
| 3133 | 0x1ee47, 0x1ee49, 0x1ee4b, 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, 0x1ee5d, |
| 3134 | 0x1ee5f, 0x1ee64, 0x1ee7e}), |
| 3135 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00f6}, {0x00f8, 0x02c1}, {0x02c6, 0x02d1}, |
| 3136 | {0x02e0, 0x02e4}, {0x0370, 0x0374}, {0x0376, 0x0377}, {0x037b, 0x037d}, |
| 3137 | {0x0388, 0x038a}, {0x038e, 0x03a1}, {0x03a3, 0x03f5}, {0x03f7, 0x0481}, |
| 3138 | {0x048a, 0x052f}, {0x0531, 0x0556}, {0x0560, 0x0588}, {0x05d0, 0x05ea}, |
| 3139 | {0x05ef, 0x05f2}, {0x0620, 0x064a}, {0x066e, 0x066f}, {0x0671, 0x06d3}, |
| 3140 | {0x06e5, 0x06e6}, {0x06ee, 0x06ef}, {0x06fa, 0x06fc}, {0x0712, 0x072f}, |
| 3141 | {0x074d, 0x07a5}, {0x07ca, 0x07ea}, {0x07f4, 0x07f5}, {0x0800, 0x0815}, |
| 3142 | {0x0840, 0x0858}, {0x0860, 0x086a}, {0x08a0, 0x08b4}, {0x08b6, 0x08bd}, |
| 3143 | {0x0904, 0x0939}, {0x0958, 0x0961}, {0x0971, 0x0980}, {0x0985, 0x098c}, |
| 3144 | {0x098f, 0x0990}, {0x0993, 0x09a8}, {0x09aa, 0x09b0}, {0x09b6, 0x09b9}, |
| 3145 | {0x09dc, 0x09dd}, {0x09df, 0x09e1}, {0x09f0, 0x09f1}, {0x0a05, 0x0a0a}, |
| 3146 | {0x0a0f, 0x0a10}, {0x0a13, 0x0a28}, {0x0a2a, 0x0a30}, {0x0a32, 0x0a33}, |
| 3147 | {0x0a35, 0x0a36}, {0x0a38, 0x0a39}, {0x0a59, 0x0a5c}, {0x0a72, 0x0a74}, |
| 3148 | {0x0a85, 0x0a8d}, {0x0a8f, 0x0a91}, {0x0a93, 0x0aa8}, {0x0aaa, 0x0ab0}, |
| 3149 | {0x0ab2, 0x0ab3}, {0x0ab5, 0x0ab9}, {0x0ae0, 0x0ae1}, {0x0b05, 0x0b0c}, |
| 3150 | {0x0b0f, 0x0b10}, {0x0b13, 0x0b28}, {0x0b2a, 0x0b30}, {0x0b32, 0x0b33}, |
| 3151 | {0x0b35, 0x0b39}, {0x0b5c, 0x0b5d}, {0x0b5f, 0x0b61}, {0x0b85, 0x0b8a}, |
| 3152 | {0x0b8e, 0x0b90}, {0x0b92, 0x0b95}, {0x0b99, 0x0b9a}, {0x0b9e, 0x0b9f}, |
| 3153 | {0x0ba3, 0x0ba4}, {0x0ba8, 0x0baa}, {0x0bae, 0x0bb9}, {0x0c05, 0x0c0c}, |
| 3154 | {0x0c0e, 0x0c10}, {0x0c12, 0x0c28}, {0x0c2a, 0x0c39}, {0x0c58, 0x0c5a}, |
| 3155 | {0x0c60, 0x0c61}, {0x0c85, 0x0c8c}, {0x0c8e, 0x0c90}, {0x0c92, 0x0ca8}, |
| 3156 | {0x0caa, 0x0cb3}, {0x0cb5, 0x0cb9}, {0x0ce0, 0x0ce1}, {0x0cf1, 0x0cf2}, |
| 3157 | {0x0d05, 0x0d0c}, {0x0d0e, 0x0d10}, {0x0d12, 0x0d3a}, {0x0d54, 0x0d56}, |
| 3158 | {0x0d5f, 0x0d61}, {0x0d7a, 0x0d7f}, {0x0d85, 0x0d96}, {0x0d9a, 0x0db1}, |
| 3159 | {0x0db3, 0x0dbb}, {0x0dc0, 0x0dc6}, {0x0e01, 0x0e30}, {0x0e40, 0x0e46}, |
| 3160 | {0x0e81, 0x0e82}, {0x0e87, 0x0e88}, {0x0e94, 0x0e97}, {0x0e99, 0x0e9f}, |
| 3161 | {0x0ea1, 0x0ea3}, {0x0eaa, 0x0eab}, {0x0ead, 0x0eb0}, {0x0ec0, 0x0ec4}, |
| 3162 | {0x0edc, 0x0edf}, {0x0f40, 0x0f47}, {0x0f49, 0x0f6c}, {0x0f88, 0x0f8c}, |
| 3163 | {0x1000, 0x102a}, {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1065, 0x1066}, |
| 3164 | {0x106e, 0x1070}, {0x1075, 0x1081}, {0x10a0, 0x10c5}, {0x10d0, 0x10fa}, |
| 3165 | {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x125a, 0x125d}, |
| 3166 | {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, |
| 3167 | {0x12b8, 0x12be}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, |
| 3168 | {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, |
| 3169 | {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, |
| 3170 | {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x170c}, {0x170e, 0x1711}, |
| 3171 | {0x1720, 0x1731}, {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770}, |
| 3172 | {0x1780, 0x17b3}, {0x1820, 0x1878}, {0x1880, 0x18a8}, {0x18b0, 0x18f5}, |
| 3173 | {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, |
| 3174 | {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54}, {0x1b05, 0x1b33}, |
| 3175 | {0x1b45, 0x1b4b}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, |
| 3176 | {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f}, {0x1c5a, 0x1c7d}, {0x1c80, 0x1c88}, |
| 3177 | {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf1}, |
| 3178 | {0x1cf5, 0x1cf6}, {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, |
| 3179 | {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f5f, 0x1f7d}, |
| 3180 | {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, |
| 3181 | {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, |
| 3182 | {0x1ff6, 0x1ffc}, {0x2090, 0x209c}, {0x210a, 0x2113}, {0x2118, 0x211d}, |
| 3183 | {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x2160, 0x2188}, |
| 3184 | {0x2c00, 0x2c2e}, {0x2c30, 0x2c5e}, {0x2c60, 0x2ce4}, {0x2ceb, 0x2cee}, |
| 3185 | {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d30, 0x2d67}, {0x2d80, 0x2d96}, |
| 3186 | {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, |
| 3187 | {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, |
| 3188 | {0x3005, 0x3007}, {0x3021, 0x3029}, {0x3031, 0x3035}, {0x3038, 0x303c}, |
| 3189 | {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, |
| 3190 | {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31ba}, {0x31f0, 0x31ff}, |
| 3191 | {0x3400, 0x4db5}, {0x4e00, 0x9fef}, {0xa000, 0xa48c}, {0xa4d0, 0xa4fd}, |
| 3192 | {0xa500, 0xa60c}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e}, |
| 3193 | {0xa67f, 0xa69d}, {0xa6a0, 0xa6ef}, {0xa717, 0xa71f}, {0xa722, 0xa788}, |
| 3194 | {0xa78b, 0xa7b9}, {0xa7f7, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, |
| 3195 | {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, |
| 3196 | {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, |
| 3197 | {0xa984, 0xa9b2}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef}, {0xa9fa, 0xa9fe}, |
| 3198 | {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, |
| 3199 | {0xaa7e, 0xaaaf}, {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaadb, 0xaadd}, |
| 3200 | {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, {0xab01, 0xab06}, {0xab09, 0xab0e}, |
| 3201 | {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, |
| 3202 | {0xab5c, 0xab65}, {0xab70, 0xabe2}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, |
| 3203 | {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, |
| 3204 | {0xfb13, 0xfb17}, {0xfb1f, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, |
| 3205 | {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, |
| 3206 | {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, |
| 3207 | {0xfe7f, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xff9d}, |
| 3208 | {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, |
| 3209 | {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, |
| 3210 | {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, |
| 3211 | {0x10140, 0x10174}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, |
| 3212 | {0x1032d, 0x1034a}, {0x10350, 0x10375}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, |
| 3213 | {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, |
| 3214 | {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10600, 0x10736}, |
| 3215 | {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10800, 0x10805}, {0x1080a, 0x10835}, |
| 3216 | {0x10837, 0x10838}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, |
| 3217 | {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, |
| 3218 | {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, |
| 3219 | {0x10a19, 0x10a35}, {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, |
| 3220 | {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, |
| 3221 | {0x10b80, 0x10b91}, {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, |
| 3222 | {0x10d00, 0x10d23}, {0x10f00, 0x10f1c}, {0x10f30, 0x10f45}, {0x11003, 0x11037}, |
| 3223 | {0x11083, 0x110af}, {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11150, 0x11172}, |
| 3224 | {0x11183, 0x111b2}, {0x111c1, 0x111c4}, {0x11200, 0x11211}, {0x11213, 0x1122b}, |
| 3225 | {0x11280, 0x11286}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, |
| 3226 | {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, |
| 3227 | {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1135d, 0x11361}, |
| 3228 | {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x11480, 0x114af}, {0x114c4, 0x114c5}, |
| 3229 | {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, {0x11680, 0x116aa}, |
| 3230 | {0x11700, 0x1171a}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x11a0b, 0x11a32}, |
| 3231 | {0x11a5c, 0x11a83}, {0x11a86, 0x11a89}, {0x11ac0, 0x11af8}, {0x11c00, 0x11c08}, |
| 3232 | {0x11c0a, 0x11c2e}, {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, |
| 3233 | {0x11d0b, 0x11d30}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89}, |
| 3234 | {0x11ee0, 0x11ef2}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, |
| 3235 | {0x13000, 0x1342e}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, |
| 3236 | {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77}, |
| 3237 | {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f44}, {0x16f93, 0x16f9f}, |
| 3238 | {0x16fe0, 0x16fe1}, {0x17000, 0x187f1}, {0x18800, 0x18af2}, {0x1b000, 0x1b11e}, |
| 3239 | {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, |
| 3240 | {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, |
| 3241 | {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bd, 0x1d4c3}, |
| 3242 | {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, |
| 3243 | {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d54a, 0x1d550}, |
| 3244 | {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, |
| 3245 | {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, |
| 3246 | {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, |
| 3247 | {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, |
| 3248 | {0x1ee21, 0x1ee22}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee4d, 0x1ee4f}, |
| 3249 | {0x1ee51, 0x1ee52}, {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, |
| 3250 | {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, |
| 3251 | {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x20000, 0x2a6d6}, |
| 3252 | {0x2a700, 0x2b734}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, |
| 3253 | {0x2f800, 0x2fa1d}}), |
| 3254 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 3255 | return characterClass; |
| 3256 | } |
| 3257 | |
| 3258 | static std::unique_ptr<CharacterClass> createCharacterClass56() |
| 3259 | { |
| 3260 | // Name = XID_Continue, number of codePoints: 128491 |
| 3261 | auto characterClass = std::make_unique<CharacterClass>( |
| 3262 | std::initializer_list<UChar32>({0x5f}), |
| 3263 | std::initializer_list<CharacterRange>({{0x30, 0x39}, {0x41, 0x5a}, {0x61, 0x7a}}), |
| 3264 | std::initializer_list<UChar32>({0x00aa, 0x00b5, 0x00b7, 0x00ba, 0x02ec, 0x02ee, 0x037f, 0x038c, |
| 3265 | 0x0559, 0x05bf, 0x05c7, 0x06ff, 0x07fa, 0x07fd, 0x09b2, 0x09d7, |
| 3266 | 0x09fc, 0x09fe, 0x0a3c, 0x0a51, 0x0a5e, 0x0ad0, 0x0b71, 0x0b9c, |
| 3267 | 0x0bd0, 0x0bd7, 0x0cde, 0x0dbd, 0x0dca, 0x0dd6, 0x0e84, 0x0e8a, |
| 3268 | 0x0e8d, 0x0ea5, 0x0ea7, 0x0ec6, 0x0f00, 0x0f35, 0x0f37, 0x0f39, |
| 3269 | 0x0fc6, 0x10c7, 0x10cd, 0x1258, 0x12c0, 0x17d7, 0x1aa7, 0x1f59, |
| 3270 | 0x1f5b, 0x1f5d, 0x1fbe, 0x2054, 0x2071, 0x207f, 0x20e1, 0x2102, |
| 3271 | 0x2107, 0x2115, 0x2124, 0x2126, 0x2128, 0x214e, 0x2d27, 0x2d2d, |
| 3272 | 0x2d6f, 0xa8fb, 0xfb3e, 0xfe71, 0xfe73, 0xfe77, 0xfe79, 0xfe7b, |
| 3273 | 0xfe7d, 0xff3f, 0x101fd, 0x102e0, 0x10808, 0x1083c, 0x10a3f, 0x10f27, |
| 3274 | 0x11176, 0x111dc, 0x1123e, 0x11288, 0x11350, 0x11357, 0x1145e, 0x114c7, |
| 3275 | 0x11644, 0x118ff, 0x11a47, 0x11a9d, 0x11d3a, 0x1d4a2, 0x1d4bb, 0x1d546, |
| 3276 | 0x1da75, 0x1da84, 0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, 0x1ee42, 0x1ee47, |
| 3277 | 0x1ee49, 0x1ee4b, 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, 0x1ee5d, 0x1ee5f, |
| 3278 | 0x1ee64, 0x1ee7e}), |
| 3279 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00f6}, {0x00f8, 0x02c1}, {0x02c6, 0x02d1}, |
| 3280 | {0x02e0, 0x02e4}, {0x0300, 0x0374}, {0x0376, 0x0377}, {0x037b, 0x037d}, |
| 3281 | {0x0386, 0x038a}, {0x038e, 0x03a1}, {0x03a3, 0x03f5}, {0x03f7, 0x0481}, |
| 3282 | {0x0483, 0x0487}, {0x048a, 0x052f}, {0x0531, 0x0556}, {0x0560, 0x0588}, |
| 3283 | {0x0591, 0x05bd}, {0x05c1, 0x05c2}, {0x05c4, 0x05c5}, {0x05d0, 0x05ea}, |
| 3284 | {0x05ef, 0x05f2}, {0x0610, 0x061a}, {0x0620, 0x0669}, {0x066e, 0x06d3}, |
| 3285 | {0x06d5, 0x06dc}, {0x06df, 0x06e8}, {0x06ea, 0x06fc}, {0x0710, 0x074a}, |
| 3286 | {0x074d, 0x07b1}, {0x07c0, 0x07f5}, {0x0800, 0x082d}, {0x0840, 0x085b}, |
| 3287 | {0x0860, 0x086a}, {0x08a0, 0x08b4}, {0x08b6, 0x08bd}, {0x08d3, 0x08e1}, |
| 3288 | {0x08e3, 0x0963}, {0x0966, 0x096f}, {0x0971, 0x0983}, {0x0985, 0x098c}, |
| 3289 | {0x098f, 0x0990}, {0x0993, 0x09a8}, {0x09aa, 0x09b0}, {0x09b6, 0x09b9}, |
| 3290 | {0x09bc, 0x09c4}, {0x09c7, 0x09c8}, {0x09cb, 0x09ce}, {0x09dc, 0x09dd}, |
| 3291 | {0x09df, 0x09e3}, {0x09e6, 0x09f1}, {0x0a01, 0x0a03}, {0x0a05, 0x0a0a}, |
| 3292 | {0x0a0f, 0x0a10}, {0x0a13, 0x0a28}, {0x0a2a, 0x0a30}, {0x0a32, 0x0a33}, |
| 3293 | {0x0a35, 0x0a36}, {0x0a38, 0x0a39}, {0x0a3e, 0x0a42}, {0x0a47, 0x0a48}, |
| 3294 | {0x0a4b, 0x0a4d}, {0x0a59, 0x0a5c}, {0x0a66, 0x0a75}, {0x0a81, 0x0a83}, |
| 3295 | {0x0a85, 0x0a8d}, {0x0a8f, 0x0a91}, {0x0a93, 0x0aa8}, {0x0aaa, 0x0ab0}, |
| 3296 | {0x0ab2, 0x0ab3}, {0x0ab5, 0x0ab9}, {0x0abc, 0x0ac5}, {0x0ac7, 0x0ac9}, |
| 3297 | {0x0acb, 0x0acd}, {0x0ae0, 0x0ae3}, {0x0ae6, 0x0aef}, {0x0af9, 0x0aff}, |
| 3298 | {0x0b01, 0x0b03}, {0x0b05, 0x0b0c}, {0x0b0f, 0x0b10}, {0x0b13, 0x0b28}, |
| 3299 | {0x0b2a, 0x0b30}, {0x0b32, 0x0b33}, {0x0b35, 0x0b39}, {0x0b3c, 0x0b44}, |
| 3300 | {0x0b47, 0x0b48}, {0x0b4b, 0x0b4d}, {0x0b56, 0x0b57}, {0x0b5c, 0x0b5d}, |
| 3301 | {0x0b5f, 0x0b63}, {0x0b66, 0x0b6f}, {0x0b82, 0x0b83}, {0x0b85, 0x0b8a}, |
| 3302 | {0x0b8e, 0x0b90}, {0x0b92, 0x0b95}, {0x0b99, 0x0b9a}, {0x0b9e, 0x0b9f}, |
| 3303 | {0x0ba3, 0x0ba4}, {0x0ba8, 0x0baa}, {0x0bae, 0x0bb9}, {0x0bbe, 0x0bc2}, |
| 3304 | {0x0bc6, 0x0bc8}, {0x0bca, 0x0bcd}, {0x0be6, 0x0bef}, {0x0c00, 0x0c0c}, |
| 3305 | {0x0c0e, 0x0c10}, {0x0c12, 0x0c28}, {0x0c2a, 0x0c39}, {0x0c3d, 0x0c44}, |
| 3306 | {0x0c46, 0x0c48}, {0x0c4a, 0x0c4d}, {0x0c55, 0x0c56}, {0x0c58, 0x0c5a}, |
| 3307 | {0x0c60, 0x0c63}, {0x0c66, 0x0c6f}, {0x0c80, 0x0c83}, {0x0c85, 0x0c8c}, |
| 3308 | {0x0c8e, 0x0c90}, {0x0c92, 0x0ca8}, {0x0caa, 0x0cb3}, {0x0cb5, 0x0cb9}, |
| 3309 | {0x0cbc, 0x0cc4}, {0x0cc6, 0x0cc8}, {0x0cca, 0x0ccd}, {0x0cd5, 0x0cd6}, |
| 3310 | {0x0ce0, 0x0ce3}, {0x0ce6, 0x0cef}, {0x0cf1, 0x0cf2}, {0x0d00, 0x0d03}, |
| 3311 | {0x0d05, 0x0d0c}, {0x0d0e, 0x0d10}, {0x0d12, 0x0d44}, {0x0d46, 0x0d48}, |
| 3312 | {0x0d4a, 0x0d4e}, {0x0d54, 0x0d57}, {0x0d5f, 0x0d63}, {0x0d66, 0x0d6f}, |
| 3313 | {0x0d7a, 0x0d7f}, {0x0d82, 0x0d83}, {0x0d85, 0x0d96}, {0x0d9a, 0x0db1}, |
| 3314 | {0x0db3, 0x0dbb}, {0x0dc0, 0x0dc6}, {0x0dcf, 0x0dd4}, {0x0dd8, 0x0ddf}, |
| 3315 | {0x0de6, 0x0def}, {0x0df2, 0x0df3}, {0x0e01, 0x0e3a}, {0x0e40, 0x0e4e}, |
| 3316 | {0x0e50, 0x0e59}, {0x0e81, 0x0e82}, {0x0e87, 0x0e88}, {0x0e94, 0x0e97}, |
| 3317 | {0x0e99, 0x0e9f}, {0x0ea1, 0x0ea3}, {0x0eaa, 0x0eab}, {0x0ead, 0x0eb9}, |
| 3318 | {0x0ebb, 0x0ebd}, {0x0ec0, 0x0ec4}, {0x0ec8, 0x0ecd}, {0x0ed0, 0x0ed9}, |
| 3319 | {0x0edc, 0x0edf}, {0x0f18, 0x0f19}, {0x0f20, 0x0f29}, {0x0f3e, 0x0f47}, |
| 3320 | {0x0f49, 0x0f6c}, {0x0f71, 0x0f84}, {0x0f86, 0x0f97}, {0x0f99, 0x0fbc}, |
| 3321 | {0x1000, 0x1049}, {0x1050, 0x109d}, {0x10a0, 0x10c5}, {0x10d0, 0x10fa}, |
| 3322 | {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x125a, 0x125d}, |
| 3323 | {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, |
| 3324 | {0x12b8, 0x12be}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, |
| 3325 | {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x135f}, {0x1369, 0x1371}, |
| 3326 | {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1401, 0x166c}, |
| 3327 | {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, |
| 3328 | {0x1700, 0x170c}, {0x170e, 0x1714}, {0x1720, 0x1734}, {0x1740, 0x1753}, |
| 3329 | {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}, {0x1780, 0x17d3}, |
| 3330 | {0x17dc, 0x17dd}, {0x17e0, 0x17e9}, {0x180b, 0x180d}, {0x1810, 0x1819}, |
| 3331 | {0x1820, 0x1878}, {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, |
| 3332 | {0x1920, 0x192b}, {0x1930, 0x193b}, {0x1946, 0x196d}, {0x1970, 0x1974}, |
| 3333 | {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x1a00, 0x1a1b}, |
| 3334 | {0x1a20, 0x1a5e}, {0x1a60, 0x1a7c}, {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, |
| 3335 | {0x1ab0, 0x1abd}, {0x1b00, 0x1b4b}, {0x1b50, 0x1b59}, {0x1b6b, 0x1b73}, |
| 3336 | {0x1b80, 0x1bf3}, {0x1c00, 0x1c37}, {0x1c40, 0x1c49}, {0x1c4d, 0x1c7d}, |
| 3337 | {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1cd0, 0x1cd2}, |
| 3338 | {0x1cd4, 0x1cf9}, {0x1d00, 0x1df9}, {0x1dfb, 0x1f15}, {0x1f18, 0x1f1d}, |
| 3339 | {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f5f, 0x1f7d}, |
| 3340 | {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, |
| 3341 | {0x1fd0, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, |
| 3342 | {0x1ff6, 0x1ffc}, {0x203f, 0x2040}, {0x2090, 0x209c}, {0x20d0, 0x20dc}, |
| 3343 | {0x20e5, 0x20f0}, {0x210a, 0x2113}, {0x2118, 0x211d}, {0x212a, 0x2139}, |
| 3344 | {0x213c, 0x213f}, {0x2145, 0x2149}, {0x2160, 0x2188}, {0x2c00, 0x2c2e}, |
| 3345 | {0x2c30, 0x2c5e}, {0x2c60, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, |
| 3346 | {0x2d30, 0x2d67}, {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, |
| 3347 | {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, |
| 3348 | {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, |
| 3349 | {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, |
| 3350 | {0x3099, 0x309a}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, |
| 3351 | {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31ba}, {0x31f0, 0x31ff}, |
| 3352 | {0x3400, 0x4db5}, {0x4e00, 0x9fef}, {0xa000, 0xa48c}, {0xa4d0, 0xa4fd}, |
| 3353 | {0xa500, 0xa60c}, {0xa610, 0xa62b}, {0xa640, 0xa66f}, {0xa674, 0xa67d}, |
| 3354 | {0xa67f, 0xa6f1}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7b9}, |
| 3355 | {0xa7f7, 0xa827}, {0xa840, 0xa873}, {0xa880, 0xa8c5}, {0xa8d0, 0xa8d9}, |
| 3356 | {0xa8e0, 0xa8f7}, {0xa8fd, 0xa92d}, {0xa930, 0xa953}, {0xa960, 0xa97c}, |
| 3357 | {0xa980, 0xa9c0}, {0xa9cf, 0xa9d9}, {0xa9e0, 0xa9fe}, {0xaa00, 0xaa36}, |
| 3358 | {0xaa40, 0xaa4d}, {0xaa50, 0xaa59}, {0xaa60, 0xaa76}, {0xaa7a, 0xaac2}, |
| 3359 | {0xaadb, 0xaadd}, {0xaae0, 0xaaef}, {0xaaf2, 0xaaf6}, {0xab01, 0xab06}, |
| 3360 | {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, |
| 3361 | {0xab30, 0xab5a}, {0xab5c, 0xab65}, {0xab70, 0xabea}, {0xabec, 0xabed}, |
| 3362 | {0xabf0, 0xabf9}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, |
| 3363 | {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, |
| 3364 | {0xfb1d, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb40, 0xfb41}, |
| 3365 | {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, |
| 3366 | {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe00, 0xfe0f}, |
| 3367 | {0xfe20, 0xfe2f}, {0xfe33, 0xfe34}, {0xfe4d, 0xfe4f}, {0xfe7f, 0xfefc}, |
| 3368 | {0xff10, 0xff19}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, |
| 3369 | {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, |
| 3370 | {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, |
| 3371 | {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, |
| 3372 | {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, |
| 3373 | {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, |
| 3374 | {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104a0, 0x104a9}, {0x104b0, 0x104d3}, |
| 3375 | {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10600, 0x10736}, |
| 3376 | {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10800, 0x10805}, {0x1080a, 0x10835}, |
| 3377 | {0x10837, 0x10838}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, |
| 3378 | {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, |
| 3379 | {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, |
| 3380 | {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, |
| 3381 | {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae6}, |
| 3382 | {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, |
| 3383 | {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, |
| 3384 | {0x10d30, 0x10d39}, {0x10f00, 0x10f1c}, {0x10f30, 0x10f50}, {0x11000, 0x11046}, |
| 3385 | {0x11066, 0x1106f}, {0x1107f, 0x110ba}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, |
| 3386 | {0x11100, 0x11134}, {0x11136, 0x1113f}, {0x11144, 0x11146}, {0x11150, 0x11173}, |
| 3387 | {0x11180, 0x111c4}, {0x111c9, 0x111cc}, {0x111d0, 0x111da}, {0x11200, 0x11211}, |
| 3388 | {0x11213, 0x11237}, {0x11280, 0x11286}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, |
| 3389 | {0x1129f, 0x112a8}, {0x112b0, 0x112ea}, {0x112f0, 0x112f9}, {0x11300, 0x11303}, |
| 3390 | {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, |
| 3391 | {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, |
| 3392 | {0x1134b, 0x1134d}, {0x1135d, 0x11363}, {0x11366, 0x1136c}, {0x11370, 0x11374}, |
| 3393 | {0x11400, 0x1144a}, {0x11450, 0x11459}, {0x11480, 0x114c5}, {0x114d0, 0x114d9}, |
| 3394 | {0x11580, 0x115b5}, {0x115b8, 0x115c0}, {0x115d8, 0x115dd}, {0x11600, 0x11640}, |
| 3395 | {0x11650, 0x11659}, {0x11680, 0x116b7}, {0x116c0, 0x116c9}, {0x11700, 0x1171a}, |
| 3396 | {0x1171d, 0x1172b}, {0x11730, 0x11739}, {0x11800, 0x1183a}, {0x118a0, 0x118e9}, |
| 3397 | {0x11a00, 0x11a3e}, {0x11a50, 0x11a83}, {0x11a86, 0x11a99}, {0x11ac0, 0x11af8}, |
| 3398 | {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, {0x11c38, 0x11c40}, {0x11c50, 0x11c59}, |
| 3399 | {0x11c72, 0x11c8f}, {0x11c92, 0x11ca7}, {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, |
| 3400 | {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d47}, |
| 3401 | {0x11d50, 0x11d59}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, |
| 3402 | {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, {0x11ee0, 0x11ef6}, |
| 3403 | {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x13000, 0x1342e}, |
| 3404 | {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a60, 0x16a69}, |
| 3405 | {0x16ad0, 0x16aed}, {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, |
| 3406 | {0x16b50, 0x16b59}, {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, |
| 3407 | {0x16f00, 0x16f44}, {0x16f50, 0x16f7e}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, |
| 3408 | {0x17000, 0x187f1}, {0x18800, 0x18af2}, {0x1b000, 0x1b11e}, {0x1b170, 0x1b2fb}, |
| 3409 | {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, |
| 3410 | {0x1bc9d, 0x1bc9e}, {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, |
| 3411 | {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, {0x1d400, 0x1d454}, |
| 3412 | {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, |
| 3413 | {0x1d4ae, 0x1d4b9}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, |
| 3414 | {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, |
| 3415 | {0x1d540, 0x1d544}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, |
| 3416 | {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, |
| 3417 | {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, |
| 3418 | {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36}, |
| 3419 | {0x1da3b, 0x1da6c}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1e000, 0x1e006}, |
| 3420 | {0x1e008, 0x1e018}, {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, |
| 3421 | {0x1e800, 0x1e8c4}, {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94a}, {0x1e950, 0x1e959}, |
| 3422 | {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee29, 0x1ee32}, |
| 3423 | {0x1ee34, 0x1ee37}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee61, 0x1ee62}, |
| 3424 | {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, |
| 3425 | {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, |
| 3426 | {0x1eeab, 0x1eebb}, {0x20000, 0x2a6d6}, {0x2a700, 0x2b734}, {0x2b740, 0x2b81d}, |
| 3427 | {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}, {0xe0100, 0xe01ef}}), |
| 3428 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 3429 | return characterClass; |
| 3430 | } |
| 3431 | |
| 3432 | static std::unique_ptr<CharacterClass> createCharacterClass57() |
| 3433 | { |
| 3434 | // Name = Default_Ignorable_Code_Point, number of codePoints: 4173 |
| 3435 | auto characterClass = std::make_unique<CharacterClass>( |
| 3436 | std::initializer_list<UChar32>({}), |
| 3437 | std::initializer_list<CharacterRange>({}), |
| 3438 | std::initializer_list<UChar32>({0x00ad, 0x034f, 0x061c, 0x3164, 0xfeff, 0xffa0}), |
| 3439 | std::initializer_list<CharacterRange>({{0x115f, 0x1160}, {0x17b4, 0x17b5}, {0x180b, 0x180e}, {0x200b, 0x200f}, |
| 3440 | {0x202a, 0x202e}, {0x2060, 0x206f}, {0xfe00, 0xfe0f}, {0xfff0, 0xfff8}, |
| 3441 | {0x1bca0, 0x1bca3}, {0x1d173, 0x1d17a}, {0xe0000, 0xe0fff}}), |
| 3442 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 3443 | return characterClass; |
| 3444 | } |
| 3445 | |
| 3446 | static std::unique_ptr<CharacterClass> createCharacterClass58() |
| 3447 | { |
| 3448 | // Name = Grapheme_Extend, number of codePoints: 1943 |
| 3449 | auto characterClass = std::make_unique<CharacterClass>( |
| 3450 | std::initializer_list<UChar32>({}), |
| 3451 | std::initializer_list<CharacterRange>({}), |
| 3452 | std::initializer_list<UChar32>({0x05bf, 0x05c7, 0x0670, 0x0711, 0x07fd, 0x093a, 0x093c, 0x094d, |
| 3453 | 0x0981, 0x09bc, 0x09be, 0x09cd, 0x09d7, 0x09fe, 0x0a3c, 0x0a51, |
| 3454 | 0x0a75, 0x0abc, 0x0acd, 0x0b01, 0x0b3c, 0x0b4d, 0x0b82, 0x0bbe, |
| 3455 | 0x0bc0, 0x0bcd, 0x0bd7, 0x0c00, 0x0c04, 0x0c81, 0x0cbc, 0x0cbf, |
| 3456 | 0x0cc2, 0x0cc6, 0x0d3e, 0x0d4d, 0x0d57, 0x0dca, 0x0dcf, 0x0dd6, |
| 3457 | 0x0ddf, 0x0e31, 0x0eb1, 0x0f35, 0x0f37, 0x0f39, 0x0fc6, 0x1082, |
| 3458 | 0x108d, 0x109d, 0x17c6, 0x17dd, 0x18a9, 0x1932, 0x1a1b, 0x1a56, |
| 3459 | 0x1a60, 0x1a62, 0x1a7f, 0x1b34, 0x1b3c, 0x1b42, 0x1be6, 0x1bed, |
| 3460 | 0x1ced, 0x1cf4, 0x200c, 0x2d7f, 0xa802, 0xa806, 0xa80b, 0xa8ff, |
| 3461 | 0xa9b3, 0xa9bc, 0xa9e5, 0xaa43, 0xaa4c, 0xaa7c, 0xaab0, 0xaac1, |
| 3462 | 0xaaf6, 0xabe5, 0xabe8, 0xabed, 0xfb1e, 0x101fd, 0x102e0, 0x10a3f, |
| 3463 | 0x11001, 0x11173, 0x11234, 0x1123e, 0x112df, 0x1133e, 0x11340, 0x11357, |
| 3464 | 0x11446, 0x1145e, 0x114b0, 0x114ba, 0x114bd, 0x115af, 0x1163d, 0x116ab, |
| 3465 | 0x116ad, 0x116b7, 0x11a47, 0x11c3f, 0x11d3a, 0x11d47, 0x11d95, 0x11d97, |
| 3466 | 0x1d165, 0x1da75, 0x1da84}), |
| 3467 | std::initializer_list<CharacterRange>({{0x0300, 0x036f}, {0x0483, 0x0489}, {0x0591, 0x05bd}, {0x05c1, 0x05c2}, |
| 3468 | {0x05c4, 0x05c5}, {0x0610, 0x061a}, {0x064b, 0x065f}, {0x06d6, 0x06dc}, |
| 3469 | {0x06df, 0x06e4}, {0x06e7, 0x06e8}, {0x06ea, 0x06ed}, {0x0730, 0x074a}, |
| 3470 | {0x07a6, 0x07b0}, {0x07eb, 0x07f3}, {0x0816, 0x0819}, {0x081b, 0x0823}, |
| 3471 | {0x0825, 0x0827}, {0x0829, 0x082d}, {0x0859, 0x085b}, {0x08d3, 0x08e1}, |
| 3472 | {0x08e3, 0x0902}, {0x0941, 0x0948}, {0x0951, 0x0957}, {0x0962, 0x0963}, |
| 3473 | {0x09c1, 0x09c4}, {0x09e2, 0x09e3}, {0x0a01, 0x0a02}, {0x0a41, 0x0a42}, |
| 3474 | {0x0a47, 0x0a48}, {0x0a4b, 0x0a4d}, {0x0a70, 0x0a71}, {0x0a81, 0x0a82}, |
| 3475 | {0x0ac1, 0x0ac5}, {0x0ac7, 0x0ac8}, {0x0ae2, 0x0ae3}, {0x0afa, 0x0aff}, |
| 3476 | {0x0b3e, 0x0b3f}, {0x0b41, 0x0b44}, {0x0b56, 0x0b57}, {0x0b62, 0x0b63}, |
| 3477 | {0x0c3e, 0x0c40}, {0x0c46, 0x0c48}, {0x0c4a, 0x0c4d}, {0x0c55, 0x0c56}, |
| 3478 | {0x0c62, 0x0c63}, {0x0ccc, 0x0ccd}, {0x0cd5, 0x0cd6}, {0x0ce2, 0x0ce3}, |
| 3479 | {0x0d00, 0x0d01}, {0x0d3b, 0x0d3c}, {0x0d41, 0x0d44}, {0x0d62, 0x0d63}, |
| 3480 | {0x0dd2, 0x0dd4}, {0x0e34, 0x0e3a}, {0x0e47, 0x0e4e}, {0x0eb4, 0x0eb9}, |
| 3481 | {0x0ebb, 0x0ebc}, {0x0ec8, 0x0ecd}, {0x0f18, 0x0f19}, {0x0f71, 0x0f7e}, |
| 3482 | {0x0f80, 0x0f84}, {0x0f86, 0x0f87}, {0x0f8d, 0x0f97}, {0x0f99, 0x0fbc}, |
| 3483 | {0x102d, 0x1030}, {0x1032, 0x1037}, {0x1039, 0x103a}, {0x103d, 0x103e}, |
| 3484 | {0x1058, 0x1059}, {0x105e, 0x1060}, {0x1071, 0x1074}, {0x1085, 0x1086}, |
| 3485 | {0x135d, 0x135f}, {0x1712, 0x1714}, {0x1732, 0x1734}, {0x1752, 0x1753}, |
| 3486 | {0x1772, 0x1773}, {0x17b4, 0x17b5}, {0x17b7, 0x17bd}, {0x17c9, 0x17d3}, |
| 3487 | {0x180b, 0x180d}, {0x1885, 0x1886}, {0x1920, 0x1922}, {0x1927, 0x1928}, |
| 3488 | {0x1939, 0x193b}, {0x1a17, 0x1a18}, {0x1a58, 0x1a5e}, {0x1a65, 0x1a6c}, |
| 3489 | {0x1a73, 0x1a7c}, {0x1ab0, 0x1abe}, {0x1b00, 0x1b03}, {0x1b36, 0x1b3a}, |
| 3490 | {0x1b6b, 0x1b73}, {0x1b80, 0x1b81}, {0x1ba2, 0x1ba5}, {0x1ba8, 0x1ba9}, |
| 3491 | {0x1bab, 0x1bad}, {0x1be8, 0x1be9}, {0x1bef, 0x1bf1}, {0x1c2c, 0x1c33}, |
| 3492 | {0x1c36, 0x1c37}, {0x1cd0, 0x1cd2}, {0x1cd4, 0x1ce0}, {0x1ce2, 0x1ce8}, |
| 3493 | {0x1cf8, 0x1cf9}, {0x1dc0, 0x1df9}, {0x1dfb, 0x1dff}, {0x20d0, 0x20f0}, |
| 3494 | {0x2cef, 0x2cf1}, {0x2de0, 0x2dff}, {0x302a, 0x302f}, {0x3099, 0x309a}, |
| 3495 | {0xa66f, 0xa672}, {0xa674, 0xa67d}, {0xa69e, 0xa69f}, {0xa6f0, 0xa6f1}, |
| 3496 | {0xa825, 0xa826}, {0xa8c4, 0xa8c5}, {0xa8e0, 0xa8f1}, {0xa926, 0xa92d}, |
| 3497 | {0xa947, 0xa951}, {0xa980, 0xa982}, {0xa9b6, 0xa9b9}, {0xaa29, 0xaa2e}, |
| 3498 | {0xaa31, 0xaa32}, {0xaa35, 0xaa36}, {0xaab2, 0xaab4}, {0xaab7, 0xaab8}, |
| 3499 | {0xaabe, 0xaabf}, {0xaaec, 0xaaed}, {0xfe00, 0xfe0f}, {0xfe20, 0xfe2f}, |
| 3500 | {0xff9e, 0xff9f}, {0x10376, 0x1037a}, {0x10a01, 0x10a03}, {0x10a05, 0x10a06}, |
| 3501 | {0x10a0c, 0x10a0f}, {0x10a38, 0x10a3a}, {0x10ae5, 0x10ae6}, {0x10d24, 0x10d27}, |
| 3502 | {0x10f46, 0x10f50}, {0x11038, 0x11046}, {0x1107f, 0x11081}, {0x110b3, 0x110b6}, |
| 3503 | {0x110b9, 0x110ba}, {0x11100, 0x11102}, {0x11127, 0x1112b}, {0x1112d, 0x11134}, |
| 3504 | {0x11180, 0x11181}, {0x111b6, 0x111be}, {0x111c9, 0x111cc}, {0x1122f, 0x11231}, |
| 3505 | {0x11236, 0x11237}, {0x112e3, 0x112ea}, {0x11300, 0x11301}, {0x1133b, 0x1133c}, |
| 3506 | {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11438, 0x1143f}, {0x11442, 0x11444}, |
| 3507 | {0x114b3, 0x114b8}, {0x114bf, 0x114c0}, {0x114c2, 0x114c3}, {0x115b2, 0x115b5}, |
| 3508 | {0x115bc, 0x115bd}, {0x115bf, 0x115c0}, {0x115dc, 0x115dd}, {0x11633, 0x1163a}, |
| 3509 | {0x1163f, 0x11640}, {0x116b0, 0x116b5}, {0x1171d, 0x1171f}, {0x11722, 0x11725}, |
| 3510 | {0x11727, 0x1172b}, {0x1182f, 0x11837}, {0x11839, 0x1183a}, {0x11a01, 0x11a0a}, |
| 3511 | {0x11a33, 0x11a38}, {0x11a3b, 0x11a3e}, {0x11a51, 0x11a56}, {0x11a59, 0x11a5b}, |
| 3512 | {0x11a8a, 0x11a96}, {0x11a98, 0x11a99}, {0x11c30, 0x11c36}, {0x11c38, 0x11c3d}, |
| 3513 | {0x11c92, 0x11ca7}, {0x11caa, 0x11cb0}, {0x11cb2, 0x11cb3}, {0x11cb5, 0x11cb6}, |
| 3514 | {0x11d31, 0x11d36}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d45}, {0x11d90, 0x11d91}, |
| 3515 | {0x11ef3, 0x11ef4}, {0x16af0, 0x16af4}, {0x16b30, 0x16b36}, {0x16f8f, 0x16f92}, |
| 3516 | {0x1bc9d, 0x1bc9e}, {0x1d167, 0x1d169}, {0x1d16e, 0x1d172}, {0x1d17b, 0x1d182}, |
| 3517 | {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244}, {0x1da00, 0x1da36}, |
| 3518 | {0x1da3b, 0x1da6c}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1e000, 0x1e006}, |
| 3519 | {0x1e008, 0x1e018}, {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, |
| 3520 | {0x1e8d0, 0x1e8d6}, {0x1e944, 0x1e94a}, {0xe0020, 0xe007f}, {0xe0100, 0xe01ef}}), |
| 3521 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 3522 | return characterClass; |
| 3523 | } |
| 3524 | |
| 3525 | static std::unique_ptr<CharacterClass> createCharacterClass59() |
| 3526 | { |
| 3527 | // Name = Grapheme_Base, number of codePoints: 135374 |
| 3528 | auto characterClass = std::make_unique<CharacterClass>( |
| 3529 | std::initializer_list<UChar32>({}), |
| 3530 | std::initializer_list<CharacterRange>({{0x20, 0x7e}}), |
| 3531 | std::initializer_list<UChar32>({0x038c, 0x05be, 0x05c0, 0x05c3, 0x05c6, 0x061b, 0x06de, 0x06e9, |
| 3532 | 0x0710, 0x07b1, 0x081a, 0x0824, 0x0828, 0x085e, 0x093b, 0x09b2, |
| 3533 | 0x09bd, 0x09ce, 0x0a03, 0x0a5e, 0x0a76, 0x0a83, 0x0ac9, 0x0ad0, |
| 3534 | 0x0af9, 0x0b3d, 0x0b40, 0x0b83, 0x0b9c, 0x0bbf, 0x0bd0, 0x0c3d, |
| 3535 | 0x0cde, 0x0d3d, 0x0dbd, 0x0e84, 0x0e8a, 0x0e8d, 0x0ea5, 0x0ea7, |
| 3536 | 0x0ebd, 0x0ec6, 0x0f36, 0x0f38, 0x0f7f, 0x0f85, 0x1031, 0x1038, |
| 3537 | 0x10c7, 0x10cd, 0x1258, 0x12c0, 0x17b6, 0x18aa, 0x1940, 0x1a57, |
| 3538 | 0x1a61, 0x1b35, 0x1b3b, 0x1baa, 0x1be7, 0x1bee, 0x1cd3, 0x1ce1, |
| 3539 | 0x1f59, 0x1f5b, 0x1f5d, 0x2d27, 0x2d2d, 0xa673, 0xaa4d, 0xaab1, |
| 3540 | 0xaac0, 0xaac2, 0xfb1d, 0xfb3e, 0x101a0, 0x1056f, 0x10808, 0x1083c, |
| 3541 | 0x1093f, 0x11000, 0x1112c, 0x111cd, 0x11235, 0x11288, 0x1133d, 0x1133f, |
| 3542 | 0x11350, 0x11445, 0x1145b, 0x1145d, 0x114b9, 0x114be, 0x114c1, 0x115be, |
| 3543 | 0x1163e, 0x116ac, 0x116b6, 0x11726, 0x11838, 0x1183b, 0x118ff, 0x11a00, |
| 3544 | 0x11a50, 0x11a97, 0x11c3e, 0x11ca9, 0x11cb1, 0x11cb4, 0x11d46, 0x11d96, |
| 3545 | 0x11d98, 0x16af5, 0x1bc9c, 0x1bc9f, 0x1d166, 0x1d245, 0x1d4a2, 0x1d4bb, |
| 3546 | 0x1d546, 0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, 0x1ee42, 0x1ee47, 0x1ee49, |
| 3547 | 0x1ee4b, 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, 0x1ee5d, 0x1ee5f, 0x1ee64, |
| 3548 | 0x1ee7e, 0x1f97a}), |
| 3549 | std::initializer_list<CharacterRange>({{0x00a0, 0x00ac}, {0x00ae, 0x02ff}, {0x0370, 0x0377}, {0x037a, 0x037f}, |
| 3550 | {0x0384, 0x038a}, {0x038e, 0x03a1}, {0x03a3, 0x0482}, {0x048a, 0x052f}, |
| 3551 | {0x0531, 0x0556}, {0x0559, 0x058a}, {0x058d, 0x058f}, {0x05d0, 0x05ea}, |
| 3552 | {0x05ef, 0x05f4}, {0x0606, 0x060f}, {0x061e, 0x064a}, {0x0660, 0x066f}, |
| 3553 | {0x0671, 0x06d5}, {0x06e5, 0x06e6}, {0x06ee, 0x070d}, {0x0712, 0x072f}, |
| 3554 | {0x074d, 0x07a5}, {0x07c0, 0x07ea}, {0x07f4, 0x07fa}, {0x07fe, 0x0815}, |
| 3555 | {0x0830, 0x083e}, {0x0840, 0x0858}, {0x0860, 0x086a}, {0x08a0, 0x08b4}, |
| 3556 | {0x08b6, 0x08bd}, {0x0903, 0x0939}, {0x093d, 0x0940}, {0x0949, 0x094c}, |
| 3557 | {0x094e, 0x0950}, {0x0958, 0x0961}, {0x0964, 0x0980}, {0x0982, 0x0983}, |
| 3558 | {0x0985, 0x098c}, {0x098f, 0x0990}, {0x0993, 0x09a8}, {0x09aa, 0x09b0}, |
| 3559 | {0x09b6, 0x09b9}, {0x09bf, 0x09c0}, {0x09c7, 0x09c8}, {0x09cb, 0x09cc}, |
| 3560 | {0x09dc, 0x09dd}, {0x09df, 0x09e1}, {0x09e6, 0x09fd}, {0x0a05, 0x0a0a}, |
| 3561 | {0x0a0f, 0x0a10}, {0x0a13, 0x0a28}, {0x0a2a, 0x0a30}, {0x0a32, 0x0a33}, |
| 3562 | {0x0a35, 0x0a36}, {0x0a38, 0x0a39}, {0x0a3e, 0x0a40}, {0x0a59, 0x0a5c}, |
| 3563 | {0x0a66, 0x0a6f}, {0x0a72, 0x0a74}, {0x0a85, 0x0a8d}, {0x0a8f, 0x0a91}, |
| 3564 | {0x0a93, 0x0aa8}, {0x0aaa, 0x0ab0}, {0x0ab2, 0x0ab3}, {0x0ab5, 0x0ab9}, |
| 3565 | {0x0abd, 0x0ac0}, {0x0acb, 0x0acc}, {0x0ae0, 0x0ae1}, {0x0ae6, 0x0af1}, |
| 3566 | {0x0b02, 0x0b03}, {0x0b05, 0x0b0c}, {0x0b0f, 0x0b10}, {0x0b13, 0x0b28}, |
| 3567 | {0x0b2a, 0x0b30}, {0x0b32, 0x0b33}, {0x0b35, 0x0b39}, {0x0b47, 0x0b48}, |
| 3568 | {0x0b4b, 0x0b4c}, {0x0b5c, 0x0b5d}, {0x0b5f, 0x0b61}, {0x0b66, 0x0b77}, |
| 3569 | {0x0b85, 0x0b8a}, {0x0b8e, 0x0b90}, {0x0b92, 0x0b95}, {0x0b99, 0x0b9a}, |
| 3570 | {0x0b9e, 0x0b9f}, {0x0ba3, 0x0ba4}, {0x0ba8, 0x0baa}, {0x0bae, 0x0bb9}, |
| 3571 | {0x0bc1, 0x0bc2}, {0x0bc6, 0x0bc8}, {0x0bca, 0x0bcc}, {0x0be6, 0x0bfa}, |
| 3572 | {0x0c01, 0x0c03}, {0x0c05, 0x0c0c}, {0x0c0e, 0x0c10}, {0x0c12, 0x0c28}, |
| 3573 | {0x0c2a, 0x0c39}, {0x0c41, 0x0c44}, {0x0c58, 0x0c5a}, {0x0c60, 0x0c61}, |
| 3574 | {0x0c66, 0x0c6f}, {0x0c78, 0x0c80}, {0x0c82, 0x0c8c}, {0x0c8e, 0x0c90}, |
| 3575 | {0x0c92, 0x0ca8}, {0x0caa, 0x0cb3}, {0x0cb5, 0x0cb9}, {0x0cbd, 0x0cbe}, |
| 3576 | {0x0cc0, 0x0cc1}, {0x0cc3, 0x0cc4}, {0x0cc7, 0x0cc8}, {0x0cca, 0x0ccb}, |
| 3577 | {0x0ce0, 0x0ce1}, {0x0ce6, 0x0cef}, {0x0cf1, 0x0cf2}, {0x0d02, 0x0d03}, |
| 3578 | {0x0d05, 0x0d0c}, {0x0d0e, 0x0d10}, {0x0d12, 0x0d3a}, {0x0d3f, 0x0d40}, |
| 3579 | {0x0d46, 0x0d48}, {0x0d4a, 0x0d4c}, {0x0d4e, 0x0d4f}, {0x0d54, 0x0d56}, |
| 3580 | {0x0d58, 0x0d61}, {0x0d66, 0x0d7f}, {0x0d82, 0x0d83}, {0x0d85, 0x0d96}, |
| 3581 | {0x0d9a, 0x0db1}, {0x0db3, 0x0dbb}, {0x0dc0, 0x0dc6}, {0x0dd0, 0x0dd1}, |
| 3582 | {0x0dd8, 0x0dde}, {0x0de6, 0x0def}, {0x0df2, 0x0df4}, {0x0e01, 0x0e30}, |
| 3583 | {0x0e32, 0x0e33}, {0x0e3f, 0x0e46}, {0x0e4f, 0x0e5b}, {0x0e81, 0x0e82}, |
| 3584 | {0x0e87, 0x0e88}, {0x0e94, 0x0e97}, {0x0e99, 0x0e9f}, {0x0ea1, 0x0ea3}, |
| 3585 | {0x0eaa, 0x0eab}, {0x0ead, 0x0eb0}, {0x0eb2, 0x0eb3}, {0x0ec0, 0x0ec4}, |
| 3586 | {0x0ed0, 0x0ed9}, {0x0edc, 0x0edf}, {0x0f00, 0x0f17}, {0x0f1a, 0x0f34}, |
| 3587 | {0x0f3a, 0x0f47}, {0x0f49, 0x0f6c}, {0x0f88, 0x0f8c}, {0x0fbe, 0x0fc5}, |
| 3588 | {0x0fc7, 0x0fcc}, {0x0fce, 0x0fda}, {0x1000, 0x102c}, {0x103b, 0x103c}, |
| 3589 | {0x103f, 0x1057}, {0x105a, 0x105d}, {0x1061, 0x1070}, {0x1075, 0x1081}, |
| 3590 | {0x1083, 0x1084}, {0x1087, 0x108c}, {0x108e, 0x109c}, {0x109e, 0x10c5}, |
| 3591 | {0x10d0, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x125a, 0x125d}, |
| 3592 | {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, |
| 3593 | {0x12b8, 0x12be}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, |
| 3594 | {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1360, 0x137c}, {0x1380, 0x1399}, |
| 3595 | {0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0x1400, 0x169c}, {0x16a0, 0x16f8}, |
| 3596 | {0x1700, 0x170c}, {0x170e, 0x1711}, {0x1720, 0x1731}, {0x1735, 0x1736}, |
| 3597 | {0x1740, 0x1751}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, |
| 3598 | {0x17be, 0x17c5}, {0x17c7, 0x17c8}, {0x17d4, 0x17dc}, {0x17e0, 0x17e9}, |
| 3599 | {0x17f0, 0x17f9}, {0x1800, 0x180a}, {0x1810, 0x1819}, {0x1820, 0x1878}, |
| 3600 | {0x1880, 0x1884}, {0x1887, 0x18a8}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, |
| 3601 | {0x1923, 0x1926}, {0x1929, 0x192b}, {0x1930, 0x1931}, {0x1933, 0x1938}, |
| 3602 | {0x1944, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, |
| 3603 | {0x19d0, 0x19da}, {0x19de, 0x1a16}, {0x1a19, 0x1a1a}, {0x1a1e, 0x1a55}, |
| 3604 | {0x1a63, 0x1a64}, {0x1a6d, 0x1a72}, {0x1a80, 0x1a89}, {0x1a90, 0x1a99}, |
| 3605 | {0x1aa0, 0x1aad}, {0x1b04, 0x1b33}, {0x1b3d, 0x1b41}, {0x1b43, 0x1b4b}, |
| 3606 | {0x1b50, 0x1b6a}, {0x1b74, 0x1b7c}, {0x1b82, 0x1ba1}, {0x1ba6, 0x1ba7}, |
| 3607 | {0x1bae, 0x1be5}, {0x1bea, 0x1bec}, {0x1bf2, 0x1bf3}, {0x1bfc, 0x1c2b}, |
| 3608 | {0x1c34, 0x1c35}, {0x1c3b, 0x1c49}, {0x1c4d, 0x1c88}, {0x1c90, 0x1cba}, |
| 3609 | {0x1cbd, 0x1cc7}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf7}, |
| 3610 | {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, |
| 3611 | {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, |
| 3612 | {0x1fb6, 0x1fc4}, {0x1fc6, 0x1fd3}, {0x1fd6, 0x1fdb}, {0x1fdd, 0x1fef}, |
| 3613 | {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffe}, {0x2000, 0x200a}, {0x2010, 0x2027}, |
| 3614 | {0x202f, 0x205f}, {0x2070, 0x2071}, {0x2074, 0x208e}, {0x2090, 0x209c}, |
| 3615 | {0x20a0, 0x20bf}, {0x2100, 0x218b}, {0x2190, 0x2426}, {0x2440, 0x244a}, |
| 3616 | {0x2460, 0x2b73}, {0x2b76, 0x2b95}, {0x2b98, 0x2bc8}, {0x2bca, 0x2bfe}, |
| 3617 | {0x2c00, 0x2c2e}, {0x2c30, 0x2c5e}, {0x2c60, 0x2cee}, {0x2cf2, 0x2cf3}, |
| 3618 | {0x2cf9, 0x2d25}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d70}, {0x2d80, 0x2d96}, |
| 3619 | {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, |
| 3620 | {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, |
| 3621 | {0x2e00, 0x2e4e}, {0x2e80, 0x2e99}, {0x2e9b, 0x2ef3}, {0x2f00, 0x2fd5}, |
| 3622 | {0x2ff0, 0x2ffb}, {0x3000, 0x3029}, {0x3030, 0x303f}, {0x3041, 0x3096}, |
| 3623 | {0x309b, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x3190, 0x31ba}, |
| 3624 | {0x31c0, 0x31e3}, {0x31f0, 0x321e}, {0x3220, 0x32fe}, {0x3300, 0x4db5}, |
| 3625 | {0x4dc0, 0x9fef}, {0xa000, 0xa48c}, {0xa490, 0xa4c6}, {0xa4d0, 0xa62b}, |
| 3626 | {0xa640, 0xa66e}, {0xa67e, 0xa69d}, {0xa6a0, 0xa6ef}, {0xa6f2, 0xa6f7}, |
| 3627 | {0xa700, 0xa7b9}, {0xa7f7, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, |
| 3628 | {0xa80c, 0xa824}, {0xa827, 0xa82b}, {0xa830, 0xa839}, {0xa840, 0xa877}, |
| 3629 | {0xa880, 0xa8c3}, {0xa8ce, 0xa8d9}, {0xa8f2, 0xa8fe}, {0xa900, 0xa925}, |
| 3630 | {0xa92e, 0xa946}, {0xa952, 0xa953}, {0xa95f, 0xa97c}, {0xa983, 0xa9b2}, |
| 3631 | {0xa9b4, 0xa9b5}, {0xa9ba, 0xa9bb}, {0xa9bd, 0xa9cd}, {0xa9cf, 0xa9d9}, |
| 3632 | {0xa9de, 0xa9e4}, {0xa9e6, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa2f, 0xaa30}, |
| 3633 | {0xaa33, 0xaa34}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa50, 0xaa59}, |
| 3634 | {0xaa5c, 0xaa7b}, {0xaa7d, 0xaaaf}, {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, |
| 3635 | {0xaadb, 0xaaeb}, {0xaaee, 0xaaf5}, {0xab01, 0xab06}, {0xab09, 0xab0e}, |
| 3636 | {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab65}, |
| 3637 | {0xab70, 0xabe4}, {0xabe6, 0xabe7}, {0xabe9, 0xabec}, {0xabf0, 0xabf9}, |
| 3638 | {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, |
| 3639 | {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1f, 0xfb36}, |
| 3640 | {0xfb38, 0xfb3c}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbc1}, |
| 3641 | {0xfbd3, 0xfd3f}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfd}, |
| 3642 | {0xfe10, 0xfe19}, {0xfe30, 0xfe52}, {0xfe54, 0xfe66}, {0xfe68, 0xfe6b}, |
| 3643 | {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, {0xff01, 0xff9d}, {0xffa0, 0xffbe}, |
| 3644 | {0xffc2, 0xffc7}, {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, |
| 3645 | {0xffe0, 0xffe6}, {0xffe8, 0xffee}, {0xfffc, 0xfffd}, {0x10000, 0x1000b}, |
| 3646 | {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, |
| 3647 | {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10100, 0x10102}, {0x10107, 0x10133}, |
| 3648 | {0x10137, 0x1018e}, {0x10190, 0x1019b}, {0x101d0, 0x101fc}, {0x10280, 0x1029c}, |
| 3649 | {0x102a0, 0x102d0}, {0x102e1, 0x102fb}, {0x10300, 0x10323}, {0x1032d, 0x1034a}, |
| 3650 | {0x10350, 0x10375}, {0x10380, 0x1039d}, {0x1039f, 0x103c3}, {0x103c8, 0x103d5}, |
| 3651 | {0x10400, 0x1049d}, {0x104a0, 0x104a9}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, |
| 3652 | {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10600, 0x10736}, {0x10740, 0x10755}, |
| 3653 | {0x10760, 0x10767}, {0x10800, 0x10805}, {0x1080a, 0x10835}, {0x10837, 0x10838}, |
| 3654 | {0x1083f, 0x10855}, {0x10857, 0x1089e}, {0x108a7, 0x108af}, {0x108e0, 0x108f2}, |
| 3655 | {0x108f4, 0x108f5}, {0x108fb, 0x1091b}, {0x1091f, 0x10939}, {0x10980, 0x109b7}, |
| 3656 | {0x109bc, 0x109cf}, {0x109d2, 0x10a00}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, |
| 3657 | {0x10a19, 0x10a35}, {0x10a40, 0x10a48}, {0x10a50, 0x10a58}, {0x10a60, 0x10a9f}, |
| 3658 | {0x10ac0, 0x10ae4}, {0x10aeb, 0x10af6}, {0x10b00, 0x10b35}, {0x10b39, 0x10b55}, |
| 3659 | {0x10b58, 0x10b72}, {0x10b78, 0x10b91}, {0x10b99, 0x10b9c}, {0x10ba9, 0x10baf}, |
| 3660 | {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10cfa, 0x10d23}, |
| 3661 | {0x10d30, 0x10d39}, {0x10e60, 0x10e7e}, {0x10f00, 0x10f27}, {0x10f30, 0x10f45}, |
| 3662 | {0x10f51, 0x10f59}, {0x11002, 0x11037}, {0x11047, 0x1104d}, {0x11052, 0x1106f}, |
| 3663 | {0x11082, 0x110b2}, {0x110b7, 0x110b8}, {0x110bb, 0x110bc}, {0x110be, 0x110c1}, |
| 3664 | {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, {0x11103, 0x11126}, {0x11136, 0x11146}, |
| 3665 | {0x11150, 0x11172}, {0x11174, 0x11176}, {0x11182, 0x111b5}, {0x111bf, 0x111c8}, |
| 3666 | {0x111d0, 0x111df}, {0x111e1, 0x111f4}, {0x11200, 0x11211}, {0x11213, 0x1122e}, |
| 3667 | {0x11232, 0x11233}, {0x11238, 0x1123d}, {0x11280, 0x11286}, {0x1128a, 0x1128d}, |
| 3668 | {0x1128f, 0x1129d}, {0x1129f, 0x112a9}, {0x112b0, 0x112de}, {0x112e0, 0x112e2}, |
| 3669 | {0x112f0, 0x112f9}, {0x11302, 0x11303}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, |
| 3670 | {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, |
| 3671 | {0x11341, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, {0x1135d, 0x11363}, |
| 3672 | {0x11400, 0x11437}, {0x11440, 0x11441}, {0x11447, 0x11459}, {0x11480, 0x114af}, |
| 3673 | {0x114b1, 0x114b2}, {0x114bb, 0x114bc}, {0x114c4, 0x114c7}, {0x114d0, 0x114d9}, |
| 3674 | {0x11580, 0x115ae}, {0x115b0, 0x115b1}, {0x115b8, 0x115bb}, {0x115c1, 0x115db}, |
| 3675 | {0x11600, 0x11632}, {0x1163b, 0x1163c}, {0x11641, 0x11644}, {0x11650, 0x11659}, |
| 3676 | {0x11660, 0x1166c}, {0x11680, 0x116aa}, {0x116ae, 0x116af}, {0x116c0, 0x116c9}, |
| 3677 | {0x11700, 0x1171a}, {0x11720, 0x11721}, {0x11730, 0x1173f}, {0x11800, 0x1182e}, |
| 3678 | {0x118a0, 0x118f2}, {0x11a0b, 0x11a32}, {0x11a39, 0x11a3a}, {0x11a3f, 0x11a46}, |
| 3679 | {0x11a57, 0x11a58}, {0x11a5c, 0x11a83}, {0x11a86, 0x11a89}, {0x11a9a, 0x11aa2}, |
| 3680 | {0x11ac0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2f}, {0x11c40, 0x11c45}, |
| 3681 | {0x11c50, 0x11c6c}, {0x11c70, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, |
| 3682 | {0x11d0b, 0x11d30}, {0x11d50, 0x11d59}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, |
| 3683 | {0x11d6a, 0x11d8e}, {0x11d93, 0x11d94}, {0x11da0, 0x11da9}, {0x11ee0, 0x11ef2}, |
| 3684 | {0x11ef5, 0x11ef8}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12470, 0x12474}, |
| 3685 | {0x12480, 0x12543}, {0x13000, 0x1342e}, {0x14400, 0x14646}, {0x16800, 0x16a38}, |
| 3686 | {0x16a40, 0x16a5e}, {0x16a60, 0x16a69}, {0x16a6e, 0x16a6f}, {0x16ad0, 0x16aed}, |
| 3687 | {0x16b00, 0x16b2f}, {0x16b37, 0x16b45}, {0x16b50, 0x16b59}, {0x16b5b, 0x16b61}, |
| 3688 | {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e9a}, {0x16f00, 0x16f44}, |
| 3689 | {0x16f50, 0x16f7e}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x17000, 0x187f1}, |
| 3690 | {0x18800, 0x18af2}, {0x1b000, 0x1b11e}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, |
| 3691 | {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d000, 0x1d0f5}, |
| 3692 | {0x1d100, 0x1d126}, {0x1d129, 0x1d164}, {0x1d16a, 0x1d16d}, {0x1d183, 0x1d184}, |
| 3693 | {0x1d18c, 0x1d1a9}, {0x1d1ae, 0x1d1e8}, {0x1d200, 0x1d241}, {0x1d2e0, 0x1d2f3}, |
| 3694 | {0x1d300, 0x1d356}, {0x1d360, 0x1d378}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, |
| 3695 | {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, |
| 3696 | {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, |
| 3697 | {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, |
| 3698 | {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d7cb}, {0x1d7ce, 0x1d9ff}, |
| 3699 | {0x1da37, 0x1da3a}, {0x1da6d, 0x1da74}, {0x1da76, 0x1da83}, {0x1da85, 0x1da8b}, |
| 3700 | {0x1e800, 0x1e8c4}, {0x1e8c7, 0x1e8cf}, {0x1e900, 0x1e943}, {0x1e950, 0x1e959}, |
| 3701 | {0x1e95e, 0x1e95f}, {0x1ec71, 0x1ecb4}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, |
| 3702 | {0x1ee21, 0x1ee22}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee4d, 0x1ee4f}, |
| 3703 | {0x1ee51, 0x1ee52}, {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, |
| 3704 | {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, |
| 3705 | {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1eef0, 0x1eef1}, |
| 3706 | {0x1f000, 0x1f02b}, {0x1f030, 0x1f093}, {0x1f0a0, 0x1f0ae}, {0x1f0b1, 0x1f0bf}, |
| 3707 | {0x1f0c1, 0x1f0cf}, {0x1f0d1, 0x1f0f5}, {0x1f100, 0x1f10c}, {0x1f110, 0x1f16b}, |
| 3708 | {0x1f170, 0x1f1ac}, {0x1f1e6, 0x1f202}, {0x1f210, 0x1f23b}, {0x1f240, 0x1f248}, |
| 3709 | {0x1f250, 0x1f251}, {0x1f260, 0x1f265}, {0x1f300, 0x1f6d4}, {0x1f6e0, 0x1f6ec}, |
| 3710 | {0x1f6f0, 0x1f6f9}, {0x1f700, 0x1f773}, {0x1f780, 0x1f7d8}, {0x1f800, 0x1f80b}, |
| 3711 | {0x1f810, 0x1f847}, {0x1f850, 0x1f859}, {0x1f860, 0x1f887}, {0x1f890, 0x1f8ad}, |
| 3712 | {0x1f900, 0x1f90b}, {0x1f910, 0x1f93e}, {0x1f940, 0x1f970}, {0x1f973, 0x1f976}, |
| 3713 | {0x1f97c, 0x1f9a2}, {0x1f9b0, 0x1f9b9}, {0x1f9c0, 0x1f9c2}, {0x1f9d0, 0x1f9ff}, |
| 3714 | {0x1fa60, 0x1fa6d}, {0x20000, 0x2a6d6}, {0x2a700, 0x2b734}, {0x2b740, 0x2b81d}, |
| 3715 | {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}}), |
| 3716 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 3717 | return characterClass; |
| 3718 | } |
| 3719 | |
| 3720 | static std::unique_ptr<CharacterClass> createCharacterClass60() |
| 3721 | { |
| 3722 | // Name = Changes_When_NFKC_Casefolded, number of codePoints: 10306 |
| 3723 | auto characterClass = std::make_unique<CharacterClass>( |
| 3724 | std::initializer_list<UChar32>({}), |
| 3725 | std::initializer_list<CharacterRange>({{0x41, 0x5a}}), |
| 3726 | std::initializer_list<UChar32>({0x00a0, 0x00a8, 0x00aa, 0x00ad, 0x00af, 0x0100, 0x0102, 0x0104, |
| 3727 | 0x0106, 0x0108, 0x010a, 0x010c, 0x010e, 0x0110, 0x0112, 0x0114, |
| 3728 | 0x0116, 0x0118, 0x011a, 0x011c, 0x011e, 0x0120, 0x0122, 0x0124, |
| 3729 | 0x0126, 0x0128, 0x012a, 0x012c, 0x012e, 0x0130, 0x0136, 0x0139, |
| 3730 | 0x013b, 0x013d, 0x0143, 0x0145, 0x0147, 0x014c, 0x014e, 0x0150, |
| 3731 | 0x0152, 0x0154, 0x0156, 0x0158, 0x015a, 0x015c, 0x015e, 0x0160, |
| 3732 | 0x0162, 0x0164, 0x0166, 0x0168, 0x016a, 0x016c, 0x016e, 0x0170, |
| 3733 | 0x0172, 0x0174, 0x0176, 0x017b, 0x017d, 0x017f, 0x0184, 0x01a2, |
| 3734 | 0x01a4, 0x01a9, 0x01ac, 0x01b5, 0x01bc, 0x01cf, 0x01d1, 0x01d3, |
| 3735 | 0x01d5, 0x01d7, 0x01d9, 0x01db, 0x01de, 0x01e0, 0x01e2, 0x01e4, |
| 3736 | 0x01e6, 0x01e8, 0x01ea, 0x01ec, 0x01ee, 0x01fa, 0x01fc, 0x01fe, |
| 3737 | 0x0200, 0x0202, 0x0204, 0x0206, 0x0208, 0x020a, 0x020c, 0x020e, |
| 3738 | 0x0210, 0x0212, 0x0214, 0x0216, 0x0218, 0x021a, 0x021c, 0x021e, |
| 3739 | 0x0220, 0x0222, 0x0224, 0x0226, 0x0228, 0x022a, 0x022c, 0x022e, |
| 3740 | 0x0230, 0x0232, 0x0241, 0x0248, 0x024a, 0x024c, 0x024e, 0x034f, |
| 3741 | 0x0370, 0x0372, 0x0374, 0x0376, 0x037a, 0x038c, 0x03c2, 0x03d8, |
| 3742 | 0x03da, 0x03dc, 0x03de, 0x03e0, 0x03e2, 0x03e4, 0x03e6, 0x03e8, |
| 3743 | 0x03ea, 0x03ec, 0x03ee, 0x03f7, 0x0460, 0x0462, 0x0464, 0x0466, |
| 3744 | 0x0468, 0x046a, 0x046c, 0x046e, 0x0470, 0x0472, 0x0474, 0x0476, |
| 3745 | 0x0478, 0x047a, 0x047c, 0x047e, 0x0480, 0x048a, 0x048c, 0x048e, |
| 3746 | 0x0490, 0x0492, 0x0494, 0x0496, 0x0498, 0x049a, 0x049c, 0x049e, |
| 3747 | 0x04a0, 0x04a2, 0x04a4, 0x04a6, 0x04a8, 0x04aa, 0x04ac, 0x04ae, |
| 3748 | 0x04b0, 0x04b2, 0x04b4, 0x04b6, 0x04b8, 0x04ba, 0x04bc, 0x04be, |
| 3749 | 0x04c3, 0x04c5, 0x04c7, 0x04c9, 0x04cb, 0x04cd, 0x04d0, 0x04d2, |
| 3750 | 0x04d4, 0x04d6, 0x04d8, 0x04da, 0x04dc, 0x04de, 0x04e0, 0x04e2, |
| 3751 | 0x04e4, 0x04e6, 0x04e8, 0x04ea, 0x04ec, 0x04ee, 0x04f0, 0x04f2, |
| 3752 | 0x04f4, 0x04f6, 0x04f8, 0x04fa, 0x04fc, 0x04fe, 0x0500, 0x0502, |
| 3753 | 0x0504, 0x0506, 0x0508, 0x050a, 0x050c, 0x050e, 0x0510, 0x0512, |
| 3754 | 0x0514, 0x0516, 0x0518, 0x051a, 0x051c, 0x051e, 0x0520, 0x0522, |
| 3755 | 0x0524, 0x0526, 0x0528, 0x052a, 0x052c, 0x052e, 0x0587, 0x061c, |
| 3756 | 0x09df, 0x0a33, 0x0a36, 0x0a5e, 0x0e33, 0x0eb3, 0x0f0c, 0x0f43, |
| 3757 | 0x0f4d, 0x0f52, 0x0f57, 0x0f5c, 0x0f69, 0x0f73, 0x0f81, 0x0f93, |
| 3758 | 0x0f9d, 0x0fa2, 0x0fa7, 0x0fac, 0x0fb9, 0x10c7, 0x10cd, 0x10fc, |
| 3759 | 0x1d78, 0x1e00, 0x1e02, 0x1e04, 0x1e06, 0x1e08, 0x1e0a, 0x1e0c, |
| 3760 | 0x1e0e, 0x1e10, 0x1e12, 0x1e14, 0x1e16, 0x1e18, 0x1e1a, 0x1e1c, |
| 3761 | 0x1e1e, 0x1e20, 0x1e22, 0x1e24, 0x1e26, 0x1e28, 0x1e2a, 0x1e2c, |
| 3762 | 0x1e2e, 0x1e30, 0x1e32, 0x1e34, 0x1e36, 0x1e38, 0x1e3a, 0x1e3c, |
| 3763 | 0x1e3e, 0x1e40, 0x1e42, 0x1e44, 0x1e46, 0x1e48, 0x1e4a, 0x1e4c, |
| 3764 | 0x1e4e, 0x1e50, 0x1e52, 0x1e54, 0x1e56, 0x1e58, 0x1e5a, 0x1e5c, |
| 3765 | 0x1e5e, 0x1e60, 0x1e62, 0x1e64, 0x1e66, 0x1e68, 0x1e6a, 0x1e6c, |
| 3766 | 0x1e6e, 0x1e70, 0x1e72, 0x1e74, 0x1e76, 0x1e78, 0x1e7a, 0x1e7c, |
| 3767 | 0x1e7e, 0x1e80, 0x1e82, 0x1e84, 0x1e86, 0x1e88, 0x1e8a, 0x1e8c, |
| 3768 | 0x1e8e, 0x1e90, 0x1e92, 0x1e94, 0x1e9e, 0x1ea0, 0x1ea2, 0x1ea4, |
| 3769 | 0x1ea6, 0x1ea8, 0x1eaa, 0x1eac, 0x1eae, 0x1eb0, 0x1eb2, 0x1eb4, |
| 3770 | 0x1eb6, 0x1eb8, 0x1eba, 0x1ebc, 0x1ebe, 0x1ec0, 0x1ec2, 0x1ec4, |
| 3771 | 0x1ec6, 0x1ec8, 0x1eca, 0x1ecc, 0x1ece, 0x1ed0, 0x1ed2, 0x1ed4, |
| 3772 | 0x1ed6, 0x1ed8, 0x1eda, 0x1edc, 0x1ede, 0x1ee0, 0x1ee2, 0x1ee4, |
| 3773 | 0x1ee6, 0x1ee8, 0x1eea, 0x1eec, 0x1eee, 0x1ef0, 0x1ef2, 0x1ef4, |
| 3774 | 0x1ef6, 0x1ef8, 0x1efa, 0x1efc, 0x1efe, 0x1f59, 0x1f5b, 0x1f5d, |
| 3775 | 0x1f5f, 0x1f71, 0x1f73, 0x1f75, 0x1f77, 0x1f79, 0x1f7b, 0x1f7d, |
| 3776 | 0x1fd3, 0x1fe3, 0x2011, 0x2017, 0x203c, 0x203e, 0x2057, 0x20a8, |
| 3777 | 0x2124, 0x2126, 0x2128, 0x2183, 0x2189, 0x2a0c, 0x2adc, 0x2c60, |
| 3778 | 0x2c67, 0x2c69, 0x2c6b, 0x2c72, 0x2c75, 0x2c82, 0x2c84, 0x2c86, |
| 3779 | 0x2c88, 0x2c8a, 0x2c8c, 0x2c8e, 0x2c90, 0x2c92, 0x2c94, 0x2c96, |
| 3780 | 0x2c98, 0x2c9a, 0x2c9c, 0x2c9e, 0x2ca0, 0x2ca2, 0x2ca4, 0x2ca6, |
| 3781 | 0x2ca8, 0x2caa, 0x2cac, 0x2cae, 0x2cb0, 0x2cb2, 0x2cb4, 0x2cb6, |
| 3782 | 0x2cb8, 0x2cba, 0x2cbc, 0x2cbe, 0x2cc0, 0x2cc2, 0x2cc4, 0x2cc6, |
| 3783 | 0x2cc8, 0x2cca, 0x2ccc, 0x2cce, 0x2cd0, 0x2cd2, 0x2cd4, 0x2cd6, |
| 3784 | 0x2cd8, 0x2cda, 0x2cdc, 0x2cde, 0x2ce0, 0x2ce2, 0x2ceb, 0x2ced, |
| 3785 | 0x2cf2, 0x2d6f, 0x2e9f, 0x2ef3, 0x3000, 0x3036, 0x309f, 0x30ff, |
| 3786 | 0xa640, 0xa642, 0xa644, 0xa646, 0xa648, 0xa64a, 0xa64c, 0xa64e, |
| 3787 | 0xa650, 0xa652, 0xa654, 0xa656, 0xa658, 0xa65a, 0xa65c, 0xa65e, |
| 3788 | 0xa660, 0xa662, 0xa664, 0xa666, 0xa668, 0xa66a, 0xa66c, 0xa680, |
| 3789 | 0xa682, 0xa684, 0xa686, 0xa688, 0xa68a, 0xa68c, 0xa68e, 0xa690, |
| 3790 | 0xa692, 0xa694, 0xa696, 0xa698, 0xa69a, 0xa722, 0xa724, 0xa726, |
| 3791 | 0xa728, 0xa72a, 0xa72c, 0xa72e, 0xa732, 0xa734, 0xa736, 0xa738, |
| 3792 | 0xa73a, 0xa73c, 0xa73e, 0xa740, 0xa742, 0xa744, 0xa746, 0xa748, |
| 3793 | 0xa74a, 0xa74c, 0xa74e, 0xa750, 0xa752, 0xa754, 0xa756, 0xa758, |
| 3794 | 0xa75a, 0xa75c, 0xa75e, 0xa760, 0xa762, 0xa764, 0xa766, 0xa768, |
| 3795 | 0xa76a, 0xa76c, 0xa76e, 0xa770, 0xa779, 0xa77b, 0xa780, 0xa782, |
| 3796 | 0xa784, 0xa786, 0xa78b, 0xa78d, 0xa790, 0xa792, 0xa796, 0xa798, |
| 3797 | 0xa79a, 0xa79c, 0xa79e, 0xa7a0, 0xa7a2, 0xa7a4, 0xa7a6, 0xa7a8, |
| 3798 | 0xa7b6, 0xa7b8, 0xfa10, 0xfa12, 0xfa20, 0xfa22, 0xfb1d, 0xfb3e, |
| 3799 | 0xfe74, 0xfeff, 0x1d4a2, 0x1d4bb, 0x1d546, 0x1ee24, 0x1ee27, 0x1ee39, |
| 3800 | 0x1ee3b, 0x1ee42, 0x1ee47, 0x1ee49, 0x1ee4b, 0x1ee54, 0x1ee57, 0x1ee59, |
| 3801 | 0x1ee5b, 0x1ee5d, 0x1ee5f, 0x1ee64, 0x1ee7e, 0x1f190}), |
| 3802 | std::initializer_list<CharacterRange>({{0x00b2, 0x00b5}, {0x00b8, 0x00ba}, {0x00bc, 0x00be}, {0x00c0, 0x00d6}, |
| 3803 | {0x00d8, 0x00df}, {0x0132, 0x0134}, {0x013f, 0x0141}, {0x0149, 0x014a}, |
| 3804 | {0x0178, 0x0179}, {0x0181, 0x0182}, {0x0186, 0x0187}, {0x0189, 0x018b}, |
| 3805 | {0x018e, 0x0191}, {0x0193, 0x0194}, {0x0196, 0x0198}, {0x019c, 0x019d}, |
| 3806 | {0x019f, 0x01a0}, {0x01a6, 0x01a7}, {0x01ae, 0x01af}, {0x01b1, 0x01b3}, |
| 3807 | {0x01b7, 0x01b8}, {0x01c4, 0x01cd}, {0x01f1, 0x01f4}, {0x01f6, 0x01f8}, |
| 3808 | {0x023a, 0x023b}, {0x023d, 0x023e}, {0x0243, 0x0246}, {0x02b0, 0x02b8}, |
| 3809 | {0x02d8, 0x02dd}, {0x02e0, 0x02e4}, {0x0340, 0x0341}, {0x0343, 0x0345}, |
| 3810 | {0x037e, 0x037f}, {0x0384, 0x038a}, {0x038e, 0x038f}, {0x0391, 0x03a1}, |
| 3811 | {0x03a3, 0x03ab}, {0x03cf, 0x03d6}, {0x03f0, 0x03f2}, {0x03f4, 0x03f5}, |
| 3812 | {0x03f9, 0x03fa}, {0x03fd, 0x042f}, {0x04c0, 0x04c1}, {0x0531, 0x0556}, |
| 3813 | {0x0675, 0x0678}, {0x0958, 0x095f}, {0x09dc, 0x09dd}, {0x0a59, 0x0a5b}, |
| 3814 | {0x0b5c, 0x0b5d}, {0x0edc, 0x0edd}, {0x0f75, 0x0f79}, {0x10a0, 0x10c5}, |
| 3815 | {0x115f, 0x1160}, {0x13f8, 0x13fd}, {0x17b4, 0x17b5}, {0x180b, 0x180e}, |
| 3816 | {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1d2c, 0x1d2e}, |
| 3817 | {0x1d30, 0x1d3a}, {0x1d3c, 0x1d4d}, {0x1d4f, 0x1d6a}, {0x1d9b, 0x1dbf}, |
| 3818 | {0x1e9a, 0x1e9b}, {0x1f08, 0x1f0f}, {0x1f18, 0x1f1d}, {0x1f28, 0x1f2f}, |
| 3819 | {0x1f38, 0x1f3f}, {0x1f48, 0x1f4d}, {0x1f68, 0x1f6f}, {0x1f80, 0x1faf}, |
| 3820 | {0x1fb2, 0x1fb4}, {0x1fb7, 0x1fc4}, {0x1fc7, 0x1fcf}, {0x1fd8, 0x1fdb}, |
| 3821 | {0x1fdd, 0x1fdf}, {0x1fe8, 0x1fef}, {0x1ff2, 0x1ff4}, {0x1ff7, 0x1ffe}, |
| 3822 | {0x2000, 0x200f}, {0x2024, 0x2026}, {0x202a, 0x202f}, {0x2033, 0x2034}, |
| 3823 | {0x2036, 0x2037}, {0x2047, 0x2049}, {0x205f, 0x2071}, {0x2074, 0x208e}, |
| 3824 | {0x2090, 0x209c}, {0x2100, 0x2103}, {0x2105, 0x2107}, {0x2109, 0x2113}, |
| 3825 | {0x2115, 0x2116}, {0x2119, 0x211d}, {0x2120, 0x2122}, {0x212a, 0x212d}, |
| 3826 | {0x212f, 0x2139}, {0x213b, 0x2140}, {0x2145, 0x2149}, {0x2150, 0x217f}, |
| 3827 | {0x222c, 0x222d}, {0x222f, 0x2230}, {0x2329, 0x232a}, {0x2460, 0x24ea}, |
| 3828 | {0x2a74, 0x2a76}, {0x2c00, 0x2c2e}, {0x2c62, 0x2c64}, {0x2c6d, 0x2c70}, |
| 3829 | {0x2c7c, 0x2c80}, {0x2f00, 0x2fd5}, {0x3038, 0x303a}, {0x309b, 0x309c}, |
| 3830 | {0x3131, 0x318e}, {0x3192, 0x319f}, {0x3200, 0x321e}, {0x3220, 0x3247}, |
| 3831 | {0x3250, 0x327e}, {0x3280, 0x32fe}, {0x3300, 0x33ff}, {0xa69c, 0xa69d}, |
| 3832 | {0xa77d, 0xa77e}, {0xa7aa, 0xa7ae}, {0xa7b0, 0xa7b4}, {0xa7f8, 0xa7f9}, |
| 3833 | {0xab5c, 0xab5f}, {0xab70, 0xabbf}, {0xf900, 0xfa0d}, {0xfa15, 0xfa1e}, |
| 3834 | {0xfa25, 0xfa26}, {0xfa2a, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, |
| 3835 | {0xfb13, 0xfb17}, {0xfb1f, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb40, 0xfb41}, |
| 3836 | {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, |
| 3837 | {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfc}, {0xfe00, 0xfe19}, {0xfe30, 0xfe44}, |
| 3838 | {0xfe47, 0xfe52}, {0xfe54, 0xfe66}, {0xfe68, 0xfe6b}, {0xfe70, 0xfe72}, |
| 3839 | {0xfe76, 0xfefc}, {0xff01, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, |
| 3840 | {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0xffe0, 0xffe6}, {0xffe8, 0xffee}, |
| 3841 | {0xfff0, 0xfff8}, {0x10400, 0x10427}, {0x104b0, 0x104d3}, {0x10c80, 0x10cb2}, |
| 3842 | {0x118a0, 0x118bf}, {0x16e40, 0x16e5f}, {0x1bca0, 0x1bca3}, {0x1d15e, 0x1d164}, |
| 3843 | {0x1d173, 0x1d17a}, {0x1d1bb, 0x1d1c0}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, |
| 3844 | {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, |
| 3845 | {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, |
| 3846 | {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, |
| 3847 | {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, |
| 3848 | {0x1e900, 0x1e921}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, |
| 3849 | {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, |
| 3850 | {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, |
| 3851 | {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, |
| 3852 | {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1f100, 0x1f10a}, {0x1f110, 0x1f12e}, |
| 3853 | {0x1f130, 0x1f14f}, {0x1f16a, 0x1f16b}, {0x1f200, 0x1f202}, {0x1f210, 0x1f23b}, |
| 3854 | {0x1f240, 0x1f248}, {0x1f250, 0x1f251}, {0x2f800, 0x2fa1d}, {0xe0000, 0xe0fff}}), |
| 3855 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 3856 | return characterClass; |
| 3857 | } |
| 3858 | |
| 3859 | static std::unique_ptr<CharacterClass> createCharacterClass61() |
| 3860 | { |
| 3861 | // Name = White_Space, number of codePoints: 25 |
| 3862 | auto characterClass = std::make_unique<CharacterClass>( |
| 3863 | std::initializer_list<UChar32>({0x20}), |
| 3864 | std::initializer_list<CharacterRange>({{0x09, 0x0d}}), |
| 3865 | std::initializer_list<UChar32>({0x0085, 0x00a0, 0x1680, 0x202f, 0x205f, 0x3000}), |
| 3866 | std::initializer_list<CharacterRange>({{0x2000, 0x200a}, {0x2028, 0x2029}}), |
| 3867 | CharacterClassWidths::HasBMPChars); |
| 3868 | return characterClass; |
| 3869 | } |
| 3870 | |
| 3871 | static std::unique_ptr<CharacterClass> createCharacterClass62() |
| 3872 | { |
| 3873 | // Name = Bidi_Control, number of codePoints: 12 |
| 3874 | auto characterClass = std::make_unique<CharacterClass>( |
| 3875 | std::initializer_list<UChar32>({}), |
| 3876 | std::initializer_list<CharacterRange>({}), |
| 3877 | std::initializer_list<UChar32>({0x061c}), |
| 3878 | std::initializer_list<CharacterRange>({{0x200e, 0x200f}, {0x202a, 0x202e}, {0x2066, 0x2069}}), |
| 3879 | CharacterClassWidths::HasBMPChars); |
| 3880 | return characterClass; |
| 3881 | } |
| 3882 | |
| 3883 | static std::unique_ptr<CharacterClass> createCharacterClass63() |
| 3884 | { |
| 3885 | // Name = Join_Control, number of codePoints: 2 |
| 3886 | auto characterClass = std::make_unique<CharacterClass>( |
| 3887 | std::initializer_list<UChar32>({}), |
| 3888 | std::initializer_list<CharacterRange>({}), |
| 3889 | std::initializer_list<UChar32>({}), |
| 3890 | std::initializer_list<CharacterRange>({{0x200c, 0x200d}}), |
| 3891 | CharacterClassWidths::HasBMPChars); |
| 3892 | return characterClass; |
| 3893 | } |
| 3894 | |
| 3895 | static std::unique_ptr<CharacterClass> createCharacterClass64() |
| 3896 | { |
| 3897 | // Name = Dash, number of codePoints: 28 |
| 3898 | auto characterClass = std::make_unique<CharacterClass>( |
| 3899 | std::initializer_list<UChar32>({0x2d}), |
| 3900 | std::initializer_list<CharacterRange>({}), |
| 3901 | std::initializer_list<UChar32>({0x058a, 0x05be, 0x1400, 0x1806, 0x2053, 0x207b, 0x208b, 0x2212, |
| 3902 | 0x2e17, 0x2e1a, 0x2e40, 0x301c, 0x3030, 0x30a0, 0xfe58, 0xfe63, |
| 3903 | 0xff0d}), |
| 3904 | std::initializer_list<CharacterRange>({{0x2010, 0x2015}, {0x2e3a, 0x2e3b}, {0xfe31, 0xfe32}}), |
| 3905 | CharacterClassWidths::HasBMPChars); |
| 3906 | return characterClass; |
| 3907 | } |
| 3908 | |
| 3909 | static std::unique_ptr<CharacterClass> createCharacterClass65() |
| 3910 | { |
| 3911 | // Name = Quotation_Mark, number of codePoints: 30 |
| 3912 | auto characterClass = std::make_unique<CharacterClass>( |
| 3913 | std::initializer_list<UChar32>({0x22, 0x27}), |
| 3914 | std::initializer_list<CharacterRange>({}), |
| 3915 | std::initializer_list<UChar32>({0x00ab, 0x00bb, 0x2e42, 0xff02, 0xff07}), |
| 3916 | std::initializer_list<CharacterRange>({{0x2018, 0x201f}, {0x2039, 0x203a}, {0x300c, 0x300f}, {0x301d, 0x301f}, |
| 3917 | {0xfe41, 0xfe44}, {0xff62, 0xff63}}), |
| 3918 | CharacterClassWidths::HasBMPChars); |
| 3919 | return characterClass; |
| 3920 | } |
| 3921 | |
| 3922 | static std::unique_ptr<CharacterClass> createCharacterClass66() |
| 3923 | { |
| 3924 | // Name = Terminal_Punctuation, number of codePoints: 264 |
| 3925 | auto characterClass = std::make_unique<CharacterClass>( |
| 3926 | std::initializer_list<UChar32>({0x21, 0x2c, 0x2e, 0x3f}), |
| 3927 | std::initializer_list<CharacterRange>({{0x3a, 0x3b}}), |
| 3928 | std::initializer_list<UChar32>({0x037e, 0x0387, 0x0589, 0x05c3, 0x060c, 0x061b, 0x06d4, 0x070c, |
| 3929 | 0x085e, 0x0f08, 0x17da, 0x2e2e, 0x2e3c, 0x2e41, 0x2e4c, 0x2e4e, |
| 3930 | 0xa92f, 0xaadf, 0xabeb, 0xff01, 0xff0c, 0xff0e, 0xff1f, 0xff61, |
| 3931 | 0xff64, 0x1039f, 0x103d0, 0x10857, 0x1091f, 0x111cd, 0x112a9, 0x1145b, |
| 3932 | 0x11c71, 0x16af5, 0x16b44, 0x1bc9f}), |
| 3933 | std::initializer_list<CharacterRange>({{0x061e, 0x061f}, {0x0700, 0x070a}, {0x07f8, 0x07f9}, {0x0830, 0x083e}, |
| 3934 | {0x0964, 0x0965}, {0x0e5a, 0x0e5b}, {0x0f0d, 0x0f12}, {0x104a, 0x104b}, |
| 3935 | {0x1361, 0x1368}, {0x166d, 0x166e}, {0x16eb, 0x16ed}, {0x1735, 0x1736}, |
| 3936 | {0x17d4, 0x17d6}, {0x1802, 0x1805}, {0x1808, 0x1809}, {0x1944, 0x1945}, |
| 3937 | {0x1aa8, 0x1aab}, {0x1b5a, 0x1b5b}, {0x1b5d, 0x1b5f}, {0x1c3b, 0x1c3f}, |
| 3938 | {0x1c7e, 0x1c7f}, {0x203c, 0x203d}, {0x2047, 0x2049}, {0x3001, 0x3002}, |
| 3939 | {0xa4fe, 0xa4ff}, {0xa60d, 0xa60f}, {0xa6f3, 0xa6f7}, {0xa876, 0xa877}, |
| 3940 | {0xa8ce, 0xa8cf}, {0xa9c7, 0xa9c9}, {0xaa5d, 0xaa5f}, {0xaaf0, 0xaaf1}, |
| 3941 | {0xfe50, 0xfe52}, {0xfe54, 0xfe57}, {0xff1a, 0xff1b}, {0x10a56, 0x10a57}, |
| 3942 | {0x10af0, 0x10af5}, {0x10b3a, 0x10b3f}, {0x10b99, 0x10b9c}, {0x10f55, 0x10f59}, |
| 3943 | {0x11047, 0x1104d}, {0x110be, 0x110c1}, {0x11141, 0x11143}, {0x111c5, 0x111c6}, |
| 3944 | {0x111de, 0x111df}, {0x11238, 0x1123c}, {0x1144b, 0x1144d}, {0x115c2, 0x115c5}, |
| 3945 | {0x115c9, 0x115d7}, {0x11641, 0x11642}, {0x1173c, 0x1173e}, {0x11a42, 0x11a43}, |
| 3946 | {0x11a9b, 0x11a9c}, {0x11aa1, 0x11aa2}, {0x11c41, 0x11c43}, {0x11ef7, 0x11ef8}, |
| 3947 | {0x12470, 0x12474}, {0x16a6e, 0x16a6f}, {0x16b37, 0x16b39}, {0x16e97, 0x16e98}, |
| 3948 | {0x1da87, 0x1da8a}}), |
| 3949 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 3950 | return characterClass; |
| 3951 | } |
| 3952 | |
| 3953 | static std::unique_ptr<CharacterClass> createCharacterClass67() |
| 3954 | { |
| 3955 | // Name = Hex_Digit, number of codePoints: 44 |
| 3956 | auto characterClass = std::make_unique<CharacterClass>( |
| 3957 | std::initializer_list<UChar32>({}), |
| 3958 | std::initializer_list<CharacterRange>({{0x30, 0x39}, {0x41, 0x46}, {0x61, 0x66}}), |
| 3959 | std::initializer_list<UChar32>({}), |
| 3960 | std::initializer_list<CharacterRange>({{0xff10, 0xff19}, {0xff21, 0xff26}, {0xff41, 0xff46}}), |
| 3961 | CharacterClassWidths::HasBMPChars); |
| 3962 | return characterClass; |
| 3963 | } |
| 3964 | |
| 3965 | static std::unique_ptr<CharacterClass> createCharacterClass68() |
| 3966 | { |
| 3967 | // Name = ASCII_Hex_Digit, number of codePoints: 22 |
| 3968 | auto characterClass = std::make_unique<CharacterClass>( |
| 3969 | std::initializer_list<UChar32>({}), |
| 3970 | std::initializer_list<CharacterRange>({{0x30, 0x39}, {0x41, 0x46}, {0x61, 0x66}}), |
| 3971 | std::initializer_list<UChar32>({}), |
| 3972 | std::initializer_list<CharacterRange>({}), |
| 3973 | CharacterClassWidths::HasBMPChars); |
| 3974 | return characterClass; |
| 3975 | } |
| 3976 | |
| 3977 | static std::unique_ptr<CharacterClass> createCharacterClass69() |
| 3978 | { |
| 3979 | // Name = Ideographic, number of codePoints: 96184 |
| 3980 | auto characterClass = std::make_unique<CharacterClass>( |
| 3981 | std::initializer_list<UChar32>({}), |
| 3982 | std::initializer_list<CharacterRange>({}), |
| 3983 | std::initializer_list<UChar32>({}), |
| 3984 | std::initializer_list<CharacterRange>({{0x3006, 0x3007}, {0x3021, 0x3029}, {0x3038, 0x303a}, {0x3400, 0x4db5}, |
| 3985 | {0x4e00, 0x9fef}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0x17000, 0x187f1}, |
| 3986 | {0x18800, 0x18af2}, {0x1b170, 0x1b2fb}, {0x20000, 0x2a6d6}, {0x2a700, 0x2b734}, |
| 3987 | {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}}), |
| 3988 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 3989 | return characterClass; |
| 3990 | } |
| 3991 | |
| 3992 | static std::unique_ptr<CharacterClass> createCharacterClass70() |
| 3993 | { |
| 3994 | // Name = Diacritic, number of codePoints: 818 |
| 3995 | auto characterClass = std::make_unique<CharacterClass>( |
| 3996 | std::initializer_list<UChar32>({0x5e, 0x60}), |
| 3997 | std::initializer_list<CharacterRange>({}), |
| 3998 | std::initializer_list<UChar32>({0x00a8, 0x00af, 0x00b4, 0x037a, 0x0559, 0x05bf, 0x05c4, 0x093c, |
| 3999 | 0x094d, 0x0971, 0x09bc, 0x09cd, 0x0a3c, 0x0a4d, 0x0abc, 0x0acd, |
| 4000 | 0x0b3c, 0x0b4d, 0x0bcd, 0x0c4d, 0x0cbc, 0x0ccd, 0x0d4d, 0x0dca, |
| 4001 | 0x0e4e, 0x0f35, 0x0f37, 0x0f39, 0x0fc6, 0x1037, 0x108f, 0x17dd, |
| 4002 | 0x1a7f, 0x1b34, 0x1b44, 0x1ced, 0x1cf4, 0x1fbd, 0x2e2f, 0x30fc, |
| 4003 | 0xa66f, 0xa67f, 0xa788, 0xa8c4, 0xa953, 0xa9b3, 0xa9c0, 0xa9e5, |
| 4004 | 0xaaf6, 0xfb1e, 0xff3e, 0xff40, 0xff70, 0xffe3, 0x102e0, 0x11173, |
| 4005 | 0x111c0, 0x1133c, 0x1134d, 0x11442, 0x11446, 0x1163f, 0x1172b, 0x11a34, |
| 4006 | 0x11a47, 0x11a99, 0x11c3f, 0x11d42, 0x11d97}), |
| 4007 | std::initializer_list<CharacterRange>({{0x00b7, 0x00b8}, {0x02b0, 0x034e}, {0x0350, 0x0357}, {0x035d, 0x0362}, |
| 4008 | {0x0374, 0x0375}, {0x0384, 0x0385}, {0x0483, 0x0487}, {0x0591, 0x05a1}, |
| 4009 | {0x05a3, 0x05bd}, {0x05c1, 0x05c2}, {0x064b, 0x0652}, {0x0657, 0x0658}, |
| 4010 | {0x06df, 0x06e0}, {0x06e5, 0x06e6}, {0x06ea, 0x06ec}, {0x0730, 0x074a}, |
| 4011 | {0x07a6, 0x07b0}, {0x07eb, 0x07f5}, {0x0818, 0x0819}, {0x08e3, 0x08fe}, |
| 4012 | {0x0951, 0x0954}, {0x0afd, 0x0aff}, {0x0d3b, 0x0d3c}, {0x0e47, 0x0e4c}, |
| 4013 | {0x0ec8, 0x0ecc}, {0x0f18, 0x0f19}, {0x0f3e, 0x0f3f}, {0x0f82, 0x0f84}, |
| 4014 | {0x0f86, 0x0f87}, {0x1039, 0x103a}, {0x1087, 0x108d}, {0x109a, 0x109b}, |
| 4015 | {0x17c9, 0x17d3}, {0x1939, 0x193b}, {0x1a75, 0x1a7c}, {0x1ab0, 0x1abd}, |
| 4016 | {0x1b6b, 0x1b73}, {0x1baa, 0x1bab}, {0x1c36, 0x1c37}, {0x1c78, 0x1c7d}, |
| 4017 | {0x1cd0, 0x1ce8}, {0x1cf7, 0x1cf9}, {0x1d2c, 0x1d6a}, {0x1dc4, 0x1dcf}, |
| 4018 | {0x1df5, 0x1df9}, {0x1dfd, 0x1dff}, {0x1fbf, 0x1fc1}, {0x1fcd, 0x1fcf}, |
| 4019 | {0x1fdd, 0x1fdf}, {0x1fed, 0x1fef}, {0x1ffd, 0x1ffe}, {0x2cef, 0x2cf1}, |
| 4020 | {0x302a, 0x302f}, {0x3099, 0x309c}, {0xa67c, 0xa67d}, {0xa69c, 0xa69d}, |
| 4021 | {0xa6f0, 0xa6f1}, {0xa717, 0xa721}, {0xa7f8, 0xa7f9}, {0xa8e0, 0xa8f1}, |
| 4022 | {0xa92b, 0xa92e}, {0xaa7b, 0xaa7d}, {0xaabf, 0xaac2}, {0xab5b, 0xab5f}, |
| 4023 | {0xabec, 0xabed}, {0xfe20, 0xfe2f}, {0xff9e, 0xff9f}, {0x10ae5, 0x10ae6}, |
| 4024 | {0x10d22, 0x10d27}, {0x10f46, 0x10f50}, {0x110b9, 0x110ba}, {0x11133, 0x11134}, |
| 4025 | {0x111ca, 0x111cc}, {0x11235, 0x11236}, {0x112e9, 0x112ea}, {0x11366, 0x1136c}, |
| 4026 | {0x11370, 0x11374}, {0x114c2, 0x114c3}, {0x115bf, 0x115c0}, {0x116b6, 0x116b7}, |
| 4027 | {0x11839, 0x1183a}, {0x11d44, 0x11d45}, {0x16af0, 0x16af4}, {0x16f8f, 0x16f9f}, |
| 4028 | {0x1d167, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, |
| 4029 | {0x1d1aa, 0x1d1ad}, {0x1e8d0, 0x1e8d6}, {0x1e944, 0x1e946}, {0x1e948, 0x1e94a}}), |
| 4030 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4031 | return characterClass; |
| 4032 | } |
| 4033 | |
| 4034 | static std::unique_ptr<CharacterClass> createCharacterClass71() |
| 4035 | { |
| 4036 | // Name = Extender, number of codePoints: 44 |
| 4037 | auto characterClass = std::make_unique<CharacterClass>( |
| 4038 | std::initializer_list<UChar32>({}), |
| 4039 | std::initializer_list<CharacterRange>({}), |
| 4040 | std::initializer_list<UChar32>({0x00b7, 0x0640, 0x07fa, 0x0e46, 0x0ec6, 0x180a, 0x1843, 0x1aa7, |
| 4041 | 0x1c36, 0x1c7b, 0x3005, 0xa015, 0xa60c, 0xa9cf, 0xa9e6, 0xaa70, |
| 4042 | 0xaadd, 0xff70, 0x1135d, 0x11a98}), |
| 4043 | std::initializer_list<CharacterRange>({{0x02d0, 0x02d1}, {0x3031, 0x3035}, {0x309d, 0x309e}, {0x30fc, 0x30fe}, |
| 4044 | {0xaaf3, 0xaaf4}, {0x115c6, 0x115c8}, {0x16b42, 0x16b43}, {0x16fe0, 0x16fe1}, |
| 4045 | {0x1e944, 0x1e946}}), |
| 4046 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4047 | return characterClass; |
| 4048 | } |
| 4049 | |
| 4050 | static std::unique_ptr<CharacterClass> createCharacterClass72() |
| 4051 | { |
| 4052 | // Name = Noncharacter_Code_Point, number of codePoints: 66 |
| 4053 | auto characterClass = std::make_unique<CharacterClass>( |
| 4054 | std::initializer_list<UChar32>({}), |
| 4055 | std::initializer_list<CharacterRange>({}), |
| 4056 | std::initializer_list<UChar32>({}), |
| 4057 | std::initializer_list<CharacterRange>({{0xfdd0, 0xfdef}, {0xfffe, 0xffff}, {0x1fffe, 0x1ffff}, {0x2fffe, 0x2ffff}, |
| 4058 | {0x3fffe, 0x3ffff}, {0x4fffe, 0x4ffff}, {0x5fffe, 0x5ffff}, {0x6fffe, 0x6ffff}, |
| 4059 | {0x7fffe, 0x7ffff}, {0x8fffe, 0x8ffff}, {0x9fffe, 0x9ffff}, {0xafffe, 0xaffff}, |
| 4060 | {0xbfffe, 0xbffff}, {0xcfffe, 0xcffff}, {0xdfffe, 0xdffff}, {0xefffe, 0xeffff}, |
| 4061 | {0xffffe, 0xfffff}, {0x10fffe, 0x10ffff}}), |
| 4062 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4063 | return characterClass; |
| 4064 | } |
| 4065 | |
| 4066 | static std::unique_ptr<CharacterClass> createCharacterClass73() |
| 4067 | { |
| 4068 | // Name = IDS_Binary_Operator, number of codePoints: 10 |
| 4069 | auto characterClass = std::make_unique<CharacterClass>( |
| 4070 | std::initializer_list<UChar32>({}), |
| 4071 | std::initializer_list<CharacterRange>({}), |
| 4072 | std::initializer_list<UChar32>({}), |
| 4073 | std::initializer_list<CharacterRange>({{0x2ff0, 0x2ff1}, {0x2ff4, 0x2ffb}}), |
| 4074 | CharacterClassWidths::HasBMPChars); |
| 4075 | return characterClass; |
| 4076 | } |
| 4077 | |
| 4078 | static std::unique_ptr<CharacterClass> createCharacterClass74() |
| 4079 | { |
| 4080 | // Name = IDS_Trinary_Operator, number of codePoints: 2 |
| 4081 | auto characterClass = std::make_unique<CharacterClass>( |
| 4082 | std::initializer_list<UChar32>({}), |
| 4083 | std::initializer_list<CharacterRange>({}), |
| 4084 | std::initializer_list<UChar32>({}), |
| 4085 | std::initializer_list<CharacterRange>({{0x2ff2, 0x2ff3}}), |
| 4086 | CharacterClassWidths::HasBMPChars); |
| 4087 | return characterClass; |
| 4088 | } |
| 4089 | |
| 4090 | static std::unique_ptr<CharacterClass> createCharacterClass75() |
| 4091 | { |
| 4092 | // Name = Radical, number of codePoints: 329 |
| 4093 | auto characterClass = std::make_unique<CharacterClass>( |
| 4094 | std::initializer_list<UChar32>({}), |
| 4095 | std::initializer_list<CharacterRange>({}), |
| 4096 | std::initializer_list<UChar32>({}), |
| 4097 | std::initializer_list<CharacterRange>({{0x2e80, 0x2e99}, {0x2e9b, 0x2ef3}, {0x2f00, 0x2fd5}}), |
| 4098 | CharacterClassWidths::HasBMPChars); |
| 4099 | return characterClass; |
| 4100 | } |
| 4101 | |
| 4102 | static std::unique_ptr<CharacterClass> createCharacterClass76() |
| 4103 | { |
| 4104 | // Name = Unified_Ideograph, number of codePoints: 87887 |
| 4105 | auto characterClass = std::make_unique<CharacterClass>( |
| 4106 | std::initializer_list<UChar32>({}), |
| 4107 | std::initializer_list<CharacterRange>({}), |
| 4108 | std::initializer_list<UChar32>({0xfa11, 0xfa1f, 0xfa21}), |
| 4109 | std::initializer_list<CharacterRange>({{0x3400, 0x4db5}, {0x4e00, 0x9fef}, {0xfa0e, 0xfa0f}, {0xfa13, 0xfa14}, |
| 4110 | {0xfa23, 0xfa24}, {0xfa27, 0xfa29}, {0x20000, 0x2a6d6}, {0x2a700, 0x2b734}, |
| 4111 | {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}}), |
| 4112 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4113 | return characterClass; |
| 4114 | } |
| 4115 | |
| 4116 | static std::unique_ptr<CharacterClass> createCharacterClass77() |
| 4117 | { |
| 4118 | // Name = Deprecated, number of codePoints: 15 |
| 4119 | auto characterClass = std::make_unique<CharacterClass>( |
| 4120 | std::initializer_list<UChar32>({}), |
| 4121 | std::initializer_list<CharacterRange>({}), |
| 4122 | std::initializer_list<UChar32>({0x0149, 0x0673, 0x0f77, 0x0f79, 0xe0001}), |
| 4123 | std::initializer_list<CharacterRange>({{0x17a3, 0x17a4}, {0x206a, 0x206f}, {0x2329, 0x232a}}), |
| 4124 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4125 | return characterClass; |
| 4126 | } |
| 4127 | |
| 4128 | static std::unique_ptr<CharacterClass> createCharacterClass78() |
| 4129 | { |
| 4130 | // Name = Soft_Dotted, number of codePoints: 46 |
| 4131 | auto characterClass = std::make_unique<CharacterClass>( |
| 4132 | std::initializer_list<UChar32>({}), |
| 4133 | std::initializer_list<CharacterRange>({{0x69, 0x6a}}), |
| 4134 | std::initializer_list<UChar32>({0x012f, 0x0249, 0x0268, 0x029d, 0x02b2, 0x03f3, 0x0456, 0x0458, |
| 4135 | 0x1d62, 0x1d96, 0x1da4, 0x1da8, 0x1e2d, 0x1ecb, 0x2071, 0x2c7c}), |
| 4136 | std::initializer_list<CharacterRange>({{0x2148, 0x2149}, {0x1d422, 0x1d423}, {0x1d456, 0x1d457}, {0x1d48a, 0x1d48b}, |
| 4137 | {0x1d4be, 0x1d4bf}, {0x1d4f2, 0x1d4f3}, {0x1d526, 0x1d527}, {0x1d55a, 0x1d55b}, |
| 4138 | {0x1d58e, 0x1d58f}, {0x1d5c2, 0x1d5c3}, {0x1d5f6, 0x1d5f7}, {0x1d62a, 0x1d62b}, |
| 4139 | {0x1d65e, 0x1d65f}, {0x1d692, 0x1d693}}), |
| 4140 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4141 | return characterClass; |
| 4142 | } |
| 4143 | |
| 4144 | static std::unique_ptr<CharacterClass> createCharacterClass79() |
| 4145 | { |
| 4146 | // Name = Logical_Order_Exception, number of codePoints: 19 |
| 4147 | auto characterClass = std::make_unique<CharacterClass>( |
| 4148 | std::initializer_list<UChar32>({}), |
| 4149 | std::initializer_list<CharacterRange>({}), |
| 4150 | std::initializer_list<UChar32>({0x19ba, 0xaab9}), |
| 4151 | std::initializer_list<CharacterRange>({{0x0e40, 0x0e44}, {0x0ec0, 0x0ec4}, {0x19b5, 0x19b7}, {0xaab5, 0xaab6}, |
| 4152 | {0xaabb, 0xaabc}}), |
| 4153 | CharacterClassWidths::HasBMPChars); |
| 4154 | return characterClass; |
| 4155 | } |
| 4156 | |
| 4157 | static std::unique_ptr<CharacterClass> createCharacterClass80() |
| 4158 | { |
| 4159 | // Name = Sentence_Terminal, number of codePoints: 141 |
| 4160 | auto characterClass = std::make_unique<CharacterClass>( |
| 4161 | std::initializer_list<UChar32>({0x21, 0x2e, 0x3f}), |
| 4162 | std::initializer_list<CharacterRange>({}), |
| 4163 | std::initializer_list<UChar32>({0x0589, 0x06d4, 0x07f9, 0x0837, 0x0839, 0x1362, 0x166e, 0x1803, |
| 4164 | 0x1809, 0x2e2e, 0x2e3c, 0x3002, 0xa4ff, 0xa6f3, 0xa6f7, 0xa92f, |
| 4165 | 0xabeb, 0xfe52, 0xff01, 0xff0e, 0xff1f, 0xff61, 0x111cd, 0x112a9, |
| 4166 | 0x16af5, 0x16b44, 0x16e98, 0x1bc9f, 0x1da88}), |
| 4167 | std::initializer_list<CharacterRange>({{0x061e, 0x061f}, {0x0700, 0x0702}, {0x083d, 0x083e}, {0x0964, 0x0965}, |
| 4168 | {0x104a, 0x104b}, {0x1367, 0x1368}, {0x1735, 0x1736}, {0x1944, 0x1945}, |
| 4169 | {0x1aa8, 0x1aab}, {0x1b5a, 0x1b5b}, {0x1b5e, 0x1b5f}, {0x1c3b, 0x1c3c}, |
| 4170 | {0x1c7e, 0x1c7f}, {0x203c, 0x203d}, {0x2047, 0x2049}, {0xa60e, 0xa60f}, |
| 4171 | {0xa876, 0xa877}, {0xa8ce, 0xa8cf}, {0xa9c8, 0xa9c9}, {0xaa5d, 0xaa5f}, |
| 4172 | {0xaaf0, 0xaaf1}, {0xfe56, 0xfe57}, {0x10a56, 0x10a57}, {0x10f55, 0x10f59}, |
| 4173 | {0x11047, 0x11048}, {0x110be, 0x110c1}, {0x11141, 0x11143}, {0x111c5, 0x111c6}, |
| 4174 | {0x111de, 0x111df}, {0x11238, 0x11239}, {0x1123b, 0x1123c}, {0x1144b, 0x1144c}, |
| 4175 | {0x115c2, 0x115c3}, {0x115c9, 0x115d7}, {0x11641, 0x11642}, {0x1173c, 0x1173e}, |
| 4176 | {0x11a42, 0x11a43}, {0x11a9b, 0x11a9c}, {0x11c41, 0x11c42}, {0x11ef7, 0x11ef8}, |
| 4177 | {0x16a6e, 0x16a6f}, {0x16b37, 0x16b38}}), |
| 4178 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4179 | return characterClass; |
| 4180 | } |
| 4181 | |
| 4182 | static std::unique_ptr<CharacterClass> createCharacterClass81() |
| 4183 | { |
| 4184 | // Name = Variation_Selector, number of codePoints: 259 |
| 4185 | auto characterClass = std::make_unique<CharacterClass>( |
| 4186 | std::initializer_list<UChar32>({}), |
| 4187 | std::initializer_list<CharacterRange>({}), |
| 4188 | std::initializer_list<UChar32>({}), |
| 4189 | std::initializer_list<CharacterRange>({{0x180b, 0x180d}, {0xfe00, 0xfe0f}, {0xe0100, 0xe01ef}}), |
| 4190 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4191 | return characterClass; |
| 4192 | } |
| 4193 | |
| 4194 | static std::unique_ptr<CharacterClass> createCharacterClass82() |
| 4195 | { |
| 4196 | // Name = Pattern_White_Space, number of codePoints: 11 |
| 4197 | auto characterClass = std::make_unique<CharacterClass>( |
| 4198 | std::initializer_list<UChar32>({0x20}), |
| 4199 | std::initializer_list<CharacterRange>({{0x09, 0x0d}}), |
| 4200 | std::initializer_list<UChar32>({0x0085}), |
| 4201 | std::initializer_list<CharacterRange>({{0x200e, 0x200f}, {0x2028, 0x2029}}), |
| 4202 | CharacterClassWidths::HasBMPChars); |
| 4203 | return characterClass; |
| 4204 | } |
| 4205 | |
| 4206 | static std::unique_ptr<CharacterClass> createCharacterClass83() |
| 4207 | { |
| 4208 | // Name = Pattern_Syntax, number of codePoints: 2760 |
| 4209 | auto characterClass = std::make_unique<CharacterClass>( |
| 4210 | std::initializer_list<UChar32>({0x60}), |
| 4211 | std::initializer_list<CharacterRange>({{0x21, 0x2f}, {0x3a, 0x40}, {0x5b, 0x5e}, {0x7b, 0x7e}}), |
| 4212 | std::initializer_list<UChar32>({0x00a9, 0x00ae, 0x00b6, 0x00bb, 0x00bf, 0x00d7, 0x00f7, 0x3030}), |
| 4213 | std::initializer_list<CharacterRange>({{0x00a1, 0x00a7}, {0x00ab, 0x00ac}, {0x00b0, 0x00b1}, {0x2010, 0x2027}, |
| 4214 | {0x2030, 0x203e}, {0x2041, 0x2053}, {0x2055, 0x205e}, {0x2190, 0x245f}, |
| 4215 | {0x2500, 0x2775}, {0x2794, 0x2bff}, {0x2e00, 0x2e7f}, {0x3001, 0x3003}, |
| 4216 | {0x3008, 0x3020}, {0xfd3e, 0xfd3f}, {0xfe45, 0xfe46}}), |
| 4217 | CharacterClassWidths::HasBMPChars); |
| 4218 | return characterClass; |
| 4219 | } |
| 4220 | |
| 4221 | static std::unique_ptr<CharacterClass> createCharacterClass84() |
| 4222 | { |
| 4223 | // Name = Regional_Indicator, number of codePoints: 26 |
| 4224 | auto characterClass = std::make_unique<CharacterClass>( |
| 4225 | std::initializer_list<UChar32>({}), |
| 4226 | std::initializer_list<CharacterRange>({}), |
| 4227 | std::initializer_list<UChar32>({}), |
| 4228 | std::initializer_list<CharacterRange>({{0x1f1e6, 0x1f1ff}}), |
| 4229 | CharacterClassWidths::HasNonBMPChars); |
| 4230 | return characterClass; |
| 4231 | } |
| 4232 | |
| 4233 | static std::unique_ptr<CharacterClass> createCharacterClass85() |
| 4234 | { |
| 4235 | // Name = Emoji, number of codePoints: 1250 |
| 4236 | auto characterClass = std::make_unique<CharacterClass>( |
| 4237 | std::initializer_list<UChar32>({0x23, 0x2a}), |
| 4238 | std::initializer_list<CharacterRange>({{0x30, 0x39}}), |
| 4239 | std::initializer_list<UChar32>({0x00a9, 0x00ae, 0x203c, 0x2049, 0x2122, 0x2139, 0x2328, 0x23cf, |
| 4240 | 0x24c2, 0x25b6, 0x25c0, 0x260e, 0x2611, 0x2618, 0x261d, 0x2620, |
| 4241 | 0x2626, 0x262a, 0x2640, 0x2642, 0x2663, 0x2668, 0x267b, 0x2699, |
| 4242 | 0x26c8, 0x26d1, 0x26fd, 0x2702, 0x2705, 0x270f, 0x2712, 0x2714, |
| 4243 | 0x2716, 0x271d, 0x2721, 0x2728, 0x2744, 0x2747, 0x274c, 0x274e, |
| 4244 | 0x2757, 0x27a1, 0x27b0, 0x27bf, 0x2b50, 0x2b55, 0x3030, 0x303d, |
| 4245 | 0x3297, 0x3299, 0x1f004, 0x1f0cf, 0x1f18e, 0x1f21a, 0x1f22f, 0x1f587, |
| 4246 | 0x1f590, 0x1f5a8, 0x1f5bc, 0x1f5e1, 0x1f5e3, 0x1f5e8, 0x1f5ef, 0x1f5f3, |
| 4247 | 0x1f6e9, 0x1f6f0, 0x1f97a}), |
| 4248 | std::initializer_list<CharacterRange>({{0x2194, 0x2199}, {0x21a9, 0x21aa}, {0x231a, 0x231b}, {0x23e9, 0x23f3}, |
| 4249 | {0x23f8, 0x23fa}, {0x25aa, 0x25ab}, {0x25fb, 0x25fe}, {0x2600, 0x2604}, |
| 4250 | {0x2614, 0x2615}, {0x2622, 0x2623}, {0x262e, 0x262f}, {0x2638, 0x263a}, |
| 4251 | {0x2648, 0x2653}, {0x265f, 0x2660}, {0x2665, 0x2666}, {0x267e, 0x267f}, |
| 4252 | {0x2692, 0x2697}, {0x269b, 0x269c}, {0x26a0, 0x26a1}, {0x26aa, 0x26ab}, |
| 4253 | {0x26b0, 0x26b1}, {0x26bd, 0x26be}, {0x26c4, 0x26c5}, {0x26ce, 0x26cf}, |
| 4254 | {0x26d3, 0x26d4}, {0x26e9, 0x26ea}, {0x26f0, 0x26f5}, {0x26f7, 0x26fa}, |
| 4255 | {0x2708, 0x270d}, {0x2733, 0x2734}, {0x2753, 0x2755}, {0x2763, 0x2764}, |
| 4256 | {0x2795, 0x2797}, {0x2934, 0x2935}, {0x2b05, 0x2b07}, {0x2b1b, 0x2b1c}, |
| 4257 | {0x1f170, 0x1f171}, {0x1f17e, 0x1f17f}, {0x1f191, 0x1f19a}, {0x1f1e6, 0x1f1ff}, |
| 4258 | {0x1f201, 0x1f202}, {0x1f232, 0x1f23a}, {0x1f250, 0x1f251}, {0x1f300, 0x1f321}, |
| 4259 | {0x1f324, 0x1f393}, {0x1f396, 0x1f397}, {0x1f399, 0x1f39b}, {0x1f39e, 0x1f3f0}, |
| 4260 | {0x1f3f3, 0x1f3f5}, {0x1f3f7, 0x1f4fd}, {0x1f4ff, 0x1f53d}, {0x1f549, 0x1f54e}, |
| 4261 | {0x1f550, 0x1f567}, {0x1f56f, 0x1f570}, {0x1f573, 0x1f57a}, {0x1f58a, 0x1f58d}, |
| 4262 | {0x1f595, 0x1f596}, {0x1f5a4, 0x1f5a5}, {0x1f5b1, 0x1f5b2}, {0x1f5c2, 0x1f5c4}, |
| 4263 | {0x1f5d1, 0x1f5d3}, {0x1f5dc, 0x1f5de}, {0x1f5fa, 0x1f64f}, {0x1f680, 0x1f6c5}, |
| 4264 | {0x1f6cb, 0x1f6d2}, {0x1f6e0, 0x1f6e5}, {0x1f6eb, 0x1f6ec}, {0x1f6f3, 0x1f6f9}, |
| 4265 | {0x1f910, 0x1f93a}, {0x1f93c, 0x1f93e}, {0x1f940, 0x1f945}, {0x1f947, 0x1f970}, |
| 4266 | {0x1f973, 0x1f976}, {0x1f97c, 0x1f9a2}, {0x1f9b0, 0x1f9b9}, {0x1f9c0, 0x1f9c2}, |
| 4267 | {0x1f9d0, 0x1f9ff}}), |
| 4268 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4269 | return characterClass; |
| 4270 | } |
| 4271 | |
| 4272 | static std::unique_ptr<CharacterClass> createCharacterClass86() |
| 4273 | { |
| 4274 | // Name = Emoji_Presentation, number of codePoints: 1032 |
| 4275 | auto characterClass = std::make_unique<CharacterClass>( |
| 4276 | std::initializer_list<UChar32>({}), |
| 4277 | std::initializer_list<CharacterRange>({}), |
| 4278 | std::initializer_list<UChar32>({0x23f0, 0x23f3, 0x267f, 0x2693, 0x26a1, 0x26ce, 0x26d4, 0x26ea, |
| 4279 | 0x26f5, 0x26fa, 0x26fd, 0x2705, 0x2728, 0x274c, 0x274e, 0x2757, |
| 4280 | 0x27b0, 0x27bf, 0x2b50, 0x2b55, 0x1f004, 0x1f0cf, 0x1f18e, 0x1f201, |
| 4281 | 0x1f21a, 0x1f22f, 0x1f3f4, 0x1f440, 0x1f57a, 0x1f5a4, 0x1f6cc, 0x1f97a}), |
| 4282 | std::initializer_list<CharacterRange>({{0x231a, 0x231b}, {0x23e9, 0x23ec}, {0x25fd, 0x25fe}, {0x2614, 0x2615}, |
| 4283 | {0x2648, 0x2653}, {0x26aa, 0x26ab}, {0x26bd, 0x26be}, {0x26c4, 0x26c5}, |
| 4284 | {0x26f2, 0x26f3}, {0x270a, 0x270b}, {0x2753, 0x2755}, {0x2795, 0x2797}, |
| 4285 | {0x2b1b, 0x2b1c}, {0x1f191, 0x1f19a}, {0x1f1e6, 0x1f1ff}, {0x1f232, 0x1f236}, |
| 4286 | {0x1f238, 0x1f23a}, {0x1f250, 0x1f251}, {0x1f300, 0x1f320}, {0x1f32d, 0x1f335}, |
| 4287 | {0x1f337, 0x1f37c}, {0x1f37e, 0x1f393}, {0x1f3a0, 0x1f3ca}, {0x1f3cf, 0x1f3d3}, |
| 4288 | {0x1f3e0, 0x1f3f0}, {0x1f3f8, 0x1f43e}, {0x1f442, 0x1f4fc}, {0x1f4ff, 0x1f53d}, |
| 4289 | {0x1f54b, 0x1f54e}, {0x1f550, 0x1f567}, {0x1f595, 0x1f596}, {0x1f5fb, 0x1f64f}, |
| 4290 | {0x1f680, 0x1f6c5}, {0x1f6d0, 0x1f6d2}, {0x1f6eb, 0x1f6ec}, {0x1f6f4, 0x1f6f9}, |
| 4291 | {0x1f910, 0x1f93a}, {0x1f93c, 0x1f93e}, {0x1f940, 0x1f945}, {0x1f947, 0x1f970}, |
| 4292 | {0x1f973, 0x1f976}, {0x1f97c, 0x1f9a2}, {0x1f9b0, 0x1f9b9}, {0x1f9c0, 0x1f9c2}, |
| 4293 | {0x1f9d0, 0x1f9ff}}), |
| 4294 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4295 | return characterClass; |
| 4296 | } |
| 4297 | |
| 4298 | static std::unique_ptr<CharacterClass> createCharacterClass87() |
| 4299 | { |
| 4300 | // Name = Emoji_Modifier, number of codePoints: 5 |
| 4301 | auto characterClass = std::make_unique<CharacterClass>( |
| 4302 | std::initializer_list<UChar32>({}), |
| 4303 | std::initializer_list<CharacterRange>({}), |
| 4304 | std::initializer_list<UChar32>({}), |
| 4305 | std::initializer_list<CharacterRange>({{0x1f3fb, 0x1f3ff}}), |
| 4306 | CharacterClassWidths::HasNonBMPChars); |
| 4307 | return characterClass; |
| 4308 | } |
| 4309 | |
| 4310 | static std::unique_ptr<CharacterClass> createCharacterClass88() |
| 4311 | { |
| 4312 | // Name = Emoji_Modifier_Base, number of codePoints: 106 |
| 4313 | auto characterClass = std::make_unique<CharacterClass>( |
| 4314 | std::initializer_list<UChar32>({}), |
| 4315 | std::initializer_list<CharacterRange>({}), |
| 4316 | std::initializer_list<UChar32>({0x261d, 0x26f9, 0x1f385, 0x1f3c7, 0x1f46e, 0x1f47c, 0x1f4aa, 0x1f57a, |
| 4317 | 0x1f590, 0x1f6a3, 0x1f6c0, 0x1f6cc, 0x1f926}), |
| 4318 | std::initializer_list<CharacterRange>({{0x270a, 0x270d}, {0x1f3c2, 0x1f3c4}, {0x1f3ca, 0x1f3cc}, {0x1f442, 0x1f443}, |
| 4319 | {0x1f446, 0x1f450}, {0x1f466, 0x1f469}, {0x1f470, 0x1f478}, {0x1f481, 0x1f483}, |
| 4320 | {0x1f485, 0x1f487}, {0x1f574, 0x1f575}, {0x1f595, 0x1f596}, {0x1f645, 0x1f647}, |
| 4321 | {0x1f64b, 0x1f64f}, {0x1f6b4, 0x1f6b6}, {0x1f918, 0x1f91c}, {0x1f91e, 0x1f91f}, |
| 4322 | {0x1f930, 0x1f939}, {0x1f93d, 0x1f93e}, {0x1f9b5, 0x1f9b6}, {0x1f9b8, 0x1f9b9}, |
| 4323 | {0x1f9d1, 0x1f9dd}}), |
| 4324 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4325 | return characterClass; |
| 4326 | } |
| 4327 | |
| 4328 | static std::unique_ptr<CharacterClass> createCharacterClass89() |
| 4329 | { |
| 4330 | // Name = Emoji_Component, number of codePoints: 146 |
| 4331 | auto characterClass = std::make_unique<CharacterClass>( |
| 4332 | std::initializer_list<UChar32>({0x23, 0x2a}), |
| 4333 | std::initializer_list<CharacterRange>({{0x30, 0x39}}), |
| 4334 | std::initializer_list<UChar32>({0x200d, 0x20e3, 0xfe0f}), |
| 4335 | std::initializer_list<CharacterRange>({{0x1f1e6, 0x1f1ff}, {0x1f3fb, 0x1f3ff}, {0x1f9b0, 0x1f9b3}, {0xe0020, 0xe007f}}), |
| 4336 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4337 | return characterClass; |
| 4338 | } |
| 4339 | |
| 4340 | static std::unique_ptr<CharacterClass> createCharacterClass90() |
| 4341 | { |
| 4342 | // Name = Extended_Pictographic, number of codePoints: 3793 |
| 4343 | auto characterClass = std::make_unique<CharacterClass>( |
| 4344 | std::initializer_list<UChar32>({}), |
| 4345 | std::initializer_list<CharacterRange>({}), |
| 4346 | std::initializer_list<UChar32>({0x00a9, 0x00ae, 0x203c, 0x2049, 0x2122, 0x2139, 0x2328, 0x2388, |
| 4347 | 0x23cf, 0x24c2, 0x25b6, 0x25c0, 0x2714, 0x2716, 0x271d, 0x2721, |
| 4348 | 0x2728, 0x2744, 0x2747, 0x274c, 0x274e, 0x2757, 0x27a1, 0x27b0, |
| 4349 | 0x27bf, 0x2b50, 0x2b55, 0x3030, 0x303d, 0x3297, 0x3299, 0x1f12f, |
| 4350 | 0x1f18e, 0x1f21a, 0x1f22f}), |
| 4351 | std::initializer_list<CharacterRange>({{0x2194, 0x2199}, {0x21a9, 0x21aa}, {0x231a, 0x231b}, {0x23e9, 0x23f3}, |
| 4352 | {0x23f8, 0x23fa}, {0x25aa, 0x25ab}, {0x25fb, 0x25fe}, {0x2600, 0x2605}, |
| 4353 | {0x2607, 0x2612}, {0x2614, 0x2685}, {0x2690, 0x2705}, {0x2708, 0x2712}, |
| 4354 | {0x2733, 0x2734}, {0x2753, 0x2755}, {0x2763, 0x2767}, {0x2795, 0x2797}, |
| 4355 | {0x2934, 0x2935}, {0x2b05, 0x2b07}, {0x2b1b, 0x2b1c}, {0x1f000, 0x1f0ff}, |
| 4356 | {0x1f10d, 0x1f10f}, {0x1f16c, 0x1f171}, {0x1f17e, 0x1f17f}, {0x1f191, 0x1f19a}, |
| 4357 | {0x1f1ad, 0x1f1e5}, {0x1f201, 0x1f20f}, {0x1f232, 0x1f23a}, {0x1f23c, 0x1f23f}, |
| 4358 | {0x1f249, 0x1f3fa}, {0x1f400, 0x1f53d}, {0x1f546, 0x1f64f}, {0x1f680, 0x1f6ff}, |
| 4359 | {0x1f774, 0x1f77f}, {0x1f7d5, 0x1f7ff}, {0x1f80c, 0x1f80f}, {0x1f848, 0x1f84f}, |
| 4360 | {0x1f85a, 0x1f85f}, {0x1f888, 0x1f88f}, {0x1f8ae, 0x1f8ff}, {0x1f90c, 0x1f93a}, |
| 4361 | {0x1f93c, 0x1f945}, {0x1f947, 0x1fffd}}), |
| 4362 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4363 | return characterClass; |
| 4364 | } |
| 4365 | |
| 4366 | static std::unique_ptr<CharacterClass> createCharacterClass91() |
| 4367 | { |
| 4368 | // Name = Unknown, number of codePoints: 976673 |
| 4369 | auto characterClass = std::make_unique<CharacterClass>( |
| 4370 | std::initializer_list<UChar32>({}), |
| 4371 | std::initializer_list<CharacterRange>({}), |
| 4372 | std::initializer_list<UChar32>({0x038b, 0x038d, 0x03a2, 0x0530, 0x0590, 0x061d, 0x070e, 0x083f, |
| 4373 | 0x085f, 0x08b5, 0x0984, 0x09a9, 0x09b1, 0x09de, 0x0a04, 0x0a29, |
| 4374 | 0x0a31, 0x0a34, 0x0a37, 0x0a3d, 0x0a5d, 0x0a84, 0x0a8e, 0x0a92, |
| 4375 | 0x0aa9, 0x0ab1, 0x0ab4, 0x0ac6, 0x0aca, 0x0b00, 0x0b04, 0x0b29, |
| 4376 | 0x0b31, 0x0b34, 0x0b5e, 0x0b84, 0x0b91, 0x0b9b, 0x0b9d, 0x0bc9, |
| 4377 | 0x0c0d, 0x0c11, 0x0c29, 0x0c45, 0x0c49, 0x0c57, 0x0c8d, 0x0c91, |
| 4378 | 0x0ca9, 0x0cb4, 0x0cc5, 0x0cc9, 0x0cdf, 0x0cf0, 0x0d04, 0x0d0d, |
| 4379 | 0x0d11, 0x0d45, 0x0d49, 0x0d84, 0x0db2, 0x0dbc, 0x0dd5, 0x0dd7, |
| 4380 | 0x0e83, 0x0e89, 0x0e98, 0x0ea0, 0x0ea4, 0x0ea6, 0x0eac, 0x0eba, |
| 4381 | 0x0ec5, 0x0ec7, 0x0f48, 0x0f98, 0x0fbd, 0x0fcd, 0x10c6, 0x1249, |
| 4382 | 0x1257, 0x1259, 0x1289, 0x12b1, 0x12bf, 0x12c1, 0x12d7, 0x1311, |
| 4383 | 0x170d, 0x176d, 0x1771, 0x180f, 0x191f, 0x1a5f, 0x1dfa, 0x1f58, |
| 4384 | 0x1f5a, 0x1f5c, 0x1f5e, 0x1fb5, 0x1fc5, 0x1fdc, 0x1ff5, 0x1fff, |
| 4385 | 0x2065, 0x208f, 0x2bc9, 0x2bff, 0x2c2f, 0x2c5f, 0x2d26, 0x2da7, |
| 4386 | 0x2daf, 0x2db7, 0x2dbf, 0x2dc7, 0x2dcf, 0x2dd7, 0x2ddf, 0x2e9a, |
| 4387 | 0x3040, 0x3130, 0x318f, 0x321f, 0x32ff, 0xa9ce, 0xa9ff, 0xab27, |
| 4388 | 0xab2f, 0xfb37, 0xfb3d, 0xfb3f, 0xfb42, 0xfb45, 0xfe53, 0xfe67, |
| 4389 | 0xfe75, 0xff00, 0xffe7, 0x1000c, 0x10027, 0x1003b, 0x1003e, 0x1018f, |
| 4390 | 0x1039e, 0x10809, 0x10836, 0x10856, 0x108f3, 0x10a04, 0x10a14, 0x10a18, |
| 4391 | 0x11135, 0x111e0, 0x11212, 0x11287, 0x11289, 0x1128e, 0x1129e, 0x11304, |
| 4392 | 0x11329, 0x11331, 0x11334, 0x1133a, 0x1145a, 0x1145c, 0x11c09, 0x11c37, |
| 4393 | 0x11ca8, 0x11d07, 0x11d0a, 0x11d3b, 0x11d3e, 0x11d66, 0x11d69, 0x11d8f, |
| 4394 | 0x11d92, 0x1246f, 0x16a5f, 0x16b5a, 0x16b62, 0x1d455, 0x1d49d, 0x1d4ad, |
| 4395 | 0x1d4ba, 0x1d4bc, 0x1d4c4, 0x1d506, 0x1d515, 0x1d51d, 0x1d53a, 0x1d53f, |
| 4396 | 0x1d545, 0x1d551, 0x1daa0, 0x1e007, 0x1e022, 0x1e025, 0x1ee04, 0x1ee20, |
| 4397 | 0x1ee23, 0x1ee28, 0x1ee33, 0x1ee38, 0x1ee3a, 0x1ee48, 0x1ee4a, 0x1ee4c, |
| 4398 | 0x1ee50, 0x1ee53, 0x1ee58, 0x1ee5a, 0x1ee5c, 0x1ee5e, 0x1ee60, 0x1ee63, |
| 4399 | 0x1ee6b, 0x1ee73, 0x1ee78, 0x1ee7d, 0x1ee7f, 0x1ee8a, 0x1eea4, 0x1eeaa, |
| 4400 | 0x1f0c0, 0x1f0d0, 0x1f93f, 0x1f97b}), |
| 4401 | std::initializer_list<CharacterRange>({{0x0378, 0x0379}, {0x0380, 0x0383}, {0x0557, 0x0558}, {0x058b, 0x058c}, |
| 4402 | {0x05c8, 0x05cf}, {0x05eb, 0x05ee}, {0x05f5, 0x05ff}, {0x074b, 0x074c}, |
| 4403 | {0x07b2, 0x07bf}, {0x07fb, 0x07fc}, {0x082e, 0x082f}, {0x085c, 0x085d}, |
| 4404 | {0x086b, 0x089f}, {0x08be, 0x08d2}, {0x098d, 0x098e}, {0x0991, 0x0992}, |
| 4405 | {0x09b3, 0x09b5}, {0x09ba, 0x09bb}, {0x09c5, 0x09c6}, {0x09c9, 0x09ca}, |
| 4406 | {0x09cf, 0x09d6}, {0x09d8, 0x09db}, {0x09e4, 0x09e5}, {0x09ff, 0x0a00}, |
| 4407 | {0x0a0b, 0x0a0e}, {0x0a11, 0x0a12}, {0x0a3a, 0x0a3b}, {0x0a43, 0x0a46}, |
| 4408 | {0x0a49, 0x0a4a}, {0x0a4e, 0x0a50}, {0x0a52, 0x0a58}, {0x0a5f, 0x0a65}, |
| 4409 | {0x0a77, 0x0a80}, {0x0aba, 0x0abb}, {0x0ace, 0x0acf}, {0x0ad1, 0x0adf}, |
| 4410 | {0x0ae4, 0x0ae5}, {0x0af2, 0x0af8}, {0x0b0d, 0x0b0e}, {0x0b11, 0x0b12}, |
| 4411 | {0x0b3a, 0x0b3b}, {0x0b45, 0x0b46}, {0x0b49, 0x0b4a}, {0x0b4e, 0x0b55}, |
| 4412 | {0x0b58, 0x0b5b}, {0x0b64, 0x0b65}, {0x0b78, 0x0b81}, {0x0b8b, 0x0b8d}, |
| 4413 | {0x0b96, 0x0b98}, {0x0ba0, 0x0ba2}, {0x0ba5, 0x0ba7}, {0x0bab, 0x0bad}, |
| 4414 | {0x0bba, 0x0bbd}, {0x0bc3, 0x0bc5}, {0x0bce, 0x0bcf}, {0x0bd1, 0x0bd6}, |
| 4415 | {0x0bd8, 0x0be5}, {0x0bfb, 0x0bff}, {0x0c3a, 0x0c3c}, {0x0c4e, 0x0c54}, |
| 4416 | {0x0c5b, 0x0c5f}, {0x0c64, 0x0c65}, {0x0c70, 0x0c77}, {0x0cba, 0x0cbb}, |
| 4417 | {0x0cce, 0x0cd4}, {0x0cd7, 0x0cdd}, {0x0ce4, 0x0ce5}, {0x0cf3, 0x0cff}, |
| 4418 | {0x0d50, 0x0d53}, {0x0d64, 0x0d65}, {0x0d80, 0x0d81}, {0x0d97, 0x0d99}, |
| 4419 | {0x0dbe, 0x0dbf}, {0x0dc7, 0x0dc9}, {0x0dcb, 0x0dce}, {0x0de0, 0x0de5}, |
| 4420 | {0x0df0, 0x0df1}, {0x0df5, 0x0e00}, {0x0e3b, 0x0e3e}, {0x0e5c, 0x0e80}, |
| 4421 | {0x0e85, 0x0e86}, {0x0e8b, 0x0e8c}, {0x0e8e, 0x0e93}, {0x0ea8, 0x0ea9}, |
| 4422 | {0x0ebe, 0x0ebf}, {0x0ece, 0x0ecf}, {0x0eda, 0x0edb}, {0x0ee0, 0x0eff}, |
| 4423 | {0x0f6d, 0x0f70}, {0x0fdb, 0x0fff}, {0x10c8, 0x10cc}, {0x10ce, 0x10cf}, |
| 4424 | {0x124e, 0x124f}, {0x125e, 0x125f}, {0x128e, 0x128f}, {0x12b6, 0x12b7}, |
| 4425 | {0x12c6, 0x12c7}, {0x1316, 0x1317}, {0x135b, 0x135c}, {0x137d, 0x137f}, |
| 4426 | {0x139a, 0x139f}, {0x13f6, 0x13f7}, {0x13fe, 0x13ff}, {0x169d, 0x169f}, |
| 4427 | {0x16f9, 0x16ff}, {0x1715, 0x171f}, {0x1737, 0x173f}, {0x1754, 0x175f}, |
| 4428 | {0x1774, 0x177f}, {0x17de, 0x17df}, {0x17ea, 0x17ef}, {0x17fa, 0x17ff}, |
| 4429 | {0x181a, 0x181f}, {0x1879, 0x187f}, {0x18ab, 0x18af}, {0x18f6, 0x18ff}, |
| 4430 | {0x192c, 0x192f}, {0x193c, 0x193f}, {0x1941, 0x1943}, {0x196e, 0x196f}, |
| 4431 | {0x1975, 0x197f}, {0x19ac, 0x19af}, {0x19ca, 0x19cf}, {0x19db, 0x19dd}, |
| 4432 | {0x1a1c, 0x1a1d}, {0x1a7d, 0x1a7e}, {0x1a8a, 0x1a8f}, {0x1a9a, 0x1a9f}, |
| 4433 | {0x1aae, 0x1aaf}, {0x1abf, 0x1aff}, {0x1b4c, 0x1b4f}, {0x1b7d, 0x1b7f}, |
| 4434 | {0x1bf4, 0x1bfb}, {0x1c38, 0x1c3a}, {0x1c4a, 0x1c4c}, {0x1c89, 0x1c8f}, |
| 4435 | {0x1cbb, 0x1cbc}, {0x1cc8, 0x1ccf}, {0x1cfa, 0x1cff}, {0x1f16, 0x1f17}, |
| 4436 | {0x1f1e, 0x1f1f}, {0x1f46, 0x1f47}, {0x1f4e, 0x1f4f}, {0x1f7e, 0x1f7f}, |
| 4437 | {0x1fd4, 0x1fd5}, {0x1ff0, 0x1ff1}, {0x2072, 0x2073}, {0x209d, 0x209f}, |
| 4438 | {0x20c0, 0x20cf}, {0x20f1, 0x20ff}, {0x218c, 0x218f}, {0x2427, 0x243f}, |
| 4439 | {0x244b, 0x245f}, {0x2b74, 0x2b75}, {0x2b96, 0x2b97}, {0x2cf4, 0x2cf8}, |
| 4440 | {0x2d28, 0x2d2c}, {0x2d2e, 0x2d2f}, {0x2d68, 0x2d6e}, {0x2d71, 0x2d7e}, |
| 4441 | {0x2d97, 0x2d9f}, {0x2e4f, 0x2e7f}, {0x2ef4, 0x2eff}, {0x2fd6, 0x2fef}, |
| 4442 | {0x2ffc, 0x2fff}, {0x3097, 0x3098}, {0x3100, 0x3104}, {0x31bb, 0x31bf}, |
| 4443 | {0x31e4, 0x31ef}, {0x4db6, 0x4dbf}, {0x9ff0, 0x9fff}, {0xa48d, 0xa48f}, |
| 4444 | {0xa4c7, 0xa4cf}, {0xa62c, 0xa63f}, {0xa6f8, 0xa6ff}, {0xa7ba, 0xa7f6}, |
| 4445 | {0xa82c, 0xa82f}, {0xa83a, 0xa83f}, {0xa878, 0xa87f}, {0xa8c6, 0xa8cd}, |
| 4446 | {0xa8da, 0xa8df}, {0xa954, 0xa95e}, {0xa97d, 0xa97f}, {0xa9da, 0xa9dd}, |
| 4447 | {0xaa37, 0xaa3f}, {0xaa4e, 0xaa4f}, {0xaa5a, 0xaa5b}, {0xaac3, 0xaada}, |
| 4448 | {0xaaf7, 0xab00}, {0xab07, 0xab08}, {0xab0f, 0xab10}, {0xab17, 0xab1f}, |
| 4449 | {0xab66, 0xab6f}, {0xabee, 0xabef}, {0xabfa, 0xabff}, {0xd7a4, 0xd7af}, |
| 4450 | {0xd7c7, 0xd7ca}, {0xd7fc, 0xf8ff}, {0xfa6e, 0xfa6f}, {0xfada, 0xfaff}, |
| 4451 | {0xfb07, 0xfb12}, {0xfb18, 0xfb1c}, {0xfbc2, 0xfbd2}, {0xfd40, 0xfd4f}, |
| 4452 | {0xfd90, 0xfd91}, {0xfdc8, 0xfdef}, {0xfdfe, 0xfdff}, {0xfe1a, 0xfe1f}, |
| 4453 | {0xfe6c, 0xfe6f}, {0xfefd, 0xfefe}, {0xffbf, 0xffc1}, {0xffc8, 0xffc9}, |
| 4454 | {0xffd0, 0xffd1}, {0xffd8, 0xffd9}, {0xffdd, 0xffdf}, {0xffef, 0xfff8}, |
| 4455 | {0xfffe, 0xffff}, {0x1004e, 0x1004f}, {0x1005e, 0x1007f}, {0x100fb, 0x100ff}, |
| 4456 | {0x10103, 0x10106}, {0x10134, 0x10136}, {0x1019c, 0x1019f}, {0x101a1, 0x101cf}, |
| 4457 | {0x101fe, 0x1027f}, {0x1029d, 0x1029f}, {0x102d1, 0x102df}, {0x102fc, 0x102ff}, |
| 4458 | {0x10324, 0x1032c}, {0x1034b, 0x1034f}, {0x1037b, 0x1037f}, {0x103c4, 0x103c7}, |
| 4459 | {0x103d6, 0x103ff}, {0x1049e, 0x1049f}, {0x104aa, 0x104af}, {0x104d4, 0x104d7}, |
| 4460 | {0x104fc, 0x104ff}, {0x10528, 0x1052f}, {0x10564, 0x1056e}, {0x10570, 0x105ff}, |
| 4461 | {0x10737, 0x1073f}, {0x10756, 0x1075f}, {0x10768, 0x107ff}, {0x10806, 0x10807}, |
| 4462 | {0x10839, 0x1083b}, {0x1083d, 0x1083e}, {0x1089f, 0x108a6}, {0x108b0, 0x108df}, |
| 4463 | {0x108f6, 0x108fa}, {0x1091c, 0x1091e}, {0x1093a, 0x1093e}, {0x10940, 0x1097f}, |
| 4464 | {0x109b8, 0x109bb}, {0x109d0, 0x109d1}, {0x10a07, 0x10a0b}, {0x10a36, 0x10a37}, |
| 4465 | {0x10a3b, 0x10a3e}, {0x10a49, 0x10a4f}, {0x10a59, 0x10a5f}, {0x10aa0, 0x10abf}, |
| 4466 | {0x10ae7, 0x10aea}, {0x10af7, 0x10aff}, {0x10b36, 0x10b38}, {0x10b56, 0x10b57}, |
| 4467 | {0x10b73, 0x10b77}, {0x10b92, 0x10b98}, {0x10b9d, 0x10ba8}, {0x10bb0, 0x10bff}, |
| 4468 | {0x10c49, 0x10c7f}, {0x10cb3, 0x10cbf}, {0x10cf3, 0x10cf9}, {0x10d28, 0x10d2f}, |
| 4469 | {0x10d3a, 0x10e5f}, {0x10e7f, 0x10eff}, {0x10f28, 0x10f2f}, {0x10f5a, 0x10fff}, |
| 4470 | {0x1104e, 0x11051}, {0x11070, 0x1107e}, {0x110c2, 0x110cc}, {0x110ce, 0x110cf}, |
| 4471 | {0x110e9, 0x110ef}, {0x110fa, 0x110ff}, {0x11147, 0x1114f}, {0x11177, 0x1117f}, |
| 4472 | {0x111ce, 0x111cf}, {0x111f5, 0x111ff}, {0x1123f, 0x1127f}, {0x112aa, 0x112af}, |
| 4473 | {0x112eb, 0x112ef}, {0x112fa, 0x112ff}, {0x1130d, 0x1130e}, {0x11311, 0x11312}, |
| 4474 | {0x11345, 0x11346}, {0x11349, 0x1134a}, {0x1134e, 0x1134f}, {0x11351, 0x11356}, |
| 4475 | {0x11358, 0x1135c}, {0x11364, 0x11365}, {0x1136d, 0x1136f}, {0x11375, 0x113ff}, |
| 4476 | {0x1145f, 0x1147f}, {0x114c8, 0x114cf}, {0x114da, 0x1157f}, {0x115b6, 0x115b7}, |
| 4477 | {0x115de, 0x115ff}, {0x11645, 0x1164f}, {0x1165a, 0x1165f}, {0x1166d, 0x1167f}, |
| 4478 | {0x116b8, 0x116bf}, {0x116ca, 0x116ff}, {0x1171b, 0x1171c}, {0x1172c, 0x1172f}, |
| 4479 | {0x11740, 0x117ff}, {0x1183c, 0x1189f}, {0x118f3, 0x118fe}, {0x11900, 0x119ff}, |
| 4480 | {0x11a48, 0x11a4f}, {0x11a84, 0x11a85}, {0x11aa3, 0x11abf}, {0x11af9, 0x11bff}, |
| 4481 | {0x11c46, 0x11c4f}, {0x11c6d, 0x11c6f}, {0x11c90, 0x11c91}, {0x11cb7, 0x11cff}, |
| 4482 | {0x11d37, 0x11d39}, {0x11d48, 0x11d4f}, {0x11d5a, 0x11d5f}, {0x11d99, 0x11d9f}, |
| 4483 | {0x11daa, 0x11edf}, {0x11ef9, 0x11fff}, {0x1239a, 0x123ff}, {0x12475, 0x1247f}, |
| 4484 | {0x12544, 0x12fff}, {0x1342f, 0x143ff}, {0x14647, 0x167ff}, {0x16a39, 0x16a3f}, |
| 4485 | {0x16a6a, 0x16a6d}, {0x16a70, 0x16acf}, {0x16aee, 0x16aef}, {0x16af6, 0x16aff}, |
| 4486 | {0x16b46, 0x16b4f}, {0x16b78, 0x16b7c}, {0x16b90, 0x16e3f}, {0x16e9b, 0x16eff}, |
| 4487 | {0x16f45, 0x16f4f}, {0x16f7f, 0x16f8e}, {0x16fa0, 0x16fdf}, {0x16fe2, 0x16fff}, |
| 4488 | {0x187f2, 0x187ff}, {0x18af3, 0x1afff}, {0x1b11f, 0x1b16f}, {0x1b2fc, 0x1bbff}, |
| 4489 | {0x1bc6b, 0x1bc6f}, {0x1bc7d, 0x1bc7f}, {0x1bc89, 0x1bc8f}, {0x1bc9a, 0x1bc9b}, |
| 4490 | {0x1bca4, 0x1cfff}, {0x1d0f6, 0x1d0ff}, {0x1d127, 0x1d128}, {0x1d1e9, 0x1d1ff}, |
| 4491 | {0x1d246, 0x1d2df}, {0x1d2f4, 0x1d2ff}, {0x1d357, 0x1d35f}, {0x1d379, 0x1d3ff}, |
| 4492 | {0x1d4a0, 0x1d4a1}, {0x1d4a3, 0x1d4a4}, {0x1d4a7, 0x1d4a8}, {0x1d50b, 0x1d50c}, |
| 4493 | {0x1d547, 0x1d549}, {0x1d6a6, 0x1d6a7}, {0x1d7cc, 0x1d7cd}, {0x1da8c, 0x1da9a}, |
| 4494 | {0x1dab0, 0x1dfff}, {0x1e019, 0x1e01a}, {0x1e02b, 0x1e7ff}, {0x1e8c5, 0x1e8c6}, |
| 4495 | {0x1e8d7, 0x1e8ff}, {0x1e94b, 0x1e94f}, {0x1e95a, 0x1e95d}, {0x1e960, 0x1ec70}, |
| 4496 | {0x1ecb5, 0x1edff}, {0x1ee25, 0x1ee26}, {0x1ee3c, 0x1ee41}, {0x1ee43, 0x1ee46}, |
| 4497 | {0x1ee55, 0x1ee56}, {0x1ee65, 0x1ee66}, {0x1ee9c, 0x1eea0}, {0x1eebc, 0x1eeef}, |
| 4498 | {0x1eef2, 0x1efff}, {0x1f02c, 0x1f02f}, {0x1f094, 0x1f09f}, {0x1f0af, 0x1f0b0}, |
| 4499 | {0x1f0f6, 0x1f0ff}, {0x1f10d, 0x1f10f}, {0x1f16c, 0x1f16f}, {0x1f1ad, 0x1f1e5}, |
| 4500 | {0x1f203, 0x1f20f}, {0x1f23c, 0x1f23f}, {0x1f249, 0x1f24f}, {0x1f252, 0x1f25f}, |
| 4501 | {0x1f266, 0x1f2ff}, {0x1f6d5, 0x1f6df}, {0x1f6ed, 0x1f6ef}, {0x1f6fa, 0x1f6ff}, |
| 4502 | {0x1f774, 0x1f77f}, {0x1f7d9, 0x1f7ff}, {0x1f80c, 0x1f80f}, {0x1f848, 0x1f84f}, |
| 4503 | {0x1f85a, 0x1f85f}, {0x1f888, 0x1f88f}, {0x1f8ae, 0x1f8ff}, {0x1f90c, 0x1f90f}, |
| 4504 | {0x1f971, 0x1f972}, {0x1f977, 0x1f979}, {0x1f9a3, 0x1f9af}, {0x1f9ba, 0x1f9bf}, |
| 4505 | {0x1f9c3, 0x1f9cf}, {0x1fa00, 0x1fa5f}, {0x1fa6e, 0x1ffff}, {0x2a6d7, 0x2a6ff}, |
| 4506 | {0x2b735, 0x2b73f}, {0x2b81e, 0x2b81f}, {0x2cea2, 0x2ceaf}, {0x2ebe1, 0x2f7ff}, |
| 4507 | {0x2fa1e, 0xe0000}, {0xe0002, 0xe001f}, {0xe0080, 0xe00ff}, {0xe01f0, 0x10ffff}}), |
| 4508 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4509 | return characterClass; |
| 4510 | } |
| 4511 | |
| 4512 | static std::unique_ptr<CharacterClass> createCharacterClass92() |
| 4513 | { |
| 4514 | // Name = Common, number of codePoints: 7591 |
| 4515 | auto characterClass = std::make_unique<CharacterClass>( |
| 4516 | std::initializer_list<UChar32>({}), |
| 4517 | std::initializer_list<CharacterRange>({{0x00, 0x40}, {0x5b, 0x60}, {0x7b, 0x7f}}), |
| 4518 | std::initializer_list<UChar32>({0x00d7, 0x00f7, 0x0374, 0x037e, 0x0385, 0x0387, 0x0589, 0x0605, |
| 4519 | 0x060c, 0x061b, 0x061f, 0x0640, 0x06dd, 0x08e2, 0x0e3f, 0x10fb, |
| 4520 | 0x1805, 0x1cd3, 0x1ce1, 0x3006, 0x30a0, 0xa92e, 0xa9cf, 0xab5b, |
| 4521 | 0xfeff, 0xff70, 0x1d4a2, 0x1d4bb, 0x1d546, 0x1f97a, 0xe0001}), |
| 4522 | std::initializer_list<CharacterRange>({{0x0080, 0x00a9}, {0x00ab, 0x00b9}, {0x00bb, 0x00bf}, {0x02b9, 0x02df}, |
| 4523 | {0x02e5, 0x02e9}, {0x02ec, 0x02ff}, {0x0964, 0x0965}, {0x0fd5, 0x0fd8}, |
| 4524 | {0x16eb, 0x16ed}, {0x1735, 0x1736}, {0x1802, 0x1803}, {0x1ce9, 0x1cec}, |
| 4525 | {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf7}, {0x2000, 0x200b}, {0x200e, 0x2064}, |
| 4526 | {0x2066, 0x2070}, {0x2074, 0x207e}, {0x2080, 0x208e}, {0x20a0, 0x20bf}, |
| 4527 | {0x2100, 0x2125}, {0x2127, 0x2129}, {0x212c, 0x2131}, {0x2133, 0x214d}, |
| 4528 | {0x214f, 0x215f}, {0x2189, 0x218b}, {0x2190, 0x2426}, {0x2440, 0x244a}, |
| 4529 | {0x2460, 0x27ff}, {0x2900, 0x2b73}, {0x2b76, 0x2b95}, {0x2b98, 0x2bc8}, |
| 4530 | {0x2bca, 0x2bfe}, {0x2e00, 0x2e4e}, {0x2ff0, 0x2ffb}, {0x3000, 0x3004}, |
| 4531 | {0x3008, 0x3020}, {0x3030, 0x3037}, {0x303c, 0x303f}, {0x309b, 0x309c}, |
| 4532 | {0x30fb, 0x30fc}, {0x3190, 0x319f}, {0x31c0, 0x31e3}, {0x3220, 0x325f}, |
| 4533 | {0x327f, 0x32cf}, {0x3358, 0x33ff}, {0x4dc0, 0x4dff}, {0xa700, 0xa721}, |
| 4534 | {0xa788, 0xa78a}, {0xa830, 0xa839}, {0xfd3e, 0xfd3f}, {0xfe10, 0xfe19}, |
| 4535 | {0xfe30, 0xfe52}, {0xfe54, 0xfe66}, {0xfe68, 0xfe6b}, {0xff01, 0xff20}, |
| 4536 | {0xff3b, 0xff40}, {0xff5b, 0xff65}, {0xff9e, 0xff9f}, {0xffe0, 0xffe6}, |
| 4537 | {0xffe8, 0xffee}, {0xfff9, 0xfffd}, {0x10100, 0x10102}, {0x10107, 0x10133}, |
| 4538 | {0x10137, 0x1013f}, {0x10190, 0x1019b}, {0x101d0, 0x101fc}, {0x102e1, 0x102fb}, |
| 4539 | {0x1bca0, 0x1bca3}, {0x1d000, 0x1d0f5}, {0x1d100, 0x1d126}, {0x1d129, 0x1d166}, |
| 4540 | {0x1d16a, 0x1d17a}, {0x1d183, 0x1d184}, {0x1d18c, 0x1d1a9}, {0x1d1ae, 0x1d1e8}, |
| 4541 | {0x1d2e0, 0x1d2f3}, {0x1d300, 0x1d356}, {0x1d360, 0x1d378}, {0x1d400, 0x1d454}, |
| 4542 | {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, |
| 4543 | {0x1d4ae, 0x1d4b9}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, |
| 4544 | {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, |
| 4545 | {0x1d540, 0x1d544}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d7cb}, |
| 4546 | {0x1d7ce, 0x1d7ff}, {0x1ec71, 0x1ecb4}, {0x1f000, 0x1f02b}, {0x1f030, 0x1f093}, |
| 4547 | {0x1f0a0, 0x1f0ae}, {0x1f0b1, 0x1f0bf}, {0x1f0c1, 0x1f0cf}, {0x1f0d1, 0x1f0f5}, |
| 4548 | {0x1f100, 0x1f10c}, {0x1f110, 0x1f16b}, {0x1f170, 0x1f1ac}, {0x1f1e6, 0x1f1ff}, |
| 4549 | {0x1f201, 0x1f202}, {0x1f210, 0x1f23b}, {0x1f240, 0x1f248}, {0x1f250, 0x1f251}, |
| 4550 | {0x1f260, 0x1f265}, {0x1f300, 0x1f6d4}, {0x1f6e0, 0x1f6ec}, {0x1f6f0, 0x1f6f9}, |
| 4551 | {0x1f700, 0x1f773}, {0x1f780, 0x1f7d8}, {0x1f800, 0x1f80b}, {0x1f810, 0x1f847}, |
| 4552 | {0x1f850, 0x1f859}, {0x1f860, 0x1f887}, {0x1f890, 0x1f8ad}, {0x1f900, 0x1f90b}, |
| 4553 | {0x1f910, 0x1f93e}, {0x1f940, 0x1f970}, {0x1f973, 0x1f976}, {0x1f97c, 0x1f9a2}, |
| 4554 | {0x1f9b0, 0x1f9b9}, {0x1f9c0, 0x1f9c2}, {0x1f9d0, 0x1f9ff}, {0x1fa60, 0x1fa6d}, |
| 4555 | {0xe0020, 0xe007f}}), |
| 4556 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4557 | return characterClass; |
| 4558 | } |
| 4559 | |
| 4560 | static std::unique_ptr<CharacterClass> createCharacterClass93() |
| 4561 | { |
| 4562 | // Name = Latin, number of codePoints: 1353 |
| 4563 | auto characterClass = std::make_unique<CharacterClass>( |
| 4564 | std::initializer_list<UChar32>({}), |
| 4565 | std::initializer_list<CharacterRange>({{0x41, 0x5a}, {0x61, 0x7a}}), |
| 4566 | std::initializer_list<UChar32>({0x00aa, 0x00ba, 0x2071, 0x207f, 0x2132, 0x214e}), |
| 4567 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00f6}, {0x00f8, 0x02b8}, {0x02e0, 0x02e4}, |
| 4568 | {0x1d00, 0x1d25}, {0x1d2c, 0x1d5c}, {0x1d62, 0x1d65}, {0x1d6b, 0x1d77}, |
| 4569 | {0x1d79, 0x1dbe}, {0x1e00, 0x1eff}, {0x2090, 0x209c}, {0x212a, 0x212b}, |
| 4570 | {0x2160, 0x2188}, {0x2c60, 0x2c7f}, {0xa722, 0xa787}, {0xa78b, 0xa7b9}, |
| 4571 | {0xa7f7, 0xa7ff}, {0xab30, 0xab5a}, {0xab5c, 0xab64}, {0xfb00, 0xfb06}, |
| 4572 | {0xff21, 0xff3a}, {0xff41, 0xff5a}}), |
| 4573 | CharacterClassWidths::HasBMPChars); |
| 4574 | return characterClass; |
| 4575 | } |
| 4576 | |
| 4577 | static std::unique_ptr<CharacterClass> createCharacterClass94() |
| 4578 | { |
| 4579 | // Name = Greek, number of codePoints: 518 |
| 4580 | auto characterClass = std::make_unique<CharacterClass>( |
| 4581 | std::initializer_list<UChar32>({}), |
| 4582 | std::initializer_list<CharacterRange>({}), |
| 4583 | std::initializer_list<UChar32>({0x037f, 0x0384, 0x0386, 0x038c, 0x1dbf, 0x1f59, 0x1f5b, 0x1f5d, |
| 4584 | 0x2126, 0xab65, 0x101a0}), |
| 4585 | std::initializer_list<CharacterRange>({{0x0370, 0x0373}, {0x0375, 0x0377}, {0x037a, 0x037d}, {0x0388, 0x038a}, |
| 4586 | {0x038e, 0x03a1}, {0x03a3, 0x03e1}, {0x03f0, 0x03ff}, {0x1d26, 0x1d2a}, |
| 4587 | {0x1d5d, 0x1d61}, {0x1d66, 0x1d6a}, {0x1f00, 0x1f15}, {0x1f18, 0x1f1d}, |
| 4588 | {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f5f, 0x1f7d}, |
| 4589 | {0x1f80, 0x1fb4}, {0x1fb6, 0x1fc4}, {0x1fc6, 0x1fd3}, {0x1fd6, 0x1fdb}, |
| 4590 | {0x1fdd, 0x1fef}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffe}, {0x10140, 0x1018e}, |
| 4591 | {0x1d200, 0x1d245}}), |
| 4592 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4593 | return characterClass; |
| 4594 | } |
| 4595 | |
| 4596 | static std::unique_ptr<CharacterClass> createCharacterClass95() |
| 4597 | { |
| 4598 | // Name = Cyrillic, number of codePoints: 443 |
| 4599 | auto characterClass = std::make_unique<CharacterClass>( |
| 4600 | std::initializer_list<UChar32>({}), |
| 4601 | std::initializer_list<CharacterRange>({}), |
| 4602 | std::initializer_list<UChar32>({0x1d2b, 0x1d78}), |
| 4603 | std::initializer_list<CharacterRange>({{0x0400, 0x0484}, {0x0487, 0x052f}, {0x1c80, 0x1c88}, {0x2de0, 0x2dff}, |
| 4604 | {0xa640, 0xa69f}, {0xfe2e, 0xfe2f}}), |
| 4605 | CharacterClassWidths::HasBMPChars); |
| 4606 | return characterClass; |
| 4607 | } |
| 4608 | |
| 4609 | static std::unique_ptr<CharacterClass> createCharacterClass96() |
| 4610 | { |
| 4611 | // Name = Armenian, number of codePoints: 95 |
| 4612 | auto characterClass = std::make_unique<CharacterClass>( |
| 4613 | std::initializer_list<UChar32>({}), |
| 4614 | std::initializer_list<CharacterRange>({}), |
| 4615 | std::initializer_list<UChar32>({0x058a}), |
| 4616 | std::initializer_list<CharacterRange>({{0x0531, 0x0556}, {0x0559, 0x0588}, {0x058d, 0x058f}, {0xfb13, 0xfb17}}), |
| 4617 | CharacterClassWidths::HasBMPChars); |
| 4618 | return characterClass; |
| 4619 | } |
| 4620 | |
| 4621 | static std::unique_ptr<CharacterClass> createCharacterClass97() |
| 4622 | { |
| 4623 | // Name = Hebrew, number of codePoints: 134 |
| 4624 | auto characterClass = std::make_unique<CharacterClass>( |
| 4625 | std::initializer_list<UChar32>({}), |
| 4626 | std::initializer_list<CharacterRange>({}), |
| 4627 | std::initializer_list<UChar32>({0xfb3e}), |
| 4628 | std::initializer_list<CharacterRange>({{0x0591, 0x05c7}, {0x05d0, 0x05ea}, {0x05ef, 0x05f4}, {0xfb1d, 0xfb36}, |
| 4629 | {0xfb38, 0xfb3c}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfb4f}}), |
| 4630 | CharacterClassWidths::HasBMPChars); |
| 4631 | return characterClass; |
| 4632 | } |
| 4633 | |
| 4634 | static std::unique_ptr<CharacterClass> createCharacterClass98() |
| 4635 | { |
| 4636 | // Name = Arabic, number of codePoints: 1281 |
| 4637 | auto characterClass = std::make_unique<CharacterClass>( |
| 4638 | std::initializer_list<UChar32>({}), |
| 4639 | std::initializer_list<CharacterRange>({}), |
| 4640 | std::initializer_list<UChar32>({0x061c, 0x061e, 0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, 0x1ee42, 0x1ee47, |
| 4641 | 0x1ee49, 0x1ee4b, 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, 0x1ee5d, 0x1ee5f, |
| 4642 | 0x1ee64, 0x1ee7e}), |
| 4643 | std::initializer_list<CharacterRange>({{0x0600, 0x0604}, {0x0606, 0x060b}, {0x060d, 0x061a}, {0x0620, 0x063f}, |
| 4644 | {0x0641, 0x064a}, {0x0656, 0x066f}, {0x0671, 0x06dc}, {0x06de, 0x06ff}, |
| 4645 | {0x0750, 0x077f}, {0x08a0, 0x08b4}, {0x08b6, 0x08bd}, {0x08d3, 0x08e1}, |
| 4646 | {0x08e3, 0x08ff}, {0xfb50, 0xfbc1}, {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, |
| 4647 | {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfd}, {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, |
| 4648 | {0x10e60, 0x10e7e}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, |
| 4649 | {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, |
| 4650 | {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, |
| 4651 | {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, |
| 4652 | {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1eef0, 0x1eef1}}), |
| 4653 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4654 | return characterClass; |
| 4655 | } |
| 4656 | |
| 4657 | static std::unique_ptr<CharacterClass> createCharacterClass99() |
| 4658 | { |
| 4659 | // Name = Syriac, number of codePoints: 88 |
| 4660 | auto characterClass = std::make_unique<CharacterClass>( |
| 4661 | std::initializer_list<UChar32>({}), |
| 4662 | std::initializer_list<CharacterRange>({}), |
| 4663 | std::initializer_list<UChar32>({}), |
| 4664 | std::initializer_list<CharacterRange>({{0x0700, 0x070d}, {0x070f, 0x074a}, {0x074d, 0x074f}, {0x0860, 0x086a}}), |
| 4665 | CharacterClassWidths::HasBMPChars); |
| 4666 | return characterClass; |
| 4667 | } |
| 4668 | |
| 4669 | static std::unique_ptr<CharacterClass> createCharacterClass100() |
| 4670 | { |
| 4671 | // Name = Thaana, number of codePoints: 50 |
| 4672 | auto characterClass = std::make_unique<CharacterClass>( |
| 4673 | std::initializer_list<UChar32>({}), |
| 4674 | std::initializer_list<CharacterRange>({}), |
| 4675 | std::initializer_list<UChar32>({}), |
| 4676 | std::initializer_list<CharacterRange>({{0x0780, 0x07b1}}), |
| 4677 | CharacterClassWidths::HasBMPChars); |
| 4678 | return characterClass; |
| 4679 | } |
| 4680 | |
| 4681 | static std::unique_ptr<CharacterClass> createCharacterClass101() |
| 4682 | { |
| 4683 | // Name = Devanagari, number of codePoints: 156 |
| 4684 | auto characterClass = std::make_unique<CharacterClass>( |
| 4685 | std::initializer_list<UChar32>({}), |
| 4686 | std::initializer_list<CharacterRange>({}), |
| 4687 | std::initializer_list<UChar32>({}), |
| 4688 | std::initializer_list<CharacterRange>({{0x0900, 0x0950}, {0x0953, 0x0963}, {0x0966, 0x097f}, {0xa8e0, 0xa8ff}}), |
| 4689 | CharacterClassWidths::HasBMPChars); |
| 4690 | return characterClass; |
| 4691 | } |
| 4692 | |
| 4693 | static std::unique_ptr<CharacterClass> createCharacterClass102() |
| 4694 | { |
| 4695 | // Name = Bengali, number of codePoints: 96 |
| 4696 | auto characterClass = std::make_unique<CharacterClass>( |
| 4697 | std::initializer_list<UChar32>({}), |
| 4698 | std::initializer_list<CharacterRange>({}), |
| 4699 | std::initializer_list<UChar32>({0x09b2, 0x09d7}), |
| 4700 | std::initializer_list<CharacterRange>({{0x0980, 0x0983}, {0x0985, 0x098c}, {0x098f, 0x0990}, {0x0993, 0x09a8}, |
| 4701 | {0x09aa, 0x09b0}, {0x09b6, 0x09b9}, {0x09bc, 0x09c4}, {0x09c7, 0x09c8}, |
| 4702 | {0x09cb, 0x09ce}, {0x09dc, 0x09dd}, {0x09df, 0x09e3}, {0x09e6, 0x09fe}}), |
| 4703 | CharacterClassWidths::HasBMPChars); |
| 4704 | return characterClass; |
| 4705 | } |
| 4706 | |
| 4707 | static std::unique_ptr<CharacterClass> createCharacterClass103() |
| 4708 | { |
| 4709 | // Name = Gurmukhi, number of codePoints: 80 |
| 4710 | auto characterClass = std::make_unique<CharacterClass>( |
| 4711 | std::initializer_list<UChar32>({}), |
| 4712 | std::initializer_list<CharacterRange>({}), |
| 4713 | std::initializer_list<UChar32>({0x0a3c, 0x0a51, 0x0a5e}), |
| 4714 | std::initializer_list<CharacterRange>({{0x0a01, 0x0a03}, {0x0a05, 0x0a0a}, {0x0a0f, 0x0a10}, {0x0a13, 0x0a28}, |
| 4715 | {0x0a2a, 0x0a30}, {0x0a32, 0x0a33}, {0x0a35, 0x0a36}, {0x0a38, 0x0a39}, |
| 4716 | {0x0a3e, 0x0a42}, {0x0a47, 0x0a48}, {0x0a4b, 0x0a4d}, {0x0a59, 0x0a5c}, |
| 4717 | {0x0a66, 0x0a76}}), |
| 4718 | CharacterClassWidths::HasBMPChars); |
| 4719 | return characterClass; |
| 4720 | } |
| 4721 | |
| 4722 | static std::unique_ptr<CharacterClass> createCharacterClass104() |
| 4723 | { |
| 4724 | // Name = Gujarati, number of codePoints: 91 |
| 4725 | auto characterClass = std::make_unique<CharacterClass>( |
| 4726 | std::initializer_list<UChar32>({}), |
| 4727 | std::initializer_list<CharacterRange>({}), |
| 4728 | std::initializer_list<UChar32>({0x0ad0}), |
| 4729 | std::initializer_list<CharacterRange>({{0x0a81, 0x0a83}, {0x0a85, 0x0a8d}, {0x0a8f, 0x0a91}, {0x0a93, 0x0aa8}, |
| 4730 | {0x0aaa, 0x0ab0}, {0x0ab2, 0x0ab3}, {0x0ab5, 0x0ab9}, {0x0abc, 0x0ac5}, |
| 4731 | {0x0ac7, 0x0ac9}, {0x0acb, 0x0acd}, {0x0ae0, 0x0ae3}, {0x0ae6, 0x0af1}, |
| 4732 | {0x0af9, 0x0aff}}), |
| 4733 | CharacterClassWidths::HasBMPChars); |
| 4734 | return characterClass; |
| 4735 | } |
| 4736 | |
| 4737 | static std::unique_ptr<CharacterClass> createCharacterClass105() |
| 4738 | { |
| 4739 | // Name = Oriya, number of codePoints: 90 |
| 4740 | auto characterClass = std::make_unique<CharacterClass>( |
| 4741 | std::initializer_list<UChar32>({}), |
| 4742 | std::initializer_list<CharacterRange>({}), |
| 4743 | std::initializer_list<UChar32>({}), |
| 4744 | std::initializer_list<CharacterRange>({{0x0b01, 0x0b03}, {0x0b05, 0x0b0c}, {0x0b0f, 0x0b10}, {0x0b13, 0x0b28}, |
| 4745 | {0x0b2a, 0x0b30}, {0x0b32, 0x0b33}, {0x0b35, 0x0b39}, {0x0b3c, 0x0b44}, |
| 4746 | {0x0b47, 0x0b48}, {0x0b4b, 0x0b4d}, {0x0b56, 0x0b57}, {0x0b5c, 0x0b5d}, |
| 4747 | {0x0b5f, 0x0b63}, {0x0b66, 0x0b77}}), |
| 4748 | CharacterClassWidths::HasBMPChars); |
| 4749 | return characterClass; |
| 4750 | } |
| 4751 | |
| 4752 | static std::unique_ptr<CharacterClass> createCharacterClass106() |
| 4753 | { |
| 4754 | // Name = Tamil, number of codePoints: 72 |
| 4755 | auto characterClass = std::make_unique<CharacterClass>( |
| 4756 | std::initializer_list<UChar32>({}), |
| 4757 | std::initializer_list<CharacterRange>({}), |
| 4758 | std::initializer_list<UChar32>({0x0b9c, 0x0bd0, 0x0bd7}), |
| 4759 | std::initializer_list<CharacterRange>({{0x0b82, 0x0b83}, {0x0b85, 0x0b8a}, {0x0b8e, 0x0b90}, {0x0b92, 0x0b95}, |
| 4760 | {0x0b99, 0x0b9a}, {0x0b9e, 0x0b9f}, {0x0ba3, 0x0ba4}, {0x0ba8, 0x0baa}, |
| 4761 | {0x0bae, 0x0bb9}, {0x0bbe, 0x0bc2}, {0x0bc6, 0x0bc8}, {0x0bca, 0x0bcd}, |
| 4762 | {0x0be6, 0x0bfa}}), |
| 4763 | CharacterClassWidths::HasBMPChars); |
| 4764 | return characterClass; |
| 4765 | } |
| 4766 | |
| 4767 | static std::unique_ptr<CharacterClass> createCharacterClass107() |
| 4768 | { |
| 4769 | // Name = Telugu, number of codePoints: 97 |
| 4770 | auto characterClass = std::make_unique<CharacterClass>( |
| 4771 | std::initializer_list<UChar32>({}), |
| 4772 | std::initializer_list<CharacterRange>({}), |
| 4773 | std::initializer_list<UChar32>({}), |
| 4774 | std::initializer_list<CharacterRange>({{0x0c00, 0x0c0c}, {0x0c0e, 0x0c10}, {0x0c12, 0x0c28}, {0x0c2a, 0x0c39}, |
| 4775 | {0x0c3d, 0x0c44}, {0x0c46, 0x0c48}, {0x0c4a, 0x0c4d}, {0x0c55, 0x0c56}, |
| 4776 | {0x0c58, 0x0c5a}, {0x0c60, 0x0c63}, {0x0c66, 0x0c6f}, {0x0c78, 0x0c7f}}), |
| 4777 | CharacterClassWidths::HasBMPChars); |
| 4778 | return characterClass; |
| 4779 | } |
| 4780 | |
| 4781 | static std::unique_ptr<CharacterClass> createCharacterClass108() |
| 4782 | { |
| 4783 | // Name = Kannada, number of codePoints: 89 |
| 4784 | auto characterClass = std::make_unique<CharacterClass>( |
| 4785 | std::initializer_list<UChar32>({}), |
| 4786 | std::initializer_list<CharacterRange>({}), |
| 4787 | std::initializer_list<UChar32>({0x0cde}), |
| 4788 | std::initializer_list<CharacterRange>({{0x0c80, 0x0c8c}, {0x0c8e, 0x0c90}, {0x0c92, 0x0ca8}, {0x0caa, 0x0cb3}, |
| 4789 | {0x0cb5, 0x0cb9}, {0x0cbc, 0x0cc4}, {0x0cc6, 0x0cc8}, {0x0cca, 0x0ccd}, |
| 4790 | {0x0cd5, 0x0cd6}, {0x0ce0, 0x0ce3}, {0x0ce6, 0x0cef}, {0x0cf1, 0x0cf2}}), |
| 4791 | CharacterClassWidths::HasBMPChars); |
| 4792 | return characterClass; |
| 4793 | } |
| 4794 | |
| 4795 | static std::unique_ptr<CharacterClass> createCharacterClass109() |
| 4796 | { |
| 4797 | // Name = Malayalam, number of codePoints: 117 |
| 4798 | auto characterClass = std::make_unique<CharacterClass>( |
| 4799 | std::initializer_list<UChar32>({}), |
| 4800 | std::initializer_list<CharacterRange>({}), |
| 4801 | std::initializer_list<UChar32>({}), |
| 4802 | std::initializer_list<CharacterRange>({{0x0d00, 0x0d03}, {0x0d05, 0x0d0c}, {0x0d0e, 0x0d10}, {0x0d12, 0x0d44}, |
| 4803 | {0x0d46, 0x0d48}, {0x0d4a, 0x0d4f}, {0x0d54, 0x0d63}, {0x0d66, 0x0d7f}}), |
| 4804 | CharacterClassWidths::HasBMPChars); |
| 4805 | return characterClass; |
| 4806 | } |
| 4807 | |
| 4808 | static std::unique_ptr<CharacterClass> createCharacterClass110() |
| 4809 | { |
| 4810 | // Name = Sinhala, number of codePoints: 110 |
| 4811 | auto characterClass = std::make_unique<CharacterClass>( |
| 4812 | std::initializer_list<UChar32>({}), |
| 4813 | std::initializer_list<CharacterRange>({}), |
| 4814 | std::initializer_list<UChar32>({0x0dbd, 0x0dca, 0x0dd6}), |
| 4815 | std::initializer_list<CharacterRange>({{0x0d82, 0x0d83}, {0x0d85, 0x0d96}, {0x0d9a, 0x0db1}, {0x0db3, 0x0dbb}, |
| 4816 | {0x0dc0, 0x0dc6}, {0x0dcf, 0x0dd4}, {0x0dd8, 0x0ddf}, {0x0de6, 0x0def}, |
| 4817 | {0x0df2, 0x0df4}, {0x111e1, 0x111f4}}), |
| 4818 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4819 | return characterClass; |
| 4820 | } |
| 4821 | |
| 4822 | static std::unique_ptr<CharacterClass> createCharacterClass111() |
| 4823 | { |
| 4824 | // Name = Thai, number of codePoints: 86 |
| 4825 | auto characterClass = std::make_unique<CharacterClass>( |
| 4826 | std::initializer_list<UChar32>({}), |
| 4827 | std::initializer_list<CharacterRange>({}), |
| 4828 | std::initializer_list<UChar32>({}), |
| 4829 | std::initializer_list<CharacterRange>({{0x0e01, 0x0e3a}, {0x0e40, 0x0e5b}}), |
| 4830 | CharacterClassWidths::HasBMPChars); |
| 4831 | return characterClass; |
| 4832 | } |
| 4833 | |
| 4834 | static std::unique_ptr<CharacterClass> createCharacterClass112() |
| 4835 | { |
| 4836 | // Name = Lao, number of codePoints: 67 |
| 4837 | auto characterClass = std::make_unique<CharacterClass>( |
| 4838 | std::initializer_list<UChar32>({}), |
| 4839 | std::initializer_list<CharacterRange>({}), |
| 4840 | std::initializer_list<UChar32>({0x0e84, 0x0e8a, 0x0e8d, 0x0ea5, 0x0ea7, 0x0ec6}), |
| 4841 | std::initializer_list<CharacterRange>({{0x0e81, 0x0e82}, {0x0e87, 0x0e88}, {0x0e94, 0x0e97}, {0x0e99, 0x0e9f}, |
| 4842 | {0x0ea1, 0x0ea3}, {0x0eaa, 0x0eab}, {0x0ead, 0x0eb9}, {0x0ebb, 0x0ebd}, |
| 4843 | {0x0ec0, 0x0ec4}, {0x0ec8, 0x0ecd}, {0x0ed0, 0x0ed9}, {0x0edc, 0x0edf}}), |
| 4844 | CharacterClassWidths::HasBMPChars); |
| 4845 | return characterClass; |
| 4846 | } |
| 4847 | |
| 4848 | static std::unique_ptr<CharacterClass> createCharacterClass113() |
| 4849 | { |
| 4850 | // Name = Tibetan, number of codePoints: 207 |
| 4851 | auto characterClass = std::make_unique<CharacterClass>( |
| 4852 | std::initializer_list<UChar32>({}), |
| 4853 | std::initializer_list<CharacterRange>({}), |
| 4854 | std::initializer_list<UChar32>({}), |
| 4855 | std::initializer_list<CharacterRange>({{0x0f00, 0x0f47}, {0x0f49, 0x0f6c}, {0x0f71, 0x0f97}, {0x0f99, 0x0fbc}, |
| 4856 | {0x0fbe, 0x0fcc}, {0x0fce, 0x0fd4}, {0x0fd9, 0x0fda}}), |
| 4857 | CharacterClassWidths::HasBMPChars); |
| 4858 | return characterClass; |
| 4859 | } |
| 4860 | |
| 4861 | static std::unique_ptr<CharacterClass> createCharacterClass114() |
| 4862 | { |
| 4863 | // Name = Myanmar, number of codePoints: 223 |
| 4864 | auto characterClass = std::make_unique<CharacterClass>( |
| 4865 | std::initializer_list<UChar32>({}), |
| 4866 | std::initializer_list<CharacterRange>({}), |
| 4867 | std::initializer_list<UChar32>({}), |
| 4868 | std::initializer_list<CharacterRange>({{0x1000, 0x109f}, {0xa9e0, 0xa9fe}, {0xaa60, 0xaa7f}}), |
| 4869 | CharacterClassWidths::HasBMPChars); |
| 4870 | return characterClass; |
| 4871 | } |
| 4872 | |
| 4873 | static std::unique_ptr<CharacterClass> createCharacterClass115() |
| 4874 | { |
| 4875 | // Name = Georgian, number of codePoints: 173 |
| 4876 | auto characterClass = std::make_unique<CharacterClass>( |
| 4877 | std::initializer_list<UChar32>({}), |
| 4878 | std::initializer_list<CharacterRange>({}), |
| 4879 | std::initializer_list<UChar32>({0x10c7, 0x10cd, 0x2d27, 0x2d2d}), |
| 4880 | std::initializer_list<CharacterRange>({{0x10a0, 0x10c5}, {0x10d0, 0x10fa}, {0x10fc, 0x10ff}, {0x1c90, 0x1cba}, |
| 4881 | {0x1cbd, 0x1cbf}, {0x2d00, 0x2d25}}), |
| 4882 | CharacterClassWidths::HasBMPChars); |
| 4883 | return characterClass; |
| 4884 | } |
| 4885 | |
| 4886 | static std::unique_ptr<CharacterClass> createCharacterClass116() |
| 4887 | { |
| 4888 | // Name = Hangul, number of codePoints: 11739 |
| 4889 | auto characterClass = std::make_unique<CharacterClass>( |
| 4890 | std::initializer_list<UChar32>({}), |
| 4891 | std::initializer_list<CharacterRange>({}), |
| 4892 | std::initializer_list<UChar32>({}), |
| 4893 | std::initializer_list<CharacterRange>({{0x1100, 0x11ff}, {0x302e, 0x302f}, {0x3131, 0x318e}, {0x3200, 0x321e}, |
| 4894 | {0x3260, 0x327e}, {0xa960, 0xa97c}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, |
| 4895 | {0xd7cb, 0xd7fb}, {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf}, |
| 4896 | {0xffd2, 0xffd7}, {0xffda, 0xffdc}}), |
| 4897 | CharacterClassWidths::HasBMPChars); |
| 4898 | return characterClass; |
| 4899 | } |
| 4900 | |
| 4901 | static std::unique_ptr<CharacterClass> createCharacterClass117() |
| 4902 | { |
| 4903 | // Name = Ethiopic, number of codePoints: 495 |
| 4904 | auto characterClass = std::make_unique<CharacterClass>( |
| 4905 | std::initializer_list<UChar32>({}), |
| 4906 | std::initializer_list<CharacterRange>({}), |
| 4907 | std::initializer_list<UChar32>({0x1258, 0x12c0}), |
| 4908 | std::initializer_list<CharacterRange>({{0x1200, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x125a, 0x125d}, |
| 4909 | {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, |
| 4910 | {0x12b8, 0x12be}, {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, |
| 4911 | {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x137c}, {0x1380, 0x1399}, |
| 4912 | {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, |
| 4913 | {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, |
| 4914 | {0x2dd8, 0x2dde}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, |
| 4915 | {0xab20, 0xab26}, {0xab28, 0xab2e}}), |
| 4916 | CharacterClassWidths::HasBMPChars); |
| 4917 | return characterClass; |
| 4918 | } |
| 4919 | |
| 4920 | static std::unique_ptr<CharacterClass> createCharacterClass118() |
| 4921 | { |
| 4922 | // Name = Cherokee, number of codePoints: 172 |
| 4923 | auto characterClass = std::make_unique<CharacterClass>( |
| 4924 | std::initializer_list<UChar32>({}), |
| 4925 | std::initializer_list<CharacterRange>({}), |
| 4926 | std::initializer_list<UChar32>({}), |
| 4927 | std::initializer_list<CharacterRange>({{0x13a0, 0x13f5}, {0x13f8, 0x13fd}, {0xab70, 0xabbf}}), |
| 4928 | CharacterClassWidths::HasBMPChars); |
| 4929 | return characterClass; |
| 4930 | } |
| 4931 | |
| 4932 | static std::unique_ptr<CharacterClass> createCharacterClass119() |
| 4933 | { |
| 4934 | // Name = Canadian_Aboriginal, number of codePoints: 710 |
| 4935 | auto characterClass = std::make_unique<CharacterClass>( |
| 4936 | std::initializer_list<UChar32>({}), |
| 4937 | std::initializer_list<CharacterRange>({}), |
| 4938 | std::initializer_list<UChar32>({}), |
| 4939 | std::initializer_list<CharacterRange>({{0x1400, 0x167f}, {0x18b0, 0x18f5}}), |
| 4940 | CharacterClassWidths::HasBMPChars); |
| 4941 | return characterClass; |
| 4942 | } |
| 4943 | |
| 4944 | static std::unique_ptr<CharacterClass> createCharacterClass120() |
| 4945 | { |
| 4946 | // Name = Ogham, number of codePoints: 29 |
| 4947 | auto characterClass = std::make_unique<CharacterClass>( |
| 4948 | std::initializer_list<UChar32>({}), |
| 4949 | std::initializer_list<CharacterRange>({}), |
| 4950 | std::initializer_list<UChar32>({}), |
| 4951 | std::initializer_list<CharacterRange>({{0x1680, 0x169c}}), |
| 4952 | CharacterClassWidths::HasBMPChars); |
| 4953 | return characterClass; |
| 4954 | } |
| 4955 | |
| 4956 | static std::unique_ptr<CharacterClass> createCharacterClass121() |
| 4957 | { |
| 4958 | // Name = Runic, number of codePoints: 86 |
| 4959 | auto characterClass = std::make_unique<CharacterClass>( |
| 4960 | std::initializer_list<UChar32>({}), |
| 4961 | std::initializer_list<CharacterRange>({}), |
| 4962 | std::initializer_list<UChar32>({}), |
| 4963 | std::initializer_list<CharacterRange>({{0x16a0, 0x16ea}, {0x16ee, 0x16f8}}), |
| 4964 | CharacterClassWidths::HasBMPChars); |
| 4965 | return characterClass; |
| 4966 | } |
| 4967 | |
| 4968 | static std::unique_ptr<CharacterClass> createCharacterClass122() |
| 4969 | { |
| 4970 | // Name = Khmer, number of codePoints: 146 |
| 4971 | auto characterClass = std::make_unique<CharacterClass>( |
| 4972 | std::initializer_list<UChar32>({}), |
| 4973 | std::initializer_list<CharacterRange>({}), |
| 4974 | std::initializer_list<UChar32>({}), |
| 4975 | std::initializer_list<CharacterRange>({{0x1780, 0x17dd}, {0x17e0, 0x17e9}, {0x17f0, 0x17f9}, {0x19e0, 0x19ff}}), |
| 4976 | CharacterClassWidths::HasBMPChars); |
| 4977 | return characterClass; |
| 4978 | } |
| 4979 | |
| 4980 | static std::unique_ptr<CharacterClass> createCharacterClass123() |
| 4981 | { |
| 4982 | // Name = Mongolian, number of codePoints: 167 |
| 4983 | auto characterClass = std::make_unique<CharacterClass>( |
| 4984 | std::initializer_list<UChar32>({}), |
| 4985 | std::initializer_list<CharacterRange>({}), |
| 4986 | std::initializer_list<UChar32>({0x1804}), |
| 4987 | std::initializer_list<CharacterRange>({{0x1800, 0x1801}, {0x1806, 0x180e}, {0x1810, 0x1819}, {0x1820, 0x1878}, |
| 4988 | {0x1880, 0x18aa}, {0x11660, 0x1166c}}), |
| 4989 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 4990 | return characterClass; |
| 4991 | } |
| 4992 | |
| 4993 | static std::unique_ptr<CharacterClass> createCharacterClass124() |
| 4994 | { |
| 4995 | // Name = Hiragana, number of codePoints: 376 |
| 4996 | auto characterClass = std::make_unique<CharacterClass>( |
| 4997 | std::initializer_list<UChar32>({}), |
| 4998 | std::initializer_list<CharacterRange>({}), |
| 4999 | std::initializer_list<UChar32>({0x1f200}), |
| 5000 | std::initializer_list<CharacterRange>({{0x3041, 0x3096}, {0x309d, 0x309f}, {0x1b001, 0x1b11e}}), |
| 5001 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 5002 | return characterClass; |
| 5003 | } |
| 5004 | |
| 5005 | static std::unique_ptr<CharacterClass> createCharacterClass125() |
| 5006 | { |
| 5007 | // Name = Katakana, number of codePoints: 300 |
| 5008 | auto characterClass = std::make_unique<CharacterClass>( |
| 5009 | std::initializer_list<UChar32>({}), |
| 5010 | std::initializer_list<CharacterRange>({}), |
| 5011 | std::initializer_list<UChar32>({0x1b000}), |
| 5012 | std::initializer_list<CharacterRange>({{0x30a1, 0x30fa}, {0x30fd, 0x30ff}, {0x31f0, 0x31ff}, {0x32d0, 0x32fe}, |
| 5013 | {0x3300, 0x3357}, {0xff66, 0xff6f}, {0xff71, 0xff9d}}), |
| 5014 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 5015 | return characterClass; |
| 5016 | } |
| 5017 | |
| 5018 | static std::unique_ptr<CharacterClass> createCharacterClass126() |
| 5019 | { |
| 5020 | // Name = Bopomofo, number of codePoints: 72 |
| 5021 | auto characterClass = std::make_unique<CharacterClass>( |
| 5022 | std::initializer_list<UChar32>({}), |
| 5023 | std::initializer_list<CharacterRange>({}), |
| 5024 | std::initializer_list<UChar32>({}), |
| 5025 | std::initializer_list<CharacterRange>({{0x02ea, 0x02eb}, {0x3105, 0x312f}, {0x31a0, 0x31ba}}), |
| 5026 | CharacterClassWidths::HasBMPChars); |
| 5027 | return characterClass; |
| 5028 | } |
| 5029 | |
| 5030 | static std::unique_ptr<CharacterClass> createCharacterClass127() |
| 5031 | { |
| 5032 | // Name = Han, number of codePoints: 89233 |
| 5033 | auto characterClass = std::make_unique<CharacterClass>( |
| 5034 | std::initializer_list<UChar32>({}), |
| 5035 | std::initializer_list<CharacterRange>({}), |
| 5036 | std::initializer_list<UChar32>({0x3005, 0x3007}), |
| 5037 | std::initializer_list<CharacterRange>({{0x2e80, 0x2e99}, {0x2e9b, 0x2ef3}, {0x2f00, 0x2fd5}, {0x3021, 0x3029}, |
| 5038 | {0x3038, 0x303b}, {0x3400, 0x4db5}, {0x4e00, 0x9fef}, {0xf900, 0xfa6d}, |
| 5039 | {0xfa70, 0xfad9}, {0x20000, 0x2a6d6}, {0x2a700, 0x2b734}, {0x2b740, 0x2b81d}, |
| 5040 | {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}}), |
| 5041 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 5042 | return characterClass; |
| 5043 | } |
| 5044 | |
| 5045 | static std::unique_ptr<CharacterClass> createCharacterClass128() |
| 5046 | { |
| 5047 | // Name = Yi, number of codePoints: 1220 |
| 5048 | auto characterClass = std::make_unique<CharacterClass>( |
| 5049 | std::initializer_list<UChar32>({}), |
| 5050 | std::initializer_list<CharacterRange>({}), |
| 5051 | std::initializer_list<UChar32>({}), |
| 5052 | std::initializer_list<CharacterRange>({{0xa000, 0xa48c}, {0xa490, 0xa4c6}}), |
| 5053 | CharacterClassWidths::HasBMPChars); |
| 5054 | return characterClass; |
| 5055 | } |
| 5056 | |
| 5057 | static std::unique_ptr<CharacterClass> createCharacterClass129() |
| 5058 | { |
| 5059 | // Name = Old_Italic, number of codePoints: 39 |
| 5060 | auto characterClass = std::make_unique<CharacterClass>( |
| 5061 | std::initializer_list<UChar32>({}), |
| 5062 | std::initializer_list<CharacterRange>({}), |
| 5063 | std::initializer_list<UChar32>({}), |
| 5064 | std::initializer_list<CharacterRange>({{0x10300, 0x10323}, {0x1032d, 0x1032f}}), |
| 5065 | CharacterClassWidths::HasNonBMPChars); |
| 5066 | return characterClass; |
| 5067 | } |
| 5068 | |
| 5069 | static std::unique_ptr<CharacterClass> createCharacterClass130() |
| 5070 | { |
| 5071 | // Name = Gothic, number of codePoints: 27 |
| 5072 | auto characterClass = std::make_unique<CharacterClass>( |
| 5073 | std::initializer_list<UChar32>({}), |
| 5074 | std::initializer_list<CharacterRange>({}), |
| 5075 | std::initializer_list<UChar32>({}), |
| 5076 | std::initializer_list<CharacterRange>({{0x10330, 0x1034a}}), |
| 5077 | CharacterClassWidths::HasNonBMPChars); |
| 5078 | return characterClass; |
| 5079 | } |
| 5080 | |
| 5081 | static std::unique_ptr<CharacterClass> createCharacterClass131() |
| 5082 | { |
| 5083 | // Name = Deseret, number of codePoints: 80 |
| 5084 | auto characterClass = std::make_unique<CharacterClass>( |
| 5085 | std::initializer_list<UChar32>({}), |
| 5086 | std::initializer_list<CharacterRange>({}), |
| 5087 | std::initializer_list<UChar32>({}), |
| 5088 | std::initializer_list<CharacterRange>({{0x10400, 0x1044f}}), |
| 5089 | CharacterClassWidths::HasNonBMPChars); |
| 5090 | return characterClass; |
| 5091 | } |
| 5092 | |
| 5093 | static std::unique_ptr<CharacterClass> createCharacterClass132() |
| 5094 | { |
| 5095 | // Name = Inherited, number of codePoints: 569 |
| 5096 | auto characterClass = std::make_unique<CharacterClass>( |
| 5097 | std::initializer_list<UChar32>({}), |
| 5098 | std::initializer_list<CharacterRange>({}), |
| 5099 | std::initializer_list<UChar32>({0x0670, 0x1ced, 0x1cf4, 0x101fd, 0x102e0, 0x1133b}), |
| 5100 | std::initializer_list<CharacterRange>({{0x0300, 0x036f}, {0x0485, 0x0486}, {0x064b, 0x0655}, {0x0951, 0x0952}, |
| 5101 | {0x1ab0, 0x1abe}, {0x1cd0, 0x1cd2}, {0x1cd4, 0x1ce0}, {0x1ce2, 0x1ce8}, |
| 5102 | {0x1cf8, 0x1cf9}, {0x1dc0, 0x1df9}, {0x1dfb, 0x1dff}, {0x200c, 0x200d}, |
| 5103 | {0x20d0, 0x20f0}, {0x302a, 0x302d}, {0x3099, 0x309a}, {0xfe00, 0xfe0f}, |
| 5104 | {0xfe20, 0xfe2d}, {0x1d167, 0x1d169}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, |
| 5105 | {0x1d1aa, 0x1d1ad}, {0xe0100, 0xe01ef}}), |
| 5106 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 5107 | return characterClass; |
| 5108 | } |
| 5109 | |
| 5110 | static std::unique_ptr<CharacterClass> createCharacterClass133() |
| 5111 | { |
| 5112 | // Name = Tagalog, number of codePoints: 20 |
| 5113 | auto characterClass = std::make_unique<CharacterClass>( |
| 5114 | std::initializer_list<UChar32>({}), |
| 5115 | std::initializer_list<CharacterRange>({}), |
| 5116 | std::initializer_list<UChar32>({}), |
| 5117 | std::initializer_list<CharacterRange>({{0x1700, 0x170c}, {0x170e, 0x1714}}), |
| 5118 | CharacterClassWidths::HasBMPChars); |
| 5119 | return characterClass; |
| 5120 | } |
| 5121 | |
| 5122 | static std::unique_ptr<CharacterClass> createCharacterClass134() |
| 5123 | { |
| 5124 | // Name = Hanunoo, number of codePoints: 21 |
| 5125 | auto characterClass = std::make_unique<CharacterClass>( |
| 5126 | std::initializer_list<UChar32>({}), |
| 5127 | std::initializer_list<CharacterRange>({}), |
| 5128 | std::initializer_list<UChar32>({}), |
| 5129 | std::initializer_list<CharacterRange>({{0x1720, 0x1734}}), |
| 5130 | CharacterClassWidths::HasBMPChars); |
| 5131 | return characterClass; |
| 5132 | } |
| 5133 | |
| 5134 | static std::unique_ptr<CharacterClass> createCharacterClass135() |
| 5135 | { |
| 5136 | // Name = Buhid, number of codePoints: 20 |
| 5137 | auto characterClass = std::make_unique<CharacterClass>( |
| 5138 | std::initializer_list<UChar32>({}), |
| 5139 | std::initializer_list<CharacterRange>({}), |
| 5140 | std::initializer_list<UChar32>({}), |
| 5141 | std::initializer_list<CharacterRange>({{0x1740, 0x1753}}), |
| 5142 | CharacterClassWidths::HasBMPChars); |
| 5143 | return characterClass; |
| 5144 | } |
| 5145 | |
| 5146 | static std::unique_ptr<CharacterClass> createCharacterClass136() |
| 5147 | { |
| 5148 | // Name = Tagbanwa, number of codePoints: 18 |
| 5149 | auto characterClass = std::make_unique<CharacterClass>( |
| 5150 | std::initializer_list<UChar32>({}), |
| 5151 | std::initializer_list<CharacterRange>({}), |
| 5152 | std::initializer_list<UChar32>({}), |
| 5153 | std::initializer_list<CharacterRange>({{0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}}), |
| 5154 | CharacterClassWidths::HasBMPChars); |
| 5155 | return characterClass; |
| 5156 | } |
| 5157 | |
| 5158 | static std::unique_ptr<CharacterClass> createCharacterClass137() |
| 5159 | { |
| 5160 | // Name = Limbu, number of codePoints: 68 |
| 5161 | auto characterClass = std::make_unique<CharacterClass>( |
| 5162 | std::initializer_list<UChar32>({}), |
| 5163 | std::initializer_list<CharacterRange>({}), |
| 5164 | std::initializer_list<UChar32>({0x1940}), |
| 5165 | std::initializer_list<CharacterRange>({{0x1900, 0x191e}, {0x1920, 0x192b}, {0x1930, 0x193b}, {0x1944, 0x194f}}), |
| 5166 | CharacterClassWidths::HasBMPChars); |
| 5167 | return characterClass; |
| 5168 | } |
| 5169 | |
| 5170 | static std::unique_ptr<CharacterClass> createCharacterClass138() |
| 5171 | { |
| 5172 | // Name = Tai_Le, number of codePoints: 35 |
| 5173 | auto characterClass = std::make_unique<CharacterClass>( |
| 5174 | std::initializer_list<UChar32>({}), |
| 5175 | std::initializer_list<CharacterRange>({}), |
| 5176 | std::initializer_list<UChar32>({}), |
| 5177 | std::initializer_list<CharacterRange>({{0x1950, 0x196d}, {0x1970, 0x1974}}), |
| 5178 | CharacterClassWidths::HasBMPChars); |
| 5179 | return characterClass; |
| 5180 | } |
| 5181 | |
| 5182 | static std::unique_ptr<CharacterClass> createCharacterClass139() |
| 5183 | { |
| 5184 | // Name = Linear_B, number of codePoints: 211 |
| 5185 | auto characterClass = std::make_unique<CharacterClass>( |
| 5186 | std::initializer_list<UChar32>({}), |
| 5187 | std::initializer_list<CharacterRange>({}), |
| 5188 | std::initializer_list<UChar32>({}), |
| 5189 | std::initializer_list<CharacterRange>({{0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, |
| 5190 | {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}}), |
| 5191 | CharacterClassWidths::HasNonBMPChars); |
| 5192 | return characterClass; |
| 5193 | } |
| 5194 | |
| 5195 | static std::unique_ptr<CharacterClass> createCharacterClass140() |
| 5196 | { |
| 5197 | // Name = Ugaritic, number of codePoints: 31 |
| 5198 | auto characterClass = std::make_unique<CharacterClass>( |
| 5199 | std::initializer_list<UChar32>({}), |
| 5200 | std::initializer_list<CharacterRange>({}), |
| 5201 | std::initializer_list<UChar32>({0x1039f}), |
| 5202 | std::initializer_list<CharacterRange>({{0x10380, 0x1039d}}), |
| 5203 | CharacterClassWidths::HasNonBMPChars); |
| 5204 | return characterClass; |
| 5205 | } |
| 5206 | |
| 5207 | static std::unique_ptr<CharacterClass> createCharacterClass141() |
| 5208 | { |
| 5209 | // Name = Shavian, number of codePoints: 48 |
| 5210 | auto characterClass = std::make_unique<CharacterClass>( |
| 5211 | std::initializer_list<UChar32>({}), |
| 5212 | std::initializer_list<CharacterRange>({}), |
| 5213 | std::initializer_list<UChar32>({}), |
| 5214 | std::initializer_list<CharacterRange>({{0x10450, 0x1047f}}), |
| 5215 | CharacterClassWidths::HasNonBMPChars); |
| 5216 | return characterClass; |
| 5217 | } |
| 5218 | |
| 5219 | static std::unique_ptr<CharacterClass> createCharacterClass142() |
| 5220 | { |
| 5221 | // Name = Osmanya, number of codePoints: 40 |
| 5222 | auto characterClass = std::make_unique<CharacterClass>( |
| 5223 | std::initializer_list<UChar32>({}), |
| 5224 | std::initializer_list<CharacterRange>({}), |
| 5225 | std::initializer_list<UChar32>({}), |
| 5226 | std::initializer_list<CharacterRange>({{0x10480, 0x1049d}, {0x104a0, 0x104a9}}), |
| 5227 | CharacterClassWidths::HasNonBMPChars); |
| 5228 | return characterClass; |
| 5229 | } |
| 5230 | |
| 5231 | static std::unique_ptr<CharacterClass> createCharacterClass143() |
| 5232 | { |
| 5233 | // Name = Cypriot, number of codePoints: 55 |
| 5234 | auto characterClass = std::make_unique<CharacterClass>( |
| 5235 | std::initializer_list<UChar32>({}), |
| 5236 | std::initializer_list<CharacterRange>({}), |
| 5237 | std::initializer_list<UChar32>({0x10808, 0x1083c, 0x1083f}), |
| 5238 | std::initializer_list<CharacterRange>({{0x10800, 0x10805}, {0x1080a, 0x10835}, {0x10837, 0x10838}}), |
| 5239 | CharacterClassWidths::HasNonBMPChars); |
| 5240 | return characterClass; |
| 5241 | } |
| 5242 | |
| 5243 | static std::unique_ptr<CharacterClass> createCharacterClass144() |
| 5244 | { |
| 5245 | // Name = Braille, number of codePoints: 256 |
| 5246 | auto characterClass = std::make_unique<CharacterClass>( |
| 5247 | std::initializer_list<UChar32>({}), |
| 5248 | std::initializer_list<CharacterRange>({}), |
| 5249 | std::initializer_list<UChar32>({}), |
| 5250 | std::initializer_list<CharacterRange>({{0x2800, 0x28ff}}), |
| 5251 | CharacterClassWidths::HasBMPChars); |
| 5252 | return characterClass; |
| 5253 | } |
| 5254 | |
| 5255 | static std::unique_ptr<CharacterClass> createCharacterClass145() |
| 5256 | { |
| 5257 | // Name = Buginese, number of codePoints: 30 |
| 5258 | auto characterClass = std::make_unique<CharacterClass>( |
| 5259 | std::initializer_list<UChar32>({}), |
| 5260 | std::initializer_list<CharacterRange>({}), |
| 5261 | std::initializer_list<UChar32>({}), |
| 5262 | std::initializer_list<CharacterRange>({{0x1a00, 0x1a1b}, {0x1a1e, 0x1a1f}}), |
| 5263 | CharacterClassWidths::HasBMPChars); |
| 5264 | return characterClass; |
| 5265 | } |
| 5266 | |
| 5267 | static std::unique_ptr<CharacterClass> createCharacterClass146() |
| 5268 | { |
| 5269 | // Name = Coptic, number of codePoints: 137 |
| 5270 | auto characterClass = std::make_unique<CharacterClass>( |
| 5271 | std::initializer_list<UChar32>({}), |
| 5272 | std::initializer_list<CharacterRange>({}), |
| 5273 | std::initializer_list<UChar32>({}), |
| 5274 | std::initializer_list<CharacterRange>({{0x03e2, 0x03ef}, {0x2c80, 0x2cf3}, {0x2cf9, 0x2cff}}), |
| 5275 | CharacterClassWidths::HasBMPChars); |
| 5276 | return characterClass; |
| 5277 | } |
| 5278 | |
| 5279 | static std::unique_ptr<CharacterClass> createCharacterClass147() |
| 5280 | { |
| 5281 | // Name = New_Tai_Lue, number of codePoints: 83 |
| 5282 | auto characterClass = std::make_unique<CharacterClass>( |
| 5283 | std::initializer_list<UChar32>({}), |
| 5284 | std::initializer_list<CharacterRange>({}), |
| 5285 | std::initializer_list<UChar32>({}), |
| 5286 | std::initializer_list<CharacterRange>({{0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x19de, 0x19df}}), |
| 5287 | CharacterClassWidths::HasBMPChars); |
| 5288 | return characterClass; |
| 5289 | } |
| 5290 | |
| 5291 | static std::unique_ptr<CharacterClass> createCharacterClass148() |
| 5292 | { |
| 5293 | // Name = Glagolitic, number of codePoints: 132 |
| 5294 | auto characterClass = std::make_unique<CharacterClass>( |
| 5295 | std::initializer_list<UChar32>({}), |
| 5296 | std::initializer_list<CharacterRange>({}), |
| 5297 | std::initializer_list<UChar32>({}), |
| 5298 | std::initializer_list<CharacterRange>({{0x2c00, 0x2c2e}, {0x2c30, 0x2c5e}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, |
| 5299 | {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}}), |
| 5300 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 5301 | return characterClass; |
| 5302 | } |
| 5303 | |
| 5304 | static std::unique_ptr<CharacterClass> createCharacterClass149() |
| 5305 | { |
| 5306 | // Name = Tifinagh, number of codePoints: 59 |
| 5307 | auto characterClass = std::make_unique<CharacterClass>( |
| 5308 | std::initializer_list<UChar32>({}), |
| 5309 | std::initializer_list<CharacterRange>({}), |
| 5310 | std::initializer_list<UChar32>({0x2d7f}), |
| 5311 | std::initializer_list<CharacterRange>({{0x2d30, 0x2d67}, {0x2d6f, 0x2d70}}), |
| 5312 | CharacterClassWidths::HasBMPChars); |
| 5313 | return characterClass; |
| 5314 | } |
| 5315 | |
| 5316 | static std::unique_ptr<CharacterClass> createCharacterClass150() |
| 5317 | { |
| 5318 | // Name = Syloti_Nagri, number of codePoints: 44 |
| 5319 | auto characterClass = std::make_unique<CharacterClass>( |
| 5320 | std::initializer_list<UChar32>({}), |
| 5321 | std::initializer_list<CharacterRange>({}), |
| 5322 | std::initializer_list<UChar32>({}), |
| 5323 | std::initializer_list<CharacterRange>({{0xa800, 0xa82b}}), |
| 5324 | CharacterClassWidths::HasBMPChars); |
| 5325 | return characterClass; |
| 5326 | } |
| 5327 | |
| 5328 | static std::unique_ptr<CharacterClass> createCharacterClass151() |
| 5329 | { |
| 5330 | // Name = Old_Persian, number of codePoints: 50 |
| 5331 | auto characterClass = std::make_unique<CharacterClass>( |
| 5332 | std::initializer_list<UChar32>({}), |
| 5333 | std::initializer_list<CharacterRange>({}), |
| 5334 | std::initializer_list<UChar32>({}), |
| 5335 | std::initializer_list<CharacterRange>({{0x103a0, 0x103c3}, {0x103c8, 0x103d5}}), |
| 5336 | CharacterClassWidths::HasNonBMPChars); |
| 5337 | return characterClass; |
| 5338 | } |
| 5339 | |
| 5340 | static std::unique_ptr<CharacterClass> createCharacterClass152() |
| 5341 | { |
| 5342 | // Name = Kharoshthi, number of codePoints: 68 |
| 5343 | auto characterClass = std::make_unique<CharacterClass>( |
| 5344 | std::initializer_list<UChar32>({}), |
| 5345 | std::initializer_list<CharacterRange>({}), |
| 5346 | std::initializer_list<UChar32>({}), |
| 5347 | std::initializer_list<CharacterRange>({{0x10a00, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, |
| 5348 | {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a3f, 0x10a48}, {0x10a50, 0x10a58}}), |
| 5349 | CharacterClassWidths::HasNonBMPChars); |
| 5350 | return characterClass; |
| 5351 | } |
| 5352 | |
| 5353 | static std::unique_ptr<CharacterClass> createCharacterClass153() |
| 5354 | { |
| 5355 | // Name = Balinese, number of codePoints: 121 |
| 5356 | auto characterClass = std::make_unique<CharacterClass>( |
| 5357 | std::initializer_list<UChar32>({}), |
| 5358 | std::initializer_list<CharacterRange>({}), |
| 5359 | std::initializer_list<UChar32>({}), |
| 5360 | std::initializer_list<CharacterRange>({{0x1b00, 0x1b4b}, {0x1b50, 0x1b7c}}), |
| 5361 | CharacterClassWidths::HasBMPChars); |
| 5362 | return characterClass; |
| 5363 | } |
| 5364 | |
| 5365 | static std::unique_ptr<CharacterClass> createCharacterClass154() |
| 5366 | { |
| 5367 | // Name = Cuneiform, number of codePoints: 1234 |
| 5368 | auto characterClass = std::make_unique<CharacterClass>( |
| 5369 | std::initializer_list<UChar32>({}), |
| 5370 | std::initializer_list<CharacterRange>({}), |
| 5371 | std::initializer_list<UChar32>({}), |
| 5372 | std::initializer_list<CharacterRange>({{0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12470, 0x12474}, {0x12480, 0x12543}}), |
| 5373 | CharacterClassWidths::HasNonBMPChars); |
| 5374 | return characterClass; |
| 5375 | } |
| 5376 | |
| 5377 | static std::unique_ptr<CharacterClass> createCharacterClass155() |
| 5378 | { |
| 5379 | // Name = Phoenician, number of codePoints: 29 |
| 5380 | auto characterClass = std::make_unique<CharacterClass>( |
| 5381 | std::initializer_list<UChar32>({}), |
| 5382 | std::initializer_list<CharacterRange>({}), |
| 5383 | std::initializer_list<UChar32>({0x1091f}), |
| 5384 | std::initializer_list<CharacterRange>({{0x10900, 0x1091b}}), |
| 5385 | CharacterClassWidths::HasNonBMPChars); |
| 5386 | return characterClass; |
| 5387 | } |
| 5388 | |
| 5389 | static std::unique_ptr<CharacterClass> createCharacterClass156() |
| 5390 | { |
| 5391 | // Name = Phags_Pa, number of codePoints: 56 |
| 5392 | auto characterClass = std::make_unique<CharacterClass>( |
| 5393 | std::initializer_list<UChar32>({}), |
| 5394 | std::initializer_list<CharacterRange>({}), |
| 5395 | std::initializer_list<UChar32>({}), |
| 5396 | std::initializer_list<CharacterRange>({{0xa840, 0xa877}}), |
| 5397 | CharacterClassWidths::HasBMPChars); |
| 5398 | return characterClass; |
| 5399 | } |
| 5400 | |
| 5401 | static std::unique_ptr<CharacterClass> createCharacterClass157() |
| 5402 | { |
| 5403 | // Name = Nko, number of codePoints: 62 |
| 5404 | auto characterClass = std::make_unique<CharacterClass>( |
| 5405 | std::initializer_list<UChar32>({}), |
| 5406 | std::initializer_list<CharacterRange>({}), |
| 5407 | std::initializer_list<UChar32>({}), |
| 5408 | std::initializer_list<CharacterRange>({{0x07c0, 0x07fa}, {0x07fd, 0x07ff}}), |
| 5409 | CharacterClassWidths::HasBMPChars); |
| 5410 | return characterClass; |
| 5411 | } |
| 5412 | |
| 5413 | static std::unique_ptr<CharacterClass> createCharacterClass158() |
| 5414 | { |
| 5415 | // Name = Sundanese, number of codePoints: 72 |
| 5416 | auto characterClass = std::make_unique<CharacterClass>( |
| 5417 | std::initializer_list<UChar32>({}), |
| 5418 | std::initializer_list<CharacterRange>({}), |
| 5419 | std::initializer_list<UChar32>({}), |
| 5420 | std::initializer_list<CharacterRange>({{0x1b80, 0x1bbf}, {0x1cc0, 0x1cc7}}), |
| 5421 | CharacterClassWidths::HasBMPChars); |
| 5422 | return characterClass; |
| 5423 | } |
| 5424 | |
| 5425 | static std::unique_ptr<CharacterClass> createCharacterClass159() |
| 5426 | { |
| 5427 | // Name = Lepcha, number of codePoints: 74 |
| 5428 | auto characterClass = std::make_unique<CharacterClass>( |
| 5429 | std::initializer_list<UChar32>({}), |
| 5430 | std::initializer_list<CharacterRange>({}), |
| 5431 | std::initializer_list<UChar32>({}), |
| 5432 | std::initializer_list<CharacterRange>({{0x1c00, 0x1c37}, {0x1c3b, 0x1c49}, {0x1c4d, 0x1c4f}}), |
| 5433 | CharacterClassWidths::HasBMPChars); |
| 5434 | return characterClass; |
| 5435 | } |
| 5436 | |
| 5437 | static std::unique_ptr<CharacterClass> createCharacterClass160() |
| 5438 | { |
| 5439 | // Name = Ol_Chiki, number of codePoints: 48 |
| 5440 | auto characterClass = std::make_unique<CharacterClass>( |
| 5441 | std::initializer_list<UChar32>({}), |
| 5442 | std::initializer_list<CharacterRange>({}), |
| 5443 | std::initializer_list<UChar32>({}), |
| 5444 | std::initializer_list<CharacterRange>({{0x1c50, 0x1c7f}}), |
| 5445 | CharacterClassWidths::HasBMPChars); |
| 5446 | return characterClass; |
| 5447 | } |
| 5448 | |
| 5449 | static std::unique_ptr<CharacterClass> createCharacterClass161() |
| 5450 | { |
| 5451 | // Name = Vai, number of codePoints: 300 |
| 5452 | auto characterClass = std::make_unique<CharacterClass>( |
| 5453 | std::initializer_list<UChar32>({}), |
| 5454 | std::initializer_list<CharacterRange>({}), |
| 5455 | std::initializer_list<UChar32>({}), |
| 5456 | std::initializer_list<CharacterRange>({{0xa500, 0xa62b}}), |
| 5457 | CharacterClassWidths::HasBMPChars); |
| 5458 | return characterClass; |
| 5459 | } |
| 5460 | |
| 5461 | static std::unique_ptr<CharacterClass> createCharacterClass162() |
| 5462 | { |
| 5463 | // Name = Saurashtra, number of codePoints: 82 |
| 5464 | auto characterClass = std::make_unique<CharacterClass>( |
| 5465 | std::initializer_list<UChar32>({}), |
| 5466 | std::initializer_list<CharacterRange>({}), |
| 5467 | std::initializer_list<UChar32>({}), |
| 5468 | std::initializer_list<CharacterRange>({{0xa880, 0xa8c5}, {0xa8ce, 0xa8d9}}), |
| 5469 | CharacterClassWidths::HasBMPChars); |
| 5470 | return characterClass; |
| 5471 | } |
| 5472 | |
| 5473 | static std::unique_ptr<CharacterClass> createCharacterClass163() |
| 5474 | { |
| 5475 | // Name = Kayah_Li, number of codePoints: 47 |
| 5476 | auto characterClass = std::make_unique<CharacterClass>( |
| 5477 | std::initializer_list<UChar32>({}), |
| 5478 | std::initializer_list<CharacterRange>({}), |
| 5479 | std::initializer_list<UChar32>({0xa92f}), |
| 5480 | std::initializer_list<CharacterRange>({{0xa900, 0xa92d}}), |
| 5481 | CharacterClassWidths::HasBMPChars); |
| 5482 | return characterClass; |
| 5483 | } |
| 5484 | |
| 5485 | static std::unique_ptr<CharacterClass> createCharacterClass164() |
| 5486 | { |
| 5487 | // Name = Rejang, number of codePoints: 37 |
| 5488 | auto characterClass = std::make_unique<CharacterClass>( |
| 5489 | std::initializer_list<UChar32>({}), |
| 5490 | std::initializer_list<CharacterRange>({}), |
| 5491 | std::initializer_list<UChar32>({0xa95f}), |
| 5492 | std::initializer_list<CharacterRange>({{0xa930, 0xa953}}), |
| 5493 | CharacterClassWidths::HasBMPChars); |
| 5494 | return characterClass; |
| 5495 | } |
| 5496 | |
| 5497 | static std::unique_ptr<CharacterClass> createCharacterClass165() |
| 5498 | { |
| 5499 | // Name = Lycian, number of codePoints: 29 |
| 5500 | auto characterClass = std::make_unique<CharacterClass>( |
| 5501 | std::initializer_list<UChar32>({}), |
| 5502 | std::initializer_list<CharacterRange>({}), |
| 5503 | std::initializer_list<UChar32>({}), |
| 5504 | std::initializer_list<CharacterRange>({{0x10280, 0x1029c}}), |
| 5505 | CharacterClassWidths::HasNonBMPChars); |
| 5506 | return characterClass; |
| 5507 | } |
| 5508 | |
| 5509 | static std::unique_ptr<CharacterClass> createCharacterClass166() |
| 5510 | { |
| 5511 | // Name = Carian, number of codePoints: 49 |
| 5512 | auto characterClass = std::make_unique<CharacterClass>( |
| 5513 | std::initializer_list<UChar32>({}), |
| 5514 | std::initializer_list<CharacterRange>({}), |
| 5515 | std::initializer_list<UChar32>({}), |
| 5516 | std::initializer_list<CharacterRange>({{0x102a0, 0x102d0}}), |
| 5517 | CharacterClassWidths::HasNonBMPChars); |
| 5518 | return characterClass; |
| 5519 | } |
| 5520 | |
| 5521 | static std::unique_ptr<CharacterClass> createCharacterClass167() |
| 5522 | { |
| 5523 | // Name = Lydian, number of codePoints: 27 |
| 5524 | auto characterClass = std::make_unique<CharacterClass>( |
| 5525 | std::initializer_list<UChar32>({}), |
| 5526 | std::initializer_list<CharacterRange>({}), |
| 5527 | std::initializer_list<UChar32>({0x1093f}), |
| 5528 | std::initializer_list<CharacterRange>({{0x10920, 0x10939}}), |
| 5529 | CharacterClassWidths::HasNonBMPChars); |
| 5530 | return characterClass; |
| 5531 | } |
| 5532 | |
| 5533 | static std::unique_ptr<CharacterClass> createCharacterClass168() |
| 5534 | { |
| 5535 | // Name = Cham, number of codePoints: 83 |
| 5536 | auto characterClass = std::make_unique<CharacterClass>( |
| 5537 | std::initializer_list<UChar32>({}), |
| 5538 | std::initializer_list<CharacterRange>({}), |
| 5539 | std::initializer_list<UChar32>({}), |
| 5540 | std::initializer_list<CharacterRange>({{0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, {0xaa50, 0xaa59}, {0xaa5c, 0xaa5f}}), |
| 5541 | CharacterClassWidths::HasBMPChars); |
| 5542 | return characterClass; |
| 5543 | } |
| 5544 | |
| 5545 | static std::unique_ptr<CharacterClass> createCharacterClass169() |
| 5546 | { |
| 5547 | // Name = Tai_Tham, number of codePoints: 127 |
| 5548 | auto characterClass = std::make_unique<CharacterClass>( |
| 5549 | std::initializer_list<UChar32>({}), |
| 5550 | std::initializer_list<CharacterRange>({}), |
| 5551 | std::initializer_list<UChar32>({}), |
| 5552 | std::initializer_list<CharacterRange>({{0x1a20, 0x1a5e}, {0x1a60, 0x1a7c}, {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, |
| 5553 | {0x1aa0, 0x1aad}}), |
| 5554 | CharacterClassWidths::HasBMPChars); |
| 5555 | return characterClass; |
| 5556 | } |
| 5557 | |
| 5558 | static std::unique_ptr<CharacterClass> createCharacterClass170() |
| 5559 | { |
| 5560 | // Name = Tai_Viet, number of codePoints: 72 |
| 5561 | auto characterClass = std::make_unique<CharacterClass>( |
| 5562 | std::initializer_list<UChar32>({}), |
| 5563 | std::initializer_list<CharacterRange>({}), |
| 5564 | std::initializer_list<UChar32>({}), |
| 5565 | std::initializer_list<CharacterRange>({{0xaa80, 0xaac2}, {0xaadb, 0xaadf}}), |
| 5566 | CharacterClassWidths::HasBMPChars); |
| 5567 | return characterClass; |
| 5568 | } |
| 5569 | |
| 5570 | static std::unique_ptr<CharacterClass> createCharacterClass171() |
| 5571 | { |
| 5572 | // Name = Avestan, number of codePoints: 61 |
| 5573 | auto characterClass = std::make_unique<CharacterClass>( |
| 5574 | std::initializer_list<UChar32>({}), |
| 5575 | std::initializer_list<CharacterRange>({}), |
| 5576 | std::initializer_list<UChar32>({}), |
| 5577 | std::initializer_list<CharacterRange>({{0x10b00, 0x10b35}, {0x10b39, 0x10b3f}}), |
| 5578 | CharacterClassWidths::HasNonBMPChars); |
| 5579 | return characterClass; |
| 5580 | } |
| 5581 | |
| 5582 | static std::unique_ptr<CharacterClass> createCharacterClass172() |
| 5583 | { |
| 5584 | // Name = Egyptian_Hieroglyphs, number of codePoints: 1071 |
| 5585 | auto characterClass = std::make_unique<CharacterClass>( |
| 5586 | std::initializer_list<UChar32>({}), |
| 5587 | std::initializer_list<CharacterRange>({}), |
| 5588 | std::initializer_list<UChar32>({}), |
| 5589 | std::initializer_list<CharacterRange>({{0x13000, 0x1342e}}), |
| 5590 | CharacterClassWidths::HasNonBMPChars); |
| 5591 | return characterClass; |
| 5592 | } |
| 5593 | |
| 5594 | static std::unique_ptr<CharacterClass> createCharacterClass173() |
| 5595 | { |
| 5596 | // Name = Samaritan, number of codePoints: 61 |
| 5597 | auto characterClass = std::make_unique<CharacterClass>( |
| 5598 | std::initializer_list<UChar32>({}), |
| 5599 | std::initializer_list<CharacterRange>({}), |
| 5600 | std::initializer_list<UChar32>({}), |
| 5601 | std::initializer_list<CharacterRange>({{0x0800, 0x082d}, {0x0830, 0x083e}}), |
| 5602 | CharacterClassWidths::HasBMPChars); |
| 5603 | return characterClass; |
| 5604 | } |
| 5605 | |
| 5606 | static std::unique_ptr<CharacterClass> createCharacterClass174() |
| 5607 | { |
| 5608 | // Name = Lisu, number of codePoints: 48 |
| 5609 | auto characterClass = std::make_unique<CharacterClass>( |
| 5610 | std::initializer_list<UChar32>({}), |
| 5611 | std::initializer_list<CharacterRange>({}), |
| 5612 | std::initializer_list<UChar32>({}), |
| 5613 | std::initializer_list<CharacterRange>({{0xa4d0, 0xa4ff}}), |
| 5614 | CharacterClassWidths::HasBMPChars); |
| 5615 | return characterClass; |
| 5616 | } |
| 5617 | |
| 5618 | static std::unique_ptr<CharacterClass> createCharacterClass175() |
| 5619 | { |
| 5620 | // Name = Bamum, number of codePoints: 657 |
| 5621 | auto characterClass = std::make_unique<CharacterClass>( |
| 5622 | std::initializer_list<UChar32>({}), |
| 5623 | std::initializer_list<CharacterRange>({}), |
| 5624 | std::initializer_list<UChar32>({}), |
| 5625 | std::initializer_list<CharacterRange>({{0xa6a0, 0xa6f7}, {0x16800, 0x16a38}}), |
| 5626 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 5627 | return characterClass; |
| 5628 | } |
| 5629 | |
| 5630 | static std::unique_ptr<CharacterClass> createCharacterClass176() |
| 5631 | { |
| 5632 | // Name = Javanese, number of codePoints: 90 |
| 5633 | auto characterClass = std::make_unique<CharacterClass>( |
| 5634 | std::initializer_list<UChar32>({}), |
| 5635 | std::initializer_list<CharacterRange>({}), |
| 5636 | std::initializer_list<UChar32>({}), |
| 5637 | std::initializer_list<CharacterRange>({{0xa980, 0xa9cd}, {0xa9d0, 0xa9d9}, {0xa9de, 0xa9df}}), |
| 5638 | CharacterClassWidths::HasBMPChars); |
| 5639 | return characterClass; |
| 5640 | } |
| 5641 | |
| 5642 | static std::unique_ptr<CharacterClass> createCharacterClass177() |
| 5643 | { |
| 5644 | // Name = Meetei_Mayek, number of codePoints: 79 |
| 5645 | auto characterClass = std::make_unique<CharacterClass>( |
| 5646 | std::initializer_list<UChar32>({}), |
| 5647 | std::initializer_list<CharacterRange>({}), |
| 5648 | std::initializer_list<UChar32>({}), |
| 5649 | std::initializer_list<CharacterRange>({{0xaae0, 0xaaf6}, {0xabc0, 0xabed}, {0xabf0, 0xabf9}}), |
| 5650 | CharacterClassWidths::HasBMPChars); |
| 5651 | return characterClass; |
| 5652 | } |
| 5653 | |
| 5654 | static std::unique_ptr<CharacterClass> createCharacterClass178() |
| 5655 | { |
| 5656 | // Name = Imperial_Aramaic, number of codePoints: 31 |
| 5657 | auto characterClass = std::make_unique<CharacterClass>( |
| 5658 | std::initializer_list<UChar32>({}), |
| 5659 | std::initializer_list<CharacterRange>({}), |
| 5660 | std::initializer_list<UChar32>({}), |
| 5661 | std::initializer_list<CharacterRange>({{0x10840, 0x10855}, {0x10857, 0x1085f}}), |
| 5662 | CharacterClassWidths::HasNonBMPChars); |
| 5663 | return characterClass; |
| 5664 | } |
| 5665 | |
| 5666 | static std::unique_ptr<CharacterClass> createCharacterClass179() |
| 5667 | { |
| 5668 | // Name = Old_South_Arabian, number of codePoints: 32 |
| 5669 | auto characterClass = std::make_unique<CharacterClass>( |
| 5670 | std::initializer_list<UChar32>({}), |
| 5671 | std::initializer_list<CharacterRange>({}), |
| 5672 | std::initializer_list<UChar32>({}), |
| 5673 | std::initializer_list<CharacterRange>({{0x10a60, 0x10a7f}}), |
| 5674 | CharacterClassWidths::HasNonBMPChars); |
| 5675 | return characterClass; |
| 5676 | } |
| 5677 | |
| 5678 | static std::unique_ptr<CharacterClass> createCharacterClass180() |
| 5679 | { |
| 5680 | // Name = Inscriptional_Parthian, number of codePoints: 30 |
| 5681 | auto characterClass = std::make_unique<CharacterClass>( |
| 5682 | std::initializer_list<UChar32>({}), |
| 5683 | std::initializer_list<CharacterRange>({}), |
| 5684 | std::initializer_list<UChar32>({}), |
| 5685 | std::initializer_list<CharacterRange>({{0x10b40, 0x10b55}, {0x10b58, 0x10b5f}}), |
| 5686 | CharacterClassWidths::HasNonBMPChars); |
| 5687 | return characterClass; |
| 5688 | } |
| 5689 | |
| 5690 | static std::unique_ptr<CharacterClass> createCharacterClass181() |
| 5691 | { |
| 5692 | // Name = Inscriptional_Pahlavi, number of codePoints: 27 |
| 5693 | auto characterClass = std::make_unique<CharacterClass>( |
| 5694 | std::initializer_list<UChar32>({}), |
| 5695 | std::initializer_list<CharacterRange>({}), |
| 5696 | std::initializer_list<UChar32>({}), |
| 5697 | std::initializer_list<CharacterRange>({{0x10b60, 0x10b72}, {0x10b78, 0x10b7f}}), |
| 5698 | CharacterClassWidths::HasNonBMPChars); |
| 5699 | return characterClass; |
| 5700 | } |
| 5701 | |
| 5702 | static std::unique_ptr<CharacterClass> createCharacterClass182() |
| 5703 | { |
| 5704 | // Name = Old_Turkic, number of codePoints: 73 |
| 5705 | auto characterClass = std::make_unique<CharacterClass>( |
| 5706 | std::initializer_list<UChar32>({}), |
| 5707 | std::initializer_list<CharacterRange>({}), |
| 5708 | std::initializer_list<UChar32>({}), |
| 5709 | std::initializer_list<CharacterRange>({{0x10c00, 0x10c48}}), |
| 5710 | CharacterClassWidths::HasNonBMPChars); |
| 5711 | return characterClass; |
| 5712 | } |
| 5713 | |
| 5714 | static std::unique_ptr<CharacterClass> createCharacterClass183() |
| 5715 | { |
| 5716 | // Name = Kaithi, number of codePoints: 67 |
| 5717 | auto characterClass = std::make_unique<CharacterClass>( |
| 5718 | std::initializer_list<UChar32>({}), |
| 5719 | std::initializer_list<CharacterRange>({}), |
| 5720 | std::initializer_list<UChar32>({0x110cd}), |
| 5721 | std::initializer_list<CharacterRange>({{0x11080, 0x110c1}}), |
| 5722 | CharacterClassWidths::HasNonBMPChars); |
| 5723 | return characterClass; |
| 5724 | } |
| 5725 | |
| 5726 | static std::unique_ptr<CharacterClass> createCharacterClass184() |
| 5727 | { |
| 5728 | // Name = Batak, number of codePoints: 56 |
| 5729 | auto characterClass = std::make_unique<CharacterClass>( |
| 5730 | std::initializer_list<UChar32>({}), |
| 5731 | std::initializer_list<CharacterRange>({}), |
| 5732 | std::initializer_list<UChar32>({}), |
| 5733 | std::initializer_list<CharacterRange>({{0x1bc0, 0x1bf3}, {0x1bfc, 0x1bff}}), |
| 5734 | CharacterClassWidths::HasBMPChars); |
| 5735 | return characterClass; |
| 5736 | } |
| 5737 | |
| 5738 | static std::unique_ptr<CharacterClass> createCharacterClass185() |
| 5739 | { |
| 5740 | // Name = Brahmi, number of codePoints: 109 |
| 5741 | auto characterClass = std::make_unique<CharacterClass>( |
| 5742 | std::initializer_list<UChar32>({}), |
| 5743 | std::initializer_list<CharacterRange>({}), |
| 5744 | std::initializer_list<UChar32>({0x1107f}), |
| 5745 | std::initializer_list<CharacterRange>({{0x11000, 0x1104d}, {0x11052, 0x1106f}}), |
| 5746 | CharacterClassWidths::HasNonBMPChars); |
| 5747 | return characterClass; |
| 5748 | } |
| 5749 | |
| 5750 | static std::unique_ptr<CharacterClass> createCharacterClass186() |
| 5751 | { |
| 5752 | // Name = Mandaic, number of codePoints: 29 |
| 5753 | auto characterClass = std::make_unique<CharacterClass>( |
| 5754 | std::initializer_list<UChar32>({}), |
| 5755 | std::initializer_list<CharacterRange>({}), |
| 5756 | std::initializer_list<UChar32>({0x085e}), |
| 5757 | std::initializer_list<CharacterRange>({{0x0840, 0x085b}}), |
| 5758 | CharacterClassWidths::HasBMPChars); |
| 5759 | return characterClass; |
| 5760 | } |
| 5761 | |
| 5762 | static std::unique_ptr<CharacterClass> createCharacterClass187() |
| 5763 | { |
| 5764 | // Name = Chakma, number of codePoints: 70 |
| 5765 | auto characterClass = std::make_unique<CharacterClass>( |
| 5766 | std::initializer_list<UChar32>({}), |
| 5767 | std::initializer_list<CharacterRange>({}), |
| 5768 | std::initializer_list<UChar32>({}), |
| 5769 | std::initializer_list<CharacterRange>({{0x11100, 0x11134}, {0x11136, 0x11146}}), |
| 5770 | CharacterClassWidths::HasNonBMPChars); |
| 5771 | return characterClass; |
| 5772 | } |
| 5773 | |
| 5774 | static std::unique_ptr<CharacterClass> createCharacterClass188() |
| 5775 | { |
| 5776 | // Name = Meroitic_Cursive, number of codePoints: 90 |
| 5777 | auto characterClass = std::make_unique<CharacterClass>( |
| 5778 | std::initializer_list<UChar32>({}), |
| 5779 | std::initializer_list<CharacterRange>({}), |
| 5780 | std::initializer_list<UChar32>({}), |
| 5781 | std::initializer_list<CharacterRange>({{0x109a0, 0x109b7}, {0x109bc, 0x109cf}, {0x109d2, 0x109ff}}), |
| 5782 | CharacterClassWidths::HasNonBMPChars); |
| 5783 | return characterClass; |
| 5784 | } |
| 5785 | |
| 5786 | static std::unique_ptr<CharacterClass> createCharacterClass189() |
| 5787 | { |
| 5788 | // Name = Meroitic_Hieroglyphs, number of codePoints: 32 |
| 5789 | auto characterClass = std::make_unique<CharacterClass>( |
| 5790 | std::initializer_list<UChar32>({}), |
| 5791 | std::initializer_list<CharacterRange>({}), |
| 5792 | std::initializer_list<UChar32>({}), |
| 5793 | std::initializer_list<CharacterRange>({{0x10980, 0x1099f}}), |
| 5794 | CharacterClassWidths::HasNonBMPChars); |
| 5795 | return characterClass; |
| 5796 | } |
| 5797 | |
| 5798 | static std::unique_ptr<CharacterClass> createCharacterClass190() |
| 5799 | { |
| 5800 | // Name = Miao, number of codePoints: 133 |
| 5801 | auto characterClass = std::make_unique<CharacterClass>( |
| 5802 | std::initializer_list<UChar32>({}), |
| 5803 | std::initializer_list<CharacterRange>({}), |
| 5804 | std::initializer_list<UChar32>({}), |
| 5805 | std::initializer_list<CharacterRange>({{0x16f00, 0x16f44}, {0x16f50, 0x16f7e}, {0x16f8f, 0x16f9f}}), |
| 5806 | CharacterClassWidths::HasNonBMPChars); |
| 5807 | return characterClass; |
| 5808 | } |
| 5809 | |
| 5810 | static std::unique_ptr<CharacterClass> createCharacterClass191() |
| 5811 | { |
| 5812 | // Name = Sharada, number of codePoints: 94 |
| 5813 | auto characterClass = std::make_unique<CharacterClass>( |
| 5814 | std::initializer_list<UChar32>({}), |
| 5815 | std::initializer_list<CharacterRange>({}), |
| 5816 | std::initializer_list<UChar32>({}), |
| 5817 | std::initializer_list<CharacterRange>({{0x11180, 0x111cd}, {0x111d0, 0x111df}}), |
| 5818 | CharacterClassWidths::HasNonBMPChars); |
| 5819 | return characterClass; |
| 5820 | } |
| 5821 | |
| 5822 | static std::unique_ptr<CharacterClass> createCharacterClass192() |
| 5823 | { |
| 5824 | // Name = Sora_Sompeng, number of codePoints: 35 |
| 5825 | auto characterClass = std::make_unique<CharacterClass>( |
| 5826 | std::initializer_list<UChar32>({}), |
| 5827 | std::initializer_list<CharacterRange>({}), |
| 5828 | std::initializer_list<UChar32>({}), |
| 5829 | std::initializer_list<CharacterRange>({{0x110d0, 0x110e8}, {0x110f0, 0x110f9}}), |
| 5830 | CharacterClassWidths::HasNonBMPChars); |
| 5831 | return characterClass; |
| 5832 | } |
| 5833 | |
| 5834 | static std::unique_ptr<CharacterClass> createCharacterClass193() |
| 5835 | { |
| 5836 | // Name = Takri, number of codePoints: 66 |
| 5837 | auto characterClass = std::make_unique<CharacterClass>( |
| 5838 | std::initializer_list<UChar32>({}), |
| 5839 | std::initializer_list<CharacterRange>({}), |
| 5840 | std::initializer_list<UChar32>({}), |
| 5841 | std::initializer_list<CharacterRange>({{0x11680, 0x116b7}, {0x116c0, 0x116c9}}), |
| 5842 | CharacterClassWidths::HasNonBMPChars); |
| 5843 | return characterClass; |
| 5844 | } |
| 5845 | |
| 5846 | static std::unique_ptr<CharacterClass> createCharacterClass194() |
| 5847 | { |
| 5848 | // Name = Caucasian_Albanian, number of codePoints: 53 |
| 5849 | auto characterClass = std::make_unique<CharacterClass>( |
| 5850 | std::initializer_list<UChar32>({}), |
| 5851 | std::initializer_list<CharacterRange>({}), |
| 5852 | std::initializer_list<UChar32>({0x1056f}), |
| 5853 | std::initializer_list<CharacterRange>({{0x10530, 0x10563}}), |
| 5854 | CharacterClassWidths::HasNonBMPChars); |
| 5855 | return characterClass; |
| 5856 | } |
| 5857 | |
| 5858 | static std::unique_ptr<CharacterClass> createCharacterClass195() |
| 5859 | { |
| 5860 | // Name = Bassa_Vah, number of codePoints: 36 |
| 5861 | auto characterClass = std::make_unique<CharacterClass>( |
| 5862 | std::initializer_list<UChar32>({}), |
| 5863 | std::initializer_list<CharacterRange>({}), |
| 5864 | std::initializer_list<UChar32>({}), |
| 5865 | std::initializer_list<CharacterRange>({{0x16ad0, 0x16aed}, {0x16af0, 0x16af5}}), |
| 5866 | CharacterClassWidths::HasNonBMPChars); |
| 5867 | return characterClass; |
| 5868 | } |
| 5869 | |
| 5870 | static std::unique_ptr<CharacterClass> createCharacterClass196() |
| 5871 | { |
| 5872 | // Name = Duployan, number of codePoints: 143 |
| 5873 | auto characterClass = std::make_unique<CharacterClass>( |
| 5874 | std::initializer_list<UChar32>({}), |
| 5875 | std::initializer_list<CharacterRange>({}), |
| 5876 | std::initializer_list<UChar32>({}), |
| 5877 | std::initializer_list<CharacterRange>({{0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, |
| 5878 | {0x1bc9c, 0x1bc9f}}), |
| 5879 | CharacterClassWidths::HasNonBMPChars); |
| 5880 | return characterClass; |
| 5881 | } |
| 5882 | |
| 5883 | static std::unique_ptr<CharacterClass> createCharacterClass197() |
| 5884 | { |
| 5885 | // Name = Elbasan, number of codePoints: 40 |
| 5886 | auto characterClass = std::make_unique<CharacterClass>( |
| 5887 | std::initializer_list<UChar32>({}), |
| 5888 | std::initializer_list<CharacterRange>({}), |
| 5889 | std::initializer_list<UChar32>({}), |
| 5890 | std::initializer_list<CharacterRange>({{0x10500, 0x10527}}), |
| 5891 | CharacterClassWidths::HasNonBMPChars); |
| 5892 | return characterClass; |
| 5893 | } |
| 5894 | |
| 5895 | static std::unique_ptr<CharacterClass> createCharacterClass198() |
| 5896 | { |
| 5897 | // Name = Grantha, number of codePoints: 85 |
| 5898 | auto characterClass = std::make_unique<CharacterClass>( |
| 5899 | std::initializer_list<UChar32>({}), |
| 5900 | std::initializer_list<CharacterRange>({}), |
| 5901 | std::initializer_list<UChar32>({0x11350, 0x11357}), |
| 5902 | std::initializer_list<CharacterRange>({{0x11300, 0x11303}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, |
| 5903 | {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133c, 0x11344}, |
| 5904 | {0x11347, 0x11348}, {0x1134b, 0x1134d}, {0x1135d, 0x11363}, {0x11366, 0x1136c}, |
| 5905 | {0x11370, 0x11374}}), |
| 5906 | CharacterClassWidths::HasNonBMPChars); |
| 5907 | return characterClass; |
| 5908 | } |
| 5909 | |
| 5910 | static std::unique_ptr<CharacterClass> createCharacterClass199() |
| 5911 | { |
| 5912 | // Name = Pahawh_Hmong, number of codePoints: 127 |
| 5913 | auto characterClass = std::make_unique<CharacterClass>( |
| 5914 | std::initializer_list<UChar32>({}), |
| 5915 | std::initializer_list<CharacterRange>({}), |
| 5916 | std::initializer_list<UChar32>({}), |
| 5917 | std::initializer_list<CharacterRange>({{0x16b00, 0x16b45}, {0x16b50, 0x16b59}, {0x16b5b, 0x16b61}, {0x16b63, 0x16b77}, |
| 5918 | {0x16b7d, 0x16b8f}}), |
| 5919 | CharacterClassWidths::HasNonBMPChars); |
| 5920 | return characterClass; |
| 5921 | } |
| 5922 | |
| 5923 | static std::unique_ptr<CharacterClass> createCharacterClass200() |
| 5924 | { |
| 5925 | // Name = Khojki, number of codePoints: 62 |
| 5926 | auto characterClass = std::make_unique<CharacterClass>( |
| 5927 | std::initializer_list<UChar32>({}), |
| 5928 | std::initializer_list<CharacterRange>({}), |
| 5929 | std::initializer_list<UChar32>({}), |
| 5930 | std::initializer_list<CharacterRange>({{0x11200, 0x11211}, {0x11213, 0x1123e}}), |
| 5931 | CharacterClassWidths::HasNonBMPChars); |
| 5932 | return characterClass; |
| 5933 | } |
| 5934 | |
| 5935 | static std::unique_ptr<CharacterClass> createCharacterClass201() |
| 5936 | { |
| 5937 | // Name = Linear_A, number of codePoints: 341 |
| 5938 | auto characterClass = std::make_unique<CharacterClass>( |
| 5939 | std::initializer_list<UChar32>({}), |
| 5940 | std::initializer_list<CharacterRange>({}), |
| 5941 | std::initializer_list<UChar32>({}), |
| 5942 | std::initializer_list<CharacterRange>({{0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}}), |
| 5943 | CharacterClassWidths::HasNonBMPChars); |
| 5944 | return characterClass; |
| 5945 | } |
| 5946 | |
| 5947 | static std::unique_ptr<CharacterClass> createCharacterClass202() |
| 5948 | { |
| 5949 | // Name = Mahajani, number of codePoints: 39 |
| 5950 | auto characterClass = std::make_unique<CharacterClass>( |
| 5951 | std::initializer_list<UChar32>({}), |
| 5952 | std::initializer_list<CharacterRange>({}), |
| 5953 | std::initializer_list<UChar32>({}), |
| 5954 | std::initializer_list<CharacterRange>({{0x11150, 0x11176}}), |
| 5955 | CharacterClassWidths::HasNonBMPChars); |
| 5956 | return characterClass; |
| 5957 | } |
| 5958 | |
| 5959 | static std::unique_ptr<CharacterClass> createCharacterClass203() |
| 5960 | { |
| 5961 | // Name = Manichaean, number of codePoints: 51 |
| 5962 | auto characterClass = std::make_unique<CharacterClass>( |
| 5963 | std::initializer_list<UChar32>({}), |
| 5964 | std::initializer_list<CharacterRange>({}), |
| 5965 | std::initializer_list<UChar32>({}), |
| 5966 | std::initializer_list<CharacterRange>({{0x10ac0, 0x10ae6}, {0x10aeb, 0x10af6}}), |
| 5967 | CharacterClassWidths::HasNonBMPChars); |
| 5968 | return characterClass; |
| 5969 | } |
| 5970 | |
| 5971 | static std::unique_ptr<CharacterClass> createCharacterClass204() |
| 5972 | { |
| 5973 | // Name = Mende_Kikakui, number of codePoints: 213 |
| 5974 | auto characterClass = std::make_unique<CharacterClass>( |
| 5975 | std::initializer_list<UChar32>({}), |
| 5976 | std::initializer_list<CharacterRange>({}), |
| 5977 | std::initializer_list<UChar32>({}), |
| 5978 | std::initializer_list<CharacterRange>({{0x1e800, 0x1e8c4}, {0x1e8c7, 0x1e8d6}}), |
| 5979 | CharacterClassWidths::HasNonBMPChars); |
| 5980 | return characterClass; |
| 5981 | } |
| 5982 | |
| 5983 | static std::unique_ptr<CharacterClass> createCharacterClass205() |
| 5984 | { |
| 5985 | // Name = Modi, number of codePoints: 79 |
| 5986 | auto characterClass = std::make_unique<CharacterClass>( |
| 5987 | std::initializer_list<UChar32>({}), |
| 5988 | std::initializer_list<CharacterRange>({}), |
| 5989 | std::initializer_list<UChar32>({}), |
| 5990 | std::initializer_list<CharacterRange>({{0x11600, 0x11644}, {0x11650, 0x11659}}), |
| 5991 | CharacterClassWidths::HasNonBMPChars); |
| 5992 | return characterClass; |
| 5993 | } |
| 5994 | |
| 5995 | static std::unique_ptr<CharacterClass> createCharacterClass206() |
| 5996 | { |
| 5997 | // Name = Mro, number of codePoints: 43 |
| 5998 | auto characterClass = std::make_unique<CharacterClass>( |
| 5999 | std::initializer_list<UChar32>({}), |
| 6000 | std::initializer_list<CharacterRange>({}), |
| 6001 | std::initializer_list<UChar32>({}), |
| 6002 | std::initializer_list<CharacterRange>({{0x16a40, 0x16a5e}, {0x16a60, 0x16a69}, {0x16a6e, 0x16a6f}}), |
| 6003 | CharacterClassWidths::HasNonBMPChars); |
| 6004 | return characterClass; |
| 6005 | } |
| 6006 | |
| 6007 | static std::unique_ptr<CharacterClass> createCharacterClass207() |
| 6008 | { |
| 6009 | // Name = Old_North_Arabian, number of codePoints: 32 |
| 6010 | auto characterClass = std::make_unique<CharacterClass>( |
| 6011 | std::initializer_list<UChar32>({}), |
| 6012 | std::initializer_list<CharacterRange>({}), |
| 6013 | std::initializer_list<UChar32>({}), |
| 6014 | std::initializer_list<CharacterRange>({{0x10a80, 0x10a9f}}), |
| 6015 | CharacterClassWidths::HasNonBMPChars); |
| 6016 | return characterClass; |
| 6017 | } |
| 6018 | |
| 6019 | static std::unique_ptr<CharacterClass> createCharacterClass208() |
| 6020 | { |
| 6021 | // Name = Nabataean, number of codePoints: 40 |
| 6022 | auto characterClass = std::make_unique<CharacterClass>( |
| 6023 | std::initializer_list<UChar32>({}), |
| 6024 | std::initializer_list<CharacterRange>({}), |
| 6025 | std::initializer_list<UChar32>({}), |
| 6026 | std::initializer_list<CharacterRange>({{0x10880, 0x1089e}, {0x108a7, 0x108af}}), |
| 6027 | CharacterClassWidths::HasNonBMPChars); |
| 6028 | return characterClass; |
| 6029 | } |
| 6030 | |
| 6031 | static std::unique_ptr<CharacterClass> createCharacterClass209() |
| 6032 | { |
| 6033 | // Name = Palmyrene, number of codePoints: 32 |
| 6034 | auto characterClass = std::make_unique<CharacterClass>( |
| 6035 | std::initializer_list<UChar32>({}), |
| 6036 | std::initializer_list<CharacterRange>({}), |
| 6037 | std::initializer_list<UChar32>({}), |
| 6038 | std::initializer_list<CharacterRange>({{0x10860, 0x1087f}}), |
| 6039 | CharacterClassWidths::HasNonBMPChars); |
| 6040 | return characterClass; |
| 6041 | } |
| 6042 | |
| 6043 | static std::unique_ptr<CharacterClass> createCharacterClass210() |
| 6044 | { |
| 6045 | // Name = Pau_Cin_Hau, number of codePoints: 57 |
| 6046 | auto characterClass = std::make_unique<CharacterClass>( |
| 6047 | std::initializer_list<UChar32>({}), |
| 6048 | std::initializer_list<CharacterRange>({}), |
| 6049 | std::initializer_list<UChar32>({}), |
| 6050 | std::initializer_list<CharacterRange>({{0x11ac0, 0x11af8}}), |
| 6051 | CharacterClassWidths::HasNonBMPChars); |
| 6052 | return characterClass; |
| 6053 | } |
| 6054 | |
| 6055 | static std::unique_ptr<CharacterClass> createCharacterClass211() |
| 6056 | { |
| 6057 | // Name = Old_Permic, number of codePoints: 43 |
| 6058 | auto characterClass = std::make_unique<CharacterClass>( |
| 6059 | std::initializer_list<UChar32>({}), |
| 6060 | std::initializer_list<CharacterRange>({}), |
| 6061 | std::initializer_list<UChar32>({}), |
| 6062 | std::initializer_list<CharacterRange>({{0x10350, 0x1037a}}), |
| 6063 | CharacterClassWidths::HasNonBMPChars); |
| 6064 | return characterClass; |
| 6065 | } |
| 6066 | |
| 6067 | static std::unique_ptr<CharacterClass> createCharacterClass212() |
| 6068 | { |
| 6069 | // Name = Psalter_Pahlavi, number of codePoints: 29 |
| 6070 | auto characterClass = std::make_unique<CharacterClass>( |
| 6071 | std::initializer_list<UChar32>({}), |
| 6072 | std::initializer_list<CharacterRange>({}), |
| 6073 | std::initializer_list<UChar32>({}), |
| 6074 | std::initializer_list<CharacterRange>({{0x10b80, 0x10b91}, {0x10b99, 0x10b9c}, {0x10ba9, 0x10baf}}), |
| 6075 | CharacterClassWidths::HasNonBMPChars); |
| 6076 | return characterClass; |
| 6077 | } |
| 6078 | |
| 6079 | static std::unique_ptr<CharacterClass> createCharacterClass213() |
| 6080 | { |
| 6081 | // Name = Siddham, number of codePoints: 92 |
| 6082 | auto characterClass = std::make_unique<CharacterClass>( |
| 6083 | std::initializer_list<UChar32>({}), |
| 6084 | std::initializer_list<CharacterRange>({}), |
| 6085 | std::initializer_list<UChar32>({}), |
| 6086 | std::initializer_list<CharacterRange>({{0x11580, 0x115b5}, {0x115b8, 0x115dd}}), |
| 6087 | CharacterClassWidths::HasNonBMPChars); |
| 6088 | return characterClass; |
| 6089 | } |
| 6090 | |
| 6091 | static std::unique_ptr<CharacterClass> createCharacterClass214() |
| 6092 | { |
| 6093 | // Name = Khudawadi, number of codePoints: 69 |
| 6094 | auto characterClass = std::make_unique<CharacterClass>( |
| 6095 | std::initializer_list<UChar32>({}), |
| 6096 | std::initializer_list<CharacterRange>({}), |
| 6097 | std::initializer_list<UChar32>({}), |
| 6098 | std::initializer_list<CharacterRange>({{0x112b0, 0x112ea}, {0x112f0, 0x112f9}}), |
| 6099 | CharacterClassWidths::HasNonBMPChars); |
| 6100 | return characterClass; |
| 6101 | } |
| 6102 | |
| 6103 | static std::unique_ptr<CharacterClass> createCharacterClass215() |
| 6104 | { |
| 6105 | // Name = Tirhuta, number of codePoints: 82 |
| 6106 | auto characterClass = std::make_unique<CharacterClass>( |
| 6107 | std::initializer_list<UChar32>({}), |
| 6108 | std::initializer_list<CharacterRange>({}), |
| 6109 | std::initializer_list<UChar32>({}), |
| 6110 | std::initializer_list<CharacterRange>({{0x11480, 0x114c7}, {0x114d0, 0x114d9}}), |
| 6111 | CharacterClassWidths::HasNonBMPChars); |
| 6112 | return characterClass; |
| 6113 | } |
| 6114 | |
| 6115 | static std::unique_ptr<CharacterClass> createCharacterClass216() |
| 6116 | { |
| 6117 | // Name = Warang_Citi, number of codePoints: 84 |
| 6118 | auto characterClass = std::make_unique<CharacterClass>( |
| 6119 | std::initializer_list<UChar32>({}), |
| 6120 | std::initializer_list<CharacterRange>({}), |
| 6121 | std::initializer_list<UChar32>({0x118ff}), |
| 6122 | std::initializer_list<CharacterRange>({{0x118a0, 0x118f2}}), |
| 6123 | CharacterClassWidths::HasNonBMPChars); |
| 6124 | return characterClass; |
| 6125 | } |
| 6126 | |
| 6127 | static std::unique_ptr<CharacterClass> createCharacterClass217() |
| 6128 | { |
| 6129 | // Name = Ahom, number of codePoints: 58 |
| 6130 | auto characterClass = std::make_unique<CharacterClass>( |
| 6131 | std::initializer_list<UChar32>({}), |
| 6132 | std::initializer_list<CharacterRange>({}), |
| 6133 | std::initializer_list<UChar32>({}), |
| 6134 | std::initializer_list<CharacterRange>({{0x11700, 0x1171a}, {0x1171d, 0x1172b}, {0x11730, 0x1173f}}), |
| 6135 | CharacterClassWidths::HasNonBMPChars); |
| 6136 | return characterClass; |
| 6137 | } |
| 6138 | |
| 6139 | static std::unique_ptr<CharacterClass> createCharacterClass218() |
| 6140 | { |
| 6141 | // Name = Anatolian_Hieroglyphs, number of codePoints: 583 |
| 6142 | auto characterClass = std::make_unique<CharacterClass>( |
| 6143 | std::initializer_list<UChar32>({}), |
| 6144 | std::initializer_list<CharacterRange>({}), |
| 6145 | std::initializer_list<UChar32>({}), |
| 6146 | std::initializer_list<CharacterRange>({{0x14400, 0x14646}}), |
| 6147 | CharacterClassWidths::HasNonBMPChars); |
| 6148 | return characterClass; |
| 6149 | } |
| 6150 | |
| 6151 | static std::unique_ptr<CharacterClass> createCharacterClass219() |
| 6152 | { |
| 6153 | // Name = Hatran, number of codePoints: 26 |
| 6154 | auto characterClass = std::make_unique<CharacterClass>( |
| 6155 | std::initializer_list<UChar32>({}), |
| 6156 | std::initializer_list<CharacterRange>({}), |
| 6157 | std::initializer_list<UChar32>({}), |
| 6158 | std::initializer_list<CharacterRange>({{0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x108fb, 0x108ff}}), |
| 6159 | CharacterClassWidths::HasNonBMPChars); |
| 6160 | return characterClass; |
| 6161 | } |
| 6162 | |
| 6163 | static std::unique_ptr<CharacterClass> createCharacterClass220() |
| 6164 | { |
| 6165 | // Name = Multani, number of codePoints: 38 |
| 6166 | auto characterClass = std::make_unique<CharacterClass>( |
| 6167 | std::initializer_list<UChar32>({}), |
| 6168 | std::initializer_list<CharacterRange>({}), |
| 6169 | std::initializer_list<UChar32>({0x11288}), |
| 6170 | std::initializer_list<CharacterRange>({{0x11280, 0x11286}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a9}}), |
| 6171 | CharacterClassWidths::HasNonBMPChars); |
| 6172 | return characterClass; |
| 6173 | } |
| 6174 | |
| 6175 | static std::unique_ptr<CharacterClass> createCharacterClass221() |
| 6176 | { |
| 6177 | // Name = Old_Hungarian, number of codePoints: 108 |
| 6178 | auto characterClass = std::make_unique<CharacterClass>( |
| 6179 | std::initializer_list<UChar32>({}), |
| 6180 | std::initializer_list<CharacterRange>({}), |
| 6181 | std::initializer_list<UChar32>({}), |
| 6182 | std::initializer_list<CharacterRange>({{0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10cfa, 0x10cff}}), |
| 6183 | CharacterClassWidths::HasNonBMPChars); |
| 6184 | return characterClass; |
| 6185 | } |
| 6186 | |
| 6187 | static std::unique_ptr<CharacterClass> createCharacterClass222() |
| 6188 | { |
| 6189 | // Name = SignWriting, number of codePoints: 672 |
| 6190 | auto characterClass = std::make_unique<CharacterClass>( |
| 6191 | std::initializer_list<UChar32>({}), |
| 6192 | std::initializer_list<CharacterRange>({}), |
| 6193 | std::initializer_list<UChar32>({}), |
| 6194 | std::initializer_list<CharacterRange>({{0x1d800, 0x1da8b}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}}), |
| 6195 | CharacterClassWidths::HasNonBMPChars); |
| 6196 | return characterClass; |
| 6197 | } |
| 6198 | |
| 6199 | static std::unique_ptr<CharacterClass> createCharacterClass223() |
| 6200 | { |
| 6201 | // Name = Adlam, number of codePoints: 87 |
| 6202 | auto characterClass = std::make_unique<CharacterClass>( |
| 6203 | std::initializer_list<UChar32>({}), |
| 6204 | std::initializer_list<CharacterRange>({}), |
| 6205 | std::initializer_list<UChar32>({}), |
| 6206 | std::initializer_list<CharacterRange>({{0x1e900, 0x1e94a}, {0x1e950, 0x1e959}, {0x1e95e, 0x1e95f}}), |
| 6207 | CharacterClassWidths::HasNonBMPChars); |
| 6208 | return characterClass; |
| 6209 | } |
| 6210 | |
| 6211 | static std::unique_ptr<CharacterClass> createCharacterClass224() |
| 6212 | { |
| 6213 | // Name = Bhaiksuki, number of codePoints: 97 |
| 6214 | auto characterClass = std::make_unique<CharacterClass>( |
| 6215 | std::initializer_list<UChar32>({}), |
| 6216 | std::initializer_list<CharacterRange>({}), |
| 6217 | std::initializer_list<UChar32>({}), |
| 6218 | std::initializer_list<CharacterRange>({{0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, {0x11c38, 0x11c45}, {0x11c50, 0x11c6c}}), |
| 6219 | CharacterClassWidths::HasNonBMPChars); |
| 6220 | return characterClass; |
| 6221 | } |
| 6222 | |
| 6223 | static std::unique_ptr<CharacterClass> createCharacterClass225() |
| 6224 | { |
| 6225 | // Name = Marchen, number of codePoints: 68 |
| 6226 | auto characterClass = std::make_unique<CharacterClass>( |
| 6227 | std::initializer_list<UChar32>({}), |
| 6228 | std::initializer_list<CharacterRange>({}), |
| 6229 | std::initializer_list<UChar32>({}), |
| 6230 | std::initializer_list<CharacterRange>({{0x11c70, 0x11c8f}, {0x11c92, 0x11ca7}, {0x11ca9, 0x11cb6}}), |
| 6231 | CharacterClassWidths::HasNonBMPChars); |
| 6232 | return characterClass; |
| 6233 | } |
| 6234 | |
| 6235 | static std::unique_ptr<CharacterClass> createCharacterClass226() |
| 6236 | { |
| 6237 | // Name = Newa, number of codePoints: 93 |
| 6238 | auto characterClass = std::make_unique<CharacterClass>( |
| 6239 | std::initializer_list<UChar32>({}), |
| 6240 | std::initializer_list<CharacterRange>({}), |
| 6241 | std::initializer_list<UChar32>({0x1145b}), |
| 6242 | std::initializer_list<CharacterRange>({{0x11400, 0x11459}, {0x1145d, 0x1145e}}), |
| 6243 | CharacterClassWidths::HasNonBMPChars); |
| 6244 | return characterClass; |
| 6245 | } |
| 6246 | |
| 6247 | static std::unique_ptr<CharacterClass> createCharacterClass227() |
| 6248 | { |
| 6249 | // Name = Osage, number of codePoints: 72 |
| 6250 | auto characterClass = std::make_unique<CharacterClass>( |
| 6251 | std::initializer_list<UChar32>({}), |
| 6252 | std::initializer_list<CharacterRange>({}), |
| 6253 | std::initializer_list<UChar32>({}), |
| 6254 | std::initializer_list<CharacterRange>({{0x104b0, 0x104d3}, {0x104d8, 0x104fb}}), |
| 6255 | CharacterClassWidths::HasNonBMPChars); |
| 6256 | return characterClass; |
| 6257 | } |
| 6258 | |
| 6259 | static std::unique_ptr<CharacterClass> createCharacterClass228() |
| 6260 | { |
| 6261 | // Name = Tangut, number of codePoints: 6886 |
| 6262 | auto characterClass = std::make_unique<CharacterClass>( |
| 6263 | std::initializer_list<UChar32>({}), |
| 6264 | std::initializer_list<CharacterRange>({}), |
| 6265 | std::initializer_list<UChar32>({0x16fe0}), |
| 6266 | std::initializer_list<CharacterRange>({{0x17000, 0x187f1}, {0x18800, 0x18af2}}), |
| 6267 | CharacterClassWidths::HasNonBMPChars); |
| 6268 | return characterClass; |
| 6269 | } |
| 6270 | |
| 6271 | static std::unique_ptr<CharacterClass> createCharacterClass229() |
| 6272 | { |
| 6273 | // Name = Masaram_Gondi, number of codePoints: 75 |
| 6274 | auto characterClass = std::make_unique<CharacterClass>( |
| 6275 | std::initializer_list<UChar32>({}), |
| 6276 | std::initializer_list<CharacterRange>({}), |
| 6277 | std::initializer_list<UChar32>({0x11d3a}), |
| 6278 | std::initializer_list<CharacterRange>({{0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3c, 0x11d3d}, |
| 6279 | {0x11d3f, 0x11d47}, {0x11d50, 0x11d59}}), |
| 6280 | CharacterClassWidths::HasNonBMPChars); |
| 6281 | return characterClass; |
| 6282 | } |
| 6283 | |
| 6284 | static std::unique_ptr<CharacterClass> createCharacterClass230() |
| 6285 | { |
| 6286 | // Name = Nushu, number of codePoints: 397 |
| 6287 | auto characterClass = std::make_unique<CharacterClass>( |
| 6288 | std::initializer_list<UChar32>({}), |
| 6289 | std::initializer_list<CharacterRange>({}), |
| 6290 | std::initializer_list<UChar32>({0x16fe1}), |
| 6291 | std::initializer_list<CharacterRange>({{0x1b170, 0x1b2fb}}), |
| 6292 | CharacterClassWidths::HasNonBMPChars); |
| 6293 | return characterClass; |
| 6294 | } |
| 6295 | |
| 6296 | static std::unique_ptr<CharacterClass> createCharacterClass231() |
| 6297 | { |
| 6298 | // Name = Soyombo, number of codePoints: 81 |
| 6299 | auto characterClass = std::make_unique<CharacterClass>( |
| 6300 | std::initializer_list<UChar32>({}), |
| 6301 | std::initializer_list<CharacterRange>({}), |
| 6302 | std::initializer_list<UChar32>({}), |
| 6303 | std::initializer_list<CharacterRange>({{0x11a50, 0x11a83}, {0x11a86, 0x11aa2}}), |
| 6304 | CharacterClassWidths::HasNonBMPChars); |
| 6305 | return characterClass; |
| 6306 | } |
| 6307 | |
| 6308 | static std::unique_ptr<CharacterClass> createCharacterClass232() |
| 6309 | { |
| 6310 | // Name = Zanabazar_Square, number of codePoints: 72 |
| 6311 | auto characterClass = std::make_unique<CharacterClass>( |
| 6312 | std::initializer_list<UChar32>({}), |
| 6313 | std::initializer_list<CharacterRange>({}), |
| 6314 | std::initializer_list<UChar32>({}), |
| 6315 | std::initializer_list<CharacterRange>({{0x11a00, 0x11a47}}), |
| 6316 | CharacterClassWidths::HasNonBMPChars); |
| 6317 | return characterClass; |
| 6318 | } |
| 6319 | |
| 6320 | static std::unique_ptr<CharacterClass> createCharacterClass233() |
| 6321 | { |
| 6322 | // Name = Dogra, number of codePoints: 60 |
| 6323 | auto characterClass = std::make_unique<CharacterClass>( |
| 6324 | std::initializer_list<UChar32>({}), |
| 6325 | std::initializer_list<CharacterRange>({}), |
| 6326 | std::initializer_list<UChar32>({}), |
| 6327 | std::initializer_list<CharacterRange>({{0x11800, 0x1183b}}), |
| 6328 | CharacterClassWidths::HasNonBMPChars); |
| 6329 | return characterClass; |
| 6330 | } |
| 6331 | |
| 6332 | static std::unique_ptr<CharacterClass> createCharacterClass234() |
| 6333 | { |
| 6334 | // Name = Gunjala_Gondi, number of codePoints: 63 |
| 6335 | auto characterClass = std::make_unique<CharacterClass>( |
| 6336 | std::initializer_list<UChar32>({}), |
| 6337 | std::initializer_list<CharacterRange>({}), |
| 6338 | std::initializer_list<UChar32>({}), |
| 6339 | std::initializer_list<CharacterRange>({{0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, |
| 6340 | {0x11d93, 0x11d98}, {0x11da0, 0x11da9}}), |
| 6341 | CharacterClassWidths::HasNonBMPChars); |
| 6342 | return characterClass; |
| 6343 | } |
| 6344 | |
| 6345 | static std::unique_ptr<CharacterClass> createCharacterClass235() |
| 6346 | { |
| 6347 | // Name = Makasar, number of codePoints: 25 |
| 6348 | auto characterClass = std::make_unique<CharacterClass>( |
| 6349 | std::initializer_list<UChar32>({}), |
| 6350 | std::initializer_list<CharacterRange>({}), |
| 6351 | std::initializer_list<UChar32>({}), |
| 6352 | std::initializer_list<CharacterRange>({{0x11ee0, 0x11ef8}}), |
| 6353 | CharacterClassWidths::HasNonBMPChars); |
| 6354 | return characterClass; |
| 6355 | } |
| 6356 | |
| 6357 | static std::unique_ptr<CharacterClass> createCharacterClass236() |
| 6358 | { |
| 6359 | // Name = Medefaidrin, number of codePoints: 91 |
| 6360 | auto characterClass = std::make_unique<CharacterClass>( |
| 6361 | std::initializer_list<UChar32>({}), |
| 6362 | std::initializer_list<CharacterRange>({}), |
| 6363 | std::initializer_list<UChar32>({}), |
| 6364 | std::initializer_list<CharacterRange>({{0x16e40, 0x16e9a}}), |
| 6365 | CharacterClassWidths::HasNonBMPChars); |
| 6366 | return characterClass; |
| 6367 | } |
| 6368 | |
| 6369 | static std::unique_ptr<CharacterClass> createCharacterClass237() |
| 6370 | { |
| 6371 | // Name = Hanifi_Rohingya, number of codePoints: 50 |
| 6372 | auto characterClass = std::make_unique<CharacterClass>( |
| 6373 | std::initializer_list<UChar32>({}), |
| 6374 | std::initializer_list<CharacterRange>({}), |
| 6375 | std::initializer_list<UChar32>({}), |
| 6376 | std::initializer_list<CharacterRange>({{0x10d00, 0x10d27}, {0x10d30, 0x10d39}}), |
| 6377 | CharacterClassWidths::HasNonBMPChars); |
| 6378 | return characterClass; |
| 6379 | } |
| 6380 | |
| 6381 | static std::unique_ptr<CharacterClass> createCharacterClass238() |
| 6382 | { |
| 6383 | // Name = Sogdian, number of codePoints: 42 |
| 6384 | auto characterClass = std::make_unique<CharacterClass>( |
| 6385 | std::initializer_list<UChar32>({}), |
| 6386 | std::initializer_list<CharacterRange>({}), |
| 6387 | std::initializer_list<UChar32>({}), |
| 6388 | std::initializer_list<CharacterRange>({{0x10f30, 0x10f59}}), |
| 6389 | CharacterClassWidths::HasNonBMPChars); |
| 6390 | return characterClass; |
| 6391 | } |
| 6392 | |
| 6393 | static std::unique_ptr<CharacterClass> createCharacterClass239() |
| 6394 | { |
| 6395 | // Name = Old_Sogdian, number of codePoints: 40 |
| 6396 | auto characterClass = std::make_unique<CharacterClass>( |
| 6397 | std::initializer_list<UChar32>({}), |
| 6398 | std::initializer_list<CharacterRange>({}), |
| 6399 | std::initializer_list<UChar32>({}), |
| 6400 | std::initializer_list<CharacterRange>({{0x10f00, 0x10f27}}), |
| 6401 | CharacterClassWidths::HasNonBMPChars); |
| 6402 | return characterClass; |
| 6403 | } |
| 6404 | |
| 6405 | static std::unique_ptr<CharacterClass> createCharacterClass240() |
| 6406 | { |
| 6407 | // Name = Common, number of codePoints: 7209 |
| 6408 | auto characterClass = std::make_unique<CharacterClass>( |
| 6409 | std::initializer_list<UChar32>({}), |
| 6410 | std::initializer_list<CharacterRange>({{0x00, 0x40}, {0x5b, 0x60}, {0x7b, 0x7f}}), |
| 6411 | std::initializer_list<UChar32>({0x00d7, 0x00f7, 0x0374, 0x037e, 0x0385, 0x0387, 0x0605, 0x06dd, |
| 6412 | 0x08e2, 0x0e3f, 0x3000, 0x3004, 0x3012, 0x3020, 0x3036, 0x327f, |
| 6413 | 0x33ff, 0xab5b, 0xfeff, 0x1d4a2, 0x1d4bb, 0x1d546, 0x1f97a, 0xe0001}), |
| 6414 | std::initializer_list<CharacterRange>({{0x0080, 0x00a9}, {0x00ab, 0x00b9}, {0x00bb, 0x00bf}, {0x02b9, 0x02df}, |
| 6415 | {0x02e5, 0x02e9}, {0x02ec, 0x02ff}, {0x0fd5, 0x0fd8}, {0x16eb, 0x16ed}, |
| 6416 | {0x2000, 0x200b}, {0x200e, 0x2064}, {0x2066, 0x2070}, {0x2074, 0x207e}, |
| 6417 | {0x2080, 0x208e}, {0x20a0, 0x20bf}, {0x2100, 0x2125}, {0x2127, 0x2129}, |
| 6418 | {0x212c, 0x2131}, {0x2133, 0x214d}, {0x214f, 0x215f}, {0x2189, 0x218b}, |
| 6419 | {0x2190, 0x2426}, {0x2440, 0x244a}, {0x2460, 0x27ff}, {0x2900, 0x2b73}, |
| 6420 | {0x2b76, 0x2b95}, {0x2b98, 0x2bc8}, {0x2bca, 0x2bfe}, {0x2e00, 0x2e42}, |
| 6421 | {0x2e44, 0x2e4e}, {0x2ff0, 0x2ffb}, {0x3248, 0x325f}, {0x32b1, 0x32bf}, |
| 6422 | {0x32cc, 0x32cf}, {0x3371, 0x337a}, {0x3380, 0x33df}, {0x4dc0, 0x4dff}, |
| 6423 | {0xa700, 0xa721}, {0xa788, 0xa78a}, {0xfd3e, 0xfd3f}, {0xfe10, 0xfe19}, |
| 6424 | {0xfe30, 0xfe44}, {0xfe47, 0xfe52}, {0xfe54, 0xfe66}, {0xfe68, 0xfe6b}, |
| 6425 | {0xff01, 0xff20}, {0xff3b, 0xff40}, {0xff5b, 0xff60}, {0xffe0, 0xffe6}, |
| 6426 | {0xffe8, 0xffee}, {0xfff9, 0xfffd}, {0x10190, 0x1019b}, {0x101d0, 0x101fc}, |
| 6427 | {0x1d000, 0x1d0f5}, {0x1d100, 0x1d126}, {0x1d129, 0x1d166}, {0x1d16a, 0x1d17a}, |
| 6428 | {0x1d183, 0x1d184}, {0x1d18c, 0x1d1a9}, {0x1d1ae, 0x1d1e8}, {0x1d2e0, 0x1d2f3}, |
| 6429 | {0x1d300, 0x1d356}, {0x1d372, 0x1d378}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, |
| 6430 | {0x1d49e, 0x1d49f}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, |
| 6431 | {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, |
| 6432 | {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, |
| 6433 | {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, |
| 6434 | {0x1ec71, 0x1ecb4}, {0x1f000, 0x1f02b}, {0x1f030, 0x1f093}, {0x1f0a0, 0x1f0ae}, |
| 6435 | {0x1f0b1, 0x1f0bf}, {0x1f0c1, 0x1f0cf}, {0x1f0d1, 0x1f0f5}, {0x1f100, 0x1f10c}, |
| 6436 | {0x1f110, 0x1f16b}, {0x1f170, 0x1f1ac}, {0x1f1e6, 0x1f1ff}, {0x1f201, 0x1f202}, |
| 6437 | {0x1f210, 0x1f23b}, {0x1f240, 0x1f248}, {0x1f260, 0x1f265}, {0x1f300, 0x1f6d4}, |
| 6438 | {0x1f6e0, 0x1f6ec}, {0x1f6f0, 0x1f6f9}, {0x1f700, 0x1f773}, {0x1f780, 0x1f7d8}, |
| 6439 | {0x1f800, 0x1f80b}, {0x1f810, 0x1f847}, {0x1f850, 0x1f859}, {0x1f860, 0x1f887}, |
| 6440 | {0x1f890, 0x1f8ad}, {0x1f900, 0x1f90b}, {0x1f910, 0x1f93e}, {0x1f940, 0x1f970}, |
| 6441 | {0x1f973, 0x1f976}, {0x1f97c, 0x1f9a2}, {0x1f9b0, 0x1f9b9}, {0x1f9c0, 0x1f9c2}, |
| 6442 | {0x1f9d0, 0x1f9ff}, {0x1fa60, 0x1fa6d}, {0xe0020, 0xe007f}}), |
| 6443 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6444 | return characterClass; |
| 6445 | } |
| 6446 | |
| 6447 | static std::unique_ptr<CharacterClass> createCharacterClass241() |
| 6448 | { |
| 6449 | // Name = Inherited, number of codePoints: 514 |
| 6450 | auto characterClass = std::make_unique<CharacterClass>( |
| 6451 | std::initializer_list<UChar32>({}), |
| 6452 | std::initializer_list<CharacterRange>({}), |
| 6453 | std::initializer_list<UChar32>({0x101fd}), |
| 6454 | std::initializer_list<CharacterRange>({{0x0300, 0x0341}, {0x0343, 0x0344}, {0x0346, 0x0362}, {0x1ab0, 0x1abe}, |
| 6455 | {0x1dc2, 0x1df9}, {0x1dfb, 0x1dff}, {0x200c, 0x200d}, {0x20d0, 0x20ef}, |
| 6456 | {0xfe00, 0xfe0f}, {0xfe20, 0xfe2d}, {0x1d167, 0x1d169}, {0x1d17b, 0x1d182}, |
| 6457 | {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0xe0100, 0xe01ef}}), |
| 6458 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6459 | return characterClass; |
| 6460 | } |
| 6461 | |
| 6462 | static std::unique_ptr<CharacterClass> createCharacterClass242() |
| 6463 | { |
| 6464 | // Name = Bengali, number of codePoints: 112 |
| 6465 | auto characterClass = std::make_unique<CharacterClass>( |
| 6466 | std::initializer_list<UChar32>({}), |
| 6467 | std::initializer_list<CharacterRange>({}), |
| 6468 | std::initializer_list<UChar32>({0x09b2, 0x09d7, 0x1cd0, 0x1cd2, 0x1cd8, 0x1ce1, 0x1cea, 0x1ced, |
| 6469 | 0xa8f1}), |
| 6470 | std::initializer_list<CharacterRange>({{0x0951, 0x0952}, {0x0964, 0x0965}, {0x0980, 0x0983}, {0x0985, 0x098c}, |
| 6471 | {0x098f, 0x0990}, {0x0993, 0x09a8}, {0x09aa, 0x09b0}, {0x09b6, 0x09b9}, |
| 6472 | {0x09bc, 0x09c4}, {0x09c7, 0x09c8}, {0x09cb, 0x09ce}, {0x09dc, 0x09dd}, |
| 6473 | {0x09df, 0x09e3}, {0x09e6, 0x09fe}, {0x1cd5, 0x1cd6}, {0x1cf5, 0x1cf7}}), |
| 6474 | CharacterClassWidths::HasBMPChars); |
| 6475 | return characterClass; |
| 6476 | } |
| 6477 | |
| 6478 | static std::unique_ptr<CharacterClass> createCharacterClass243() |
| 6479 | { |
| 6480 | // Name = Devanagari, number of codePoints: 212 |
| 6481 | auto characterClass = std::make_unique<CharacterClass>( |
| 6482 | std::initializer_list<UChar32>({}), |
| 6483 | std::initializer_list<CharacterRange>({}), |
| 6484 | std::initializer_list<UChar32>({0x20f0}), |
| 6485 | std::initializer_list<CharacterRange>({{0x0900, 0x097f}, {0x1cd0, 0x1cf6}, {0x1cf8, 0x1cf9}, {0xa830, 0xa839}, |
| 6486 | {0xa8e0, 0xa8ff}}), |
| 6487 | CharacterClassWidths::HasBMPChars); |
| 6488 | return characterClass; |
| 6489 | } |
| 6490 | |
| 6491 | static std::unique_ptr<CharacterClass> createCharacterClass244() |
| 6492 | { |
| 6493 | // Name = Duployan, number of codePoints: 147 |
| 6494 | auto characterClass = std::make_unique<CharacterClass>( |
| 6495 | std::initializer_list<UChar32>({}), |
| 6496 | std::initializer_list<CharacterRange>({}), |
| 6497 | std::initializer_list<UChar32>({}), |
| 6498 | std::initializer_list<CharacterRange>({{0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, |
| 6499 | {0x1bc9c, 0x1bca3}}), |
| 6500 | CharacterClassWidths::HasNonBMPChars); |
| 6501 | return characterClass; |
| 6502 | } |
| 6503 | |
| 6504 | static std::unique_ptr<CharacterClass> createCharacterClass245() |
| 6505 | { |
| 6506 | // Name = Greek, number of codePoints: 522 |
| 6507 | auto characterClass = std::make_unique<CharacterClass>( |
| 6508 | std::initializer_list<UChar32>({}), |
| 6509 | std::initializer_list<CharacterRange>({}), |
| 6510 | std::initializer_list<UChar32>({0x0342, 0x0345, 0x037f, 0x0384, 0x0386, 0x038c, 0x1f59, 0x1f5b, |
| 6511 | 0x1f5d, 0x2126, 0xab65, 0x101a0}), |
| 6512 | std::initializer_list<CharacterRange>({{0x0370, 0x0373}, {0x0375, 0x0377}, {0x037a, 0x037d}, {0x0388, 0x038a}, |
| 6513 | {0x038e, 0x03a1}, {0x03a3, 0x03e1}, {0x03f0, 0x03ff}, {0x1d26, 0x1d2a}, |
| 6514 | {0x1d5d, 0x1d61}, {0x1d66, 0x1d6a}, {0x1dbf, 0x1dc1}, {0x1f00, 0x1f15}, |
| 6515 | {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, |
| 6516 | {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fc4}, {0x1fc6, 0x1fd3}, |
| 6517 | {0x1fd6, 0x1fdb}, {0x1fdd, 0x1fef}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffe}, |
| 6518 | {0x10140, 0x1018e}, {0x1d200, 0x1d245}}), |
| 6519 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6520 | return characterClass; |
| 6521 | } |
| 6522 | |
| 6523 | static std::unique_ptr<CharacterClass> createCharacterClass246() |
| 6524 | { |
| 6525 | // Name = Han, number of codePoints: 89512 |
| 6526 | auto characterClass = std::make_unique<CharacterClass>( |
| 6527 | std::initializer_list<UChar32>({}), |
| 6528 | std::initializer_list<CharacterRange>({}), |
| 6529 | std::initializer_list<UChar32>({0x3003, 0x3030, 0x30fb}), |
| 6530 | std::initializer_list<CharacterRange>({{0x2e80, 0x2e99}, {0x2e9b, 0x2ef3}, {0x2f00, 0x2fd5}, {0x3001, 0x3002}, |
| 6531 | {0x3005, 0x3011}, {0x3013, 0x301f}, {0x3021, 0x302d}, {0x3037, 0x303f}, |
| 6532 | {0x3190, 0x319f}, {0x31c0, 0x31e3}, {0x3220, 0x3247}, {0x3280, 0x32b0}, |
| 6533 | {0x32c0, 0x32cb}, {0x3358, 0x3370}, {0x337b, 0x337f}, {0x33e0, 0x33fe}, |
| 6534 | {0x3400, 0x4db5}, {0x4e00, 0x9fef}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, |
| 6535 | {0xfe45, 0xfe46}, {0xff61, 0xff65}, {0x1d360, 0x1d371}, {0x1f250, 0x1f251}, |
| 6536 | {0x20000, 0x2a6d6}, {0x2a700, 0x2b734}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, |
| 6537 | {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}}), |
| 6538 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6539 | return characterClass; |
| 6540 | } |
| 6541 | |
| 6542 | static std::unique_ptr<CharacterClass> createCharacterClass247() |
| 6543 | { |
| 6544 | // Name = Latin, number of codePoints: 1373 |
| 6545 | auto characterClass = std::make_unique<CharacterClass>( |
| 6546 | std::initializer_list<UChar32>({}), |
| 6547 | std::initializer_list<CharacterRange>({{0x41, 0x5a}, {0x61, 0x7a}}), |
| 6548 | std::initializer_list<UChar32>({0x00aa, 0x00ba, 0x10fb, 0x2071, 0x207f, 0x20f0, 0x2132, 0x214e, |
| 6549 | 0xa92e}), |
| 6550 | std::initializer_list<CharacterRange>({{0x00c0, 0x00d6}, {0x00d8, 0x00f6}, {0x00f8, 0x02b8}, {0x02e0, 0x02e4}, |
| 6551 | {0x0363, 0x036f}, {0x0485, 0x0486}, {0x0951, 0x0952}, {0x1d00, 0x1d25}, |
| 6552 | {0x1d2c, 0x1d5c}, {0x1d62, 0x1d65}, {0x1d6b, 0x1d77}, {0x1d79, 0x1dbe}, |
| 6553 | {0x1e00, 0x1eff}, {0x2090, 0x209c}, {0x212a, 0x212b}, {0x2160, 0x2188}, |
| 6554 | {0x2c60, 0x2c7f}, {0xa722, 0xa787}, {0xa78b, 0xa7b9}, {0xa7f7, 0xa7ff}, |
| 6555 | {0xab30, 0xab5a}, {0xab5c, 0xab64}, {0xfb00, 0xfb06}, {0xff21, 0xff3a}, |
| 6556 | {0xff41, 0xff5a}}), |
| 6557 | CharacterClassWidths::HasBMPChars); |
| 6558 | return characterClass; |
| 6559 | } |
| 6560 | |
| 6561 | static std::unique_ptr<CharacterClass> createCharacterClass248() |
| 6562 | { |
| 6563 | // Name = Arabic, number of codePoints: 1325 |
| 6564 | auto characterClass = std::make_unique<CharacterClass>( |
| 6565 | std::initializer_list<UChar32>({}), |
| 6566 | std::initializer_list<CharacterRange>({}), |
| 6567 | std::initializer_list<UChar32>({0x1ee24, 0x1ee27, 0x1ee39, 0x1ee3b, 0x1ee42, 0x1ee47, 0x1ee49, 0x1ee4b, |
| 6568 | 0x1ee54, 0x1ee57, 0x1ee59, 0x1ee5b, 0x1ee5d, 0x1ee5f, 0x1ee64, 0x1ee7e}), |
| 6569 | std::initializer_list<CharacterRange>({{0x0600, 0x0604}, {0x0606, 0x061c}, {0x061e, 0x06dc}, {0x06de, 0x06ff}, |
| 6570 | {0x0750, 0x077f}, {0x08a0, 0x08b4}, {0x08b6, 0x08bd}, {0x08d3, 0x08e1}, |
| 6571 | {0x08e3, 0x08ff}, {0xfb50, 0xfbc1}, {0xfbd3, 0xfd3d}, {0xfd50, 0xfd8f}, |
| 6572 | {0xfd92, 0xfdc7}, {0xfdf0, 0xfdfd}, {0xfe70, 0xfe74}, {0xfe76, 0xfefc}, |
| 6573 | {0x102e0, 0x102fb}, {0x10e60, 0x10e7e}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, |
| 6574 | {0x1ee21, 0x1ee22}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee4d, 0x1ee4f}, |
| 6575 | {0x1ee51, 0x1ee52}, {0x1ee61, 0x1ee62}, {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, |
| 6576 | {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, |
| 6577 | {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1eef0, 0x1eef1}}), |
| 6578 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6579 | return characterClass; |
| 6580 | } |
| 6581 | |
| 6582 | static std::unique_ptr<CharacterClass> createCharacterClass249() |
| 6583 | { |
| 6584 | // Name = Coptic, number of codePoints: 165 |
| 6585 | auto characterClass = std::make_unique<CharacterClass>( |
| 6586 | std::initializer_list<UChar32>({}), |
| 6587 | std::initializer_list<CharacterRange>({}), |
| 6588 | std::initializer_list<UChar32>({}), |
| 6589 | std::initializer_list<CharacterRange>({{0x03e2, 0x03ef}, {0x2c80, 0x2cf3}, {0x2cf9, 0x2cff}, {0x102e0, 0x102fb}}), |
| 6590 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6591 | return characterClass; |
| 6592 | } |
| 6593 | |
| 6594 | static std::unique_ptr<CharacterClass> createCharacterClass250() |
| 6595 | { |
| 6596 | // Name = Hanifi_Rohingya, number of codePoints: 55 |
| 6597 | auto characterClass = std::make_unique<CharacterClass>( |
| 6598 | std::initializer_list<UChar32>({}), |
| 6599 | std::initializer_list<CharacterRange>({}), |
| 6600 | std::initializer_list<UChar32>({0x060c, 0x061b, 0x061f, 0x0640, 0x06d4}), |
| 6601 | std::initializer_list<CharacterRange>({{0x10d00, 0x10d27}, {0x10d30, 0x10d39}}), |
| 6602 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6603 | return characterClass; |
| 6604 | } |
| 6605 | |
| 6606 | static std::unique_ptr<CharacterClass> createCharacterClass251() |
| 6607 | { |
| 6608 | // Name = Syriac, number of codePoints: 105 |
| 6609 | auto characterClass = std::make_unique<CharacterClass>( |
| 6610 | std::initializer_list<UChar32>({}), |
| 6611 | std::initializer_list<CharacterRange>({}), |
| 6612 | std::initializer_list<UChar32>({0x060c, 0x061f, 0x0640, 0x0670}), |
| 6613 | std::initializer_list<CharacterRange>({{0x061b, 0x061c}, {0x064b, 0x0655}, {0x0700, 0x070d}, {0x070f, 0x074a}, |
| 6614 | {0x074d, 0x074f}, {0x0860, 0x086a}}), |
| 6615 | CharacterClassWidths::HasBMPChars); |
| 6616 | return characterClass; |
| 6617 | } |
| 6618 | |
| 6619 | static std::unique_ptr<CharacterClass> createCharacterClass252() |
| 6620 | { |
| 6621 | // Name = Thaana, number of codePoints: 66 |
| 6622 | auto characterClass = std::make_unique<CharacterClass>( |
| 6623 | std::initializer_list<UChar32>({}), |
| 6624 | std::initializer_list<CharacterRange>({}), |
| 6625 | std::initializer_list<UChar32>({0x060c, 0x061f, 0xfdf2, 0xfdfd}), |
| 6626 | std::initializer_list<CharacterRange>({{0x061b, 0x061c}, {0x0660, 0x0669}, {0x0780, 0x07b1}}), |
| 6627 | CharacterClassWidths::HasBMPChars); |
| 6628 | return characterClass; |
| 6629 | } |
| 6630 | |
| 6631 | static std::unique_ptr<CharacterClass> createCharacterClass253() |
| 6632 | { |
| 6633 | // Name = Armenian, number of codePoints: 96 |
| 6634 | auto characterClass = std::make_unique<CharacterClass>( |
| 6635 | std::initializer_list<UChar32>({}), |
| 6636 | std::initializer_list<CharacterRange>({}), |
| 6637 | std::initializer_list<UChar32>({}), |
| 6638 | std::initializer_list<CharacterRange>({{0x0531, 0x0556}, {0x0559, 0x058a}, {0x058d, 0x058f}, {0xfb13, 0xfb17}}), |
| 6639 | CharacterClassWidths::HasBMPChars); |
| 6640 | return characterClass; |
| 6641 | } |
| 6642 | |
| 6643 | static std::unique_ptr<CharacterClass> createCharacterClass254() |
| 6644 | { |
| 6645 | // Name = Georgian, number of codePoints: 175 |
| 6646 | auto characterClass = std::make_unique<CharacterClass>( |
| 6647 | std::initializer_list<UChar32>({}), |
| 6648 | std::initializer_list<CharacterRange>({}), |
| 6649 | std::initializer_list<UChar32>({0x0589, 0x10c7, 0x10cd, 0x2d27, 0x2d2d}), |
| 6650 | std::initializer_list<CharacterRange>({{0x10a0, 0x10c5}, {0x10d0, 0x10ff}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, |
| 6651 | {0x2d00, 0x2d25}}), |
| 6652 | CharacterClassWidths::HasBMPChars); |
| 6653 | return characterClass; |
| 6654 | } |
| 6655 | |
| 6656 | static std::unique_ptr<CharacterClass> createCharacterClass255() |
| 6657 | { |
| 6658 | // Name = Bopomofo, number of codePoints: 112 |
| 6659 | auto characterClass = std::make_unique<CharacterClass>( |
| 6660 | std::initializer_list<UChar32>({}), |
| 6661 | std::initializer_list<CharacterRange>({}), |
| 6662 | std::initializer_list<UChar32>({0x3003, 0x3030, 0x3037, 0x30fb}), |
| 6663 | std::initializer_list<CharacterRange>({{0x02ea, 0x02eb}, {0x3001, 0x3002}, {0x3008, 0x3011}, {0x3013, 0x301f}, |
| 6664 | {0x302a, 0x302d}, {0x3105, 0x312f}, {0x31a0, 0x31ba}, {0xfe45, 0xfe46}, |
| 6665 | {0xff61, 0xff65}}), |
| 6666 | CharacterClassWidths::HasBMPChars); |
| 6667 | return characterClass; |
| 6668 | } |
| 6669 | |
| 6670 | static std::unique_ptr<CharacterClass> createCharacterClass256() |
| 6671 | { |
| 6672 | // Name = Buginese, number of codePoints: 31 |
| 6673 | auto characterClass = std::make_unique<CharacterClass>( |
| 6674 | std::initializer_list<UChar32>({}), |
| 6675 | std::initializer_list<CharacterRange>({}), |
| 6676 | std::initializer_list<UChar32>({0xa9cf}), |
| 6677 | std::initializer_list<CharacterRange>({{0x1a00, 0x1a1b}, {0x1a1e, 0x1a1f}}), |
| 6678 | CharacterClassWidths::HasBMPChars); |
| 6679 | return characterClass; |
| 6680 | } |
| 6681 | |
| 6682 | static std::unique_ptr<CharacterClass> createCharacterClass257() |
| 6683 | { |
| 6684 | // Name = Javanese, number of codePoints: 91 |
| 6685 | auto characterClass = std::make_unique<CharacterClass>( |
| 6686 | std::initializer_list<UChar32>({}), |
| 6687 | std::initializer_list<CharacterRange>({}), |
| 6688 | std::initializer_list<UChar32>({}), |
| 6689 | std::initializer_list<CharacterRange>({{0xa980, 0xa9cd}, {0xa9cf, 0xa9d9}, {0xa9de, 0xa9df}}), |
| 6690 | CharacterClassWidths::HasBMPChars); |
| 6691 | return characterClass; |
| 6692 | } |
| 6693 | |
| 6694 | static std::unique_ptr<CharacterClass> createCharacterClass258() |
| 6695 | { |
| 6696 | // Name = Cypriot, number of codePoints: 112 |
| 6697 | auto characterClass = std::make_unique<CharacterClass>( |
| 6698 | std::initializer_list<UChar32>({}), |
| 6699 | std::initializer_list<CharacterRange>({}), |
| 6700 | std::initializer_list<UChar32>({0x10808, 0x1083c, 0x1083f}), |
| 6701 | std::initializer_list<CharacterRange>({{0x10100, 0x10102}, {0x10107, 0x10133}, {0x10137, 0x1013f}, {0x10800, 0x10805}, |
| 6702 | {0x1080a, 0x10835}, {0x10837, 0x10838}}), |
| 6703 | CharacterClassWidths::HasNonBMPChars); |
| 6704 | return characterClass; |
| 6705 | } |
| 6706 | |
| 6707 | static std::unique_ptr<CharacterClass> createCharacterClass259() |
| 6708 | { |
| 6709 | // Name = Linear_B, number of codePoints: 268 |
| 6710 | auto characterClass = std::make_unique<CharacterClass>( |
| 6711 | std::initializer_list<UChar32>({}), |
| 6712 | std::initializer_list<CharacterRange>({}), |
| 6713 | std::initializer_list<UChar32>({}), |
| 6714 | std::initializer_list<CharacterRange>({{0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, |
| 6715 | {0x1003f, 0x1004d}, {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10100, 0x10102}, |
| 6716 | {0x10107, 0x10133}, {0x10137, 0x1013f}}), |
| 6717 | CharacterClassWidths::HasNonBMPChars); |
| 6718 | return characterClass; |
| 6719 | } |
| 6720 | |
| 6721 | static std::unique_ptr<CharacterClass> createCharacterClass260() |
| 6722 | { |
| 6723 | // Name = Cyrillic, number of codePoints: 446 |
| 6724 | auto characterClass = std::make_unique<CharacterClass>( |
| 6725 | std::initializer_list<UChar32>({}), |
| 6726 | std::initializer_list<CharacterRange>({}), |
| 6727 | std::initializer_list<UChar32>({0x1d2b, 0x1d78, 0x2e43}), |
| 6728 | std::initializer_list<CharacterRange>({{0x0400, 0x052f}, {0x1c80, 0x1c88}, {0x2de0, 0x2dff}, {0xa640, 0xa69f}, |
| 6729 | {0xfe2e, 0xfe2f}}), |
| 6730 | CharacterClassWidths::HasBMPChars); |
| 6731 | return characterClass; |
| 6732 | } |
| 6733 | |
| 6734 | static std::unique_ptr<CharacterClass> createCharacterClass261() |
| 6735 | { |
| 6736 | // Name = Glagolitic, number of codePoints: 136 |
| 6737 | auto characterClass = std::make_unique<CharacterClass>( |
| 6738 | std::initializer_list<UChar32>({}), |
| 6739 | std::initializer_list<CharacterRange>({}), |
| 6740 | std::initializer_list<UChar32>({0x0484, 0x0487, 0x2e43, 0xa66f}), |
| 6741 | std::initializer_list<CharacterRange>({{0x2c00, 0x2c2e}, {0x2c30, 0x2c5e}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018}, |
| 6742 | {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}}), |
| 6743 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6744 | return characterClass; |
| 6745 | } |
| 6746 | |
| 6747 | static std::unique_ptr<CharacterClass> createCharacterClass262() |
| 6748 | { |
| 6749 | // Name = Old_Permic, number of codePoints: 44 |
| 6750 | auto characterClass = std::make_unique<CharacterClass>( |
| 6751 | std::initializer_list<UChar32>({}), |
| 6752 | std::initializer_list<CharacterRange>({}), |
| 6753 | std::initializer_list<UChar32>({0x0483}), |
| 6754 | std::initializer_list<CharacterRange>({{0x10350, 0x1037a}}), |
| 6755 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6756 | return characterClass; |
| 6757 | } |
| 6758 | |
| 6759 | static std::unique_ptr<CharacterClass> createCharacterClass263() |
| 6760 | { |
| 6761 | // Name = Grantha, number of codePoints: 113 |
| 6762 | auto characterClass = std::make_unique<CharacterClass>( |
| 6763 | std::initializer_list<UChar32>({}), |
| 6764 | std::initializer_list<CharacterRange>({}), |
| 6765 | std::initializer_list<UChar32>({0x1cd0, 0x20f0, 0x11350, 0x11357}), |
| 6766 | std::initializer_list<CharacterRange>({{0x0951, 0x0952}, {0x0964, 0x0965}, {0x0be6, 0x0bf3}, {0x1cd2, 0x1cd3}, |
| 6767 | {0x1cf2, 0x1cf4}, {0x1cf8, 0x1cf9}, {0x11300, 0x11303}, {0x11305, 0x1130c}, |
| 6768 | {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, |
| 6769 | {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d}, |
| 6770 | {0x1135d, 0x11363}, {0x11366, 0x1136c}, {0x11370, 0x11374}}), |
| 6771 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6772 | return characterClass; |
| 6773 | } |
| 6774 | |
| 6775 | static std::unique_ptr<CharacterClass> createCharacterClass264() |
| 6776 | { |
| 6777 | // Name = Sharada, number of codePoints: 100 |
| 6778 | auto characterClass = std::make_unique<CharacterClass>( |
| 6779 | std::initializer_list<UChar32>({}), |
| 6780 | std::initializer_list<CharacterRange>({}), |
| 6781 | std::initializer_list<UChar32>({0x0951, 0x1cd7, 0x1cd9, 0x1ce0}), |
| 6782 | std::initializer_list<CharacterRange>({{0x1cdc, 0x1cdd}, {0x11180, 0x111cd}, {0x111d0, 0x111df}}), |
| 6783 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6784 | return characterClass; |
| 6785 | } |
| 6786 | |
| 6787 | static std::unique_ptr<CharacterClass> createCharacterClass265() |
| 6788 | { |
| 6789 | // Name = Tamil, number of codePoints: 82 |
| 6790 | auto characterClass = std::make_unique<CharacterClass>( |
| 6791 | std::initializer_list<UChar32>({}), |
| 6792 | std::initializer_list<CharacterRange>({}), |
| 6793 | std::initializer_list<UChar32>({0x0b9c, 0x0bd0, 0x0bd7, 0x1cda, 0xa8f3, 0x11301, 0x11303}), |
| 6794 | std::initializer_list<CharacterRange>({{0x0951, 0x0952}, {0x0964, 0x0965}, {0x0b82, 0x0b83}, {0x0b85, 0x0b8a}, |
| 6795 | {0x0b8e, 0x0b90}, {0x0b92, 0x0b95}, {0x0b99, 0x0b9a}, {0x0b9e, 0x0b9f}, |
| 6796 | {0x0ba3, 0x0ba4}, {0x0ba8, 0x0baa}, {0x0bae, 0x0bb9}, {0x0bbe, 0x0bc2}, |
| 6797 | {0x0bc6, 0x0bc8}, {0x0bca, 0x0bcd}, {0x0be6, 0x0bfa}, {0x1133b, 0x1133c}}), |
| 6798 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6799 | return characterClass; |
| 6800 | } |
| 6801 | |
| 6802 | static std::unique_ptr<CharacterClass> createCharacterClass266() |
| 6803 | { |
| 6804 | // Name = Gujarati, number of codePoints: 105 |
| 6805 | auto characterClass = std::make_unique<CharacterClass>( |
| 6806 | std::initializer_list<UChar32>({}), |
| 6807 | std::initializer_list<CharacterRange>({}), |
| 6808 | std::initializer_list<UChar32>({0x0ad0}), |
| 6809 | std::initializer_list<CharacterRange>({{0x0951, 0x0952}, {0x0964, 0x0965}, {0x0a81, 0x0a83}, {0x0a85, 0x0a8d}, |
| 6810 | {0x0a8f, 0x0a91}, {0x0a93, 0x0aa8}, {0x0aaa, 0x0ab0}, {0x0ab2, 0x0ab3}, |
| 6811 | {0x0ab5, 0x0ab9}, {0x0abc, 0x0ac5}, {0x0ac7, 0x0ac9}, {0x0acb, 0x0acd}, |
| 6812 | {0x0ae0, 0x0ae3}, {0x0ae6, 0x0af1}, {0x0af9, 0x0aff}, {0xa830, 0xa839}}), |
| 6813 | CharacterClassWidths::HasBMPChars); |
| 6814 | return characterClass; |
| 6815 | } |
| 6816 | |
| 6817 | static std::unique_ptr<CharacterClass> createCharacterClass267() |
| 6818 | { |
| 6819 | // Name = Khojki, number of codePoints: 82 |
| 6820 | auto characterClass = std::make_unique<CharacterClass>( |
| 6821 | std::initializer_list<UChar32>({}), |
| 6822 | std::initializer_list<CharacterRange>({}), |
| 6823 | std::initializer_list<UChar32>({}), |
| 6824 | std::initializer_list<CharacterRange>({{0x0ae6, 0x0aef}, {0xa830, 0xa839}, {0x11200, 0x11211}, {0x11213, 0x1123e}}), |
| 6825 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6826 | return characterClass; |
| 6827 | } |
| 6828 | |
| 6829 | static std::unique_ptr<CharacterClass> createCharacterClass268() |
| 6830 | { |
| 6831 | // Name = Gurmukhi, number of codePoints: 94 |
| 6832 | auto characterClass = std::make_unique<CharacterClass>( |
| 6833 | std::initializer_list<UChar32>({}), |
| 6834 | std::initializer_list<CharacterRange>({}), |
| 6835 | std::initializer_list<UChar32>({0x0a3c, 0x0a51, 0x0a5e}), |
| 6836 | std::initializer_list<CharacterRange>({{0x0951, 0x0952}, {0x0964, 0x0965}, {0x0a01, 0x0a03}, {0x0a05, 0x0a0a}, |
| 6837 | {0x0a0f, 0x0a10}, {0x0a13, 0x0a28}, {0x0a2a, 0x0a30}, {0x0a32, 0x0a33}, |
| 6838 | {0x0a35, 0x0a36}, {0x0a38, 0x0a39}, {0x0a3e, 0x0a42}, {0x0a47, 0x0a48}, |
| 6839 | {0x0a4b, 0x0a4d}, {0x0a59, 0x0a5c}, {0x0a66, 0x0a76}, {0xa830, 0xa839}}), |
| 6840 | CharacterClassWidths::HasBMPChars); |
| 6841 | return characterClass; |
| 6842 | } |
| 6843 | |
| 6844 | static std::unique_ptr<CharacterClass> createCharacterClass269() |
| 6845 | { |
| 6846 | // Name = Multani, number of codePoints: 48 |
| 6847 | auto characterClass = std::make_unique<CharacterClass>( |
| 6848 | std::initializer_list<UChar32>({}), |
| 6849 | std::initializer_list<CharacterRange>({}), |
| 6850 | std::initializer_list<UChar32>({0x11288}), |
| 6851 | std::initializer_list<CharacterRange>({{0x0a66, 0x0a6f}, {0x11280, 0x11286}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, |
| 6852 | {0x1129f, 0x112a9}}), |
| 6853 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6854 | return characterClass; |
| 6855 | } |
| 6856 | |
| 6857 | static std::unique_ptr<CharacterClass> createCharacterClass270() |
| 6858 | { |
| 6859 | // Name = Hiragana, number of codePoints: 428 |
| 6860 | auto characterClass = std::make_unique<CharacterClass>( |
| 6861 | std::initializer_list<UChar32>({}), |
| 6862 | std::initializer_list<CharacterRange>({}), |
| 6863 | std::initializer_list<UChar32>({0x3003, 0x3037, 0xff70, 0x1f200}), |
| 6864 | std::initializer_list<CharacterRange>({{0x3001, 0x3002}, {0x3008, 0x3011}, {0x3013, 0x301f}, {0x3030, 0x3035}, |
| 6865 | {0x303c, 0x303d}, {0x3041, 0x3096}, {0x3099, 0x30a0}, {0x30fb, 0x30fc}, |
| 6866 | {0xfe45, 0xfe46}, {0xff61, 0xff65}, {0xff9e, 0xff9f}, {0x1b001, 0x1b11e}}), |
| 6867 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6868 | return characterClass; |
| 6869 | } |
| 6870 | |
| 6871 | static std::unique_ptr<CharacterClass> createCharacterClass271() |
| 6872 | { |
| 6873 | // Name = Katakana, number of codePoints: 352 |
| 6874 | auto characterClass = std::make_unique<CharacterClass>( |
| 6875 | std::initializer_list<UChar32>({}), |
| 6876 | std::initializer_list<CharacterRange>({}), |
| 6877 | std::initializer_list<UChar32>({0x3003, 0x3037, 0x1b000}), |
| 6878 | std::initializer_list<CharacterRange>({{0x3001, 0x3002}, {0x3008, 0x3011}, {0x3013, 0x301f}, {0x3030, 0x3035}, |
| 6879 | {0x303c, 0x303d}, {0x3099, 0x309c}, {0x30a0, 0x30ff}, {0x31f0, 0x31ff}, |
| 6880 | {0x32d0, 0x32fe}, {0x3300, 0x3357}, {0xfe45, 0xfe46}, {0xff61, 0xff9f}}), |
| 6881 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6882 | return characterClass; |
| 6883 | } |
| 6884 | |
| 6885 | static std::unique_ptr<CharacterClass> createCharacterClass272() |
| 6886 | { |
| 6887 | // Name = Mongolian, number of codePoints: 170 |
| 6888 | auto characterClass = std::make_unique<CharacterClass>( |
| 6889 | std::initializer_list<UChar32>({}), |
| 6890 | std::initializer_list<CharacterRange>({}), |
| 6891 | std::initializer_list<UChar32>({}), |
| 6892 | std::initializer_list<CharacterRange>({{0x1800, 0x180e}, {0x1810, 0x1819}, {0x1820, 0x1878}, {0x1880, 0x18aa}, |
| 6893 | {0x11660, 0x1166c}}), |
| 6894 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6895 | return characterClass; |
| 6896 | } |
| 6897 | |
| 6898 | static std::unique_ptr<CharacterClass> createCharacterClass273() |
| 6899 | { |
| 6900 | // Name = Phags_Pa, number of codePoints: 59 |
| 6901 | auto characterClass = std::make_unique<CharacterClass>( |
| 6902 | std::initializer_list<UChar32>({}), |
| 6903 | std::initializer_list<CharacterRange>({}), |
| 6904 | std::initializer_list<UChar32>({0x1805}), |
| 6905 | std::initializer_list<CharacterRange>({{0x1802, 0x1803}, {0xa840, 0xa877}}), |
| 6906 | CharacterClassWidths::HasBMPChars); |
| 6907 | return characterClass; |
| 6908 | } |
| 6909 | |
| 6910 | static std::unique_ptr<CharacterClass> createCharacterClass274() |
| 6911 | { |
| 6912 | // Name = Chakma, number of codePoints: 90 |
| 6913 | auto characterClass = std::make_unique<CharacterClass>( |
| 6914 | std::initializer_list<UChar32>({}), |
| 6915 | std::initializer_list<CharacterRange>({}), |
| 6916 | std::initializer_list<UChar32>({}), |
| 6917 | std::initializer_list<CharacterRange>({{0x09e6, 0x09ef}, {0x1040, 0x1049}, {0x11100, 0x11134}, {0x11136, 0x11146}}), |
| 6918 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 6919 | return characterClass; |
| 6920 | } |
| 6921 | |
| 6922 | static std::unique_ptr<CharacterClass> createCharacterClass275() |
| 6923 | { |
| 6924 | // Name = Syloti_Nagri, number of codePoints: 56 |
| 6925 | auto characterClass = std::make_unique<CharacterClass>( |
| 6926 | std::initializer_list<UChar32>({}), |
| 6927 | std::initializer_list<CharacterRange>({}), |
| 6928 | std::initializer_list<UChar32>({}), |
| 6929 | std::initializer_list<CharacterRange>({{0x0964, 0x0965}, {0x09e6, 0x09ef}, {0xa800, 0xa82b}}), |
| 6930 | CharacterClassWidths::HasBMPChars); |
| 6931 | return characterClass; |
| 6932 | } |
| 6933 | |
| 6934 | static std::unique_ptr<CharacterClass> createCharacterClass276() |
| 6935 | { |
| 6936 | // Name = Myanmar, number of codePoints: 224 |
| 6937 | auto characterClass = std::make_unique<CharacterClass>( |
| 6938 | std::initializer_list<UChar32>({}), |
| 6939 | std::initializer_list<CharacterRange>({}), |
| 6940 | std::initializer_list<UChar32>({0xa92e}), |
| 6941 | std::initializer_list<CharacterRange>({{0x1000, 0x109f}, {0xa9e0, 0xa9fe}, {0xaa60, 0xaa7f}}), |
| 6942 | CharacterClassWidths::HasBMPChars); |
| 6943 | return characterClass; |
| 6944 | } |
| 6945 | |
| 6946 | static std::unique_ptr<CharacterClass> createCharacterClass277() |
| 6947 | { |
| 6948 | // Name = Tai_Le, number of codePoints: 45 |
| 6949 | auto characterClass = std::make_unique<CharacterClass>( |
| 6950 | std::initializer_list<UChar32>({}), |
| 6951 | std::initializer_list<CharacterRange>({}), |
| 6952 | std::initializer_list<UChar32>({}), |
| 6953 | std::initializer_list<CharacterRange>({{0x1040, 0x1049}, {0x1950, 0x196d}, {0x1970, 0x1974}}), |
| 6954 | CharacterClassWidths::HasBMPChars); |
| 6955 | return characterClass; |
| 6956 | } |
| 6957 | |
| 6958 | static std::unique_ptr<CharacterClass> createCharacterClass278() |
| 6959 | { |
| 6960 | // Name = Linear_A, number of codePoints: 386 |
| 6961 | auto characterClass = std::make_unique<CharacterClass>( |
| 6962 | std::initializer_list<UChar32>({}), |
| 6963 | std::initializer_list<CharacterRange>({}), |
| 6964 | std::initializer_list<UChar32>({}), |
| 6965 | std::initializer_list<CharacterRange>({{0x10107, 0x10133}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}}), |
| 6966 | CharacterClassWidths::HasNonBMPChars); |
| 6967 | return characterClass; |
| 6968 | } |
| 6969 | |
| 6970 | static std::unique_ptr<CharacterClass> createCharacterClass279() |
| 6971 | { |
| 6972 | // Name = Kannada, number of codePoints: 103 |
| 6973 | auto characterClass = std::make_unique<CharacterClass>( |
| 6974 | std::initializer_list<UChar32>({}), |
| 6975 | std::initializer_list<CharacterRange>({}), |
| 6976 | std::initializer_list<UChar32>({0x0cde, 0x1cd0, 0x1cd2, 0x1cda, 0x1cf4}), |
| 6977 | std::initializer_list<CharacterRange>({{0x0951, 0x0952}, {0x0964, 0x0965}, {0x0c80, 0x0c8c}, {0x0c8e, 0x0c90}, |
| 6978 | {0x0c92, 0x0ca8}, {0x0caa, 0x0cb3}, {0x0cb5, 0x0cb9}, {0x0cbc, 0x0cc4}, |
| 6979 | {0x0cc6, 0x0cc8}, {0x0cca, 0x0ccd}, {0x0cd5, 0x0cd6}, {0x0ce0, 0x0ce3}, |
| 6980 | {0x0ce6, 0x0cef}, {0x0cf1, 0x0cf2}, {0xa830, 0xa835}}), |
| 6981 | CharacterClassWidths::HasBMPChars); |
| 6982 | return characterClass; |
| 6983 | } |
| 6984 | |
| 6985 | static std::unique_ptr<CharacterClass> createCharacterClass280() |
| 6986 | { |
| 6987 | // Name = Kayah_Li, number of codePoints: 48 |
| 6988 | auto characterClass = std::make_unique<CharacterClass>( |
| 6989 | std::initializer_list<UChar32>({}), |
| 6990 | std::initializer_list<CharacterRange>({}), |
| 6991 | std::initializer_list<UChar32>({}), |
| 6992 | std::initializer_list<CharacterRange>({{0xa900, 0xa92f}}), |
| 6993 | CharacterClassWidths::HasBMPChars); |
| 6994 | return characterClass; |
| 6995 | } |
| 6996 | |
| 6997 | static std::unique_ptr<CharacterClass> createCharacterClass281() |
| 6998 | { |
| 6999 | // Name = Buhid, number of codePoints: 22 |
| 7000 | auto characterClass = std::make_unique<CharacterClass>( |
| 7001 | std::initializer_list<UChar32>({}), |
| 7002 | std::initializer_list<CharacterRange>({}), |
| 7003 | std::initializer_list<UChar32>({}), |
| 7004 | std::initializer_list<CharacterRange>({{0x1735, 0x1736}, {0x1740, 0x1753}}), |
| 7005 | CharacterClassWidths::HasBMPChars); |
| 7006 | return characterClass; |
| 7007 | } |
| 7008 | |
| 7009 | static std::unique_ptr<CharacterClass> createCharacterClass282() |
| 7010 | { |
| 7011 | // Name = Hanunoo, number of codePoints: 23 |
| 7012 | auto characterClass = std::make_unique<CharacterClass>( |
| 7013 | std::initializer_list<UChar32>({}), |
| 7014 | std::initializer_list<CharacterRange>({}), |
| 7015 | std::initializer_list<UChar32>({}), |
| 7016 | std::initializer_list<CharacterRange>({{0x1720, 0x1736}}), |
| 7017 | CharacterClassWidths::HasBMPChars); |
| 7018 | return characterClass; |
| 7019 | } |
| 7020 | |
| 7021 | static std::unique_ptr<CharacterClass> createCharacterClass283() |
| 7022 | { |
| 7023 | // Name = Tagbanwa, number of codePoints: 20 |
| 7024 | auto characterClass = std::make_unique<CharacterClass>( |
| 7025 | std::initializer_list<UChar32>({}), |
| 7026 | std::initializer_list<CharacterRange>({}), |
| 7027 | std::initializer_list<UChar32>({}), |
| 7028 | std::initializer_list<CharacterRange>({{0x1735, 0x1736}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}}), |
| 7029 | CharacterClassWidths::HasBMPChars); |
| 7030 | return characterClass; |
| 7031 | } |
| 7032 | |
| 7033 | static std::unique_ptr<CharacterClass> createCharacterClass284() |
| 7034 | { |
| 7035 | // Name = Tagalog, number of codePoints: 22 |
| 7036 | auto characterClass = std::make_unique<CharacterClass>( |
| 7037 | std::initializer_list<UChar32>({}), |
| 7038 | std::initializer_list<CharacterRange>({}), |
| 7039 | std::initializer_list<UChar32>({}), |
| 7040 | std::initializer_list<CharacterRange>({{0x1700, 0x170c}, {0x170e, 0x1714}, {0x1735, 0x1736}}), |
| 7041 | CharacterClassWidths::HasBMPChars); |
| 7042 | return characterClass; |
| 7043 | } |
| 7044 | |
| 7045 | static std::unique_ptr<CharacterClass> createCharacterClass285() |
| 7046 | { |
| 7047 | // Name = Dogra, number of codePoints: 82 |
| 7048 | auto characterClass = std::make_unique<CharacterClass>( |
| 7049 | std::initializer_list<UChar32>({}), |
| 7050 | std::initializer_list<CharacterRange>({}), |
| 7051 | std::initializer_list<UChar32>({}), |
| 7052 | std::initializer_list<CharacterRange>({{0x0964, 0x096f}, {0xa830, 0xa839}, {0x11800, 0x1183b}}), |
| 7053 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7054 | return characterClass; |
| 7055 | } |
| 7056 | |
| 7057 | static std::unique_ptr<CharacterClass> createCharacterClass286() |
| 7058 | { |
| 7059 | // Name = Kaithi, number of codePoints: 87 |
| 7060 | auto characterClass = std::make_unique<CharacterClass>( |
| 7061 | std::initializer_list<UChar32>({}), |
| 7062 | std::initializer_list<CharacterRange>({}), |
| 7063 | std::initializer_list<UChar32>({0x110cd}), |
| 7064 | std::initializer_list<CharacterRange>({{0x0966, 0x096f}, {0xa830, 0xa839}, {0x11080, 0x110c1}}), |
| 7065 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7066 | return characterClass; |
| 7067 | } |
| 7068 | |
| 7069 | static std::unique_ptr<CharacterClass> createCharacterClass287() |
| 7070 | { |
| 7071 | // Name = Mahajani, number of codePoints: 61 |
| 7072 | auto characterClass = std::make_unique<CharacterClass>( |
| 7073 | std::initializer_list<UChar32>({}), |
| 7074 | std::initializer_list<CharacterRange>({}), |
| 7075 | std::initializer_list<UChar32>({}), |
| 7076 | std::initializer_list<CharacterRange>({{0x0964, 0x096f}, {0xa830, 0xa839}, {0x11150, 0x11176}}), |
| 7077 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7078 | return characterClass; |
| 7079 | } |
| 7080 | |
| 7081 | static std::unique_ptr<CharacterClass> createCharacterClass288() |
| 7082 | { |
| 7083 | // Name = Hangul, number of codePoints: 11775 |
| 7084 | auto characterClass = std::make_unique<CharacterClass>( |
| 7085 | std::initializer_list<UChar32>({}), |
| 7086 | std::initializer_list<CharacterRange>({}), |
| 7087 | std::initializer_list<UChar32>({0x3003, 0x3037, 0x30fb}), |
| 7088 | std::initializer_list<CharacterRange>({{0x1100, 0x11ff}, {0x3001, 0x3002}, {0x3008, 0x3011}, {0x3013, 0x301f}, |
| 7089 | {0x302e, 0x3030}, {0x3131, 0x318e}, {0x3200, 0x321e}, {0x3260, 0x327e}, |
| 7090 | {0xa960, 0xa97c}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, |
| 7091 | {0xfe45, 0xfe46}, {0xff61, 0xff65}, {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, |
| 7092 | {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}}), |
| 7093 | CharacterClassWidths::HasBMPChars); |
| 7094 | return characterClass; |
| 7095 | } |
| 7096 | |
| 7097 | static std::unique_ptr<CharacterClass> createCharacterClass289() |
| 7098 | { |
| 7099 | // Name = Yi, number of codePoints: 1246 |
| 7100 | auto characterClass = std::make_unique<CharacterClass>( |
| 7101 | std::initializer_list<UChar32>({}), |
| 7102 | std::initializer_list<CharacterRange>({}), |
| 7103 | std::initializer_list<UChar32>({0x30fb}), |
| 7104 | std::initializer_list<CharacterRange>({{0x3001, 0x3002}, {0x3008, 0x3011}, {0x3014, 0x301b}, {0xa000, 0xa48c}, |
| 7105 | {0xa490, 0xa4c6}, {0xff61, 0xff65}}), |
| 7106 | CharacterClassWidths::HasBMPChars); |
| 7107 | return characterClass; |
| 7108 | } |
| 7109 | |
| 7110 | static std::unique_ptr<CharacterClass> createCharacterClass290() |
| 7111 | { |
| 7112 | // Name = Malayalam, number of codePoints: 125 |
| 7113 | auto characterClass = std::make_unique<CharacterClass>( |
| 7114 | std::initializer_list<UChar32>({}), |
| 7115 | std::initializer_list<CharacterRange>({}), |
| 7116 | std::initializer_list<UChar32>({0x1cda}), |
| 7117 | std::initializer_list<CharacterRange>({{0x0951, 0x0952}, {0x0964, 0x0965}, {0x0d00, 0x0d03}, {0x0d05, 0x0d0c}, |
| 7118 | {0x0d0e, 0x0d10}, {0x0d12, 0x0d44}, {0x0d46, 0x0d48}, {0x0d4a, 0x0d4f}, |
| 7119 | {0x0d54, 0x0d63}, {0x0d66, 0x0d7f}, {0xa830, 0xa832}}), |
| 7120 | CharacterClassWidths::HasBMPChars); |
| 7121 | return characterClass; |
| 7122 | } |
| 7123 | |
| 7124 | static std::unique_ptr<CharacterClass> createCharacterClass291() |
| 7125 | { |
| 7126 | // Name = Oriya, number of codePoints: 95 |
| 7127 | auto characterClass = std::make_unique<CharacterClass>( |
| 7128 | std::initializer_list<UChar32>({}), |
| 7129 | std::initializer_list<CharacterRange>({}), |
| 7130 | std::initializer_list<UChar32>({0x1cda}), |
| 7131 | std::initializer_list<CharacterRange>({{0x0951, 0x0952}, {0x0964, 0x0965}, {0x0b01, 0x0b03}, {0x0b05, 0x0b0c}, |
| 7132 | {0x0b0f, 0x0b10}, {0x0b13, 0x0b28}, {0x0b2a, 0x0b30}, {0x0b32, 0x0b33}, |
| 7133 | {0x0b35, 0x0b39}, {0x0b3c, 0x0b44}, {0x0b47, 0x0b48}, {0x0b4b, 0x0b4d}, |
| 7134 | {0x0b56, 0x0b57}, {0x0b5c, 0x0b5d}, {0x0b5f, 0x0b63}, {0x0b66, 0x0b77}}), |
| 7135 | CharacterClassWidths::HasBMPChars); |
| 7136 | return characterClass; |
| 7137 | } |
| 7138 | |
| 7139 | static std::unique_ptr<CharacterClass> createCharacterClass292() |
| 7140 | { |
| 7141 | // Name = Telugu, number of codePoints: 102 |
| 7142 | auto characterClass = std::make_unique<CharacterClass>( |
| 7143 | std::initializer_list<UChar32>({}), |
| 7144 | std::initializer_list<CharacterRange>({}), |
| 7145 | std::initializer_list<UChar32>({0x1cda}), |
| 7146 | std::initializer_list<CharacterRange>({{0x0951, 0x0952}, {0x0964, 0x0965}, {0x0c00, 0x0c0c}, {0x0c0e, 0x0c10}, |
| 7147 | {0x0c12, 0x0c28}, {0x0c2a, 0x0c39}, {0x0c3d, 0x0c44}, {0x0c46, 0x0c48}, |
| 7148 | {0x0c4a, 0x0c4d}, {0x0c55, 0x0c56}, {0x0c58, 0x0c5a}, {0x0c60, 0x0c63}, |
| 7149 | {0x0c66, 0x0c6f}, {0x0c78, 0x0c7f}}), |
| 7150 | CharacterClassWidths::HasBMPChars); |
| 7151 | return characterClass; |
| 7152 | } |
| 7153 | |
| 7154 | static std::unique_ptr<CharacterClass> createCharacterClass293() |
| 7155 | { |
| 7156 | // Name = Adlam, number of codePoints: 88 |
| 7157 | auto characterClass = std::make_unique<CharacterClass>( |
| 7158 | std::initializer_list<UChar32>({}), |
| 7159 | std::initializer_list<CharacterRange>({}), |
| 7160 | std::initializer_list<UChar32>({0x0640}), |
| 7161 | std::initializer_list<CharacterRange>({{0x1e900, 0x1e94a}, {0x1e950, 0x1e959}, {0x1e95e, 0x1e95f}}), |
| 7162 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7163 | return characterClass; |
| 7164 | } |
| 7165 | |
| 7166 | static std::unique_ptr<CharacterClass> createCharacterClass294() |
| 7167 | { |
| 7168 | // Name = Mandaic, number of codePoints: 30 |
| 7169 | auto characterClass = std::make_unique<CharacterClass>( |
| 7170 | std::initializer_list<UChar32>({}), |
| 7171 | std::initializer_list<CharacterRange>({}), |
| 7172 | std::initializer_list<UChar32>({0x0640, 0x085e}), |
| 7173 | std::initializer_list<CharacterRange>({{0x0840, 0x085b}}), |
| 7174 | CharacterClassWidths::HasBMPChars); |
| 7175 | return characterClass; |
| 7176 | } |
| 7177 | |
| 7178 | static std::unique_ptr<CharacterClass> createCharacterClass295() |
| 7179 | { |
| 7180 | // Name = Manichaean, number of codePoints: 52 |
| 7181 | auto characterClass = std::make_unique<CharacterClass>( |
| 7182 | std::initializer_list<UChar32>({}), |
| 7183 | std::initializer_list<CharacterRange>({}), |
| 7184 | std::initializer_list<UChar32>({0x0640}), |
| 7185 | std::initializer_list<CharacterRange>({{0x10ac0, 0x10ae6}, {0x10aeb, 0x10af6}}), |
| 7186 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7187 | return characterClass; |
| 7188 | } |
| 7189 | |
| 7190 | static std::unique_ptr<CharacterClass> createCharacterClass296() |
| 7191 | { |
| 7192 | // Name = Psalter_Pahlavi, number of codePoints: 30 |
| 7193 | auto characterClass = std::make_unique<CharacterClass>( |
| 7194 | std::initializer_list<UChar32>({}), |
| 7195 | std::initializer_list<CharacterRange>({}), |
| 7196 | std::initializer_list<UChar32>({0x0640}), |
| 7197 | std::initializer_list<CharacterRange>({{0x10b80, 0x10b91}, {0x10b99, 0x10b9c}, {0x10ba9, 0x10baf}}), |
| 7198 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7199 | return characterClass; |
| 7200 | } |
| 7201 | |
| 7202 | static std::unique_ptr<CharacterClass> createCharacterClass297() |
| 7203 | { |
| 7204 | // Name = Sogdian, number of codePoints: 43 |
| 7205 | auto characterClass = std::make_unique<CharacterClass>( |
| 7206 | std::initializer_list<UChar32>({}), |
| 7207 | std::initializer_list<CharacterRange>({}), |
| 7208 | std::initializer_list<UChar32>({0x0640}), |
| 7209 | std::initializer_list<CharacterRange>({{0x10f30, 0x10f59}}), |
| 7210 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7211 | return characterClass; |
| 7212 | } |
| 7213 | |
| 7214 | static std::unique_ptr<CharacterClass> createCharacterClass298() |
| 7215 | { |
| 7216 | // Name = Modi, number of codePoints: 89 |
| 7217 | auto characterClass = std::make_unique<CharacterClass>( |
| 7218 | std::initializer_list<UChar32>({}), |
| 7219 | std::initializer_list<CharacterRange>({}), |
| 7220 | std::initializer_list<UChar32>({}), |
| 7221 | std::initializer_list<CharacterRange>({{0xa830, 0xa839}, {0x11600, 0x11644}, {0x11650, 0x11659}}), |
| 7222 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7223 | return characterClass; |
| 7224 | } |
| 7225 | |
| 7226 | static std::unique_ptr<CharacterClass> createCharacterClass299() |
| 7227 | { |
| 7228 | // Name = Khudawadi, number of codePoints: 81 |
| 7229 | auto characterClass = std::make_unique<CharacterClass>( |
| 7230 | std::initializer_list<UChar32>({}), |
| 7231 | std::initializer_list<CharacterRange>({}), |
| 7232 | std::initializer_list<UChar32>({}), |
| 7233 | std::initializer_list<CharacterRange>({{0x0964, 0x0965}, {0xa830, 0xa839}, {0x112b0, 0x112ea}, {0x112f0, 0x112f9}}), |
| 7234 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7235 | return characterClass; |
| 7236 | } |
| 7237 | |
| 7238 | static std::unique_ptr<CharacterClass> createCharacterClass300() |
| 7239 | { |
| 7240 | // Name = Takri, number of codePoints: 78 |
| 7241 | auto characterClass = std::make_unique<CharacterClass>( |
| 7242 | std::initializer_list<UChar32>({}), |
| 7243 | std::initializer_list<CharacterRange>({}), |
| 7244 | std::initializer_list<UChar32>({}), |
| 7245 | std::initializer_list<CharacterRange>({{0x0964, 0x0965}, {0xa830, 0xa839}, {0x11680, 0x116b7}, {0x116c0, 0x116c9}}), |
| 7246 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7247 | return characterClass; |
| 7248 | } |
| 7249 | |
| 7250 | static std::unique_ptr<CharacterClass> createCharacterClass301() |
| 7251 | { |
| 7252 | // Name = Tirhuta, number of codePoints: 96 |
| 7253 | auto characterClass = std::make_unique<CharacterClass>( |
| 7254 | std::initializer_list<UChar32>({}), |
| 7255 | std::initializer_list<CharacterRange>({}), |
| 7256 | std::initializer_list<UChar32>({}), |
| 7257 | std::initializer_list<CharacterRange>({{0x0951, 0x0952}, {0x0964, 0x0965}, {0xa830, 0xa839}, {0x11480, 0x114c7}, |
| 7258 | {0x114d0, 0x114d9}}), |
| 7259 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7260 | return characterClass; |
| 7261 | } |
| 7262 | |
| 7263 | static std::unique_ptr<CharacterClass> createCharacterClass302() |
| 7264 | { |
| 7265 | // Name = Gunjala_Gondi, number of codePoints: 65 |
| 7266 | auto characterClass = std::make_unique<CharacterClass>( |
| 7267 | std::initializer_list<UChar32>({}), |
| 7268 | std::initializer_list<CharacterRange>({}), |
| 7269 | std::initializer_list<UChar32>({}), |
| 7270 | std::initializer_list<CharacterRange>({{0x0964, 0x0965}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, |
| 7271 | {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}}), |
| 7272 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7273 | return characterClass; |
| 7274 | } |
| 7275 | |
| 7276 | static std::unique_ptr<CharacterClass> createCharacterClass303() |
| 7277 | { |
| 7278 | // Name = Sinhala, number of codePoints: 112 |
| 7279 | auto characterClass = std::make_unique<CharacterClass>( |
| 7280 | std::initializer_list<UChar32>({}), |
| 7281 | std::initializer_list<CharacterRange>({}), |
| 7282 | std::initializer_list<UChar32>({0x0dbd, 0x0dca, 0x0dd6}), |
| 7283 | std::initializer_list<CharacterRange>({{0x0964, 0x0965}, {0x0d82, 0x0d83}, {0x0d85, 0x0d96}, {0x0d9a, 0x0db1}, |
| 7284 | {0x0db3, 0x0dbb}, {0x0dc0, 0x0dc6}, {0x0dcf, 0x0dd4}, {0x0dd8, 0x0ddf}, |
| 7285 | {0x0de6, 0x0def}, {0x0df2, 0x0df4}, {0x111e1, 0x111f4}}), |
| 7286 | CharacterClassWidths::HasBothBMPAndNonBMP); |
| 7287 | return characterClass; |
| 7288 | } |
| 7289 | |
| 7290 | static std::unique_ptr<CharacterClass> createCharacterClass304() |
| 7291 | { |
| 7292 | // Name = Limbu, number of codePoints: 69 |
| 7293 | auto characterClass = std::make_unique<CharacterClass>( |
| 7294 | std::initializer_list<UChar32>({}), |
| 7295 | std::initializer_list<CharacterRange>({}), |
| 7296 | std::initializer_list<UChar32>({0x0965, 0x1940}), |
| 7297 | std::initializer_list<CharacterRange>({{0x1900, 0x191e}, {0x1920, 0x192b}, {0x1930, 0x193b}, {0x1944, 0x194f}}), |
| 7298 | CharacterClassWidths::HasBMPChars); |
| 7299 | return characterClass; |
| 7300 | } |
| 7301 | |
| 7302 | typedef std::unique_ptr<CharacterClass> (*CreateCharacterClass)(); |
| 7303 | static CreateCharacterClass createFunctions[305] = { |
| 7304 | createCharacterClass0, createCharacterClass1, createCharacterClass2, createCharacterClass3, |
| 7305 | createCharacterClass4, createCharacterClass5, createCharacterClass6, createCharacterClass7, |
| 7306 | createCharacterClass8, createCharacterClass9, createCharacterClass10, createCharacterClass11, |
| 7307 | createCharacterClass12, createCharacterClass13, createCharacterClass14, createCharacterClass15, |
| 7308 | createCharacterClass16, createCharacterClass17, createCharacterClass18, createCharacterClass19, |
| 7309 | createCharacterClass20, createCharacterClass21, createCharacterClass22, createCharacterClass23, |
| 7310 | createCharacterClass24, createCharacterClass25, createCharacterClass26, createCharacterClass27, |
| 7311 | createCharacterClass28, createCharacterClass29, createCharacterClass30, createCharacterClass31, |
| 7312 | createCharacterClass32, createCharacterClass33, createCharacterClass34, createCharacterClass35, |
| 7313 | createCharacterClass36, createCharacterClass37, createCharacterClass38, createCharacterClass39, |
| 7314 | createCharacterClass40, createCharacterClass41, createCharacterClass42, createCharacterClass43, |
| 7315 | createCharacterClass44, createCharacterClass45, createCharacterClass46, createCharacterClass47, |
| 7316 | createCharacterClass48, createCharacterClass49, createCharacterClass50, createCharacterClass51, |
| 7317 | createCharacterClass52, createCharacterClass53, createCharacterClass54, createCharacterClass55, |
| 7318 | createCharacterClass56, createCharacterClass57, createCharacterClass58, createCharacterClass59, |
| 7319 | createCharacterClass60, createCharacterClass61, createCharacterClass62, createCharacterClass63, |
| 7320 | createCharacterClass64, createCharacterClass65, createCharacterClass66, createCharacterClass67, |
| 7321 | createCharacterClass68, createCharacterClass69, createCharacterClass70, createCharacterClass71, |
| 7322 | createCharacterClass72, createCharacterClass73, createCharacterClass74, createCharacterClass75, |
| 7323 | createCharacterClass76, createCharacterClass77, createCharacterClass78, createCharacterClass79, |
| 7324 | createCharacterClass80, createCharacterClass81, createCharacterClass82, createCharacterClass83, |
| 7325 | createCharacterClass84, createCharacterClass85, createCharacterClass86, createCharacterClass87, |
| 7326 | createCharacterClass88, createCharacterClass89, createCharacterClass90, createCharacterClass91, |
| 7327 | createCharacterClass92, createCharacterClass93, createCharacterClass94, createCharacterClass95, |
| 7328 | createCharacterClass96, createCharacterClass97, createCharacterClass98, createCharacterClass99, |
| 7329 | createCharacterClass100, createCharacterClass101, createCharacterClass102, createCharacterClass103, |
| 7330 | createCharacterClass104, createCharacterClass105, createCharacterClass106, createCharacterClass107, |
| 7331 | createCharacterClass108, createCharacterClass109, createCharacterClass110, createCharacterClass111, |
| 7332 | createCharacterClass112, createCharacterClass113, createCharacterClass114, createCharacterClass115, |
| 7333 | createCharacterClass116, createCharacterClass117, createCharacterClass118, createCharacterClass119, |
| 7334 | createCharacterClass120, createCharacterClass121, createCharacterClass122, createCharacterClass123, |
| 7335 | createCharacterClass124, createCharacterClass125, createCharacterClass126, createCharacterClass127, |
| 7336 | createCharacterClass128, createCharacterClass129, createCharacterClass130, createCharacterClass131, |
| 7337 | createCharacterClass132, createCharacterClass133, createCharacterClass134, createCharacterClass135, |
| 7338 | createCharacterClass136, createCharacterClass137, createCharacterClass138, createCharacterClass139, |
| 7339 | createCharacterClass140, createCharacterClass141, createCharacterClass142, createCharacterClass143, |
| 7340 | createCharacterClass144, createCharacterClass145, createCharacterClass146, createCharacterClass147, |
| 7341 | createCharacterClass148, createCharacterClass149, createCharacterClass150, createCharacterClass151, |
| 7342 | createCharacterClass152, createCharacterClass153, createCharacterClass154, createCharacterClass155, |
| 7343 | createCharacterClass156, createCharacterClass157, createCharacterClass158, createCharacterClass159, |
| 7344 | createCharacterClass160, createCharacterClass161, createCharacterClass162, createCharacterClass163, |
| 7345 | createCharacterClass164, createCharacterClass165, createCharacterClass166, createCharacterClass167, |
| 7346 | createCharacterClass168, createCharacterClass169, createCharacterClass170, createCharacterClass171, |
| 7347 | createCharacterClass172, createCharacterClass173, createCharacterClass174, createCharacterClass175, |
| 7348 | createCharacterClass176, createCharacterClass177, createCharacterClass178, createCharacterClass179, |
| 7349 | createCharacterClass180, createCharacterClass181, createCharacterClass182, createCharacterClass183, |
| 7350 | createCharacterClass184, createCharacterClass185, createCharacterClass186, createCharacterClass187, |
| 7351 | createCharacterClass188, createCharacterClass189, createCharacterClass190, createCharacterClass191, |
| 7352 | createCharacterClass192, createCharacterClass193, createCharacterClass194, createCharacterClass195, |
| 7353 | createCharacterClass196, createCharacterClass197, createCharacterClass198, createCharacterClass199, |
| 7354 | createCharacterClass200, createCharacterClass201, createCharacterClass202, createCharacterClass203, |
| 7355 | createCharacterClass204, createCharacterClass205, createCharacterClass206, createCharacterClass207, |
| 7356 | createCharacterClass208, createCharacterClass209, createCharacterClass210, createCharacterClass211, |
| 7357 | createCharacterClass212, createCharacterClass213, createCharacterClass214, createCharacterClass215, |
| 7358 | createCharacterClass216, createCharacterClass217, createCharacterClass218, createCharacterClass219, |
| 7359 | createCharacterClass220, createCharacterClass221, createCharacterClass222, createCharacterClass223, |
| 7360 | createCharacterClass224, createCharacterClass225, createCharacterClass226, createCharacterClass227, |
| 7361 | createCharacterClass228, createCharacterClass229, createCharacterClass230, createCharacterClass231, |
| 7362 | createCharacterClass232, createCharacterClass233, createCharacterClass234, createCharacterClass235, |
| 7363 | createCharacterClass236, createCharacterClass237, createCharacterClass238, createCharacterClass239, |
| 7364 | createCharacterClass240, createCharacterClass241, createCharacterClass242, createCharacterClass243, |
| 7365 | createCharacterClass244, createCharacterClass245, createCharacterClass246, createCharacterClass247, |
| 7366 | createCharacterClass248, createCharacterClass249, createCharacterClass250, createCharacterClass251, |
| 7367 | createCharacterClass252, createCharacterClass253, createCharacterClass254, createCharacterClass255, |
| 7368 | createCharacterClass256, createCharacterClass257, createCharacterClass258, createCharacterClass259, |
| 7369 | createCharacterClass260, createCharacterClass261, createCharacterClass262, createCharacterClass263, |
| 7370 | createCharacterClass264, createCharacterClass265, createCharacterClass266, createCharacterClass267, |
| 7371 | createCharacterClass268, createCharacterClass269, createCharacterClass270, createCharacterClass271, |
| 7372 | createCharacterClass272, createCharacterClass273, createCharacterClass274, createCharacterClass275, |
| 7373 | createCharacterClass276, createCharacterClass277, createCharacterClass278, createCharacterClass279, |
| 7374 | createCharacterClass280, createCharacterClass281, createCharacterClass282, createCharacterClass283, |
| 7375 | createCharacterClass284, createCharacterClass285, createCharacterClass286, createCharacterClass287, |
| 7376 | createCharacterClass288, createCharacterClass289, createCharacterClass290, createCharacterClass291, |
| 7377 | createCharacterClass292, createCharacterClass293, createCharacterClass294, createCharacterClass295, |
| 7378 | createCharacterClass296, createCharacterClass297, createCharacterClass298, createCharacterClass299, |
| 7379 | createCharacterClass300, createCharacterClass301, createCharacterClass302, createCharacterClass303, |
| 7380 | createCharacterClass304,}; |
| 7381 | |
| 7382 | // General_Category: |
| 7383 | static const struct HashIndex generalCategoryTableIndex[152] = { |
| 7384 | { -1, -1 }, |
| 7385 | { -1, -1 }, |
| 7386 | { -1, -1 }, |
| 7387 | { -1, -1 }, |
| 7388 | { 31, -1 }, |
| 7389 | { 1, 128 }, |
| 7390 | { 73, -1 }, |
| 7391 | { 26, 139 }, |
| 7392 | { 46, -1 }, |
| 7393 | { -1, -1 }, |
| 7394 | { 45, 136 }, |
| 7395 | { -1, -1 }, |
| 7396 | { -1, -1 }, |
| 7397 | { 50, -1 }, |
| 7398 | { -1, -1 }, |
| 7399 | { 29, -1 }, |
| 7400 | { 51, -1 }, |
| 7401 | { -1, -1 }, |
| 7402 | { -1, -1 }, |
| 7403 | { -1, -1 }, |
| 7404 | { 34, 143 }, |
| 7405 | { 20, -1 }, |
| 7406 | { -1, -1 }, |
| 7407 | { -1, -1 }, |
| 7408 | { -1, -1 }, |
| 7409 | { 37, -1 }, |
| 7410 | { 61, -1 }, |
| 7411 | { 82, -1 }, |
| 7412 | { -1, -1 }, |
| 7413 | { 69, 148 }, |
| 7414 | { 79, -1 }, |
| 7415 | { 27, 144 }, |
| 7416 | { -1, -1 }, |
| 7417 | { -1, -1 }, |
| 7418 | { 21, -1 }, |
| 7419 | { 24, 146 }, |
| 7420 | { -1, -1 }, |
| 7421 | { -1, -1 }, |
| 7422 | { -1, -1 }, |
| 7423 | { -1, -1 }, |
| 7424 | { -1, -1 }, |
| 7425 | { 58, 150 }, |
| 7426 | { -1, -1 }, |
| 7427 | { 10, -1 }, |
| 7428 | { 39, 138 }, |
| 7429 | { 40, 137 }, |
| 7430 | { 5, -1 }, |
| 7431 | { -1, -1 }, |
| 7432 | { -1, -1 }, |
| 7433 | { -1, -1 }, |
| 7434 | { 60, -1 }, |
| 7435 | { -1, -1 }, |
| 7436 | { 67, -1 }, |
| 7437 | { -1, -1 }, |
| 7438 | { -1, -1 }, |
| 7439 | { 16, 142 }, |
| 7440 | { 72, 149 }, |
| 7441 | { 71, -1 }, |
| 7442 | { -1, -1 }, |
| 7443 | { 12, -1 }, |
| 7444 | { 0, -1 }, |
| 7445 | { 54, -1 }, |
| 7446 | { 11, 133 }, |
| 7447 | { 43, -1 }, |
| 7448 | { 4, -1 }, |
| 7449 | { -1, -1 }, |
| 7450 | { -1, -1 }, |
| 7451 | { -1, -1 }, |
| 7452 | { 19, -1 }, |
| 7453 | { 30, -1 }, |
| 7454 | { -1, -1 }, |
| 7455 | { -1, -1 }, |
| 7456 | { -1, -1 }, |
| 7457 | { -1, -1 }, |
| 7458 | { -1, -1 }, |
| 7459 | { -1, -1 }, |
| 7460 | { -1, -1 }, |
| 7461 | { 2, -1 }, |
| 7462 | { -1, -1 }, |
| 7463 | { -1, -1 }, |
| 7464 | { -1, -1 }, |
| 7465 | { -1, -1 }, |
| 7466 | { -1, -1 }, |
| 7467 | { -1, -1 }, |
| 7468 | { 6, 140 }, |
| 7469 | { 25, -1 }, |
| 7470 | { 48, -1 }, |
| 7471 | { -1, -1 }, |
| 7472 | { -1, -1 }, |
| 7473 | { -1, -1 }, |
| 7474 | { 59, -1 }, |
| 7475 | { 42, 151 }, |
| 7476 | { 8, -1 }, |
| 7477 | { -1, -1 }, |
| 7478 | { -1, -1 }, |
| 7479 | { -1, -1 }, |
| 7480 | { -1, -1 }, |
| 7481 | { -1, -1 }, |
| 7482 | { 18, 131 }, |
| 7483 | { 65, -1 }, |
| 7484 | { -1, -1 }, |
| 7485 | { -1, -1 }, |
| 7486 | { 28, -1 }, |
| 7487 | { 9, -1 }, |
| 7488 | { -1, -1 }, |
| 7489 | { 41, -1 }, |
| 7490 | { -1, -1 }, |
| 7491 | { -1, -1 }, |
| 7492 | { 22, -1 }, |
| 7493 | { 44, 145 }, |
| 7494 | { 13, 134 }, |
| 7495 | { 23, 132 }, |
| 7496 | { 77, -1 }, |
| 7497 | { -1, -1 }, |
| 7498 | { -1, -1 }, |
| 7499 | { 7, -1 }, |
| 7500 | { -1, -1 }, |
| 7501 | { 47, -1 }, |
| 7502 | { -1, -1 }, |
| 7503 | { -1, -1 }, |
| 7504 | { -1, -1 }, |
| 7505 | { 66, -1 }, |
| 7506 | { -1, -1 }, |
| 7507 | { 32, -1 }, |
| 7508 | { -1, -1 }, |
| 7509 | { -1, -1 }, |
| 7510 | { 15, 130 }, |
| 7511 | { -1, -1 }, |
| 7512 | { 3, 129 }, |
| 7513 | { 14, -1 }, |
| 7514 | { 17, -1 }, |
| 7515 | { 33, -1 }, |
| 7516 | { 35, 135 }, |
| 7517 | { 36, -1 }, |
| 7518 | { 38, 141 }, |
| 7519 | { 49, 147 }, |
| 7520 | { 52, -1 }, |
| 7521 | { 53, -1 }, |
| 7522 | { 55, -1 }, |
| 7523 | { 56, -1 }, |
| 7524 | { 57, -1 }, |
| 7525 | { 62, -1 }, |
| 7526 | { 63, -1 }, |
| 7527 | { 64, -1 }, |
| 7528 | { 68, -1 }, |
| 7529 | { 70, -1 }, |
| 7530 | { 74, -1 }, |
| 7531 | { 75, -1 }, |
| 7532 | { 76, -1 }, |
| 7533 | { 78, -1 }, |
| 7534 | { 80, -1 }, |
| 7535 | { 81, -1 }, |
| 7536 | }; |
| 7537 | |
| 7538 | static const struct HashValue generalCategoryTableValue[83] = { |
| 7539 | { "Spacing_Mark" , 35 }, |
| 7540 | { "Mc" , 35 }, |
| 7541 | { "Modifier_Symbol" , 21 }, |
| 7542 | { "Sk" , 21 }, |
| 7543 | { "Punctuation" , 10 }, |
| 7544 | { "P" , 10 }, |
| 7545 | { "punct" , 10 }, |
| 7546 | { "Decimal_Number" , 19 }, |
| 7547 | { "Nd" , 19 }, |
| 7548 | { "digit" , 19 }, |
| 7549 | { "Other_Number" , 28 }, |
| 7550 | { "No" , 28 }, |
| 7551 | { "Mark" , 32 }, |
| 7552 | { "M" , 32 }, |
| 7553 | { "Combining_Mark" , 32 }, |
| 7554 | { "Other" , 3 }, |
| 7555 | { "C" , 3 }, |
| 7556 | { "Nonspacing_Mark" , 33 }, |
| 7557 | { "Mn" , 33 }, |
| 7558 | { "Connector_Punctuation" , 22 }, |
| 7559 | { "Pc" , 22 }, |
| 7560 | { "Private_Use" , 40 }, |
| 7561 | { "Co" , 40 }, |
| 7562 | { "Format" , 27 }, |
| 7563 | { "Cf" , 27 }, |
| 7564 | { "Line_Separator" , 37 }, |
| 7565 | { "Zl" , 37 }, |
| 7566 | { "Symbol" , 12 }, |
| 7567 | { "S" , 12 }, |
| 7568 | { "Close_Punctuation" , 15 }, |
| 7569 | { "Pe" , 15 }, |
| 7570 | { "Cased_Letter" , 6 }, |
| 7571 | { "LC" , 6 }, |
| 7572 | { "Letter" , 5 }, |
| 7573 | { "L" , 5 }, |
| 7574 | { "Titlecase_Letter" , 30 }, |
| 7575 | { "Lt" , 30 }, |
| 7576 | { "Dash_Punctuation" , 17 }, |
| 7577 | { "Pd" , 17 }, |
| 7578 | { "Open_Punctuation" , 14 }, |
| 7579 | { "Ps" , 14 }, |
| 7580 | { "Enclosing_Mark" , 34 }, |
| 7581 | { "Me" , 34 }, |
| 7582 | { "Lowercase_Letter" , 23 }, |
| 7583 | { "Ll" , 23 }, |
| 7584 | { "Letter_Number" , 36 }, |
| 7585 | { "Nl" , 36 }, |
| 7586 | { "Surrogate" , 39 }, |
| 7587 | { "Cs" , 39 }, |
| 7588 | { "Currency_Symbol" , 13 }, |
| 7589 | { "Sc" , 13 }, |
| 7590 | { "Separator" , 8 }, |
| 7591 | { "Z" , 8 }, |
| 7592 | { "Other_Symbol" , 24 }, |
| 7593 | { "So" , 24 }, |
| 7594 | { "Final_Punctuation" , 29 }, |
| 7595 | { "Pf" , 29 }, |
| 7596 | { "Paragraph_Separator" , 38 }, |
| 7597 | { "Zp" , 38 }, |
| 7598 | { "Modifier_Letter" , 31 }, |
| 7599 | { "Lm" , 31 }, |
| 7600 | { "Control" , 7 }, |
| 7601 | { "Cc" , 7 }, |
| 7602 | { "cntrl" , 7 }, |
| 7603 | { "Initial_Punctuation" , 26 }, |
| 7604 | { "Pi" , 26 }, |
| 7605 | { "Other_Letter" , 25 }, |
| 7606 | { "Lo" , 25 }, |
| 7607 | { "Number" , 18 }, |
| 7608 | { "N" , 18 }, |
| 7609 | { "Any" , 0 }, |
| 7610 | { "Assigned" , 2 }, |
| 7611 | { "Unassigned" , 4 }, |
| 7612 | { "Cn" , 4 }, |
| 7613 | { "Other_Punctuation" , 11 }, |
| 7614 | { "Po" , 11 }, |
| 7615 | { "Uppercase_Letter" , 20 }, |
| 7616 | { "Lu" , 20 }, |
| 7617 | { "Math_Symbol" , 16 }, |
| 7618 | { "Sm" , 16 }, |
| 7619 | { "ASCII" , 1 }, |
| 7620 | { "Space_Separator" , 9 }, |
| 7621 | { "Zs" , 9 }, |
| 7622 | }; |
| 7623 | |
| 7624 | static const struct HashTable generalCategoryHashTable = |
| 7625 | { 83, 127, generalCategoryTableValue, generalCategoryTableIndex }; |
| 7626 | |
| 7627 | // binary properties: |
| 7628 | static const struct HashIndex binaryPropertyTableIndex[152] = { |
| 7629 | { -1, -1 }, |
| 7630 | { 38, -1 }, |
| 7631 | { 11, -1 }, |
| 7632 | { -1, -1 }, |
| 7633 | { -1, -1 }, |
| 7634 | { 74, -1 }, |
| 7635 | { -1, -1 }, |
| 7636 | { 5, 143 }, |
| 7637 | { -1, -1 }, |
| 7638 | { 35, -1 }, |
| 7639 | { 67, 150 }, |
| 7640 | { -1, -1 }, |
| 7641 | { -1, -1 }, |
| 7642 | { -1, -1 }, |
| 7643 | { 9, 137 }, |
| 7644 | { 12, 132 }, |
| 7645 | { -1, -1 }, |
| 7646 | { 60, -1 }, |
| 7647 | { 73, 151 }, |
| 7648 | { -1, -1 }, |
| 7649 | { -1, -1 }, |
| 7650 | { 22, -1 }, |
| 7651 | { 7, 141 }, |
| 7652 | { 15, -1 }, |
| 7653 | { 24, 136 }, |
| 7654 | { -1, -1 }, |
| 7655 | { -1, -1 }, |
| 7656 | { -1, -1 }, |
| 7657 | { 34, -1 }, |
| 7658 | { -1, -1 }, |
| 7659 | { 4, 149 }, |
| 7660 | { 89, -1 }, |
| 7661 | { 85, 148 }, |
| 7662 | { 2, -1 }, |
| 7663 | { 80, -1 }, |
| 7664 | { -1, -1 }, |
| 7665 | { -1, -1 }, |
| 7666 | { 6, -1 }, |
| 7667 | { -1, -1 }, |
| 7668 | { 83, -1 }, |
| 7669 | { -1, -1 }, |
| 7670 | { 47, -1 }, |
| 7671 | { 29, 131 }, |
| 7672 | { 23, -1 }, |
| 7673 | { -1, -1 }, |
| 7674 | { -1, -1 }, |
| 7675 | { 41, -1 }, |
| 7676 | { 25, 142 }, |
| 7677 | { -1, -1 }, |
| 7678 | { -1, -1 }, |
| 7679 | { 93, -1 }, |
| 7680 | { 28, 138 }, |
| 7681 | { -1, -1 }, |
| 7682 | { 1, 146 }, |
| 7683 | { 0, 135 }, |
| 7684 | { 50, -1 }, |
| 7685 | { -1, -1 }, |
| 7686 | { 48, -1 }, |
| 7687 | { 66, -1 }, |
| 7688 | { -1, -1 }, |
| 7689 | { 42, 134 }, |
| 7690 | { 33, -1 }, |
| 7691 | { 51, -1 }, |
| 7692 | { 68, -1 }, |
| 7693 | { -1, -1 }, |
| 7694 | { -1, -1 }, |
| 7695 | { -1, -1 }, |
| 7696 | { -1, -1 }, |
| 7697 | { 56, -1 }, |
| 7698 | { 31, -1 }, |
| 7699 | { 71, -1 }, |
| 7700 | { 77, -1 }, |
| 7701 | { 59, 144 }, |
| 7702 | { -1, -1 }, |
| 7703 | { 10, -1 }, |
| 7704 | { -1, -1 }, |
| 7705 | { 70, -1 }, |
| 7706 | { 36, -1 }, |
| 7707 | { -1, -1 }, |
| 7708 | { 19, -1 }, |
| 7709 | { -1, -1 }, |
| 7710 | { 17, 128 }, |
| 7711 | { 27, -1 }, |
| 7712 | { -1, -1 }, |
| 7713 | { -1, -1 }, |
| 7714 | { 94, -1 }, |
| 7715 | { -1, -1 }, |
| 7716 | { 84, -1 }, |
| 7717 | { 16, 147 }, |
| 7718 | { -1, -1 }, |
| 7719 | { -1, -1 }, |
| 7720 | { 79, -1 }, |
| 7721 | { -1, -1 }, |
| 7722 | { 64, -1 }, |
| 7723 | { 63, -1 }, |
| 7724 | { 3, -1 }, |
| 7725 | { 40, -1 }, |
| 7726 | { -1, -1 }, |
| 7727 | { 72, -1 }, |
| 7728 | { 75, 145 }, |
| 7729 | { -1, -1 }, |
| 7730 | { 26, 133 }, |
| 7731 | { -1, -1 }, |
| 7732 | { 13, 139 }, |
| 7733 | { -1, -1 }, |
| 7734 | { -1, -1 }, |
| 7735 | { -1, -1 }, |
| 7736 | { -1, -1 }, |
| 7737 | { -1, -1 }, |
| 7738 | { 81, -1 }, |
| 7739 | { 57, -1 }, |
| 7740 | { -1, -1 }, |
| 7741 | { 91, -1 }, |
| 7742 | { 8, 129 }, |
| 7743 | { -1, -1 }, |
| 7744 | { -1, -1 }, |
| 7745 | { -1, -1 }, |
| 7746 | { 49, -1 }, |
| 7747 | { -1, -1 }, |
| 7748 | { 14, -1 }, |
| 7749 | { 62, -1 }, |
| 7750 | { -1, -1 }, |
| 7751 | { 61, -1 }, |
| 7752 | { -1, -1 }, |
| 7753 | { 90, -1 }, |
| 7754 | { -1, -1 }, |
| 7755 | { 37, -1 }, |
| 7756 | { -1, -1 }, |
| 7757 | { 18, 130 }, |
| 7758 | { 20, -1 }, |
| 7759 | { 21, -1 }, |
| 7760 | { 30, -1 }, |
| 7761 | { 32, -1 }, |
| 7762 | { 39, -1 }, |
| 7763 | { 43, -1 }, |
| 7764 | { 44, -1 }, |
| 7765 | { 45, -1 }, |
| 7766 | { 46, -1 }, |
| 7767 | { 52, 140 }, |
| 7768 | { 53, -1 }, |
| 7769 | { 54, -1 }, |
| 7770 | { 55, -1 }, |
| 7771 | { 58, -1 }, |
| 7772 | { 65, -1 }, |
| 7773 | { 69, -1 }, |
| 7774 | { 76, -1 }, |
| 7775 | { 78, -1 }, |
| 7776 | { 82, -1 }, |
| 7777 | { 86, -1 }, |
| 7778 | { 87, -1 }, |
| 7779 | { 88, -1 }, |
| 7780 | { 92, -1 }, |
| 7781 | }; |
| 7782 | |
| 7783 | static const struct HashValue binaryPropertyTableValue[95] = { |
| 7784 | { "Grapheme_Extend" , 58 }, |
| 7785 | { "Gr_Ext" , 58 }, |
| 7786 | { "Extended_Pictographic" , 90 }, |
| 7787 | { "Emoji_Presentation" , 86 }, |
| 7788 | { "Pattern_White_Space" , 82 }, |
| 7789 | { "Pat_WS" , 82 }, |
| 7790 | { "Emoji_Component" , 89 }, |
| 7791 | { "Changes_When_Uppercased" , 49 }, |
| 7792 | { "CWU" , 49 }, |
| 7793 | { "Ideographic" , 69 }, |
| 7794 | { "Ideo" , 69 }, |
| 7795 | { "IDS_Binary_Operator" , 73 }, |
| 7796 | { "IDSB" , 73 }, |
| 7797 | { "Regional_Indicator" , 84 }, |
| 7798 | { "RI" , 84 }, |
| 7799 | { "Alphabetic" , 43 }, |
| 7800 | { "Alpha" , 43 }, |
| 7801 | { "Math" , 42 }, |
| 7802 | { "Math" , 42 }, |
| 7803 | { "Changes_When_Casemapped" , 52 }, |
| 7804 | { "CWCM" , 52 }, |
| 7805 | { "IDS_Trinary_Operator" , 74 }, |
| 7806 | { "IDST" , 74 }, |
| 7807 | { "Changes_When_NFKC_Casefolded" , 60 }, |
| 7808 | { "CWKCF" , 60 }, |
| 7809 | { "Bidi_Control" , 62 }, |
| 7810 | { "Bidi_C" , 62 }, |
| 7811 | { "ASCII_Hex_Digit" , 68 }, |
| 7812 | { "AHex" , 68 }, |
| 7813 | { "Cased" , 46 }, |
| 7814 | { "Cased" , 46 }, |
| 7815 | { "Soft_Dotted" , 78 }, |
| 7816 | { "SD" , 78 }, |
| 7817 | { "Case_Ignorable" , 47 }, |
| 7818 | { "CI" , 47 }, |
| 7819 | { "Extender" , 71 }, |
| 7820 | { "Ext" , 71 }, |
| 7821 | { "Changes_When_Titlecased" , 50 }, |
| 7822 | { "CWT" , 50 }, |
| 7823 | { "Lowercase" , 44 }, |
| 7824 | { "Lower" , 44 }, |
| 7825 | { "Sentence_Terminal" , 80 }, |
| 7826 | { "STerm" , 80 }, |
| 7827 | { "Deprecated" , 77 }, |
| 7828 | { "Dep" , 77 }, |
| 7829 | { "Pattern_Syntax" , 83 }, |
| 7830 | { "Pat_Syn" , 83 }, |
| 7831 | { "Emoji_Modifier_Base" , 88 }, |
| 7832 | { "Join_Control" , 63 }, |
| 7833 | { "Join_C" , 63 }, |
| 7834 | { "Logical_Order_Exception" , 79 }, |
| 7835 | { "LOE" , 79 }, |
| 7836 | { "XID_Start" , 55 }, |
| 7837 | { "XIDS" , 55 }, |
| 7838 | { "Emoji_Modifier" , 87 }, |
| 7839 | { "Terminal_Punctuation" , 66 }, |
| 7840 | { "Term" , 66 }, |
| 7841 | { "Variation_Selector" , 81 }, |
| 7842 | { "VS" , 81 }, |
| 7843 | { "ID_Continue" , 54 }, |
| 7844 | { "IDC" , 54 }, |
| 7845 | { "Hex_Digit" , 67 }, |
| 7846 | { "Hex" , 67 }, |
| 7847 | { "Grapheme_Base" , 59 }, |
| 7848 | { "Gr_Base" , 59 }, |
| 7849 | { "Diacritic" , 70 }, |
| 7850 | { "Dia" , 70 }, |
| 7851 | { "Uppercase" , 45 }, |
| 7852 | { "Upper" , 45 }, |
| 7853 | { "ID_Start" , 53 }, |
| 7854 | { "IDS" , 53 }, |
| 7855 | { "Unified_Ideograph" , 76 }, |
| 7856 | { "UIdeo" , 76 }, |
| 7857 | { "Bidi_Mirrored" , 41 }, |
| 7858 | { "Bidi_M" , 41 }, |
| 7859 | { "Dash" , 64 }, |
| 7860 | { "Dash" , 64 }, |
| 7861 | { "XID_Continue" , 56 }, |
| 7862 | { "XIDC" , 56 }, |
| 7863 | { "Changes_When_Lowercased" , 48 }, |
| 7864 | { "CWL" , 48 }, |
| 7865 | { "Changes_When_Casefolded" , 51 }, |
| 7866 | { "CWCF" , 51 }, |
| 7867 | { "Noncharacter_Code_Point" , 72 }, |
| 7868 | { "NChar" , 72 }, |
| 7869 | { "Radical" , 75 }, |
| 7870 | { "Radical" , 75 }, |
| 7871 | { "Quotation_Mark" , 65 }, |
| 7872 | { "QMark" , 65 }, |
| 7873 | { "White_Space" , 61 }, |
| 7874 | { "WSpace" , 61 }, |
| 7875 | { "space" , 61 }, |
| 7876 | { "Default_Ignorable_Code_Point" , 57 }, |
| 7877 | { "DI" , 57 }, |
| 7878 | { "Emoji" , 85 }, |
| 7879 | }; |
| 7880 | |
| 7881 | static const struct HashTable binaryPropertyHashTable = |
| 7882 | { 95, 127, binaryPropertyTableValue, binaryPropertyTableIndex }; |
| 7883 | |
| 7884 | // Scripts: |
| 7885 | static const struct HashIndex scriptTableIndex[582] = { |
| 7886 | { -1, -1 }, |
| 7887 | { -1, -1 }, |
| 7888 | { 27, -1 }, |
| 7889 | { -1, -1 }, |
| 7890 | { -1, -1 }, |
| 7891 | { -1, -1 }, |
| 7892 | { -1, -1 }, |
| 7893 | { 285, -1 }, |
| 7894 | { -1, -1 }, |
| 7895 | { -1, -1 }, |
| 7896 | { 21, -1 }, |
| 7897 | { -1, -1 }, |
| 7898 | { -1, -1 }, |
| 7899 | { 165, -1 }, |
| 7900 | { 8, -1 }, |
| 7901 | { -1, -1 }, |
| 7902 | { 23, 515 }, |
| 7903 | { 128, 579 }, |
| 7904 | { -1, -1 }, |
| 7905 | { -1, -1 }, |
| 7906 | { -1, -1 }, |
| 7907 | { -1, -1 }, |
| 7908 | { 71, -1 }, |
| 7909 | { -1, -1 }, |
| 7910 | { 38, -1 }, |
| 7911 | { -1, -1 }, |
| 7912 | { -1, -1 }, |
| 7913 | { 36, -1 }, |
| 7914 | { -1, -1 }, |
| 7915 | { 247, -1 }, |
| 7916 | { 51, 516 }, |
| 7917 | { 153, -1 }, |
| 7918 | { -1, -1 }, |
| 7919 | { -1, -1 }, |
| 7920 | { -1, -1 }, |
| 7921 | { -1, -1 }, |
| 7922 | { 202, -1 }, |
| 7923 | { -1, -1 }, |
| 7924 | { 101, -1 }, |
| 7925 | { -1, -1 }, |
| 7926 | { -1, -1 }, |
| 7927 | { -1, -1 }, |
| 7928 | { 212, -1 }, |
| 7929 | { 271, -1 }, |
| 7930 | { -1, -1 }, |
| 7931 | { -1, -1 }, |
| 7932 | { -1, -1 }, |
| 7933 | { -1, -1 }, |
| 7934 | { -1, -1 }, |
| 7935 | { 279, -1 }, |
| 7936 | { 188, -1 }, |
| 7937 | { 7, 521 }, |
| 7938 | { -1, -1 }, |
| 7939 | { -1, -1 }, |
| 7940 | { 138, 531 }, |
| 7941 | { 171, -1 }, |
| 7942 | { -1, -1 }, |
| 7943 | { 193, -1 }, |
| 7944 | { -1, -1 }, |
| 7945 | { 163, 538 }, |
| 7946 | { -1, -1 }, |
| 7947 | { 289, -1 }, |
| 7948 | { -1, -1 }, |
| 7949 | { 262, -1 }, |
| 7950 | { 137, -1 }, |
| 7951 | { -1, -1 }, |
| 7952 | { 290, -1 }, |
| 7953 | { -1, -1 }, |
| 7954 | { 83, -1 }, |
| 7955 | { -1, -1 }, |
| 7956 | { 2, -1 }, |
| 7957 | { -1, -1 }, |
| 7958 | { 174, -1 }, |
| 7959 | { 197, -1 }, |
| 7960 | { 268, -1 }, |
| 7961 | { -1, -1 }, |
| 7962 | { -1, -1 }, |
| 7963 | { 241, -1 }, |
| 7964 | { -1, -1 }, |
| 7965 | { 232, 562 }, |
| 7966 | { 181, -1 }, |
| 7967 | { -1, -1 }, |
| 7968 | { -1, -1 }, |
| 7969 | { -1, -1 }, |
| 7970 | { 68, -1 }, |
| 7971 | { -1, -1 }, |
| 7972 | { -1, -1 }, |
| 7973 | { 236, -1 }, |
| 7974 | { -1, -1 }, |
| 7975 | { 223, -1 }, |
| 7976 | { 255, -1 }, |
| 7977 | { -1, -1 }, |
| 7978 | { -1, -1 }, |
| 7979 | { -1, -1 }, |
| 7980 | { 234, 568 }, |
| 7981 | { -1, -1 }, |
| 7982 | { -1, -1 }, |
| 7983 | { 134, -1 }, |
| 7984 | { -1, -1 }, |
| 7985 | { -1, -1 }, |
| 7986 | { -1, -1 }, |
| 7987 | { 37, -1 }, |
| 7988 | { -1, -1 }, |
| 7989 | { 158, 556 }, |
| 7990 | { -1, -1 }, |
| 7991 | { -1, -1 }, |
| 7992 | { 220, -1 }, |
| 7993 | { 164, -1 }, |
| 7994 | { 28, 532 }, |
| 7995 | { 5, 514 }, |
| 7996 | { -1, -1 }, |
| 7997 | { 64, -1 }, |
| 7998 | { -1, -1 }, |
| 7999 | { 80, -1 }, |
| 8000 | { 254, -1 }, |
| 8001 | { 145, -1 }, |
| 8002 | { -1, -1 }, |
| 8003 | { -1, -1 }, |
| 8004 | { -1, -1 }, |
| 8005 | { 175, -1 }, |
| 8006 | { -1, -1 }, |
| 8007 | { 155, 544 }, |
| 8008 | { -1, -1 }, |
| 8009 | { 139, 528 }, |
| 8010 | { 277, -1 }, |
| 8011 | { 198, -1 }, |
| 8012 | { -1, -1 }, |
| 8013 | { -1, -1 }, |
| 8014 | { -1, -1 }, |
| 8015 | { -1, -1 }, |
| 8016 | { 265, -1 }, |
| 8017 | { 248, -1 }, |
| 8018 | { 52, 565 }, |
| 8019 | { 129, 542 }, |
| 8020 | { 93, -1 }, |
| 8021 | { 260, -1 }, |
| 8022 | { 132, -1 }, |
| 8023 | { -1, -1 }, |
| 8024 | { -1, -1 }, |
| 8025 | { -1, -1 }, |
| 8026 | { 124, -1 }, |
| 8027 | { 215, -1 }, |
| 8028 | { 114, -1 }, |
| 8029 | { 74, -1 }, |
| 8030 | { -1, -1 }, |
| 8031 | { -1, -1 }, |
| 8032 | { 296, -1 }, |
| 8033 | { -1, -1 }, |
| 8034 | { -1, -1 }, |
| 8035 | { 43, -1 }, |
| 8036 | { -1, -1 }, |
| 8037 | { -1, -1 }, |
| 8038 | { -1, -1 }, |
| 8039 | { -1, -1 }, |
| 8040 | { -1, -1 }, |
| 8041 | { 205, -1 }, |
| 8042 | { -1, -1 }, |
| 8043 | { 82, 553 }, |
| 8044 | { 273, -1 }, |
| 8045 | { -1, -1 }, |
| 8046 | { 19, -1 }, |
| 8047 | { 50, -1 }, |
| 8048 | { 116, -1 }, |
| 8049 | { -1, -1 }, |
| 8050 | { 61, -1 }, |
| 8051 | { 39, -1 }, |
| 8052 | { 100, -1 }, |
| 8053 | { -1, -1 }, |
| 8054 | { -1, -1 }, |
| 8055 | { 120, -1 }, |
| 8056 | { 107, 576 }, |
| 8057 | { -1, -1 }, |
| 8058 | { -1, -1 }, |
| 8059 | { -1, -1 }, |
| 8060 | { 243, -1 }, |
| 8061 | { 119, 539 }, |
| 8062 | { -1, -1 }, |
| 8063 | { 231, -1 }, |
| 8064 | { 70, -1 }, |
| 8065 | { -1, -1 }, |
| 8066 | { -1, -1 }, |
| 8067 | { -1, -1 }, |
| 8068 | { -1, -1 }, |
| 8069 | { -1, -1 }, |
| 8070 | { -1, -1 }, |
| 8071 | { 214, -1 }, |
| 8072 | { -1, -1 }, |
| 8073 | { 9, 527 }, |
| 8074 | { 121, 525 }, |
| 8075 | { -1, -1 }, |
| 8076 | { -1, -1 }, |
| 8077 | { -1, -1 }, |
| 8078 | { -1, -1 }, |
| 8079 | { -1, -1 }, |
| 8080 | { 157, -1 }, |
| 8081 | { -1, -1 }, |
| 8082 | { -1, -1 }, |
| 8083 | { 44, 551 }, |
| 8084 | { 203, -1 }, |
| 8085 | { -1, -1 }, |
| 8086 | { -1, -1 }, |
| 8087 | { -1, -1 }, |
| 8088 | { -1, -1 }, |
| 8089 | { 87, -1 }, |
| 8090 | { 92, -1 }, |
| 8091 | { -1, -1 }, |
| 8092 | { -1, -1 }, |
| 8093 | { 253, -1 }, |
| 8094 | { -1, -1 }, |
| 8095 | { 156, -1 }, |
| 8096 | { 251, -1 }, |
| 8097 | { 84, 519 }, |
| 8098 | { -1, -1 }, |
| 8099 | { 266, -1 }, |
| 8100 | { 65, -1 }, |
| 8101 | { 256, -1 }, |
| 8102 | { 63, -1 }, |
| 8103 | { 227, -1 }, |
| 8104 | { -1, -1 }, |
| 8105 | { 1, 530 }, |
| 8106 | { -1, -1 }, |
| 8107 | { 166, -1 }, |
| 8108 | { 102, 558 }, |
| 8109 | { 280, -1 }, |
| 8110 | { 294, -1 }, |
| 8111 | { 250, -1 }, |
| 8112 | { 34, -1 }, |
| 8113 | { -1, -1 }, |
| 8114 | { -1, -1 }, |
| 8115 | { 25, 512 }, |
| 8116 | { 204, -1 }, |
| 8117 | { 217, -1 }, |
| 8118 | { -1, -1 }, |
| 8119 | { -1, -1 }, |
| 8120 | { -1, -1 }, |
| 8121 | { 216, -1 }, |
| 8122 | { -1, -1 }, |
| 8123 | { -1, -1 }, |
| 8124 | { 85, -1 }, |
| 8125 | { 31, -1 }, |
| 8126 | { -1, -1 }, |
| 8127 | { 113, 526 }, |
| 8128 | { -1, -1 }, |
| 8129 | { -1, -1 }, |
| 8130 | { -1, -1 }, |
| 8131 | { 66, 549 }, |
| 8132 | { -1, -1 }, |
| 8133 | { 48, -1 }, |
| 8134 | { 104, -1 }, |
| 8135 | { -1, -1 }, |
| 8136 | { -1, -1 }, |
| 8137 | { -1, -1 }, |
| 8138 | { -1, -1 }, |
| 8139 | { -1, -1 }, |
| 8140 | { 201, -1 }, |
| 8141 | { -1, -1 }, |
| 8142 | { 183, 552 }, |
| 8143 | { -1, -1 }, |
| 8144 | { -1, -1 }, |
| 8145 | { -1, -1 }, |
| 8146 | { -1, -1 }, |
| 8147 | { 135, -1 }, |
| 8148 | { -1, -1 }, |
| 8149 | { -1, -1 }, |
| 8150 | { -1, -1 }, |
| 8151 | { 154, -1 }, |
| 8152 | { 4, -1 }, |
| 8153 | { 186, -1 }, |
| 8154 | { -1, -1 }, |
| 8155 | { 218, -1 }, |
| 8156 | { 168, -1 }, |
| 8157 | { 192, 555 }, |
| 8158 | { -1, -1 }, |
| 8159 | { -1, -1 }, |
| 8160 | { -1, -1 }, |
| 8161 | { -1, -1 }, |
| 8162 | { 54, 522 }, |
| 8163 | { 127, 580 }, |
| 8164 | { -1, -1 }, |
| 8165 | { 162, -1 }, |
| 8166 | { -1, -1 }, |
| 8167 | { -1, -1 }, |
| 8168 | { -1, -1 }, |
| 8169 | { -1, -1 }, |
| 8170 | { -1, -1 }, |
| 8171 | { -1, -1 }, |
| 8172 | { 91, 534 }, |
| 8173 | { 257, -1 }, |
| 8174 | { -1, -1 }, |
| 8175 | { 261, -1 }, |
| 8176 | { 56, -1 }, |
| 8177 | { -1, -1 }, |
| 8178 | { -1, -1 }, |
| 8179 | { -1, -1 }, |
| 8180 | { 184, 548 }, |
| 8181 | { 14, -1 }, |
| 8182 | { -1, -1 }, |
| 8183 | { -1, -1 }, |
| 8184 | { -1, -1 }, |
| 8185 | { -1, -1 }, |
| 8186 | { -1, -1 }, |
| 8187 | { 224, 564 }, |
| 8188 | { 41, 547 }, |
| 8189 | { -1, -1 }, |
| 8190 | { 10, -1 }, |
| 8191 | { -1, -1 }, |
| 8192 | { -1, -1 }, |
| 8193 | { -1, -1 }, |
| 8194 | { -1, -1 }, |
| 8195 | { 53, -1 }, |
| 8196 | { 239, -1 }, |
| 8197 | { 11, -1 }, |
| 8198 | { 60, -1 }, |
| 8199 | { -1, -1 }, |
| 8200 | { 274, -1 }, |
| 8201 | { -1, -1 }, |
| 8202 | { -1, -1 }, |
| 8203 | { -1, -1 }, |
| 8204 | { -1, -1 }, |
| 8205 | { 206, -1 }, |
| 8206 | { 249, -1 }, |
| 8207 | { -1, -1 }, |
| 8208 | { -1, -1 }, |
| 8209 | { -1, -1 }, |
| 8210 | { -1, -1 }, |
| 8211 | { 97, 540 }, |
| 8212 | { -1, -1 }, |
| 8213 | { -1, -1 }, |
| 8214 | { -1, -1 }, |
| 8215 | { -1, -1 }, |
| 8216 | { 35, -1 }, |
| 8217 | { -1, -1 }, |
| 8218 | { 210, -1 }, |
| 8219 | { -1, -1 }, |
| 8220 | { 283, -1 }, |
| 8221 | { 208, -1 }, |
| 8222 | { 226, -1 }, |
| 8223 | { -1, -1 }, |
| 8224 | { 276, -1 }, |
| 8225 | { 103, 541 }, |
| 8226 | { 0, -1 }, |
| 8227 | { 75, 578 }, |
| 8228 | { -1, -1 }, |
| 8229 | { -1, -1 }, |
| 8230 | { -1, -1 }, |
| 8231 | { -1, -1 }, |
| 8232 | { 109, 569 }, |
| 8233 | { -1, -1 }, |
| 8234 | { -1, -1 }, |
| 8235 | { 58, 517 }, |
| 8236 | { 24, -1 }, |
| 8237 | { -1, -1 }, |
| 8238 | { -1, -1 }, |
| 8239 | { -1, -1 }, |
| 8240 | { -1, -1 }, |
| 8241 | { 110, 533 }, |
| 8242 | { -1, -1 }, |
| 8243 | { -1, -1 }, |
| 8244 | { 46, -1 }, |
| 8245 | { 259, -1 }, |
| 8246 | { -1, -1 }, |
| 8247 | { -1, -1 }, |
| 8248 | { 112, -1 }, |
| 8249 | { -1, -1 }, |
| 8250 | { 42, -1 }, |
| 8251 | { 18, -1 }, |
| 8252 | { -1, -1 }, |
| 8253 | { -1, -1 }, |
| 8254 | { 73, -1 }, |
| 8255 | { 13, -1 }, |
| 8256 | { 295, -1 }, |
| 8257 | { 117, 574 }, |
| 8258 | { 131, -1 }, |
| 8259 | { 30, -1 }, |
| 8260 | { -1, -1 }, |
| 8261 | { -1, -1 }, |
| 8262 | { 33, -1 }, |
| 8263 | { -1, -1 }, |
| 8264 | { -1, -1 }, |
| 8265 | { -1, -1 }, |
| 8266 | { -1, -1 }, |
| 8267 | { 49, -1 }, |
| 8268 | { 148, -1 }, |
| 8269 | { -1, -1 }, |
| 8270 | { 178, -1 }, |
| 8271 | { 125, -1 }, |
| 8272 | { 16, 523 }, |
| 8273 | { -1, -1 }, |
| 8274 | { -1, -1 }, |
| 8275 | { 118, -1 }, |
| 8276 | { 151, -1 }, |
| 8277 | { -1, -1 }, |
| 8278 | { 78, -1 }, |
| 8279 | { -1, -1 }, |
| 8280 | { -1, -1 }, |
| 8281 | { 55, 536 }, |
| 8282 | { -1, -1 }, |
| 8283 | { 17, -1 }, |
| 8284 | { 235, -1 }, |
| 8285 | { -1, -1 }, |
| 8286 | { 182, -1 }, |
| 8287 | { -1, -1 }, |
| 8288 | { -1, -1 }, |
| 8289 | { -1, -1 }, |
| 8290 | { -1, -1 }, |
| 8291 | { -1, -1 }, |
| 8292 | { -1, -1 }, |
| 8293 | { 278, -1 }, |
| 8294 | { -1, -1 }, |
| 8295 | { -1, -1 }, |
| 8296 | { -1, -1 }, |
| 8297 | { 275, -1 }, |
| 8298 | { 111, -1 }, |
| 8299 | { -1, -1 }, |
| 8300 | { -1, -1 }, |
| 8301 | { 72, 518 }, |
| 8302 | { -1, -1 }, |
| 8303 | { -1, -1 }, |
| 8304 | { 40, -1 }, |
| 8305 | { -1, -1 }, |
| 8306 | { -1, -1 }, |
| 8307 | { 45, 524 }, |
| 8308 | { -1, -1 }, |
| 8309 | { 281, -1 }, |
| 8310 | { -1, -1 }, |
| 8311 | { 29, 535 }, |
| 8312 | { 98, -1 }, |
| 8313 | { -1, -1 }, |
| 8314 | { -1, -1 }, |
| 8315 | { 270, -1 }, |
| 8316 | { -1, -1 }, |
| 8317 | { -1, -1 }, |
| 8318 | { -1, -1 }, |
| 8319 | { 15, -1 }, |
| 8320 | { 142, 546 }, |
| 8321 | { -1, -1 }, |
| 8322 | { 219, 557 }, |
| 8323 | { -1, -1 }, |
| 8324 | { -1, -1 }, |
| 8325 | { 123, -1 }, |
| 8326 | { -1, -1 }, |
| 8327 | { -1, -1 }, |
| 8328 | { -1, -1 }, |
| 8329 | { 169, -1 }, |
| 8330 | { -1, -1 }, |
| 8331 | { -1, -1 }, |
| 8332 | { -1, -1 }, |
| 8333 | { 86, -1 }, |
| 8334 | { -1, -1 }, |
| 8335 | { -1, -1 }, |
| 8336 | { 287, -1 }, |
| 8337 | { -1, -1 }, |
| 8338 | { -1, -1 }, |
| 8339 | { 185, -1 }, |
| 8340 | { 77, -1 }, |
| 8341 | { -1, -1 }, |
| 8342 | { 90, 561 }, |
| 8343 | { 76, -1 }, |
| 8344 | { 267, -1 }, |
| 8345 | { -1, -1 }, |
| 8346 | { -1, -1 }, |
| 8347 | { -1, -1 }, |
| 8348 | { -1, -1 }, |
| 8349 | { -1, -1 }, |
| 8350 | { -1, -1 }, |
| 8351 | { 136, -1 }, |
| 8352 | { 32, 573 }, |
| 8353 | { -1, -1 }, |
| 8354 | { -1, -1 }, |
| 8355 | { 6, 513 }, |
| 8356 | { 221, 560 }, |
| 8357 | { -1, -1 }, |
| 8358 | { 22, -1 }, |
| 8359 | { -1, -1 }, |
| 8360 | { -1, -1 }, |
| 8361 | { 12, -1 }, |
| 8362 | { 161, 567 }, |
| 8363 | { -1, -1 }, |
| 8364 | { -1, -1 }, |
| 8365 | { -1, -1 }, |
| 8366 | { -1, -1 }, |
| 8367 | { 67, -1 }, |
| 8368 | { -1, -1 }, |
| 8369 | { -1, -1 }, |
| 8370 | { 57, 566 }, |
| 8371 | { 20, -1 }, |
| 8372 | { 62, -1 }, |
| 8373 | { 246, -1 }, |
| 8374 | { 108, -1 }, |
| 8375 | { -1, -1 }, |
| 8376 | { -1, -1 }, |
| 8377 | { 3, -1 }, |
| 8378 | { -1, -1 }, |
| 8379 | { -1, -1 }, |
| 8380 | { -1, -1 }, |
| 8381 | { -1, -1 }, |
| 8382 | { -1, -1 }, |
| 8383 | { 133, -1 }, |
| 8384 | { 81, 545 }, |
| 8385 | { -1, -1 }, |
| 8386 | { 94, -1 }, |
| 8387 | { 191, -1 }, |
| 8388 | { 167, -1 }, |
| 8389 | { -1, -1 }, |
| 8390 | { -1, -1 }, |
| 8391 | { -1, -1 }, |
| 8392 | { -1, -1 }, |
| 8393 | { -1, -1 }, |
| 8394 | { -1, -1 }, |
| 8395 | { 297, -1 }, |
| 8396 | { 149, -1 }, |
| 8397 | { -1, -1 }, |
| 8398 | { 26, -1 }, |
| 8399 | { 47, -1 }, |
| 8400 | { 59, -1 }, |
| 8401 | { 69, 575 }, |
| 8402 | { 79, -1 }, |
| 8403 | { 88, -1 }, |
| 8404 | { 89, -1 }, |
| 8405 | { 95, 520 }, |
| 8406 | { 96, -1 }, |
| 8407 | { 99, 529 }, |
| 8408 | { 105, -1 }, |
| 8409 | { 106, -1 }, |
| 8410 | { 115, 554 }, |
| 8411 | { 122, 543 }, |
| 8412 | { 126, -1 }, |
| 8413 | { 130, -1 }, |
| 8414 | { 140, -1 }, |
| 8415 | { 141, -1 }, |
| 8416 | { 143, -1 }, |
| 8417 | { 144, 570 }, |
| 8418 | { 146, -1 }, |
| 8419 | { 147, -1 }, |
| 8420 | { 150, 563 }, |
| 8421 | { 152, -1 }, |
| 8422 | { 159, 537 }, |
| 8423 | { 160, -1 }, |
| 8424 | { 170, -1 }, |
| 8425 | { 172, -1 }, |
| 8426 | { 173, -1 }, |
| 8427 | { 176, 550 }, |
| 8428 | { 177, -1 }, |
| 8429 | { 179, -1 }, |
| 8430 | { 180, 581 }, |
| 8431 | { 187, -1 }, |
| 8432 | { 189, 559 }, |
| 8433 | { 190, -1 }, |
| 8434 | { 194, -1 }, |
| 8435 | { 195, -1 }, |
| 8436 | { 196, -1 }, |
| 8437 | { 199, -1 }, |
| 8438 | { 200, 571 }, |
| 8439 | { 207, -1 }, |
| 8440 | { 209, -1 }, |
| 8441 | { 211, -1 }, |
| 8442 | { 213, -1 }, |
| 8443 | { 222, -1 }, |
| 8444 | { 225, 577 }, |
| 8445 | { 228, -1 }, |
| 8446 | { 229, -1 }, |
| 8447 | { 230, -1 }, |
| 8448 | { 233, -1 }, |
| 8449 | { 237, -1 }, |
| 8450 | { 238, -1 }, |
| 8451 | { 240, -1 }, |
| 8452 | { 242, -1 }, |
| 8453 | { 244, -1 }, |
| 8454 | { 245, -1 }, |
| 8455 | { 252, -1 }, |
| 8456 | { 258, -1 }, |
| 8457 | { 263, 572 }, |
| 8458 | { 264, -1 }, |
| 8459 | { 269, -1 }, |
| 8460 | { 272, -1 }, |
| 8461 | { 282, -1 }, |
| 8462 | { 284, -1 }, |
| 8463 | { 286, -1 }, |
| 8464 | { 288, -1 }, |
| 8465 | { 291, -1 }, |
| 8466 | { 292, -1 }, |
| 8467 | { 293, -1 }, |
| 8468 | }; |
| 8469 | |
| 8470 | static const struct HashValue scriptTableValue[298] = { |
| 8471 | { "Tangut" , 228 }, |
| 8472 | { "Tang" , 228 }, |
| 8473 | { "Thaana" , 100 }, |
| 8474 | { "Thaa" , 100 }, |
| 8475 | { "Adlam" , 223 }, |
| 8476 | { "Adlm" , 223 }, |
| 8477 | { "Telugu" , 107 }, |
| 8478 | { "Telu" , 107 }, |
| 8479 | { "Cyrillic" , 95 }, |
| 8480 | { "Cyrl" , 95 }, |
| 8481 | { "Zanabazar_Square" , 232 }, |
| 8482 | { "Zanb" , 232 }, |
| 8483 | { "Hangul" , 116 }, |
| 8484 | { "Hang" , 116 }, |
| 8485 | { "Old_South_Arabian" , 179 }, |
| 8486 | { "Sarb" , 179 }, |
| 8487 | { "Ethiopic" , 117 }, |
| 8488 | { "Ethi" , 117 }, |
| 8489 | { "Inherited" , 132 }, |
| 8490 | { "Zinh" , 132 }, |
| 8491 | { "Qaai" , 132 }, |
| 8492 | { "Meroitic_Cursive" , 188 }, |
| 8493 | { "Merc" , 188 }, |
| 8494 | { "Bhaiksuki" , 224 }, |
| 8495 | { "Bhks" , 224 }, |
| 8496 | { "Ahom" , 217 }, |
| 8497 | { "Ahom" , 217 }, |
| 8498 | { "Han" , 127 }, |
| 8499 | { "Hani" , 127 }, |
| 8500 | { "Old_North_Arabian" , 207 }, |
| 8501 | { "Narb" , 207 }, |
| 8502 | { "Armenian" , 96 }, |
| 8503 | { "Armn" , 96 }, |
| 8504 | { "Tamil" , 106 }, |
| 8505 | { "Taml" , 106 }, |
| 8506 | { "Bopomofo" , 126 }, |
| 8507 | { "Bopo" , 126 }, |
| 8508 | { "Bassa_Vah" , 195 }, |
| 8509 | { "Bass" , 195 }, |
| 8510 | { "Sundanese" , 158 }, |
| 8511 | { "Sund" , 158 }, |
| 8512 | { "Osage" , 227 }, |
| 8513 | { "Osge" , 227 }, |
| 8514 | { "Old_Sogdian" , 239 }, |
| 8515 | { "Sogo" , 239 }, |
| 8516 | { "Tagalog" , 133 }, |
| 8517 | { "Tglg" , 133 }, |
| 8518 | { "Malayalam" , 109 }, |
| 8519 | { "Mlym" , 109 }, |
| 8520 | { "Marchen" , 225 }, |
| 8521 | { "Marc" , 225 }, |
| 8522 | { "Carian" , 166 }, |
| 8523 | { "Cari" , 166 }, |
| 8524 | { "Hiragana" , 124 }, |
| 8525 | { "Hira" , 124 }, |
| 8526 | { "Tagbanwa" , 136 }, |
| 8527 | { "Tagb" , 136 }, |
| 8528 | { "Meetei_Mayek" , 177 }, |
| 8529 | { "Mtei" , 177 }, |
| 8530 | { "Hanifi_Rohingya" , 237 }, |
| 8531 | { "Rohg" , 237 }, |
| 8532 | { "Pahawh_Hmong" , 199 }, |
| 8533 | { "Hmng" , 199 }, |
| 8534 | { "Tai_Le" , 138 }, |
| 8535 | { "Tale" , 138 }, |
| 8536 | { "Kayah_Li" , 163 }, |
| 8537 | { "Kali" , 163 }, |
| 8538 | { "Buginese" , 145 }, |
| 8539 | { "Bugi" , 145 }, |
| 8540 | { "Kharoshthi" , 152 }, |
| 8541 | { "Khar" , 152 }, |
| 8542 | { "Tai_Tham" , 169 }, |
| 8543 | { "Lana" , 169 }, |
| 8544 | { "Old_Italic" , 129 }, |
| 8545 | { "Ital" , 129 }, |
| 8546 | { "Old_Persian" , 151 }, |
| 8547 | { "Xpeo" , 151 }, |
| 8548 | { "Warang_Citi" , 216 }, |
| 8549 | { "Wara" , 216 }, |
| 8550 | { "Latin" , 93 }, |
| 8551 | { "Latn" , 93 }, |
| 8552 | { "Saurashtra" , 162 }, |
| 8553 | { "Saur" , 162 }, |
| 8554 | { "Shavian" , 141 }, |
| 8555 | { "Shaw" , 141 }, |
| 8556 | { "Georgian" , 115 }, |
| 8557 | { "Geor" , 115 }, |
| 8558 | { "Grantha" , 198 }, |
| 8559 | { "Gran" , 198 }, |
| 8560 | { "Duployan" , 196 }, |
| 8561 | { "Dupl" , 196 }, |
| 8562 | { "Batak" , 184 }, |
| 8563 | { "Batk" , 184 }, |
| 8564 | { "Devanagari" , 101 }, |
| 8565 | { "Deva" , 101 }, |
| 8566 | { "Thai" , 111 }, |
| 8567 | { "Thai" , 111 }, |
| 8568 | { "Tibetan" , 113 }, |
| 8569 | { "Tibt" , 113 }, |
| 8570 | { "Tifinagh" , 149 }, |
| 8571 | { "Tfng" , 149 }, |
| 8572 | { "Ugaritic" , 140 }, |
| 8573 | { "Ugar" , 140 }, |
| 8574 | { "Braille" , 144 }, |
| 8575 | { "Brai" , 144 }, |
| 8576 | { "Anatolian_Hieroglyphs" , 218 }, |
| 8577 | { "Hluw" , 218 }, |
| 8578 | { "Greek" , 94 }, |
| 8579 | { "Grek" , 94 }, |
| 8580 | { "Lycian" , 165 }, |
| 8581 | { "Lyci" , 165 }, |
| 8582 | { "Mende_Kikakui" , 204 }, |
| 8583 | { "Mend" , 204 }, |
| 8584 | { "Tai_Viet" , 170 }, |
| 8585 | { "Tavt" , 170 }, |
| 8586 | { "Vai" , 161 }, |
| 8587 | { "Vaii" , 161 }, |
| 8588 | { "Ogham" , 120 }, |
| 8589 | { "Ogam" , 120 }, |
| 8590 | { "Inscriptional_Parthian" , 180 }, |
| 8591 | { "Prti" , 180 }, |
| 8592 | { "Cham" , 168 }, |
| 8593 | { "Cham" , 168 }, |
| 8594 | { "Syriac" , 99 }, |
| 8595 | { "Syrc" , 99 }, |
| 8596 | { "Runic" , 121 }, |
| 8597 | { "Runr" , 121 }, |
| 8598 | { "Gothic" , 130 }, |
| 8599 | { "Goth" , 130 }, |
| 8600 | { "Mahajani" , 202 }, |
| 8601 | { "Mahj" , 202 }, |
| 8602 | { "Katakana" , 125 }, |
| 8603 | { "Kana" , 125 }, |
| 8604 | { "Osmanya" , 142 }, |
| 8605 | { "Osma" , 142 }, |
| 8606 | { "New_Tai_Lue" , 147 }, |
| 8607 | { "Talu" , 147 }, |
| 8608 | { "Ol_Chiki" , 160 }, |
| 8609 | { "Olck" , 160 }, |
| 8610 | { "Newa" , 226 }, |
| 8611 | { "Newa" , 226 }, |
| 8612 | { "Limbu" , 137 }, |
| 8613 | { "Limb" , 137 }, |
| 8614 | { "Pau_Cin_Hau" , 210 }, |
| 8615 | { "Pauc" , 210 }, |
| 8616 | { "Cherokee" , 118 }, |
| 8617 | { "Cher" , 118 }, |
| 8618 | { "Miao" , 190 }, |
| 8619 | { "Plrd" , 190 }, |
| 8620 | { "Oriya" , 105 }, |
| 8621 | { "Orya" , 105 }, |
| 8622 | { "Medefaidrin" , 236 }, |
| 8623 | { "Medf" , 236 }, |
| 8624 | { "Sharada" , 191 }, |
| 8625 | { "Shrd" , 191 }, |
| 8626 | { "Gujarati" , 104 }, |
| 8627 | { "Gujr" , 104 }, |
| 8628 | { "Nushu" , 230 }, |
| 8629 | { "Nshu" , 230 }, |
| 8630 | { "Modi" , 205 }, |
| 8631 | { "Modi" , 205 }, |
| 8632 | { "Gunjala_Gondi" , 234 }, |
| 8633 | { "Gong" , 234 }, |
| 8634 | { "Inscriptional_Pahlavi" , 181 }, |
| 8635 | { "Phli" , 181 }, |
| 8636 | { "Manichaean" , 203 }, |
| 8637 | { "Mani" , 203 }, |
| 8638 | { "Khmer" , 122 }, |
| 8639 | { "Khmr" , 122 }, |
| 8640 | { "Cuneiform" , 154 }, |
| 8641 | { "Xsux" , 154 }, |
| 8642 | { "Khudawadi" , 214 }, |
| 8643 | { "Sind" , 214 }, |
| 8644 | { "Mandaic" , 186 }, |
| 8645 | { "Mand" , 186 }, |
| 8646 | { "Hatran" , 219 }, |
| 8647 | { "Hatr" , 219 }, |
| 8648 | { "Syloti_Nagri" , 150 }, |
| 8649 | { "Sylo" , 150 }, |
| 8650 | { "Nko" , 157 }, |
| 8651 | { "Nkoo" , 157 }, |
| 8652 | { "Canadian_Aboriginal" , 119 }, |
| 8653 | { "Cans" , 119 }, |
| 8654 | { "Meroitic_Hieroglyphs" , 189 }, |
| 8655 | { "Mero" , 189 }, |
| 8656 | { "Phoenician" , 155 }, |
| 8657 | { "Phnx" , 155 }, |
| 8658 | { "Nabataean" , 208 }, |
| 8659 | { "Nbat" , 208 }, |
| 8660 | { "Bengali" , 102 }, |
| 8661 | { "Beng" , 102 }, |
| 8662 | { "Kaithi" , 183 }, |
| 8663 | { "Kthi" , 183 }, |
| 8664 | { "Glagolitic" , 148 }, |
| 8665 | { "Glag" , 148 }, |
| 8666 | { "Imperial_Aramaic" , 178 }, |
| 8667 | { "Armi" , 178 }, |
| 8668 | { "Sora_Sompeng" , 192 }, |
| 8669 | { "Sora" , 192 }, |
| 8670 | { "Gurmukhi" , 103 }, |
| 8671 | { "Guru" , 103 }, |
| 8672 | { "Javanese" , 176 }, |
| 8673 | { "Java" , 176 }, |
| 8674 | { "Old_Permic" , 211 }, |
| 8675 | { "Perm" , 211 }, |
| 8676 | { "Phags_Pa" , 156 }, |
| 8677 | { "Phag" , 156 }, |
| 8678 | { "Cypriot" , 143 }, |
| 8679 | { "Cprt" , 143 }, |
| 8680 | { "Kannada" , 108 }, |
| 8681 | { "Knda" , 108 }, |
| 8682 | { "Khojki" , 200 }, |
| 8683 | { "Khoj" , 200 }, |
| 8684 | { "Mongolian" , 123 }, |
| 8685 | { "Mong" , 123 }, |
| 8686 | { "Sinhala" , 110 }, |
| 8687 | { "Sinh" , 110 }, |
| 8688 | { "Brahmi" , 185 }, |
| 8689 | { "Brah" , 185 }, |
| 8690 | { "Elbasan" , 197 }, |
| 8691 | { "Elba" , 197 }, |
| 8692 | { "Deseret" , 131 }, |
| 8693 | { "Dsrt" , 131 }, |
| 8694 | { "Rejang" , 164 }, |
| 8695 | { "Rjng" , 164 }, |
| 8696 | { "SignWriting" , 222 }, |
| 8697 | { "Sgnw" , 222 }, |
| 8698 | { "Multani" , 220 }, |
| 8699 | { "Mult" , 220 }, |
| 8700 | { "Yi" , 128 }, |
| 8701 | { "Yiii" , 128 }, |
| 8702 | { "Balinese" , 153 }, |
| 8703 | { "Bali" , 153 }, |
| 8704 | { "Lao" , 112 }, |
| 8705 | { "Laoo" , 112 }, |
| 8706 | { "Hanunoo" , 134 }, |
| 8707 | { "Hano" , 134 }, |
| 8708 | { "Masaram_Gondi" , 229 }, |
| 8709 | { "Gonm" , 229 }, |
| 8710 | { "Linear_B" , 139 }, |
| 8711 | { "Linb" , 139 }, |
| 8712 | { "Linear_A" , 201 }, |
| 8713 | { "Lina" , 201 }, |
| 8714 | { "Dogra" , 233 }, |
| 8715 | { "Dogr" , 233 }, |
| 8716 | { "Old_Turkic" , 182 }, |
| 8717 | { "Orkh" , 182 }, |
| 8718 | { "Lepcha" , 159 }, |
| 8719 | { "Lepc" , 159 }, |
| 8720 | { "Lydian" , 167 }, |
| 8721 | { "Lydi" , 167 }, |
| 8722 | { "Egyptian_Hieroglyphs" , 172 }, |
| 8723 | { "Egyp" , 172 }, |
| 8724 | { "Sogdian" , 238 }, |
| 8725 | { "Sogd" , 238 }, |
| 8726 | { "Caucasian_Albanian" , 194 }, |
| 8727 | { "Aghb" , 194 }, |
| 8728 | { "Makasar" , 235 }, |
| 8729 | { "Maka" , 235 }, |
| 8730 | { "Old_Hungarian" , 221 }, |
| 8731 | { "Hung" , 221 }, |
| 8732 | { "Samaritan" , 173 }, |
| 8733 | { "Samr" , 173 }, |
| 8734 | { "Lisu" , 174 }, |
| 8735 | { "Lisu" , 174 }, |
| 8736 | { "Buhid" , 135 }, |
| 8737 | { "Buhd" , 135 }, |
| 8738 | { "Palmyrene" , 209 }, |
| 8739 | { "Palm" , 209 }, |
| 8740 | { "Tirhuta" , 215 }, |
| 8741 | { "Tirh" , 215 }, |
| 8742 | { "Mro" , 206 }, |
| 8743 | { "Mroo" , 206 }, |
| 8744 | { "Common" , 92 }, |
| 8745 | { "Zyyy" , 92 }, |
| 8746 | { "Coptic" , 146 }, |
| 8747 | { "Copt" , 146 }, |
| 8748 | { "Qaac" , 146 }, |
| 8749 | { "Chakma" , 187 }, |
| 8750 | { "Cakm" , 187 }, |
| 8751 | { "Arabic" , 98 }, |
| 8752 | { "Arab" , 98 }, |
| 8753 | { "Bamum" , 175 }, |
| 8754 | { "Bamu" , 175 }, |
| 8755 | { "Myanmar" , 114 }, |
| 8756 | { "Mymr" , 114 }, |
| 8757 | { "Siddham" , 213 }, |
| 8758 | { "Sidd" , 213 }, |
| 8759 | { "Soyombo" , 231 }, |
| 8760 | { "Soyo" , 231 }, |
| 8761 | { "Avestan" , 171 }, |
| 8762 | { "Avst" , 171 }, |
| 8763 | { "Hebrew" , 97 }, |
| 8764 | { "Hebr" , 97 }, |
| 8765 | { "Psalter_Pahlavi" , 212 }, |
| 8766 | { "Phlp" , 212 }, |
| 8767 | { "Takri" , 193 }, |
| 8768 | { "Takr" , 193 }, |
| 8769 | }; |
| 8770 | |
| 8771 | static const struct HashTable scriptHashTable = |
| 8772 | { 298, 511, scriptTableValue, scriptTableIndex }; |
| 8773 | |
| 8774 | // Script_Extensions: |
| 8775 | static const struct HashIndex scriptExtensionTableIndex[582] = { |
| 8776 | { -1, -1 }, |
| 8777 | { -1, -1 }, |
| 8778 | { 27, -1 }, |
| 8779 | { -1, -1 }, |
| 8780 | { -1, -1 }, |
| 8781 | { -1, -1 }, |
| 8782 | { -1, -1 }, |
| 8783 | { 285, -1 }, |
| 8784 | { -1, -1 }, |
| 8785 | { -1, -1 }, |
| 8786 | { 21, -1 }, |
| 8787 | { -1, -1 }, |
| 8788 | { -1, -1 }, |
| 8789 | { 169, -1 }, |
| 8790 | { 8, -1 }, |
| 8791 | { -1, -1 }, |
| 8792 | { 23, 516 }, |
| 8793 | { 132, 579 }, |
| 8794 | { -1, -1 }, |
| 8795 | { -1, -1 }, |
| 8796 | { -1, -1 }, |
| 8797 | { -1, -1 }, |
| 8798 | { 75, -1 }, |
| 8799 | { -1, -1 }, |
| 8800 | { 38, -1 }, |
| 8801 | { -1, -1 }, |
| 8802 | { -1, -1 }, |
| 8803 | { 36, -1 }, |
| 8804 | { -1, -1 }, |
| 8805 | { 247, -1 }, |
| 8806 | { 51, 517 }, |
| 8807 | { 157, -1 }, |
| 8808 | { -1, -1 }, |
| 8809 | { -1, -1 }, |
| 8810 | { -1, -1 }, |
| 8811 | { -1, -1 }, |
| 8812 | { 204, -1 }, |
| 8813 | { -1, -1 }, |
| 8814 | { 105, -1 }, |
| 8815 | { -1, -1 }, |
| 8816 | { -1, -1 }, |
| 8817 | { -1, -1 }, |
| 8818 | { 214, -1 }, |
| 8819 | { 271, -1 }, |
| 8820 | { -1, -1 }, |
| 8821 | { -1, -1 }, |
| 8822 | { -1, -1 }, |
| 8823 | { -1, -1 }, |
| 8824 | { -1, -1 }, |
| 8825 | { 164, -1 }, |
| 8826 | { 192, -1 }, |
| 8827 | { 7, 522 }, |
| 8828 | { -1, -1 }, |
| 8829 | { -1, -1 }, |
| 8830 | { 142, 555 }, |
| 8831 | { 175, -1 }, |
| 8832 | { -1, -1 }, |
| 8833 | { 195, -1 }, |
| 8834 | { -1, -1 }, |
| 8835 | { 167, 535 }, |
| 8836 | { -1, -1 }, |
| 8837 | { 289, -1 }, |
| 8838 | { -1, -1 }, |
| 8839 | { 262, -1 }, |
| 8840 | { 141, -1 }, |
| 8841 | { -1, -1 }, |
| 8842 | { 290, -1 }, |
| 8843 | { -1, -1 }, |
| 8844 | { 87, -1 }, |
| 8845 | { -1, -1 }, |
| 8846 | { 2, -1 }, |
| 8847 | { -1, -1 }, |
| 8848 | { 178, -1 }, |
| 8849 | { 199, -1 }, |
| 8850 | { 268, -1 }, |
| 8851 | { -1, -1 }, |
| 8852 | { -1, -1 }, |
| 8853 | { 241, -1 }, |
| 8854 | { -1, -1 }, |
| 8855 | { 232, 560 }, |
| 8856 | { 185, -1 }, |
| 8857 | { -1, -1 }, |
| 8858 | { -1, -1 }, |
| 8859 | { -1, -1 }, |
| 8860 | { 72, -1 }, |
| 8861 | { -1, -1 }, |
| 8862 | { -1, -1 }, |
| 8863 | { 236, -1 }, |
| 8864 | { -1, -1 }, |
| 8865 | { 225, -1 }, |
| 8866 | { 255, -1 }, |
| 8867 | { -1, -1 }, |
| 8868 | { -1, -1 }, |
| 8869 | { -1, -1 }, |
| 8870 | { 234, 566 }, |
| 8871 | { -1, -1 }, |
| 8872 | { -1, -1 }, |
| 8873 | { 138, -1 }, |
| 8874 | { -1, -1 }, |
| 8875 | { -1, -1 }, |
| 8876 | { -1, -1 }, |
| 8877 | { 37, -1 }, |
| 8878 | { -1, -1 }, |
| 8879 | { 162, 553 }, |
| 8880 | { -1, -1 }, |
| 8881 | { -1, -1 }, |
| 8882 | { 148, -1 }, |
| 8883 | { 168, -1 }, |
| 8884 | { 28, 531 }, |
| 8885 | { 5, 514 }, |
| 8886 | { -1, -1 }, |
| 8887 | { 68, -1 }, |
| 8888 | { -1, -1 }, |
| 8889 | { 84, -1 }, |
| 8890 | { 254, -1 }, |
| 8891 | { 149, -1 }, |
| 8892 | { -1, -1 }, |
| 8893 | { -1, -1 }, |
| 8894 | { -1, -1 }, |
| 8895 | { 179, -1 }, |
| 8896 | { -1, -1 }, |
| 8897 | { 159, 541 }, |
| 8898 | { -1, -1 }, |
| 8899 | { 143, 528 }, |
| 8900 | { 277, -1 }, |
| 8901 | { 200, -1 }, |
| 8902 | { -1, -1 }, |
| 8903 | { -1, -1 }, |
| 8904 | { -1, -1 }, |
| 8905 | { -1, -1 }, |
| 8906 | { 265, -1 }, |
| 8907 | { 248, -1 }, |
| 8908 | { 52, 563 }, |
| 8909 | { 133, 539 }, |
| 8910 | { 97, -1 }, |
| 8911 | { 260, -1 }, |
| 8912 | { 136, -1 }, |
| 8913 | { -1, -1 }, |
| 8914 | { -1, -1 }, |
| 8915 | { -1, -1 }, |
| 8916 | { 128, -1 }, |
| 8917 | { 217, -1 }, |
| 8918 | { 118, -1 }, |
| 8919 | { 78, -1 }, |
| 8920 | { -1, -1 }, |
| 8921 | { -1, -1 }, |
| 8922 | { 296, -1 }, |
| 8923 | { -1, -1 }, |
| 8924 | { -1, -1 }, |
| 8925 | { 43, -1 }, |
| 8926 | { -1, -1 }, |
| 8927 | { -1, -1 }, |
| 8928 | { -1, -1 }, |
| 8929 | { -1, -1 }, |
| 8930 | { -1, -1 }, |
| 8931 | { 207, -1 }, |
| 8932 | { -1, -1 }, |
| 8933 | { 86, 550 }, |
| 8934 | { 273, -1 }, |
| 8935 | { -1, -1 }, |
| 8936 | { 19, -1 }, |
| 8937 | { 250, -1 }, |
| 8938 | { 62, -1 }, |
| 8939 | { -1, -1 }, |
| 8940 | { 63, -1 }, |
| 8941 | { 39, -1 }, |
| 8942 | { 104, -1 }, |
| 8943 | { -1, -1 }, |
| 8944 | { -1, -1 }, |
| 8945 | { 124, -1 }, |
| 8946 | { 111, 576 }, |
| 8947 | { -1, -1 }, |
| 8948 | { -1, -1 }, |
| 8949 | { -1, -1 }, |
| 8950 | { 243, -1 }, |
| 8951 | { 123, 536 }, |
| 8952 | { -1, -1 }, |
| 8953 | { 231, -1 }, |
| 8954 | { 74, -1 }, |
| 8955 | { -1, -1 }, |
| 8956 | { -1, -1 }, |
| 8957 | { -1, -1 }, |
| 8958 | { -1, -1 }, |
| 8959 | { -1, -1 }, |
| 8960 | { -1, -1 }, |
| 8961 | { 216, -1 }, |
| 8962 | { -1, -1 }, |
| 8963 | { 9, 527 }, |
| 8964 | { 125, 525 }, |
| 8965 | { -1, -1 }, |
| 8966 | { -1, -1 }, |
| 8967 | { -1, -1 }, |
| 8968 | { -1, -1 }, |
| 8969 | { -1, -1 }, |
| 8970 | { 161, -1 }, |
| 8971 | { -1, -1 }, |
| 8972 | { -1, -1 }, |
| 8973 | { 44, 547 }, |
| 8974 | { 41, -1 }, |
| 8975 | { -1, -1 }, |
| 8976 | { -1, -1 }, |
| 8977 | { -1, -1 }, |
| 8978 | { -1, -1 }, |
| 8979 | { 91, -1 }, |
| 8980 | { 108, -1 }, |
| 8981 | { -1, -1 }, |
| 8982 | { -1, -1 }, |
| 8983 | { 253, -1 }, |
| 8984 | { -1, -1 }, |
| 8985 | { 160, -1 }, |
| 8986 | { 251, -1 }, |
| 8987 | { 88, 520 }, |
| 8988 | { -1, -1 }, |
| 8989 | { 266, -1 }, |
| 8990 | { 69, -1 }, |
| 8991 | { 256, -1 }, |
| 8992 | { 67, -1 }, |
| 8993 | { 55, -1 }, |
| 8994 | { -1, -1 }, |
| 8995 | { 1, 554 }, |
| 8996 | { -1, -1 }, |
| 8997 | { 170, -1 }, |
| 8998 | { 106, 557 }, |
| 8999 | { 280, -1 }, |
| 9000 | { 294, -1 }, |
| 9001 | { 50, -1 }, |
| 9002 | { 34, -1 }, |
| 9003 | { -1, -1 }, |
| 9004 | { -1, -1 }, |
| 9005 | { 25, 512 }, |
| 9006 | { 42, -1 }, |
| 9007 | { 219, -1 }, |
| 9008 | { -1, -1 }, |
| 9009 | { -1, -1 }, |
| 9010 | { -1, -1 }, |
| 9011 | { 218, -1 }, |
| 9012 | { -1, -1 }, |
| 9013 | { -1, -1 }, |
| 9014 | { 89, -1 }, |
| 9015 | { 31, -1 }, |
| 9016 | { -1, -1 }, |
| 9017 | { 117, 526 }, |
| 9018 | { -1, -1 }, |
| 9019 | { -1, -1 }, |
| 9020 | { -1, -1 }, |
| 9021 | { 70, 545 }, |
| 9022 | { -1, -1 }, |
| 9023 | { 48, -1 }, |
| 9024 | { 96, -1 }, |
| 9025 | { -1, -1 }, |
| 9026 | { -1, -1 }, |
| 9027 | { -1, -1 }, |
| 9028 | { -1, -1 }, |
| 9029 | { -1, -1 }, |
| 9030 | { 203, -1 }, |
| 9031 | { -1, -1 }, |
| 9032 | { 187, 548 }, |
| 9033 | { -1, -1 }, |
| 9034 | { -1, -1 }, |
| 9035 | { -1, -1 }, |
| 9036 | { -1, -1 }, |
| 9037 | { 139, -1 }, |
| 9038 | { -1, -1 }, |
| 9039 | { -1, -1 }, |
| 9040 | { -1, -1 }, |
| 9041 | { 158, -1 }, |
| 9042 | { 4, -1 }, |
| 9043 | { 190, -1 }, |
| 9044 | { -1, -1 }, |
| 9045 | { 220, -1 }, |
| 9046 | { 172, -1 }, |
| 9047 | { 120, 552 }, |
| 9048 | { -1, -1 }, |
| 9049 | { -1, -1 }, |
| 9050 | { -1, -1 }, |
| 9051 | { -1, -1 }, |
| 9052 | { 54, 523 }, |
| 9053 | { 131, 580 }, |
| 9054 | { -1, -1 }, |
| 9055 | { 166, -1 }, |
| 9056 | { -1, -1 }, |
| 9057 | { -1, -1 }, |
| 9058 | { -1, -1 }, |
| 9059 | { -1, -1 }, |
| 9060 | { -1, -1 }, |
| 9061 | { -1, -1 }, |
| 9062 | { 107, 533 }, |
| 9063 | { 257, -1 }, |
| 9064 | { -1, -1 }, |
| 9065 | { 261, -1 }, |
| 9066 | { 66, -1 }, |
| 9067 | { -1, -1 }, |
| 9068 | { -1, -1 }, |
| 9069 | { -1, -1 }, |
| 9070 | { 188, 544 }, |
| 9071 | { 14, -1 }, |
| 9072 | { -1, -1 }, |
| 9073 | { -1, -1 }, |
| 9074 | { -1, -1 }, |
| 9075 | { -1, -1 }, |
| 9076 | { -1, -1 }, |
| 9077 | { 226, 562 }, |
| 9078 | { 194, 549 }, |
| 9079 | { -1, -1 }, |
| 9080 | { 10, -1 }, |
| 9081 | { -1, -1 }, |
| 9082 | { -1, -1 }, |
| 9083 | { -1, -1 }, |
| 9084 | { -1, -1 }, |
| 9085 | { 53, -1 }, |
| 9086 | { 239, -1 }, |
| 9087 | { 11, -1 }, |
| 9088 | { 60, -1 }, |
| 9089 | { -1, -1 }, |
| 9090 | { 274, -1 }, |
| 9091 | { -1, -1 }, |
| 9092 | { -1, -1 }, |
| 9093 | { -1, -1 }, |
| 9094 | { -1, -1 }, |
| 9095 | { 208, -1 }, |
| 9096 | { 49, -1 }, |
| 9097 | { -1, -1 }, |
| 9098 | { -1, -1 }, |
| 9099 | { -1, -1 }, |
| 9100 | { -1, -1 }, |
| 9101 | { 101, 537 }, |
| 9102 | { -1, -1 }, |
| 9103 | { -1, -1 }, |
| 9104 | { -1, -1 }, |
| 9105 | { -1, -1 }, |
| 9106 | { 35, -1 }, |
| 9107 | { -1, -1 }, |
| 9108 | { 212, -1 }, |
| 9109 | { -1, -1 }, |
| 9110 | { 283, -1 }, |
| 9111 | { 210, -1 }, |
| 9112 | { 228, -1 }, |
| 9113 | { -1, -1 }, |
| 9114 | { 276, -1 }, |
| 9115 | { 95, 538 }, |
| 9116 | { 0, -1 }, |
| 9117 | { 79, 578 }, |
| 9118 | { -1, -1 }, |
| 9119 | { -1, -1 }, |
| 9120 | { -1, -1 }, |
| 9121 | { -1, -1 }, |
| 9122 | { 113, 567 }, |
| 9123 | { -1, -1 }, |
| 9124 | { -1, -1 }, |
| 9125 | { 58, 518 }, |
| 9126 | { 24, -1 }, |
| 9127 | { -1, -1 }, |
| 9128 | { -1, -1 }, |
| 9129 | { -1, -1 }, |
| 9130 | { -1, -1 }, |
| 9131 | { 114, 532 }, |
| 9132 | { -1, -1 }, |
| 9133 | { -1, -1 }, |
| 9134 | { 46, -1 }, |
| 9135 | { 259, -1 }, |
| 9136 | { -1, -1 }, |
| 9137 | { -1, -1 }, |
| 9138 | { 116, -1 }, |
| 9139 | { -1, -1 }, |
| 9140 | { 206, -1 }, |
| 9141 | { 18, -1 }, |
| 9142 | { -1, -1 }, |
| 9143 | { -1, -1 }, |
| 9144 | { 77, -1 }, |
| 9145 | { 13, -1 }, |
| 9146 | { 295, -1 }, |
| 9147 | { 121, 572 }, |
| 9148 | { 135, -1 }, |
| 9149 | { 30, -1 }, |
| 9150 | { -1, -1 }, |
| 9151 | { -1, -1 }, |
| 9152 | { 33, -1 }, |
| 9153 | { -1, -1 }, |
| 9154 | { -1, -1 }, |
| 9155 | { -1, -1 }, |
| 9156 | { -1, -1 }, |
| 9157 | { 249, -1 }, |
| 9158 | { 152, -1 }, |
| 9159 | { -1, -1 }, |
| 9160 | { 182, -1 }, |
| 9161 | { 129, -1 }, |
| 9162 | { 16, 524 }, |
| 9163 | { -1, -1 }, |
| 9164 | { -1, -1 }, |
| 9165 | { 122, -1 }, |
| 9166 | { 155, -1 }, |
| 9167 | { -1, -1 }, |
| 9168 | { 82, -1 }, |
| 9169 | { -1, -1 }, |
| 9170 | { -1, -1 }, |
| 9171 | { 65, 573 }, |
| 9172 | { -1, -1 }, |
| 9173 | { 17, -1 }, |
| 9174 | { 235, -1 }, |
| 9175 | { -1, -1 }, |
| 9176 | { 186, -1 }, |
| 9177 | { -1, -1 }, |
| 9178 | { -1, -1 }, |
| 9179 | { -1, -1 }, |
| 9180 | { -1, -1 }, |
| 9181 | { -1, -1 }, |
| 9182 | { -1, -1 }, |
| 9183 | { 163, -1 }, |
| 9184 | { -1, -1 }, |
| 9185 | { -1, -1 }, |
| 9186 | { -1, -1 }, |
| 9187 | { 275, -1 }, |
| 9188 | { 115, -1 }, |
| 9189 | { -1, -1 }, |
| 9190 | { -1, -1 }, |
| 9191 | { 76, 519 }, |
| 9192 | { -1, -1 }, |
| 9193 | { -1, -1 }, |
| 9194 | { 40, -1 }, |
| 9195 | { -1, -1 }, |
| 9196 | { -1, -1 }, |
| 9197 | { 45, 515 }, |
| 9198 | { -1, -1 }, |
| 9199 | { 281, -1 }, |
| 9200 | { -1, -1 }, |
| 9201 | { 29, 534 }, |
| 9202 | { 102, -1 }, |
| 9203 | { -1, -1 }, |
| 9204 | { -1, -1 }, |
| 9205 | { 270, -1 }, |
| 9206 | { -1, -1 }, |
| 9207 | { -1, -1 }, |
| 9208 | { -1, -1 }, |
| 9209 | { 15, -1 }, |
| 9210 | { 56, 530 }, |
| 9211 | { -1, -1 }, |
| 9212 | { 147, 556 }, |
| 9213 | { -1, -1 }, |
| 9214 | { -1, -1 }, |
| 9215 | { 127, -1 }, |
| 9216 | { -1, -1 }, |
| 9217 | { -1, -1 }, |
| 9218 | { -1, -1 }, |
| 9219 | { 173, -1 }, |
| 9220 | { -1, -1 }, |
| 9221 | { -1, -1 }, |
| 9222 | { -1, -1 }, |
| 9223 | { 90, -1 }, |
| 9224 | { -1, -1 }, |
| 9225 | { -1, -1 }, |
| 9226 | { 287, -1 }, |
| 9227 | { -1, -1 }, |
| 9228 | { -1, -1 }, |
| 9229 | { 189, -1 }, |
| 9230 | { 81, -1 }, |
| 9231 | { -1, -1 }, |
| 9232 | { 94, 559 }, |
| 9233 | { 80, -1 }, |
| 9234 | { 267, -1 }, |
| 9235 | { -1, -1 }, |
| 9236 | { -1, -1 }, |
| 9237 | { -1, -1 }, |
| 9238 | { -1, -1 }, |
| 9239 | { -1, -1 }, |
| 9240 | { -1, -1 }, |
| 9241 | { 140, -1 }, |
| 9242 | { 32, 571 }, |
| 9243 | { -1, -1 }, |
| 9244 | { -1, -1 }, |
| 9245 | { 6, 513 }, |
| 9246 | { 223, 558 }, |
| 9247 | { -1, -1 }, |
| 9248 | { 22, -1 }, |
| 9249 | { -1, -1 }, |
| 9250 | { -1, -1 }, |
| 9251 | { 12, -1 }, |
| 9252 | { 165, 565 }, |
| 9253 | { -1, -1 }, |
| 9254 | { -1, -1 }, |
| 9255 | { -1, -1 }, |
| 9256 | { -1, -1 }, |
| 9257 | { 71, -1 }, |
| 9258 | { -1, -1 }, |
| 9259 | { -1, -1 }, |
| 9260 | { 57, 564 }, |
| 9261 | { 20, -1 }, |
| 9262 | { 64, -1 }, |
| 9263 | { 246, -1 }, |
| 9264 | { 112, -1 }, |
| 9265 | { -1, -1 }, |
| 9266 | { -1, -1 }, |
| 9267 | { 3, -1 }, |
| 9268 | { -1, -1 }, |
| 9269 | { -1, -1 }, |
| 9270 | { -1, -1 }, |
| 9271 | { -1, -1 }, |
| 9272 | { -1, -1 }, |
| 9273 | { 137, -1 }, |
| 9274 | { 85, 542 }, |
| 9275 | { -1, -1 }, |
| 9276 | { 98, -1 }, |
| 9277 | { 119, -1 }, |
| 9278 | { 171, -1 }, |
| 9279 | { -1, -1 }, |
| 9280 | { -1, -1 }, |
| 9281 | { -1, -1 }, |
| 9282 | { -1, -1 }, |
| 9283 | { -1, -1 }, |
| 9284 | { -1, -1 }, |
| 9285 | { 297, -1 }, |
| 9286 | { 153, -1 }, |
| 9287 | { -1, -1 }, |
| 9288 | { 26, -1 }, |
| 9289 | { 47, -1 }, |
| 9290 | { 59, -1 }, |
| 9291 | { 61, 551 }, |
| 9292 | { 73, 575 }, |
| 9293 | { 83, -1 }, |
| 9294 | { 92, -1 }, |
| 9295 | { 93, -1 }, |
| 9296 | { 99, 521 }, |
| 9297 | { 100, -1 }, |
| 9298 | { 103, 529 }, |
| 9299 | { 109, -1 }, |
| 9300 | { 110, -1 }, |
| 9301 | { 126, 540 }, |
| 9302 | { 130, -1 }, |
| 9303 | { 134, -1 }, |
| 9304 | { 144, -1 }, |
| 9305 | { 145, -1 }, |
| 9306 | { 146, 543 }, |
| 9307 | { 150, -1 }, |
| 9308 | { 151, -1 }, |
| 9309 | { 154, 561 }, |
| 9310 | { 156, -1 }, |
| 9311 | { 174, -1 }, |
| 9312 | { 176, -1 }, |
| 9313 | { 177, -1 }, |
| 9314 | { 180, 546 }, |
| 9315 | { 181, -1 }, |
| 9316 | { 183, -1 }, |
| 9317 | { 184, 581 }, |
| 9318 | { 191, -1 }, |
| 9319 | { 193, -1 }, |
| 9320 | { 196, -1 }, |
| 9321 | { 197, -1 }, |
| 9322 | { 198, -1 }, |
| 9323 | { 201, -1 }, |
| 9324 | { 202, 569 }, |
| 9325 | { 205, -1 }, |
| 9326 | { 209, -1 }, |
| 9327 | { 211, -1 }, |
| 9328 | { 213, -1 }, |
| 9329 | { 215, -1 }, |
| 9330 | { 221, -1 }, |
| 9331 | { 222, 568 }, |
| 9332 | { 224, -1 }, |
| 9333 | { 227, 577 }, |
| 9334 | { 229, -1 }, |
| 9335 | { 230, -1 }, |
| 9336 | { 233, -1 }, |
| 9337 | { 237, -1 }, |
| 9338 | { 238, -1 }, |
| 9339 | { 240, -1 }, |
| 9340 | { 242, -1 }, |
| 9341 | { 244, -1 }, |
| 9342 | { 245, -1 }, |
| 9343 | { 252, -1 }, |
| 9344 | { 258, -1 }, |
| 9345 | { 263, 570 }, |
| 9346 | { 264, -1 }, |
| 9347 | { 269, -1 }, |
| 9348 | { 272, -1 }, |
| 9349 | { 278, 574 }, |
| 9350 | { 279, -1 }, |
| 9351 | { 282, -1 }, |
| 9352 | { 284, -1 }, |
| 9353 | { 286, -1 }, |
| 9354 | { 288, -1 }, |
| 9355 | { 291, -1 }, |
| 9356 | { 292, -1 }, |
| 9357 | { 293, -1 }, |
| 9358 | }; |
| 9359 | |
| 9360 | static const struct HashValue scriptExtensionTableValue[298] = { |
| 9361 | { "Tangut" , 228 }, |
| 9362 | { "Tang" , 228 }, |
| 9363 | { "Thaana" , 252 }, |
| 9364 | { "Thaa" , 252 }, |
| 9365 | { "Adlam" , 293 }, |
| 9366 | { "Adlm" , 293 }, |
| 9367 | { "Telugu" , 292 }, |
| 9368 | { "Telu" , 292 }, |
| 9369 | { "Cyrillic" , 260 }, |
| 9370 | { "Cyrl" , 260 }, |
| 9371 | { "Zanabazar_Square" , 232 }, |
| 9372 | { "Zanb" , 232 }, |
| 9373 | { "Hangul" , 288 }, |
| 9374 | { "Hang" , 288 }, |
| 9375 | { "Old_South_Arabian" , 179 }, |
| 9376 | { "Sarb" , 179 }, |
| 9377 | { "Ethiopic" , 117 }, |
| 9378 | { "Ethi" , 117 }, |
| 9379 | { "Inherited" , 241 }, |
| 9380 | { "Zinh" , 241 }, |
| 9381 | { "Qaai" , 241 }, |
| 9382 | { "Meroitic_Cursive" , 188 }, |
| 9383 | { "Merc" , 188 }, |
| 9384 | { "Bhaiksuki" , 224 }, |
| 9385 | { "Bhks" , 224 }, |
| 9386 | { "Ahom" , 217 }, |
| 9387 | { "Ahom" , 217 }, |
| 9388 | { "Han" , 246 }, |
| 9389 | { "Hani" , 246 }, |
| 9390 | { "Old_North_Arabian" , 207 }, |
| 9391 | { "Narb" , 207 }, |
| 9392 | { "Armenian" , 253 }, |
| 9393 | { "Armn" , 253 }, |
| 9394 | { "Tamil" , 265 }, |
| 9395 | { "Taml" , 265 }, |
| 9396 | { "Bopomofo" , 255 }, |
| 9397 | { "Bopo" , 255 }, |
| 9398 | { "Bassa_Vah" , 195 }, |
| 9399 | { "Bass" , 195 }, |
| 9400 | { "Sundanese" , 158 }, |
| 9401 | { "Sund" , 158 }, |
| 9402 | { "Old_Permic" , 262 }, |
| 9403 | { "Perm" , 262 }, |
| 9404 | { "Old_Sogdian" , 239 }, |
| 9405 | { "Sogo" , 239 }, |
| 9406 | { "Tagalog" , 284 }, |
| 9407 | { "Tglg" , 284 }, |
| 9408 | { "Malayalam" , 290 }, |
| 9409 | { "Mlym" , 290 }, |
| 9410 | { "Lydian" , 167 }, |
| 9411 | { "Lydi" , 167 }, |
| 9412 | { "Carian" , 166 }, |
| 9413 | { "Cari" , 166 }, |
| 9414 | { "Hiragana" , 270 }, |
| 9415 | { "Hira" , 270 }, |
| 9416 | { "Multani" , 269 }, |
| 9417 | { "Mult" , 269 }, |
| 9418 | { "Meetei_Mayek" , 177 }, |
| 9419 | { "Mtei" , 177 }, |
| 9420 | { "Hanifi_Rohingya" , 250 }, |
| 9421 | { "Rohg" , 250 }, |
| 9422 | { "Vai" , 161 }, |
| 9423 | { "Vaii" , 161 }, |
| 9424 | { "Pahawh_Hmong" , 199 }, |
| 9425 | { "Hmng" , 199 }, |
| 9426 | { "Tagbanwa" , 283 }, |
| 9427 | { "Tagb" , 283 }, |
| 9428 | { "Tai_Le" , 277 }, |
| 9429 | { "Tale" , 277 }, |
| 9430 | { "Kayah_Li" , 280 }, |
| 9431 | { "Kali" , 280 }, |
| 9432 | { "Buginese" , 256 }, |
| 9433 | { "Bugi" , 256 }, |
| 9434 | { "Kharoshthi" , 152 }, |
| 9435 | { "Khar" , 152 }, |
| 9436 | { "Tai_Tham" , 169 }, |
| 9437 | { "Lana" , 169 }, |
| 9438 | { "Old_Italic" , 129 }, |
| 9439 | { "Ital" , 129 }, |
| 9440 | { "Old_Persian" , 151 }, |
| 9441 | { "Xpeo" , 151 }, |
| 9442 | { "Warang_Citi" , 216 }, |
| 9443 | { "Wara" , 216 }, |
| 9444 | { "Latin" , 247 }, |
| 9445 | { "Latn" , 247 }, |
| 9446 | { "Saurashtra" , 162 }, |
| 9447 | { "Saur" , 162 }, |
| 9448 | { "Shavian" , 141 }, |
| 9449 | { "Shaw" , 141 }, |
| 9450 | { "Georgian" , 254 }, |
| 9451 | { "Geor" , 254 }, |
| 9452 | { "Grantha" , 263 }, |
| 9453 | { "Gran" , 263 }, |
| 9454 | { "Duployan" , 244 }, |
| 9455 | { "Dupl" , 244 }, |
| 9456 | { "Braille" , 144 }, |
| 9457 | { "Brai" , 144 }, |
| 9458 | { "Devanagari" , 243 }, |
| 9459 | { "Deva" , 243 }, |
| 9460 | { "Thai" , 111 }, |
| 9461 | { "Thai" , 111 }, |
| 9462 | { "Tibetan" , 113 }, |
| 9463 | { "Tibt" , 113 }, |
| 9464 | { "Tifinagh" , 149 }, |
| 9465 | { "Tfng" , 149 }, |
| 9466 | { "Ugaritic" , 140 }, |
| 9467 | { "Ugar" , 140 }, |
| 9468 | { "Batak" , 184 }, |
| 9469 | { "Batk" , 184 }, |
| 9470 | { "Anatolian_Hieroglyphs" , 218 }, |
| 9471 | { "Hluw" , 218 }, |
| 9472 | { "Greek" , 245 }, |
| 9473 | { "Grek" , 245 }, |
| 9474 | { "Lycian" , 165 }, |
| 9475 | { "Lyci" , 165 }, |
| 9476 | { "Mende_Kikakui" , 204 }, |
| 9477 | { "Mend" , 204 }, |
| 9478 | { "Tai_Viet" , 170 }, |
| 9479 | { "Tavt" , 170 }, |
| 9480 | { "Kaithi" , 286 }, |
| 9481 | { "Kthi" , 286 }, |
| 9482 | { "Ogham" , 120 }, |
| 9483 | { "Ogam" , 120 }, |
| 9484 | { "Inscriptional_Parthian" , 180 }, |
| 9485 | { "Prti" , 180 }, |
| 9486 | { "Cham" , 168 }, |
| 9487 | { "Cham" , 168 }, |
| 9488 | { "Syriac" , 251 }, |
| 9489 | { "Syrc" , 251 }, |
| 9490 | { "Runic" , 121 }, |
| 9491 | { "Runr" , 121 }, |
| 9492 | { "Gothic" , 130 }, |
| 9493 | { "Goth" , 130 }, |
| 9494 | { "Mahajani" , 287 }, |
| 9495 | { "Mahj" , 287 }, |
| 9496 | { "Katakana" , 271 }, |
| 9497 | { "Kana" , 271 }, |
| 9498 | { "Osmanya" , 142 }, |
| 9499 | { "Osma" , 142 }, |
| 9500 | { "New_Tai_Lue" , 147 }, |
| 9501 | { "Talu" , 147 }, |
| 9502 | { "Ol_Chiki" , 160 }, |
| 9503 | { "Olck" , 160 }, |
| 9504 | { "Newa" , 226 }, |
| 9505 | { "Newa" , 226 }, |
| 9506 | { "Limbu" , 304 }, |
| 9507 | { "Limb" , 304 }, |
| 9508 | { "Elbasan" , 197 }, |
| 9509 | { "Elba" , 197 }, |
| 9510 | { "Cherokee" , 118 }, |
| 9511 | { "Cher" , 118 }, |
| 9512 | { "Miao" , 190 }, |
| 9513 | { "Plrd" , 190 }, |
| 9514 | { "Oriya" , 291 }, |
| 9515 | { "Orya" , 291 }, |
| 9516 | { "Medefaidrin" , 236 }, |
| 9517 | { "Medf" , 236 }, |
| 9518 | { "Sharada" , 264 }, |
| 9519 | { "Shrd" , 264 }, |
| 9520 | { "Gujarati" , 266 }, |
| 9521 | { "Gujr" , 266 }, |
| 9522 | { "Nushu" , 230 }, |
| 9523 | { "Nshu" , 230 }, |
| 9524 | { "Chakma" , 274 }, |
| 9525 | { "Cakm" , 274 }, |
| 9526 | { "Gunjala_Gondi" , 302 }, |
| 9527 | { "Gong" , 302 }, |
| 9528 | { "Inscriptional_Pahlavi" , 181 }, |
| 9529 | { "Phli" , 181 }, |
| 9530 | { "Manichaean" , 295 }, |
| 9531 | { "Mani" , 295 }, |
| 9532 | { "Khmer" , 122 }, |
| 9533 | { "Khmr" , 122 }, |
| 9534 | { "Cuneiform" , 154 }, |
| 9535 | { "Xsux" , 154 }, |
| 9536 | { "Khudawadi" , 299 }, |
| 9537 | { "Sind" , 299 }, |
| 9538 | { "Mandaic" , 294 }, |
| 9539 | { "Mand" , 294 }, |
| 9540 | { "Hatran" , 219 }, |
| 9541 | { "Hatr" , 219 }, |
| 9542 | { "Syloti_Nagri" , 275 }, |
| 9543 | { "Sylo" , 275 }, |
| 9544 | { "Nko" , 157 }, |
| 9545 | { "Nkoo" , 157 }, |
| 9546 | { "Canadian_Aboriginal" , 119 }, |
| 9547 | { "Cans" , 119 }, |
| 9548 | { "Meroitic_Hieroglyphs" , 189 }, |
| 9549 | { "Mero" , 189 }, |
| 9550 | { "Phoenician" , 155 }, |
| 9551 | { "Phnx" , 155 }, |
| 9552 | { "Nabataean" , 208 }, |
| 9553 | { "Nbat" , 208 }, |
| 9554 | { "Bengali" , 242 }, |
| 9555 | { "Beng" , 242 }, |
| 9556 | { "Glagolitic" , 261 }, |
| 9557 | { "Glag" , 261 }, |
| 9558 | { "Imperial_Aramaic" , 178 }, |
| 9559 | { "Armi" , 178 }, |
| 9560 | { "Sora_Sompeng" , 192 }, |
| 9561 | { "Sora" , 192 }, |
| 9562 | { "Gurmukhi" , 268 }, |
| 9563 | { "Guru" , 268 }, |
| 9564 | { "Javanese" , 257 }, |
| 9565 | { "Java" , 257 }, |
| 9566 | { "Osage" , 227 }, |
| 9567 | { "Osge" , 227 }, |
| 9568 | { "Phags_Pa" , 273 }, |
| 9569 | { "Phag" , 273 }, |
| 9570 | { "Cypriot" , 258 }, |
| 9571 | { "Cprt" , 258 }, |
| 9572 | { "Kannada" , 279 }, |
| 9573 | { "Knda" , 279 }, |
| 9574 | { "Khojki" , 267 }, |
| 9575 | { "Khoj" , 267 }, |
| 9576 | { "Mongolian" , 272 }, |
| 9577 | { "Mong" , 272 }, |
| 9578 | { "Sinhala" , 303 }, |
| 9579 | { "Sinh" , 303 }, |
| 9580 | { "Brahmi" , 185 }, |
| 9581 | { "Brah" , 185 }, |
| 9582 | { "Pau_Cin_Hau" , 210 }, |
| 9583 | { "Pauc" , 210 }, |
| 9584 | { "Deseret" , 131 }, |
| 9585 | { "Dsrt" , 131 }, |
| 9586 | { "Rejang" , 164 }, |
| 9587 | { "Rjng" , 164 }, |
| 9588 | { "SignWriting" , 222 }, |
| 9589 | { "Sgnw" , 222 }, |
| 9590 | { "Yi" , 289 }, |
| 9591 | { "Yiii" , 289 }, |
| 9592 | { "Balinese" , 153 }, |
| 9593 | { "Bali" , 153 }, |
| 9594 | { "Lao" , 112 }, |
| 9595 | { "Laoo" , 112 }, |
| 9596 | { "Hanunoo" , 282 }, |
| 9597 | { "Hano" , 282 }, |
| 9598 | { "Masaram_Gondi" , 229 }, |
| 9599 | { "Gonm" , 229 }, |
| 9600 | { "Linear_B" , 259 }, |
| 9601 | { "Linb" , 259 }, |
| 9602 | { "Linear_A" , 278 }, |
| 9603 | { "Lina" , 278 }, |
| 9604 | { "Dogra" , 285 }, |
| 9605 | { "Dogr" , 285 }, |
| 9606 | { "Old_Turkic" , 182 }, |
| 9607 | { "Orkh" , 182 }, |
| 9608 | { "Lepcha" , 159 }, |
| 9609 | { "Lepc" , 159 }, |
| 9610 | { "Marchen" , 225 }, |
| 9611 | { "Marc" , 225 }, |
| 9612 | { "Egyptian_Hieroglyphs" , 172 }, |
| 9613 | { "Egyp" , 172 }, |
| 9614 | { "Sogdian" , 297 }, |
| 9615 | { "Sogd" , 297 }, |
| 9616 | { "Caucasian_Albanian" , 194 }, |
| 9617 | { "Aghb" , 194 }, |
| 9618 | { "Makasar" , 235 }, |
| 9619 | { "Maka" , 235 }, |
| 9620 | { "Old_Hungarian" , 221 }, |
| 9621 | { "Hung" , 221 }, |
| 9622 | { "Samaritan" , 173 }, |
| 9623 | { "Samr" , 173 }, |
| 9624 | { "Lisu" , 174 }, |
| 9625 | { "Lisu" , 174 }, |
| 9626 | { "Buhid" , 281 }, |
| 9627 | { "Buhd" , 281 }, |
| 9628 | { "Palmyrene" , 209 }, |
| 9629 | { "Palm" , 209 }, |
| 9630 | { "Tirhuta" , 301 }, |
| 9631 | { "Tirh" , 301 }, |
| 9632 | { "Mro" , 206 }, |
| 9633 | { "Mroo" , 206 }, |
| 9634 | { "Common" , 240 }, |
| 9635 | { "Zyyy" , 240 }, |
| 9636 | { "Coptic" , 249 }, |
| 9637 | { "Copt" , 249 }, |
| 9638 | { "Qaac" , 249 }, |
| 9639 | { "Modi" , 298 }, |
| 9640 | { "Modi" , 298 }, |
| 9641 | { "Arabic" , 248 }, |
| 9642 | { "Arab" , 248 }, |
| 9643 | { "Bamum" , 175 }, |
| 9644 | { "Bamu" , 175 }, |
| 9645 | { "Myanmar" , 276 }, |
| 9646 | { "Mymr" , 276 }, |
| 9647 | { "Siddham" , 213 }, |
| 9648 | { "Sidd" , 213 }, |
| 9649 | { "Soyombo" , 231 }, |
| 9650 | { "Soyo" , 231 }, |
| 9651 | { "Avestan" , 171 }, |
| 9652 | { "Avst" , 171 }, |
| 9653 | { "Hebrew" , 97 }, |
| 9654 | { "Hebr" , 97 }, |
| 9655 | { "Psalter_Pahlavi" , 296 }, |
| 9656 | { "Phlp" , 296 }, |
| 9657 | { "Takri" , 300 }, |
| 9658 | { "Takr" , 300 }, |
| 9659 | }; |
| 9660 | |
| 9661 | static const struct HashTable scriptExtensionHashTable = |
| 9662 | { 298, 511, scriptExtensionTableValue, scriptExtensionTableIndex }; |
| 9663 | |
| 9664 | |
| 9665 | |