MySQL 8.0.39
Source Code Documentation
|
#include <stddef.h>
#include <sys/types.h>
#include "m_ctype.h"
#include "my_compiler.h"
#include "my_inttypes.h"
#include "template_utils.h"
Macros | |
#define | issjishead(c) ((0x81 <= (c) && (c) <= 0x9f) || ((0xe0 <= (c)) && (c) <= 0xfc)) |
#define | issjistail(c) ((0x40 <= (c) && (c) <= 0x7e) || (0x80 <= (c) && (c) <= 0xfc)) |
#define | sjiscode(c, d) ((((uint)(uchar)(c)) << 8) | (uint)(uchar)(d)) |
Functions | |
static uint | ismbchar_sjis (const CHARSET_INFO *cs, const char *p, const char *e) |
static uint | mbcharlen_sjis (const CHARSET_INFO *cs, uint c) |
static int | my_strnncoll_sjis_internal (const CHARSET_INFO *cs, const uchar **a_res, size_t a_length, const uchar **b_res, size_t b_length) |
static int | my_strnncoll_sjis (const CHARSET_INFO *cs, const uchar *a, size_t a_length, const uchar *b, size_t b_length, bool b_is_prefix) |
static int | my_strnncollsp_sjis (const CHARSET_INFO *cs, const uchar *a, size_t a_length, const uchar *b, size_t b_length) |
static int | my_mb_wc_sjis (const CHARSET_INFO *cs, my_wc_t *pwc, const uchar *s, const uchar *e) |
Scans an SJIS character from the input string and converts to Unicode code point. More... | |
static int | my_wc_mb_sjis (const CHARSET_INFO *cs, my_wc_t wc, uchar *s, uchar *e) |
Puts the given Unicode character into an SJIS string. More... | |
static size_t | my_numcells_sjis (const CHARSET_INFO *cs, const char *str, const char *str_end) |
static size_t | my_well_formed_len_sjis (const CHARSET_INFO *cs, const char *b, const char *e, size_t pos, int *error) |
Variables | |
static const uchar | ctype_sjis [257] |
static const uchar | to_lower_sjis [] |
static const uchar | to_upper_sjis [] |
static const uchar | sort_order_sjis [] |
static const MY_UNICASE_CHARACTER | c81 [256] |
static const MY_UNICASE_CHARACTER | c82 [256] |
static const MY_UNICASE_CHARACTER | c83 [256] |
static const MY_UNICASE_CHARACTER | c84 [256] |
static const MY_UNICASE_CHARACTER * | my_caseinfo_pages_sjis [256] |
static MY_UNICASE_INFO | my_caseinfo_sjis = {0xFFFF, my_caseinfo_pages_sjis} |
static const uint16 | sjis_to_unicode [65536] |
static const uint16 | unicode_to_sjis [65536] |
static MY_COLLATION_HANDLER | my_collation_ci_handler |
static MY_CHARSET_HANDLER | my_charset_handler |
CHARSET_INFO | my_charset_sjis_japanese_ci |
CHARSET_INFO | my_charset_sjis_bin |
#define issjishead | ( | c | ) | ((0x81 <= (c) && (c) <= 0x9f) || ((0xe0 <= (c)) && (c) <= 0xfc)) |
#define issjistail | ( | c | ) | ((0x40 <= (c) && (c) <= 0x7e) || (0x80 <= (c) && (c) <= 0xfc)) |
|
static |
|
static |
|
static |
Scans an SJIS character from the input string and converts to Unicode code point.
[in] | cs | Character set info, unused |
[out] | pwc | Unicode code point |
[in] | s | Beginning of the input string |
[in] | e | End of the input string |
MY_CS_TOOSMALL | If the string was too short to scan a character |
1 | If a 1-byte character was scanned |
2 | If a 2-byte character was scanned |
-2 | If a 2-byte unassigned character was scanned |
MY_CS_ILSEQ | If a wrong byte sequence was found |
|
static |
|
static |
|
static |
|
static |
|
static |
Puts the given Unicode character into an SJIS string.
[in] | cs | Character set info, unused |
[in] | wc | Unicode code point |
[in] | s | Beginning of the out string |
[in] | e | End of the out string |
MY_CS_TOOSMALL | If the string was too short to put a character |
1 | If a 1-byte character was put |
2 | If a 2-byte character was put |
MY_CS_ILUNI | If the Unicode character does not exist in SJIS |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
CHARSET_INFO my_charset_sjis_bin |
CHARSET_INFO my_charset_sjis_japanese_ci |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |