Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2004-05-06 10:12:13

Thorsten Ottosen wrote:
> "Peter Dimov" <pdimov_at_[hidden]> wrote in message
> news:00aa01c43369$1959e180$1d00a8c0_at_pdimov2...
>> Thorsten Ottosen wrote:
>>> Let's assume this library is to be called Range Traits with
>>> RangeConcept, ExternalRangeConcept and,
>>> ExternalReversibleRangeConcept, can John/Mathew then find a
>>> reasonable name for their concept:
>>> crange<T> r = make_range( vector );
>>> while( r )
>>> {
>>> ++r; *r;
>>> }
>>> could they call their stuff TraversableRangeConcept or
>>> EnumerableRangeConcept or IteratorRangeConcept?
>> Why invent a new concept? This is an Iterator that is
>> ConvertibleToBool.
> because I assume it will also have member functions that makes it a
> Range, ie, begin(), end(), empty(), size(). So it merges ranges with
> iterators.

Range is begin(), end(); Iterator is ++ and *, and ConvertibleToBool is
if( x ). A concept only specifies the minimal requirements. If we had to
invent new concepts for every combination, we wouldn't be able to get
anything else done, combinatorial explosion and all. ;-)

Boost list run by bdawes at, gregod at, cpdaniel at, john at