From 06a34dfea7528a678e2fa4fed383b14561a52f46 Mon Sep 17 00:00:00 2001 From: Yancey <1709185482@qq.com> Date: Wed, 25 Feb 2026 06:12:32 +0800 Subject: [PATCH] apply clang-format --- include/fmt/format.h | 4 ++-- include/fmt/xchar.h | 27 ++++++++++++++++----------- test/xchar-test.cc | 7 +++---- 3 files changed, 21 insertions(+), 17 deletions(-) diff --git a/include/fmt/format.h b/include/fmt/format.h index dac5fb0f..0b960259 100644 --- a/include/fmt/format.h +++ b/include/fmt/format.h @@ -1097,8 +1097,8 @@ inline auto digits2_i(size_t value) noexcept -> const char* { } template constexpr auto getsign(sign s) -> Char { - return static_cast(static_cast(((' ' << 24) | ('+' << 16) | ('-' << 8)) >> - (static_cast(s) * 8))); + return static_cast(static_cast( + ((' ' << 24) | ('+' << 16) | ('-' << 8)) >> (static_cast(s) * 8))); } template FMT_CONSTEXPR auto count_digits_fallback(T n) -> int { diff --git a/include/fmt/xchar.h b/include/fmt/xchar.h index dfe0efee..cbe0f272 100644 --- a/include/fmt/xchar.h +++ b/include/fmt/xchar.h @@ -142,27 +142,32 @@ auto arg(const wchar_t* name, const T& arg) -> detail::named_arg { } template -auto join(It begin, Sentinel end, S &&sep) - -> join_view()))::value_type> { +auto join(It begin, Sentinel end, S&& sep) -> join_view< + It, Sentinel, + typename decltype(detail::to_string_view(std::declval()))::value_type> { return {begin, end, detail::to_string_view(sep)}; } -template ::value)> -auto join(Range &&range, S &&sep) - -> join_view()))::value_type> { +template ::value)> +auto join(Range&& range, S&& sep) -> join_view< + decltype(std::begin(range)), decltype(std::end(range)), + typename decltype(detail::to_string_view(std::declval()))::value_type> { return {std::begin(range), std::end(range), detail::to_string_view(sep)}; } template -auto join(std::initializer_list list, S &&sep) - -> join_view()))::value_type> { +auto join(std::initializer_list list, S&& sep) -> join_view< + const T*, const T*, + typename decltype(detail::to_string_view(std::declval()))::value_type> { return {std::begin(list), std::end(list), detail::to_string_view(sep)}; } -template ::value)> -auto join(const Tuple &tuple, S &&sep) - -> tuple_join_view()))::value_type> { +template ::value)> +auto join(const Tuple& tuple, S&& sep) + -> tuple_join_view()))::value_type> { return {tuple, detail::to_string_view(sep)}; } diff --git a/test/xchar-test.cc b/test/xchar-test.cc index 29c17d83..8d02ff86 100644 --- a/test/xchar-test.cc +++ b/test/xchar-test.cc @@ -174,10 +174,9 @@ TEST(xchar_test, join) { EXPECT_EQ(fmt::format(u"({})", fmt::join(vector, u", ")), u"(1, 2, 3)"); EXPECT_EQ(fmt::format(U"({})", fmt::join(vector, U", ")), U"(1, 2, 3)"); EXPECT_EQ(fmt::format(L"({})", fmt::join(vector, L", ")), L"(1, 2, 3)"); - auto initializer_list = {1, 2, 3}; - EXPECT_EQ(fmt::format(u"({})", fmt::join(initializer_list, u", ")), u"(1, 2, 3)"); - EXPECT_EQ(fmt::format(U"({})", fmt::join(initializer_list, U", ")), U"(1, 2, 3)"); - EXPECT_EQ(fmt::format(L"({})", fmt::join(initializer_list, L", ")), L"(1, 2, 3)"); + EXPECT_EQ(fmt::format(u"({})", fmt::join({1, 2, 3}, u", ")), u"(1, 2, 3)"); + EXPECT_EQ(fmt::format(U"({})", fmt::join({1, 2, 3}, U", ")), U"(1, 2, 3)"); + EXPECT_EQ(fmt::format(L"({})", fmt::join({1, 2, 3}, L", ")), L"(1, 2, 3)"); auto tuple_char16 = std::tuple(u'a', 1, 2.0f); EXPECT_EQ(fmt::format(u"({})", fmt::join(tuple_char16, u", ")), u"(a, 1, 2)"); auto tuple_char32 = std::tuple(U'a', 1, 2.0f);