diff options
author | unknown <vva@eagle.mysql.r18.ru> | 2003-10-01 12:00:08 -0400 |
---|---|---|
committer | unknown <vva@eagle.mysql.r18.ru> | 2003-10-01 12:00:08 -0400 |
commit | d7e308c667ebeacde05cc5f8e921ebd16f474634 (patch) | |
tree | bf89495a979929bf4091a59ed265b2a89efe9492 /sql | |
parent | de6a1085eb101d9a091a1d437c1ff4e75eb5e8a0 (diff) | |
download | mariadb-git-d7e308c667ebeacde05cc5f8e921ebd16f474634.tar.gz |
turn Item_func_set_user_var
::native_val, ::native_val_int and native_val_str into inline
Diffstat (limited to 'sql')
-rw-r--r-- | sql/item_func.cc | 32 | ||||
-rw-r--r-- | sql/item_func.h | 35 |
2 files changed, 31 insertions, 36 deletions
diff --git a/sql/item_func.cc b/sql/item_func.cc index 2105df6156c..4e1cc3865ba 100644 --- a/sql/item_func.cc +++ b/sql/item_func.cc @@ -1899,38 +1899,6 @@ void Item_func_set_user_var::update_hash(void *ptr, uint length, return; } -double Item_func_set_user_var::native_val() -{ - double value=args[0]->val(); - update_hash((void*) &value,sizeof(value), REAL_RESULT); - return value; -} - -longlong Item_func_set_user_var::native_val_int() -{ - longlong value=args[0]->val_int(); - update_hash((void*) &value,sizeof(longlong),INT_RESULT); - return value; -} - -String *Item_func_set_user_var::native_val_str(String *str) -{ - char buffer[MAX_FIELD_WIDTH]; - String *res=args[0]->val_str(str); - if (!res) // Null value - update_hash((void*) 0,0,STRING_RESULT); - else - update_hash(res->c_ptr(),res->length()+1,STRING_RESULT); - return res; -} - -String *Item_func_set_user_var::native_val_str() -{ - char buffer[MAX_FIELD_WIDTH]; - String tmp(buffer,sizeof(buffer)); - return native_val_str(&tmp); -} - bool Item_func_set_user_var::update() { diff --git a/sql/item_func.h b/sql/item_func.h index 4dada28f87b..ffc587c3cf3 100644 --- a/sql/item_func.h +++ b/sql/item_func.h @@ -889,10 +889,37 @@ class Item_func_set_user_var :public Item_func LEX_STRING name; user_var_entry *entry; - double native_val(); - longlong native_val_int(); - String *native_val_str(String *str); - String *native_val_str(); + double native_val() + { + double value=args[0]->val(); + update_hash((void*) &value,sizeof(value), REAL_RESULT); + return value; + } + + longlong native_val_int() + { + longlong value=args[0]->val_int(); + update_hash((void*) &value,sizeof(longlong),INT_RESULT); + return value; + } + + String *native_val_str(String *str) + { + char buffer[MAX_FIELD_WIDTH]; + String *res=args[0]->val_str(str); + if (!res) // Null value + update_hash((void*) 0,0,STRING_RESULT); + else + update_hash(res->c_ptr(),res->length()+1,STRING_RESULT); + return res; + } + + String *native_val_str() + { + char buffer[MAX_FIELD_WIDTH]; + String tmp(buffer,sizeof(buffer)); + return native_val_str(&tmp); + } public: Item_func_set_user_var(LEX_STRING a,Item *b): Item_func(b), name(a) {} |