diff options
| author | Maxime Coste <frrrwww@gmail.com> | 2015-03-31 13:53:40 +0100 |
|---|---|---|
| committer | Maxime Coste <frrrwww@gmail.com> | 2015-03-31 13:53:40 +0100 |
| commit | 758bfe728441bda37a863b6089826e461ce1800c (patch) | |
| tree | 5a8609a2825fb7366e288928252da0fe404f6eb0 /src/string.cc | |
| parent | 519254dfdc9fe86f4563eb7f1cb130baba4dd9a9 (diff) | |
number to string conversion avoids memory allocations
Diffstat (limited to 'src/string.cc')
| -rw-r--r-- | src/string.cc | 24 |
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) |
