cleanup: move Virtual_column_info::print out of Virtual_column_info
This commit is contained in:
parent
2bf017c210
commit
03c52e964f
@ -681,7 +681,7 @@ public:
|
||||
in_partitioning_expr= TRUE;
|
||||
}
|
||||
inline bool is_equal(const Virtual_column_info* vcol) const;
|
||||
void print(String*);
|
||||
inline void print(String*);
|
||||
};
|
||||
|
||||
class Field: public Value_source
|
||||
|
11
sql/item.cc
11
sql/item.cc
@ -10715,14 +10715,3 @@ void Item::register_in(THD *thd)
|
||||
next= thd->free_list;
|
||||
thd->free_list= this;
|
||||
}
|
||||
|
||||
void Virtual_column_info::print(String *str)
|
||||
{
|
||||
expr->print_parenthesised(str,
|
||||
(enum_query_type)(QT_ITEM_ORIGINAL_FUNC_NULLIF |
|
||||
QT_ITEM_IDENT_SKIP_DB_NAMES |
|
||||
QT_ITEM_IDENT_SKIP_TABLE_NAMES |
|
||||
QT_NO_DATA_EXPANSION |
|
||||
QT_TO_SYSTEM_CHARSET),
|
||||
LOWEST_PRECEDENCE);
|
||||
}
|
||||
|
22
sql/item.h
22
sql/item.h
@ -1292,6 +1292,23 @@ public:
|
||||
virtual enum precedence precedence() const { return DEFAULT_PRECEDENCE; }
|
||||
void print_parenthesised(String *str, enum_query_type query_type,
|
||||
enum precedence parent_prec);
|
||||
/**
|
||||
This helper is used to print expressions as a part of a table definition,
|
||||
in particular for
|
||||
- generated columns
|
||||
- check constraints
|
||||
- default value expressions
|
||||
*/
|
||||
void print_for_table_def(String *str)
|
||||
{
|
||||
print_parenthesised(str,
|
||||
(enum_query_type)(QT_ITEM_ORIGINAL_FUNC_NULLIF |
|
||||
QT_ITEM_IDENT_SKIP_DB_NAMES |
|
||||
QT_ITEM_IDENT_SKIP_TABLE_NAMES |
|
||||
QT_NO_DATA_EXPANSION |
|
||||
QT_TO_SYSTEM_CHARSET),
|
||||
LOWEST_PRECEDENCE);
|
||||
}
|
||||
virtual void print(String *str, enum_query_type query_type);
|
||||
void print_item_w_name(String *str, enum_query_type query_type);
|
||||
void print_value(String *str);
|
||||
@ -5977,4 +5994,9 @@ inline bool Virtual_column_info::is_equal(const Virtual_column_info* vcol) const
|
||||
&& expr->eq(vcol->expr, true);
|
||||
}
|
||||
|
||||
inline void Virtual_column_info::print(String* str)
|
||||
{
|
||||
expr->print_for_table_def(str);
|
||||
}
|
||||
|
||||
#endif /* SQL_ITEM_INCLUDED */
|
||||
|
Loading…
x
Reference in New Issue
Block a user