Range-v3
Range algorithms, views, and actions for the Standard Library
fold_left.hpp File Reference

Concepts

concept  ranges::indirectly_binary_left_foldable_impl
 The indirectly_binary_left_foldable_impl concept.
 
concept  ranges::indirectly_binary_left_foldable
 The indirectly_binary_left_foldable concept.
 

Functions

template<typename I , typename S , typename T , typename Op >
requires sentinel_for<S, I> && input_iterator<I> && indirectly_binary_left_foldable<Op, T, I>
constexpr auto ranges::fold_left (I first, S last, T init, Op op)
 
template<typename Rng , typename T , typename Op >
requires input_range<Rng> && indirectly_binary_left_foldable<Op, T, iterator_t<Rng>>
constexpr auto ranges::fold_left (Rng &&rng, T init, Op op)
 
template<typename I , typename S , typename Op >
requires sentinel_for<S, I> && input_iterator<I> && indirectly_binary_left_foldable<Op, iter_value_t<I>, I> && constructible_from<iter_value_t<I>, iter_reference_t<I>>
constexpr auto ranges::fold_left_first (I first, S last, Op op)
 
template<typename R , typename Op >
requires input_range<R> && indirectly_binary_left_foldable<Op, range_value_t<R>, iterator_t<R>> && constructible_from<range_value_t<R>, range_reference_t<R>>
constexpr auto ranges::fold_left_first (R &&rng, Op op)