mirror of
https://github.com/boostorg/function.git
synced 2025-07-30 04:47:14 +02:00
Add missing argN_type typedefs. Fixes #51.
This commit is contained in:
@ -586,17 +586,112 @@ namespace boost {
|
|||||||
struct variadic_function_base
|
struct variadic_function_base
|
||||||
{};
|
{};
|
||||||
|
|
||||||
template <typename T>
|
template <typename T1>
|
||||||
struct variadic_function_base<T>
|
struct variadic_function_base<T1>
|
||||||
{
|
{
|
||||||
typedef T argument_type;
|
typedef T1 argument_type;
|
||||||
|
typedef T1 arg1_type;
|
||||||
};
|
};
|
||||||
|
|
||||||
template <typename T0, typename T1>
|
template <typename T1, typename T2>
|
||||||
struct variadic_function_base<T0, T1>
|
struct variadic_function_base<T1, T2>
|
||||||
{
|
{
|
||||||
typedef T0 first_argument_type;
|
typedef T1 first_argument_type;
|
||||||
typedef T1 second_argument_type;
|
typedef T2 second_argument_type;
|
||||||
|
typedef T1 arg1_type;
|
||||||
|
typedef T2 arg2_type;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename T1, typename T2, typename T3>
|
||||||
|
struct variadic_function_base<T1, T2, T3>
|
||||||
|
{
|
||||||
|
typedef T1 arg1_type;
|
||||||
|
typedef T2 arg2_type;
|
||||||
|
typedef T3 arg3_type;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename T1, typename T2, typename T3, typename T4>
|
||||||
|
struct variadic_function_base<T1, T2, T3, T4>
|
||||||
|
{
|
||||||
|
typedef T1 arg1_type;
|
||||||
|
typedef T2 arg2_type;
|
||||||
|
typedef T3 arg3_type;
|
||||||
|
typedef T4 arg4_type;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename T1, typename T2, typename T3, typename T4, typename T5>
|
||||||
|
struct variadic_function_base<T1, T2, T3, T4, T5>
|
||||||
|
{
|
||||||
|
typedef T1 arg1_type;
|
||||||
|
typedef T2 arg2_type;
|
||||||
|
typedef T3 arg3_type;
|
||||||
|
typedef T4 arg4_type;
|
||||||
|
typedef T5 arg5_type;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>
|
||||||
|
struct variadic_function_base<T1, T2, T3, T4, T5, T6>
|
||||||
|
{
|
||||||
|
typedef T1 arg1_type;
|
||||||
|
typedef T2 arg2_type;
|
||||||
|
typedef T3 arg3_type;
|
||||||
|
typedef T4 arg4_type;
|
||||||
|
typedef T5 arg5_type;
|
||||||
|
typedef T6 arg6_type;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7>
|
||||||
|
struct variadic_function_base<T1, T2, T3, T4, T5, T6, T7>
|
||||||
|
{
|
||||||
|
typedef T1 arg1_type;
|
||||||
|
typedef T2 arg2_type;
|
||||||
|
typedef T3 arg3_type;
|
||||||
|
typedef T4 arg4_type;
|
||||||
|
typedef T5 arg5_type;
|
||||||
|
typedef T6 arg6_type;
|
||||||
|
typedef T7 arg7_type;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8>
|
||||||
|
struct variadic_function_base<T1, T2, T3, T4, T5, T6, T7, T8>
|
||||||
|
{
|
||||||
|
typedef T1 arg1_type;
|
||||||
|
typedef T2 arg2_type;
|
||||||
|
typedef T3 arg3_type;
|
||||||
|
typedef T4 arg4_type;
|
||||||
|
typedef T5 arg5_type;
|
||||||
|
typedef T6 arg6_type;
|
||||||
|
typedef T7 arg7_type;
|
||||||
|
typedef T8 arg8_type;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>
|
||||||
|
struct variadic_function_base<T1, T2, T3, T4, T5, T6, T7, T8, T9>
|
||||||
|
{
|
||||||
|
typedef T1 arg1_type;
|
||||||
|
typedef T2 arg2_type;
|
||||||
|
typedef T3 arg3_type;
|
||||||
|
typedef T4 arg4_type;
|
||||||
|
typedef T5 arg5_type;
|
||||||
|
typedef T6 arg6_type;
|
||||||
|
typedef T7 arg7_type;
|
||||||
|
typedef T8 arg8_type;
|
||||||
|
typedef T9 arg9_type;
|
||||||
|
};
|
||||||
|
|
||||||
|
template <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9, typename T10>
|
||||||
|
struct variadic_function_base<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>
|
||||||
|
{
|
||||||
|
typedef T1 arg1_type;
|
||||||
|
typedef T2 arg2_type;
|
||||||
|
typedef T3 arg3_type;
|
||||||
|
typedef T4 arg4_type;
|
||||||
|
typedef T5 arg5_type;
|
||||||
|
typedef T6 arg6_type;
|
||||||
|
typedef T7 arg7_type;
|
||||||
|
typedef T8 arg8_type;
|
||||||
|
typedef T9 arg9_type;
|
||||||
|
typedef T10 arg10_type;
|
||||||
};
|
};
|
||||||
|
|
||||||
#if defined( BOOST_LIBSTDCXX_VERSION ) && BOOST_LIBSTDCXX_VERSION < 50000
|
#if defined( BOOST_LIBSTDCXX_VERSION ) && BOOST_LIBSTDCXX_VERSION < 50000
|
||||||
|
Reference in New Issue
Block a user