NFC: CI failing fixes

This commit is contained in:
Soumik15630m 2026-01-22 13:11:26 +05:30
parent d149787ade
commit 2f9bb5287f

View File

@ -803,38 +803,36 @@ struct not_range {
static_assert(!fmt::is_formattable<not_range>{}, ""); static_assert(!fmt::is_formattable<not_range>{}, "");
namespace test_detail { namespace test_detail {
template <typename T> struct partial_opt_out_wrapper { template <typename T>
using container_type = std::vector<T>; struct partial_opt_out_wrapper {
std::vector<T> c = {1, 2, 3}; using container_type = std::vector<T>;
std::vector<T> c = {1, 2, 3};
typename std::vector<T>::const_iterator begin() const { return c.begin(); } typename std::vector<T>::const_iterator begin() const { return c.begin(); }
typename std::vector<T>::const_iterator end() const { return c.end(); } typename std::vector<T>::const_iterator end() const { return c.end(); }
}; };
} // namespace test_detail } // namespace test_detail
namespace fmt { namespace fmt {
template <typename T> template <typename T>
struct is_range<test_detail::partial_opt_out_wrapper<T>, char> struct is_range<test_detail::partial_opt_out_wrapper<T>, char> : std::false_type {};
: std::false_type {};
template <typename T> template <typename T>
struct is_container_adaptor<test_detail::partial_opt_out_wrapper<T>> struct is_container_adaptor<test_detail::partial_opt_out_wrapper<T>> : std::false_type {};
: std::false_type {};
template <typename T>
struct formatter<test_detail::partial_opt_out_wrapper<T>> {
constexpr fmt::format_parse_context::iterator parse(fmt::format_parse_context& ctx) const {
return ctx.begin();
}
fmt::format_context::iterator format(const test_detail::partial_opt_out_wrapper<T>& val,
fmt::format_context& ctx) const {
return fmt::format_to(ctx.out(), "PartialOptOut(size={})", val.c.size());
}
};
} // namespace fmt } // namespace fmt
template <typename T>
struct fmt::formatter<test_detail::partial_opt_out_wrapper<T>> {
fmt::format_parse_context::iterator parse(fmt::format_parse_context& ctx)
{
return ctx.begin();
}
fmt::format_context::iterator format(const test_detail::partial_opt_out_wrapper<T>& val,
fmt::format_context& ctx) const {
return fmt::format_to(ctx.out(), "PartialOptOut(size={})", val.c.size());
}
};
TEST(ranges_test, container_adaptor_partial_specialization) { TEST(ranges_test, container_adaptor_partial_specialization) {
test_detail::partial_opt_out_wrapper<int> obj; test_detail::partial_opt_out_wrapper<int> obj;
EXPECT_EQ(fmt::format("{}", obj), "PartialOptOut(size=3)"); EXPECT_EQ(fmt::format("{}", obj), "PartialOptOut(size=3)");