10 struct RemoveFunction {
11 template<concepts::Permutable It, concepts::SentinelFor<It> Sent,
typename T,
12 typename Proj = function::Identity>
13 requires(concepts::IndirectBinaryPredicate<function::Equal, meta::Projected<It, Proj>, T
const*>)
17 return { fast, fast };
21 for (; fast !=
last; ++fast) {
27 return { util::move(slow), util::move(fast) };
30 template<concepts::ForwardContainer Con,
typename T,
typename Proj = function::Identity>
31 requires(concepts::Permutable<meta::ContainerIterator<Con>> &&
32 concepts::IndirectBinaryPredicate<function::Equal, meta::Projected<meta::ContainerIterator<Con>, Proj>,
40constexpr inline auto remove = detail::RemoveFunction {};
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 find
Definition find.h:35
constexpr auto remove
Definition remove.h:40
constexpr auto iterator_move
Definition iterator_move.h:56
View(Iter, Sent) -> View< Iter, Sent >
constexpr auto end
Definition end.h:55
constexpr auto begin
Definition begin.h:52
constexpr auto invoke
Definition invoke.h:100
constexpr auto value
Definition value.h:34
constexpr auto ref
Definition reference_wrapper.h:98
constexpr auto proj
Definition proj.h:59