summaryrefslogtreecommitdiff
path: root/src/string.cc
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2015-03-31 13:53:40 +0100
committerMaxime Coste <frrrwww@gmail.com>2015-03-31 13:53:40 +0100
commit758bfe728441bda37a863b6089826e461ce1800c (patch)
tree5a8609a2825fb7366e288928252da0fe404f6eb0 /src/string.cc
parent519254dfdc9fe86f4563eb7f1cb130baba4dd9a9 (diff)
number to string conversion avoids memory allocations
Diffstat (limited to 'src/string.cc')
-rw-r--r--src/string.cc24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/string.cc b/src/string.cc
index a9840d45..02e79f3f 100644
--- a/src/string.cc
+++ b/src/string.cc
@@ -115,25 +115,25 @@ int str_to_int(StringView str)
return negative ? -(int)res : (int)res;
}
-String to_string(int val)
+InplaceString<16> to_string(int val)
{
- char buf[16];
- sprintf(buf, "%i", val);
- return buf;
+ InplaceString<16> res;
+ res.m_length = sprintf(res.m_data, "%i", val);
+ return res;
}
-String to_string(size_t val)
+InplaceString<24> to_string(size_t val)
{
- char buf[16];
- sprintf(buf, "%zu", val);
- return buf;
+ InplaceString<24> res;
+ res.m_length = sprintf(res.m_data, "%zu", val);
+ return res;
}
-String to_string(float val)
+InplaceString<24> to_string(float val)
{
- char buf[32];
- sprintf(buf, "%f", val);
- return buf;
+ InplaceString<24> res;
+ res.m_length = sprintf(res.m_data, "%f", val);
+ return res;
}
bool subsequence_match(StringView str, StringView subseq)