From 5c5c496b605886b286d1b99e0f9e28ec02117ad5 Mon Sep 17 00:00:00 2001 From: Yuqian Yang Date: Fri, 17 Oct 2025 14:06:48 +0800 Subject: Use std::from_chars. --- include/cru/base/String.h | 47 ----------------------------------------------- 1 file changed, 47 deletions(-) (limited to 'include/cru/base/String.h') diff --git a/include/cru/base/String.h b/include/cru/base/String.h index 7d462a6e..313a3ce2 100644 --- a/include/cru/base/String.h +++ b/include/cru/base/String.h @@ -3,7 +3,6 @@ #include "Buffer.h" #include "Range.h" -#include "StringToNumberConverter.h" #include "StringUtil.h" #include @@ -11,7 +10,6 @@ #include #include #include -#include #include namespace cru { @@ -215,22 +213,6 @@ class CRU_BASE_API String { Range RangeFromCodeUnitToCodePoint(Range code_unit_range) const; Range RangeFromCodePointToCodeUnit(Range code_point_range) const; - template - std::enable_if_t, TInteger> ParseToInteger( - Index* processed_characters_count, unsigned flags, int base) const; - - int ParseToInt(Index* processed_characters_count = nullptr, - StringToNumberFlag flags = {}, int base = 0) const; - long long ParseToLongLong(Index* processed_characters_count = nullptr, - StringToNumberFlag flags = {}, int base = 0) const; - - float ParseToFloat(Index* processed_characters_count = nullptr, - StringToNumberFlag flags = {}) const; - double ParseToDouble(Index* processed_characters_count = nullptr, - StringToNumberFlag flags = {}) const; - std::vector ParseToFloatList(value_type separator = u' ') const; - std::vector ParseToDoubleList(value_type separator = u' ') const; - #ifdef CRU_PLATFORM_WINDOWS const wchar_t* WinCStr() const { return reinterpret_cast(c_str()); @@ -351,29 +333,6 @@ class CRU_BASE_API StringView { Range RangeFromCodeUnitToCodePoint(Range code_unit_range) const; Range RangeFromCodePointToCodeUnit(Range code_point_range) const; - template - std::enable_if_t, TInteger> ParseToInteger( - Index* processed_characters_count, StringToNumberFlag flags, - int base) const { - auto utf8_string = ToUtf8(); - auto result = StringToIntegerConverter(flags, base) - .Parse(utf8_string.data(), utf8_string.size(), - processed_characters_count); - return result.negate ? -result.value : result.value; - } - - int ParseToInt(Index* processed_characters_count = nullptr, - StringToNumberFlag flags = {}, int base = 0) const; - long long ParseToLongLong(Index* processed_characters_count = nullptr, - StringToNumberFlag flags = {}, int base = 0) const; - - float ParseToFloat(Index* processed_characters_count = nullptr, - StringToNumberFlag flags = {}) const; - double ParseToDouble(Index* processed_characters_count = nullptr, - StringToNumberFlag flags = {}) const; - std::vector ParseToFloatList(value_type separator = u' ') const; - std::vector ParseToDoubleList(value_type separator = u' ') const; - std::string ToUtf8() const; Buffer ToUtf8Buffer(bool end_zero = true) const; @@ -464,12 +423,6 @@ inline Index Utf16NextWord(StringView str, Index position, String CRU_BASE_API ToLower(StringView s); String CRU_BASE_API ToUpper(StringView s); -template -std::enable_if_t, TInteger> String::ParseToInteger( - Index* processed_characters_count, unsigned flags, int base) const { - View().ParseToInteger(processed_characters_count, flags, base); -} - } // namespace cru template <> -- cgit v1.2.3