13 template<
typename Tag,
typename Sig,
typename... Tags>
16 template<
typename Tag,
typename R, concepts::DecaysTo<This> Self,
typename... Args,
typename... Tags>
20 template<
typename T,
typename F>
32 constexpr auto operator()(T&& self, Args... args)
const -> R {
34 auto const tag =
Tag {};
39 auto const tag = Choice {};
Definition tag_invoke.h:45
detail::DispatcherImpl< Self, Sig, Tags... > Dispatcher
Definition dispatcher.h:47
constexpr tag_invoke_detail::TagInvokeFn tag_invoke
Definition tag_invoke.h:22
constexpr auto invoke_r
Definition invoke.h:103
di::meta::Decay< decltype(T)> Tag
Definition tag_invoke.h:28
constexpr auto forward_like(U &&value) -> decltype(auto)
Definition forward_like.h:8
Definition zstring_parser.h:9
Definition dispatcher.h:14
Constexpr< is_invocable< T, F > > Invoke
Definition dispatcher.h:26
Method< Tag, R(Self, Args...)> Type
Definition dispatcher.h:18
static constexpr bool is_invocable
Definition dispatcher.h:21
constexpr auto operator()(T &&self, Args... args) const -> R
Definition dispatcher.h:32