mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
Merge branch '11.1' into 11.2
This commit is contained in:
@@ -104,7 +104,7 @@ public:
|
||||
static const Lex_cstring fmt(STRING_WITH_LEN("json"));
|
||||
return to->set_format_name(fmt);
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_valid>(thd, this); }
|
||||
enum Functype functype() const override { return JSON_VALID_FUNC; }
|
||||
};
|
||||
@@ -121,7 +121,7 @@ public:
|
||||
return name;
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_equals>(thd, this); }
|
||||
longlong val_int() override;
|
||||
};
|
||||
@@ -142,7 +142,7 @@ public:
|
||||
return name;
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_exists>(thd, this); }
|
||||
longlong val_int() override;
|
||||
};
|
||||
@@ -190,7 +190,7 @@ public:
|
||||
{
|
||||
return je->check_and_get_value_scalar(res, error);
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_value>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -218,7 +218,7 @@ public:
|
||||
{
|
||||
return je->check_and_get_value_complex(res, error, JSON_VALUE_UNINITIALIZED);
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_query>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -237,7 +237,7 @@ public:
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
String *val_str(String *) override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_quote>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -256,7 +256,7 @@ public:
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
String *val_str(String *) override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_unquote>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -311,7 +311,7 @@ public:
|
||||
double val_real() override;
|
||||
my_decimal *val_decimal(my_decimal *) override;
|
||||
uint get_n_paths() const override { return arg_count - 1; }
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_extract>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -334,7 +334,7 @@ public:
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
longlong val_int() override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_contains>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -361,7 +361,7 @@ public:
|
||||
bool fix_fields(THD *thd, Item **ref) override;
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
longlong val_int() override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_contains_path>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -383,7 +383,7 @@ public:
|
||||
static LEX_CSTRING name= {STRING_WITH_LEN("json_array") };
|
||||
return name;
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_array>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -404,7 +404,7 @@ public:
|
||||
static LEX_CSTRING name= {STRING_WITH_LEN("json_array_append") };
|
||||
return name;
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_array_append>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -420,7 +420,7 @@ public:
|
||||
static LEX_CSTRING name= {STRING_WITH_LEN("json_array_insert") };
|
||||
return name;
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_array_insert>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -438,7 +438,7 @@ public:
|
||||
static LEX_CSTRING name= {STRING_WITH_LEN("json_object") };
|
||||
return name;
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_object>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -456,7 +456,7 @@ public:
|
||||
static LEX_CSTRING name= {STRING_WITH_LEN("json_merge_preserve") };
|
||||
return name;
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_merge>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -471,7 +471,7 @@ public:
|
||||
return name;
|
||||
}
|
||||
String *val_str(String *) override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_merge_patch>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -488,7 +488,7 @@ public:
|
||||
return name;
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_normalize>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -507,7 +507,7 @@ public:
|
||||
return name;
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_object_to_array>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -539,7 +539,7 @@ public:
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
longlong val_int() override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_length>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -559,7 +559,7 @@ public:
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override { max_length= 10; return FALSE; }
|
||||
longlong val_int() override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_depth>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -577,7 +577,7 @@ public:
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
String *val_str(String *) override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_type>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -603,7 +603,7 @@ public:
|
||||
return (mode_insert ?
|
||||
(mode_replace ? json_set : json_insert) : json_replace);
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_insert>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -623,7 +623,7 @@ public:
|
||||
static LEX_CSTRING name= {STRING_WITH_LEN("json_remove") };
|
||||
return name;
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_remove>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -644,7 +644,7 @@ public:
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
String *val_str(String *) override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_keys>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -673,7 +673,7 @@ public:
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
String *val_str(String *) override;
|
||||
uint get_n_paths() const override { return arg_count > 4 ? arg_count - 4 : 0; }
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_search>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -701,7 +701,7 @@ public:
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
String *val_str(String *str) override;
|
||||
String *val_json(String *str) override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_format>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -747,7 +747,7 @@ public:
|
||||
String* val_str(String *str) override;
|
||||
|
||||
Item *copy_or_same(THD* thd) override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_arrayagg>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -796,7 +796,7 @@ public:
|
||||
String* val_str(String* str) override;
|
||||
Item *copy_or_same(THD* thd) override;
|
||||
void no_rows_in_result() override {}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_objectagg>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -818,7 +818,7 @@ public:
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
longlong val_int() override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_overlaps>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -845,7 +845,7 @@ public:
|
||||
}
|
||||
bool fix_length_and_dec(THD *thd) override;
|
||||
longlong val_int() override;
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_schema_valid>(thd, this); }
|
||||
void cleanup() override;
|
||||
};
|
||||
@@ -872,7 +872,7 @@ public:
|
||||
return je->check_and_get_value_complex(res, error, JSON_VALUE_OBJECT);
|
||||
}
|
||||
bool get_key_value(json_engine_t *je, String *str);
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_key_value>(thd, this); }
|
||||
};
|
||||
|
||||
@@ -896,7 +896,7 @@ public:
|
||||
static LEX_CSTRING name= {STRING_WITH_LEN("json_array_intersect") };
|
||||
return name;
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_array_intersect>(thd, this); }
|
||||
void cleanup() override
|
||||
{
|
||||
@@ -926,7 +926,7 @@ public:
|
||||
static LEX_CSTRING name= {STRING_WITH_LEN("json_object_filter_keys") };
|
||||
return name;
|
||||
}
|
||||
Item *get_copy(THD *thd) override
|
||||
Item *do_get_copy(THD *thd) const override
|
||||
{ return get_item_copy<Item_func_json_object_filter_keys>(thd, this); }
|
||||
|
||||
void cleanup() override
|
||||
|
Reference in New Issue
Block a user