11 template<
typename... Funs>
12 struct OverloadImpl : Funs... {
13 using Funs::operator()...;
16 template<
typename... Funs>
17 OverloadImpl(Funs&&...) -> OverloadImpl<Funs...>;
19 struct OverloadFunction {
20 template<
typename... Funs>
21 requires(concepts::ConstructibleFrom<meta::Decay<Funs>, Funs> && ...)
22 constexpr auto operator()(Funs&&... functions)
const {
23 return function::piped(OverloadImpl(util::forward<Funs>(functions)...));
28constexpr inline auto overload = detail::OverloadFunction {};
constexpr auto piped(F &&function)
Definition piped.h:56
constexpr auto overload
Definition overload.h:28
Definition any_storable.h:9