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

Public Member Functions

template<typename I , typename S , typename O , typename F , typename P = ident, requires = (InputIterator<I>() && Sentinel<S, I>() && WeaklyIncrementable<O>() && IndirectPredicate<F, projected<I, P> >() && IndirectlyCopyable<I, O>())>
tagged_pair< tag::in(I), tag::out(O)> operator() (I begin, S end, O out, F pred, P proj=P{}) const
 
template<typename Rng , typename O , typename F , typename P = ident, typename I = iterator_t<Rng>, requires = (InputRange<Rng>() && WeaklyIncrementable<O>() && IndirectPredicate<F, projected<I, P> >() && IndirectlyCopyable<I, O>())>
tagged_pair< tag::in(safe_iterator_t< Rng >), tag::out(O)> operator() (Rng &&rng, O out, F pred, P proj=P{}) const