组合类型 |
struct | unicase_info_st |
struct | uni_ctype_st |
struct | my_uni_idx_st |
struct | my_match_t |
struct | my_collation_handler_st |
struct | my_charset_handler_st |
struct | charset_info_st |
宏定义 |
#define | MY_CS_NAME_SIZE 32 |
#define | MY_CS_CTYPE_TABLE_SIZE 257 |
#define | MY_CS_TO_LOWER_TABLE_SIZE 256 |
#define | MY_CS_TO_UPPER_TABLE_SIZE 256 |
#define | MY_CS_SORT_ORDER_TABLE_SIZE 256 |
#define | MY_CS_TO_UNI_TABLE_SIZE 256 |
#define | CHARSET_DIR "charsets/" |
#define | my_wc_t ulong |
#define | MY_CS_ILSEQ 0 |
#define | MY_CS_ILUNI 0 |
#define | MY_CS_TOOSMALL -101 |
#define | MY_CS_TOOSMALL2 -102 |
#define | MY_CS_TOOSMALL3 -103 |
#define | MY_CS_TOOSMALL4 -104 |
#define | MY_CS_TOOSMALL5 -105 |
#define | MY_CS_TOOSMALL6 -106 |
#define | MY_CS_TOOSMALLN(n) (-100-(n)) |
#define | MY_SEQ_INTTAIL 1 |
#define | MY_SEQ_SPACES 2 |
#define | MY_CS_COMPILED 1 |
#define | MY_CS_CONFIG 2 |
#define | MY_CS_INDEX 4 |
#define | MY_CS_LOADED 8 |
#define | MY_CS_BINSORT 16 |
#define | MY_CS_PRIMARY 32 |
#define | MY_CS_STRNXFRM 64 |
#define | MY_CS_UNICODE 128 |
#define | MY_CS_READY 256 |
#define | MY_CS_AVAILABLE 512 |
#define | MY_CS_CSSORT 1024 |
#define | MY_CS_HIDDEN 2048 |
#define | MY_CS_PUREASCII 4096 |
#define | MY_CS_NONASCII 8192 |
#define | MY_CHARSET_UNDEFINED 0 |
#define | MY_REPERTOIRE_ASCII 1 |
#define | MY_REPERTOIRE_EXTENDED 2 |
#define | MY_REPERTOIRE_UNICODE30 3 |
#define | MY_STRXFRM_LEVEL1 0x00000001 |
#define | MY_STRXFRM_LEVEL2 0x00000002 |
#define | MY_STRXFRM_LEVEL3 0x00000004 |
#define | MY_STRXFRM_LEVEL4 0x00000008 |
#define | MY_STRXFRM_LEVEL5 0x00000010 |
#define | MY_STRXFRM_LEVEL6 0x00000020 |
#define | MY_STRXFRM_LEVEL_ALL 0x0000003F |
#define | MY_STRXFRM_NLEVELS 6 |
#define | MY_STRXFRM_PAD_WITH_SPACE 0x00000040 |
#define | MY_STRXFRM_PAD_TO_MAXLEN 0x00000080 |
#define | MY_STRXFRM_DESC_LEVEL1 0x00000100 |
#define | MY_STRXFRM_DESC_LEVEL2 0x00000200 |
#define | MY_STRXFRM_DESC_LEVEL3 0x00000300 |
#define | MY_STRXFRM_DESC_LEVEL4 0x00000800 |
#define | MY_STRXFRM_DESC_LEVEL5 0x00001000 |
#define | MY_STRXFRM_DESC_LEVEL6 0x00002000 |
#define | MY_STRXFRM_DESC_SHIFT 8 |
#define | MY_STRXFRM_UNUSED_00004000 0x00004000 |
#define | MY_STRXFRM_UNUSED_00008000 0x00008000 |
#define | MY_STRXFRM_REVERSE_LEVEL1 0x00010000 |
#define | MY_STRXFRM_REVERSE_LEVEL2 0x00020000 |
#define | MY_STRXFRM_REVERSE_LEVEL3 0x00040000 |
#define | MY_STRXFRM_REVERSE_LEVEL4 0x00080000 |
#define | MY_STRXFRM_REVERSE_LEVEL5 0x00100000 |
#define | MY_STRXFRM_REVERSE_LEVEL6 0x00200000 |
#define | MY_STRXFRM_REVERSE_SHIFT 16 |
#define | ILLEGAL_CHARSET_INFO_NUMBER (~0U) |
#define | MY_UTF8MB3 "utf8mb3" |
#define | MY_UTF8MB4 "utf8" |
#define | my_charset_utf8_general_ci my_charset_utf8mb4_general_ci |
#define | my_charset_utf8_bin my_charset_utf8mb4_bin |
#define | _MY_U 01 |
#define | _MY_L 02 |
#define | _MY_NMR 04 |
#define | _MY_SPC 010 |
#define | _MY_PNT 020 |
#define | _MY_CTR 040 |
#define | _MY_B 0100 |
#define | _MY_X 0200 |
#define | my_isascii(c) (!((c) & ~0177)) |
#define | my_toascii(c) ((c) & 0177) |
#define | my_tocntrl(c) ((c) & 31) |
#define | my_toprint(c) ((c) | 64) |
#define | my_toupper(s, c) (char) ((s)->to_upper[(uchar) (c)]) |
#define | my_tolower(s, c) (char) ((s)->to_lower[(uchar) (c)]) |
#define | my_isalpha(s, c) (((s)->ctype+1)[(uchar) (c)] & (_MY_U | _MY_L)) |
#define | my_isupper(s, c) (((s)->ctype+1)[(uchar) (c)] & _MY_U) |
#define | my_islower(s, c) (((s)->ctype+1)[(uchar) (c)] & _MY_L) |
#define | my_isdigit(s, c) (((s)->ctype+1)[(uchar) (c)] & _MY_NMR) |
#define | my_isxdigit(s, c) (((s)->ctype+1)[(uchar) (c)] & _MY_X) |
#define | my_isalnum(s, c) (((s)->ctype+1)[(uchar) (c)] & (_MY_U | _MY_L | _MY_NMR)) |
#define | my_isspace(s, c) (((s)->ctype+1)[(uchar) (c)] & _MY_SPC) |
#define | my_ispunct(s, c) (((s)->ctype+1)[(uchar) (c)] & _MY_PNT) |
#define | my_isprint(s, c) (((s)->ctype+1)[(uchar) (c)] & (_MY_PNT | _MY_U | _MY_L | _MY_NMR | _MY_B)) |
#define | my_isgraph(s, c) (((s)->ctype+1)[(uchar) (c)] & (_MY_PNT | _MY_U | _MY_L | _MY_NMR)) |
#define | my_iscntrl(s, c) (((s)->ctype+1)[(uchar) (c)] & _MY_CTR) |
#define | my_isvar(s, c) (my_isalnum(s,c) || (c) == '_') |
#define | my_isvar_start(s, c) (my_isalpha(s,c) || (c) == '_') |
#define | my_binary_compare(s) ((s)->state & MY_CS_BINSORT) |
#define | use_strnxfrm(s) ((s)->state & MY_CS_STRNXFRM) |
#define | my_strnxfrm(cs, d, dl, s, sl) ((cs)->coll->strnxfrm((cs), (d), (dl), (dl), (s), (sl), MY_STRXFRM_PAD_WITH_SPACE)) |
#define | my_strnncoll(s, a, b, c, d) ((s)->coll->strnncoll((s), (a), (b), (c), (d), 0)) |
#define | my_like_range(s, a, b, c, d, e, f, g, h, i, j) ((s)->coll->like_range((s), (a), (b), (c), (d), (e), (f), (g), (h), (i), (j))) |
#define | my_wildcmp(cs, s, se, w, we, e, o, m) ((cs)->coll->wildcmp((cs),(s),(se),(w),(we),(e),(o),(m))) |
#define | my_strcasecmp(s, a, b) ((s)->coll->strcasecmp((s), (a), (b))) |
#define | my_charpos(cs, b, e, num) (cs)->cset->charpos((cs), (const char*) (b), (const char *)(e), (num)) |
#define | use_mb(s) ((s)->cset->ismbchar != NULL) |
#define | my_ismbchar(s, a, b) ((s)->cset->ismbchar((s), (a), (b))) |
#define | my_mbcharlen(s, a) 1 |
#define | my_caseup_str(s, a) ((s)->cset->caseup_str((s), (a))) |
#define | my_casedn_str(s, a) ((s)->cset->casedn_str((s), (a))) |
#define | my_strntol(s, a, b, c, d, e) ((s)->cset->strntol((s),(a),(b),(c),(d),(e))) |
#define | my_strntoul(s, a, b, c, d, e) ((s)->cset->strntoul((s),(a),(b),(c),(d),(e))) |
#define | my_strntoll(s, a, b, c, d, e) ((s)->cset->strntoll((s),(a),(b),(c),(d),(e))) |
#define | my_strntoull(s, a, b, c, d, e) ((s)->cset->strntoull((s),(a),(b),(c),(d),(e))) |
#define | my_strntod(s, a, b, c, d) ((s)->cset->strntod((s),(a),(b),(c),(d))) |
类型定义 |
typedef struct unicase_info_st | MY_UNICASE_INFO |
typedef struct uni_ctype_st | MY_UNI_CTYPE |
typedef struct my_uni_idx_st | MY_UNI_IDX |
typedef struct
my_collation_handler_st | MY_COLLATION_HANDLER |
typedef int(* | my_charset_conv_mb_wc )(struct charset_info_st *, my_wc_t *, const uchar *, const uchar *) |
typedef int(* | my_charset_conv_wc_mb )(struct charset_info_st *, my_wc_t, uchar *, uchar *) |
typedef size_t(* | my_charset_conv_case )(struct charset_info_st *, char *, size_t, char *, size_t) |
typedef struct
my_charset_handler_st | MY_CHARSET_HANDLER |
typedef struct charset_info_st | CHARSET_INFO |
枚举 |
enum | my_lex_states {
MY_LEX_START,
MY_LEX_CHAR,
MY_LEX_IDENT,
MY_LEX_IDENT_SEP,
MY_LEX_IDENT_START,
MY_LEX_REAL,
MY_LEX_HEX_NUMBER,
MY_LEX_BIN_NUMBER,
MY_LEX_CMP_OP,
MY_LEX_LONG_CMP_OP,
MY_LEX_STRING,
MY_LEX_COMMENT,
MY_LEX_END,
MY_LEX_OPERATOR_OR_IDENT,
MY_LEX_NUMBER_IDENT,
MY_LEX_INT_OR_REAL,
MY_LEX_REAL_OR_POINT,
MY_LEX_BOOL,
MY_LEX_EOL,
MY_LEX_ESCAPE,
MY_LEX_LONG_COMMENT,
MY_LEX_END_LONG_COMMENT,
MY_LEX_SEMICOLON,
MY_LEX_SET_VAR,
MY_LEX_USER_END,
MY_LEX_HOSTNAME,
MY_LEX_SKIP,
MY_LEX_USER_VARIABLE_DELIMITER,
MY_LEX_SYSTEM_VAR,
MY_LEX_IDENT_OR_KEYWORD,
MY_LEX_IDENT_OR_HEX,
MY_LEX_IDENT_OR_BIN,
MY_LEX_IDENT_OR_NCHAR,
MY_LEX_STRING_OR_DELIMITER
} |
函数 |
size_t | my_strnxfrm_simple (CHARSET_INFO *, uchar *dst, size_t dstlen, uint nweights, const uchar *src, size_t srclen, uint flags) |
size_t | my_strnxfrmlen_simple (CHARSET_INFO *, size_t) |
int | my_strnncoll_simple (CHARSET_INFO *, const uchar *, size_t, const uchar *, size_t, my_bool) |
int | my_strnncollsp_simple (CHARSET_INFO *, const uchar *, size_t, const uchar *, size_t, my_bool diff_if_only_endspace_difference) |
void | my_hash_sort_simple (CHARSET_INFO *cs, const uchar *key, size_t len, ulong *nr1, ulong *nr2) |
size_t | my_lengthsp_8bit (CHARSET_INFO *cs, const char *ptr, size_t length) |
uint | my_instr_simple (struct charset_info_st *, const char *b, size_t b_length, const char *s, size_t s_length, my_match_t *match, uint nmatch) |
size_t | my_caseup_str_8bit (CHARSET_INFO *, char *) |
size_t | my_casedn_str_8bit (CHARSET_INFO *, char *) |
size_t | my_caseup_8bit (CHARSET_INFO *, char *src, size_t srclen, char *dst, size_t dstlen) |
size_t | my_casedn_8bit (CHARSET_INFO *, char *src, size_t srclen, char *dst, size_t dstlen) |
int | my_strcasecmp_8bit (CHARSET_INFO *cs, const char *, const char *) |
int | my_mb_wc_8bit (CHARSET_INFO *cs, my_wc_t *wc, const uchar *s, const uchar *e) |
int | my_wc_mb_8bit (CHARSET_INFO *cs, my_wc_t wc, uchar *s, uchar *e) |
int | my_mb_ctype_8bit (CHARSET_INFO *, int *, const uchar *, const uchar *) |
int | my_mb_ctype_mb (CHARSET_INFO *, int *, const uchar *, const uchar *) |
size_t | my_scan_8bit (CHARSET_INFO *cs, const char *b, const char *e, int sq) |
size_t | my_snprintf_8bit (struct charset_info_st *, char *to, size_t n, const char *fmt,...) ATTRIBUTE_FORMAT(printf |
size_t long | my_strntol_8bit (CHARSET_INFO *, const char *s, size_t l, int base, char **e, int *err) |
ulong | my_strntoul_8bit (CHARSET_INFO *, const char *s, size_t l, int base, char **e, int *err) |
longlong | my_strntoll_8bit (CHARSET_INFO *, const char *s, size_t l, int base, char **e, int *err) |
ulonglong | my_strntoull_8bit (CHARSET_INFO *, const char *s, size_t l, int base, char **e, int *err) |
double | my_strntod_8bit (CHARSET_INFO *, char *s, size_t l, char **e, int *err) |
size_t | my_long10_to_str_8bit (CHARSET_INFO *, char *to, size_t l, int radix, long int val) |
size_t | my_longlong10_to_str_8bit (CHARSET_INFO *, char *to, size_t l, int radix, longlong val) |
longlong | my_strtoll10_8bit (CHARSET_INFO *cs, const char *nptr, char **endptr, int *error) |
longlong | my_strtoll10_ucs2 (CHARSET_INFO *cs, const char *nptr, char **endptr, int *error) |
ulonglong | my_strntoull10rnd_8bit (CHARSET_INFO *cs, const char *str, size_t length, int unsigned_fl, char **endptr, int *error) |
ulonglong | my_strntoull10rnd_ucs2 (CHARSET_INFO *cs, const char *str, size_t length, int unsigned_fl, char **endptr, int *error) |
void | my_fill_8bit (CHARSET_INFO *cs, char *to, size_t l, int fill) |
my_bool | my_like_range_simple (CHARSET_INFO *cs, const char *ptr, size_t ptr_length, pbool escape, pbool w_one, pbool w_many, size_t res_length, char *min_str, char *max_str, size_t *min_length, size_t *max_length) |
my_bool | my_like_range_mb (CHARSET_INFO *cs, const char *ptr, size_t ptr_length, pbool escape, pbool w_one, pbool w_many, size_t res_length, char *min_str, char *max_str, size_t *min_length, size_t *max_length) |
my_bool | my_like_range_ucs2 (CHARSET_INFO *cs, const char *ptr, size_t ptr_length, pbool escape, pbool w_one, pbool w_many, size_t res_length, char *min_str, char *max_str, size_t *min_length, size_t *max_length) |
my_bool | my_like_range_utf16 (CHARSET_INFO *cs, const char *ptr, size_t ptr_length, pbool escape, pbool w_one, pbool w_many, size_t res_length, char *min_str, char *max_str, size_t *min_length, size_t *max_length) |
my_bool | my_like_range_utf32 (CHARSET_INFO *cs, const char *ptr, size_t ptr_length, pbool escape, pbool w_one, pbool w_many, size_t res_length, char *min_str, char *max_str, size_t *min_length, size_t *max_length) |
int | my_wildcmp_8bit (CHARSET_INFO *, const char *str, const char *str_end, const char *wildstr, const char *wildend, int escape, int w_one, int w_many) |
int | my_wildcmp_bin (CHARSET_INFO *, const char *str, const char *str_end, const char *wildstr, const char *wildend, int escape, int w_one, int w_many) |
size_t | my_numchars_8bit (CHARSET_INFO *, const char *b, const char *e) |
size_t | my_numcells_8bit (CHARSET_INFO *, const char *b, const char *e) |
size_t | my_charpos_8bit (CHARSET_INFO *, const char *b, const char *e, size_t pos) |
size_t | my_well_formed_len_8bit (CHARSET_INFO *, const char *b, const char *e, size_t pos, int *error) |
uint | my_mbcharlen_8bit (CHARSET_INFO *, uint c) |
size_t | my_caseup_str_mb (CHARSET_INFO *, char *) |
size_t | my_casedn_str_mb (CHARSET_INFO *, char *) |
size_t | my_caseup_mb (CHARSET_INFO *, char *src, size_t srclen, char *dst, size_t dstlen) |
size_t | my_casedn_mb (CHARSET_INFO *, char *src, size_t srclen, char *dst, size_t dstlen) |
int | my_strcasecmp_mb (CHARSET_INFO *cs, const char *, const char *) |
int | my_wildcmp_mb (CHARSET_INFO *, const char *str, const char *str_end, const char *wildstr, const char *wildend, int escape, int w_one, int w_many) |
size_t | my_numchars_mb (CHARSET_INFO *, const char *b, const char *e) |
size_t | my_numcells_mb (CHARSET_INFO *, const char *b, const char *e) |
size_t | my_charpos_mb (CHARSET_INFO *, const char *b, const char *e, size_t pos) |
size_t | my_well_formed_len_mb (CHARSET_INFO *, const char *b, const char *e, size_t pos, int *error) |
uint | my_instr_mb (struct charset_info_st *, const char *b, size_t b_length, const char *s, size_t s_length, my_match_t *match, uint nmatch) |
int | my_strnncoll_mb_bin (CHARSET_INFO *cs, const uchar *s, size_t slen, const uchar *t, size_t tlen, my_bool t_is_prefix) |
int | my_strnncollsp_mb_bin (CHARSET_INFO *cs, const uchar *a, size_t a_length, const uchar *b, size_t b_length, my_bool diff_if_only_endspace_difference) |
int | my_wildcmp_mb_bin (CHARSET_INFO *cs, const char *str, const char *str_end, const char *wildstr, const char *wildend, int escape, int w_one, int w_many) |
int | my_strcasecmp_mb_bin (CHARSET_INFO *cs __attribute__((unused)), const char *s, const char *t) |
void | my_hash_sort_mb_bin (CHARSET_INFO *cs __attribute__((unused)), const uchar *key, size_t len, ulong *nr1, ulong *nr2) |
size_t | my_strnxfrm_mb (CHARSET_INFO *, uchar *dst, size_t dstlen, uint nweights, const uchar *src, size_t srclen, uint flags) |
size_t | my_strnxfrm_unicode (CHARSET_INFO *, uchar *dst, size_t dstlen, uint nweights, const uchar *src, size_t srclen, uint flags) |
int | my_wildcmp_unicode (CHARSET_INFO *cs, const char *str, const char *str_end, const char *wildstr, const char *wildend, int escape, int w_one, int w_many, MY_UNICASE_INFO **weights) |
my_bool | my_parse_charset_xml (const char *bug, size_t len, int(*add)(CHARSET_INFO *cs)) |
char * | my_strchr (CHARSET_INFO *cs, const char *str, const char *end, pchar c) |
my_bool | my_propagate_simple (CHARSET_INFO *cs, const uchar *str, size_t len) |
my_bool | my_propagate_complex (CHARSET_INFO *cs, const uchar *str, size_t len) |
uint | my_string_repertoire (CHARSET_INFO *cs, const char *str, ulong len) |
my_bool | my_charset_is_ascii_based (CHARSET_INFO *cs) |
my_bool | my_charset_is_8bit_pure_ascii (CHARSET_INFO *cs) |
uint | my_charset_repertoire (CHARSET_INFO *cs) |
uint | my_strxfrm_flag_normalize (uint flags, uint nlevels) |
void | my_strxfrm_desc_and_reverse (uchar *str, uchar *strend, uint flags, uint level) |
size_t | my_strxfrm_pad_desc_and_reverse (CHARSET_INFO *cs, uchar *str, uchar *frmend, uchar *strend, uint nweights, uint flags, uint level) |
my_bool | my_charset_is_ascii_compatible (CHARSET_INFO *cs) |
变量 |
MY_UNICASE_INFO * | my_unicase_default [256] |
MY_UNICASE_INFO * | my_unicase_turkish [256] |
MY_UNI_CTYPE | my_uni_ctype [256] |
MY_COLLATION_HANDLER | my_collation_mb_bin_handler |
MY_COLLATION_HANDLER | my_collation_8bit_bin_handler |
MY_COLLATION_HANDLER | my_collation_8bit_simple_ci_handler |
MY_COLLATION_HANDLER | my_collation_ucs2_uca_handler |
MY_CHARSET_HANDLER | my_charset_8bit_handler |
MY_CHARSET_HANDLER | my_charset_ucs2_handler |
MYSQL_PLUGIN_IMPORT CHARSET_INFO | my_charset_bin |
CHARSET_INFO | my_charset_big5_chinese_ci |
CHARSET_INFO | my_charset_big5_bin |
CHARSET_INFO | my_charset_cp932_japanese_ci |
CHARSET_INFO | my_charset_cp932_bin |
CHARSET_INFO | my_charset_cp1250_czech_ci |
CHARSET_INFO | my_charset_eucjpms_japanese_ci |
CHARSET_INFO | my_charset_eucjpms_bin |
CHARSET_INFO | my_charset_euckr_korean_ci |
CHARSET_INFO | my_charset_euckr_bin |
MYSQL_PLUGIN_IMPORT CHARSET_INFO | my_charset_filename |
CHARSET_INFO | my_charset_gb2312_chinese_ci |
CHARSET_INFO | my_charset_gb2312_bin |
CHARSET_INFO | my_charset_gbk_chinese_ci |
CHARSET_INFO | my_charset_gbk_bin |
MYSQL_PLUGIN_IMPORT CHARSET_INFO | my_charset_latin1 |
CHARSET_INFO | my_charset_latin1_german2_ci |
CHARSET_INFO | my_charset_latin1_bin |
CHARSET_INFO | my_charset_latin2_czech_ci |
CHARSET_INFO | my_charset_sjis_japanese_ci |
CHARSET_INFO | my_charset_sjis_bin |
CHARSET_INFO | my_charset_tis620_thai_ci |
CHARSET_INFO | my_charset_tis620_bin |
CHARSET_INFO | my_charset_ucs2_general_ci |
CHARSET_INFO | my_charset_ucs2_bin |
CHARSET_INFO | my_charset_ucs2_unicode_ci |
CHARSET_INFO | my_charset_ujis_japanese_ci |
CHARSET_INFO | my_charset_ujis_bin |
CHARSET_INFO | my_charset_utf16_bin |
CHARSET_INFO | my_charset_utf16_general_ci |
CHARSET_INFO | my_charset_utf16_unicode_ci |
CHARSET_INFO | my_charset_utf32_bin |
CHARSET_INFO | my_charset_utf32_general_ci |
CHARSET_INFO | my_charset_utf32_unicode_ci |
CHARSET_INFO | my_charset_utf8mb3_bin |
CHARSET_INFO | my_charset_utf8mb3_general_ci |
CHARSET_INFO | my_charset_utf8mb3_unicode_ci |
CHARSET_INFO | my_charset_utf8mb4_bin |
MYSQL_PLUGIN_IMPORT CHARSET_INFO | my_charset_utf8mb4_general_ci |
CHARSET_INFO | my_charset_utf8mb4_unicode_ci |