/* @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 { }; struct pred { template constexpr decltype(auto) operator()(x const&) const { return boost::hana::bool_ >; } }; int main() { using L = <%= datatype %>; auto list = boost::hana::make( <%= (1..input_size).to_a.map { |i| "x<#{i}>{}" }.join(', ') %> ); boost::hana::benchmark::measure([=] { boost::hana::take_while(list, pred{}); }); }