Spec-Zone.ru › C++

std::range-default-formatter<std::range_format::set>

Определено в заголовке <format>
template< ranges::input_range R, class CharT >
struct /*range-default-formatter*/<range_format::set, R, CharT>;
(начиная с C++23)
(только для демонстрации*)

Шаблон класса /*range-default-formatter*/ для типов диапазонов (range) специализирован для форматирования диапазона как множества ключей, если std::format_kind<R> является std::range_format::set.

Типы-члены

Член Определение
maybe-const-set (закрытый) fmt-maybe-const<R,CharT>
(тип-член только для демонстрации*)

Члены-данные

Член Определение
underlying_ (закрытый) базовый форматтер типа:

std::range_formatter<std::remove_cvref_t<
ranges::range_reference_t<maybe-const-set>>,CharT>
(объект-член только для демонстрации*)

Функции-члены

(конструктор)
конструирует range-default-formatter
(открытая функция-член)
parse
разбирает спецификатор формата в соответствии с range-format-spec
(открытая функция-член)
format
записывает форматированный вывод диапазона в соответствии с range-format-spec
(открытая функция-член)

std::range-default-formatter<std::range_format::set>::range-default-formatter

constexpr /*range-default-formatter*/();

Эквивалентно вызову underlying_.set_brackets(STATICALLY_WIDEN<CharT>("{"), STATICALLY_WIDEN<CharT>("}"))

где STATICALLY_WIDEN<CharT>("...") равно "...", если CharT является char, и L"...", если CharT является wchar_t.

std::range-default-formatter<std::range_format::set>::parse

template< class ParseContext >
constexpr auto parse( ParseContext& ctx ) -> ParseContext::iterator;

Эквивалентно return underlying_.parse(ctx);.

Возвращает итератор за конец range-format-spec.

std::range-default-formatter<std::range_format::set>::format

template< class FormatContext >
auto format( maybe-const-set& r, FormatContext& ctx ) const -> FormatContext::iterator;

Эквивалентно return underlying_.format(r, ctx);.

Возвращает итератор за конец выходного диапазона.

Смотрите также

formatter
(C++20)
определяет правила форматирования для заданного типа
(шаблон класса)
range_formatter
(C++23)
шаблон класса, помогающий реализовывать специализации std::formatter для типов диапазонов
(шаблон класса)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/utility/format/ranges_formatter/range_default_formatter_set

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API