1 // Copyright Louis Dionne 2013-2017 2 // Distributed under the Boost Software License, Version 1.0. 3 // (See accompanying file LICENSE.md or copy at http://boost.org/LICENSE_1_0.txt) 4 5 #include <boost/mpl11/list.hpp> 6 7 8 struct f { 9 using type = f; 10 template <typename> 11 struct apply { struct type; }; 12 }; 13 14 template <int> struct x { struct type; }; 15 16 using list = boost::mpl11::list< 17 <%= (1..input_size).map { |i| "x<#{i}>" }.join(', ') %> 18 >; 19 20 using result = boost::mpl11::fmap<f, list>::type; 21 main()22int main() { 23 24 } 25