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
>
( объект-член только для демонстрации* ) |
Функции-члены
|
(constructor)
|
создает
range-default-formatter
(public member function) |
|
parse
|
парсит спецификатор формата как указано в
range-format-spec
(public member function) |
|
format
|
записывает форматированный вывод диапазона как указано в
range-format-spec
(public member function) |
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 ) - > ParseContext :: iterator ; |
||
Эквивалентно:
return
underlying_
.
format
(
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 - > FormatContext :: iterator ; |
||
Эквивалентно:
return
underlying_
.
format
(
r, ctx
)
;
.
Возвращает итератор за концом выходного диапазона.
Смотрите также
|
(C++20)
|
определяет правила форматирования для заданного типа
(шаблон класса) |
|
(C++23)
|
шаблон класса, помогающий реализовывать
std::formatter
специализации для типов диапазонов
(шаблон класса) |