Boost logo

Boost :

Subject: Re: [boost] [range] transform surprise
From: Mathias Gaunard (mathias.gaunard_at_[hidden])
Date: 2011-03-05 09:57:35


On 05/03/2011 15:27, Neal Becker wrote:
> I'm surprised that boost::range::transform args are
>
> template<
> class SinglePassRange1,
> class OutputIterator,
> class UnaryOperation
>>
> OutputIterator transform(const SinglePassRange1& rng,
> OutputIterator out,
> UnaryOperation fun);
>
>
> I would have expected:
>
> template<
> class SinglePassRange1,
> class SinglePassRange2,
> class UnaryOperation
>>
> OutputIterator transform(const SinglePassRange1& rng,
> SinglePassRange2& out,
> UnaryOperation fun);
>
> Why the asymmetry?

An output range would imply that the algorithm does bounds checking on
its target.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk