/* @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 xs = boost::hana::make( <%= (1..input_size).to_a.map { |i| "x<#{i}>{}" }.join(', ') %> ); auto ys = xs; auto f = [](auto&& x, auto&& y) -> decltype(auto) { return boost::hana::detail::std::forward(x); }; boost::hana::benchmark::measure([=] { boost::hana::zip_with(f, xs, ys); }); }