aboutsummaryrefslogtreecommitdiffstats
path: root/util/string
diff options
context:
space:
mode:
authorthegeorg <thegeorg@yandex-team.ru>2022-03-03 13:53:18 +0300
committerthegeorg <thegeorg@yandex-team.ru>2022-03-03 13:53:18 +0300
commit75b363ad9be455d895aee7f72f45be2d950d3518 (patch)
treeceef86b4a2c864b1a962dab41a8cd8b3f3ab0bc3 /util/string
parent473e96c44443a8567db5ba7ee48110663fcb21c7 (diff)
downloadydb-75b363ad9be455d895aee7f72f45be2d950d3518.tar.gz
Support std::filesystem::path in Arcadia streams
ref:11bbdd83544b9579747dd12d51395840bda86faf
Diffstat (limited to 'util/string')
-rw-r--r--util/string/cast.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/util/string/cast.cpp b/util/string/cast.cpp
index 939a3e7a92..4cd940f57b 100644
--- a/util/string/cast.cpp
+++ b/util/string/cast.cpp
@@ -4,9 +4,10 @@
#define __LONG_LONG_SUPPORTED
#endif
+#include <cmath>
#include <cstdio>
+#include <filesystem>
#include <string>
-#include <cmath>
#include <util/string/type.h>
#include <util/string/cast.h>
@@ -531,6 +532,14 @@ std::string FromStringImpl<std::string>(const char* data, size_t len) {
return std::string(data, len);
}
+#ifndef USE_STL_SYSTEM
+// FIXME thegeorg@: remove #ifndef upon raising minimal macOS version to 10.15 in https://st.yandex-team.ru/DTCC-836
+template <>
+std::filesystem::path FromStringImpl<std::filesystem::path>(const char* data, size_t len) {
+ return std::filesystem::path(std::string(data, len));
+}
+#endif
+
template <>
TUtf16String FromStringImpl<TUtf16String>(const wchar16* data, size_t len) {
return TUtf16String(data, len);