2 // Copyright Aleksey Gurtovoy 2002-2004
4 // Distributed under the Boost Software License, Version 1.0.
5 // (See accompanying file LICENSE_1_0.txt or copy at
6 // http://www.boost.org/LICENSE_1_0.txt)
9 // Preprocessed version of "boost/mpl/unpack_args.hpp" header
10 // -- DO NOT modify by hand!
12 namespace boost { namespace mpl {
16 template< int size, typename F, typename Args >
17 struct unpack_args_impl;
19 template< typename F, typename Args >
20 struct unpack_args_impl< 0,F,Args >
27 template< typename F, typename Args >
28 struct unpack_args_impl< 1,F,Args >
31 , typename at_c< Args,0 >::type
36 template< typename F, typename Args >
37 struct unpack_args_impl< 2,F,Args >
40 , typename at_c< Args,0 >::type, typename at_c< Args,1 >::type
45 template< typename F, typename Args >
46 struct unpack_args_impl< 3,F,Args >
49 , typename at_c< Args,0 >::type, typename at_c< Args,1 >::type
50 , typename at_c< Args,2 >::type
55 template< typename F, typename Args >
56 struct unpack_args_impl< 4,F,Args >
59 , typename at_c< Args,0 >::type, typename at_c< Args,1 >::type
60 , typename at_c< Args,2 >::type, typename at_c< Args,3 >::type
65 template< typename F, typename Args >
66 struct unpack_args_impl< 5,F,Args >
69 , typename at_c< Args,0 >::type, typename at_c< Args,1 >::type
70 , typename at_c< Args,2 >::type, typename at_c< Args,3 >::type
71 , typename at_c< Args,4 >::type
83 template< typename Args > struct apply
85 : aux::unpack_args_impl< size<Args>::value,F, Args >
91 BOOST_MPL_AUX_PASS_THROUGH_LAMBDA_SPEC(1, unpack_args)