/* @copyright Louis Dionne 2014 Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt) */ #include #include #include "benchmark.hpp" <%= setup %> template struct x { }; int main() { using L = <%= datatype %>; auto list = boost::hana::make( <%= (1..input_size).to_a.map { |i| "x<#{i}>{}" }.join(', ') %> ); struct state { }; auto f = [](auto&& s, auto&& x) -> decltype(auto) { return boost::hana::detail::std::forward(x); }; boost::hana::benchmark::measure([=] { boost::hana::scanl(list, state{}, f); }); }