std::range-default-formatter<std::range_format::map>
Определено в заголовке <format> | ||
|---|---|---|
template< ranges::input_range R, class CharT > struct range-default-formatter<range_format::map, R, CharT>; | (с C++23) (только для иллюстрации*) |
Шаблон класса range-default-formatter для типов диапазонов специализирован для форматирования диапазона как отображения ключей к значениям, если std::format_kind<R> является std::range_format::map.
Типы членов
| Тип члена | Определение |
|---|---|
maybe-const-map (приватный) | /*fmt-maybe-const*/<R, CharT> (только для иллюстрации - тип члена*) |
element-type (приватный) | std::remove_cvref_t<ranges::range_reference_t<maybe-const-map>> |
Члены-объекты
| Имя члена | Определение |
|---|---|
underlying_ (приватный) | базовый форматировщик типа std::range_formatter<element-type, CharT>(только для иллюстрации - член-объект*) |
Члены-функции
| (конструктор) | строит range-default-formatter (публичная функция-член) |
| parse | анализирует спецификатор формата, как указано в range-format-spec (публичная функция-член) |
| format | записывает отформатированный вывод диапазона, как указано в range-format-spec (публичная функция-член) |
std::range-default-formatter<std::range_format::map>::range-default-formatter
constexpr range-default-formatter(); |
Эквивалентно: underlying_.set_brackets(STATICALLY_WIDEN<CharT>("{"), STATICALLY_WIDEN<CharT>("}"));underlying_.underlying().set_brackets({}, {});underlying_.underlying().set_separator(STATICALLY-WIDEN<charT>(": "));
где STATICALLY_WIDEN<CharT>("...") равно "..." если CharT равно char, и L"..." если CharT равно wchar_t.
Программа является некорректной, если:
-
element-typeявляется специализациейstd::pair, или -
element-typeявляется специализациейstd::tupleиstd::tuple_size_v<element-type>равно2.
std::range-default-formatter<std::range_format::map>::parse
template< class ParseContext > constexpr auto parse( ParseContext& ctx ) -> typename ParseContext::iterator; |
Эквивалентно return underlying_.parse(ctx);.
Возвращает итератор, указывающий на конец range-format-spec.
std::range-default-formatter<std::range_format::map>::format
template< class FormatContext >
auto format( maybe-const-map& r, FormatContext& ctx ) const
-> typename FormatContext::iterator;
|
Эквивалентно return underlying_.format(r, ctx);.
Возвращает итератор, указывающий на конец диапазона вывода.
См. также
|
(C++20) | определяет правила форматирования для данного типа (шаблон класса) |
|
(C++23) | шаблон класса, который помогает при реализации специализаций std::formatter для типов диапазонов (шаблон класса) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/utility/format/ranges_formatter/range_default_formatter_map