Range-v3 Range algorithms, views, and actions for the Standard Library |

Public Member Functions | List of all members
ranges::v3::logical_negate_< FD > Struct Template Reference
Utility

## Public Member Functions
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)...))

## Member Function Documentation

## ◆ operator()() [1/3]

template<typename FD >
template<typename ... Args, requires = (Predicate<FD const &, Args...>())>

constexpr auto ranges::v3::logical_negate_< FD >::operator() | ( | Args &&... | args | ) | const & -> decltype( !invoke(std::declval<FD const &>(), static_cast<Args &&>(args)...) )
| noexcept

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## ◆ operator()() [2/3]

template<typename FD >
template<typename ... Args, requires = (Predicate<FD, Args...>())>

auto ranges::v3::logical_negate_< FD >::operator() | ( | Args &&... | args | ) | && -> decltype( !invoke(std::declval<FD>(), static_cast<Args &&>(args)...) )
| noexcept

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## ◆ operator()() [3/3]

template<typename FD >
template<typename ... Args, requires = (Predicate<FD const, Args...>())>

auto ranges::v3::logical_negate_< FD >::operator() | ( | Args &&... | args | ) | const && -> decltype( !invoke(std::declval<FD const>(), static_cast<Args &&>(args)...) )
| noexcept

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## Constructor & Destructor Documentation

## ◆ logical_negate_()

template<typename FD >

constexpr ranges::v3::logical_negate_< FD >::logical_negate_ | ( |  | ) |
| noexcept

Precondition
  DefaultConstructible<FD>()