10 struct ReplaceFunction {
11 template<concepts::InputIterator It, concepts::SentinelFor<It> Sent,
typename T,
typename U,
12 typename Proj = function::Identity>
13 requires(concepts::IndirectlyWritable<It, U const&> &&
14 concepts::IndirectBinaryPredicate<function::Equal, meta::Projected<It, Proj>, T
const*>)
15 constexpr auto operator()(It
first, Sent
last, T
const& old_value, U
const& new_value, Proj
proj = {})
const
25 template<concepts::InputContainer Con,
typename T,
typename U,
typename Proj = function::Identity>
26 requires(concepts::IndirectlyWritable<meta::ContainerIterator<Con>, U
const&> &&
27 concepts::IndirectBinaryPredicate<function::Equal, meta::Projected<meta::ContainerIterator<Con>, Proj>,
29 constexpr auto operator()(Con&& container, T
const& old_value, U
const& new_value, Proj
proj = {})
const
36constexpr inline auto replace = detail::ReplaceFunction {};
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 replace
Definition replace.h:36
constexpr auto end
Definition end.h:55
constexpr auto begin
Definition begin.h:52
constexpr auto invoke
Definition invoke.h:100
Definition any_storable.h:9
constexpr auto proj
Definition proj.h:59