diff options
author | unknown <bar@bar.mysql.r18.ru> | 2003-07-15 17:33:00 +0500 |
---|---|---|
committer | unknown <bar@bar.mysql.r18.ru> | 2003-07-15 17:33:00 +0500 |
commit | 4b3eecf46b640b3601527ea59d819ddaec5820f8 (patch) | |
tree | 845244d4cf55ac7b19a0acd7fb5c0302a7e7e665 /sql/item_func.h | |
parent | 54fe4c542efbfbe10b320e73980bff9471554452 (diff) | |
download | mariadb-git-4b3eecf46b640b3601527ea59d819ddaec5820f8.tar.gz |
Item_func_field doesn't have a separate Item to store the first argument.
It's now passed as args[0]. This fix allowed to resuse a lot of code.
Diffstat (limited to 'sql/item_func.h')
-rw-r--r-- | sql/item_func.h | 21 |
1 files changed, 1 insertions, 20 deletions
diff --git a/sql/item_func.h b/sql/item_func.h index a5575a35851..a0969fc6b9a 100644 --- a/sql/item_func.h +++ b/sql/item_func.h @@ -625,33 +625,14 @@ public: class Item_func_field :public Item_int_func { - Item *item; String value,tmp; Item_result cmp_type; DTCollation cmp_collation; public: - Item_func_field(Item *a,List<Item> &list) :Item_int_func(list),item(a) {} - ~Item_func_field() { delete item; } + Item_func_field(List<Item> &list) :Item_int_func(list) {} longlong val_int(); - bool fix_fields(THD *thd,struct st_table_list *tlist, Item **ref) - { - return (item->fix_fields(thd, tlist, &item) || item->check_cols(1) || - Item_func::fix_fields(thd, tlist, ref)); - } - void split_sum_func(Item **ref_pointer_array, List<Item> &fields); - void update_used_tables() - { - item->update_used_tables() ; Item_func::update_used_tables(); - used_tables_cache|= item->used_tables(); - const_item_cache&= item->const_item(); - } const char *func_name() const { return "field"; } void fix_length_and_dec(); - void set_outer_resolving() - { - item->set_outer_resolving(); - Item_int_func::set_outer_resolving(); - } }; |