Range-v3 Range algorithms, views, and actions for the Standard Library |

Public Member Functions | List of all members
ranges::unique_copy_fn Struct Reference
Algorithms

## Public Member Functions
template<typename I , typename S , typename O , typename C = equal_to, typename P = identity>
auto | operator() (I begin, S end, O out, C pred=C{}, P proj=P{}) const -> unique_copy_result< I, O > requires input_iterator< I > &&sentinel_for< S, I > &&indirect_relation< C, projected< I, P >> &&weakly_incrementable< O > &&indirectly_copyable< I, O > &&(forward_iterator< I >||forward_iterator< O >||indirectly_copyable_storable< I, O >)
| template function unique_copy More...
template<typename Rng , typename O , typename C = equal_to, typename P = identity>
auto | operator() (Rng &&rng, O out, C pred=C{}, P proj=P{}) const -> unique_copy_result< safe_iterator_t< Rng >, O > requires input_range< Rng > &&indirect_relation< C, projected< iterator_t< Rng >, P >> &&weakly_incrementable< O > &&indirectly_copyable< iterator_t< Rng >, O > &&(forward_iterator< iterator_t< Rng >>||forward_iterator< O >||indirectly_copyable_storable< iterator_t< Rng >, O >)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## Member Function Documentation

## ◆ operator()()

template<typename I , typename S , typename O , typename C = equal_to, typename P = identity>

auto ranges::unique_copy_fn::operator() | ( | I | begin,
|  | S | end,
|  | O | out,
|  | C | pred = `C{}`,
|  | P | proj = `P{}`
| ) |  | const -> unique_copy_result<I, O> requires input_iterator<I> && sentinel_for<S, I> && indirect_relation<C, projected<I, P>> && weakly_incrementable<O> && indirectly_copyable<I, O> && (forward_iterator<I> || forward_iterator<O> || indirectly_copyable_storable<I, O>)

template function unique_copy

range-based version of the `unique_copy` std algorithm

Precondition
  `Rng` is a model of the `input_range` concept
  `O` is a model of the `weakly_incrementable` concept
  `C` is a model of the `relation` concept