MySQL 8.0.39
Source Code Documentation
|
This file defines all string Items (e.g. More...
#include "sql/item_strfunc.h"
#include <fcntl.h>
#include <algorithm>
#include <atomic>
#include <climits>
#include <cmath>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <memory>
#include <ostream>
#include <string>
#include <utility>
#include <vector>
#include <openssl/sha.h>
#include <zconf.h>
#include <zlib.h>
#include "base64.h"
#include "decimal.h"
#include "field_types.h"
#include "lex_string.h"
#include "m_ctype.h"
#include "m_string.h"
#include "my_aes.h"
#include "my_alloc.h"
#include "my_byteorder.h"
#include "my_checksum.h"
#include "my_compiler.h"
#include "my_dbug.h"
#include "my_dir.h"
#include "my_io.h"
#include "my_loglevel.h"
#include "my_md5.h"
#include "my_md5_size.h"
#include "my_rnd.h"
#include "my_sqlcommand.h"
#include "my_sys.h"
#include "my_systime.h"
#include "myisampack.h"
#include "mysql/components/services/bits/my_io_bits.h"
#include "mysql/components/services/log_builtins.h"
#include "mysql/mysql_lex_string.h"
#include "mysql/psi/mysql_file.h"
#include "mysql/psi/mysql_mutex.h"
#include "mysqld_error.h"
#include "mysys_err.h"
#include "sha1.h"
#include "sha2.h"
#include "sql/auth/auth_acls.h"
#include "sql/auth/auth_common.h"
#include "sql/auth/sql_security_ctx.h"
#include "sql/current_thd.h"
#include "sql/dd/dd_event.h"
#include "sql/dd/dd_table.h"
#include "sql/dd/info_schema/metadata.h"
#include "sql/dd/info_schema/table_stats.h"
#include "sql/dd/info_schema/tablespace_stats.h"
#include "sql/dd/properties.h"
#include "sql/dd/string_type.h"
#include "sql/dd/types/event.h"
#include "sql/dd_sql_view.h"
#include "sql/derror.h"
#include "sql/error_handler.h"
#include "sql/events.h"
#include "sql/filesort.h"
#include "sql/handler.h"
#include "sql/my_decimal.h"
#include "sql/mysqld.h"
#include "sql/parse_tree_node_base.h"
#include "sql/resourcegroups/resource_group_mgr.h"
#include "sql/rpl_gtid.h"
#include "sql/sort_param.h"
#include "sql/sql_class.h"
#include "sql/sql_digest.h"
#include "sql/sql_digest_stream.h"
#include "sql/sql_error.h"
#include "sql/sql_lex.h"
#include "sql/sql_locale.h"
#include "sql/sql_show.h"
#include "sql/strfunc.h"
#include "sql/system_variables.h"
#include "sql/table.h"
#include "sql/val_int_compare.h"
#include "sql_string.h"
#include "template_utils.h"
#include "typelib.h"
#include "unhex.h"
Classes | |
class | kdf_argument |
class | iv_argument |
helper class to process an IV argument to aes_encrypt/aes_decrypt More... | |
class | anonymous_namespace{item_strfunc.cc}::Thd_parse_modifier |
Because it's not possible to disentangle the state of the parser from the THD, we have to destructively modify the current THD object in order to parse. More... | |
class | anonymous_namespace{item_strfunc.cc}::Parse_error_anonymizer |
Error handler that wraps parse error messages, removes details and silences warnings. More... | |
Namespaces | |
namespace | anonymous_namespace{item_strfunc.cc} |
Macros | |
#define | get_esc_bit(mask, num) (1 & (*((mask) + ((num) >> 3))) >> ((num)&7)) |
#define | UUID_TIME_OFFSET ((ulonglong)141427 * 24 * 60 * 60 * 1000 * 1000 * 10) |
number of 100-nanosecond intervals between 1582-10-15 00:00:00.00 and 1970-01-01 00:00:00.00. More... | |
#define | UUID_VERSION 0x1000 |
#define | UUID_VARIANT 0x8000 |
Functions | |
static CHARSET_INFO * | get_checksum_charset (const char *csname) |
bool | anonymous_namespace{item_strfunc.cc}::parse (THD *thd, Item *statement_expr, String *statement_string) |
Parses a string and fills the token buffer. More... | |
static const char * | trim_func_name (Item_func_trim::TRIM_MODE mode) |
static int | soundex_toupper (int ch) |
If alpha, map input letter to soundex code. More... | |
static char | get_scode (int wc) |
static bool | my_uni_isalpha (int wc) |
String * | alloc_buffer (String *res, String *str, String *tmp_value, size_t length) |
static void | tohex (char *to, uint from, uint len) |
static void | set_clock_seq_str () |
String * | mysql_generate_uuid (String *str) |
Generate Universal Unique Identifier (UUID). More... | |
CHARSET_INFO * | mysqld_collation_get_by_name (const char *name, CHARSET_INFO *name_cs) |
Get collation by name, send error to client on failure. More... | |
Variables | |
uint * | my_aes_opmode_key_sizes |
const int | max_kdf_option_size {256} |
Helper class to retrieve KDF options for aes_encrypt/aes_decrypt. More... | |
const int | max_kdf_iterations_size {65535} |
const int | min_kdf_iterations_size {1000} |
static const char * | soundex_map = "01230120022455012623010202" |
const int | FORMAT_MAX_DECIMALS = 30 |
Change a number to format '3,333,333,333.000'. More... | |
static struct rand_struct | uuid_rand |
static uint | nanoseq |
static ulonglong | uuid_time = 0 |
static char | clock_seq_and_node_str [] = "-0000-000000000000" |
This file defines all string Items (e.g.
CONCAT).
#define UUID_TIME_OFFSET ((ulonglong)141427 * 24 * 60 * 60 * 1000 * 1000 * 10) |
number of 100-nanosecond intervals between 1582-10-15 00:00:00.00 and 1970-01-01 00:00:00.00.
#define UUID_VARIANT 0x8000 |
#define UUID_VERSION 0x1000 |
|
static |
|
static |
|
static |
Generate Universal Unique Identifier (UUID).
str | Pointer to string which will hold the UUID. |
CHARSET_INFO * mysqld_collation_get_by_name | ( | const char * | name, |
CHARSET_INFO * | name_cs | ||
) |
Get collation by name, send error to client on failure.
name | Collation name |
name_cs | Character set of the name string |
NULL | on error |
Pointter | to CHARSET_INFO with the given name on success |
|
static |
|
static |
If alpha, map input letter to soundex code.
If not alpha and remove_garbage is set then skip to next char else return 0
|
static |
|
static |
const int FORMAT_MAX_DECIMALS = 30 |
Change a number to format '3,333,333,333.000'.
This should be 'internationalized' sometimes.
const int max_kdf_iterations_size {65535} |
const int max_kdf_option_size {256} |
Helper class to retrieve KDF options for aes_encrypt/aes_decrypt.
const int min_kdf_iterations_size {1000} |
|
extern |
|
static |
|
static |
|
static |
|
static |