1#ifndef ITEM_INETFUNC_INCLUDED
2#define ITEM_INETFUNC_INCLUDED
50 const char *
func_name()
const override {
return "inet_aton"; }
72 const char *
func_name()
const override {
return "inet_ntoa"; }
128 const char *
func_name()
const override {
return "inet6_aton"; }
151 const char *
func_name()
const override {
return "inet6_ntoa"; }
178 const char *
func_name()
const override {
return "is_ipv4"; }
194 const char *
func_name()
const override {
return "is_ipv6"; }
210 const char *
func_name()
const override {
return "is_ipv4_compat"; }
226 const char *
func_name()
const override {
return "is_ipv4_mapped"; }
Definition: item_cmpfunc.h:295
Definition: item_inetfunc.h:122
const char * func_name() const override
Definition: item_inetfunc.h:128
Item_func_inet6_aton(const POS &pos, Item *ip_addr)
Definition: item_inetfunc.h:124
bool resolve_type(THD *thd) override
Resolve type-related information for this item, such as result field type, maximum size,...
Definition: item_inetfunc.h:130
bool calc_value(String *arg, String *buffer) override
Converts IP-address-string to IP-address-data.
Definition: item_inetfunc.cc:694
Definition: item_inetfunc.h:145
bool resolve_type(THD *thd) override
Resolve type-related information for this item, such as result field type, maximum size,...
Definition: item_inetfunc.h:153
bool calc_value(String *arg, String *buffer) override
Converts IP-address-data to IP-address-string.
Definition: item_inetfunc.cc:731
Item_func_inet6_ntoa(const POS &pos, Item *ip_addr)
Definition: item_inetfunc.h:147
const char * func_name() const override
Definition: item_inetfunc.h:151
Definition: item_inetfunc.h:42
const char * func_name() const override
Definition: item_inetfunc.h:50
Item_func_inet_aton(const POS &pos, Item *arg)
Definition: item_inetfunc.h:44
bool resolve_type(THD *thd) override
Resolve type-related information for this item, such as result field type, maximum size,...
Definition: item_inetfunc.h:52
longlong val_int() override
Definition: item_inetfunc.cc:58
Definition: item_inetfunc.h:87
longlong val_int() override
Check the function argument, handle errors properly.
Definition: item_inetfunc.cc:194
virtual bool calc_value(const String *arg) const =0
Item_func_inet_bool_base(const POS &pos, Item *ip_addr)
Definition: item_inetfunc.h:89
Definition: item_inetfunc.h:64
Item_func_inet_ntoa(const POS &pos, Item *arg)
Definition: item_inetfunc.h:66
String * val_str(String *str) override
Definition: item_inetfunc.cc:130
bool resolve_type(THD *thd) override
Resolve type-related information for this item, such as result field type, maximum size,...
Definition: item_inetfunc.h:74
const char * func_name() const override
Definition: item_inetfunc.h:72
Definition: item_inetfunc.h:106
virtual bool calc_value(String *arg, String *buffer)=0
String * val_str_ascii(String *buffer) override
Check the function argument, handle errors properly.
Definition: item_inetfunc.cc:223
Item_func_inet_str_base(const POS &pos, Item *arg)
Definition: item_inetfunc.h:108
Definition: item_inetfunc.h:204
Item_func_is_ipv4_compat(const POS &pos, Item *ip_addr)
Definition: item_inetfunc.h:206
const char * func_name() const override
Definition: item_inetfunc.h:210
bool calc_value(const String *arg) const override
Checks if the passed IPv6-address is an IPv4-compat IPv6-address.
Definition: item_inetfunc.cc:806
Definition: item_inetfunc.h:220
bool calc_value(const String *arg) const override
Checks if the passed IPv6-address is an IPv4-mapped IPv6-address.
Definition: item_inetfunc.cc:827
Item_func_is_ipv4_mapped(const POS &pos, Item *ip_addr)
Definition: item_inetfunc.h:222
const char * func_name() const override
Definition: item_inetfunc.h:226
Definition: item_inetfunc.h:172
Item_func_is_ipv4(const POS &pos, Item *ip_addr)
Definition: item_inetfunc.h:174
bool calc_value(const String *arg) const override
Checks if the passed string represents an IPv4-address.
Definition: item_inetfunc.cc:770
const char * func_name() const override
Definition: item_inetfunc.h:178
Definition: item_inetfunc.h:188
Item_func_is_ipv6(const POS &pos, Item *ip_addr)
Definition: item_inetfunc.h:190
const char * func_name() const override
Definition: item_inetfunc.h:194
bool calc_value(const String *arg) const override
Checks if the passed string represents an IPv6-address.
Definition: item_inetfunc.cc:788
bool param_type_is_default(THD *thd, uint start, uint end, uint step, enum_field_types def)
For arguments of this Item_func ("args" array), in range [start, start+step, start+2*step,...
Definition: item_func.cc:519
Definition: item_func.h:935
Definition: item_strfunc.h:144
Definition: item_strfunc.h:76
Base class that is used to represent any kind of expression in a relational query.
Definition: item.h:853
void set_nullable(bool nullable)
Definition: item.h:3472
static const CHARSET_INFO * default_charset()
Definition: item.cc:1652
bool null_value
True if item is null.
Definition: item.h:3497
bool unsigned_flag
Definition: item.h:3498
void set_data_type_string(uint32 max_l)
Set the Item to be variable length string.
Definition: item.h:1459
Using this class is fraught with peril, and you need to be very careful when doing so.
Definition: sql_string.h:168
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:34
@ MYSQL_TYPE_LONGLONG
Definition: field_types.h:62
A better implementation of the UNIX ctype(3) library.
MYSQL_PLUGIN_IMPORT CHARSET_INFO my_charset_bin
Definition: ctype-bin.cc:511
Some integer typedefs for easier portability.
long long int longlong
Definition: my_inttypes.h:55
std::string str(const mysqlrouter::ConfigGenerator::Options::Endpoint &ep)
Definition: config_generator.cc:1052
mutable_buffer buffer(void *p, size_t n) noexcept
Definition: buffer.h:420
Bison "location" class.
Definition: parse_location.h:43