Range-v3
Range algorithms, views, and actions for the Standard Library
ranges::adjacent_remove_if_fn Struct Reference

Public Member Functions

template<typename I , typename S , typename Pred , typename Proj = identity>
auto operator() (I first, S last, Pred pred={}, Proj proj={}) const -> I requires permutable< I > &&sentinel_for< S, I > &&indirect_relation< Pred, projected< I, Proj >>
 function adjacent_remove_if_fn::operator() More...
 
template<typename Rng , typename Pred , typename Proj = identity>
auto operator() (Rng &&rng, Pred pred, Proj proj={}) const -> safe_iterator_t< Rng > requires forward_range< Rng > &&indirect_relation< Pred, projected< iterator_t< Rng >, Proj >> &&permutable< iterator_t< Rng >>
 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 Pred , typename Proj = identity>
auto ranges::adjacent_remove_if_fn::operator() ( first,
last,
Pred  pred = {},
Proj  proj = {} 
) const -> I requires permutable<I> && sentinel_for<S, I> && indirect_relation<Pred, projected<I, Proj>>

function adjacent_remove_if_fn::operator()

range-based version of the adjacent_remove_if algorithm

Precondition
Rng is a model of the forward_range concept.
Pred is a model of the BinaryPredicate concept.