diff --git a/include/rexy/string_base.tpp b/include/rexy/string_base.tpp index 4ebae7b..a19dbed 100644 --- a/include/rexy/string_base.tpp +++ b/include/rexy/string_base.tpp @@ -19,10 +19,10 @@ #ifndef REXY_STRING_BASE_TPP #define REXY_STRING_BASE_TPP -#include //forward, move, swap, etc -#include //strlen, strcpy +#include //move, etc +#include //is_nothrow_invokable, is_nothrow_constructible -#include "utility.hpp" //max, memcpy +#include "utility.hpp" //max, memcpy, strlen #include "detail/string_appender.hpp" #include "algorithm.hpp" #include "compat/to_address.hpp" @@ -42,7 +42,7 @@ namespace rexy{ } template constexpr auto string_base::search(const_pointer c)const -> const_iterator{ - const auto len = strlen(c); + const auto len = rexy::strlen(c); return two_way_search(cbegin(), cend(), c, c + len); } template @@ -51,7 +51,7 @@ namespace rexy{ } template constexpr auto string_base::search(const_pointer c) -> iterator{ - const auto len = strlen(c); + const auto len = rexy::strlen(c); return two_way_search(begin(), end(), c, c + len); } template @@ -62,7 +62,7 @@ namespace rexy{ template template constexpr auto string_base::search(const_pointer c, const Searcher& searcher)const -> const_iterator{ - const auto len = strlen(c); + const auto len = rexy::strlen(c); return searcher(cbegin(), cend(), c, c + len); } template @@ -73,7 +73,7 @@ namespace rexy{ template template constexpr auto string_base::search(const_pointer c, const Searcher& searcher) -> iterator{ - const auto len = strlen(c); + const auto len = rexy::strlen(c); return searcher(begin(), end(), c, c + len); } @@ -106,7 +106,7 @@ namespace rexy{ constexpr basic_string::basic_string(void)noexcept{} template constexpr basic_string::basic_string(rexy::steal data)noexcept: - basic_string(data.value(), data.value() ? strlen(data.value()) : 0){} + basic_string(data.value(), data.value() ? rexy::strlen(data.value()) : 0){} template constexpr basic_string::basic_string(rexy::steal data, size_type len)noexcept: string_base(data.value(), len, len){} @@ -126,7 +126,7 @@ namespace rexy{ template REXY_CPP20_CONSTEXPR basic_string::basic_string(const_pointer data) noexcept(is_nothrow_allocator_v): - basic_string(data, data ? strlen(data) : 0){} + basic_string(data, data ? rexy::strlen(data) : 0){} template REXY_CPP20_CONSTEXPR basic_string::basic_string(size_type cap) noexcept(is_nothrow_allocator_v): @@ -222,7 +222,7 @@ namespace rexy{ REXY_CPP20_CONSTEXPR basic_string& basic_string::operator=(const_pointer c) noexcept(is_nothrow_allocator_v) { - return _copy_string(c, strlen(c)); + return _copy_string(c, rexy::strlen(c)); } //Replace managed pointer. Frees existing value @@ -230,7 +230,7 @@ namespace rexy{ REXY_CPP20_CONSTEXPR void basic_string::reset(pointer val) noexcept(is_nothrow_allocator_v) { - reset(val, val ? strlen(val) : 0); + reset(val, val ? rexy::strlen(val) : 0); } template REXY_CPP20_CONSTEXPR void basic_string::reset(pointer val, size_type len) @@ -286,7 +286,7 @@ namespace rexy{ noexcept(is_nothrow_allocator_v) { if(data) - append(data, strlen(data)); + append(data, rexy::strlen(data)); } template template