|
We'll be replacing data type specific constants STRING_ITEM, INT_ITEM, REAL_ITEM, DECIMAL_ITEM, DATE_ITEM to LITERAL_ITEM soon (see MDEV-14630).
Under terms of this task we'll remove STRING_ITEM from:
The code creating concatenated string literals:
Item *THD::make_string_literal_concat(Item *item, const LEX_CSTRING &str)
|
Instead of testing item->type() for STRING_ITEM, we'll add a virtual method:
virtual Item_basic_constant *Item_basic_constant::make_string_literal_concat(THD *thd, const LEX_CSTRING *)
|
with implementations for Item_null and Item_string, and a default implementation for Item.
The rule in the bison grammar that parses ODBC style literals:
Instead of testing $3->type() for STRING_ITEM, we'll add a virtual method:
virtual Item *Item::make_odbc_literal(THD *thd, const LEX_CSTRING *typestr);
|
with an implementation for Item_string, and a default implementation for Item.
|