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

Public Member Functions

template<typename I , typename S , typename O , typename S2 , typename BOp = minus, typename P = ident, requires = (Sentinel<S, I>() && Sentinel<S2, O>() && AdjacentDifferentiable<I, O, BOp, P>())>
tagged_pair< tag::in(I), tag::out(O)> operator() (I begin, S end, O result, S2 end_result, BOp bop=BOp{}, P proj=P{}) const
 
template<typename I , typename S , typename O , typename BOp = minus, typename P = ident, requires = (Sentinel<S, I>() && AdjacentDifferentiable<I, O, BOp, P>())>
tagged_pair< tag::in(I), tag::out(O)> operator() (I begin, S end, O result, BOp bop=BOp{}, P proj=P{}) const
 
template<typename Rng , typename ORef , typename BOp = minus, typename P = ident, typename I = iterator_t<Rng>, typename O = uncvref_t<ORef>, requires = (Range<Rng>() && AdjacentDifferentiable<I, O, BOp, P>())>
tagged_pair< tag::in(safe_iterator_t< Rng >), tag::out(O)> operator() (Rng &&rng, ORef &&result, BOp bop=BOp{}, P proj=P{}) const
 
template<typename Rng , typename ORng , typename BOp = minus, typename P = ident, typename I = iterator_t<Rng>, typename O = iterator_t<ORng>, requires = (Range<Rng>() && Range<ORng>() && AdjacentDifferentiable<I, O, BOp, P>())>
tagged_pair< tag::in(safe_iterator_t< Rng >), tag::out(safe_iterator_t< ORng >)> operator() (Rng &&rng, ORng &&result, BOp bop=BOp{}, P proj=P{}) const