summaryrefslogtreecommitdiff
path: root/sql/item_func.cc
diff options
context:
space:
mode:
authorunknown <evgen@moonbone.local>2007-06-02 23:49:52 +0400
committerunknown <evgen@moonbone.local>2007-06-02 23:49:52 +0400
commit45714d35adc12bf23a66028e47b5ee85306e13b1 (patch)
tree42395411de577dee6bce51ab87b0a839b97b2c0c /sql/item_func.cc
parentb85d7da25dcec055de80ef0b4d9b886c55f38432 (diff)
parent8ab1830f9a4cca12420e2cd9756983707bca9af2 (diff)
downloadmariadb-git-45714d35adc12bf23a66028e47b5ee85306e13b1.tar.gz
Merge moonbone.local:/mnt/gentoo64/work/test-5.0-opt-mysql
into moonbone.local:/mnt/gentoo64/work/test-5.1-opt-mysql sql/item_func.cc: Auto merged sql/item_func.h: Auto merged mysql-test/r/user_var.result: Manual merge mysql-test/t/user_var.test: Manual merge
Diffstat (limited to 'sql/item_func.cc')
-rw-r--r--sql/item_func.cc34
1 files changed, 34 insertions, 0 deletions
diff --git a/sql/item_func.cc b/sql/item_func.cc
index 640ab3cac0c..c65477f3105 100644
--- a/sql/item_func.cc
+++ b/sql/item_func.cc
@@ -4179,6 +4179,40 @@ my_decimal *Item_func_set_user_var::val_decimal(my_decimal *val)
}
+double Item_func_set_user_var::val_real_result()
+{
+ DBUG_ASSERT(fixed == 1);
+ check(TRUE);
+ update(); // Store expression
+ return entry->val_real(&null_value);
+}
+
+longlong Item_func_set_user_var::val_int_result()
+{
+ DBUG_ASSERT(fixed == 1);
+ check(TRUE);
+ update(); // Store expression
+ return entry->val_int(&null_value);
+}
+
+String *Item_func_set_user_var::val_str_result(String *str)
+{
+ DBUG_ASSERT(fixed == 1);
+ check(TRUE);
+ update(); // Store expression
+ return entry->val_str(&null_value, str, decimals);
+}
+
+
+my_decimal *Item_func_set_user_var::val_decimal_result(my_decimal *val)
+{
+ DBUG_ASSERT(fixed == 1);
+ check(TRUE);
+ update(); // Store expression
+ return entry->val_decimal(&null_value, val);
+}
+
+
void Item_func_set_user_var::print(String *str)
{
str->append(STRING_WITH_LEN("(@"));