diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2023-01-13 10:47:56 +0200 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2023-01-13 10:47:56 +0200 |
commit | 1e04cafcba88e1801e828a5bbab7fe9fdd7ca61c (patch) | |
tree | 6adddccee0d76b14e2821e6b4263a6dfcf6ccde6 /sql/item_cmpfunc.h | |
parent | ab36eac584a0bef4a048a3fd8ae56ff2cbfcb6cc (diff) | |
parent | 3386b309756adba6b9633ad18c4e0575c7304cfe (diff) | |
download | mariadb-git-1e04cafcba88e1801e828a5bbab7fe9fdd7ca61c.tar.gz |
Merge 10.6 into 10.7
Diffstat (limited to 'sql/item_cmpfunc.h')
-rw-r--r-- | sql/item_cmpfunc.h | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/sql/item_cmpfunc.h b/sql/item_cmpfunc.h index 2805a455db0..b8ae7f9376e 100644 --- a/sql/item_cmpfunc.h +++ b/sql/item_cmpfunc.h @@ -3181,13 +3181,32 @@ public: COND **conds); void copy_andor_arguments(THD *thd, Item_cond *item); bool walk(Item_processor processor, bool walk_subquery, void *arg) override; - Item *transform(THD *thd, Item_transformer transformer, uchar *arg) override; - Item *top_level_transform(THD *thd, Item_transformer transformer, uchar *arg) override; + Item *do_transform(THD *thd, Item_transformer transformer, uchar *arg, + bool toplevel); + Item *transform(THD *thd, Item_transformer transformer, uchar *arg) override + { + return do_transform(thd, transformer, arg, 0); + } + Item *top_level_transform(THD *thd, Item_transformer transformer, uchar *arg) + override + { + return do_transform(thd, transformer, arg, 1); + } void traverse_cond(Cond_traverser, void *arg, traverse_order order) override; void neg_arguments(THD *thd); Item* propagate_equal_fields(THD *, const Context &, COND_EQUAL *) override; + Item *do_compile(THD *thd, Item_analyzer analyzer, uchar **arg_p, + Item_transformer transformer, uchar *arg_t, bool toplevel); Item *compile(THD *thd, Item_analyzer analyzer, uchar **arg_p, - Item_transformer transformer, uchar *arg_t) override; + Item_transformer transformer, uchar *arg_t) override + { + return do_compile(thd, analyzer, arg_p, transformer, arg_t, 0); + } + Item* top_level_compile(THD *thd, Item_analyzer analyzer, uchar **arg_p, + Item_transformer transformer, uchar *arg_t) override + { + return do_compile(thd, analyzer, arg_p, transformer, arg_t, 1); + } bool eval_not_null_tables(void *opt_arg) override; bool find_not_null_fields(table_map allowed) override; Item *build_clone(THD *thd) override; |