Loading [MathJax]/extensions/tex2jax.js
Iros
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages Concepts
Loading...
Searching...
No Matches
make_format_args.h
Go to the documentation of this file.
1#pragma once
2
6
7namespace di::format {
8template<concepts::FormatContext Context, concepts::Formattable... Types>
9constexpr auto make_format_args(Types&&... values) {
10 using Arg = FormatArg<Context>;
11 return [&]<size_t... indices>(meta::ListV<indices...>, [[maybe_unused]] Tuple<Types&...> values) {
12 return FormatArgsStorage<sizeof...(Types), Arg>(Arg {
14 util::get<indices>(values) }...);
15 }(meta::IndexSequenceFor<Types...> {}, tie(values...));
16}
17}
Definition format_arg.h:15
Definition format_args_storage.h:8
Definition tuple_forward_declaration.h:5
Definition bounded_format_context.h:7
constexpr auto make_format_args(Types &&... values)
Definition make_format_args.h:9
Variant< Void, bool, meta::EncodingCodePoint< meta::Encoding< Context > >, int, unsigned int, long long int, unsigned long long int, container::string::StringViewImpl< meta::Encoding< Context > >, void const *, ErasedArg< Context > > FormatArg
Definition format_arg.h:42
MakeIndexSequence< sizeof...(Types)> IndexSequenceFor
Definition algorithm.h:288
constexpr auto get(T &&value) -> decltype(auto)
Definition get.h:8
constexpr auto tie
Definition tie.h:15
constexpr auto in_place_type
Definition in_place_type.h:12
Definition core.h:8