読者です 読者をやめる 読者になる 読者になる

oven::regularをC++0xラムダ式に対応しました

C++

例によってまだリリースはしていませんが、Boost 1.44.0 + GCC 4.5で以下のコードが動作するようになりました。
リポジトリから取得してきてください。

#define BOOST_RESULT_OF_USE_DECLTYPE
#include <iostream>
#include <vector>
#include <pstade/oven/filtered.hpp>
#include <pstade/oven/regular.hpp>
#include <pstade/oven/io.hpp>

namespace oven = pstade::oven;

int main()
{
    const std::vector<int> v = {1, 2, 3, 4, 5};
    std::cout <<
        (v | oven::filtered(oven::regular([](int x) { return x % 2 == 0; })))
    << std::endl;
}
{2,4}

VC10は、Boost側のresult_ofが非対応のため、ラムダ式を使用することはできません。


次は日本語ドキュメントの作成にとりかかります。
Boost.Book覚えないと・・・。