diff options
author | HampusM <hampus@hampusmat.com> | 2022-02-15 12:33:52 +0100 |
---|---|---|
committer | HampusM <hampus@hampusmat.com> | 2022-02-15 12:33:52 +0100 |
commit | bcdce9633dc351d3bc7f347a165348b8fab87cd9 (patch) | |
tree | 88c2f5d8f0c5fac2bca28e4b543e5209f3bc98fb /src/std/conversion.cpp | |
parent | 917adc6a2b6b166e37fc3d4f94b41488f0c245a5 (diff) |
refactor: reorganize files & improve classes
Diffstat (limited to 'src/std/conversion.cpp')
-rw-r--r-- | src/std/conversion.cpp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/std/conversion.cpp b/src/std/conversion.cpp new file mode 100644 index 0000000..a2a624d --- /dev/null +++ b/src/std/conversion.cpp @@ -0,0 +1,32 @@ +#include "conversion.hpp" + +UniquePtr<SmartString> doubleToStr(double num, unsigned int width, unsigned int precision) +{ + auto str = make_unique<SmartString>(width + precision); + + dtostrf(num, static_cast<signed char>(width), precision, str->c_str); + + return str; +} + +UniquePtr<SmartString> intToStr(int num) +{ + auto width = static_cast<unsigned int>(log10(num)); + + auto str = make_unique<SmartString>(width + 1U); + + dtostrf(num, static_cast<signed char>(width + 1U), 0, str->c_str); + + return str; +} + +UniquePtr<SmartString> uintToStr(unsigned int num) +{ + auto width = static_cast<unsigned int>(log10(num)); + + auto str = make_unique<SmartString>(width + 1U); + + dtostrf(num, static_cast<signed char>(width + 1U), 0, str->c_str); + + return str; +} |