std::range-default-formatter<std::range_format::string>, std::range-default-formatter<std::range_format::debug_string>
出自cppreference.com
< cpp | utility | format | ranges formatter
在標頭 <format> 定義
|
||
template< std::range_format K, ranges::input_range R, class CharT > requires (K == std::range_format::string || K == std::range_format::debug_string) |
(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 |
按照 範圍格式說明 的說明解析格式說明符 (公開成員函數) |
format |
按照 範圍格式說明 寫入範圍的格式化輸出 (公開成員函數) |
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::range-default-formatter<std::range_format::string>::format
std::range-default-formatter<std::range_format::debug_string>::format
template< class FormatContext > auto format( /* 見下文 */& r, FormatContext& ctx ) const -> FormatContext::iterator; |
||
如果 ranges::input_range<const R> 為 true,則 r 的類型為 const R&。否則其類型為 R&。
令 s 為一個 std::basic_string<CharT>,如同以 std::basic_string<CharT>(std::from_range, r) 構造 s 使得 ranges::equal(s, r) 為 true。
等價於 return underlying_.format(s, ctx);。
返回輸出範圍的尾後迭代器。
[編輯] 參閱
(C++20) |
定義針對給定類型的格式化規則 (類模板) |
(C++23) |
用於幫助實現 std::formatter 對範圍類型的特化的類模板 (類模板) |