table of contents
std::range-default-formatter,(3) | C++ Standard Libary | std::range-default-formatter,(3) |
NAME¶
std::range-default-formatter, - std::range-default-formatter,
Synopsis¶
Defined in header <format>
template< std::range_format K, ranges::input_range R, class
CharT >
(since C++23)
requires (K == std::range_format::string || K == (exposition only*)
std::range_format::debug_string)
struct range-default-formatter<K, R, CharT>;
The class template range-default-formatter for range types is specialized for
formatting range as a string or an escaped string if
std::format_kind<R> is either
std::range_format::string or std::range_format::debug_string.
Member objects¶
Member name Definition
the underlying formatter of type
underlying_ (private) std::formatter<std::basic_string<CharT>,
CharT>
(exposition-only member object*)
Member functions¶
constructor constructs a range-default-formatter
(implicitly declared) (public member function)
parse parses the format specifier as specified by std-format-spec
(public member function)
format writes the formatted output as specified by std-format-spec
(public member function)
std::range-default-formatter<std::range_format::string>::parse std::range-default-formatter<std::range_format::debug_string>::parse
template< class ParseContext >
constexpr auto parse( ParseContext& ctx ) ->
ParseContext::iterator;
Equivalent to:
auto i = underlying_.parse(ctx);
if constexpr (K == std::range_format::debug_string)
underlying_.set_debug_format();
return i;
Returns an iterator past the end of the std-format-spec.
std::range-default-formatter<std::range_format::string>::format std::range-default-formatter<std::range_format::debug_string>::format
template< class FormatContext >
auto format( /* see below */& r, FormatContext& ctx ) const ->
FormatContext::iterator;
If ranges::input_range<const R> is true, the type of r is const R&.
Otherwise, the
type is R&.
Let s be a std::basic_string<CharT> as if by constructing s with
std::basic_string<CharT>(std::from_range, r) such that ranges::equal(s,
r) is true.
Equivalent to return underlying_.format(s, ctx);.
Returns an iterator past the end of the output range.
See also¶
formatter defines formatting rules for a given type
(C++20) (class template)
range_formatter class template that helps implementing std::formatter
(C++23) specializations for range types
(class template)
2024.06.10 | http://cppreference.com |