summaryrefslogtreecommitdiff
path: root/sql/item_row.cc
diff options
context:
space:
mode:
authorunknown <igor@rurik.mysql.com>2004-10-09 10:34:13 -0700
committerunknown <igor@rurik.mysql.com>2004-10-09 10:34:13 -0700
commit881534fb80cc7a017d180734a21a10b3e46aecba (patch)
tree84324c7af32f54d423310e3a2ee3255f7f43749b /sql/item_row.cc
parent79f1eeb87ff8047d1d09578f41c604bf5e31f29b (diff)
parent75fec5bdc3e9e5f0a4018c7dbf6371f0b4c5d14f (diff)
downloadmariadb-git-881534fb80cc7a017d180734a21a10b3e46aecba.tar.gz
Merge for Item_equal.
BitKeeper/etc/ignore: auto-union mysql-test/r/bdb.result: Auto merged mysql-test/r/func_group.result: Auto merged mysql-test/r/innodb.result: Auto merged mysql-test/r/heap_btree.result: Auto merged mysql-test/r/select.result: Auto merged mysql-test/r/user_var.result: Auto merged mysql-test/t/range.test: Auto merged sql/item_func.cc: Auto merged sql/item_func.h: Auto merged sql/item_row.cc: Auto merged sql/item_strfunc.h: Auto merged sql/opt_sum.cc: Auto merged sql/sql_list.h: Auto merged mysql-test/r/func_test.result: Post-automerge resolution of conflicts mysql-test/r/index_merge.result: Post-automerge resolution of conflicts mysql-test/r/join_outer.result: Post-automerge resolution of conflicts mysql-test/r/range.result: Post-automerge resolution of conflicts mysql-test/r/subselect.result: Post-automerge resolution of conflicts sql/item.cc: Post-automerge resolution of conflicts sql/item.h: Post-automerge resolution of conflicts sql/item_cmpfunc.cc: Post-automerge resolution of conflicts sql/item_cmpfunc.h: Post-automerge resolution of conflicts sql/opt_range.cc: Post-automerge resolution of conflicts sql/sql_select.cc: Post-automerge resolution of conflicts sql/sql_select.h: Post-automerge resolution of conflicts
Diffstat (limited to 'sql/item_row.cc')
-rw-r--r--sql/item_row.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/sql/item_row.cc b/sql/item_row.cc
index f6623e80734..8bf0d5061a7 100644
--- a/sql/item_row.cc
+++ b/sql/item_row.cc
@@ -145,6 +145,18 @@ bool Item_row::walk(Item_processor processor, byte *arg)
return (this->*processor)(arg);
}
+Item *Item_row::transform(Item_transformer transformer, byte *arg)
+{
+ for (uint i= 0; i < arg_count; i++)
+ {
+ Item *new_item= items[i]->transform(transformer, arg);
+ if (!new_item)
+ return 0;
+ items[i]= new_item;
+ }
+ return (this->*transformer)(arg);
+}
+
void Item_row::bring_value()
{
for (uint i= 0; i < arg_count; i++)