10 struct ReplaceCopyIfFunction {
11 template<concepts::InputIterator It, concepts::SentinelFor<It> Sent,
typename U,
12 concepts::OutputIterator<U const&> Out,
typename Proj = function::Identity,
13 concepts::IndirectUnaryPredicate<meta::Projected<It, Proj>> Pred>
14 requires(concepts::IndirectlyCopyable<It, Out>)
15 constexpr auto operator()(It
first, Sent
last, Out output, Pred pred, U
const& new_value, Proj
proj = {})
const
16 -> InOutResult<It, Out> {
24 return { util::move(first), util::move(output) };
27 template<concepts::ForwardContainer Con,
typename U, concepts::OutputIterator<U const&> Out,
28 typename Proj = function::Identity,
29 concepts::IndirectUnaryPredicate<meta::Projected<meta::ContainerIterator<Con>, Proj>> Pred>
30 requires(concepts::IndirectlyCopyable<meta::ContainerIterator<Con>, Out>)
31 constexpr auto operator()(Con&& container, Out output, Pred pred, U
const& new_value, Proj
proj = {})
const
constexpr auto last(concepts::detail::ConstantVector auto &vector, size_t count)
Definition vector_last.h:13
constexpr auto first(concepts::detail::ConstantVector auto &vector, size_t count)
Definition vector_first.h:13
constexpr auto end
Definition end.h:55
constexpr auto replace_copy_if
Definition replace_copy_if.h:39
constexpr auto begin
Definition begin.h:52
constexpr auto invoke
Definition invoke.h:100
constexpr auto ref
Definition reference_wrapper.h:98
Definition any_storable.h:9
constexpr auto proj
Definition proj.h:59