Boost logo

Boost :

Subject: Re: [boost] [range] fat iterators?
From: Eric Niebler (eniebler_at_[hidden])
Date: 2013-11-12 10:41:54

On 11/7/2013 6:20 AM, Eric Niebler wrote:
> The trick, of course, will be keeping intermediate temporary ranges
> alive long enough to avoid lifetime issues when we chain adaptors and
> assign the result to a local variable. I think a range library that's
> sensitive to the value category of range objects and makes copies of
> rvalue ranges would solve this problem. Thoughts?
> Is it time for Boost.Range 3.0?

I've now built a filter_range, transform_range, and an istream_range in
this vein. Initial results are looking promising, but I haven't
benchmarked performance, yet. A commenter on my blog claims to have
benchmarked perf of istream_range, with good results, which is encouraging.

If anybody wants to take a peek, you can find the code here:

I'm making no effort to maintain source compatibility, going instead
with the design that seems right to me for C++11.

Eric Niebler

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