On Tue, Oct 1, 2013 at 4:55 PM, Kyle Lutz <kyle.r.lutz@gmail.com> wrote:
On Tue, Oct 1, 2013 at 4:21 PM, Nick Stokes
[..] 
boost::indirected_range<Range>


Thanks. But the question is not really about one single adaptor that indirected is. That was just an example (although your answer was useful, thank you)

How about in general?  Say,

template<class Range>
xxx getPuffedRange( Range& r ) { return  r | indirected | filtered(puff) | etc; }