[format.range.fmtset] (original) (raw)

28 Text processing library [text]

28.5 Formatting [format]

28.5.7 Formatting of ranges [format.range]

28.5.7.5 Specialization of range-default-formatter for sets [format.range.fmtset]

namespace std { template<ranges::input_range R, class charT> struct range-default-formatter<range_format::set, R, charT> { private: using maybe-const-set = fmt-maybe-const<R, charT>; range_formatter<remove_cvref_t<ranges::range_reference_t<_maybe-const-set_>>, charT> underlying_; public: constexpr range-default-formatter();template<class ParseContext> constexpr typename ParseContext::iterator parse(ParseContext& ctx);template<class FormatContext> typename FormatContext::iterator format(maybe-const-set& r, FormatContext& ctx) const;};}

constexpr _range-default-formatter_();

Effects: Equivalent to:underlying_.set_brackets(STATICALLY-WIDEN<charT>("{"), STATICALLY-WIDEN<charT>("}"));

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-set_& r, FormatContext& ctx) const;

Effects: Equivalent to: return underlying_.format(r, ctx);