T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10,
T11, T12, T13, T14, T15, T16, T17, T18, T19, T20,
T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32>::type
- _Base, _NestType;
+ _Base; //, _NestType;
typedef typename tuple<
T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10,
T11, T12, T13, T14, T15, T16, T17, T18, T19, T20,
T21, T22, T23, T24, T25, T26, T27, T28, T29, T30, T31, T32>
_This, _ThisType;
public:
+ typedef _Base _NestType;
+ public:
/// Constructors //////////////////////////////////////////////////////////////////
tuple(){}
tuple(const T0 &value_in) : _Base(value_in) {}
- //tuple(const T0 &value_in, const _NestType &next_in) : _Base(value_in, next_in) {}
+ tuple(const T0 &value_in, const typename _Base::_Next &next_in) : _Base(value_in, next_in) {}
tuple(const _NestType &t) : _Base(t) {}
tuple(const _ThisType &t) : _Base(t) {}
};
typename tuple<T0> make_tuple(T0 t0)
{
typedef tuple<T0> _TupleType;
- typedef typename tp::_tuple::tuple_to_nest_type<T0>::type _NestType;
- return _TupleType(_NestType(t0));
+ return _TupleType(t0);
}
template <typename T0, typename T1>
typename tuple<T0,T1> make_tuple(T0 t0, T1 t1)
{
typedef tuple<T0,T1> _TupleType;
- typedef typename tp::_tuple::tuple_to_nest_type<T0,T1>::type _NestType;
- return _TupleType(_NestType(t0,make_tuple(t1)));
- // return tp::_tuple::tuple_to_nest_type<T1,T2>::type(t1,make_tuple(t2));
+ return _TupleType(t0,make_tuple(t1));
}
template <typename T0, typename T1, typename T2>
typename tuple<T0,T1,T2> make_tuple(T0 t0, T1 t1, T2 t2)
{
typedef tuple<T0,T1,T2> _TupleType;
- typedef typename tp::_tuple::tuple_to_nest_type<T0,T1,T2>::type _NestType;
- return _TupleType(_NestType(t0,make_tuple(t1,t2)));
- // return tp::_tuple::tuple_to_nest_type<T1,T2>::type(t1,make_tuple(t2));
+ return _TupleType(t0,make_tuple(t1,t2));
}
//////////////////////////////////////////////////////////////////////////////////