31 template(
typename O,
typename S,
typename T)(
34 O operator()(O first, S last, T val)
const
36 for(; first != last; ++first, ++val)
37 *first = detail::as_const(val);
41 template(
typename Rng,
typename T)(
43 borrowed_iterator_t<Rng> operator()(Rng && rng, T val)
const
45 return (*
this)(begin(rng), end(rng), detail::move(val));