using maybe-const-adaptor =
fmt-maybe-const<adaptor-type<T, Container, U...>, charT>; // 説明専用
template <class FormatContext>
typename FormatContext::iterator
format(T& x, FormatContext& ctx) const; // (1) C++20
template<class FormatContext>
typename FormatContext::iterator
format(maybe-const-adaptor& r, FormatContext& ctx) const; // (2) C++23
概要
受け取った型Tのオブジェクトを書式化する。
- (1) : デフォルトの
formatterおよび、std::pairとstd::tupleに対するformatterの特殊化でのシグニチャ - (2) : コンテナアダプタに対する特殊化でのシグニチャ
効果
parse()メンバ関数で解析した書式文字列の指定に基づいて、xの値を文字列に変換するstd::pairとstd::tupleに対するformatterの特殊化の場合、以下をctx.out()に出力する:- 開きカッコを出力する
- 範囲
[0, タプルの要素数)の各要素Iについて、I != 0であれば区切り文字を出力する- タプルの
I番目の要素を、その型のformatterで出力する
- 閉じカッコを出力する
-
コンテナアダプタに対する特殊化の場合、メンバとして以下を持っているとして、
formatter<Container, charT> underlying_;- 以下と等価:
return underlying_.format(r.c, ctx);
戻り値
出力がおわった位置の出力イテレータを返す。
バージョン
言語
- C++20
処理系
- Clang: ??
- GCC: 13 ✅
- Visual C++: ??