Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2008-09-01 12:53:17

on Mon Sep 01 2008, "Giovanni Piero Deretta" <> wrote:

>>> You could provide an adapted_iterator and also an adapted_range.
>> My point is that the adapted_range would then have semantically
>> equivalent iterators with a different representation (and an extra
>> indirection), which seems like a waste.
> hum, which indirection?

The iterators have to refer to the common data somehow.

> <...>
>>> Do you then still need a factored iterator?
>> You need to be able to take two adapted iterators and turn them into a
>> range. Do you want that range to contain redundant data? I don't.
> Hei, maybe this is all that we need! Let's have a metafunction that
> given an iterator type returns its preferred range type (the
> associated range). The default might be boost.range or even std::pair.
> The developer of an iterator adaptor, can specialize the metafunction
> so that the associate range is the optimum representation for an
> iterator pair.
> Do you think this would be enough? It seems too simple to me, so
> probably I'm missing something...

It is quite attractive, I must say. I'll give it some thought.

Dave Abrahams
BoostPro Computing

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