2
// Copyright Aleksey Gurtovoy 2000-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/apply.hpp" header
10
// -- DO NOT modify by hand!
12
namespace boost { namespace mpl {
20
typename lambda<F>::type
24
BOOST_MPL_AUX_LAMBDA_SUPPORT(
34
struct apply_chooser<0>
37
typename F, typename T1, typename T2, typename T3, typename T4
51
typename F, typename T1
56
typename lambda<F>::type
60
BOOST_MPL_AUX_LAMBDA_SUPPORT(
70
struct apply_chooser<1>
73
typename F, typename T1, typename T2, typename T3, typename T4
87
typename F, typename T1, typename T2
92
typename lambda<F>::type
96
BOOST_MPL_AUX_LAMBDA_SUPPORT(
106
struct apply_chooser<2>
109
typename F, typename T1, typename T2, typename T3, typename T4
123
typename F, typename T1, typename T2, typename T3
128
typename lambda<F>::type
132
BOOST_MPL_AUX_LAMBDA_SUPPORT(
142
struct apply_chooser<3>
145
typename F, typename T1, typename T2, typename T3, typename T4
159
typename F, typename T1, typename T2, typename T3, typename T4
164
typename lambda<F>::type
168
BOOST_MPL_AUX_LAMBDA_SUPPORT(
171
, (F, T1, T2, T3, T4)
178
struct apply_chooser<4>
181
typename F, typename T1, typename T2, typename T3, typename T4
195
typename F, typename T1, typename T2, typename T3, typename T4
201
typename lambda<F>::type
205
BOOST_MPL_AUX_LAMBDA_SUPPORT(
208
, (F, T1, T2, T3, T4, T5)
215
struct apply_chooser<5>
218
typename F, typename T1, typename T2, typename T3, typename T4
224
F, T1, T2, T3, T4, T5
233
template< typename T >
236
static bool const value = true;
240
struct is_apply_arg<na>
242
static bool const value = false;
246
typename T1, typename T2, typename T3, typename T4, typename T5
248
struct apply_count_args
250
static int const value = is_apply_arg<T1>::value + is_apply_arg<T2>::value + is_apply_arg<T3>::value + is_apply_arg<T4>::value + is_apply_arg<T5>::value;
257
typename F, typename T1 = na, typename T2 = na, typename T3 = na
258
, typename T4 = na, typename T5 = na
261
: aux::apply_chooser<
262
aux::apply_count_args< T1,T2,T3,T4,T5 >::value
263
>::template result_< F,T1,T2,T3,T4,T5 >::type