summaryrefslogtreecommitdiff
path: root/strings
diff options
context:
space:
mode:
authorbar@bar.mysql.r18.ru <>2003-05-23 18:39:55 +0500
committerbar@bar.mysql.r18.ru <>2003-05-23 18:39:55 +0500
commit78c7d409862af829e6800abf3c9ed0bef7449016 (patch)
tree910998d8cf1dff260d939c93d709b4e1b66df190 /strings
parent8192d169a2dea5ec8a5855440e5eb1c167c8ce7c (diff)
downloadmariadb-git-78c7d409862af829e6800abf3c9ed0bef7449016.tar.gz
BINARY collations for every character set
Diffstat (limited to 'strings')
-rw-r--r--strings/ctype-big5.c27
-rw-r--r--strings/ctype-euc_kr.c28
-rw-r--r--strings/ctype-gb2312.c27
-rw-r--r--strings/ctype-gbk.c27
-rw-r--r--strings/ctype-latin1.c29
-rw-r--r--strings/ctype-sjis.c26
-rw-r--r--strings/ctype-tis620.c27
-rw-r--r--strings/ctype-ucs2.c28
-rw-r--r--strings/ctype-ujis.c24
-rw-r--r--strings/ctype-utf8.c28
10 files changed, 251 insertions, 20 deletions
diff --git a/strings/ctype-big5.c b/strings/ctype-big5.c
index 3f7218b20fc..10b6898ce24 100644
--- a/strings/ctype-big5.c
+++ b/strings/ctype-big5.c
@@ -6262,7 +6262,7 @@ static MY_CHARSET_HANDLER my_charset_big5_handler=
my_scan_8bit
};
-CHARSET_INFO my_charset_big5_chinese_ci =
+CHARSET_INFO my_charset_big5_chinese_ci=
{
1,0,0, /* number */
MY_CS_COMPILED|MY_CS_PRIMARY|MY_CS_STRNXFRM, /* state */
@@ -6275,7 +6275,8 @@ CHARSET_INFO my_charset_big5_chinese_ci =
sort_order_big5,
NULL, /* tab_to_uni */
NULL, /* tab_from_uni */
- "","",
+ "",
+ "",
1, /* strxfrm_multiply */
2, /* mbmaxlen */
0,
@@ -6284,5 +6285,27 @@ CHARSET_INFO my_charset_big5_chinese_ci =
};
+CHARSET_INFO my_charset_big5_bin=
+{
+ 84,0,0, /* number */
+ MY_CS_COMPILED|MY_CS_BINSORT, /* state */
+ "big5", /* cs name */
+ "big5_bin", /* name */
+ "", /* comment */
+ ctype_big5,
+ to_lower_big5,
+ to_upper_big5,
+ sort_order_big5,
+ NULL, /* tab_to_uni */
+ NULL, /* tab_from_uni */
+ "",
+ "",
+ 0, /* strxfrm_multiply */
+ 2, /* mbmaxlen */
+ 0,
+ &my_charset_big5_handler,
+ &my_collation_bin_handler
+};
+
#endif
diff --git a/strings/ctype-euc_kr.c b/strings/ctype-euc_kr.c
index 8c5b394cc1f..4a5757bf5c4 100644
--- a/strings/ctype-euc_kr.c
+++ b/strings/ctype-euc_kr.c
@@ -8671,7 +8671,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
};
-CHARSET_INFO my_charset_euckr_korean_ci =
+CHARSET_INFO my_charset_euckr_korean_ci=
{
19,0,0, /* number */
MY_CS_COMPILED|MY_CS_PRIMARY, /* state */
@@ -8684,7 +8684,8 @@ CHARSET_INFO my_charset_euckr_korean_ci =
sort_order_euc_kr,
NULL, /* tab_to_uni */
NULL, /* tab_from_uni */
- "","",
+ "",
+ "",
0, /* strxfrm_multiply */
2, /* mbmaxlen */
0,
@@ -8692,4 +8693,27 @@ CHARSET_INFO my_charset_euckr_korean_ci =
&my_collation_ci_handler
};
+
+CHARSET_INFO my_charset_euckr_bin=
+{
+ 85,0,0, /* number */
+ MY_CS_COMPILED|MY_CS_BINSORT, /* state */
+ "euckr", /* cs name */
+ "euckr_bin", /* name */
+ "", /* comment */
+ ctype_euc_kr,
+ to_lower_euc_kr,
+ to_upper_euc_kr,
+ sort_order_euc_kr,
+ NULL, /* tab_to_uni */
+ NULL, /* tab_from_uni */
+ "",
+ "",
+ 0, /* strxfrm_multiply */
+ 2, /* mbmaxlen */
+ 0,
+ &my_charset_handler,
+ &my_collation_bin_handler
+};
+
#endif
diff --git a/strings/ctype-gb2312.c b/strings/ctype-gb2312.c
index b3aa58bb38a..378931eecc7 100644
--- a/strings/ctype-gb2312.c
+++ b/strings/ctype-gb2312.c
@@ -5721,7 +5721,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
};
-CHARSET_INFO my_charset_gb2312_chinese_ci =
+CHARSET_INFO my_charset_gb2312_chinese_ci=
{
24,0,0, /* number */
MY_CS_COMPILED|MY_CS_PRIMARY, /* state */
@@ -5734,7 +5734,8 @@ CHARSET_INFO my_charset_gb2312_chinese_ci =
sort_order_gb2312,
NULL, /* tab_to_uni */
NULL, /* tab_from_uni */
- "","",
+ "",
+ "",
0, /* strxfrm_multiply */
2, /* mbmaxlen */
0,
@@ -5742,4 +5743,26 @@ CHARSET_INFO my_charset_gb2312_chinese_ci =
&my_collation_ci_handler
};
+CHARSET_INFO my_charset_gb2312_bin=
+{
+ 86,0,0, /* number */
+ MY_CS_COMPILED|MY_CS_BINSORT, /* state */
+ "gb2312", /* cs name */
+ "gb2312_bin", /* name */
+ "", /* comment */
+ ctype_gb2312,
+ to_lower_gb2312,
+ to_upper_gb2312,
+ sort_order_gb2312,
+ NULL, /* tab_to_uni */
+ NULL, /* tab_from_uni */
+ "",
+ "",
+ 0, /* strxfrm_multiply */
+ 2, /* mbmaxlen */
+ 0,
+ &my_charset_handler,
+ &my_collation_bin_handler
+};
+
#endif
diff --git a/strings/ctype-gbk.c b/strings/ctype-gbk.c
index 9d249143db8..58d281ae485 100644
--- a/strings/ctype-gbk.c
+++ b/strings/ctype-gbk.c
@@ -9918,7 +9918,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
};
-CHARSET_INFO my_charset_gbk_chinese_ci =
+CHARSET_INFO my_charset_gbk_chinese_ci=
{
28,0,0, /* number */
MY_CS_COMPILED|MY_CS_PRIMARY|MY_CS_STRNXFRM, /* state */
@@ -9931,7 +9931,8 @@ CHARSET_INFO my_charset_gbk_chinese_ci =
sort_order_gbk,
NULL, /* tab_to_uni */
NULL, /* tab_from_uni */
- "","",
+ "",
+ "",
1, /* strxfrm_multiply */
2, /* mbmaxlen */
0,
@@ -9939,5 +9940,27 @@ CHARSET_INFO my_charset_gbk_chinese_ci =
&my_collation_ci_handler
};
+CHARSET_INFO my_charset_gbk_bin=
+{
+ 87,0,0, /* number */
+ MY_CS_COMPILED|MY_CS_BINSORT, /* state */
+ "gbk", /* cs name */
+ "gbk_bin", /* name */
+ "", /* comment */
+ ctype_gbk,
+ to_lower_gbk,
+ to_upper_gbk,
+ sort_order_gbk,
+ NULL, /* tab_to_uni */
+ NULL, /* tab_from_uni */
+ "",
+ "",
+ 0, /* strxfrm_multiply */
+ 2, /* mbmaxlen */
+ 0,
+ &my_charset_handler,
+ &my_collation_bin_handler
+};
+
#endif
diff --git a/strings/ctype-latin1.c b/strings/ctype-latin1.c
index 5ac60326e62..b0c60e2e3eb 100644
--- a/strings/ctype-latin1.c
+++ b/strings/ctype-latin1.c
@@ -199,7 +199,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
};
-CHARSET_INFO my_charset_latin1 =
+CHARSET_INFO my_charset_latin1=
{
8,0,0, /* number */
MY_CS_COMPILED | MY_CS_PRIMARY, /* state */
@@ -428,7 +428,7 @@ static int my_strnxfrm_latin1_de(CHARSET_INFO *cs __attribute__((unused)),
}
-static MY_COLLATION_HANDLER my_collation_german2_ci_handler =
+static MY_COLLATION_HANDLER my_collation_german2_ci_handler=
{
my_strnncoll_latin1_de,
my_strnncollsp_latin1_de,
@@ -440,7 +440,7 @@ static MY_COLLATION_HANDLER my_collation_german2_ci_handler =
};
-CHARSET_INFO my_charset_latin1_german2_ci =
+CHARSET_INFO my_charset_latin1_german2_ci=
{
31,0,0, /* number */
MY_CS_COMPILED|MY_CS_STRNXFRM, /* state */
@@ -461,3 +461,26 @@ CHARSET_INFO my_charset_latin1_german2_ci =
&my_collation_german2_ci_handler
};
+
+CHARSET_INFO my_charset_latin1_bin=
+{
+ 47,0,0, /* number */
+ MY_CS_COMPILED|MY_CS_BINSORT, /* state */
+ "latin1", /* cs name */
+ "latin1_bin", /* name */
+ "", /* comment */
+ ctype_latin1,
+ to_lower_latin1,
+ to_upper_latin1,
+ sort_order_latin1_de,
+ latin1_uni, /* tab_to_uni */
+ NULL, /* tab_from_uni */
+ "",
+ "",
+ 0, /* strxfrm_multiply */
+ 1, /* mbmaxlen */
+ 0,
+ &my_charset_handler,
+ &my_collation_bin_handler
+};
+
diff --git a/strings/ctype-sjis.c b/strings/ctype-sjis.c
index 3e33fb3810a..00d51dd23b5 100644
--- a/strings/ctype-sjis.c
+++ b/strings/ctype-sjis.c
@@ -4505,7 +4505,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
};
-CHARSET_INFO my_charset_sjis_japanese_ci =
+CHARSET_INFO my_charset_sjis_japanese_ci=
{
13,0,0, /* number */
MY_CS_COMPILED|MY_CS_PRIMARY|MY_CS_STRNXFRM, /* state */
@@ -4518,13 +4518,35 @@ CHARSET_INFO my_charset_sjis_japanese_ci =
sort_order_sjis,
NULL, /* tab_to_uni */
NULL, /* tab_from_uni */
- "","",
+ "",
+ "",
1, /* strxfrm_multiply */
2, /* mbmaxlen */
0,
&my_charset_handler,
&my_collation_ci_handler
+};
+CHARSET_INFO my_charset_sjis_bin=
+{
+ 88,0,0, /* number */
+ MY_CS_COMPILED|MY_CS_BINSORT, /* state */
+ "sjis", /* cs name */
+ "sjis_bin", /* name */
+ "", /* comment */
+ ctype_sjis,
+ to_lower_sjis,
+ to_upper_sjis,
+ sort_order_sjis,
+ NULL, /* tab_to_uni */
+ NULL, /* tab_from_uni */
+ "",
+ "",
+ 0, /* strxfrm_multiply */
+ 2, /* mbmaxlen */
+ 0,
+ &my_charset_handler,
+ &my_collation_bin_handler
};
#endif
diff --git a/strings/ctype-tis620.c b/strings/ctype-tis620.c
index 8574b3d7d84..ab51ddd013f 100644
--- a/strings/ctype-tis620.c
+++ b/strings/ctype-tis620.c
@@ -725,7 +725,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
-CHARSET_INFO my_charset_tis620_thai_ci =
+CHARSET_INFO my_charset_tis620_thai_ci=
{
18,0,0, /* number */
MY_CS_COMPILED|MY_CS_PRIMARY|MY_CS_STRNXFRM, /* state */
@@ -738,7 +738,8 @@ CHARSET_INFO my_charset_tis620_thai_ci =
sort_order_tis620,
NULL, /* tab_to_uni */
NULL, /* tab_from_uni */
- "","",
+ "",
+ "",
4, /* strxfrm_multiply */
1, /* mbmaxlen */
0,
@@ -746,5 +747,27 @@ CHARSET_INFO my_charset_tis620_thai_ci =
&my_collation_ci_handler
};
+CHARSET_INFO my_charset_tis620_bin=
+{
+ 89,0,0, /* number */
+ MY_CS_COMPILED|MY_CS_BINSORT, /* state */
+ "tis620", /* cs name */
+ "tis620_bin", /* name */
+ "", /* comment */
+ ctype_tis620,
+ to_lower_tis620,
+ to_upper_tis620,
+ sort_order_tis620,
+ NULL, /* tab_to_uni */
+ NULL, /* tab_from_uni */
+ "",
+ "",
+ 0, /* strxfrm_multiply */
+ 1, /* mbmaxlen */
+ 0,
+ &my_charset_handler,
+ &my_collation_bin_handler
+};
+
#endif
diff --git a/strings/ctype-ucs2.c b/strings/ctype-ucs2.c
index 3e3981f1be9..17bc920a381 100644
--- a/strings/ctype-ucs2.c
+++ b/strings/ctype-ucs2.c
@@ -1035,7 +1035,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
-CHARSET_INFO my_charset_ucs2_general_ci =
+CHARSET_INFO my_charset_ucs2_general_ci=
{
35,0,0, /* number */
MY_CS_COMPILED|MY_CS_PRIMARY|MY_CS_STRNXFRM|MY_CS_UNICODE, /* state */
@@ -1048,7 +1048,8 @@ CHARSET_INFO my_charset_ucs2_general_ci =
to_upper_ucs2, /* sort_order */
NULL, /* tab_to_uni */
NULL, /* tab_from_uni */
- "","",
+ "",
+ "",
1, /* strxfrm_multiply */
2, /* mbmaxlen */
0,
@@ -1057,4 +1058,27 @@ CHARSET_INFO my_charset_ucs2_general_ci =
};
+CHARSET_INFO my_charset_ucs2_bin=
+{
+ 90,0,0, /* number */
+ MY_CS_COMPILED|MY_CS_BINSORT|MY_CS_UNICODE, /* state */
+ "ucs2", /* cs name */
+ "ucs2_bin", /* name */
+ "", /* comment */
+ ctype_ucs2, /* ctype */
+ to_lower_ucs2, /* to_lower */
+ to_upper_ucs2, /* to_upper */
+ to_upper_ucs2, /* sort_order */
+ NULL, /* tab_to_uni */
+ NULL, /* tab_from_uni */
+ "",
+ "",
+ 0, /* strxfrm_multiply */
+ 2, /* mbmaxlen */
+ 0,
+ &my_charset_handler,
+ &my_collation_bin_handler
+};
+
+
#endif
diff --git a/strings/ctype-ujis.c b/strings/ctype-ujis.c
index bf81269059c..eb31c49013a 100644
--- a/strings/ctype-ujis.c
+++ b/strings/ctype-ujis.c
@@ -8463,7 +8463,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
-CHARSET_INFO my_charset_ujis_japanese_ci =
+CHARSET_INFO my_charset_ujis_japanese_ci=
{
12,0,0, /* number */
MY_CS_COMPILED|MY_CS_PRIMARY, /* state */
@@ -8485,4 +8485,26 @@ CHARSET_INFO my_charset_ujis_japanese_ci =
};
+CHARSET_INFO my_charset_ujis_bin=
+{
+ 91,0,0, /* number */
+ MY_CS_COMPILED|MY_CS_BINSORT, /* state */
+ "ujis", /* cs name */
+ "ujis_bin", /* name */
+ "", /* comment */
+ ctype_ujis,
+ to_lower_ujis,
+ to_upper_ujis,
+ sort_order_ujis,
+ NULL, /* tab_to_uni */
+ NULL, /* tab_from_uni */
+ "","",
+ 0, /* strxfrm_multiply */
+ 3, /* mbmaxlen */
+ 0,
+ &my_charset_handler,
+ &my_collation_bin_handler
+};
+
+
#endif
diff --git a/strings/ctype-utf8.c b/strings/ctype-utf8.c
index 16e42385300..4d9c735de21 100644
--- a/strings/ctype-utf8.c
+++ b/strings/ctype-utf8.c
@@ -1988,7 +1988,7 @@ static MY_CHARSET_HANDLER my_charset_handler=
-CHARSET_INFO my_charset_utf8_general_ci =
+CHARSET_INFO my_charset_utf8_general_ci=
{
33,0,0, /* number */
MY_CS_COMPILED|MY_CS_PRIMARY|MY_CS_STRNXFRM|MY_CS_UNICODE, /* state */
@@ -2001,7 +2001,8 @@ CHARSET_INFO my_charset_utf8_general_ci =
to_upper_utf8, /* sort_order */
NULL, /* tab_to_uni */
NULL, /* tab_from_uni */
- "","",
+ "",
+ "",
1, /* strxfrm_multiply */
3, /* mbmaxlen */
0,
@@ -2010,6 +2011,29 @@ CHARSET_INFO my_charset_utf8_general_ci =
};
+CHARSET_INFO my_charset_utf8_bin=
+{
+ 83,0,0, /* number */
+ MY_CS_COMPILED|MY_CS_BINSORT|MY_CS_UNICODE, /* state */
+ "utf8", /* cs name */
+ "utf8_bin", /* name */
+ "", /* comment */
+ ctype_utf8, /* ctype */
+ to_lower_utf8, /* to_lower */
+ to_upper_utf8, /* to_upper */
+ to_upper_utf8, /* sort_order */
+ NULL, /* tab_to_uni */
+ NULL, /* tab_from_uni */
+ "",
+ "",
+ 0, /* strxfrm_multiply */
+ 3, /* mbmaxlen */
+ 0,
+ &my_charset_handler,
+ &my_collation_ci_handler
+};
+
+
#ifdef MY_TEST_UTF8
#include <stdio.h>