Boost logo

Boost Users :

Subject: Re: [Boost-users] [fusion] incremental zipping
From: Christopher Schmidt (mr.chr.schmidt_at_[hidden])
Date: 2011-11-20 08:30:20


Gennadiy Rozental <rogeeff_at_[hidden]> writes:

> Christopher Schmidt <mr.chr.schmidt <at> online.de> writes:
>
>> auto v=push_back(
>> push_back(
>> push_back(
>> make_vector(),boost::ref(a)),boost::ref(b)),boost::ref(c));
>> auto z=zip_view<decltype(v)>(v);
>
>
> This is not what I want. Let @ denote zipping operation. I want:
>
> x = a @ b // x == ((0,1),(1,2))
> ...
> y = x @ c // y = ((0,1,2),(1,2,3))
>
> Right now I am getting y = (((0,1),2),((1,2),3))
>
> Gennadiy
>
> P.S. You example does not work for me push_back.hpp does not build
> under MSVC10

That's a tough questions. You cannot unzip a zip_view, add another
sequence, and zip it again. I'd either use transform to flatten the
nested zip_view's, or I'd store the sequences separately and rebuild the
zip_view every time on the fly.

        Christopher


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net