MySQL 8.0.40
Source Code Documentation
|
#include <assert.h>
#include <errno.h>
#include <stdarg.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <algorithm>
#include <limits>
#include "m_ctype.h"
#include "m_string.h"
#include "my_compiler.h"
#include "my_inttypes.h"
#include "my_macros.h"
#include "my_sys.h"
#include "template_utils.h"
Classes | |
struct | uni_idx |
Macros | |
#define | likeconv(s, A) (uchar)(s)->sort_order[(uchar)(A)] |
#define | INC_PTR(cs, A, B) (A)++ |
#define | PLANE_SIZE 0x100 |
#define | PLANE_NUM 0x100 |
#define | PLANE_NUMBER(x) (((x) >> 8) % PLANE_NUM) |
Functions | |
static longlong | ulonglong_with_sign (bool negative, ulonglong ll) |
size_t | my_strnxfrmlen_simple (const CHARSET_INFO *cs, size_t len) |
size_t | my_strnxfrm_simple (const CHARSET_INFO *cs, uchar *dst, size_t dstlen, uint nweights, const uchar *src, size_t srclen, uint flags) |
int | my_strnncoll_simple (const CHARSET_INFO *cs, const uchar *s, size_t slen, const uchar *t, size_t tlen, bool t_is_prefix) |
int | my_strnncollsp_simple (const CHARSET_INFO *cs, const uchar *a, size_t a_length, const uchar *b, size_t b_length) |
size_t | my_caseup_str_8bit (const CHARSET_INFO *cs, char *str) |
size_t | my_casedn_str_8bit (const CHARSET_INFO *cs, char *str) |
size_t | my_caseup_8bit (const CHARSET_INFO *cs, char *src, size_t srclen, char *dst, size_t dstlen) |
size_t | my_casedn_8bit (const CHARSET_INFO *cs, char *src, size_t srclen, char *dst, size_t dstlen) |
int | my_strcasecmp_8bit (const CHARSET_INFO *cs, const char *s, const char *t) |
int | my_mb_wc_8bit (const CHARSET_INFO *cs, my_wc_t *wc, const uchar *str, const uchar *end) |
int | my_wc_mb_8bit (const CHARSET_INFO *cs, my_wc_t wc, uchar *str, uchar *end) |
size_t | my_snprintf_8bit (const CHARSET_INFO *cs, char *to, size_t n, const char *fmt,...) |
void | my_hash_sort_simple (const CHARSET_INFO *cs, const uchar *key, size_t len, uint64 *nr1, uint64 *nr2) |
long | my_strntol_8bit (const CHARSET_INFO *cs, const char *nptr, size_t l, int base, const char **endptr, int *err) |
ulong | my_strntoul_8bit (const CHARSET_INFO *cs, const char *nptr, size_t l, int base, const char **endptr, int *err) |
longlong | my_strntoll_8bit (const CHARSET_INFO *cs, const char *nptr, size_t l, int base, const char **endptr, int *err) |
ulonglong | my_strntoull_8bit (const CHARSET_INFO *cs, const char *nptr, size_t l, int base, const char **endptr, int *err) |
double | my_strntod_8bit (const CHARSET_INFO *cs, const char *str, size_t length, const char **end, int *err) |
size_t | my_long10_to_str_8bit (const CHARSET_INFO *cs, char *dst, size_t len, int radix, long int val) |
size_t | my_longlong10_to_str_8bit (const CHARSET_INFO *cs, char *dst, size_t len, int radix, longlong val) |
static int | my_wildcmp_8bit_impl (const CHARSET_INFO *cs, const char *str, const char *str_end, const char *wildstr_arg, const char *wildend_arg, int escape, int w_one, int w_many, int recurse_level) |
int | my_wildcmp_8bit (const CHARSET_INFO *cs, const char *str, const char *str_end, const char *wildstr, const char *wildend, int escape, int w_one, int w_many) |
bool | my_like_range_simple (const CHARSET_INFO *cs, const char *ptr, size_t ptr_length, char escape, char w_one, char w_many, size_t res_length, char *min_str, char *max_str, size_t *min_length, size_t *max_length) |
size_t | my_scan_8bit (const CHARSET_INFO *cs, const char *str, const char *end, int sq) |
void | my_fill_8bit (const CHARSET_INFO *cs, char *s, size_t l, int fill) |
size_t | my_numchars_8bit (const CHARSET_INFO *cs, const char *b, const char *e) |
size_t | my_numcells_8bit (const CHARSET_INFO *cs, const char *b, const char *e) |
size_t | my_charpos_8bit (const CHARSET_INFO *cs, const char *b, const char *e, size_t pos) |
size_t | my_well_formed_len_8bit (const CHARSET_INFO *cs, const char *start, const char *end, size_t nchars, int *error) |
size_t | my_lengthsp_8bit (const CHARSET_INFO *cs, const char *ptr, size_t length) |
uint | my_instr_simple (const CHARSET_INFO *cs, const char *b, size_t b_length, const char *s, size_t s_length, my_match_t *match, uint nmatch) |
static size_t | my_well_formed_len_ascii (const CHARSET_INFO *cs, const char *start, const char *end, size_t nchars, int *error) |
static int | pcmp (const void *f, const void *s) |
static bool | create_fromuni (CHARSET_INFO *cs, MY_CHARSET_LOADER *loader) |
static bool | my_cset_init_8bit (CHARSET_INFO *cs, MY_CHARSET_LOADER *loader) |
static void | set_max_sort_char (CHARSET_INFO *cs) |
static bool | my_coll_init_simple (CHARSET_INFO *cs, MY_CHARSET_LOADER *loader) |
longlong | my_strtoll10_8bit (const CHARSET_INFO *cs, const char *nptr, const char **endptr, int *error) |
int | my_mb_ctype_8bit (const CHARSET_INFO *cs, int *ctype, const uchar *s, const uchar *e) |
ulonglong | my_strntoull10rnd_8bit (const CHARSET_INFO *cs, const char *str, size_t length, int unsigned_flag, const char **endptr, int *error) |
bool | my_propagate_simple (const CHARSET_INFO *cs, const uchar *str, size_t length) |
bool | my_propagate_complex (const CHARSET_INFO *cs, const uchar *str, size_t length) |
uint | my_strxfrm_flag_normalize (uint flags) |
size_t | my_strxfrm_pad (const CHARSET_INFO *cs, uchar *str, uchar *frmend, uchar *strend, uint nweights, uint flags) |
Variables | |
constexpr const uint64_t | CUTOFF {ULLONG_MAX / 10} |
constexpr const uint64_t | CUTLIM {ULLONG_MAX % 10} |
constexpr const int | DIGITS_IN_ULONGLONG {20} |
static ulonglong | d10 [DIGITS_IN_ULONGLONG] |
MY_CHARSET_HANDLER | my_charset_8bit_handler |
MY_CHARSET_HANDLER | my_charset_ascii_handler |
MY_COLLATION_HANDLER | my_collation_8bit_simple_ci_handler |
#define INC_PTR | ( | cs, | |
A, | |||
B | |||
) | (A)++ |
#define PLANE_NUM 0x100 |
#define PLANE_NUMBER | ( | x | ) | (((x) >> 8) % PLANE_NUM) |
#define PLANE_SIZE 0x100 |
|
static |
size_t my_casedn_8bit | ( | const CHARSET_INFO * | cs, |
char * | src, | ||
size_t | srclen, | ||
char * | dst, | ||
size_t | dstlen | ||
) |
size_t my_casedn_str_8bit | ( | const CHARSET_INFO * | cs, |
char * | str | ||
) |
size_t my_caseup_8bit | ( | const CHARSET_INFO * | cs, |
char * | src, | ||
size_t | srclen, | ||
char * | dst, | ||
size_t | dstlen | ||
) |
size_t my_caseup_str_8bit | ( | const CHARSET_INFO * | cs, |
char * | str | ||
) |
size_t my_charpos_8bit | ( | const CHARSET_INFO * | cs, |
const char * | b, | ||
const char * | e, | ||
size_t | pos | ||
) |
|
static |
|
static |
void my_fill_8bit | ( | const CHARSET_INFO * | cs, |
char * | s, | ||
size_t | l, | ||
int | fill | ||
) |
void my_hash_sort_simple | ( | const CHARSET_INFO * | cs, |
const uchar * | key, | ||
size_t | len, | ||
uint64 * | nr1, | ||
uint64 * | nr2 | ||
) |
uint my_instr_simple | ( | const CHARSET_INFO * | cs, |
const char * | b, | ||
size_t | b_length, | ||
const char * | s, | ||
size_t | s_length, | ||
my_match_t * | match, | ||
uint | nmatch | ||
) |
size_t my_lengthsp_8bit | ( | const CHARSET_INFO * | cs, |
const char * | ptr, | ||
size_t | length | ||
) |
bool my_like_range_simple | ( | const CHARSET_INFO * | cs, |
const char * | ptr, | ||
size_t | ptr_length, | ||
char | escape, | ||
char | w_one, | ||
char | w_many, | ||
size_t | res_length, | ||
char * | min_str, | ||
char * | max_str, | ||
size_t * | min_length, | ||
size_t * | max_length | ||
) |
size_t my_long10_to_str_8bit | ( | const CHARSET_INFO * | cs, |
char * | dst, | ||
size_t | len, | ||
int | radix, | ||
long int | val | ||
) |
size_t my_longlong10_to_str_8bit | ( | const CHARSET_INFO * | cs, |
char * | dst, | ||
size_t | len, | ||
int | radix, | ||
longlong | val | ||
) |
int my_mb_ctype_8bit | ( | const CHARSET_INFO * | cs, |
int * | ctype, | ||
const uchar * | s, | ||
const uchar * | e | ||
) |
int my_mb_wc_8bit | ( | const CHARSET_INFO * | cs, |
my_wc_t * | wc, | ||
const uchar * | str, | ||
const uchar * | end | ||
) |
size_t my_numcells_8bit | ( | const CHARSET_INFO * | cs, |
const char * | b, | ||
const char * | e | ||
) |
size_t my_numchars_8bit | ( | const CHARSET_INFO * | cs, |
const char * | b, | ||
const char * | e | ||
) |
bool my_propagate_complex | ( | const CHARSET_INFO * | cs, |
const uchar * | str, | ||
size_t | length | ||
) |
bool my_propagate_simple | ( | const CHARSET_INFO * | cs, |
const uchar * | str, | ||
size_t | length | ||
) |
size_t my_scan_8bit | ( | const CHARSET_INFO * | cs, |
const char * | str, | ||
const char * | end, | ||
int | sq | ||
) |
size_t my_snprintf_8bit | ( | const CHARSET_INFO * | cs, |
char * | to, | ||
size_t | n, | ||
const char * | fmt, | ||
... | |||
) |
int my_strcasecmp_8bit | ( | const CHARSET_INFO * | cs, |
const char * | s, | ||
const char * | t | ||
) |
int my_strnncoll_simple | ( | const CHARSET_INFO * | cs, |
const uchar * | s, | ||
size_t | slen, | ||
const uchar * | t, | ||
size_t | tlen, | ||
bool | t_is_prefix | ||
) |
int my_strnncollsp_simple | ( | const CHARSET_INFO * | cs, |
const uchar * | a, | ||
size_t | a_length, | ||
const uchar * | b, | ||
size_t | b_length | ||
) |
double my_strntod_8bit | ( | const CHARSET_INFO * | cs, |
const char * | str, | ||
size_t | length, | ||
const char ** | end, | ||
int * | err | ||
) |
long my_strntol_8bit | ( | const CHARSET_INFO * | cs, |
const char * | nptr, | ||
size_t | l, | ||
int | base, | ||
const char ** | endptr, | ||
int * | err | ||
) |
longlong my_strntoll_8bit | ( | const CHARSET_INFO * | cs, |
const char * | nptr, | ||
size_t | l, | ||
int | base, | ||
const char ** | endptr, | ||
int * | err | ||
) |
ulong my_strntoul_8bit | ( | const CHARSET_INFO * | cs, |
const char * | nptr, | ||
size_t | l, | ||
int | base, | ||
const char ** | endptr, | ||
int * | err | ||
) |
ulonglong my_strntoull10rnd_8bit | ( | const CHARSET_INFO * | cs, |
const char * | str, | ||
size_t | length, | ||
int | unsigned_flag, | ||
const char ** | endptr, | ||
int * | error | ||
) |
ulonglong my_strntoull_8bit | ( | const CHARSET_INFO * | cs, |
const char * | nptr, | ||
size_t | l, | ||
int | base, | ||
const char ** | endptr, | ||
int * | err | ||
) |
size_t my_strnxfrm_simple | ( | const CHARSET_INFO * | cs, |
uchar * | dst, | ||
size_t | dstlen, | ||
uint | nweights, | ||
const uchar * | src, | ||
size_t | srclen, | ||
uint | flags | ||
) |
size_t my_strnxfrmlen_simple | ( | const CHARSET_INFO * | cs, |
size_t | len | ||
) |
longlong my_strtoll10_8bit | ( | const CHARSET_INFO * | cs, |
const char * | nptr, | ||
const char ** | endptr, | ||
int * | error | ||
) |
size_t my_strxfrm_pad | ( | const CHARSET_INFO * | cs, |
uchar * | str, | ||
uchar * | frmend, | ||
uchar * | strend, | ||
uint | nweights, | ||
uint | flags | ||
) |
int my_wc_mb_8bit | ( | const CHARSET_INFO * | cs, |
my_wc_t | wc, | ||
uchar * | str, | ||
uchar * | end | ||
) |
size_t my_well_formed_len_8bit | ( | const CHARSET_INFO * | cs, |
const char * | start, | ||
const char * | end, | ||
size_t | nchars, | ||
int * | error | ||
) |
|
static |
int my_wildcmp_8bit | ( | const CHARSET_INFO * | cs, |
const char * | str, | ||
const char * | str_end, | ||
const char * | wildstr, | ||
const char * | wildend, | ||
int | escape, | ||
int | w_one, | ||
int | w_many | ||
) |
|
static |
|
static |
|
static |
|
constexpr |
|
constexpr |
|
static |
|
constexpr |
MY_CHARSET_HANDLER my_charset_8bit_handler |
MY_CHARSET_HANDLER my_charset_ascii_handler |
MY_COLLATION_HANDLER my_collation_8bit_simple_ci_handler |