Boost logo

Boost :

Subject: Re: [boost] Proposed interface change to boost::algorithm::copy_while
From: Nathan Ridge (zeratul976_at_[hidden])
Date: 2013-02-20 19:05:52

> > I'm proposing to change the interface to:
> >
> > template<typename InputIterator, typename OutputIterator, typename
> > Predicate>
> > std::pair<InputIterator, OutputIterator>
> > copy_while ( InputIterator first, InputIterator last,
> > OutputIterator result, Predicate p );
> >
> > i.e, changing the return type to return both iterators.
> >
> >
> I think that certainly a change needs to be made to accomodate the extra
> information. I wonder how wise it is to return a pair that when the
> InputIterator type is the same as the OutputIterator type that it could be
> mistaken for, and accepted by, range algorithms as input? (That's my fault
> - doh!)

An alternative would be to take the 'first' iterator by reference.
Boost.Spirit uses this approach.


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