|
| constexpr | dynamic_format_arg_store ()=default |
| |
| | operator basic_format_args< Context > () const |
| |
| template<typename T > |
| void | push_back (const T &arg) |
| | Adds an argument into the dynamic store for later passing to a formatting function.
|
| |
| template<typename T > |
| void | push_back (std::reference_wrapper< T > arg) |
| | Adds a reference to the argument into the dynamic store for later passing to a formatting function.
|
| |
| template<typename T > |
| void | push_back (const detail::named_arg< char_type, T > &arg) |
| | Adds named argument into the dynamic store for later passing to a formatting function.
|
| |
| void | clear () |
| | Erase all elements from the store.
|
| |
| void | reserve (size_t new_cap, size_t new_cap_named) |
| | Reserves space to store at least new_cap arguments including new_cap_named named arguments.
|
| |
| size_t | size () const noexcept |
| | Returns the number of elements in the store.
|
| |
template<typename Context>
class dynamic_format_arg_store< Context >
A dynamic list of formatting arguments with storage.
It can be implicitly converted into fmt::basic_format_args for passing into type-erased formatting functions such as fmt::vformat.
template<typename Context >
template<typename T >
Adds an argument into the dynamic store for later passing to a formatting function.
Note that custom types and string types (but not string views) are copied into the store dynamically allocating memory if necessary.
Example:
fmt::dynamic_format_arg_store<fmt::format_context> store;
store.push_back(42);
store.push_back("abc");
store.push_back(1.5f);
std::string result = fmt::vformat("{} and {} and {}", store);