Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
0300bac6
Commit
0300bac6
authored
Mar 29, 2002
by
bar@gw.udmsearch.izhnet.ru
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
charset<->unicode conversion tables and routines
some warnings fixes
parent
d17fd202
Changes
14
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
1371 additions
and
342 deletions
+1371
-342
include/m_ctype.h
include/m_ctype.h
+25
-5
mysys/hash.c
mysys/hash.c
+2
-1
strings/ctype-big5.c
strings/ctype-big5.c
+7
-6
strings/ctype-czech.c
strings/ctype-czech.c
+3
-3
strings/ctype-euc_kr.c
strings/ctype-euc_kr.c
+4
-3
strings/ctype-gb2312.c
strings/ctype-gb2312.c
+4
-3
strings/ctype-gbk.c
strings/ctype-gbk.c
+7
-6
strings/ctype-latin1_de.c
strings/ctype-latin1_de.c
+3
-3
strings/ctype-simple.c
strings/ctype-simple.c
+23
-0
strings/ctype-sjis.c
strings/ctype-sjis.c
+7
-6
strings/ctype-tis620.c
strings/ctype-tis620.c
+3
-3
strings/ctype-ujis.c
strings/ctype-ujis.c
+4
-3
strings/ctype-utf8.c
strings/ctype-utf8.c
+4
-4
strings/ctype.c
strings/ctype.c
+1275
-296
No files found.
include/m_ctype.h
View file @
0300bac6
...
...
@@ -42,7 +42,11 @@ typedef struct unicase_info_st {
#define MY_CS_TOOSMALL -1
#define MY_CS_TOOFEW(n) (-1-(n))
typedef
struct
my_uni_idx_st
{
uint16
from
;
uint16
to
;
uchar
*
tab
;
}
MY_UNI_IDX
;
typedef
struct
charset_info_st
...
...
@@ -53,7 +57,10 @@ typedef struct charset_info_st
uchar
*
to_lower
;
uchar
*
to_upper
;
uchar
*
sort_order
;
uint16
*
tab_to_uni
;
MY_UNI_IDX
*
tab_from_uni
;
/* Collation routines */
uint
strxfrm_multiply
;
int
(
*
strnncoll
)(
struct
charset_info_st
*
,
const
uchar
*
,
uint
,
const
uchar
*
,
uint
);
...
...
@@ -62,12 +69,19 @@ typedef struct charset_info_st
my_bool
(
*
like_range
)(
struct
charset_info_st
*
,
const
char
*
,
uint
,
pchar
,
uint
,
char
*
,
char
*
,
uint
*
,
uint
*
);
/* Multibyte routines */
uint
mbmaxlen
;
int
(
*
ismbchar
)(
struct
charset_info_st
*
,
const
char
*
,
const
char
*
);
my_bool
(
*
ismbhead
)(
struct
charset_info_st
*
,
uint
);
int
(
*
mbcharlen
)(
struct
charset_info_st
*
,
uint
);
/* Unicode convertion */
int
(
*
mb_wc
)(
struct
charset_info_st
*
cs
,
my_wc_t
*
wc
,
const
unsigned
char
*
s
,
const
unsigned
char
*
e
);
int
(
*
wc_mb
)(
struct
charset_info_st
*
cs
,
my_wc_t
wc
,
unsigned
char
*
s
,
unsigned
char
*
e
);
/* Functions for case convertion */
void
(
*
caseup_str
)(
struct
charset_info_st
*
,
char
*
);
void
(
*
casedn_str
)(
struct
charset_info_st
*
,
char
*
);
...
...
@@ -106,6 +120,12 @@ extern void my_casedn_8bit(CHARSET_INFO *, char *, uint);
extern
int
my_strcasecmp_8bit
(
CHARSET_INFO
*
cs
,
const
char
*
,
const
char
*
);
extern
int
my_strncasecmp_8bit
(
CHARSET_INFO
*
cs
,
const
char
*
,
const
char
*
,
uint
);
int
my_mb_wc_8bit
(
CHARSET_INFO
*
cs
,
my_wc_t
*
wc
,
const
unsigned
char
*
s
,
const
unsigned
char
*
e
);
int
my_wc_mb_8bit
(
CHARSET_INFO
*
cs
,
my_wc_t
wc
,
unsigned
char
*
s
,
unsigned
char
*
e
);
#ifdef USE_MB
/* Functions for multibyte charsets */
extern
void
my_caseup_str_mb
(
CHARSET_INFO
*
,
char
*
);
...
...
@@ -229,7 +249,7 @@ int my_strcasecmp_utf8(CHARSET_INFO *cs, const char *s, const char *t);
int
my_strncasecmp_utf8
(
CHARSET_INFO
*
cs
,
const
char
*
s
,
const
char
*
t
,
uint
l
);
int
my_utf8_uni
(
CHARSET_INFO
*
cs
,
my_wc_t
*
p
,
const
uchar
*
s
,
const
uchar
*
e
);
int
my_uni_utf8
(
CHARSET_INFO
*
cs
,
my_wc_t
pwc
,
uchar
*
b
,
uchar
*
e
);
int
my_uni_utf8
(
CHARSET_INFO
*
cs
,
my_wc_t
wc
,
uchar
*
b
,
uchar
*
e
);
#endif
#define _U 01
/* Upper case */
...
...
mysys/hash.c
View file @
0300bac6
...
...
@@ -114,7 +114,8 @@ static uint hash_rec_mask(HASH *hash,HASH_LINK *pos,uint buffmax,
/* Calc hashvalue for a key */
static
uint
calc_hashnr
(
CHARSET_INFO
*
cs
,
const
byte
*
key
,
uint
length
)
static
uint
calc_hashnr
(
CHARSET_INFO
*
cs
__attribute__
((
unused
)),
const
byte
*
key
,
uint
length
)
{
register
uint
nr
=
1
,
nr2
=
4
;
while
(
length
--
)
...
...
strings/ctype-big5.c
View file @
0300bac6
...
...
@@ -215,7 +215,7 @@ static uint16 big5strokexfrm(uint16 i)
return
0xA140
;
}
int
my_strnncoll_big5
(
CHARSET_INFO
*
cs
,
int
my_strnncoll_big5
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
uchar
*
s1
,
uint
len1
,
const
uchar
*
s2
,
uint
len2
)
{
...
...
@@ -239,7 +239,7 @@ int my_strnncoll_big5(CHARSET_INFO *cs,
return
(
int
)
(
len1
-
len2
);
}
int
my_strnxfrm_big5
(
CHARSET_INFO
*
cs
,
int
my_strnxfrm_big5
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uchar
*
dest
,
uint
len
,
const
uchar
*
src
,
uint
srclen
)
{
...
...
@@ -328,7 +328,7 @@ int my_strxfrm_big5(uchar * dest, const uchar * src, int len)
#define wild_one '_'
#define wild_many '%'
my_bool
my_like_range_big5
(
CHARSET_INFO
*
cs
,
my_bool
my_like_range_big5
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
char
*
ptr
,
uint
ptr_length
,
pchar
escape
,
uint
res_length
,
char
*
min_str
,
char
*
max_str
,
uint
*
min_length
,
uint
*
max_length
)
...
...
@@ -378,17 +378,18 @@ my_bool my_like_range_big5(CHARSET_INFO *cs,
return
0
;
}
int
ismbchar_big5
(
CHARSET_INFO
*
cs
,
const
char
*
p
,
const
char
*
e
)
int
ismbchar_big5
(
CHARSET_INFO
*
cs
__attribute__
((
unused
)),
const
char
*
p
,
const
char
*
e
)
{
return
(
isbig5head
(
*
(
p
))
&&
(
e
)
-
(
p
)
>
1
&&
isbig5tail
(
*
((
p
)
+
1
))
?
2
:
0
);
}
my_bool
ismbhead_big5
(
CHARSET_INFO
*
cs
,
uint
c
)
my_bool
ismbhead_big5
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
isbig5head
(
c
);
}
int
mbcharlen_big5
(
CHARSET_INFO
*
cs
,
uint
c
)
int
mbcharlen_big5
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
(
isbig5head
(
c
)
?
2
:
0
);
}
...
...
strings/ctype-czech.c
View file @
0300bac6
...
...
@@ -282,7 +282,7 @@ int my_strxfrm_czech(uchar * dest, const uchar * src, int len)
/* Function strnncoll, actually strcoll, with Czech sorting, which expect
the length of the strings being specified */
int
my_strnncoll_czech
(
CHARSET_INFO
*
cs
,
int
my_strnncoll_czech
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
uchar
*
s1
,
uint
len1
,
const
uchar
*
s2
,
uint
len2
)
{
...
...
@@ -308,7 +308,7 @@ int my_strnncoll_czech(CHARSET_INFO *cs,
/* Function strnxfrm, actually strxfrm, with Czech sorting, which expect
the length of the strings being specified */
int
my_strnxfrm_czech
(
CHARSET_INFO
*
cs
,
int
my_strnxfrm_czech
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uchar
*
dest
,
uint
len
,
const
uchar
*
src
,
uint
srclen
)
{
...
...
@@ -378,7 +378,7 @@ int my_strnxfrm_czech(CHARSET_INFO *cs,
#define EXAMPLE
my_bool
my_like_range_czech
(
CHARSET_INFO
*
cs
,
my_bool
my_like_range_czech
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
char
*
ptr
,
uint
ptr_length
,
pchar
escape
,
uint
res_length
,
char
*
min_str
,
char
*
max_str
,
uint
*
min_length
,
uint
*
max_length
)
...
...
strings/ctype-euc_kr.c
View file @
0300bac6
...
...
@@ -183,19 +183,20 @@ uchar NEAR sort_order_euc_kr[]=
#define iseuc_kr(c) ((0xa1<=(uchar)(c) && (uchar)(c)<=0xfe))
int
ismbchar_euc_kr
(
CHARSET_INFO
*
cs
,
const
char
*
p
,
const
char
*
e
)
int
ismbchar_euc_kr
(
CHARSET_INFO
*
cs
__attribute__
((
unused
)),
const
char
*
p
,
const
char
*
e
)
{
return
((
*
(
uchar
*
)(
p
)
<
0x80
)
?
0
:
\
iseuc_kr
(
*
(
p
))
&&
(
e
)
-
(
p
)
>
1
&&
iseuc_kr
(
*
((
p
)
+
1
))
?
2
:
\
0
);
}
my_bool
ismbhead_euc_kr
(
CHARSET_INFO
*
cs
,
uint
c
)
my_bool
ismbhead_euc_kr
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
(
iseuc_kr
(
c
));
}
int
mbcharlen_euc_kr
(
CHARSET_INFO
*
cs
,
uint
c
)
int
mbcharlen_euc_kr
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
(
iseuc_kr
(
c
)
?
2
:
0
);
}
...
...
strings/ctype-gb2312.c
View file @
0300bac6
...
...
@@ -166,17 +166,18 @@ uchar NEAR sort_order_gb2312[]=
#define isgb2312tail(c) (0xa1<=(uchar)(c) && (uchar)(c)<=0xfe)
int
ismbchar_gb2312
(
CHARSET_INFO
*
cs
,
const
char
*
p
,
const
char
*
e
)
int
ismbchar_gb2312
(
CHARSET_INFO
*
cs
__attribute__
((
unused
)),
const
char
*
p
,
const
char
*
e
)
{
return
(
isgb2312head
(
*
(
p
))
&&
(
e
)
-
(
p
)
>
1
&&
isgb2312tail
(
*
((
p
)
+
1
))
?
2
:
0
);
}
my_bool
ismbhead_gb2312
(
CHARSET_INFO
*
cs
,
uint
c
)
my_bool
ismbhead_gb2312
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
isgb2312head
(
c
);
}
int
mbcharlen_gb2312
(
CHARSET_INFO
*
cs
,
uint
c
)
int
mbcharlen_gb2312
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
(
isgb2312head
(
c
)
?
2
:
0
);
}
...
...
strings/ctype-gbk.c
View file @
0300bac6
...
...
@@ -2582,7 +2582,7 @@ static uint16 gbksortorder(uint16 i)
}
int
my_strnncoll_gbk
(
CHARSET_INFO
*
cs
,
int
my_strnncoll_gbk
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
uchar
*
s1
,
uint
len1
,
const
uchar
*
s2
,
uint
len2
)
{
...
...
@@ -2609,7 +2609,7 @@ int my_strnncoll_gbk(CHARSET_INFO *cs,
}
int
my_strnxfrm_gbk
(
CHARSET_INFO
*
cs
,
int
my_strnxfrm_gbk
(
CHARSET_INFO
*
cs
__attribute__
((
unused
)),
uchar
*
dest
,
uint
len
,
const
uchar
*
src
,
uint
srclen
)
{
...
...
@@ -2653,7 +2653,7 @@ int my_strnxfrm_gbk(CHARSET_INFO *cs,
#define wild_one '_'
#define wild_many '%'
extern
my_bool
my_like_range_gbk
(
CHARSET_INFO
*
cs
,
extern
my_bool
my_like_range_gbk
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
char
*
ptr
,
uint
ptr_length
,
pchar
escape
,
uint
res_length
,
char
*
min_str
,
char
*
max_str
,
uint
*
min_length
,
uint
*
max_length
)
...
...
@@ -2704,17 +2704,18 @@ extern my_bool my_like_range_gbk(CHARSET_INFO *cs,
}
int
ismbchar_gbk
(
CHARSET_INFO
*
cs
,
const
char
*
p
,
const
char
*
e
)
int
ismbchar_gbk
(
CHARSET_INFO
*
cs
__attribute__
((
unused
)),
const
char
*
p
,
const
char
*
e
)
{
return
(
isgbkhead
(
*
(
p
))
&&
(
e
)
-
(
p
)
>
1
&&
isgbktail
(
*
((
p
)
+
1
))
?
2
:
0
);
}
my_bool
ismbhead_gbk
(
CHARSET_INFO
*
cs
,
uint
c
)
my_bool
ismbhead_gbk
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
isgbkhead
(
c
);
}
int
mbcharlen_gbk
(
CHARSET_INFO
*
cs
,
uint
c
)
int
mbcharlen_gbk
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
(
isgbkhead
(
c
)
?
2
:
0
);
}
...
...
strings/ctype-latin1_de.c
View file @
0300bac6
...
...
@@ -164,7 +164,7 @@ uchar sort_order_latin1_de[] = {
}
int
my_strnncoll_latin1_de
(
CHARSET_INFO
*
cs
,
int
my_strnncoll_latin1_de
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
uchar
*
s1
,
uint
len1
,
const
uchar
*
s2
,
uint
len2
)
{
...
...
@@ -238,7 +238,7 @@ int my_strnncoll_latin1_de(CHARSET_INFO *cs,
}
int
my_strnxfrm_latin1_de
(
CHARSET_INFO
*
cs
,
int
my_strnxfrm_latin1_de
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uchar
*
dest
,
uint
len
,
const
uchar
*
src
,
uint
srclen
)
{
...
...
@@ -303,7 +303,7 @@ int my_strnxfrm_latin1_de(CHARSET_INFO *cs,
#define wild_one '_'
#define wild_many '%'
my_bool
my_like_range_latin1_de
(
CHARSET_INFO
*
cs
,
my_bool
my_like_range_latin1_de
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
char
*
ptr
,
uint
ptr_length
,
pchar
escape
,
uint
res_length
,
char
*
min_str
,
char
*
max_str
,
...
...
strings/ctype-simple.c
View file @
0300bac6
...
...
@@ -85,3 +85,26 @@ int my_strncasecmp_8bit(CHARSET_INFO * cs,
while
(
len
--
!=
0
&&
my_toupper
(
cs
,(
uchar
)
*
s
++
)
==
my_toupper
(
cs
,(
uchar
)
*
t
++
))
;
return
(
int
)
len
+
1
;
}
int
my_mb_wc_8bit
(
CHARSET_INFO
*
cs
,
my_wc_t
*
wc
,
const
unsigned
char
*
str
,
const
unsigned
char
*
end
__attribute__
((
unused
)))
{
*
wc
=
cs
->
tab_to_uni
[
*
str
];
return
(
!
wc
[
0
]
&&
str
[
0
])
?
MY_CS_ILSEQ
:
1
;
}
int
my_wc_mb_8bit
(
CHARSET_INFO
*
cs
,
my_wc_t
wc
,
unsigned
char
*
s
,
unsigned
char
*
e
__attribute__
((
unused
)))
{
MY_UNI_IDX
*
idx
;
for
(
idx
=
cs
->
tab_from_uni
;
idx
->
tab
;
idx
++
){
if
(
idx
->
from
<=
wc
&&
idx
->
to
>=
wc
){
s
[
0
]
=
idx
->
tab
[
wc
-
idx
->
from
];
return
(
!
s
[
0
]
&&
wc
)
?
MY_CS_ILUNI
:
1
;
}
}
return
MY_CS_ILUNI
;
}
strings/ctype-sjis.c
View file @
0300bac6
...
...
@@ -183,17 +183,18 @@ uchar NEAR sort_order_sjis[]=
(0x80<=(c) && (c)<=0xfc))
int
ismbchar_sjis
(
CHARSET_INFO
*
cs
,
const
char
*
p
,
const
char
*
e
)
int
ismbchar_sjis
(
CHARSET_INFO
*
cs
__attribute__
((
unused
)),
const
char
*
p
,
const
char
*
e
)
{
return
(
issjishead
((
uchar
)
*
p
)
&&
(
e
-
p
)
>
1
&&
issjistail
((
uchar
)
p
[
1
])
?
2
:
0
);
}
my_bool
ismbhead_sjis
(
CHARSET_INFO
*
cs
,
uint
c
)
my_bool
ismbhead_sjis
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
issjishead
((
uchar
)
c
);
}
int
mbcharlen_sjis
(
CHARSET_INFO
*
cs
,
uint
c
)
int
mbcharlen_sjis
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
(
issjishead
((
uchar
)
c
)
?
2
:
0
);
}
...
...
@@ -201,7 +202,7 @@ int mbcharlen_sjis(CHARSET_INFO *cs,uint c)
#define sjiscode(c,d) ((((uint) (uchar)(c)) << 8) | (uint) (uchar) (d))
int
my_strnncoll_sjis
(
CHARSET_INFO
*
cs
,
int
my_strnncoll_sjis
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
uchar
*
s1
,
uint
len1
,
const
uchar
*
s2
,
uint
len2
)
{
...
...
@@ -226,7 +227,7 @@ int my_strnncoll_sjis(CHARSET_INFO *cs,
return
len1
-
len2
;
}
int
my_strnxfrm_sjis
(
CHARSET_INFO
*
cs
,
int
my_strnxfrm_sjis
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uchar
*
dest
,
uint
len
,
const
uchar
*
src
,
uint
srclen
)
{
...
...
@@ -265,7 +266,7 @@ int my_strnxfrm_sjis(CHARSET_INFO *cs,
#define wild_one '_'
#define wild_many '%'
my_bool
my_like_range_sjis
(
CHARSET_INFO
*
cs
,
my_bool
my_like_range_sjis
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
char
*
ptr
,
uint
ptr_length
,
pchar
escape
,
uint
res_length
,
char
*
min_str
,
char
*
max_str
,
uint
*
min_length
,
uint
*
max_length
)
...
...
strings/ctype-tis620.c
View file @
0300bac6
...
...
@@ -537,7 +537,7 @@ static uchar* thai2sortable(const uchar * tstr,uint len)
Arg: 2 Strings and it compare length
Ret: strcmp result
*/
int
my_strnncoll_tis620
(
CHARSET_INFO
*
cs
,
int
my_strnncoll_tis620
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
uchar
*
s1
,
uint
len1
,
const
uchar
*
s2
,
uint
len2
)
{
...
...
@@ -555,7 +555,7 @@ int my_strnncoll_tis620(CHARSET_INFO *cs,
Arg: Destination buffer, source string, dest length and source length
Ret: Conveted string size
*/
int
my_strnxfrm_tis620
(
CHARSET_INFO
*
cs
,
int
my_strnxfrm_tis620
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uchar
*
dest
,
uint
len
,
const
uchar
*
src
,
uint
srclen
)
{
...
...
@@ -613,7 +613,7 @@ int my_strxfrm_tis620(uchar * dest, const uchar * src, int len)
#define wild_one '_'
#define wild_many '%'
my_bool
my_like_range_tis620
(
CHARSET_INFO
*
cs
,
my_bool
my_like_range_tis620
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
const
char
*
ptr
,
uint
ptr_length
,
pchar
escape
,
uint
res_length
,
char
*
min_str
,
char
*
max_str
,
uint
*
min_length
,
uint
*
max_length
)
...
...
strings/ctype-ujis.c
View file @
0300bac6
...
...
@@ -183,7 +183,8 @@ uchar NEAR sort_order_ujis[]=
#define isujis_ss3(c) (((c)&0xff) == 0x8f)
int
ismbchar_ujis
(
CHARSET_INFO
*
cs
,
const
char
*
p
,
const
char
*
e
)
int
ismbchar_ujis
(
CHARSET_INFO
*
cs
__attribute__
((
unused
)),
const
char
*
p
,
const
char
*
e
)
{
return
((
*
(
uchar
*
)(
p
)
<
0x80
)
?
0
:
\
isujis
(
*
(
p
))
&&
(
e
)
-
(
p
)
>
1
&&
isujis
(
*
((
p
)
+
1
))
?
2
:
\
...
...
@@ -192,12 +193,12 @@ int ismbchar_ujis(CHARSET_INFO *cs,const char* p, const char *e)
0
);
}
my_bool
ismbhead_ujis
(
CHARSET_INFO
*
cs
,
uint
c
)
my_bool
ismbhead_ujis
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
(
isujis
(
c
)
||
isujis_ss2
(
c
)
||
isujis_ss3
(
c
));
}
int
mbcharlen_ujis
(
CHARSET_INFO
*
cs
,
uint
c
)
int
mbcharlen_ujis
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
return
(
isujis
(
c
)
?
2
:
isujis_ss2
(
c
)
?
2
:
isujis_ss3
(
c
)
?
3
:
0
);
}
...
...
strings/ctype-utf8.c
View file @
0300bac6
...
...
@@ -1571,7 +1571,7 @@ uchar to_upper_utf8[] = {
};
int
my_utf8_uni
(
__attribute__
((
unused
))
CHARSET_INFO
*
cs
,
int
my_utf8_uni
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
my_wc_t
*
pwc
,
const
uchar
*
s
,
const
uchar
*
e
)
{
unsigned
char
c
=
s
[
0
];
...
...
@@ -1673,7 +1673,7 @@ int my_utf8_uni (__attribute__((unused)) CHARSET_INFO *cs,
return
MY_CS_ILSEQ
;
}
int
my_uni_utf8
(
__attribute__
((
unused
))
CHARSET_INFO
*
cs
,
int
my_uni_utf8
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
my_wc_t
wc
,
uchar
*
r
,
uchar
*
e
)
{
int
count
;
...
...
@@ -1879,12 +1879,12 @@ int my_ismbchar_utf8(CHARSET_INFO *cs,const char *b, const char *e)
return
(
res
>
1
)
?
res
:
0
;
}
my_bool
my_ismbhead_utf8
(
__attribute__
((
unused
))
CHARSET_INFO
*
cs
,
uint
ch
)
my_bool
my_ismbhead_utf8
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
ch
)
{
return
(
ch
>=
0xc2
);
}
int
my_mbcharlen_utf8
(
__attribute__
((
unused
))
CHARSET_INFO
*
cs
,
uint
c
)
int
my_mbcharlen_utf8
(
CHARSET_INFO
*
cs
__attribute__
((
unused
))
,
uint
c
)
{
if
(
c
<
0x80
)
return
1
;
...
...
strings/ctype.c
View file @
0300bac6
...
...
@@ -20,6 +20,235 @@
#include <m_string.h>
#endif
#if defined(HAVE_CHARSET_latin1)||defined(HAVE_CHARSET_latin1_de)||\
defined(HAVE_CHARSET_danish)||defined(HAVE_CHARSET_german1)
static
uint16
tab_8859_1_uni
[
256
]
=
{
0
,
0x0001
,
0x0002
,
0x0003
,
0x0004
,
0x0005
,
0x0006
,
0x0007
,
0x0008
,
0x0009
,
0x000A
,
0x000B
,
0x000C
,
0x000D
,
0x000E
,
0x000F
,
0x0010
,
0x0011
,
0x0012
,
0x0013
,
0x0014
,
0x0015
,
0x0016
,
0x0017
,
0x0018
,
0x0019
,
0x001A
,
0x001B
,
0x001C
,
0x001D
,
0x001E
,
0x001F
,
0x0020
,
0x0021
,
0x0022
,
0x0023
,
0x0024
,
0x0025
,
0x0026
,
0x0027
,
0x0028
,
0x0029
,
0x002A
,
0x002B
,
0x002C
,
0x002D
,
0x002E
,
0x002F
,
0x0030
,
0x0031
,
0x0032
,
0x0033
,
0x0034
,
0x0035
,
0x0036
,
0x0037
,
0x0038
,
0x0039
,
0x003A
,
0x003B
,
0x003C
,
0x003D
,
0x003E
,
0x003F
,
0x0040
,
0x0041
,
0x0042
,
0x0043
,
0x0044
,
0x0045
,
0x0046
,
0x0047
,
0x0048
,
0x0049
,
0x004A
,
0x004B
,
0x004C
,
0x004D
,
0x004E
,
0x004F
,
0x0050
,
0x0051
,
0x0052
,
0x0053
,
0x0054
,
0x0055
,
0x0056
,
0x0057
,
0x0058
,
0x0059
,
0x005A
,
0x005B
,
0x005C
,
0x005D
,
0x005E
,
0x005F
,
0x0060
,
0x0061
,
0x0062
,
0x0063
,
0x0064
,
0x0065
,
0x0066
,
0x0067
,
0x0068
,
0x0069
,
0x006A
,
0x006B
,
0x006C
,
0x006D
,
0x006E
,
0x006F
,
0x0070
,
0x0071
,
0x0072
,
0x0073
,
0x0074
,
0x0075
,
0x0076
,
0x0077
,
0x0078
,
0x0079
,
0x007A
,
0x007B
,
0x007C
,
0x007D
,
0x007E
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0x00A0
,
0x00A1
,
0x00A2
,
0x00A3
,
0x00A4
,
0x00A5
,
0x00A6
,
0x00A7
,
0x00A8
,
0x00A9
,
0x00AA
,
0x00AB
,
0x00AC
,
0x00AD
,
0x00AE
,
0x00AF
,
0x00B0
,
0x00B1
,
0x00B2
,
0x00B3
,
0x00B4
,
0x00B5
,
0x00B6
,
0x00B7
,
0x00B8
,
0x00B9
,
0x00BA
,
0x00BB
,
0x00BC
,
0x00BD
,
0x00BE
,
0x00BF
,
0x00C0
,
0x00C1
,
0x00C2
,
0x00C3
,
0x00C4
,
0x00C5
,
0x00C6
,
0x00C7
,
0x00C8
,
0x00C9
,
0x00CA
,
0x00CB
,
0x00CC
,
0x00CD
,
0x00CE
,
0x00CF
,
0x00D0
,
0x00D1
,
0x00D2
,
0x00D3
,
0x00D4
,
0x00D5
,
0x00D6
,
0x00D7
,
0x00D8
,
0x00D9
,
0x00DA
,
0x00DB
,
0x00DC
,
0x00DD
,
0x00DE
,
0x00DF
,
0x00E0
,
0x00E1
,
0x00E2
,
0x00E3
,
0x00E4
,
0x00E5
,
0x00E6
,
0x00E7
,
0x00E8
,
0x00E9
,
0x00EA
,
0x00EB
,
0x00EC
,
0x00ED
,
0x00EE
,
0x00EF
,
0x00F0
,
0x00F1
,
0x00F2
,
0x00F3
,
0x00F4
,
0x00F5
,
0x00F6
,
0x00F7
,
0x00F8
,
0x00F9
,
0x00FA
,
0x00FB
,
0x00FC
,
0x00FD
,
0x00FE
,
0x00FF
};
static
uchar
tab_uni_8859_1_plane00
[]
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0A
,
0x0B
,
0x0C
,
0x0D
,
0x0E
,
0x0F
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1A
,
0x1B
,
0x1C
,
0x1D
,
0x1E
,
0x1F
,
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0x27
,
0x28
,
0x29
,
0x2A
,
0x2B
,
0x2C
,
0x2D
,
0x2E
,
0x2F
,
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
0x58
,
0x59
,
0x5A
,
0x5B
,
0x5C
,
0x5D
,
0x5E
,
0x5F
,
0x60
,
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
0x78
,
0x79
,
0x7A
,
0x7B
,
0x7C
,
0x7D
,
0x7E
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA0
,
0xA1
,
0xA2
,
0xA3
,
0xA4
,
0xA5
,
0xA6
,
0xA7
,
0xA8
,
0xA9
,
0xAA
,
0xAB
,
0xAC
,
0xAD
,
0xAE
,
0xAF
,
0xB0
,
0xB1
,
0xB2
,
0xB3
,
0xB4
,
0xB5
,
0xB6
,
0xB7
,
0xB8
,
0xB9
,
0xBA
,
0xBB
,
0xBC
,
0xBD
,
0xBE
,
0xBF
,
0xC0
,
0xC1
,
0xC2
,
0xC3
,
0xC4
,
0xC5
,
0xC6
,
0xC7
,
0xC8
,
0xC9
,
0xCA
,
0xCB
,
0xCC
,
0xCD
,
0xCE
,
0xCF
,
0xD0
,
0xD1
,
0xD2
,
0xD3
,
0xD4
,
0xD5
,
0xD6
,
0xD7
,
0xD8
,
0xD9
,
0xDA
,
0xDB
,
0xDC
,
0xDD
,
0xDE
,
0xDF
,
0xE0
,
0xE1
,
0xE2
,
0xE3
,
0xE4
,
0xE5
,
0xE6
,
0xE7
,
0xE8
,
0xE9
,
0xEA
,
0xEB
,
0xEC
,
0xED
,
0xEE
,
0xEF
,
0xF0
,
0xF1
,
0xF2
,
0xF3
,
0xF4
,
0xF5
,
0xF6
,
0xF7
,
0xF8
,
0xF9
,
0xFA
,
0xFB
,
0xFC
,
0xFD
,
0xFE
,
0xFF
};
static
MY_UNI_IDX
idx_uni_8859_1
[]
=
{
{
0x0000
,
0x00FF
,
tab_uni_8859_1_plane00
},
{
0
,
0
,
NULL
}
};
#endif
#if defined(HAVE_CHARSET_latin2)||defined(HAVE_CHARSET_croat)||\
defined(HAVE_CHARSET_hungarian)||defined(HAVE_CHARSET_czech)
static
uint16
tab_8859_2_uni
[
256
]
=
{
0
,
0x0001
,
0x0002
,
0x0003
,
0x0004
,
0x0005
,
0x0006
,
0x0007
,
0x0008
,
0x0009
,
0x000A
,
0x000B
,
0x000C
,
0x000D
,
0x000E
,
0x000F
,
0x0010
,
0x0011
,
0x0012
,
0x0013
,
0x0014
,
0x0015
,
0x0016
,
0x0017
,
0x0018
,
0x0019
,
0x001A
,
0x001B
,
0x001C
,
0x001D
,
0x001E
,
0x001F
,
0x0020
,
0x0021
,
0x0022
,
0x0023
,
0x0024
,
0x0025
,
0x0026
,
0x0027
,
0x0028
,
0x0029
,
0x002A
,
0x002B
,
0x002C
,
0x002D
,
0x002E
,
0x002F
,
0x0030
,
0x0031
,
0x0032
,
0x0033
,
0x0034
,
0x0035
,
0x0036
,
0x0037
,
0x0038
,
0x0039
,
0x003A
,
0x003B
,
0x003C
,
0x003D
,
0x003E
,
0x003F
,
0x0040
,
0x0041
,
0x0042
,
0x0043
,
0x0044
,
0x0045
,
0x0046
,
0x0047
,
0x0048
,
0x0049
,
0x004A
,
0x004B
,
0x004C
,
0x004D
,
0x004E
,
0x004F
,
0x0050
,
0x0051
,
0x0052
,
0x0053
,
0x0054
,
0x0055
,
0x0056
,
0x0057
,
0x0058
,
0x0059
,
0x005A
,
0x005B
,
0x005C
,
0x005D
,
0x005E
,
0x005F
,
0x0060
,
0x0061
,
0x0062
,
0x0063
,
0x0064
,
0x0065
,
0x0066
,
0x0067
,
0x0068
,
0x0069
,
0x006A
,
0x006B
,
0x006C
,
0x006D
,
0x006E
,
0x006F
,
0x0070
,
0x0071
,
0x0072
,
0x0073
,
0x0074
,
0x0075
,
0x0076
,
0x0077
,
0x0078
,
0x0079
,
0x007A
,
0x007B
,
0x007C
,
0x007D
,
0x007E
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0x00A0
,
0x0104
,
0x02D8
,
0x0141
,
0x00A4
,
0x013D
,
0x015A
,
0x00A7
,
0x00A8
,
0x0160
,
0x015E
,
0x0164
,
0x0179
,
0x00AD
,
0x017D
,
0x017B
,
0x00B0
,
0x0105
,
0x02DB
,
0x0142
,
0x00B4
,
0x013E
,
0x015B
,
0x02C7
,
0x00B8
,
0x0161
,
0x015F
,
0x0165
,
0x017A
,
0x02DD
,
0x017E
,
0x017C
,
0x0154
,
0x00C1
,
0x00C2
,
0x0102
,
0x00C4
,
0x0139
,
0x0106
,
0x00C7
,
0x010C
,
0x00C9
,
0x0118
,
0x00CB
,
0x011A
,
0x00CD
,
0x00CE
,
0x010E
,
0x0110
,
0x0143
,
0x0147
,
0x00D3
,
0x00D4
,
0x0150
,
0x00D6
,
0x00D7
,
0x0158
,
0x016E
,
0x00DA
,
0x0170
,
0x00DC
,
0x00DD
,
0x0162
,
0x00DF
,
0x0155
,
0x00E1
,
0x00E2
,
0x0103
,
0x00E4
,
0x013A
,
0x0107
,
0x00E7
,
0x010D
,
0x00E9
,
0x0119
,
0x00EB
,
0x011B
,
0x00ED
,
0x00EE
,
0x010F
,
0x0111
,
0x0144
,
0x0148
,
0x00F3
,
0x00F4
,
0x0151
,
0x00F6
,
0x00F7
,
0x0159
,
0x016F
,
0x00FA
,
0x0171
,
0x00FC
,
0x00FD
,
0x0163
,
0x02D9
};
/* 0000-00FD , 254 chars */
static
uchar
tab_uni_8859_2_plane00
[]
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0A
,
0x0B
,
0x0C
,
0x0D
,
0x0E
,
0x0F
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1A
,
0x1B
,
0x1C
,
0x1D
,
0x1E
,
0x1F
,
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0x27
,
0x28
,
0x29
,
0x2A
,
0x2B
,
0x2C
,
0x2D
,
0x2E
,
0x2F
,
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
0x58
,
0x59
,
0x5A
,
0x5B
,
0x5C
,
0x5D
,
0x5E
,
0x5F
,
0x60
,
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
0x78
,
0x79
,
0x7A
,
0x7B
,
0x7C
,
0x7D
,
0x7E
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA0
,
0x00
,
0x00
,
0x00
,
0xA4
,
0x00
,
0x00
,
0xA7
,
0xA8
,
0x00
,
0x00
,
0x00
,
0x00
,
0xAD
,
0x00
,
0x00
,
0xB0
,
0x00
,
0x00
,
0x00
,
0xB4
,
0x00
,
0x00
,
0x00
,
0xB8
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xC1
,
0xC2
,
0x00
,
0xC4
,
0x00
,
0x00
,
0xC7
,
0x00
,
0xC9
,
0x00
,
0xCB
,
0x00
,
0xCD
,
0xCE
,
0x00
,
0x00
,
0x00
,
0x00
,
0xD3
,
0xD4
,
0x00
,
0xD6
,
0xD7
,
0x00
,
0x00
,
0xDA
,
0x00
,
0xDC
,
0xDD
,
0x00
,
0xDF
,
0x00
,
0xE1
,
0xE2
,
0x00
,
0xE4
,
0x00
,
0x00
,
0xE7
,
0x00
,
0xE9
,
0x00
,
0xEB
,
0x00
,
0xED
,
0xEE
,
0x00
,
0x00
,
0x00
,
0x00
,
0xF3
,
0xF4
,
0x00
,
0xF6
,
0xF7
,
0x00
,
0x00
,
0xFA
,
0x00
,
0xFC
,
0xFD
};
/* 0102-017E , 125 chars */
static
uchar
tab_uni_8859_2_plane01
[]
=
{
0xC3
,
0xE3
,
0xA1
,
0xB1
,
0xC6
,
0xE6
,
0x00
,
0x00
,
0x00
,
0x00
,
0xC8
,
0xE8
,
0xCF
,
0xEF
,
0xD0
,
0xF0
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xCA
,
0xEA
,
0xCC
,
0xEC
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xC5
,
0xE5
,
0x00
,
0x00
,
0xA5
,
0xB5
,
0x00
,
0x00
,
0xA3
,
0xB3
,
0xD1
,
0xF1
,
0x00
,
0x00
,
0xD2
,
0xF2
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xD5
,
0xF5
,
0x00
,
0x00
,
0xC0
,
0xE0
,
0x00
,
0x00
,
0xD8
,
0xF8
,
0xA6
,
0xB6
,
0x00
,
0x00
,
0xAA
,
0xBA
,
0xA9
,
0xB9
,
0xDE
,
0xFE
,
0xAB
,
0xBB
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xD9
,
0xF9
,
0xDB
,
0xFB
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xAC
,
0xBC
,
0xAF
,
0xBF
,
0xAE
,
0xBE
};
/* 02C7-02DD , 23 chars */
static
uchar
tab_uni_8859_2_plane02
[]
=
{
0xB7
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA2
,
0xFF
,
0x00
,
0xB2
,
0x00
,
0xBD
};
static
MY_UNI_IDX
idx_uni_8859_2
[]
=
{
{
0x0000
,
0x00FD
,
tab_uni_8859_2_plane00
},
{
0x0102
,
0x017E
,
tab_uni_8859_2_plane01
},
{
0x02C7
,
0x02DD
,
tab_uni_8859_2_plane02
},
{
0
,
0
,
NULL
}
};
#endif
#if defined(HAVE_CHARSET_cp1251) || defined(HAVE_CHARSET_win1251) || defined(HAVE_CHARSET_win1251ukr)
static
uint16
tab_cp1251_uni
[
256
]
=
{
0
,
0x0001
,
0x0002
,
0x0003
,
0x0004
,
0x0005
,
0x0006
,
0x0007
,
0x0008
,
0x0009
,
0x000A
,
0x000B
,
0x000C
,
0x000D
,
0x000E
,
0x000F
,
0x0010
,
0x0011
,
0x0012
,
0x0013
,
0x0014
,
0x0015
,
0x0016
,
0x0017
,
0x0018
,
0x0019
,
0x001A
,
0x001B
,
0x001C
,
0x001D
,
0x001E
,
0x001F
,
0x0020
,
0x0021
,
0x0022
,
0x0023
,
0x0024
,
0x0025
,
0x0026
,
0x0027
,
0x0028
,
0x0029
,
0x002A
,
0x002B
,
0x002C
,
0x002D
,
0x002E
,
0x002F
,
0x0030
,
0x0031
,
0x0032
,
0x0033
,
0x0034
,
0x0035
,
0x0036
,
0x0037
,
0x0038
,
0x0039
,
0x003A
,
0x003B
,
0x003C
,
0x003D
,
0x003E
,
0x003F
,
0x0040
,
0x0041
,
0x0042
,
0x0043
,
0x0044
,
0x0045
,
0x0046
,
0x0047
,
0x0048
,
0x0049
,
0x004A
,
0x004B
,
0x004C
,
0x004D
,
0x004E
,
0x004F
,
0x0050
,
0x0051
,
0x0052
,
0x0053
,
0x0054
,
0x0055
,
0x0056
,
0x0057
,
0x0058
,
0x0059
,
0x005A
,
0x005B
,
0x005C
,
0x005D
,
0x005E
,
0x005F
,
0x0060
,
0x0061
,
0x0062
,
0x0063
,
0x0064
,
0x0065
,
0x0066
,
0x0067
,
0x0068
,
0x0069
,
0x006A
,
0x006B
,
0x006C
,
0x006D
,
0x006E
,
0x006F
,
0x0070
,
0x0071
,
0x0072
,
0x0073
,
0x0074
,
0x0075
,
0x0076
,
0x0077
,
0x0078
,
0x0079
,
0x007A
,
0x007B
,
0x007C
,
0x007D
,
0x007E
,
0x007F
,
0x0402
,
0x0403
,
0x201A
,
0x0453
,
0x201E
,
0x2026
,
0x2020
,
0x2021
,
0
,
0x2030
,
0x0409
,
0x2039
,
0x040A
,
0x040C
,
0x040B
,
0x040F
,
0x0452
,
0x2018
,
0x2019
,
0x201C
,
0x201D
,
0x2022
,
0x2013
,
0x2014
,
0
,
0x2122
,
0x0459
,
0x203A
,
0x045A
,
0x045C
,
0x045B
,
0x045F
,
0x00A0
,
0x040E
,
0x045E
,
0x0408
,
0x00A4
,
0x0490
,
0x00A6
,
0x00A7
,
0x0401
,
0x00A9
,
0x0404
,
0x00AB
,
0x00AC
,
0x00AD
,
0x00AE
,
0x0407
,
0x00B0
,
0x00B1
,
0x0406
,
0x0456
,
0x0491
,
0x00B5
,
0x00B6
,
0x00B7
,
0x0451
,
0x2116
,
0x0454
,
0x00BB
,
0x0458
,
0x0405
,
0x0455
,
0x0457
,
0x0410
,
0x0411
,
0x0412
,
0x0413
,
0x0414
,
0x0415
,
0x0416
,
0x0417
,
0x0418
,
0x0419
,
0x041A
,
0x041B
,
0x041C
,
0x041D
,
0x041E
,
0x041F
,
0x0420
,
0x0421
,
0x0422
,
0x0423
,
0x0424
,
0x0425
,
0x0426
,
0x0427
,
0x0428
,
0x0429
,
0x042A
,
0x042B
,
0x042C
,
0x042D
,
0x042E
,
0x042F
,
0x0430
,
0x0431
,
0x0432
,
0x0433
,
0x0434
,
0x0435
,
0x0436
,
0x0437
,
0x0438
,
0x0439
,
0x043A
,
0x043B
,
0x043C
,
0x043D
,
0x043E
,
0x043F
,
0x0440
,
0x0441
,
0x0442
,
0x0443
,
0x0444
,
0x0445
,
0x0446
,
0x0447
,
0x0448
,
0x0449
,
0x044A
,
0x044B
,
0x044C
,
0x044D
,
0x044E
,
0x044F
};
/* 0000-00BB , 188 chars */
static
uchar
tab_uni_cp1251_plane00
[]
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0A
,
0x0B
,
0x0C
,
0x0D
,
0x0E
,
0x0F
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1A
,
0x1B
,
0x1C
,
0x1D
,
0x1E
,
0x1F
,
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0x27
,
0x28
,
0x29
,
0x2A
,
0x2B
,
0x2C
,
0x2D
,
0x2E
,
0x2F
,
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
0x58
,
0x59
,
0x5A
,
0x5B
,
0x5C
,
0x5D
,
0x5E
,
0x5F
,
0x60
,
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
0x78
,
0x79
,
0x7A
,
0x7B
,
0x7C
,
0x7D
,
0x7E
,
0x7F
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA0
,
0x00
,
0x00
,
0x00
,
0xA4
,
0x00
,
0xA6
,
0xA7
,
0x00
,
0xA9
,
0x00
,
0xAB
,
0xAC
,
0xAD
,
0xAE
,
0x00
,
0xB0
,
0xB1
,
0x00
,
0x00
,
0x00
,
0xB5
,
0xB6
,
0xB7
,
0x00
,
0x00
,
0x00
,
0xBB
};
/* 0401-0491 , 145 chars */
static
uchar
tab_uni_cp1251_plane04
[]
=
{
0xA8
,
0x80
,
0x81
,
0xAA
,
0xBD
,
0xB2
,
0xAF
,
0xA3
,
0x8A
,
0x8C
,
0x8E
,
0x8D
,
0x00
,
0xA1
,
0x8F
,
0xC0
,
0xC1
,
0xC2
,
0xC3
,
0xC4
,
0xC5
,
0xC6
,
0xC7
,
0xC8
,
0xC9
,
0xCA
,
0xCB
,
0xCC
,
0xCD
,
0xCE
,
0xCF
,
0xD0
,
0xD1
,
0xD2
,
0xD3
,
0xD4
,
0xD5
,
0xD6
,
0xD7
,
0xD8
,
0xD9
,
0xDA
,
0xDB
,
0xDC
,
0xDD
,
0xDE
,
0xDF
,
0xE0
,
0xE1
,
0xE2
,
0xE3
,
0xE4
,
0xE5
,
0xE6
,
0xE7
,
0xE8
,
0xE9
,
0xEA
,
0xEB
,
0xEC
,
0xED
,
0xEE
,
0xEF
,
0xF0
,
0xF1
,
0xF2
,
0xF3
,
0xF4
,
0xF5
,
0xF6
,
0xF7
,
0xF8
,
0xF9
,
0xFA
,
0xFB
,
0xFC
,
0xFD
,
0xFE
,
0xFF
,
0x00
,
0xB8
,
0x90
,
0x83
,
0xBA
,
0xBE
,
0xB3
,
0xBF
,
0xBC
,
0x9A
,
0x9C
,
0x9E
,
0x9D
,
0x00
,
0xA2
,
0x9F
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA5
,
0xB4
};
/* 2013-203A , 40 chars */
static
uchar
tab_uni_cp1251_plane20
[]
=
{
0x96
,
0x97
,
0x00
,
0x00
,
0x00
,
0x91
,
0x92
,
0x82
,
0x00
,
0x93
,
0x94
,
0x84
,
0x00
,
0x86
,
0x87
,
0x95
,
0x00
,
0x00
,
0x00
,
0x85
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x89
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x8B
,
0x9B
};
/* 2116-2122 , 13 chars */
static
uchar
tab_uni_cp1251_plane21
[]
=
{
0xB9
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x99
};
static
MY_UNI_IDX
idx_uni_cp1251
[]
=
{
{
0x0000
,
0x00BB
,
tab_uni_cp1251_plane00
},
{
0x0401
,
0x0491
,
tab_uni_cp1251_plane04
},
{
0x2013
,
0x203A
,
tab_uni_cp1251_plane20
},
{
0x2116
,
0x2122
,
tab_uni_cp1251_plane21
},
{
0
,
0
,
NULL
}
};
#endif
#ifdef HAVE_CHARSET_armscii8
static
uchar
ctype_armscii8
[]
=
{
0
,
...
...
@@ -97,6 +326,85 @@ static uchar sort_order_armscii8[] = {
224
,
225
,
226
,
227
,
228
,
229
,
230
,
231
,
232
,
233
,
234
,
235
,
236
,
237
,
238
,
239
,
240
,
241
,
242
,
243
,
244
,
245
,
246
,
247
,
248
,
249
,
250
,
251
,
252
,
253
,
254
,
255
};
static
uint16
tab_armscii_8_uni
[
256
]
=
{
0
,
0x0001
,
0x0002
,
0x0003
,
0x0004
,
0x0005
,
0x0006
,
0x0007
,
0x0008
,
0x0009
,
0x000A
,
0x000B
,
0x000C
,
0x000D
,
0x000E
,
0x000F
,
0x0010
,
0x0011
,
0x0012
,
0x0013
,
0x0014
,
0x0015
,
0x0016
,
0x0017
,
0x0018
,
0x0019
,
0x001A
,
0x001B
,
0x001C
,
0x001D
,
0x001E
,
0x001F
,
0x0020
,
0x0021
,
0x0022
,
0x0023
,
0x0024
,
0x0025
,
0x0026
,
0x0027
,
0x0028
,
0x0029
,
0x002A
,
0x002B
,
0x002C
,
0x002D
,
0x002E
,
0x002F
,
0x0030
,
0x0031
,
0x0032
,
0x0033
,
0x0034
,
0x0035
,
0x0036
,
0x0037
,
0x0038
,
0x0039
,
0x003A
,
0x003B
,
0x003C
,
0x003D
,
0x003E
,
0x003F
,
0x0040
,
0x0041
,
0x0042
,
0x0043
,
0x0044
,
0x0045
,
0x0046
,
0x0047
,
0x0048
,
0x0049
,
0x004A
,
0x004B
,
0x004C
,
0x004D
,
0x004E
,
0x004F
,
0x0050
,
0x0051
,
0x0052
,
0x0053
,
0x0054
,
0x0055
,
0x0056
,
0x0057
,
0x0058
,
0x0059
,
0x005A
,
0x005B
,
0x005C
,
0x005D
,
0x005E
,
0x005F
,
0x0060
,
0x0061
,
0x0062
,
0x0063
,
0x0064
,
0x0065
,
0x0066
,
0x0067
,
0x0068
,
0x0069
,
0x006A
,
0x006B
,
0x006C
,
0x006D
,
0x006E
,
0x006F
,
0x0070
,
0x0071
,
0x0072
,
0x0073
,
0x0074
,
0x0075
,
0x0076
,
0x0077
,
0x0078
,
0x0079
,
0x007A
,
0x007B
,
0x007C
,
0x007D
,
0x007E
,
0x007F
,
0x0080
,
0x0081
,
0x0082
,
0x0083
,
0x0084
,
0x0085
,
0x0086
,
0x0087
,
0x0088
,
0x0089
,
0x008A
,
0x008B
,
0x008C
,
0x008D
,
0x008E
,
0x008F
,
0x0090
,
0x0091
,
0x0092
,
0x0093
,
0x0094
,
0x0095
,
0x0096
,
0x0097
,
0x0098
,
0x0099
,
0x009A
,
0x009B
,
0x009C
,
0x009D
,
0x009E
,
0x009F
,
0x00A0
,
0x2741
,
0x00A7
,
0x0589
,
0x0029
,
0x0028
,
0x00BB
,
0x00AB
,
0x2014
,
0x002E
,
0x055D
,
0x002C
,
0x002D
,
0x055F
,
0x2026
,
0x055C
,
0x055B
,
0x055E
,
0x0531
,
0x0561
,
0x0532
,
0x0562
,
0x0533
,
0x0563
,
0x0534
,
0x0564
,
0x0535
,
0x0565
,
0x0536
,
0x0566
,
0x0537
,
0x0567
,
0x0538
,
0x0568
,
0x0539
,
0x0569
,
0x053A
,
0x056A
,
0x053B
,
0x056B
,
0x053C
,
0x056C
,
0x053D
,
0x056D
,
0x053E
,
0x056E
,
0x053F
,
0x056F
,
0x0540
,
0x0570
,
0x0541
,
0x0571
,
0x0542
,
0x0572
,
0x0543
,
0x0573
,
0x0544
,
0x0574
,
0x0545
,
0x0575
,
0x0546
,
0x0576
,
0x0547
,
0x0577
,
0x0548
,
0x0578
,
0x0549
,
0x0579
,
0x054A
,
0x057A
,
0x054B
,
0x057B
,
0x054C
,
0x057C
,
0x054D
,
0x057D
,
0x054E
,
0x057E
,
0x054F
,
0x057F
,
0x0550
,
0x0580
,
0x0551
,
0x0581
,
0x0552
,
0x0582
,
0x0553
,
0x0583
,
0x0554
,
0x0584
,
0x0555
,
0x0585
,
0x0556
,
0x0586
,
0x2019
,
0x0027
};
/* 0000-00BB , 188 chars */
static
uchar
tab_uni_armscii_8_plane00
[]
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0A
,
0x0B
,
0x0C
,
0x0D
,
0x0E
,
0x0F
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1A
,
0x1B
,
0x1C
,
0x1D
,
0x1E
,
0x1F
,
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0xFF
,
0xA5
,
0xA4
,
0x2A
,
0x2B
,
0xAB
,
0xAC
,
0xA9
,
0x2F
,
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
0x58
,
0x59
,
0x5A
,
0x5B
,
0x5C
,
0x5D
,
0x5E
,
0x5F
,
0x60
,
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
0x78
,
0x79
,
0x7A
,
0x7B
,
0x7C
,
0x7D
,
0x7E
,
0x7F
,
0x80
,
0x81
,
0x82
,
0x83
,
0x84
,
0x85
,
0x86
,
0x87
,
0x88
,
0x89
,
0x8A
,
0x8B
,
0x8C
,
0x8D
,
0x8E
,
0x8F
,
0x90
,
0x91
,
0x92
,
0x93
,
0x94
,
0x95
,
0x96
,
0x97
,
0x98
,
0x99
,
0x9A
,
0x9B
,
0x9C
,
0x9D
,
0x9E
,
0x9F
,
0xA0
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA2
,
0x00
,
0x00
,
0x00
,
0xA7
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA6
};
/* 0531-0589 , 89 chars */
static
uchar
tab_uni_armscii_8_plane05
[]
=
{
0xB2
,
0xB4
,
0xB6
,
0xB8
,
0xBA
,
0xBC
,
0xBE
,
0xC0
,
0xC2
,
0xC4
,
0xC6
,
0xC8
,
0xCA
,
0xCC
,
0xCE
,
0xD0
,
0xD2
,
0xD4
,
0xD6
,
0xD8
,
0xDA
,
0xDC
,
0xDE
,
0xE0
,
0xE2
,
0xE4
,
0xE6
,
0xE8
,
0xEA
,
0xEC
,
0xEE
,
0xF0
,
0xF2
,
0xF4
,
0xF6
,
0xF8
,
0xFA
,
0xFC
,
0x00
,
0x00
,
0x00
,
0x00
,
0xB0
,
0xAF
,
0xAA
,
0xB1
,
0xAD
,
0x00
,
0xB3
,
0xB5
,
0xB7
,
0xB9
,
0xBB
,
0xBD
,
0xBF
,
0xC1
,
0xC3
,
0xC5
,
0xC7
,
0xC9
,
0xCB
,
0xCD
,
0xCF
,
0xD1
,
0xD3
,
0xD5
,
0xD7
,
0xD9
,
0xDB
,
0xDD
,
0xDF
,
0xE1
,
0xE3
,
0xE5
,
0xE7
,
0xE9
,
0xEB
,
0xED
,
0xEF
,
0xF1
,
0xF3
,
0xF5
,
0xF7
,
0xF9
,
0xFB
,
0xFD
,
0x00
,
0x00
,
0xA3
};
/* 2014-2026 , 19 chars */
static
uchar
tab_uni_armscii_8_plane20
[]
=
{
0xA8
,
0x00
,
0x00
,
0x00
,
0x00
,
0xFE
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xAE
};
/* 2741-2741 , 1 chars */
static
uchar
tab_uni_armscii_8_plane27
[]
=
{
0xA1
};
static
MY_UNI_IDX
idx_uni_armscii_8
[]
=
{
{
0x0000
,
0x00BB
,
tab_uni_armscii_8_plane00
},
{
0x0531
,
0x0589
,
tab_uni_armscii_8_plane05
},
{
0x2014
,
0x2026
,
tab_uni_armscii_8_plane20
},
{
0x2741
,
0x2741
,
tab_uni_armscii_8_plane27
},
{
0
,
0
,
NULL
}
};
#endif
...
...
@@ -182,6 +490,7 @@ static uchar sort_order_cp1251[] = {
91
,
92
,
93
,
94
,
95
,
96
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
106
,
107
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
119
,
120
,
121
,
122
,
123
};
#endif
...
...
@@ -267,6 +576,104 @@ static uchar sort_order_cp1257[] = {
255
,
79
,
255
,
255
,
255
,
255
,
72
,
255
,
69
,
255
,
255
,
73
,
255
,
255
,
255
,
255
,
90
,
255
,
255
,
255
,
255
,
255
,
255
,
255
,
94
,
255
,
255
,
93
,
255
,
255
,
255
,
255
};
static
uint16
tab_cp1257_uni
[
256
]
=
{
0
,
0x0001
,
0x0002
,
0x0003
,
0x0004
,
0x0005
,
0x0006
,
0x0007
,
0x0008
,
0x0009
,
0x000A
,
0x000B
,
0x000C
,
0x000D
,
0x000E
,
0x000F
,
0x0010
,
0x0011
,
0x0012
,
0x0013
,
0x0014
,
0x0015
,
0x0016
,
0x0017
,
0x0018
,
0x0019
,
0x001A
,
0x001B
,
0x001C
,
0x001D
,
0x001E
,
0x001F
,
0x0020
,
0x0021
,
0x0022
,
0x0023
,
0x0024
,
0x0025
,
0x0026
,
0x0027
,
0x0028
,
0x0029
,
0x002A
,
0x002B
,
0x002C
,
0x002D
,
0x002E
,
0x002F
,
0x0030
,
0x0031
,
0x0032
,
0x0033
,
0x0034
,
0x0035
,
0x0036
,
0x0037
,
0x0038
,
0x0039
,
0x003A
,
0x003B
,
0x003C
,
0x003D
,
0x003E
,
0x003F
,
0x0040
,
0x0041
,
0x0042
,
0x0043
,
0x0044
,
0x0045
,
0x0046
,
0x0047
,
0x0048
,
0x0049
,
0x004A
,
0x004B
,
0x004C
,
0x004D
,
0x004E
,
0x004F
,
0x0050
,
0x0051
,
0x0052
,
0x0053
,
0x0054
,
0x0055
,
0x0056
,
0x0057
,
0x0058
,
0x0059
,
0x005A
,
0x005B
,
0x005C
,
0x005D
,
0x005E
,
0x005F
,
0x0060
,
0x0061
,
0x0062
,
0x0063
,
0x0064
,
0x0065
,
0x0066
,
0x0067
,
0x0068
,
0x0069
,
0x006A
,
0x006B
,
0x006C
,
0x006D
,
0x006E
,
0x006F
,
0x0070
,
0x0071
,
0x0072
,
0x0073
,
0x0074
,
0x0075
,
0x0076
,
0x0077
,
0x0078
,
0x0079
,
0x007A
,
0x007B
,
0x007C
,
0x007D
,
0x007E
,
0x007F
,
0x20AC
,
0
,
0x201A
,
0
,
0x201E
,
0x2026
,
0x2020
,
0x2021
,
0
,
0x2030
,
0
,
0x2039
,
0
,
0x00A8
,
0x02C7
,
0x00B8
,
0
,
0x2018
,
0x2019
,
0x201C
,
0x201D
,
0x2022
,
0x2013
,
0x2014
,
0
,
0x2122
,
0
,
0x203A
,
0
,
0x00AF
,
0x02DB
,
0
,
0x00A0
,
0
,
0x00A2
,
0x00A3
,
0x00A4
,
0
,
0x00A6
,
0x00A7
,
0x00D8
,
0x00A9
,
0x0156
,
0x00AB
,
0x00AC
,
0x00AD
,
0x00AE
,
0x00C6
,
0x00B0
,
0x00B1
,
0x00B2
,
0x00B3
,
0x00B4
,
0x00B5
,
0x00B6
,
0x00B7
,
0x00F8
,
0x00B9
,
0x0157
,
0x00BB
,
0x00BC
,
0x00BD
,
0x00BE
,
0x00E6
,
0x0104
,
0x012E
,
0x0100
,
0x0106
,
0x00C4
,
0x00C5
,
0x0118
,
0x0112
,
0x010C
,
0x00C9
,
0x0179
,
0x0116
,
0x0122
,
0x0136
,
0x012A
,
0x013B
,
0x0160
,
0x0143
,
0x0145
,
0x00D3
,
0x014C
,
0x00D5
,
0x00D6
,
0x00D7
,
0x0172
,
0x0141
,
0x015A
,
0x016A
,
0x00DC
,
0x017B
,
0x017D
,
0x00DF
,
0x0105
,
0x012F
,
0x0101
,
0x0107
,
0x00E4
,
0x00E5
,
0x0119
,
0x0113
,
0x010D
,
0x00E9
,
0x017A
,
0x0117
,
0x0123
,
0x0137
,
0x012B
,
0x013C
,
0x0161
,
0x0144
,
0x0146
,
0x00F3
,
0x014D
,
0x00F5
,
0x00F6
,
0x00F7
,
0x0173
,
0x0142
,
0x015B
,
0x016B
,
0x00FC
,
0x017C
,
0x017E
,
0x02D9
};
/* 0000-00FC , 253 chars */
static
uchar
tab_uni_cp1257_plane00
[]
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0A
,
0x0B
,
0x0C
,
0x0D
,
0x0E
,
0x0F
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1A
,
0x1B
,
0x1C
,
0x1D
,
0x1E
,
0x1F
,
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0x27
,
0x28
,
0x29
,
0x2A
,
0x2B
,
0x2C
,
0x2D
,
0x2E
,
0x2F
,
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
0x58
,
0x59
,
0x5A
,
0x5B
,
0x5C
,
0x5D
,
0x5E
,
0x5F
,
0x60
,
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
0x78
,
0x79
,
0x7A
,
0x7B
,
0x7C
,
0x7D
,
0x7E
,
0x7F
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA0
,
0x00
,
0xA2
,
0xA3
,
0xA4
,
0x00
,
0xA6
,
0xA7
,
0x8D
,
0xA9
,
0x00
,
0xAB
,
0xAC
,
0xAD
,
0xAE
,
0x9D
,
0xB0
,
0xB1
,
0xB2
,
0xB3
,
0xB4
,
0xB5
,
0xB6
,
0xB7
,
0x8F
,
0xB9
,
0x00
,
0xBB
,
0xBC
,
0xBD
,
0xBE
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xC4
,
0xC5
,
0xAF
,
0x00
,
0x00
,
0xC9
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xD3
,
0x00
,
0xD5
,
0xD6
,
0xD7
,
0xA8
,
0x00
,
0x00
,
0x00
,
0xDC
,
0x00
,
0x00
,
0xDF
,
0x00
,
0x00
,
0x00
,
0x00
,
0xE4
,
0xE5
,
0xBF
,
0x00
,
0x00
,
0xE9
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xF3
,
0x00
,
0xF5
,
0xF6
,
0xF7
,
0xB8
,
0x00
,
0x00
,
0x00
,
0xFC
};
/* 0100-017E , 127 chars */
static
uchar
tab_uni_cp1257_plane01
[]
=
{
0xC2
,
0xE2
,
0x00
,
0x00
,
0xC0
,
0xE0
,
0xC3
,
0xE3
,
0x00
,
0x00
,
0x00
,
0x00
,
0xC8
,
0xE8
,
0x00
,
0x00
,
0x00
,
0x00
,
0xC7
,
0xE7
,
0x00
,
0x00
,
0xCB
,
0xEB
,
0xC6
,
0xE6
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xCC
,
0xEC
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xCE
,
0xEE
,
0x00
,
0x00
,
0xC1
,
0xE1
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xCD
,
0xED
,
0x00
,
0x00
,
0x00
,
0xCF
,
0xEF
,
0x00
,
0x00
,
0x00
,
0x00
,
0xD9
,
0xF9
,
0xD1
,
0xF1
,
0xD2
,
0xF2
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xD4
,
0xF4
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xAA
,
0xBA
,
0x00
,
0x00
,
0xDA
,
0xFA
,
0x00
,
0x00
,
0x00
,
0x00
,
0xD0
,
0xF0
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xDB
,
0xFB
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xD8
,
0xF8
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xCA
,
0xEA
,
0xDD
,
0xFD
,
0xDE
,
0xFE
};
/* 2013-20AC , 154 chars */
static
uchar
tab_uni_cp1257_plane20
[]
=
{
0x96
,
0x97
,
0x00
,
0x00
,
0x00
,
0x91
,
0x92
,
0x82
,
0x00
,
0x93
,
0x94
,
0x84
,
0x00
,
0x86
,
0x87
,
0x95
,
0x00
,
0x00
,
0x00
,
0x85
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x89
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x8B
,
0x9B
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x80
};
/* 02C7-02DB , 21 chars */
static
uchar
tab_uni_cp1257_plane02
[]
=
{
0x8E
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xFF
,
0x00
,
0x9E
};
/* 2122-2122 , 1 chars */
static
uchar
tab_uni_cp1257_plane21
[]
=
{
0x99
};
static
MY_UNI_IDX
idx_uni_cp1257
[]
=
{
{
0x0000
,
0x00FC
,
tab_uni_cp1257_plane00
},
{
0x0100
,
0x017E
,
tab_uni_cp1257_plane01
},
{
0x2013
,
0x20AC
,
tab_uni_cp1257_plane20
},
{
0x02C7
,
0x02DB
,
tab_uni_cp1257_plane02
},
{
0x2122
,
0x2122
,
tab_uni_cp1257_plane21
},
{
0
,
0
,
NULL
}
};
#endif
...
...
@@ -1196,6 +1603,107 @@ static uchar sort_order_koi8_ru[] = {
254
,
223
,
224
,
246
,
227
,
228
,
244
,
226
,
245
,
232
,
233
,
234
,
235
,
236
,
237
,
238
,
239
,
255
,
240
,
241
,
242
,
243
,
230
,
225
,
252
,
251
,
231
,
248
,
253
,
249
,
247
,
250
};
static
uint16
tab_koi8_r_uni
[
256
]
=
{
0
,
0x0001
,
0x0002
,
0x0003
,
0x0004
,
0x0005
,
0x0006
,
0x0007
,
0x0008
,
0x0009
,
0x000A
,
0x000B
,
0x000C
,
0x000D
,
0x000E
,
0x000F
,
0x0010
,
0x0011
,
0x0012
,
0x0013
,
0x0014
,
0x0015
,
0x0016
,
0x0017
,
0x0018
,
0x0019
,
0x001A
,
0x001B
,
0x001C
,
0x001D
,
0x001E
,
0x001F
,
0x0020
,
0x0021
,
0x0022
,
0x0023
,
0x0024
,
0x0025
,
0x0026
,
0x0027
,
0x0028
,
0x0029
,
0x002A
,
0x002B
,
0x002C
,
0x002D
,
0x002E
,
0x002F
,
0x0030
,
0x0031
,
0x0032
,
0x0033
,
0x0034
,
0x0035
,
0x0036
,
0x0037
,
0x0038
,
0x0039
,
0x003A
,
0x003B
,
0x003C
,
0x003D
,
0x003E
,
0x003F
,
0x0040
,
0x0041
,
0x0042
,
0x0043
,
0x0044
,
0x0045
,
0x0046
,
0x0047
,
0x0048
,
0x0049
,
0x004A
,
0x004B
,
0x004C
,
0x004D
,
0x004E
,
0x004F
,
0x0050
,
0x0051
,
0x0052
,
0x0053
,
0x0054
,
0x0055
,
0x0056
,
0x0057
,
0x0058
,
0x0059
,
0x005A
,
0x005B
,
0x005C
,
0x005D
,
0x005E
,
0x005F
,
0x0060
,
0x0061
,
0x0062
,
0x0063
,
0x0064
,
0x0065
,
0x0066
,
0x0067
,
0x0068
,
0x0069
,
0x006A
,
0x006B
,
0x006C
,
0x006D
,
0x006E
,
0x006F
,
0x0070
,
0x0071
,
0x0072
,
0x0073
,
0x0074
,
0x0075
,
0x0076
,
0x0077
,
0x0078
,
0x0079
,
0x007A
,
0x007B
,
0x007C
,
0x007D
,
0x007E
,
0x007F
,
0x2500
,
0x2502
,
0x250C
,
0x2510
,
0x2514
,
0x2518
,
0x251C
,
0x2524
,
0x252C
,
0x2534
,
0x253C
,
0x2580
,
0x2584
,
0x2588
,
0x258C
,
0x2590
,
0x2591
,
0x2592
,
0x2593
,
0x2320
,
0x25A0
,
0x2219
,
0x221A
,
0x2248
,
0x2264
,
0x2265
,
0x00A0
,
0x2321
,
0x00B0
,
0x00B2
,
0x00B7
,
0x00F7
,
0x2550
,
0x2551
,
0x2552
,
0x0451
,
0x2553
,
0x2554
,
0x2555
,
0x2556
,
0x2557
,
0x2558
,
0x2559
,
0x255A
,
0x255B
,
0x255C
,
0x255D
,
0x255E
,
0x255F
,
0x2560
,
0x2561
,
0x0401
,
0x2562
,
0x2563
,
0x2564
,
0x2565
,
0x2566
,
0x2567
,
0x2568
,
0x2569
,
0x256A
,
0x256B
,
0x256C
,
0x00A9
,
0x044E
,
0x0430
,
0x0431
,
0x0446
,
0x0434
,
0x0435
,
0x0444
,
0x0433
,
0x0445
,
0x0438
,
0x0439
,
0x043A
,
0x043B
,
0x043C
,
0x043D
,
0x043E
,
0x043F
,
0x044F
,
0x0440
,
0x0441
,
0x0442
,
0x0443
,
0x0436
,
0x0432
,
0x044C
,
0x044B
,
0x0437
,
0x0448
,
0x044D
,
0x0449
,
0x0447
,
0x044A
,
0x042E
,
0x0410
,
0x0411
,
0x0426
,
0x0414
,
0x0415
,
0x0424
,
0x0413
,
0x0425
,
0x0418
,
0x0419
,
0x041A
,
0x041B
,
0x041C
,
0x041D
,
0x041E
,
0x041F
,
0x042F
,
0x0420
,
0x0421
,
0x0422
,
0x0423
,
0x0416
,
0x0412
,
0x042C
,
0x042B
,
0x0417
,
0x0428
,
0x042D
,
0x0429
,
0x0427
,
0x042A
};
/* 0000-00F7 , 248 chars */
static
uchar
tab_uni_koi8_r_plane00
[]
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0A
,
0x0B
,
0x0C
,
0x0D
,
0x0E
,
0x0F
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1A
,
0x1B
,
0x1C
,
0x1D
,
0x1E
,
0x1F
,
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0x27
,
0x28
,
0x29
,
0x2A
,
0x2B
,
0x2C
,
0x2D
,
0x2E
,
0x2F
,
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
0x58
,
0x59
,
0x5A
,
0x5B
,
0x5C
,
0x5D
,
0x5E
,
0x5F
,
0x60
,
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
0x78
,
0x79
,
0x7A
,
0x7B
,
0x7C
,
0x7D
,
0x7E
,
0x7F
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x9A
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xBF
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x9C
,
0x00
,
0x9D
,
0x00
,
0x00
,
0x00
,
0x00
,
0x9E
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x9F
};
/* 0401-0451 , 81 chars */
static
uchar
tab_uni_koi8_r_plane04
[]
=
{
0xB3
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xE1
,
0xE2
,
0xF7
,
0xE7
,
0xE4
,
0xE5
,
0xF6
,
0xFA
,
0xE9
,
0xEA
,
0xEB
,
0xEC
,
0xED
,
0xEE
,
0xEF
,
0xF0
,
0xF2
,
0xF3
,
0xF4
,
0xF5
,
0xE6
,
0xE8
,
0xE3
,
0xFE
,
0xFB
,
0xFD
,
0xFF
,
0xF9
,
0xF8
,
0xFC
,
0xE0
,
0xF1
,
0xC1
,
0xC2
,
0xD7
,
0xC7
,
0xC4
,
0xC5
,
0xD6
,
0xDA
,
0xC9
,
0xCA
,
0xCB
,
0xCC
,
0xCD
,
0xCE
,
0xCF
,
0xD0
,
0xD2
,
0xD3
,
0xD4
,
0xD5
,
0xC6
,
0xC8
,
0xC3
,
0xDE
,
0xDB
,
0xDD
,
0xDF
,
0xD9
,
0xD8
,
0xDC
,
0xC0
,
0xD1
,
0x00
,
0xA3
};
/* 2500-25A0 , 161 chars */
static
uchar
tab_uni_koi8_r_plane25
[]
=
{
0x80
,
0x00
,
0x81
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x82
,
0x00
,
0x00
,
0x00
,
0x83
,
0x00
,
0x00
,
0x00
,
0x84
,
0x00
,
0x00
,
0x00
,
0x85
,
0x00
,
0x00
,
0x00
,
0x86
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x87
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x88
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x89
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x8A
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA0
,
0xA1
,
0xA2
,
0xA4
,
0xA5
,
0xA6
,
0xA7
,
0xA8
,
0xA9
,
0xAA
,
0xAB
,
0xAC
,
0xAD
,
0xAE
,
0xAF
,
0xB0
,
0xB1
,
0xB2
,
0xB4
,
0xB5
,
0xB6
,
0xB7
,
0xB8
,
0xB9
,
0xBA
,
0xBB
,
0xBC
,
0xBD
,
0xBE
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x8B
,
0x00
,
0x00
,
0x00
,
0x8C
,
0x00
,
0x00
,
0x00
,
0x8D
,
0x00
,
0x00
,
0x00
,
0x8E
,
0x00
,
0x00
,
0x00
,
0x8F
,
0x90
,
0x91
,
0x92
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x94
};
/* 2219-2265 , 77 chars */
static
uchar
tab_uni_koi8_r_plane22
[]
=
{
0x95
,
0x96
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x97
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x98
,
0x99
};
/* 2320-2321 , 2 chars */
static
uchar
tab_uni_koi8_r_plane23
[]
=
{
0x93
,
0x9B
};
static
MY_UNI_IDX
idx_uni_koi8_r
[]
=
{
{
0x0000
,
0x00F7
,
tab_uni_koi8_r_plane00
},
{
0x0401
,
0x0451
,
tab_uni_koi8_r_plane04
},
{
0x2500
,
0x25A0
,
tab_uni_koi8_r_plane25
},
{
0x2219
,
0x2265
,
tab_uni_koi8_r_plane22
},
{
0x2320
,
0x2321
,
tab_uni_koi8_r_plane23
},
{
0
,
0
,
NULL
}
};
#endif
#ifdef HAVE_CHARSET_koi8_ukr
...
...
@@ -1280,6 +1788,116 @@ static uchar sort_order_koi8_ukr[] = {
163
,
128
,
129
,
155
,
133
,
134
,
153
,
131
,
154
,
139
,
142
,
143
,
144
,
145
,
146
,
147
,
148
,
164
,
149
,
150
,
151
,
152
,
137
,
130
,
161
,
160
,
138
,
157
,
162
,
158
,
156
,
159
};
static
uint16
tab_koi8_u_uni
[
256
]
=
{
0
,
0x0001
,
0x0002
,
0x0003
,
0x0004
,
0x0005
,
0x0006
,
0x0007
,
0x0008
,
0x0009
,
0x000A
,
0x000B
,
0x000C
,
0x000D
,
0x000E
,
0x000F
,
0x0010
,
0x0011
,
0x0012
,
0x0013
,
0x0014
,
0x0015
,
0x0016
,
0x0017
,
0x0018
,
0x0019
,
0x001A
,
0x001B
,
0x001C
,
0x001D
,
0x001E
,
0x001F
,
0x0020
,
0x0021
,
0x0022
,
0x0023
,
0x0024
,
0x0025
,
0x0026
,
0x0027
,
0x0028
,
0x0029
,
0x002A
,
0x002B
,
0x002C
,
0x002D
,
0x002E
,
0x002F
,
0x0030
,
0x0031
,
0x0032
,
0x0033
,
0x0034
,
0x0035
,
0x0036
,
0x0037
,
0x0038
,
0x0039
,
0x003A
,
0x003B
,
0x003C
,
0x003D
,
0x003E
,
0x003F
,
0x0040
,
0x0041
,
0x0042
,
0x0043
,
0x0044
,
0x0045
,
0x0046
,
0x0047
,
0x0048
,
0x0049
,
0x004A
,
0x004B
,
0x004C
,
0x004D
,
0x004E
,
0x004F
,
0x0050
,
0x0051
,
0x0052
,
0x0053
,
0x0054
,
0x0055
,
0x0056
,
0x0057
,
0x0058
,
0x0059
,
0x005A
,
0x005B
,
0x005C
,
0x005D
,
0x005E
,
0x005F
,
0x0060
,
0x0061
,
0x0062
,
0x0063
,
0x0064
,
0x0065
,
0x0066
,
0x0067
,
0x0068
,
0x0069
,
0x006A
,
0x006B
,
0x006C
,
0x006D
,
0x006E
,
0x006F
,
0x0070
,
0x0071
,
0x0072
,
0x0073
,
0x0074
,
0x0075
,
0x0076
,
0x0077
,
0x0078
,
0x0079
,
0x007A
,
0x007B
,
0x007C
,
0x007D
,
0x007E
,
0
,
0x2500
,
0x2502
,
0x250C
,
0x2510
,
0x2514
,
0x2518
,
0x251C
,
0x2524
,
0x252C
,
0x2534
,
0x253C
,
0x2580
,
0x2584
,
0x2588
,
0x258C
,
0x2590
,
0x2591
,
0x2592
,
0x2593
,
0x2320
,
0x25A0
,
0x2022
,
0x221A
,
0x2248
,
0x2264
,
0x2265
,
0x00A0
,
0x2321
,
0x00B0
,
0x00B2
,
0x00B7
,
0x00F7
,
0x2550
,
0x2551
,
0x2552
,
0x0451
,
0x0454
,
0x2554
,
0x0456
,
0x0457
,
0x2557
,
0x2558
,
0x2559
,
0x255A
,
0x255B
,
0x0491
,
0x255D
,
0x255E
,
0x255F
,
0x2560
,
0x2561
,
0x0401
,
0x0404
,
0x2563
,
0x0406
,
0x0407
,
0x2566
,
0x2567
,
0x2568
,
0x2569
,
0x256A
,
0x0490
,
0x256C
,
0x00A9
,
0x044E
,
0x0430
,
0x0431
,
0x0446
,
0x0434
,
0x0435
,
0x0444
,
0x0433
,
0x0445
,
0x0438
,
0x0439
,
0x043A
,
0x043B
,
0x043C
,
0x043D
,
0x043E
,
0x043F
,
0x044F
,
0x0440
,
0x0441
,
0x0442
,
0x0443
,
0x0436
,
0x0432
,
0x044C
,
0x044B
,
0x0437
,
0x0448
,
0x044D
,
0x0449
,
0x0447
,
0x044A
,
0x042E
,
0x0410
,
0x0411
,
0x0426
,
0x0414
,
0x0415
,
0x0424
,
0x0413
,
0x0425
,
0x0418
,
0x0419
,
0x041A
,
0x041B
,
0x041C
,
0x041D
,
0x041E
,
0x041F
,
0x042F
,
0x0420
,
0x0421
,
0x0422
,
0x0423
,
0x0416
,
0x0412
,
0x042C
,
0x042B
,
0x0417
,
0x0428
,
0x042D
,
0x0429
,
0x0427
,
0x042A
};
/* 0000-00F7 , 248 chars */
static
uchar
tab_uni_koi8_u_plane00
[]
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0A
,
0x0B
,
0x0C
,
0x0D
,
0x0E
,
0x0F
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1A
,
0x1B
,
0x1C
,
0x1D
,
0x1E
,
0x1F
,
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0x27
,
0x28
,
0x29
,
0x2A
,
0x2B
,
0x2C
,
0x2D
,
0x2E
,
0x2F
,
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
0x58
,
0x59
,
0x5A
,
0x5B
,
0x5C
,
0x5D
,
0x5E
,
0x5F
,
0x60
,
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
0x78
,
0x79
,
0x7A
,
0x7B
,
0x7C
,
0x7D
,
0x7E
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x9A
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xBF
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x9C
,
0x00
,
0x9D
,
0x00
,
0x00
,
0x00
,
0x00
,
0x9E
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x9F
};
/* 0401-0491 , 145 chars */
static
uchar
tab_uni_koi8_u_plane04
[]
=
{
0xB3
,
0x00
,
0x00
,
0xB4
,
0x00
,
0xB6
,
0xB7
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xE1
,
0xE2
,
0xF7
,
0xE7
,
0xE4
,
0xE5
,
0xF6
,
0xFA
,
0xE9
,
0xEA
,
0xEB
,
0xEC
,
0xED
,
0xEE
,
0xEF
,
0xF0
,
0xF2
,
0xF3
,
0xF4
,
0xF5
,
0xE6
,
0xE8
,
0xE3
,
0xFE
,
0xFB
,
0xFD
,
0xFF
,
0xF9
,
0xF8
,
0xFC
,
0xE0
,
0xF1
,
0xC1
,
0xC2
,
0xD7
,
0xC7
,
0xC4
,
0xC5
,
0xD6
,
0xDA
,
0xC9
,
0xCA
,
0xCB
,
0xCC
,
0xCD
,
0xCE
,
0xCF
,
0xD0
,
0xD2
,
0xD3
,
0xD4
,
0xD5
,
0xC6
,
0xC8
,
0xC3
,
0xDE
,
0xDB
,
0xDD
,
0xDF
,
0xD9
,
0xD8
,
0xDC
,
0xC0
,
0xD1
,
0x00
,
0xA3
,
0x00
,
0x00
,
0xA4
,
0x00
,
0xA6
,
0xA7
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xBD
,
0xAD
};
/* 2500-25A0 , 161 chars */
static
uchar
tab_uni_koi8_u_plane25
[]
=
{
0x80
,
0x00
,
0x81
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x82
,
0x00
,
0x00
,
0x00
,
0x83
,
0x00
,
0x00
,
0x00
,
0x84
,
0x00
,
0x00
,
0x00
,
0x85
,
0x00
,
0x00
,
0x00
,
0x86
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x87
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x88
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x89
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x8A
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA0
,
0xA1
,
0xA2
,
0x00
,
0xA5
,
0x00
,
0x00
,
0xA8
,
0xA9
,
0xAA
,
0xAB
,
0xAC
,
0x00
,
0xAE
,
0xAF
,
0xB0
,
0xB1
,
0xB2
,
0x00
,
0xB5
,
0x00
,
0x00
,
0xB8
,
0xB9
,
0xBA
,
0xBB
,
0xBC
,
0x00
,
0xBE
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x8B
,
0x00
,
0x00
,
0x00
,
0x8C
,
0x00
,
0x00
,
0x00
,
0x8D
,
0x00
,
0x00
,
0x00
,
0x8E
,
0x00
,
0x00
,
0x00
,
0x8F
,
0x90
,
0x91
,
0x92
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x94
};
/* 221A-2265 , 76 chars */
static
uchar
tab_uni_koi8_u_plane22
[]
=
{
0x96
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x97
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x98
,
0x99
};
/* 2320-2321 , 2 chars */
static
uchar
tab_uni_koi8_u_plane23
[]
=
{
0x93
,
0x9B
};
/* 2022-2022 , 1 chars */
static
uchar
tab_uni_koi8_u_plane20
[]
=
{
0x95
};
static
MY_UNI_IDX
idx_uni_koi8_u
[]
=
{
{
0x0000
,
0x00F7
,
tab_uni_koi8_u_plane00
},
{
0x0401
,
0x0491
,
tab_uni_koi8_u_plane04
},
{
0x2500
,
0x25A0
,
tab_uni_koi8_u_plane25
},
{
0x221A
,
0x2265
,
tab_uni_koi8_u_plane22
},
{
0x2320
,
0x2321
,
tab_uni_koi8_u_plane23
},
{
0x2022
,
0x2022
,
tab_uni_koi8_u_plane20
},
{
0
,
0
,
NULL
}
};
#endif
#ifdef HAVE_CHARSET_latin1
...
...
@@ -1532,6 +2150,77 @@ static uchar sort_order_latin5[] = {
204
,
205
,
206
,
207
,
208
,
209
,
210
,
68
,
211
,
212
,
213
,
214
,
215
,
216
,
217
,
218
,
73
,
219
,
220
,
221
,
222
,
223
,
83
,
250
,
225
,
226
,
227
,
228
,
91
,
75
,
88
,
255
};
static
uint16
tab_8859_9_uni
[
256
]
=
{
0
,
0x0001
,
0x0002
,
0x0003
,
0x0004
,
0x0005
,
0x0006
,
0x0007
,
0x0008
,
0x0009
,
0x000A
,
0x000B
,
0x000C
,
0x000D
,
0x000E
,
0x000F
,
0x0010
,
0x0011
,
0x0012
,
0x0013
,
0x0014
,
0x0015
,
0x0016
,
0x0017
,
0x0018
,
0x0019
,
0x001A
,
0x001B
,
0x001C
,
0x001D
,
0x001E
,
0x001F
,
0x0020
,
0x0021
,
0x0022
,
0x0023
,
0x0024
,
0x0025
,
0x0026
,
0x0027
,
0x0028
,
0x0029
,
0x002A
,
0x002B
,
0x002C
,
0x002D
,
0x002E
,
0x002F
,
0x0030
,
0x0031
,
0x0032
,
0x0033
,
0x0034
,
0x0035
,
0x0036
,
0x0037
,
0x0038
,
0x0039
,
0x003A
,
0x003B
,
0x003C
,
0x003D
,
0x003E
,
0x003F
,
0x0040
,
0x0041
,
0x0042
,
0x0043
,
0x0044
,
0x0045
,
0x0046
,
0x0047
,
0x0048
,
0x0049
,
0x004A
,
0x004B
,
0x004C
,
0x004D
,
0x004E
,
0x004F
,
0x0050
,
0x0051
,
0x0052
,
0x0053
,
0x0054
,
0x0055
,
0x0056
,
0x0057
,
0x0058
,
0x0059
,
0x005A
,
0x005B
,
0x005C
,
0x005D
,
0x005E
,
0x005F
,
0x0060
,
0x0061
,
0x0062
,
0x0063
,
0x0064
,
0x0065
,
0x0066
,
0x0067
,
0x0068
,
0x0069
,
0x006A
,
0x006B
,
0x006C
,
0x006D
,
0x006E
,
0x006F
,
0x0070
,
0x0071
,
0x0072
,
0x0073
,
0x0074
,
0x0075
,
0x0076
,
0x0077
,
0x0078
,
0x0079
,
0x007A
,
0x007B
,
0x007C
,
0x007D
,
0x007E
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0x00A0
,
0x00A1
,
0x00A2
,
0x00A3
,
0x00A4
,
0x00A5
,
0x00A6
,
0x00A7
,
0x00A8
,
0x00A9
,
0x00AA
,
0x00AB
,
0x00AC
,
0x00AD
,
0x00AE
,
0x00AF
,
0x00B0
,
0x00B1
,
0x00B2
,
0x00B3
,
0x00B4
,
0x00B5
,
0x00B6
,
0x00B7
,
0x00B8
,
0x00B9
,
0x00BA
,
0x00BB
,
0x00BC
,
0x00BD
,
0x00BE
,
0x00BF
,
0x00C0
,
0x00C1
,
0x00C2
,
0x00C3
,
0x00C4
,
0x00C5
,
0x00C6
,
0x00C7
,
0x00C8
,
0x00C9
,
0x00CA
,
0x00CB
,
0x00CC
,
0x00CD
,
0x00CE
,
0x00CF
,
0x011E
,
0x00D1
,
0x00D2
,
0x00D3
,
0x00D4
,
0x00D5
,
0x00D6
,
0x00D7
,
0x00D8
,
0x00D9
,
0x00DA
,
0x00DB
,
0x00DC
,
0x0130
,
0x015E
,
0x00DF
,
0x00E0
,
0x00E1
,
0x00E2
,
0x00E3
,
0x00E4
,
0x00E5
,
0x00E6
,
0x00E7
,
0x00E8
,
0x00E9
,
0x00EA
,
0x00EB
,
0x00EC
,
0x00ED
,
0x00EE
,
0x00EF
,
0x011F
,
0x00F1
,
0x00F2
,
0x00F3
,
0x00F4
,
0x00F5
,
0x00F6
,
0x00F7
,
0x00F8
,
0x00F9
,
0x00FA
,
0x00FB
,
0x00FC
,
0x0131
,
0x015F
,
0x00FF
};
/* 0000-00FF , 256 chars */
static
uchar
tab_uni_8859_9_plane00
[]
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0A
,
0x0B
,
0x0C
,
0x0D
,
0x0E
,
0x0F
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1A
,
0x1B
,
0x1C
,
0x1D
,
0x1E
,
0x1F
,
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0x27
,
0x28
,
0x29
,
0x2A
,
0x2B
,
0x2C
,
0x2D
,
0x2E
,
0x2F
,
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
0x58
,
0x59
,
0x5A
,
0x5B
,
0x5C
,
0x5D
,
0x5E
,
0x5F
,
0x60
,
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
0x78
,
0x79
,
0x7A
,
0x7B
,
0x7C
,
0x7D
,
0x7E
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA0
,
0xA1
,
0xA2
,
0xA3
,
0xA4
,
0xA5
,
0xA6
,
0xA7
,
0xA8
,
0xA9
,
0xAA
,
0xAB
,
0xAC
,
0xAD
,
0xAE
,
0xAF
,
0xB0
,
0xB1
,
0xB2
,
0xB3
,
0xB4
,
0xB5
,
0xB6
,
0xB7
,
0xB8
,
0xB9
,
0xBA
,
0xBB
,
0xBC
,
0xBD
,
0xBE
,
0xBF
,
0xC0
,
0xC1
,
0xC2
,
0xC3
,
0xC4
,
0xC5
,
0xC6
,
0xC7
,
0xC8
,
0xC9
,
0xCA
,
0xCB
,
0xCC
,
0xCD
,
0xCE
,
0xCF
,
0x00
,
0xD1
,
0xD2
,
0xD3
,
0xD4
,
0xD5
,
0xD6
,
0xD7
,
0xD8
,
0xD9
,
0xDA
,
0xDB
,
0xDC
,
0x00
,
0x00
,
0xDF
,
0xE0
,
0xE1
,
0xE2
,
0xE3
,
0xE4
,
0xE5
,
0xE6
,
0xE7
,
0xE8
,
0xE9
,
0xEA
,
0xEB
,
0xEC
,
0xED
,
0xEE
,
0xEF
,
0x00
,
0xF1
,
0xF2
,
0xF3
,
0xF4
,
0xF5
,
0xF6
,
0xF7
,
0xF8
,
0xF9
,
0xFA
,
0xFB
,
0xFC
,
0x00
,
0x00
,
0xFF
};
/* 011E-015F , 66 chars */
static
uchar
tab_uni_8859_9_plane01
[]
=
{
0xD0
,
0xF0
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xDD
,
0xFD
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xDE
,
0xFE
};
static
MY_UNI_IDX
idx_uni_8859_9
[]
=
{
{
0x0000
,
0x00FF
,
tab_uni_8859_9_plane00
},
{
0x011E
,
0x015F
,
tab_uni_8859_9_plane01
},
{
0
,
0
,
NULL
}
};
#endif
#ifdef HAVE_CHARSET_swe7
...
...
@@ -1700,6 +2389,60 @@ static uchar sort_order_usa7[] = {
224
,
225
,
226
,
227
,
228
,
229
,
230
,
231
,
232
,
233
,
234
,
235
,
236
,
237
,
238
,
239
,
240
,
241
,
242
,
243
,
244
,
245
,
246
,
247
,
248
,
249
,
250
,
251
,
252
,
253
,
254
,
255
};
static
uint16
tab_us_ascii_uni
[
256
]
=
{
0
,
0x0001
,
0x0002
,
0x0003
,
0x0004
,
0x0005
,
0x0006
,
0x0007
,
0x0008
,
0x0009
,
0x000A
,
0x000B
,
0x000C
,
0x000D
,
0x000E
,
0x000F
,
0x0010
,
0x0011
,
0x0012
,
0x0013
,
0x0014
,
0x0015
,
0x0016
,
0x0017
,
0x0018
,
0x0019
,
0x001A
,
0x001B
,
0x001C
,
0x001D
,
0x001E
,
0x001F
,
0x0020
,
0x0021
,
0x0022
,
0x0023
,
0x0024
,
0x0025
,
0x0026
,
0x0027
,
0x0028
,
0x0029
,
0x002A
,
0x002B
,
0x002C
,
0x002D
,
0x002E
,
0x002F
,
0x0030
,
0x0031
,
0x0032
,
0x0033
,
0x0034
,
0x0035
,
0x0036
,
0x0037
,
0x0038
,
0x0039
,
0x003A
,
0x003B
,
0x003C
,
0x003D
,
0x003E
,
0x003F
,
0x0040
,
0x0041
,
0x0042
,
0x0043
,
0x0044
,
0x0045
,
0x0046
,
0x0047
,
0x0048
,
0x0049
,
0x004A
,
0x004B
,
0x004C
,
0x004D
,
0x004E
,
0x004F
,
0x0050
,
0x0051
,
0x0052
,
0x0053
,
0x0054
,
0x0055
,
0x0056
,
0x0057
,
0x0058
,
0x0059
,
0x005A
,
0x005B
,
0x005C
,
0x005D
,
0x005E
,
0x005F
,
0x0060
,
0x0061
,
0x0062
,
0x0063
,
0x0064
,
0x0065
,
0x0066
,
0x0067
,
0x0068
,
0x0069
,
0x006A
,
0x006B
,
0x006C
,
0x006D
,
0x006E
,
0x006F
,
0x0070
,
0x0071
,
0x0072
,
0x0073
,
0x0074
,
0x0075
,
0x0076
,
0x0077
,
0x0078
,
0x0079
,
0x007A
,
0x007B
,
0x007C
,
0x007D
,
0x007E
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
};
/* 0000-007E , 127 chars */
static
uchar
tab_uni_us_ascii_plane00
[]
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0A
,
0x0B
,
0x0C
,
0x0D
,
0x0E
,
0x0F
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1A
,
0x1B
,
0x1C
,
0x1D
,
0x1E
,
0x1F
,
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0x27
,
0x28
,
0x29
,
0x2A
,
0x2B
,
0x2C
,
0x2D
,
0x2E
,
0x2F
,
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
0x58
,
0x59
,
0x5A
,
0x5B
,
0x5C
,
0x5D
,
0x5E
,
0x5F
,
0x60
,
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
0x78
,
0x79
,
0x7A
,
0x7B
,
0x7C
,
0x7D
,
0x7E
};
static
MY_UNI_IDX
idx_uni_us_ascii
[]
=
{
{
0x0000
,
0x007E
,
tab_uni_us_ascii_plane00
},
{
0
,
0
,
NULL
}
};
#endif
#ifdef HAVE_CHARSET_win1250
...
...
@@ -1784,6 +2527,105 @@ static uchar sort_order_win1250[] = {
88
,
65
,
65
,
65
,
65
,
80
,
69
,
67
,
68
,
73
,
73
,
73
,
73
,
77
,
77
,
70
,
71
,
83
,
83
,
85
,
85
,
85
,
85
,
247
,
88
,
92
,
92
,
92
,
92
,
96
,
91
,
255
};
static
uint16
tab_cp1250_uni
[
256
]
=
{
0
,
0x0001
,
0x0002
,
0x0003
,
0x0004
,
0x0005
,
0x0006
,
0x0007
,
0x0008
,
0x0009
,
0x000A
,
0x000B
,
0x000C
,
0x000D
,
0x000E
,
0x000F
,
0x0010
,
0x0011
,
0x0012
,
0x0013
,
0x0014
,
0x0015
,
0x0016
,
0x0017
,
0x0018
,
0x0019
,
0x001A
,
0x001B
,
0x001C
,
0x001D
,
0x001E
,
0x001F
,
0x0020
,
0x0021
,
0x0022
,
0x0023
,
0x0024
,
0x0025
,
0x0026
,
0x0027
,
0x0028
,
0x0029
,
0x002A
,
0x002B
,
0x002C
,
0x002D
,
0x002E
,
0x002F
,
0x0030
,
0x0031
,
0x0032
,
0x0033
,
0x0034
,
0x0035
,
0x0036
,
0x0037
,
0x0038
,
0x0039
,
0x003A
,
0x003B
,
0x003C
,
0x003D
,
0x003E
,
0x003F
,
0x0040
,
0x0041
,
0x0042
,
0x0043
,
0x0044
,
0x0045
,
0x0046
,
0x0047
,
0x0048
,
0x0049
,
0x004A
,
0x004B
,
0x004C
,
0x004D
,
0x004E
,
0x004F
,
0x0050
,
0x0051
,
0x0052
,
0x0053
,
0x0054
,
0x0055
,
0x0056
,
0x0057
,
0x0058
,
0x0059
,
0x005A
,
0x005B
,
0x005C
,
0x005D
,
0x005E
,
0x005F
,
0x0060
,
0x0061
,
0x0062
,
0x0063
,
0x0064
,
0x0065
,
0x0066
,
0x0067
,
0x0068
,
0x0069
,
0x006A
,
0x006B
,
0x006C
,
0x006D
,
0x006E
,
0x006F
,
0x0070
,
0x0071
,
0x0072
,
0x0073
,
0x0074
,
0x0075
,
0x0076
,
0x0077
,
0x0078
,
0x0079
,
0x007A
,
0x007B
,
0x007C
,
0x007D
,
0x007E
,
0x007F
,
0x20AC
,
0
,
0x201A
,
0
,
0x201E
,
0x2026
,
0x2020
,
0x2021
,
0
,
0x2030
,
0x0160
,
0x2039
,
0x015A
,
0x0164
,
0x017D
,
0x0179
,
0
,
0x2018
,
0x2019
,
0x201C
,
0x201D
,
0x2022
,
0x2013
,
0x2014
,
0
,
0x2122
,
0x0161
,
0x203A
,
0x015B
,
0x0165
,
0x017E
,
0x017A
,
0x00A0
,
0x02C7
,
0x02D8
,
0x0141
,
0x00A4
,
0x0104
,
0x00A6
,
0x00A7
,
0x00A8
,
0x00A9
,
0x015E
,
0x00AB
,
0x00AC
,
0x00AD
,
0x00AE
,
0x017B
,
0x00B0
,
0x00B1
,
0x02DB
,
0x0142
,
0x00B4
,
0x00B5
,
0x00B6
,
0x00B7
,
0x00B8
,
0x0105
,
0x015F
,
0x00BB
,
0x013D
,
0x02DD
,
0x013E
,
0x017C
,
0x0154
,
0x00C1
,
0x00C2
,
0x0102
,
0x00C4
,
0x0139
,
0x0106
,
0x00C7
,
0x010C
,
0x00C9
,
0x0118
,
0x00CB
,
0x011A
,
0x00CD
,
0x00CE
,
0x010E
,
0x0110
,
0x0143
,
0x0147
,
0x00D3
,
0x00D4
,
0x0150
,
0x00D6
,
0x00D7
,
0x0158
,
0x016E
,
0x00DA
,
0x0170
,
0x00DC
,
0x00DD
,
0x0162
,
0x00DF
,
0x0155
,
0x00E1
,
0x00E2
,
0x0103
,
0x00E4
,
0x013A
,
0x0107
,
0x00E7
,
0x010D
,
0x00E9
,
0x0119
,
0x00EB
,
0x011B
,
0x00ED
,
0x00EE
,
0x010F
,
0x0111
,
0x0144
,
0x0148
,
0x00F3
,
0x00F4
,
0x0151
,
0x00F6
,
0x00F7
,
0x0159
,
0x016F
,
0x00FA
,
0x0171
,
0x00FC
,
0x00FD
,
0x0163
,
0x02D9
};
/* 0000-00FD , 254 chars */
static
uchar
tab_uni_cp1250_plane00
[]
=
{
0x00
,
0x01
,
0x02
,
0x03
,
0x04
,
0x05
,
0x06
,
0x07
,
0x08
,
0x09
,
0x0A
,
0x0B
,
0x0C
,
0x0D
,
0x0E
,
0x0F
,
0x10
,
0x11
,
0x12
,
0x13
,
0x14
,
0x15
,
0x16
,
0x17
,
0x18
,
0x19
,
0x1A
,
0x1B
,
0x1C
,
0x1D
,
0x1E
,
0x1F
,
0x20
,
0x21
,
0x22
,
0x23
,
0x24
,
0x25
,
0x26
,
0x27
,
0x28
,
0x29
,
0x2A
,
0x2B
,
0x2C
,
0x2D
,
0x2E
,
0x2F
,
0x30
,
0x31
,
0x32
,
0x33
,
0x34
,
0x35
,
0x36
,
0x37
,
0x38
,
0x39
,
0x3A
,
0x3B
,
0x3C
,
0x3D
,
0x3E
,
0x3F
,
0x40
,
0x41
,
0x42
,
0x43
,
0x44
,
0x45
,
0x46
,
0x47
,
0x48
,
0x49
,
0x4A
,
0x4B
,
0x4C
,
0x4D
,
0x4E
,
0x4F
,
0x50
,
0x51
,
0x52
,
0x53
,
0x54
,
0x55
,
0x56
,
0x57
,
0x58
,
0x59
,
0x5A
,
0x5B
,
0x5C
,
0x5D
,
0x5E
,
0x5F
,
0x60
,
0x61
,
0x62
,
0x63
,
0x64
,
0x65
,
0x66
,
0x67
,
0x68
,
0x69
,
0x6A
,
0x6B
,
0x6C
,
0x6D
,
0x6E
,
0x6F
,
0x70
,
0x71
,
0x72
,
0x73
,
0x74
,
0x75
,
0x76
,
0x77
,
0x78
,
0x79
,
0x7A
,
0x7B
,
0x7C
,
0x7D
,
0x7E
,
0x7F
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA0
,
0x00
,
0x00
,
0x00
,
0xA4
,
0x00
,
0xA6
,
0xA7
,
0xA8
,
0xA9
,
0x00
,
0xAB
,
0xAC
,
0xAD
,
0xAE
,
0x00
,
0xB0
,
0xB1
,
0x00
,
0x00
,
0xB4
,
0xB5
,
0xB6
,
0xB7
,
0xB8
,
0x00
,
0x00
,
0xBB
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xC1
,
0xC2
,
0x00
,
0xC4
,
0x00
,
0x00
,
0xC7
,
0x00
,
0xC9
,
0x00
,
0xCB
,
0x00
,
0xCD
,
0xCE
,
0x00
,
0x00
,
0x00
,
0x00
,
0xD3
,
0xD4
,
0x00
,
0xD6
,
0xD7
,
0x00
,
0x00
,
0xDA
,
0x00
,
0xDC
,
0xDD
,
0x00
,
0xDF
,
0x00
,
0xE1
,
0xE2
,
0x00
,
0xE4
,
0x00
,
0x00
,
0xE7
,
0x00
,
0xE9
,
0x00
,
0xEB
,
0x00
,
0xED
,
0xEE
,
0x00
,
0x00
,
0x00
,
0x00
,
0xF3
,
0xF4
,
0x00
,
0xF6
,
0xF7
,
0x00
,
0x00
,
0xFA
,
0x00
,
0xFC
,
0xFD
};
/* 0102-017E , 125 chars */
static
uchar
tab_uni_cp1250_plane01
[]
=
{
0xC3
,
0xE3
,
0xA5
,
0xB9
,
0xC6
,
0xE6
,
0x00
,
0x00
,
0x00
,
0x00
,
0xC8
,
0xE8
,
0xCF
,
0xEF
,
0xD0
,
0xF0
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xCA
,
0xEA
,
0xCC
,
0xEC
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xC5
,
0xE5
,
0x00
,
0x00
,
0xBC
,
0xBE
,
0x00
,
0x00
,
0xA3
,
0xB3
,
0xD1
,
0xF1
,
0x00
,
0x00
,
0xD2
,
0xF2
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xD5
,
0xF5
,
0x00
,
0x00
,
0xC0
,
0xE0
,
0x00
,
0x00
,
0xD8
,
0xF8
,
0x8C
,
0x9C
,
0x00
,
0x00
,
0xAA
,
0xBA
,
0x8A
,
0x9A
,
0xDE
,
0xFE
,
0x8D
,
0x9D
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xD9
,
0xF9
,
0xDB
,
0xFB
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x8F
,
0x9F
,
0xAF
,
0xBF
,
0x8E
,
0x9E
};
/* 2013-20AC , 154 chars */
static
uchar
tab_uni_cp1250_plane20
[]
=
{
0x96
,
0x97
,
0x00
,
0x00
,
0x00
,
0x91
,
0x92
,
0x82
,
0x00
,
0x93
,
0x94
,
0x84
,
0x00
,
0x86
,
0x87
,
0x95
,
0x00
,
0x00
,
0x00
,
0x85
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x89
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x8B
,
0x9B
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x80
};
/* 02C7-02DD , 23 chars */
static
uchar
tab_uni_cp1250_plane02
[]
=
{
0xA1
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0xA2
,
0xFF
,
0x00
,
0xB2
,
0x00
,
0xBD
};
/* 2122-2122 , 1 chars */
static
uchar
tab_uni_cp1250_plane21
[]
=
{
0x99
};
static
MY_UNI_IDX
idx_uni_cp1250
[]
=
{
{
0x0000
,
0x00FD
,
tab_uni_cp1250_plane00
},
{
0x0102
,
0x017E
,
tab_uni_cp1250_plane01
},
{
0x2013
,
0x20AC
,
tab_uni_cp1250_plane20
},
{
0x02C7
,
0x02DD
,
tab_uni_cp1250_plane02
},
{
0x2122
,
0x2122
,
tab_uni_cp1250_plane21
},
{
0
,
0
,
NULL
}
};
#endif
#ifdef HAVE_CHARSET_win1251
...
...
@@ -1966,14 +2808,18 @@ CHARSET_INFO compiled_charsets[] = {
to_lower_latin1
,
to_upper_latin1
,
sort_order_latin1
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_8859_1_uni
,
/* tab_to_uni */
idx_uni_8859_1
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -1986,20 +2832,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_big5
{
1
,
/* number */
"big5"
,
/* name */
1
,
/* number */
"big5"
,
/* name */
ctype_big5
,
to_lower_big5
,
to_upper_big5
,
sort_order_big5
,
1
,
/* strxfrm_multiply */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
1
,
/* strxfrm_multiply */
my_strnncoll_big5
,
my_strnxfrm_big5
,
my_like_range_big5
,
2
,
/* mbmaxlen */
2
,
/* mbmaxlen */
ismbchar_big5
,
ismbhead_big5
,
mbcharlen_big5
,
NULL
,
/* mb_wc */
NULL
,
/* wc_mb */
my_caseup_str_mb
,
my_casedn_str_mb
,
my_caseup_mb
,
...
...
@@ -2012,20 +2862,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_cp1251
{
14
,
/* number */
"cp1251"
,
/* name */
14
,
/* number */
"cp1251"
,
/* name */
ctype_cp1251
,
to_lower_cp1251
,
to_upper_cp1251
,
sort_order_cp1251
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_cp1251_uni
,
/* tab_to_uni */
idx_uni_cp1251
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2038,20 +2892,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_cp1257
{
29
,
/* number */
"cp1257"
,
/* name */
29
,
/* number */
"cp1257"
,
/* name */
ctype_cp1257
,
to_lower_cp1257
,
to_upper_cp1257
,
sort_order_cp1257
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_cp1257_uni
,
/* tab_to_uni */
idx_uni_cp1257
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2064,20 +2922,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_croat
{
27
,
/* number */
"croat"
,
/* name */
27
,
/* number */
"croat"
,
/* name */
ctype_croat
,
to_lower_croat
,
to_upper_croat
,
sort_order_croat
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_8859_2_uni
,
/* tab_to_uni */
idx_uni_8859_2
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2090,20 +2952,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_czech
{
2
,
/* number */
"czech"
,
/* name */
2
,
/* number */
"czech"
,
/* name */
ctype_czech
,
to_lower_czech
,
to_upper_czech
,
sort_order_czech
,
4
,
/* strxfrm_multiply */
tab_8859_2_uni
,
/* tab_to_uni */
idx_uni_8859_2
,
/* tab_from_uni */
4
,
/* strxfrm_multiply */
my_strnncoll_czech
,
my_strnxfrm_czech
,
my_like_range_czech
,
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2116,20 +2982,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_danish
{
15
,
/* number */
"danish"
,
/* name */
15
,
/* number */
"danish"
,
/* name */
ctype_danish
,
to_lower_danish
,
to_upper_danish
,
sort_order_danish
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_8859_1_uni
,
/* tab_to_uni */
idx_uni_8859_1
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2142,20 +3012,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_dec8
{
3
,
/* number */
"dec8"
,
/* name */
3
,
/* number */
"dec8"
,
/* name */
ctype_dec8
,
to_lower_dec8
,
to_upper_dec8
,
sort_order_dec8
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2168,20 +3042,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_dos
{
4
,
/* number */
"dos"
,
/* name */
4
,
/* number */
"dos"
,
/* name */
ctype_dos
,
to_lower_dos
,
to_upper_dos
,
sort_order_dos
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2194,20 +3072,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_estonia
{
20
,
/* number */
"estonia"
,
/* name */
20
,
/* number */
"estonia"
,
/* name */
ctype_estonia
,
to_lower_estonia
,
to_upper_estonia
,
sort_order_estonia
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2220,20 +3102,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_euc_kr
{
19
,
/* number */
"euc_kr"
,
/* name */
19
,
/* number */
"euc_kr"
,
/* name */
ctype_euc_kr
,
to_lower_euc_kr
,
to_upper_euc_kr
,
sort_order_euc_kr
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
2
,
/* mbmaxlen */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
2
,
/* mbmaxlen */
ismbchar_euc_kr
,
ismbhead_euc_kr
,
mbcharlen_euc_kr
,
NULL
,
/* mb_wc */
NULL
,
/* wc_mb */
my_caseup_str_mb
,
my_casedn_str_mb
,
my_caseup_mb
,
...
...
@@ -2246,20 +3132,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_gb2312
{
24
,
/* number */
"gb2312"
,
/* name */
24
,
/* number */
"gb2312"
,
/* name */
ctype_gb2312
,
to_lower_gb2312
,
to_upper_gb2312
,
sort_order_gb2312
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
2
,
/* mbmaxlen */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
2
,
/* mbmaxlen */
ismbchar_gb2312
,
ismbhead_gb2312
,
mbcharlen_gb2312
,
NULL
,
/* mb_wc */
NULL
,
/* wc_mb */
my_caseup_str_mb
,
my_casedn_str_mb
,
my_caseup_mb
,
...
...
@@ -2272,20 +3162,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_gbk
{
28
,
/* number */
"gbk"
,
/* name */
28
,
/* number */
"gbk"
,
/* name */
ctype_gbk
,
to_lower_gbk
,
to_upper_gbk
,
sort_order_gbk
,
1
,
/* strxfrm_multiply */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
1
,
/* strxfrm_multiply */
my_strnncoll_gbk
,
my_strnxfrm_gbk
,
my_like_range_gbk
,
2
,
/* mbmaxlen */
2
,
/* mbmaxlen */
ismbchar_gbk
,
ismbhead_gbk
,
mbcharlen_gbk
,
NULL
,
/* mb_wc */
NULL
,
/* wc_mb */
my_caseup_str_mb
,
my_casedn_str_mb
,
my_caseup_mb
,
...
...
@@ -2298,20 +3192,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_german1
{
5
,
/* number */
"german1"
,
/* name */
5
,
/* number */
"german1"
,
/* name */
ctype_german1
,
to_lower_german1
,
to_upper_german1
,
sort_order_german1
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_8859_1_uni
,
/* tab_to_uni */
idx_uni_8859_1
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2324,20 +3222,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_greek
{
25
,
/* number */
"greek"
,
/* name */
25
,
/* number */
"greek"
,
/* name */
ctype_greek
,
to_lower_greek
,
to_upper_greek
,
sort_order_greek
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2350,20 +3252,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_hebrew
{
16
,
/* number */
"hebrew"
,
/* name */
16
,
/* number */
"hebrew"
,
/* name */
ctype_hebrew
,
to_lower_hebrew
,
to_upper_hebrew
,
sort_order_hebrew
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2376,20 +3282,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_hp8
{
6
,
/* number */
"hp8"
,
/* name */
6
,
/* number */
"hp8"
,
/* name */
ctype_hp8
,
to_lower_hp8
,
to_upper_hp8
,
sort_order_hp8
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2402,20 +3312,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_hungarian
{
21
,
/* number */
"hungarian"
,
/* name */
21
,
/* number */
"hungarian"
,
/* name */
ctype_hungarian
,
to_lower_hungarian
,
to_upper_hungarian
,
sort_order_hungarian
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_8859_2_uni
,
/* tab_to_uni */
idx_uni_8859_2
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2428,20 +3342,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_koi8_ru
{
7
,
/* number */
"koi8_ru"
,
/* name */
7
,
/* number */
"koi8_ru"
,
/* name */
ctype_koi8_ru
,
to_lower_koi8_ru
,
to_upper_koi8_ru
,
sort_order_koi8_ru
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_koi8_r_uni
,
/* tab_to_uni */
idx_uni_koi8_r
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2454,20 +3372,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_koi8_ukr
{
22
,
/* number */
"koi8_ukr"
,
/* name */
22
,
/* number */
"koi8_ukr"
,
/* name */
ctype_koi8_ukr
,
to_lower_koi8_ukr
,
to_upper_koi8_ukr
,
sort_order_koi8_ukr
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_koi8_u_uni
,
/* tab_to_uni */
idx_uni_koi8_u
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2480,20 +3402,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_latin1_de
{
31
,
/* number */
"latin1_de"
,
/* name */
31
,
/* number */
"latin1_de"
,
/* name */
ctype_latin1_de
,
to_lower_latin1_de
,
to_upper_latin1_de
,
sort_order_latin1_de
,
2
,
/* strxfrm_multiply */
tab_8859_1_uni
,
/* tab_to_uni */
idx_uni_8859_1
,
/* tab_from_uni */
2
,
/* strxfrm_multiply */
my_strnncoll_latin1_de
,
my_strnxfrm_latin1_de
,
my_like_range_latin1_de
,
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2506,20 +3432,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_latin2
{
9
,
/* number */
"latin2"
,
/* name */
9
,
/* number */
"latin2"
,
/* name */
ctype_latin2
,
to_lower_latin2
,
to_upper_latin2
,
sort_order_latin2
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_8859_2_uni
,
/* tab_to_uni */
idx_uni_8859_2
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2532,20 +3462,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_latin5
{
30
,
/* number */
"latin5"
,
/* name */
30
,
/* number */
"latin5"
,
/* name */
ctype_latin5
,
to_lower_latin5
,
to_upper_latin5
,
sort_order_latin5
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_8859_9_uni
,
/* tab_to_uni */
idx_uni_8859_9
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2558,20 +3492,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_sjis
{
13
,
/* number */
"sjis"
,
/* name */
13
,
/* number */
"sjis"
,
/* name */
ctype_sjis
,
to_lower_sjis
,
to_upper_sjis
,
sort_order_sjis
,
1
,
/* strxfrm_multiply */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
1
,
/* strxfrm_multiply */
my_strnncoll_sjis
,
my_strnxfrm_sjis
,
my_like_range_sjis
,
2
,
/* mbmaxlen */
2
,
/* mbmaxlen */
ismbchar_sjis
,
ismbhead_sjis
,
mbcharlen_sjis
,
NULL
,
/* mb_wc */
NULL
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2584,20 +3522,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_swe7
{
10
,
/* number */
"swe7"
,
/* name */
10
,
/* number */
"swe7"
,
/* name */
ctype_swe7
,
to_lower_swe7
,
to_upper_swe7
,
sort_order_swe7
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2610,20 +3552,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_tis620
{
18
,
/* number */
"tis620"
,
/* name */
18
,
/* number */
"tis620"
,
/* name */
ctype_tis620
,
to_lower_tis620
,
to_upper_tis620
,
sort_order_tis620
,
4
,
/* strxfrm_multiply */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
4
,
/* strxfrm_multiply */
my_strnncoll_tis620
,
my_strnxfrm_tis620
,
my_like_range_tis620
,
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2642,14 +3588,18 @@ CHARSET_INFO compiled_charsets[] = {
to_lower_ujis
,
to_upper_ujis
,
sort_order_ujis
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
3
,
/* mbmaxlen */
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
3
,
/* mbmaxlen */
ismbchar_ujis
,
ismbhead_ujis
,
mbcharlen_ujis
,
NULL
,
/* mb_wc */
NULL
,
/* wc_mb */
my_caseup_str_mb
,
my_casedn_str_mb
,
my_caseup_mb
,
...
...
@@ -2662,20 +3612,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_utf8
{
33
,
/* number */
"utf8"
,
/* name */
ctype_utf8
,
/* ctype */
to_lower_utf8
,
/* to_lower */
to_upper_utf8
,
/* to_upper */
to_upper_utf8
,
/* sort_order */
1
,
/* strxfrm_multiply */
my_strnncoll_utf8
,
/* strnncoll */
my_strnxfrm_utf8
,
/* strnxfrm */
NULL
,
/* like_range */
6
,
/* mbmaxlen */
my_ismbchar_utf8
,
/* ismbchar */
my_ismbhead_utf8
,
/* ismbhead */
my_mbcharlen_utf8
,
/* mbcharlen */
33
,
/* number */
"utf8"
,
/* name */
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 */
1
,
/* strxfrm_multiply */
my_strnncoll_utf8
,
/* strnncoll */
my_strnxfrm_utf8
,
/* strnxfrm */
NULL
,
/* like_range */
6
,
/* mbmaxlen */
my_ismbchar_utf8
,
/* ismbchar */
my_ismbhead_utf8
,
/* ismbhead */
my_mbcharlen_utf8
,
/* mbcharlen */
my_utf8_uni
,
/* mb_wc */
my_uni_utf8
,
/* wc_mb */
my_caseup_str_utf8
,
my_casedn_str_utf8
,
my_caseup_utf8
,
...
...
@@ -2688,20 +3642,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_usa7
{
11
,
/* number */
"usa7"
,
/* name */
11
,
/* number */
"usa7"
,
/* name */
ctype_usa7
,
to_lower_usa7
,
to_upper_usa7
,
sort_order_usa7
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_us_ascii_uni
,
/* tab_to_uni */
idx_uni_us_ascii
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2714,20 +3672,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_win1250
{
26
,
/* number */
"win1250"
,
/* name */
26
,
/* number */
"win1250"
,
/* name */
ctype_win1250
,
to_lower_win1250
,
to_upper_win1250
,
sort_order_win1250
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_cp1250_uni
,
/* tab_to_uni */
idx_uni_cp1250
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2740,20 +3702,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_win1251ukr
{
23
,
/* number */
"win1251ukr"
,
/* name */
23
,
/* number */
"win1251ukr"
,
/* name */
ctype_win1251ukr
,
to_lower_win1251ukr
,
to_upper_win1251ukr
,
sort_order_win1251ukr
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_cp1251_uni
,
/* tab_to_uni */
idx_uni_cp1251
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2766,20 +3732,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_armscii8
{
32
,
/* number */
"armscii8"
,
/* name */
32
,
/* number */
"armscii8"
,
/* name */
ctype_armscii8
,
to_lower_armscii8
,
to_upper_armscii8
,
sort_order_armscii8
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_armscii_8_uni
,
/* tab_to_uni */
idx_uni_armscii_8
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2792,20 +3762,24 @@ CHARSET_INFO compiled_charsets[] = {
#ifdef HAVE_CHARSET_win1251
{
17
,
/* number */
"win1251"
,
/* name */
17
,
/* number */
"win1251"
,
/* name */
ctype_win1251
,
to_lower_win1251
,
to_upper_win1251
,
sort_order_win1251
,
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
tab_cp1251_uni
,
/* tab_to_uni */
idx_uni_cp1251
,
/* tab_from_uni */
0
,
/* strxfrm_multiply */
NULL
,
/* strnncoll */
NULL
,
/* strnxfrm */
NULL
,
/* like_range */
0
,
/* mbmaxlen */
NULL
,
/* ismbchar */
NULL
,
/* ismbhead */
NULL
,
/* mbcharlen */
my_mb_wc_8bit
,
/* mb_wc */
my_wc_mb_8bit
,
/* wc_mb */
my_caseup_str_8bit
,
my_casedn_str_8bit
,
my_caseup_8bit
,
...
...
@@ -2816,14 +3790,15 @@ CHARSET_INFO compiled_charsets[] = {
},
#endif
{
0
,
/* end-of-list marker */
0
,
/* end-of-list marker */
NullS
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
/* tab_to_uni */
NULL
,
/* tab_from_uni */
0
,
NULL
,
NULL
,
...
...
@@ -2832,6 +3807,10 @@ CHARSET_INFO compiled_charsets[] = {
NULL
,
NULL
,
NULL
,
NULL
,
/* mb_wc */
NULL
,
/* wc_mb */
NULL
,
NULL
,
NULL
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment