20
20
21
21
namespace Rust {
22
22
23
- const uint32_t NUM_ALPHABETIC_RANGES = 1117 ;
23
+ const uint32_t NUM_ALPHABETIC_RANGES = 1141 ;
24
24
const uint32_t NUM_NUMERIC_CODEPOINTS = 1831;
25
25
26
26
const std::map<uint32_t, std::vector<uint32_t>> DECOMPOSITION_MAP = {
@@ -4167,6 +4167,7 @@ const std::array<std::pair<uint32_t, uint32_t>, NUM_ALPHABETIC_RANGES>
4167
4167
{0x0bd7, 0x0bd8},
4168
4168
{0x0c00, 0x0c01},
4169
4169
{0x0c01, 0x0c04},
4170
+ {0x0c04, 0x0c05},
4170
4171
{0x0c05, 0x0c0d},
4171
4172
{0x0c0e, 0x0c11},
4172
4173
{0x0c12, 0x0c29},
@@ -4202,6 +4203,7 @@ const std::array<std::pair<uint32_t, uint32_t>, NUM_ALPHABETIC_RANGES>
4202
4203
{0x0ce0, 0x0ce2},
4203
4204
{0x0ce2, 0x0ce4},
4204
4205
{0x0cf1, 0x0cf3},
4206
+ {0x0cf3, 0x0cf4},
4205
4207
{0x0d00, 0x0d02},
4206
4208
{0x0d02, 0x0d04},
4207
4209
{0x0d04, 0x0d0d},
@@ -4257,7 +4259,7 @@ const std::array<std::pair<uint32_t, uint32_t>, NUM_ALPHABETIC_RANGES>
4257
4259
{0x0f49, 0x0f6d},
4258
4260
{0x0f71, 0x0f7f},
4259
4261
{0x0f7f, 0x0f80},
4260
- {0x0f80 , 0x0f82 },
4262
+ {0x0f80, 0x0f84 },
4261
4263
{0x0f88, 0x0f8d},
4262
4264
{0x0f8d, 0x0f98},
4263
4265
{0x0f99, 0x0fbd},
@@ -4758,6 +4760,7 @@ const std::array<std::pair<uint32_t, uint32_t>, NUM_ALPHABETIC_RANGES>
4758
4760
{0x11071, 0x11073},
4759
4761
{0x11073, 0x11075},
4760
4762
{0x11075, 0x11076},
4763
+ {0x11080, 0x11082},
4761
4764
{0x11082, 0x11083},
4762
4765
{0x11083, 0x110b0},
4763
4766
{0x110b0, 0x110b3},
@@ -4794,6 +4797,8 @@ const std::array<std::pair<uint32_t, uint32_t>, NUM_ALPHABETIC_RANGES>
4794
4797
{0x11234, 0x11235},
4795
4798
{0x11237, 0x11238},
4796
4799
{0x1123e, 0x1123f},
4800
+ {0x1123f, 0x11241},
4801
+ {0x11241, 0x11242},
4797
4802
{0x11280, 0x11287},
4798
4803
{0x11288, 0x11289},
4799
4804
{0x1128a, 0x1128e},
@@ -4948,12 +4953,22 @@ const std::array<std::pair<uint32_t, uint32_t>, NUM_ALPHABETIC_RANGES>
4948
4953
{0x11ee0, 0x11ef3},
4949
4954
{0x11ef3, 0x11ef5},
4950
4955
{0x11ef5, 0x11ef7},
4956
+ {0x11f00, 0x11f02},
4957
+ {0x11f02, 0x11f03},
4958
+ {0x11f03, 0x11f04},
4959
+ {0x11f04, 0x11f11},
4960
+ {0x11f12, 0x11f34},
4961
+ {0x11f34, 0x11f36},
4962
+ {0x11f36, 0x11f3b},
4963
+ {0x11f3e, 0x11f40},
4964
+ {0x11f40, 0x11f41},
4951
4965
{0x11fb0, 0x11fb1},
4952
4966
{0x12000, 0x1239a},
4953
4967
{0x12400, 0x1246f},
4954
4968
{0x12480, 0x12544},
4955
4969
{0x12f90, 0x12ff1},
4956
- {0x13000 , 0x1342f },
4970
+ {0x13000, 0x13430},
4971
+ {0x13441, 0x13447},
4957
4972
{0x14400, 0x14647},
4958
4973
{0x16800, 0x16a39},
4959
4974
{0x16a40, 0x16a5f},
@@ -4980,7 +4995,9 @@ const std::array<std::pair<uint32_t, uint32_t>, NUM_ALPHABETIC_RANGES>
4980
4995
{0x1aff5, 0x1affc},
4981
4996
{0x1affd, 0x1afff},
4982
4997
{0x1b000, 0x1b123},
4998
+ {0x1b132, 0x1b133},
4983
4999
{0x1b150, 0x1b153},
5000
+ {0x1b155, 0x1b156},
4984
5001
{0x1b164, 0x1b168},
4985
5002
{0x1b170, 0x1b2fc},
4986
5003
{0x1bc00, 0x1bc6b},
@@ -5021,16 +5038,21 @@ const std::array<std::pair<uint32_t, uint32_t>, NUM_ALPHABETIC_RANGES>
5021
5038
{0x1df00, 0x1df0a},
5022
5039
{0x1df0a, 0x1df0b},
5023
5040
{0x1df0b, 0x1df1f},
5041
+ {0x1df25, 0x1df2b},
5024
5042
{0x1e000, 0x1e007},
5025
5043
{0x1e008, 0x1e019},
5026
5044
{0x1e01b, 0x1e022},
5027
5045
{0x1e023, 0x1e025},
5028
5046
{0x1e026, 0x1e02b},
5047
+ {0x1e030, 0x1e06e},
5048
+ {0x1e08f, 0x1e090},
5029
5049
{0x1e100, 0x1e12d},
5030
5050
{0x1e137, 0x1e13e},
5031
5051
{0x1e14e, 0x1e14f},
5032
5052
{0x1e290, 0x1e2ae},
5033
5053
{0x1e2c0, 0x1e2ec},
5054
+ {0x1e4d0, 0x1e4eb},
5055
+ {0x1e4eb, 0x1e4ec},
5034
5056
{0x1e7e0, 0x1e7e7},
5035
5057
{0x1e7e8, 0x1e7ec},
5036
5058
{0x1e7ed, 0x1e7ef},
@@ -5076,12 +5098,14 @@ const std::array<std::pair<uint32_t, uint32_t>, NUM_ALPHABETIC_RANGES>
5076
5098
{0x1f150, 0x1f16a},
5077
5099
{0x1f170, 0x1f18a},
5078
5100
{0x20000, 0x2a6e0},
5079
- {0x2a700 , 0x2b739 },
5101
+ {0x2a700, 0x2b73a },
5080
5102
{0x2b740, 0x2b81e},
5081
5103
{0x2b820, 0x2cea2},
5082
5104
{0x2ceb0, 0x2ebe1},
5105
+ {0x2ebf0, 0x2ee5e},
5083
5106
{0x2f800, 0x2fa1e},
5084
5107
{0x30000, 0x3134b},
5108
+ {0x31350, 0x323b0},
5085
5109
// clang-format on
5086
5110
}};
5087
5111
@@ -5205,4 +5229,130 @@ const std::array<uint32_t, NUM_NUMERIC_CODEPOINTS> NUMERIC_CODEPOINTS = {{
5205
5229
// clang-format on
5206
5230
}};
5207
5231
5232
+ const std::array<std::pair<uint32_t, uint32_t>, 74> NFC_QC_NO_RANGES = {{
5233
+ // clang-format off
5234
+ {0x0340, 0x0342},
5235
+ {0x0343, 0x0345},
5236
+ {0x0374, 0x0375},
5237
+ {0x037e, 0x037f},
5238
+ {0x0387, 0x0388},
5239
+ {0x0958, 0x0960},
5240
+ {0x09dc, 0x09de},
5241
+ {0x09df, 0x09e0},
5242
+ {0x0a33, 0x0a34},
5243
+ {0x0a36, 0x0a37},
5244
+ {0x0a59, 0x0a5c},
5245
+ {0x0a5e, 0x0a5f},
5246
+ {0x0b5c, 0x0b5e},
5247
+ {0x0f43, 0x0f44},
5248
+ {0x0f4d, 0x0f4e},
5249
+ {0x0f52, 0x0f53},
5250
+ {0x0f57, 0x0f58},
5251
+ {0x0f5c, 0x0f5d},
5252
+ {0x0f69, 0x0f6a},
5253
+ {0x0f73, 0x0f74},
5254
+ {0x0f75, 0x0f77},
5255
+ {0x0f78, 0x0f79},
5256
+ {0x0f81, 0x0f82},
5257
+ {0x0f93, 0x0f94},
5258
+ {0x0f9d, 0x0f9e},
5259
+ {0x0fa2, 0x0fa3},
5260
+ {0x0fa7, 0x0fa8},
5261
+ {0x0fac, 0x0fad},
5262
+ {0x0fb9, 0x0fba},
5263
+ {0x1f71, 0x1f72},
5264
+ {0x1f73, 0x1f74},
5265
+ {0x1f75, 0x1f76},
5266
+ {0x1f77, 0x1f78},
5267
+ {0x1f79, 0x1f7a},
5268
+ {0x1f7b, 0x1f7c},
5269
+ {0x1f7d, 0x1f7e},
5270
+ {0x1fbb, 0x1fbc},
5271
+ {0x1fbe, 0x1fbf},
5272
+ {0x1fc9, 0x1fca},
5273
+ {0x1fcb, 0x1fcc},
5274
+ {0x1fd3, 0x1fd4},
5275
+ {0x1fdb, 0x1fdc},
5276
+ {0x1fe3, 0x1fe4},
5277
+ {0x1feb, 0x1fec},
5278
+ {0x1fee, 0x1ff0},
5279
+ {0x1ff9, 0x1ffa},
5280
+ {0x1ffb, 0x1ffc},
5281
+ {0x1ffd, 0x1ffe},
5282
+ {0x2000, 0x2002},
5283
+ {0x2126, 0x2127},
5284
+ {0x212a, 0x212c},
5285
+ {0x2329, 0x232a},
5286
+ {0x232a, 0x232b},
5287
+ {0x2adc, 0x2add},
5288
+ {0xf900, 0xfa0e},
5289
+ {0xfa10, 0xfa11},
5290
+ {0xfa12, 0xfa13},
5291
+ {0xfa15, 0xfa1f},
5292
+ {0xfa20, 0xfa21},
5293
+ {0xfa22, 0xfa23},
5294
+ {0xfa25, 0xfa27},
5295
+ {0xfa2a, 0xfa6e},
5296
+ {0xfa70, 0xfada},
5297
+ {0xfb1d, 0xfb1e},
5298
+ {0xfb1f, 0xfb20},
5299
+ {0xfb2a, 0xfb37},
5300
+ {0xfb38, 0xfb3d},
5301
+ {0xfb3e, 0xfb3f},
5302
+ {0xfb40, 0xfb42},
5303
+ {0xfb43, 0xfb45},
5304
+ {0xfb46, 0xfb4f},
5305
+ {0x1d15e, 0x1d165},
5306
+ {0x1d1bb, 0x1d1c1},
5307
+ {0x2f800, 0x2fa1e},
5308
+ // clang-format on
5309
+ }};
5310
+ const std::array<std::pair<uint32_t, uint32_t>, 43> NFC_QC_MAYBE_RANGES = {{
5311
+ // clang-format off
5312
+ {0x0300, 0x0305},
5313
+ {0x0306, 0x030d},
5314
+ {0x030f, 0x0310},
5315
+ {0x0311, 0x0312},
5316
+ {0x0313, 0x0315},
5317
+ {0x031b, 0x031c},
5318
+ {0x0323, 0x0329},
5319
+ {0x032d, 0x032f},
5320
+ {0x0330, 0x0332},
5321
+ {0x0338, 0x0339},
5322
+ {0x0342, 0x0343},
5323
+ {0x0345, 0x0346},
5324
+ {0x0653, 0x0656},
5325
+ {0x093c, 0x093d},
5326
+ {0x09be, 0x09bf},
5327
+ {0x09d7, 0x09d8},
5328
+ {0x0b3e, 0x0b3f},
5329
+ {0x0b56, 0x0b57},
5330
+ {0x0b57, 0x0b58},
5331
+ {0x0bbe, 0x0bbf},
5332
+ {0x0bd7, 0x0bd8},
5333
+ {0x0c56, 0x0c57},
5334
+ {0x0cc2, 0x0cc3},
5335
+ {0x0cd5, 0x0cd7},
5336
+ {0x0d3e, 0x0d3f},
5337
+ {0x0d57, 0x0d58},
5338
+ {0x0dca, 0x0dcb},
5339
+ {0x0dcf, 0x0dd0},
5340
+ {0x0ddf, 0x0de0},
5341
+ {0x102e, 0x102f},
5342
+ {0x1161, 0x1176},
5343
+ {0x11a8, 0x11c3},
5344
+ {0x1b35, 0x1b36},
5345
+ {0x3099, 0x309b},
5346
+ {0x110ba, 0x110bb},
5347
+ {0x11127, 0x11128},
5348
+ {0x1133e, 0x1133f},
5349
+ {0x11357, 0x11358},
5350
+ {0x114b0, 0x114b1},
5351
+ {0x114ba, 0x114bb},
5352
+ {0x114bd, 0x114be},
5353
+ {0x115af, 0x115b0},
5354
+ {0x11930, 0x11931},
5355
+ // clang-format on
5356
+ }};
5357
+
5208
5358
} // namespace Rust
0 commit comments