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

Public Member Functions | List of all members
ranges::find_if_fn Struct Reference
Algorithms

## Public Member Functions
template<typename I , typename S , typename F , typename P = identity>
auto | operator() (I begin, S end, F pred, P proj=P{}) const -> I requires input_iterator< I > &&sentinel_for< S, I > &&indirect_unary_predicate< F, projected< I, P >>
| template function `find_fn::operator()` More...
template<typename Rng , typename F , typename P = identity>
auto | operator() (Rng &&rng, F pred, P proj=P{}) const -> safe_iterator_t< Rng > requires input_range< Rng > &&indirect_unary_predicate< F, projected< iterator_t< Rng >, P >>
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## Member Function Documentation

## ◆ operator()()

template<typename I , typename S , typename F , typename P = identity>

auto ranges::find_if_fn::operator() | ( | I | begin,
|  | S | end,
|  | F | pred,
|  | P | proj = `P{}`
| ) |  | const -> I requires input_iterator<I> && sentinel_for<S, I> && indirect_unary_predicate<F, projected<I, P>>

template function `find_fn::operator()`

range-based version of the `find` std algorithm

Precondition
  `Rng` is a model of the `Range` concept
  `I` is a model of the `input_iterator` concept
  `S` is a model of the `sentinel_for<I>` concept
  `P` is a model of the `invocable<V>` concept, where `V` is the value type of I.
  `F` models `predicate<X>`, where `X` is the result type of `invocable<P, V>`