Namespaces
Variants

std:: range-default-formatter <std::range_format::string> , std:: range-default-formatter <std::range_format::debug_string>

From cppreference.net
std::formatter< range >
range-default-formatter specializations
range-default-formatter <std::range_format::string>
range-default-formatter <std::range_format::debug_string>
ヘッダーで定義 <format>
template < std:: range_format K, ranges:: input_range R, class CharT >

requires ( K == std :: range_format :: string || K == std :: range_format :: debug_string )

struct /*range-default-formatter*/ < K, R, CharT > ;
(C++23以降)
( 説明専用* )

範囲型に対するクラステンプレート /*range-default-formatter*/ は、 std:: format_kind < R > std :: range_format :: string または std :: range_format :: debug_string の場合に、範囲を文字列またはエスケープされた文字列としてフォーマットするために特殊化されます。

目次

データメンバ

メンバー 定義
underlying_ (非公開) std:: formatter < std:: basic_string < CharT > , CharT >
の基盤フォーマッタ 説明専用メンバーオブジェクト*

メンバー関数

(コンストラクタ)
(暗黙的に宣言)
range-default-formatter を構築する
(公開メンバ関数)
parse
std-format-spec で指定されたフォーマット指定子を解析する
(公開メンバ関数)
format
std-format-spec で指定されたフォーマット済み出力を書き込む
(公開メンバ関数)

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 ;

以下と等価:

auto i = underlying_. parse ( ctx ) ;
if constexpr ( K == std :: range_format :: debug_string )
underlying_. set_debug_format ( ) ;
return i ;

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 ;

ranges:: input_range < const R > true の場合、 r の型は const R & となる。それ以外の場合、型は R & である。

s std:: basic_string < CharT > として、 s std:: basic_string < CharT > ( std:: from_range , r ) で構築したかのようにし、 ranges:: equal ( s, r ) true となるようにする。

return underlying_. format ( s, ctx ) ; と等価。

出力範囲の終端を過ぎたイテレータを返す。

関連項目

(C++20)
指定された型のフォーマット規則を定義する
(クラステンプレート)
範囲型に対する std::formatter 特殊化の実装を支援するクラステンプレート
(クラステンプレート)