On Saturday, 6 July 2019 at 11:48:51 UTC, a11e99z wrote:
auto take_consuming( R )( ref R r, int cnt ) {
    auto tmp = r.take( cnt ).array;
    r = r.drop( cnt );
    return tmp;
don't thank

Doesn't look like what I'm looking for, as it is exactly the same I allready found.

Maybe I need to explain, what I dislike with this approach: take() calls popFront n times and drop() calls popFront another n times giving a total of 2n times (depending on the underlying range, this might cause lot's of calulcations be done twice. The first version with the foreach loop calls popFront only n times.

Reply via email to