Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions include/m_ctype.h
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,30 @@ typedef struct casefold_info_char_t
} MY_CASEFOLD_CHARACTER;


typedef struct halfwidth_fullwidth_info_tuple_t
{
uint32 k_sj_orig;
uint32 k_sj_voiced_mark_variant;
uint32 k_sj_semi_voiced_mark_variant;
uint32 h_sj_orig;
uint32 h_sj_voiced_mark_variant;
uint32 h_sj_semi_voiced_mark_variant;
uint32 k_uj_orig;
uint32 k_uj_voiced_mark_variant;
uint32 k_uj_semi_voiced_mark_variant;
uint32 h_uj_orig;
uint32 h_uj_voiced_mark_variant;
uint32 h_uj_semi_voiced_mark_variant;
} MY_HALFWIDTH_FULLWIDTH_TUPLE;


typedef struct fullwidth_halfwidth_info_tuple_t
{
uint32 orig;
uint32 mark;
} MY_FULLWIDTH_HALFWIDTH_TUPLE;


struct casefold_info_st
{
my_wc_t maxchar;
Expand Down Expand Up @@ -624,6 +648,10 @@ typedef int (*my_charset_conv_wc_mb)(CHARSET_INFO *, my_wc_t,
uchar *, uchar *);
typedef size_t (*my_charset_conv_case)(CHARSET_INFO *,
const char *, size_t, char *, size_t);
typedef size_t (*my_charset_conv_to_halfwidth)(CHARSET_INFO *, int from_fullwidth_only,
const char *, size_t, char *, size_t);
typedef size_t (*my_charset_conv_to_fullwidth)(CHARSET_INFO *, int to_hiragana,
const char *, size_t, char *, size_t);

/*
A structure to return the statistics of a native string copying,
Expand Down Expand Up @@ -781,6 +809,8 @@ struct my_charset_handler_st

uint (*caseup_multiply)(CHARSET_INFO *cs);
uint (*casedn_multiply)(CHARSET_INFO *cs);
my_charset_conv_to_fullwidth halfwidth_fullwidth;
my_charset_conv_to_halfwidth fullwidth_halfwidth;
};

extern MY_CHARSET_HANDLER my_charset_8bit_handler;
Expand Down
1 change: 1 addition & 0 deletions include/mysql_com.h
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,7 @@ enum enum_indicator_type
#define PART_KEY_FLAG 16384U /* Intern; Part of some key */
#define GROUP_FLAG 32768U /* Intern: Group field */
#define CONTEXT_COLLATION_FLAG 131072U /* Intern: Used by sql_yacc */
#define ANYCS_COLLATION_FLAG 65536U /* Intern: Used by sql_yacc */
#define GET_FIXED_FIELDS_FLAG (1U << 18) /* Used to get fields in item tree */
#define FIELD_IN_PART_FUNC_FLAG (1U << 19)/* Field part of partition func */
#define PART_INDIRECT_KEY_FLAG (1U << 20)
Expand Down
368 changes: 184 additions & 184 deletions mysql-test/main/ctype_utf8_uca.result

Large diffs are not rendered by default.

88 changes: 44 additions & 44 deletions mysql-test/main/ctype_utf8mb4_0900.result
Original file line number Diff line number Diff line change
Expand Up @@ -214,136 +214,136 @@ SELECT rec.COLLATION_NAME;
END FOR;
$$
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 18 Y 0 0 255
def COLLATION_NAME rec.COLLATION_NAME 253 256 18 Y 4096 0 255
utf8mb4_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 24 Y 0 0 256
def COLLATION_NAME rec.COLLATION_NAME 253 256 24 Y 4096 0 256
utf8mb4_de_pb_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 257
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 257
utf8mb4_is_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 258
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 258
utf8mb4_lv_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 259
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 259
utf8mb4_ro_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 260
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 260
utf8mb4_sl_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 261
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 261
utf8mb4_pl_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 262
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 262
utf8mb4_et_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 263
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 263
utf8mb4_es_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 264
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 264
utf8mb4_sv_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 265
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 265
utf8mb4_tr_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 266
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 266
utf8mb4_cs_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 267
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 267
utf8mb4_da_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 268
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 268
utf8mb4_lt_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 269
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 269
utf8mb4_sk_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 26 Y 0 0 270
def COLLATION_NAME rec.COLLATION_NAME 253 256 26 Y 4096 0 270
utf8mb4_es_trad_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 271
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 271
utf8mb4_la_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 273
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 273
utf8mb4_eo_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 274
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 274
utf8mb4_hu_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 275
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 275
utf8mb4_hr_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 277
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 277
utf8mb4_vi_0900_ai_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 18 Y 0 0 278
def COLLATION_NAME rec.COLLATION_NAME 253 256 18 Y 4096 0 278
utf8mb4_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 24 Y 0 0 279
def COLLATION_NAME rec.COLLATION_NAME 253 256 24 Y 4096 0 279
utf8mb4_de_pb_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 280
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 280
utf8mb4_is_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 281
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 281
utf8mb4_lv_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 282
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 282
utf8mb4_ro_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 283
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 283
utf8mb4_sl_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 284
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 284
utf8mb4_pl_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 285
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 285
utf8mb4_et_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 286
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 286
utf8mb4_es_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 287
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 287
utf8mb4_sv_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 288
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 288
utf8mb4_tr_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 289
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 289
utf8mb4_cs_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 290
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 290
utf8mb4_da_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 291
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 291
utf8mb4_lt_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 292
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 292
utf8mb4_sk_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 26 Y 0 0 293
def COLLATION_NAME rec.COLLATION_NAME 253 256 26 Y 4096 0 293
utf8mb4_es_trad_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 294
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 294
utf8mb4_la_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 296
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 296
utf8mb4_eo_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 297
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 297
utf8mb4_hu_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 298
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 298
utf8mb4_hr_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 0 0 300
def COLLATION_NAME rec.COLLATION_NAME 253 256 21 Y 4096 0 300
utf8mb4_vi_0900_as_cs
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 18 Y 0 0 305
def COLLATION_NAME rec.COLLATION_NAME 253 256 18 Y 4096 0 305
utf8mb4_0900_as_ci
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def COLLATION_NAME rec.COLLATION_NAME 253 256 16 Y 0 0 309
def COLLATION_NAME rec.COLLATION_NAME 253 256 16 Y 4096 0 309
utf8mb4_0900_bin
#
# MDEV-36361 Wrong utf8mb4_0900_bin alias for utf8mb4_bin (should be utf8mb4_nopad_bin)
Expand Down
Loading