|
| constexpr | logical_negate_ () noexcept(std::is_nothrow_default_constructible< FD >::value) |
| |
|
template<typename T , typename U = meta::if_c<!Same<detail::decay_t<T>, logical_negate_>(), T>, requires = (Constructible<FD, U>())> |
| constexpr | logical_negate_ (T &&pred) |
| |
|
template<typename ... Args, requires = (Predicate<FD &, Args...>())> |
| auto | operator() (Args &&...args) &noexcept(noexcept(decltype(!invoke(std::declval< FD &>(), static_cast< Args &&>(args)...))(!invoke(std::declval< FD &>(), static_cast< Args &&>(args)...)))) -> decltype(!invoke(std::declval< FD &>(), static_cast< Args &&>(args)...)) |
| |
| template<typename ... Args, requires = (Predicate<FD const &, Args...>())> |
| constexpr auto | operator() (Args &&...args) const &noexcept(noexcept(decltype(!invoke(std::declval< FD const &>(), static_cast< Args &&>(args)...))(!invoke(std::declval< FD const &>(), static_cast< Args &&>(args)...)))) -> decltype(!invoke(std::declval< FD const &>(), static_cast< Args &&>(args)...)) |
| |
| template<typename ... Args, requires = (Predicate<FD, Args...>())> |
| auto | operator() (Args &&...args) &&noexcept(noexcept(decltype(!invoke(std::declval< FD >(), static_cast< Args &&>(args)...))(!invoke(std::declval< FD >(), static_cast< Args &&>(args)...)))) -> decltype(!invoke(std::declval< FD >(), static_cast< Args &&>(args)...)) |
| |
| template<typename ... Args, requires = (Predicate<FD const, Args...>())> |
| auto | operator() (Args &&...args) const &&noexcept(noexcept(decltype(!invoke(std::declval< FD const >(), static_cast< Args &&>(args)...))(!invoke(std::declval< FD const >(), static_cast< Args &&>(args)...)))) -> decltype(!invoke(std::declval< FD const >(), static_cast< Args &&>(args)...)) |
| |