oven::unzipped

unzippedは、綴じ合わされた範囲を元に戻します。


以下の場合は、昨日のzippedによって綴じ合わされた
{(1 4),(2 5),(3 6)}という範囲をunzippedすることで
zippedする前の({1,2,3} {4,5,6})に戻ります。

#include <iostream>
#include <vector>
#include <boost/tuple/tuple.hpp>
#include <boost/tuple/tuple_io.hpp>
#include <pstade/oven/initial_values.hpp>
#include <pstade/oven/unzipped.hpp>
#include <pstade/oven/io.hpp>

using namespace pstade::oven;

int main()
{
    const std::vector<boost::tuple<int, int> > v =
        initial_values(boost::make_tuple(1, 4),
                       boost::make_tuple(2, 5),
                       boost::make_tuple(3, 6));

    std::cout << (v|unzipped) << std::endl;
}
({1,2,3} {4,5,6})


【参照】
pstade::oven::unzipped