29 template<
typename R,
typename B,
typename C,
typename...
Args>
32 static_assert (std::is_base_of<B, C> {},
"Base class where the member pointer belongs must be convertible to the binded object's class.");
36 template<
typename R,
typename B,
typename C,
typename...
Args>
39 static_assert (std::is_base_of<B, C> {},
"Base class where the member pointer belongs must be convertible to the binded object's class.");
46 template<
typename From>
49 return To { std::forward<From> (
from) };
52 template<
typename From>
65 template<
typename From,
typename = std::enable_if_t<std::is_base_of_v<To, std::decay_t<From>>>>
auto BindMemFn(R(B::*fn)(Args...), C *c)
Binds an instance of an object to its member function.
Container< T > Filter(const Container< T > &c, F f)
std::enable_if_t<!std::is_base_of< To, std::decay_t< From > >::value, To > operator()(From &&from) const