14#ifndef RANGES_V3_VIEW_REMOVE_HPP
15#define RANGES_V3_VIEW_REMOVE_HPP
31#include <range/v3/detail/prologue.hpp>
42 template<
typename Value>
47 requires equality_comparable_with<T, Value const &>)
48 bool operator()(T && other)
const
50 return static_cast<T &&
>(other) == value_;
55 template(
typename Rng,
typename Value)(
59 constexpr auto operator()(Rng && rng, Value value)
const
61 return remove_if(
static_cast<Rng &&
>(rng),
62 pred_<Value>{std::move(value)});
65 template(
typename Rng,
typename Value,
typename Proj)(
69 constexpr auto operator()(Rng && rng, Value value, Proj proj)
const
71 return remove_if(
static_cast<Rng &&
>(rng),
72 pred_<Value>{std::move(value)},
79 template<
typename Value>
80 constexpr auto operator()(Value value)
const
84 template(
typename Value,
typename Proj)(
86 constexpr auto operator()(Value && value, Proj proj)
const
96 using remove_base_fn::operator();
97 using remove_bind_fn::operator();
107#include <range/v3/detail/epilogue.hpp>
The indirectly_comparable concept.
The viewable_range concept.
decltype(begin(declval(Rng &))) iterator_t
Definition: access.hpp:698
RANGES_INLINE_VARIABLE(detail::to_container_fn< detail::from_range< std::vector > >, to_vector) template< template< typename... > class ContT > auto to(RANGES_HIDDEN_DETAIL(detail
For initializing a container of the specified type with the elements of an Range.
Definition: conversion.hpp:399
defer< bind_back, Fn, Ts... > bind_back
Definition: meta.hpp:994
Definition: comparisons.hpp:28
Definition: remove.hpp:40
Definition: remove.hpp:78
Definition: remove.hpp:95