Improve std::filesystem::path formatter.

Signed-off-by: Vladislav Shchapov <vladislav@shchapov.ru>
This commit is contained in:
Vladislav Shchapov 2022-05-18 18:04:47 +05:00 committed by Victor Zverovich
parent 4f9311e689
commit 03b1b2838e
2 changed files with 4 additions and 9 deletions

View File

@ -19,14 +19,9 @@
#ifdef __cpp_lib_filesystem
# include <filesystem>
template <>
struct fmt::formatter<std::filesystem::path> : formatter<string_view> {
template <typename FormatContext>
auto format(const std::filesystem::path& p, FormatContext& ctx) const ->
typename FormatContext::iterator {
return formatter<string_view>::format(p.string(), ctx);
}
};
FMT_BEGIN_NAMESPACE
template <> struct formatter<std::filesystem::path> : ostream_formatter {};
FMT_END_NAMESPACE
#endif
FMT_BEGIN_NAMESPACE

View File

@ -11,7 +11,7 @@
TEST(std_test, path) {
#ifdef __cpp_lib_filesystem
EXPECT_EQ(fmt::format("{:8}", std::filesystem::path("foo")), "foo ");
EXPECT_EQ(fmt::format("{:8}", std::filesystem::path("foo")), "\"foo\" ");
#endif
}