template< class Context >
class basic_format_arg<Context>::handle;
A type-erased wrapper that allows formatting an object of a user-defined type.
handle
objects are typically created by std::make_format_args and accessed through std::visit_format_arg or the visit
member functions of std::basic_format_arg(since C++26).
A typical implementation of handle
is TriviallyCopyable and only stores two non-static data members:
format
member function (see below).Let
T
be the type of the formatting argument,TD
be std::remove_const_t<T>,TQ
be const TD if const TD satisfies __formattable_with<Context> or TD
otherwise, andref
be a reference to the formatting argument.Equivalent to: typename Context::template formatter_type<TD> f;
parse_ctx.advance_to(f.parse(parse_ctx));
format_ctx.advance_to(f.format(const_cast<TQ&>(static_cast<const TD&>(ref)), format_ctx));
A handle
has reference semantics for the formatted argument and does not extend its lifetime. It is the programmer's responsibility to ensure that the argument outlives the handle
. Usually, a handle
is only used within formatting functions.
format_args
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4