diff options
author | unknown <bell@sanja.is.com.ua> | 2002-11-15 20:32:09 +0200 |
---|---|---|
committer | unknown <bell@sanja.is.com.ua> | 2002-11-15 20:32:09 +0200 |
commit | 3f742831211a4d53d97c5ac6ee402b4782de8776 (patch) | |
tree | bf6f2bb43cd9c75eef36dd94166c76c6b9d402af /sql/item_row.h | |
parent | 5a8c6a33c22ed68acdccbde0649420cd8a80ad9d (diff) | |
download | mariadb-git-3f742831211a4d53d97c5ac6ee402b4782de8776.tar.gz |
basic row Items (SCRUM)
include/mysql_com.h:
basic row Items
include/mysqld_error.h:
more wide error mening
libmysqld/Makefile.am:
basic row Items
mysql-test/r/subselect.result:
more wide error mening
sql/Makefile.am:
basic row Items
sql/filesort.cc:
basic row Items
sql/item.cc:
basic row Items
sql/item.h:
basic row Items
sql/item_cmpfunc.cc:
basic row Items
sql/item_cmpfunc.h:
basic row Items
sql/item_func.cc:
basic row Items
sql/item_func.h:
basic row Items
sql/item_strfunc.cc:
basic row Items
sql/item_strfunc.h:
basic row Items
sql/item_subselect.cc:
basic row Items
sql/item_sum.cc:
basic row Items
sql/share/czech/errmsg.txt:
more wide error mening
sql/share/danish/errmsg.txt:
more wide error mening
sql/share/dutch/errmsg.txt:
more wide error mening
sql/share/english/errmsg.txt:
more wide error mening
sql/share/estonian/errmsg.txt:
more wide error mening
sql/share/french/errmsg.txt:
more wide error mening
sql/share/german/errmsg.txt:
more wide error mening
sql/share/greek/errmsg.txt:
more wide error mening
sql/share/hungarian/errmsg.txt:
more wide error mening
sql/share/italian/errmsg.txt:
more wide error mening
sql/share/japanese/errmsg.txt:
more wide error mening
sql/share/korean/errmsg.txt:
more wide error mening
sql/share/norwegian-ny/errmsg.txt:
more wide error mening
sql/share/norwegian/errmsg.txt:
more wide error mening
sql/share/polish/errmsg.txt:
more wide error mening
sql/share/portuguese/errmsg.txt:
more wide error mening
sql/share/romanian/errmsg.txt:
more wide error mening
sql/share/russian/errmsg.txt:
more wide error mening
sql/share/serbian/errmsg.txt:
more wide error mening
sql/share/slovak/errmsg.txt:
more wide error mening
sql/share/spanish/errmsg.txt:
more wide error mening
sql/share/swedish/errmsg.txt:
more wide error mening
sql/share/ukrainian/errmsg.txt:
more wide error mening
sql/sql_base.cc:
fix_fields error handling
sql/sql_lex.cc:
basic row Items
sql/sql_select.cc:
basic row Items
sql/sql_yacc.yy:
basic row Items
Diffstat (limited to 'sql/item_row.h')
-rw-r--r-- | sql/item_row.h | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/sql/item_row.h b/sql/item_row.h new file mode 100644 index 00000000000..6970b240b31 --- /dev/null +++ b/sql/item_row.h @@ -0,0 +1,65 @@ +/* Copyright (C) 2000 MySQL AB + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ + +class Item_row: public Item +{ + bool array_holder; + table_map tables; + uint arg_count; + Item **items; +public: + Item_row(List<Item> &); + Item_row(Item_row *item): + Item(), array_holder(0), tables(item->tables), arg_count(item->arg_count), + items(item->items) + {} + + ~Item_row() + { + if(array_holder && items) + sql_element_free(items); + } + + enum Type type() const { return ROW_ITEM; }; + void illegal_method_call(const char *); + bool is_null() { return null_value; } + void make_field(Send_field *) + { + illegal_method_call((const char*)"make_field"); + }; + double val() + { + illegal_method_call((const char*)"val"); + return 0; + }; + longlong val_int() + { + illegal_method_call((const char*)"val_int"); + return 0; + }; + String *val_str(String *) + { + illegal_method_call((const char*)"val_str"); + return 0; + }; + bool fix_fields(THD *thd, TABLE_LIST *tables, Item **ref); + table_map used_tables() const { return tables; }; + enum Item_result result_type() const { return ROW_RESULT; } + + virtual uint cols() { return arg_count; } + virtual Item* el(uint i) { return items[i]; } + virtual bool check_cols(uint c); +}; |