Browse Source
MDEV-11357 Split Item_cache::get_cache() into virtual methods in Type_handler
MDEV-11357 Split Item_cache::get_cache() into virtual methods in Type_handler
This patch: - Adds a new virtual method Type_handler::Item_get_cache - Splits moves Item_cache::get_cache() into the new method, every "case XXX_RESULT" to the corresponding Type_handler_xxx::Item_get_cache. - Adds Item::get_cache as a convenience wrapper, to make the caller code shorter. - Changes the last argument of Arg_comparator::cache_converted_constant() from Item_result to "const Type_handler *". - Removes subselect_engine::cmp_type, subselect_engine::res_type, subselect_engine::res_field_type and derives subselect_engine from Type_handler_hybrid_field_type instead. - Makes Type_handler_varchar public, as it's now needed as the default data type handler for subselect_engine.pull/310/merge
13 changed files with 100 additions and 84 deletions
-
41sql/item.cc
-
6sql/item.h
-
36sql/item_cmpfunc.cc
-
2sql/item_cmpfunc.h
-
24sql/item_subselect.cc
-
13sql/item_subselect.h
-
4sql/item_sum.cc
-
2sql/item_windowfunc.cc
-
2sql/opt_subselect.cc
-
2sql/sp_rcontext.cc
-
2sql/sql_class.cc
-
41sql/sql_type.cc
-
9sql/sql_type.h
Write
Preview
Loading…
Cancel
Save
Reference in new issue