// (C) Copyright Tobias Schwinger | |
// | |
// Use modification and distribution are subject to the boost Software License, | |
// Version 1.0. (See http://www.boost.org/LICENSE_1_0.txt). | |
//------------------------------------------------------------------------------ | |
// no include guards, this file is intended for multiple inclusion | |
// input: BOOST_FT_syntax type macro to use | |
// input: BOOST_FT_cc empty or cc specifier | |
// input: BOOST_FT_ell empty or "..." | |
// input: BOOST_FT_cv empty or cv qualifiers | |
// input: BOOST_FT_flags single decimal integer encoding the flags | |
// output: BOOST_FT_n number of component types (arity+1) | |
// output: BOOST_FT_arity current arity | |
// output: BOOST_FT_type macro that expands to the type | |
// output: BOOST_FT_tplargs(p) template arguments with given prefix | |
// output: BOOST_FT_params(p) parameters with given prefix | |
# include <boost/function_types/detail/synthesize_impl/arity10_0.hpp> | |
# define BOOST_FT_make_type(flags,cc,arity) BOOST_FT_make_type_impl(flags,cc,arity) | |
# define BOOST_FT_make_type_impl(flags,cc,arity) make_type_ ## flags ## _ ## cc ## _ ## arity | |
template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 > | |
struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,11) | |
{ | |
typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 BOOST_FT_ell) BOOST_FT_cv ; | |
}; | |
template< > | |
struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 12 > | |
{ | |
template<typename S> struct synthesize_impl_i | |
{ | |
private: | |
typedef typename mpl::begin<S> ::type iter_0; | |
typedef typename mpl::next< iter_0 > ::type iter_1; | |
typedef typename mpl::next< iter_1 > ::type iter_2; | |
typedef typename mpl::next< iter_2 > ::type iter_3; | |
typedef typename mpl::next< iter_3 > ::type iter_4; | |
typedef typename mpl::next< iter_4 > ::type iter_5; | |
typedef typename mpl::next< iter_5 > ::type iter_6; | |
typedef typename mpl::next< iter_6 > ::type iter_7; | |
typedef typename mpl::next< iter_7 > ::type iter_8; | |
typedef typename mpl::next< iter_8 > ::type iter_9; | |
typedef typename mpl::next< iter_9 > ::type iter_10; | |
typedef typename mpl::next< iter_10 > ::type iter_11; | |
public: | |
typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,11) | |
< typename mpl::deref< iter_0 > ::type | |
, typename mpl::deref< iter_1 > ::type | |
, typename mpl::deref< iter_2 > ::type | |
, typename mpl::deref< iter_3 > ::type | |
, typename mpl::deref< iter_4 > ::type | |
, typename mpl::deref< iter_5 > ::type | |
, typename mpl::deref< iter_6 > ::type | |
, typename mpl::deref< iter_7 > ::type | |
, typename mpl::deref< iter_8 > ::type | |
, typename mpl::deref< iter_9 > ::type | |
, typename mpl::deref< iter_10 > ::type | |
, typename mpl::deref< iter_11 > ::type | |
> ::type type; | |
}; | |
}; | |
template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 > | |
struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,12) | |
{ | |
typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 BOOST_FT_ell) BOOST_FT_cv ; | |
}; | |
template< > | |
struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 13 > | |
{ | |
template<typename S> struct synthesize_impl_i | |
{ | |
private: | |
typedef typename mpl::begin<S> ::type iter_0; | |
typedef typename mpl::next< iter_0 > ::type iter_1; | |
typedef typename mpl::next< iter_1 > ::type iter_2; | |
typedef typename mpl::next< iter_2 > ::type iter_3; | |
typedef typename mpl::next< iter_3 > ::type iter_4; | |
typedef typename mpl::next< iter_4 > ::type iter_5; | |
typedef typename mpl::next< iter_5 > ::type iter_6; | |
typedef typename mpl::next< iter_6 > ::type iter_7; | |
typedef typename mpl::next< iter_7 > ::type iter_8; | |
typedef typename mpl::next< iter_8 > ::type iter_9; | |
typedef typename mpl::next< iter_9 > ::type iter_10; | |
typedef typename mpl::next< iter_10 > ::type iter_11; | |
typedef typename mpl::next< iter_11 > ::type iter_12; | |
public: | |
typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,12) | |
< typename mpl::deref< iter_0 > ::type | |
, typename mpl::deref< iter_1 > ::type | |
, typename mpl::deref< iter_2 > ::type | |
, typename mpl::deref< iter_3 > ::type | |
, typename mpl::deref< iter_4 > ::type | |
, typename mpl::deref< iter_5 > ::type | |
, typename mpl::deref< iter_6 > ::type | |
, typename mpl::deref< iter_7 > ::type | |
, typename mpl::deref< iter_8 > ::type | |
, typename mpl::deref< iter_9 > ::type | |
, typename mpl::deref< iter_10 > ::type | |
, typename mpl::deref< iter_11 > ::type | |
, typename mpl::deref< iter_12 > ::type | |
> ::type type; | |
}; | |
}; | |
template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 > | |
struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,13) | |
{ | |
typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 BOOST_FT_ell) BOOST_FT_cv ; | |
}; | |
template< > | |
struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 14 > | |
{ | |
template<typename S> struct synthesize_impl_i | |
{ | |
private: | |
typedef typename mpl::begin<S> ::type iter_0; | |
typedef typename mpl::next< iter_0 > ::type iter_1; | |
typedef typename mpl::next< iter_1 > ::type iter_2; | |
typedef typename mpl::next< iter_2 > ::type iter_3; | |
typedef typename mpl::next< iter_3 > ::type iter_4; | |
typedef typename mpl::next< iter_4 > ::type iter_5; | |
typedef typename mpl::next< iter_5 > ::type iter_6; | |
typedef typename mpl::next< iter_6 > ::type iter_7; | |
typedef typename mpl::next< iter_7 > ::type iter_8; | |
typedef typename mpl::next< iter_8 > ::type iter_9; | |
typedef typename mpl::next< iter_9 > ::type iter_10; | |
typedef typename mpl::next< iter_10 > ::type iter_11; | |
typedef typename mpl::next< iter_11 > ::type iter_12; | |
typedef typename mpl::next< iter_12 > ::type iter_13; | |
public: | |
typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,13) | |
< typename mpl::deref< iter_0 > ::type | |
, typename mpl::deref< iter_1 > ::type | |
, typename mpl::deref< iter_2 > ::type | |
, typename mpl::deref< iter_3 > ::type | |
, typename mpl::deref< iter_4 > ::type | |
, typename mpl::deref< iter_5 > ::type | |
, typename mpl::deref< iter_6 > ::type | |
, typename mpl::deref< iter_7 > ::type | |
, typename mpl::deref< iter_8 > ::type | |
, typename mpl::deref< iter_9 > ::type | |
, typename mpl::deref< iter_10 > ::type | |
, typename mpl::deref< iter_11 > ::type | |
, typename mpl::deref< iter_12 > ::type | |
, typename mpl::deref< iter_13 > ::type | |
> ::type type; | |
}; | |
}; | |
template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 > | |
struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,14) | |
{ | |
typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 BOOST_FT_ell) BOOST_FT_cv ; | |
}; | |
template< > | |
struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 15 > | |
{ | |
template<typename S> struct synthesize_impl_i | |
{ | |
private: | |
typedef typename mpl::begin<S> ::type iter_0; | |
typedef typename mpl::next< iter_0 > ::type iter_1; | |
typedef typename mpl::next< iter_1 > ::type iter_2; | |
typedef typename mpl::next< iter_2 > ::type iter_3; | |
typedef typename mpl::next< iter_3 > ::type iter_4; | |
typedef typename mpl::next< iter_4 > ::type iter_5; | |
typedef typename mpl::next< iter_5 > ::type iter_6; | |
typedef typename mpl::next< iter_6 > ::type iter_7; | |
typedef typename mpl::next< iter_7 > ::type iter_8; | |
typedef typename mpl::next< iter_8 > ::type iter_9; | |
typedef typename mpl::next< iter_9 > ::type iter_10; | |
typedef typename mpl::next< iter_10 > ::type iter_11; | |
typedef typename mpl::next< iter_11 > ::type iter_12; | |
typedef typename mpl::next< iter_12 > ::type iter_13; | |
typedef typename mpl::next< iter_13 > ::type iter_14; | |
public: | |
typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,14) | |
< typename mpl::deref< iter_0 > ::type | |
, typename mpl::deref< iter_1 > ::type | |
, typename mpl::deref< iter_2 > ::type | |
, typename mpl::deref< iter_3 > ::type | |
, typename mpl::deref< iter_4 > ::type | |
, typename mpl::deref< iter_5 > ::type | |
, typename mpl::deref< iter_6 > ::type | |
, typename mpl::deref< iter_7 > ::type | |
, typename mpl::deref< iter_8 > ::type | |
, typename mpl::deref< iter_9 > ::type | |
, typename mpl::deref< iter_10 > ::type | |
, typename mpl::deref< iter_11 > ::type | |
, typename mpl::deref< iter_12 > ::type | |
, typename mpl::deref< iter_13 > ::type | |
, typename mpl::deref< iter_14 > ::type | |
> ::type type; | |
}; | |
}; | |
template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 > | |
struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,15) | |
{ | |
typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 BOOST_FT_ell) BOOST_FT_cv ; | |
}; | |
template< > | |
struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 16 > | |
{ | |
template<typename S> struct synthesize_impl_i | |
{ | |
private: | |
typedef typename mpl::begin<S> ::type iter_0; | |
typedef typename mpl::next< iter_0 > ::type iter_1; | |
typedef typename mpl::next< iter_1 > ::type iter_2; | |
typedef typename mpl::next< iter_2 > ::type iter_3; | |
typedef typename mpl::next< iter_3 > ::type iter_4; | |
typedef typename mpl::next< iter_4 > ::type iter_5; | |
typedef typename mpl::next< iter_5 > ::type iter_6; | |
typedef typename mpl::next< iter_6 > ::type iter_7; | |
typedef typename mpl::next< iter_7 > ::type iter_8; | |
typedef typename mpl::next< iter_8 > ::type iter_9; | |
typedef typename mpl::next< iter_9 > ::type iter_10; | |
typedef typename mpl::next< iter_10 > ::type iter_11; | |
typedef typename mpl::next< iter_11 > ::type iter_12; | |
typedef typename mpl::next< iter_12 > ::type iter_13; | |
typedef typename mpl::next< iter_13 > ::type iter_14; | |
typedef typename mpl::next< iter_14 > ::type iter_15; | |
public: | |
typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,15) | |
< typename mpl::deref< iter_0 > ::type | |
, typename mpl::deref< iter_1 > ::type | |
, typename mpl::deref< iter_2 > ::type | |
, typename mpl::deref< iter_3 > ::type | |
, typename mpl::deref< iter_4 > ::type | |
, typename mpl::deref< iter_5 > ::type | |
, typename mpl::deref< iter_6 > ::type | |
, typename mpl::deref< iter_7 > ::type | |
, typename mpl::deref< iter_8 > ::type | |
, typename mpl::deref< iter_9 > ::type | |
, typename mpl::deref< iter_10 > ::type | |
, typename mpl::deref< iter_11 > ::type | |
, typename mpl::deref< iter_12 > ::type | |
, typename mpl::deref< iter_13 > ::type | |
, typename mpl::deref< iter_14 > ::type | |
, typename mpl::deref< iter_15 > ::type | |
> ::type type; | |
}; | |
}; | |
template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 > | |
struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,16) | |
{ | |
typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 BOOST_FT_ell) BOOST_FT_cv ; | |
}; | |
template< > | |
struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 17 > | |
{ | |
template<typename S> struct synthesize_impl_i | |
{ | |
private: | |
typedef typename mpl::begin<S> ::type iter_0; | |
typedef typename mpl::next< iter_0 > ::type iter_1; | |
typedef typename mpl::next< iter_1 > ::type iter_2; | |
typedef typename mpl::next< iter_2 > ::type iter_3; | |
typedef typename mpl::next< iter_3 > ::type iter_4; | |
typedef typename mpl::next< iter_4 > ::type iter_5; | |
typedef typename mpl::next< iter_5 > ::type iter_6; | |
typedef typename mpl::next< iter_6 > ::type iter_7; | |
typedef typename mpl::next< iter_7 > ::type iter_8; | |
typedef typename mpl::next< iter_8 > ::type iter_9; | |
typedef typename mpl::next< iter_9 > ::type iter_10; | |
typedef typename mpl::next< iter_10 > ::type iter_11; | |
typedef typename mpl::next< iter_11 > ::type iter_12; | |
typedef typename mpl::next< iter_12 > ::type iter_13; | |
typedef typename mpl::next< iter_13 > ::type iter_14; | |
typedef typename mpl::next< iter_14 > ::type iter_15; | |
typedef typename mpl::next< iter_15 > ::type iter_16; | |
public: | |
typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,16) | |
< typename mpl::deref< iter_0 > ::type | |
, typename mpl::deref< iter_1 > ::type | |
, typename mpl::deref< iter_2 > ::type | |
, typename mpl::deref< iter_3 > ::type | |
, typename mpl::deref< iter_4 > ::type | |
, typename mpl::deref< iter_5 > ::type | |
, typename mpl::deref< iter_6 > ::type | |
, typename mpl::deref< iter_7 > ::type | |
, typename mpl::deref< iter_8 > ::type | |
, typename mpl::deref< iter_9 > ::type | |
, typename mpl::deref< iter_10 > ::type | |
, typename mpl::deref< iter_11 > ::type | |
, typename mpl::deref< iter_12 > ::type | |
, typename mpl::deref< iter_13 > ::type | |
, typename mpl::deref< iter_14 > ::type | |
, typename mpl::deref< iter_15 > ::type | |
, typename mpl::deref< iter_16 > ::type | |
> ::type type; | |
}; | |
}; | |
template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 > | |
struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,17) | |
{ | |
typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 BOOST_FT_ell) BOOST_FT_cv ; | |
}; | |
template< > | |
struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 18 > | |
{ | |
template<typename S> struct synthesize_impl_i | |
{ | |
private: | |
typedef typename mpl::begin<S> ::type iter_0; | |
typedef typename mpl::next< iter_0 > ::type iter_1; | |
typedef typename mpl::next< iter_1 > ::type iter_2; | |
typedef typename mpl::next< iter_2 > ::type iter_3; | |
typedef typename mpl::next< iter_3 > ::type iter_4; | |
typedef typename mpl::next< iter_4 > ::type iter_5; | |
typedef typename mpl::next< iter_5 > ::type iter_6; | |
typedef typename mpl::next< iter_6 > ::type iter_7; | |
typedef typename mpl::next< iter_7 > ::type iter_8; | |
typedef typename mpl::next< iter_8 > ::type iter_9; | |
typedef typename mpl::next< iter_9 > ::type iter_10; | |
typedef typename mpl::next< iter_10 > ::type iter_11; | |
typedef typename mpl::next< iter_11 > ::type iter_12; | |
typedef typename mpl::next< iter_12 > ::type iter_13; | |
typedef typename mpl::next< iter_13 > ::type iter_14; | |
typedef typename mpl::next< iter_14 > ::type iter_15; | |
typedef typename mpl::next< iter_15 > ::type iter_16; | |
typedef typename mpl::next< iter_16 > ::type iter_17; | |
public: | |
typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,17) | |
< typename mpl::deref< iter_0 > ::type | |
, typename mpl::deref< iter_1 > ::type | |
, typename mpl::deref< iter_2 > ::type | |
, typename mpl::deref< iter_3 > ::type | |
, typename mpl::deref< iter_4 > ::type | |
, typename mpl::deref< iter_5 > ::type | |
, typename mpl::deref< iter_6 > ::type | |
, typename mpl::deref< iter_7 > ::type | |
, typename mpl::deref< iter_8 > ::type | |
, typename mpl::deref< iter_9 > ::type | |
, typename mpl::deref< iter_10 > ::type | |
, typename mpl::deref< iter_11 > ::type | |
, typename mpl::deref< iter_12 > ::type | |
, typename mpl::deref< iter_13 > ::type | |
, typename mpl::deref< iter_14 > ::type | |
, typename mpl::deref< iter_15 > ::type | |
, typename mpl::deref< iter_16 > ::type | |
, typename mpl::deref< iter_17 > ::type | |
> ::type type; | |
}; | |
}; | |
template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 > | |
struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,18) | |
{ | |
typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 BOOST_FT_ell) BOOST_FT_cv ; | |
}; | |
template< > | |
struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 19 > | |
{ | |
template<typename S> struct synthesize_impl_i | |
{ | |
private: | |
typedef typename mpl::begin<S> ::type iter_0; | |
typedef typename mpl::next< iter_0 > ::type iter_1; | |
typedef typename mpl::next< iter_1 > ::type iter_2; | |
typedef typename mpl::next< iter_2 > ::type iter_3; | |
typedef typename mpl::next< iter_3 > ::type iter_4; | |
typedef typename mpl::next< iter_4 > ::type iter_5; | |
typedef typename mpl::next< iter_5 > ::type iter_6; | |
typedef typename mpl::next< iter_6 > ::type iter_7; | |
typedef typename mpl::next< iter_7 > ::type iter_8; | |
typedef typename mpl::next< iter_8 > ::type iter_9; | |
typedef typename mpl::next< iter_9 > ::type iter_10; | |
typedef typename mpl::next< iter_10 > ::type iter_11; | |
typedef typename mpl::next< iter_11 > ::type iter_12; | |
typedef typename mpl::next< iter_12 > ::type iter_13; | |
typedef typename mpl::next< iter_13 > ::type iter_14; | |
typedef typename mpl::next< iter_14 > ::type iter_15; | |
typedef typename mpl::next< iter_15 > ::type iter_16; | |
typedef typename mpl::next< iter_16 > ::type iter_17; | |
typedef typename mpl::next< iter_17 > ::type iter_18; | |
public: | |
typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,18) | |
< typename mpl::deref< iter_0 > ::type | |
, typename mpl::deref< iter_1 > ::type | |
, typename mpl::deref< iter_2 > ::type | |
, typename mpl::deref< iter_3 > ::type | |
, typename mpl::deref< iter_4 > ::type | |
, typename mpl::deref< iter_5 > ::type | |
, typename mpl::deref< iter_6 > ::type | |
, typename mpl::deref< iter_7 > ::type | |
, typename mpl::deref< iter_8 > ::type | |
, typename mpl::deref< iter_9 > ::type | |
, typename mpl::deref< iter_10 > ::type | |
, typename mpl::deref< iter_11 > ::type | |
, typename mpl::deref< iter_12 > ::type | |
, typename mpl::deref< iter_13 > ::type | |
, typename mpl::deref< iter_14 > ::type | |
, typename mpl::deref< iter_15 > ::type | |
, typename mpl::deref< iter_16 > ::type | |
, typename mpl::deref< iter_17 > ::type | |
, typename mpl::deref< iter_18 > ::type | |
> ::type type; | |
}; | |
}; | |
template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 > | |
struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,19) | |
{ | |
typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 BOOST_FT_ell) BOOST_FT_cv ; | |
}; | |
template< > | |
struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 20 > | |
{ | |
template<typename S> struct synthesize_impl_i | |
{ | |
private: | |
typedef typename mpl::begin<S> ::type iter_0; | |
typedef typename mpl::next< iter_0 > ::type iter_1; | |
typedef typename mpl::next< iter_1 > ::type iter_2; | |
typedef typename mpl::next< iter_2 > ::type iter_3; | |
typedef typename mpl::next< iter_3 > ::type iter_4; | |
typedef typename mpl::next< iter_4 > ::type iter_5; | |
typedef typename mpl::next< iter_5 > ::type iter_6; | |
typedef typename mpl::next< iter_6 > ::type iter_7; | |
typedef typename mpl::next< iter_7 > ::type iter_8; | |
typedef typename mpl::next< iter_8 > ::type iter_9; | |
typedef typename mpl::next< iter_9 > ::type iter_10; | |
typedef typename mpl::next< iter_10 > ::type iter_11; | |
typedef typename mpl::next< iter_11 > ::type iter_12; | |
typedef typename mpl::next< iter_12 > ::type iter_13; | |
typedef typename mpl::next< iter_13 > ::type iter_14; | |
typedef typename mpl::next< iter_14 > ::type iter_15; | |
typedef typename mpl::next< iter_15 > ::type iter_16; | |
typedef typename mpl::next< iter_16 > ::type iter_17; | |
typedef typename mpl::next< iter_17 > ::type iter_18; | |
typedef typename mpl::next< iter_18 > ::type iter_19; | |
public: | |
typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,19) | |
< typename mpl::deref< iter_0 > ::type | |
, typename mpl::deref< iter_1 > ::type | |
, typename mpl::deref< iter_2 > ::type | |
, typename mpl::deref< iter_3 > ::type | |
, typename mpl::deref< iter_4 > ::type | |
, typename mpl::deref< iter_5 > ::type | |
, typename mpl::deref< iter_6 > ::type | |
, typename mpl::deref< iter_7 > ::type | |
, typename mpl::deref< iter_8 > ::type | |
, typename mpl::deref< iter_9 > ::type | |
, typename mpl::deref< iter_10 > ::type | |
, typename mpl::deref< iter_11 > ::type | |
, typename mpl::deref< iter_12 > ::type | |
, typename mpl::deref< iter_13 > ::type | |
, typename mpl::deref< iter_14 > ::type | |
, typename mpl::deref< iter_15 > ::type | |
, typename mpl::deref< iter_16 > ::type | |
, typename mpl::deref< iter_17 > ::type | |
, typename mpl::deref< iter_18 > ::type | |
, typename mpl::deref< iter_19 > ::type | |
> ::type type; | |
}; | |
}; | |
template< typename R , typename T0 , typename T1 , typename T2 , typename T3 , typename T4 , typename T5 , typename T6 , typename T7 , typename T8 , typename T9 , typename T10 , typename T11 , typename T12 , typename T13 , typename T14 , typename T15 , typename T16 , typename T17 , typename T18 , typename T19 > | |
struct BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,20) | |
{ | |
typedef BOOST_FT_syntax(BOOST_FT_cc,type BOOST_PP_EMPTY) (T0 , T1 , T2 , T3 , T4 , T5 , T6 , T7 , T8 , T9 , T10 , T11 , T12 , T13 , T14 , T15 , T16 , T17 , T18 , T19 BOOST_FT_ell) BOOST_FT_cv ; | |
}; | |
template< > | |
struct synthesize_impl_o< BOOST_FT_flags, BOOST_FT_cc_id, 21 > | |
{ | |
template<typename S> struct synthesize_impl_i | |
{ | |
private: | |
typedef typename mpl::begin<S> ::type iter_0; | |
typedef typename mpl::next< iter_0 > ::type iter_1; | |
typedef typename mpl::next< iter_1 > ::type iter_2; | |
typedef typename mpl::next< iter_2 > ::type iter_3; | |
typedef typename mpl::next< iter_3 > ::type iter_4; | |
typedef typename mpl::next< iter_4 > ::type iter_5; | |
typedef typename mpl::next< iter_5 > ::type iter_6; | |
typedef typename mpl::next< iter_6 > ::type iter_7; | |
typedef typename mpl::next< iter_7 > ::type iter_8; | |
typedef typename mpl::next< iter_8 > ::type iter_9; | |
typedef typename mpl::next< iter_9 > ::type iter_10; | |
typedef typename mpl::next< iter_10 > ::type iter_11; | |
typedef typename mpl::next< iter_11 > ::type iter_12; | |
typedef typename mpl::next< iter_12 > ::type iter_13; | |
typedef typename mpl::next< iter_13 > ::type iter_14; | |
typedef typename mpl::next< iter_14 > ::type iter_15; | |
typedef typename mpl::next< iter_15 > ::type iter_16; | |
typedef typename mpl::next< iter_16 > ::type iter_17; | |
typedef typename mpl::next< iter_17 > ::type iter_18; | |
typedef typename mpl::next< iter_18 > ::type iter_19; | |
typedef typename mpl::next< iter_19 > ::type iter_20; | |
public: | |
typedef typename detail::BOOST_FT_make_type(BOOST_FT_flags,BOOST_FT_cc_id,20) | |
< typename mpl::deref< iter_0 > ::type | |
, typename mpl::deref< iter_1 > ::type | |
, typename mpl::deref< iter_2 > ::type | |
, typename mpl::deref< iter_3 > ::type | |
, typename mpl::deref< iter_4 > ::type | |
, typename mpl::deref< iter_5 > ::type | |
, typename mpl::deref< iter_6 > ::type | |
, typename mpl::deref< iter_7 > ::type | |
, typename mpl::deref< iter_8 > ::type | |
, typename mpl::deref< iter_9 > ::type | |
, typename mpl::deref< iter_10 > ::type | |
, typename mpl::deref< iter_11 > ::type | |
, typename mpl::deref< iter_12 > ::type | |
, typename mpl::deref< iter_13 > ::type | |
, typename mpl::deref< iter_14 > ::type | |
, typename mpl::deref< iter_15 > ::type | |
, typename mpl::deref< iter_16 > ::type | |
, typename mpl::deref< iter_17 > ::type | |
, typename mpl::deref< iter_18 > ::type | |
, typename mpl::deref< iter_19 > ::type | |
, typename mpl::deref< iter_20 > ::type | |
> ::type type; | |
}; | |
}; | |
# undef BOOST_FT_make_type | |
# undef BOOST_FT_make_type_impl | |