
On 24 Nov 2008, at 14:43, David Abrahams wrote:
on Mon Nov 24 2008, Thorsten Ottosen <thorsten.ottosen-AT- dezide.com> wrote:
I'm fine with having a non-deprecated boost::range<T> with the old behavior. I don't know if there is concensus for this?
I'm totally fine with it, except for the name. I would prefer to keep the name "range" in namespace boost usable for something that isn't considered a dead end or a design mistake. I guess it's a testament to the weirdness of the old design that I can't think of a good descriptive name.
boost::nonsigular_range
comes to mind, except of course anything that invalidates its contained iterators (e.g. throwing out the underlying container) makes it singular again.
Could I suggest "boost::container_view", the idea being that the type is at much like a container as possible, except it gives a view of other data rather than containing it's own data. I am working on a library in this area myself, which pushes this idea further (allowing push_back and other mutating members) on a similar view, but this simpler type branches the gap between ranges and full- blown containers. Chris