Audacity 3.2.0
|
Capture pointer to member. More...
#include <Callable.h>
Classes | |
struct | CanAccept |
struct | CanAccept< T, std::void_t< Result< T > > > |
Public Types | |
using | Member = M C::* |
template<typename T > | |
using | Result = std::invoke_result_t< Member, T > |
Public Member Functions | |
constexpr | MemberInvoker (Member member) |
template<typename Obj > | |
auto | operator() (Obj &&obj) const -> std::enable_if_t< CanAccept< Obj && >::value, Result< Obj && > > |
Public Attributes | |
Member | member |
Capture pointer to member.
Definition at line 35 of file Callable.h.
using Callable::detail::MemberInvoker< M, C >::Member = M C::* |
Definition at line 36 of file Callable.h.
using Callable::detail::MemberInvoker< M, C >::Result = std::invoke_result_t<Member, T> |
Definition at line 37 of file Callable.h.
|
inlineexplicitconstexpr |
Definition at line 42 of file Callable.h.
|
inline |
Cover all cases of std::invoke, with perfect forwarding, and sfinae eliminates the overloads for argument types for which it is inapplicable
Definition at line 46 of file Callable.h.
References Callable::detail::MemberInvoker< M, C >::member.
Member Callable::detail::MemberInvoker< M, C >::member |
Definition at line 51 of file Callable.h.
Referenced by Callable::detail::MemberInvoker< M, C >::operator()().