diff --git a/src/ox/std/string.hpp b/src/ox/std/string.hpp index 3357f1946..699a39a16 100644 --- a/src/ox/std/string.hpp +++ b/src/ox/std/string.hpp @@ -126,6 +126,8 @@ class BasicString { constexpr BasicString &operator+=(uint64_t i) noexcept; + constexpr BasicString &operator+=(std::size_t i) noexcept; + constexpr BasicString &operator+=(const BasicString &src) noexcept; constexpr BasicString operator+(const char *str) const noexcept; @@ -361,6 +363,13 @@ constexpr BasicString &BasicString::operator+= return this->operator+=(str); } +template +constexpr BasicString &BasicString::operator+=(std::size_t i) noexcept { + char str[65] = {}; + ox_itoa(i, str); + return this->operator+=(str); +} + template constexpr BasicString &BasicString::operator+=(const BasicString &src) noexcept { oxIgnoreError(append(src.c_str(), src.len()));