Iros
 
Loading...
Searching...
No Matches
method_callable_with.h
Go to the documentation of this file.
1#pragma once
2
9#include "di/meta/util.h"
10
11namespace di::concepts {
12namespace detail {
13 template<typename M, typename T>
14 constexpr inline bool method_callable_with_helper = false;
15
16 template<typename Tag, typename R, concepts::RemoveCVRefSameAs<This> Self, typename... BArgs, typename T>
17 constexpr inline bool method_callable_with_helper<types::Method<Tag, R(Self, BArgs...)>, T> =
18 TagInvocableTo<Tag const&, R, types::Method<Tag, R(Self, BArgs...)>, meta::Like<Self, T>, BArgs...> ||
20}
21
22template<typename M, typename T>
24}
Definition invoke.h:69
Definition method_callable_with.h:23
Definition method.h:8
Definition tag_invoke.h:45
Definition impl.h:7
constexpr bool method_callable_with_helper
Definition method_callable_with.h:14
Definition any_storable.h:9
Type< detail::LikeHelper< T, U > > Like
Definition language.h:468
di::meta::Decay< decltype(T)> Tag
Definition tag_invoke.h:28
Definition method.h:7