2.0 KiB
[container.adaptors.format]
23 Containers library [containers]
23.6 Container adaptors [container.adaptors]
23.6.13 Container adaptors formatting [container.adaptors.format]
For each ofqueue,priority_queue, andstack, the library provides the following formatter specialization where adaptor-type is the name of the template:
namespace std {template<class charT, class T, formattable Container, class... U>struct formatter<adaptor-type<T, Container, U...>, charT> {private:using maybe-const-container = // exposition only**fmt-maybe-const<Container, charT>; using maybe-const-adaptor = // exposition only**maybe-const<is_const_v<maybe-const-container>, // see [ranges.syn]adaptor-type<T, Container, U...>>; formatter<ranges::ref_view<maybe-const-container>, charT> underlying_; // exposition onlypublic:templateconstexpr typename ParseContext::iterator parse(ParseContext& ctx); templatetypename FormatContext::iterator format(maybe-const-adaptor& r, FormatContext& ctx) const; };}
template<class ParseContext> constexpr typename ParseContext::iterator parse(ParseContext& ctx);
Effects: Equivalent to: return underlying_.parse(ctx);
template<class FormatContext> typename FormatContext::iterator format(maybe-const-adaptor& r, FormatContext& ctx) const;
Effects: Equivalent to: return underlying_.format(r.c, ctx);