Iros
 
Loading...
Searching...
No Matches
unpack.h
Go to the documentation of this file.
1#pragma once
2
4#include "di/meta/core.h"
5#include "di/types/prelude.h"
6
7namespace di::function {
8namespace detail {
9 template<typename Ind>
10 struct UnpackFunction {};
11
12 template<auto... values>
13 struct UnpackFunction<meta::ListV<values...>> {
14 template<typename F>
15 requires(concepts::Invocable<F&, meta::ListV<values...>>)
16 constexpr auto operator()(F&& function) const -> decltype(auto) {
18 }
19 };
20
21}
22
23template<typename Seq>
24constexpr inline auto unpack = detail::UnpackFunction<Seq> {};
25}
Definition invoke.h:58
Definition bind_back.h:16
Definition as_bool.h:8
constexpr auto unpack
Definition unpack.h:24
constexpr auto invoke
Definition invoke.h:100
Definition merge_interfaces.h:6
Definition core.h:8