Skip to content

Function reduce

function reduce(const E1 &, ReduceFn &&, TransformFn &&, FinalFn &&) base

template <
    typename ReduceFn, typename TransformFn = fn_generic::pass_through,
    typename FinalFn = fn_generic::pass_through, typename E1, typename Tin = expression_value_type<E1>,
    typename Twork = std::decay_t<std::invoke_result_t<TransformFn, Tin>>,
    typename Tout = std::decay_t<std::invoke_result_t<internal::reduce_final_helper, FinalFn, size_t, Twork>>>
    requires(!input_expression<E1>)
KFR_INTRINSIC Tout reduce(const E1& e1, ReduceFn&& reducefn,
                          TransformFn&& transformfn = fn_generic::pass_through(),
                          FinalFn&& finalfn         = fn_generic::pass_through())

Reduces a range to a single value.

Template parameters
ReduceFn Binary reduction functor.
TransformFn Unary transform applied to each element (defaults to pass-through).
FinalFn Finalizer applied to the accumulated value (defaults to pass-through).
E1 Range type.
Parameters
e1 Range to reduce.
reducefn Binary reduction functor.
transformfn Unary transform applied to each element.
finalfn Finalizer applied to the accumulated value.
Returns
The reduced value.

Fully qualified name: kfr::reduce(const E1 &, ReduceFn &&, TransformFn &&, FinalFn &&)

Declared at base/reduce.hpp:238

This file was generated by cxxdox, a C++ documentation generator based on MkDocs Material and libclang.