aboutsummaryrefslogtreecommitdiff
path: root/src/platform
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-10-17 14:06:48 +0800
committerYuqian Yang <crupest@crupest.life>2025-10-17 14:06:48 +0800
commit5c5c496b605886b286d1b99e0f9e28ec02117ad5 (patch)
treec22b07e81ba179d7cc8790656abddbcc56b5d704 /src/platform
parent32aa6f116acc6e3e20a1ec76cef45b29f7005ad7 (diff)
downloadcru-5c5c496b605886b286d1b99e0f9e28ec02117ad5.tar.gz
cru-5c5c496b605886b286d1b99e0f9e28ec02117ad5.tar.bz2
cru-5c5c496b605886b286d1b99e0f9e28ec02117ad5.zip
Use std::from_chars.
Diffstat (limited to 'src/platform')
-rw-r--r--src/platform/graphics/Geometry.cpp14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/platform/graphics/Geometry.cpp b/src/platform/graphics/Geometry.cpp
index e88577ce..4189ef72 100644
--- a/src/platform/graphics/Geometry.cpp
+++ b/src/platform/graphics/Geometry.cpp
@@ -1,7 +1,7 @@
#include "cru/platform/graphics/Geometry.h"
#include "cru/base/Exception.h"
-#include "cru/base/String.h"
+#include "cru/base/StringUtil.h"
#include "cru/platform/Exception.h"
#include "cru/platform/graphics/Factory.h"
@@ -235,17 +235,15 @@ void IGeometryBuilder::ParseAndApplySvgPathData(std::string_view path_d) {
++position;
}
- Index processed_count = 0;
- auto result = String::FromUtf8(path_d.substr(position))
- .ParseToFloat(&processed_count,
- StringToNumberFlags::kAllowTrailingJunk);
+ auto result = cru::string::ParseToNumber<float>(
+ path_d.substr(position), cru::string::ParseToNumberFlags::AllowTrailingJunk);
- if (std::isnan(result)) throw Exception("Invalid svg path data number.");
+ if (!result.valid) throw Exception("Invalid svg path data number.");
- position += processed_count;
+ position += result.processed_char_count;
- return result;
+ return result.value;
};
auto read_point = [&] {