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

Synopsis of methods

constexpr remove_fn remove {}
 

Public Member Functions

template<typename Rng , typename V , typename P = identity>
Rng operator() (Rng &&rng, V const &value, P proj={}) const
 
template<typename V >
constexpr auto operator() (V &&value) const
 
template<typename V , typename P >
constexpr auto operator() (V &&value, P proj) const
 

Member Function Documentation

◆ operator()() [1/2]

template<typename Rng , typename V , typename P = identity>
Rng ranges::actions::remove_fn::operator() ( Rng &&  rng,
V const &  value,
proj = {} 
) const
Precondition
requires forward_range<Rng> && permutable<iterator_t<Rng>> && erasable_range<Rng, iterator_t<Rng>, sentinel_t<Rng>> && indirect_relation<equal_to, projected<iterator_t<Rng>, P>, V const *>

◆ operator()() [2/2]

template<typename V , typename P >
constexpr auto ranges::actions::remove_fn::operator() ( V &&  value,
proj 
) const
constexpr
Precondition
requires (!range<V>)