std::basic_format_context
| Defined in header <format>
|
||
template< class OutputIt, class CharT >
class basic_format_context;
|
(1) | (since C++20) |
using format_context = basic_format_context</* unspecified */, char>;
|
(2) | (since C++20) |
using wformat_context = basic_format_context</* unspecified */, wchar_t>;
|
(3) | (since C++20) |
Provides access to formatting state consisting of the formatting arguments and the output iterator.
std::back_insert_iterator<std::string>. Implementations typically use an iterator to type-erased buffer type that supports appending to any contiguous and resizable container.The behavior is undefined if OutputIt does not model std::output_iterator<const CharT&>.
A program that declares an explicit or partial specialization of std::basic_format_context is ill-formed, no diagnostic required.
std::basic_format_context objects can only be created by the implementation. User codes are only allowed to modify the format context via the format function of std::formatter specializations.
Member types
| Type | Definition |
iterator
|
OutputIt
|
char_type
|
CharT
|
Member alias templates
| Type | Definition |
formatter_type<T>
|
std::formatter<T, CharT>
|
Member functions
(constructor) [deleted] |
basic_format_context cannot be constructed by user code (public member function) |
operator= [deleted] |
basic_format_context is not assignable (public member function) |
arg |
returns the argument at the given index (public member function) |
locale |
returns the locale used for locale-specific formatting (public member function) |
out |
returns the iterator to output buffer (public member function) |
advance_to |
advances the output iterator to the given position (public member function) |
std::basic_format_context::arg
std::basic_format_arg<basic_format_context> arg( std::size_t id ) const;
|
||
Returns a std::basic_format_arg holding the id-th argument in args, where args is the parameter pack or std::basic_format_args object passed to the formatting function.
If id is not less than the number of formatting arguments, returns a default-constructed std::basic_format_arg (holding a std::monostate object).
std::basic_format_context::locale
std::locale locale();
|
||
Returns the locale passed to the formatting function, or a default-constructed std::locale if the formatting function does not take a locale.
std::basic_format_context::out
iterator out();
|
||
Returns the iterator to the output buffer. The result is move-constructed from the stored iterator.
std::basic_format_context::advance_to
void advance_to( iterator it );
|
||
Move assigns it to the stored output iterator. After a call to advance_to, the next call to out() will return an iterator with the value that it had before the assignment.
Example
| This section is incomplete Reason: no example |
Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
