summaryrefslogtreecommitdiff
path: root/sql/item.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/item.h')
-rw-r--r--sql/item.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/sql/item.h b/sql/item.h
index 3073a4d240d..c5fd5d074f6 100644
--- a/sql/item.h
+++ b/sql/item.h
@@ -1602,6 +1602,7 @@ public:
virtual bool is_order_clause_position() const { return false; }
/* cloning of constant items (0 if it is not const) */
virtual Item *clone_item(THD *thd) { return 0; }
+ /* deep copy item */
virtual Item* build_clone(THD *thd) { return get_copy(thd); }
virtual cond_result eq_cmp_result() const { return COND_OK; }
inline uint float_length(uint decimals_par) const
@@ -2094,6 +2095,10 @@ public:
*/
virtual bool find_not_null_fields(table_map allowed) { return false; }
+ /*
+ Does not guarantee deep copy (depends on copy ctor).
+ See build_clone() for deep copy.
+ */
virtual Item *get_copy(THD *thd)=0;
bool cache_const_expr_analyzer(uchar **arg);