summaryrefslogtreecommitdiff
path: root/sql/item_strfunc.cc
diff options
context:
space:
mode:
authorunknown <bell@sanja.is.com.ua>2003-10-30 12:57:26 +0200
committerunknown <bell@sanja.is.com.ua>2003-10-30 12:57:26 +0200
commit87e6c2ba77a514456f9f33e69984d67d0a588469 (patch)
treefeb3d108a684e5356467c6eca482627ae8d30859 /sql/item_strfunc.cc
parent683dcaae6bfc101d352755f834ecda48f4ea4700 (diff)
downloadmariadb-git-87e6c2ba77a514456f9f33e69984d67d0a588469.tar.gz
added code covarage for functions convert(), nullif(), crc32(), is_used_lock(), char_lengtrh(), bit_xor()
added string length for more speed made code covarage for print() method of Item fixed printability of some items (SCRUM) (WL#1274) mysql-test/r/auto_increment.result: print() code coverage mysql-test/r/bench_count_distinct.result: print() code coverage mysql-test/r/case.result: print() code coverage mysql-test/r/cast.result: print() code coverage mysql-test/r/ctype_collate.result: print() code coverage mysql-test/r/ctype_many.result: convert with 3 arguments code covarage print() code coverage mysql-test/r/ctype_utf8.result: char_length code coverage mysql-test/r/date_formats.result: print() code coverage mysql-test/r/fulltext.result: print() code coverage mysql-test/r/func_compress.result: print() code coverage mysql-test/r/func_gconcat.result: print() code coverage mysql-test/r/func_group.result: bit_xor() code coverage print() code coverage mysql-test/r/func_if.result: nullif() code coverage print() code coverage mysql-test/r/func_in.result: print() code coverage mysql-test/r/func_math.result: print() code coverage mysql-test/r/func_op.result: print() code coverage mysql-test/r/func_regexp.result: print() code coverage mysql-test/r/func_set.result: print() code coverage mysql-test/r/func_str.result: crc32() code coverage print() code coverage mysql-test/r/func_system.result: print() code coverage mysql-test/r/func_test.result: print() code coverage mysql-test/r/func_time.result: print() code coverage mysql-test/r/group_by.result: print() code coverage mysql-test/r/having.result: print() code coverage mysql-test/r/insert_update.result: print() code coverage mysql-test/r/null.result: print() code coverage mysql-test/r/olap.result: print() code coverage mysql-test/r/query_cache.result: print() code coverage mysql-test/r/row.result: print() code coverage mysql-test/r/rpl000001.result: print() code coverage mysql-test/r/rpl_get_lock.result: print() code coverage mysql-test/r/rpl_master_pos_wait.result: print() code coverage mysql-test/r/select.result: print() code coverage mysql-test/r/subselect.result: print() code coverage mysql-test/r/type_blob.result: print() code coverage mysql-test/r/varbinary.result: print() code coverage mysql-test/r/variables.result: print() code coverage mysql-test/t/auto_increment.test: print() code coverage mysql-test/t/bench_count_distinct.test: print() code coverage mysql-test/t/case.test: print() code coverage mysql-test/t/cast.test: print() code coverage mysql-test/t/ctype_collate.test: print() code coverage mysql-test/t/ctype_many.test: convert with 3 arguments code covarage print() code coverage mysql-test/t/ctype_utf8.test: char_length code coverage mysql-test/t/date_formats.test: print() code coverage mysql-test/t/fulltext.test: print() code coverage mysql-test/t/func_compress.test: print() code coverage mysql-test/t/func_gconcat.test: print() code coverage mysql-test/t/func_group.test: bit_xor() code coverage print() code coverage mysql-test/t/func_if.test: nullif() code coverage print() code coverage mysql-test/t/func_in.test: print() code coverage mysql-test/t/func_math.test: print() code coverage mysql-test/t/func_op.test: print() code coverage mysql-test/t/func_regexp.test: print() code coverage mysql-test/t/func_set.test: print() code coverage mysql-test/t/func_str.test: crc32() code covarage print() code coverage mysql-test/t/func_system.test: print() code coverage mysql-test/t/func_test.test: print() code coverage mysql-test/t/func_time.test: print() code coverage mysql-test/t/group_by.test: print() code coverage mysql-test/t/having.test: print() code coverage mysql-test/t/insert_update.test: print() code coverage mysql-test/t/null.test: print() code coverage mysql-test/t/olap.test: print() code coverage mysql-test/t/query_cache.test: print() code coverage mysql-test/t/row.test: print() code coverage mysql-test/t/rpl000001.test: print() code coverage mysql-test/t/rpl_get_lock.test: print() code coverage mysql-test/t/rpl_master_pos_wait.test: print() code coverage mysql-test/t/select.test: print() code coverage mysql-test/t/type_blob.test: print() code coverage mysql-test/t/varbinary.test: print() code coverage mysql-test/t/variables.test: print() code coverage sql/item.cc: added string length for more speed layout fix fixed string printability sql/item.h: added string length for more speed sql/item_cmpfunc.cc: added string length for more speed sql/item_cmpfunc.h: fixed printability sql/item_create.cc: fixed printability sql/item_func.cc: fixed printability added string length for more speed sql/item_func.h: fixed printability sql/item_strfunc.cc: fixed printability added string length for more speed sql/item_strfunc.h: fixed printability sql/item_subselect.cc: added string length for more speed sql/item_sum.cc: added string length for more speed sql/item_timefunc.cc: added string length for more speed sql/item_timefunc.h: fixed printability sql/item_uniq.h: added string length for more speed sql/key.cc: added string length for more speed sql/sql_lex.cc: added string length for more speed sql/sql_parse.cc: after merge fix sql/sql_repl.cc: string changed with character for more speed sql/sql_select.cc: added string length for more speed sql/sql_show.cc: added string length for more speed
Diffstat (limited to 'sql/item_strfunc.cc')
-rw-r--r--sql/item_strfunc.cc50
1 files changed, 47 insertions, 3 deletions
diff --git a/sql/item_strfunc.cc b/sql/item_strfunc.cc
index 5afd52e3738..70f98783624 100644
--- a/sql/item_strfunc.cc
+++ b/sql/item_strfunc.cc
@@ -654,6 +654,17 @@ void Item_func_concat_ws::update_used_tables()
const_item_cache&=separator->const_item();
}
+void Item_func_concat_ws::print(String *str)
+{
+ str->append("concat_ws(", 10);
+ separator->print(str);
+ if (arg_count)
+ {
+ str->append(',');
+ print_args(str);
+ }
+ str->append(')');
+}
String *Item_func_reverse::val_str(String *str)
{
@@ -1613,6 +1624,19 @@ String *Item_func_format::val_str(String *str)
}
+void Item_func_format::print(String *str)
+{
+ str->append("format(", 7);
+ args[0]->print(str);
+ str->append(',');
+ // latin1 is good enough for numbers
+ char buffer[20];
+ String st(buffer, sizeof(buffer), &my_charset_latin1);
+ st.set((ulonglong)decimals, &my_charset_latin1);
+ str->append(st);
+ str->append(')');
+}
+
void Item_func_elt::fix_length_and_dec()
{
max_length=0;
@@ -1764,6 +1788,19 @@ String *Item_func_make_set::val_str(String *str)
}
+void Item_func_make_set::print(String *str)
+{
+ str->append("make_set(", 9);
+ item->print(str);
+ if (arg_count)
+ {
+ str->append(',');
+ print_args(str);
+ }
+ str->append(')');
+}
+
+
String *Item_func_char::val_str(String *str)
{
str->length(0);
@@ -2077,7 +2114,14 @@ void Item_func_conv_charset::fix_length_and_dec()
max_length = args[0]->max_length*conv_charset->mbmaxlen;
}
-
+void Item_func_conv_charset::print(String *str)
+{
+ str->append("convert(", 8);
+ args[0]->print(str);
+ str->append(" using ", 7);
+ str->append(conv_charset->csname);
+ str->append(')');
+}
String *Item_func_conv_charset3::val_str(String *str)
{
@@ -2273,9 +2317,9 @@ String *Item_func_hex::val_str(String *str)
void Item_func_binary::print(String *str)
{
- str->append("cast(");
+ str->append("cast(", 5);
args[0]->print(str);
- str->append("as binary)");
+ str->append(" as binary)", 11);
}