Boost logo

Boost :

Subject: [boost] [range] iterator_range operators are too greedy
From: Gennadiy Rozental (rogeeff_at_[hidden])
Date: 2012-11-08 03:35:43


Hi,

iterator_range operators are defined like this:

template< class IteratorT, class ForwardRange >
inline bool operator==( const ForwardRange& l,
                        const iterator_range<IteratorT>& r )
{
    return boost::equal( l, r );
}

These needs to be restricted with enable_if on type of first argument.
I have a scenario where I want to define operator== for my own type
and want to be able to use it with iterator_range as second argument.
Above definition makes it impossible.

Gennadiy


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk