details: https://hg.nginx.org/njs/rev/dace17533126
branches:
changeset: 1072:dace17533126
user: Valentin Bartenev
date: Sat Jul 27 03:51:48 2019 +0300
description:
Unicode case tables updated to version 12.1 (May 2019).
diffstat:
njs/test/njs_unit_test.c |2 +-
nxt/nxt_unicode_lower_case.h | 676 +++-
nxt/nxt_unicode_upper_case.h | 789 --
nxt/nxt_utf8.c |2 +-
4 files changed, 1390 insertions(+), 79 deletions(-)
diffs (truncated from 1674 to 1000 lines):
diff -r 0af076f81e2b -r dace17533126 njs/test/njs_unit_test.c
--- a/njs/test/njs_unit_test.c Sat Jul 27 03:51:48 2019 +0300
+++ b/njs/test/njs_unit_test.c Sat Jul 27 03:51:48 2019 +0300
@@ -,7 +,7 @@ static njs_unit_test_t njs_test[] =
"if (s != n && s != n.toLowerCase())"
"a.push(code);"
"} a"),
-
nxt_string("181,305,383,453,456,459,498,837,962,976,977,981,982,1008,1009,1013,7835,8126")
},
+
nxt_string("181,305,383,453,456,459,498,837,962,976,977,981,982,1008,1009,1013,7296,7297,7298,7299,7300,7301,7302,7303,7304,7835,8126")
},
{ nxt_string("var a = [], code;"
"for (code = 0; code <= 1114111; code++) {"
diff -r 0af076f81e2b -r dace17533126 nxt/nxt_unicode_lower_case.h
--- a/nxt/nxt_unicode_lower_case.h Sat Jul 27 03:51:48 2019 +0300
+++ b/nxt/nxt_unicode_lower_case.h Sat Jul 27 03:51:48 2019 +0300
@@ -1,10 +1,10 @@
/*
- * 26 128-bytes blocks, 521 pointers.
- * 14920 bytes on 32-bit platforms, 17000 bytes on 64-bit platforms.
+ * 33 128-bytes blocks, 979 pointers.
+ * 20330 bytes on 32-bit platforms, 24242 bytes on 64-bit platforms.
*/
-#define NXT_UNICODE_MAX_LOWER_CASE 0x10427
+#define NXT_UNICODE_MAX_LOWER_CASE 0x1e921
#define NXT_UNICODE_BLOCK_SIZE 128
@@ -137,7 +137,7 @@ static const uint32_t nxt_unicode_lower
0x00360, 0x00361, 0x00362, 0x00363, 0x00364, 0x00365, 0x00366, 0x00367,
0x00368, 0x00369, 0x0036a, 0x0036b, 0x0036c, 0x0036d, 0x0036e, 0x0036f,
0x00371, 0x00371, 0x00373, 0x00373, 0x00374, 0x00375, 0x00377, 0x00377,
-0x00378, 0x00379, 0x0037a, 0x0037b, 0x0037c, 0x0037d, 0x0037e, 0x0037f,
+0x00378, 0x00379, 0x0037a, 0x0037b, 0x0037c, 0x0037d, 0x0037e, 0x003f3,
};
@@ -215,7 +215,7 @@ static const uint32_t nxt_unicode_lower
0x00511, 0x00511, 0x00513, 0x00513, 0x00515, 0x00515, 0x00517, 0x00517,
0x00519, 0x00519, 0x0051b, 0x0051b, 0x0051d, 0x0051d, 0x0051f, 0x0051f,
0x00521, 0x00521, 0x00523, 0x00523, 0x00525, 0x00525, 0x00527, 0x00527,
-0x00528, 0x00529, 0x0052a, 0x0052b, 0x0052c, 0x0052d, 0x0052e, 0x0052f,
+0x00529, 0x00529, 0x0052b, 0x0052b, 0x0052d, 0x0052d, 0x0052f, 0x0052f,
0x00530, 0x00561, 0x00562, 0x00563, 0x00564, 0x00565, 0x00566, 0x00567,
0x00568, 0x00569, 0x0056a, 0x0056b, 0x0056c, 0x0056d, 0x0056e, 0x0056f,
0x00570, 0x00571, 0x00572, 0x00573, 0x00574, 0x00575, 0x00576, 0x00577,
@@ -251,6 +251,50 @@ static const uint32_t nxt_unicode_lower
};
+static const uint32_t nxt_unicode_lower_case_block_027[128]
+nxt_aligned(64) =
+{
+0x01380, 0x01381, 0x01382, 0x01383, 0x01384, 0x01385, 0x01386, 0x01387,
+0x01388, 0x01389, 0x0138a, 0x0138b, 0x0138c, 0x0138d, 0x0138e, 0x0138f,
+0x01390, 0x01391, 0x01392, 0x01393, 0x01394, 0x01395, 0x01396, 0x01397,
+0x01398, 0x01399, 0x0139a, 0x0139b, 0x0139c, 0x0139d, 0x0139e, 0x0139f,
+0x0ab70, 0x0ab71, 0x0ab72, 0x0ab73, 0x0ab74, 0x0ab75, 0x0ab76, 0x0ab77,
+0x0ab78, 0x0ab79, 0x0ab7a, 0x0ab7b, 0x0ab7c, 0x0ab7d, 0x0ab7e, 0x0ab7f,
+0x0ab80, 0x0ab81, 0x0ab82, 0x0ab83, 0x0ab84, 0x0ab85, 0x0ab86, 0x0ab87,
+0x0ab88, 0x0ab89, 0x0ab8a, 0x0ab8b, 0x0ab8c, 0x0ab8d, 0x0ab8e, 0x0ab8f,
+0x0ab90, 0x0ab91, 0x0ab92, 0x0ab93, 0x0ab94, 0x0ab95, 0x0ab96, 0x0ab97,
+0x0ab98, 0x0ab99, 0x0ab9a, 0x0ab9b, 0x0ab9c, 0x0ab9d, 0x0ab9e, 0x0ab9f,
+0x0aba0, 0x0aba1, 0x0aba2, 0x0aba3, 0x0aba4, 0x0aba5, 0x0aba6, 0x0aba7,
+0x0aba8, 0x0aba9, 0x0abaa, 0x0abab, 0x0abac, 0x0abad, 0x0abae, 0x0abaf,
+0x0abb0, 0x0abb1, 0x0abb2, 0x0abb3, 0x0abb4, 0x0abb5, 0x0abb6, 0x0abb7,
+0x0abb8, 0x0abb9, 0x0abba, 0x0abbb, 0x0abbc, 0x0abbd, 0x0abbe, 0x0abbf,
+0x013f8, 0x013f9, 0x013fa, 0x013fb, 0x013fc, 0x013fd, 0x013f6, 0x013f7,
+0x013f8, 0x013f9, 0x013fa, 0x013fb, 0x013fc, 0x013fd, 0x013fe, 0x013ff,
+};
+
+
+static const uint32_t nxt_unicode_lower_case_block_039[128]
+nxt_aligned(64) =
+{
+0x01c80, 0x01c81, 0x01c82, 0x01c83, 0x01c84, 0x01c85, 0x01c86, 0x01c87,
+0x01c88, 0x01c89, 0x01c8a, 0x01c8b, 0x01c8c, 0x01c8d, 0x01c8e, 0x01c8f,
+0x010d0, 0x010d1, 0x010d2, 0x010d3, 0x010d4, 0x010d5, 0x010d6, 0x010d7,
+0x010d8, 0x010d9, 0x010da, 0x010db, 0x010dc, 0x010dd, 0x010de, 0x010df,
+0x010e0, 0x010e1, 0x010e2, 0x010e3, 0x010e4, 0x010e5, 0x010e6, 0x010e7,
+0x010e8, 0x010e9, 0x010ea, 0x010eb, 0x010ec, 0x010ed, 0x010ee, 0x010ef,
+0x010f0,