| Home | Libraries | People | FAQ | More

##### uniqued

Syntax | Code
--- | ---
Pipe | `rng | boost::adaptors::uniqued`
Function | `boost::adaptors::unique(rng)`

- Precondition: The `value_type` of the range is comparable with `operator==()`.
- Postcondition: For all adjacent elements `[x,y]` in the returned range, `x==y` is false.
- Range Category: Forward Range
- Range Return Type: `boost::uniqued_range<decltype(rng)>`
- Returned Range Category: The minimum of the range concept of `rng` and Forward Range.

###### uniqued example

    #include <boost/range/adaptor/uniqued.hpp>
    #include <boost/range/algorithm/copy.hpp>
    #include <boost/assign.hpp>
    #include <iterator>
    #include <iostream>
    #include <vector>

    int main(int argc, const char* argv[])
    {
        using namespace boost::assign;
        using namespace boost::adaptors;

        std::vector<int> input;
        input += 1,1,2,2,2,3,4,5,6;

        boost::copy(
            input | uniqued,
            std::ostream_iterator<int>(std::cout, ","));

        return 0;
    }

This would produce the output:

    1,2,3,4,5,6,