// // Tuple.h // // Library: Foundation // Package: Core // Module: Tuple // // Definition of the Tuple class. // // Copyright (c) 2004-2006, Applied Informatics Software Engineering GmbH. // and Contributors. // // SPDX-License-Identifier: BSL-1.0 // #ifndef Foundation_Tuple_INCLUDED #define Foundation_Tuple_INCLUDED #include "Poco/Foundation.h" #include "Poco/TypeList.h" namespace Poco { #if defined(POCO_COMPILER_MSVC) #define POCO_TYPEWRAPPER_DEFAULTVALUE(T) TypeWrapper::TYPE() #else #define POCO_TYPEWRAPPER_DEFAULTVALUE(T) typename TypeWrapper::TYPE() #endif template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28), typename TypeWrapper::CONSTTYPE& t29 = POCO_TYPEWRAPPER_DEFAULTVALUE(T29), typename TypeWrapper::CONSTTYPE& t30 = POCO_TYPEWRAPPER_DEFAULTVALUE(T30), typename TypeWrapper::CONSTTYPE& t31 = POCO_TYPEWRAPPER_DEFAULTVALUE(T31), typename TypeWrapper::CONSTTYPE& t32 = POCO_TYPEWRAPPER_DEFAULTVALUE(T32), typename TypeWrapper::CONSTTYPE& t33 = POCO_TYPEWRAPPER_DEFAULTVALUE(T33), typename TypeWrapper::CONSTTYPE& t34 = POCO_TYPEWRAPPER_DEFAULTVALUE(T34), typename TypeWrapper::CONSTTYPE& t35 = POCO_TYPEWRAPPER_DEFAULTVALUE(T35), typename TypeWrapper::CONSTTYPE& t36 = POCO_TYPEWRAPPER_DEFAULTVALUE(T36), typename TypeWrapper::CONSTTYPE& t37 = POCO_TYPEWRAPPER_DEFAULTVALUE(T37), typename TypeWrapper::CONSTTYPE& t38 = POCO_TYPEWRAPPER_DEFAULTVALUE(T38), typename TypeWrapper::CONSTTYPE& t39 = POCO_TYPEWRAPPER_DEFAULTVALUE(T39)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, typename TypeListType::HeadType (t29, typename TypeListType::HeadType (t30, typename TypeListType::HeadType (t31, typename TypeListType::HeadType (t32, typename TypeListType::HeadType (t33, typename TypeListType::HeadType (t34, typename TypeListType::HeadType (t35, typename TypeListType::HeadType (t36, typename TypeListType::HeadType (t37, typename TypeListType::HeadType (t38, typename TypeListType::HeadType (t39, NullTypeList())))))))))))))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28), typename TypeWrapper::CONSTTYPE& t29 = POCO_TYPEWRAPPER_DEFAULTVALUE(T29), typename TypeWrapper::CONSTTYPE& t30 = POCO_TYPEWRAPPER_DEFAULTVALUE(T30), typename TypeWrapper::CONSTTYPE& t31 = POCO_TYPEWRAPPER_DEFAULTVALUE(T31), typename TypeWrapper::CONSTTYPE& t32 = POCO_TYPEWRAPPER_DEFAULTVALUE(T32), typename TypeWrapper::CONSTTYPE& t33 = POCO_TYPEWRAPPER_DEFAULTVALUE(T33), typename TypeWrapper::CONSTTYPE& t34 = POCO_TYPEWRAPPER_DEFAULTVALUE(T34), typename TypeWrapper::CONSTTYPE& t35 = POCO_TYPEWRAPPER_DEFAULTVALUE(T35), typename TypeWrapper::CONSTTYPE& t36 = POCO_TYPEWRAPPER_DEFAULTVALUE(T36), typename TypeWrapper::CONSTTYPE& t37 = POCO_TYPEWRAPPER_DEFAULTVALUE(T37), typename TypeWrapper::CONSTTYPE& t38 = POCO_TYPEWRAPPER_DEFAULTVALUE(T38)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, typename TypeListType::HeadType (t29, typename TypeListType::HeadType (t30, typename TypeListType::HeadType (t31, typename TypeListType::HeadType (t32, typename TypeListType::HeadType (t33, typename TypeListType::HeadType (t34, typename TypeListType::HeadType (t35, typename TypeListType::HeadType (t36, typename TypeListType::HeadType (t37, typename TypeListType::HeadType (t38, NullTypeList()))))))))))))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28), typename TypeWrapper::CONSTTYPE& t29 = POCO_TYPEWRAPPER_DEFAULTVALUE(T29), typename TypeWrapper::CONSTTYPE& t30 = POCO_TYPEWRAPPER_DEFAULTVALUE(T30), typename TypeWrapper::CONSTTYPE& t31 = POCO_TYPEWRAPPER_DEFAULTVALUE(T31), typename TypeWrapper::CONSTTYPE& t32 = POCO_TYPEWRAPPER_DEFAULTVALUE(T32), typename TypeWrapper::CONSTTYPE& t33 = POCO_TYPEWRAPPER_DEFAULTVALUE(T33), typename TypeWrapper::CONSTTYPE& t34 = POCO_TYPEWRAPPER_DEFAULTVALUE(T34), typename TypeWrapper::CONSTTYPE& t35 = POCO_TYPEWRAPPER_DEFAULTVALUE(T35), typename TypeWrapper::CONSTTYPE& t36 = POCO_TYPEWRAPPER_DEFAULTVALUE(T36), typename TypeWrapper::CONSTTYPE& t37 = POCO_TYPEWRAPPER_DEFAULTVALUE(T37)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, typename TypeListType::HeadType (t29, typename TypeListType::HeadType (t30, typename TypeListType::HeadType (t31, typename TypeListType::HeadType (t32, typename TypeListType::HeadType (t33, typename TypeListType::HeadType (t34, typename TypeListType::HeadType (t35, typename TypeListType::HeadType (t36, typename TypeListType::HeadType (t37, NullTypeList())))))))))))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28), typename TypeWrapper::CONSTTYPE& t29 = POCO_TYPEWRAPPER_DEFAULTVALUE(T29), typename TypeWrapper::CONSTTYPE& t30 = POCO_TYPEWRAPPER_DEFAULTVALUE(T30), typename TypeWrapper::CONSTTYPE& t31 = POCO_TYPEWRAPPER_DEFAULTVALUE(T31), typename TypeWrapper::CONSTTYPE& t32 = POCO_TYPEWRAPPER_DEFAULTVALUE(T32), typename TypeWrapper::CONSTTYPE& t33 = POCO_TYPEWRAPPER_DEFAULTVALUE(T33), typename TypeWrapper::CONSTTYPE& t34 = POCO_TYPEWRAPPER_DEFAULTVALUE(T34), typename TypeWrapper::CONSTTYPE& t35 = POCO_TYPEWRAPPER_DEFAULTVALUE(T35), typename TypeWrapper::CONSTTYPE& t36 = POCO_TYPEWRAPPER_DEFAULTVALUE(T36)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, typename TypeListType::HeadType (t29, typename TypeListType::HeadType (t30, typename TypeListType::HeadType (t31, typename TypeListType::HeadType (t32, typename TypeListType::HeadType (t33, typename TypeListType::HeadType (t34, typename TypeListType::HeadType (t35, typename TypeListType::HeadType (t36, NullTypeList()))))))))))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28), typename TypeWrapper::CONSTTYPE& t29 = POCO_TYPEWRAPPER_DEFAULTVALUE(T29), typename TypeWrapper::CONSTTYPE& t30 = POCO_TYPEWRAPPER_DEFAULTVALUE(T30), typename TypeWrapper::CONSTTYPE& t31 = POCO_TYPEWRAPPER_DEFAULTVALUE(T31), typename TypeWrapper::CONSTTYPE& t32 = POCO_TYPEWRAPPER_DEFAULTVALUE(T32), typename TypeWrapper::CONSTTYPE& t33 = POCO_TYPEWRAPPER_DEFAULTVALUE(T33), typename TypeWrapper::CONSTTYPE& t34 = POCO_TYPEWRAPPER_DEFAULTVALUE(T34), typename TypeWrapper::CONSTTYPE& t35 = POCO_TYPEWRAPPER_DEFAULTVALUE(T35)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, typename TypeListType::HeadType (t29, typename TypeListType::HeadType (t30, typename TypeListType::HeadType (t31, typename TypeListType::HeadType (t32, typename TypeListType::HeadType (t33, typename TypeListType::HeadType (t34, typename TypeListType::HeadType (t35, NullTypeList())))))))))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28), typename TypeWrapper::CONSTTYPE& t29 = POCO_TYPEWRAPPER_DEFAULTVALUE(T29), typename TypeWrapper::CONSTTYPE& t30 = POCO_TYPEWRAPPER_DEFAULTVALUE(T30), typename TypeWrapper::CONSTTYPE& t31 = POCO_TYPEWRAPPER_DEFAULTVALUE(T31), typename TypeWrapper::CONSTTYPE& t32 = POCO_TYPEWRAPPER_DEFAULTVALUE(T32), typename TypeWrapper::CONSTTYPE& t33 = POCO_TYPEWRAPPER_DEFAULTVALUE(T33), typename TypeWrapper::CONSTTYPE& t34 = POCO_TYPEWRAPPER_DEFAULTVALUE(T34)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, typename TypeListType::HeadType (t29, typename TypeListType::HeadType (t30, typename TypeListType::HeadType (t31, typename TypeListType::HeadType (t32, typename TypeListType::HeadType (t33, typename TypeListType::HeadType (t34, NullTypeList()))))))))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28), typename TypeWrapper::CONSTTYPE& t29 = POCO_TYPEWRAPPER_DEFAULTVALUE(T29), typename TypeWrapper::CONSTTYPE& t30 = POCO_TYPEWRAPPER_DEFAULTVALUE(T30), typename TypeWrapper::CONSTTYPE& t31 = POCO_TYPEWRAPPER_DEFAULTVALUE(T31), typename TypeWrapper::CONSTTYPE& t32 = POCO_TYPEWRAPPER_DEFAULTVALUE(T32), typename TypeWrapper::CONSTTYPE& t33 = POCO_TYPEWRAPPER_DEFAULTVALUE(T33)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, typename TypeListType::HeadType (t29, typename TypeListType::HeadType (t30, typename TypeListType::HeadType (t31, typename TypeListType::HeadType (t32, typename TypeListType::HeadType (t33, NullTypeList())))))))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28), typename TypeWrapper::CONSTTYPE& t29 = POCO_TYPEWRAPPER_DEFAULTVALUE(T29), typename TypeWrapper::CONSTTYPE& t30 = POCO_TYPEWRAPPER_DEFAULTVALUE(T30), typename TypeWrapper::CONSTTYPE& t31 = POCO_TYPEWRAPPER_DEFAULTVALUE(T31), typename TypeWrapper::CONSTTYPE& t32 = POCO_TYPEWRAPPER_DEFAULTVALUE(T32)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, typename TypeListType::HeadType (t29, typename TypeListType::HeadType (t30, typename TypeListType::HeadType (t31, typename TypeListType::HeadType (t32, NullTypeList()))))))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28), typename TypeWrapper::CONSTTYPE& t29 = POCO_TYPEWRAPPER_DEFAULTVALUE(T29), typename TypeWrapper::CONSTTYPE& t30 = POCO_TYPEWRAPPER_DEFAULTVALUE(T30), typename TypeWrapper::CONSTTYPE& t31 = POCO_TYPEWRAPPER_DEFAULTVALUE(T31)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, typename TypeListType::HeadType (t29, typename TypeListType::HeadType (t30, typename TypeListType::HeadType (t31, NullTypeList())))))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28), typename TypeWrapper::CONSTTYPE& t29 = POCO_TYPEWRAPPER_DEFAULTVALUE(T29), typename TypeWrapper::CONSTTYPE& t30 = POCO_TYPEWRAPPER_DEFAULTVALUE(T30)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, typename TypeListType::HeadType (t29, typename TypeListType::HeadType (t30, NullTypeList()))))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28), typename TypeWrapper::CONSTTYPE& t29 = POCO_TYPEWRAPPER_DEFAULTVALUE(T29)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, typename TypeListType::HeadType (t29, NullTypeList())))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27), typename TypeWrapper::CONSTTYPE& t28 = POCO_TYPEWRAPPER_DEFAULTVALUE(T28)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, typename TypeListType::HeadType (t28, NullTypeList()))))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26), typename TypeWrapper::CONSTTYPE& t27 = POCO_TYPEWRAPPER_DEFAULTVALUE(T27)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, typename TypeListType::HeadType (t27, NullTypeList())))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25), typename TypeWrapper::CONSTTYPE& t26 = POCO_TYPEWRAPPER_DEFAULTVALUE(T26)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, typename TypeListType::HeadType (t26, NullTypeList()))))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24), typename TypeWrapper::CONSTTYPE& t25 = POCO_TYPEWRAPPER_DEFAULTVALUE(T25)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, typename TypeListType::HeadType (t25, NullTypeList())))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23), typename TypeWrapper::CONSTTYPE& t24 = POCO_TYPEWRAPPER_DEFAULTVALUE(T24)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, typename TypeListType::HeadType (t24, NullTypeList()))))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22), typename TypeWrapper::CONSTTYPE& t23 = POCO_TYPEWRAPPER_DEFAULTVALUE(T23)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, typename TypeListType::HeadType (t23, NullTypeList())))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21), typename TypeWrapper::CONSTTYPE& t22 = POCO_TYPEWRAPPER_DEFAULTVALUE(T22)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, typename TypeListType::HeadType (t22, NullTypeList()))))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20), typename TypeWrapper::CONSTTYPE& t21 = POCO_TYPEWRAPPER_DEFAULTVALUE(T21)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, typename TypeListType::HeadType (t21, NullTypeList())))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19), typename TypeWrapper::CONSTTYPE& t20 = POCO_TYPEWRAPPER_DEFAULTVALUE(T20)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, typename TypeListType::HeadType (t20, NullTypeList()))))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18), typename TypeWrapper::CONSTTYPE& t19 = POCO_TYPEWRAPPER_DEFAULTVALUE(T19)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, typename TypeListType::HeadType (t19, NullTypeList())))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17), typename TypeWrapper::CONSTTYPE& t18 = POCO_TYPEWRAPPER_DEFAULTVALUE(T18)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, typename TypeListType::HeadType (t18, NullTypeList()))))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16), typename TypeWrapper::CONSTTYPE& t17 = POCO_TYPEWRAPPER_DEFAULTVALUE(T17)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, typename TypeListType::HeadType (t17, NullTypeList())))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15), typename TypeWrapper::CONSTTYPE& t16 = POCO_TYPEWRAPPER_DEFAULTVALUE(T16)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, typename TypeListType::HeadType (t16, NullTypeList()))))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14), typename TypeWrapper::CONSTTYPE& t15 = POCO_TYPEWRAPPER_DEFAULTVALUE(T15)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, typename TypeListType::HeadType (t15, NullTypeList())))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13), typename TypeWrapper::CONSTTYPE& t14 = POCO_TYPEWRAPPER_DEFAULTVALUE(T14)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, typename TypeListType::HeadType (t14, NullTypeList()))))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12), typename TypeWrapper::CONSTTYPE& t13 = POCO_TYPEWRAPPER_DEFAULTVALUE(T13)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, typename TypeListType::HeadType (t13, NullTypeList())))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11), typename TypeWrapper::CONSTTYPE& t12 = POCO_TYPEWRAPPER_DEFAULTVALUE(T12)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, typename TypeListType::HeadType (t12, NullTypeList()))))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10), typename TypeWrapper::CONSTTYPE& t11 = POCO_TYPEWRAPPER_DEFAULTVALUE(T11)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, typename TypeListType::HeadType (t11, NullTypeList())))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9), typename TypeWrapper::CONSTTYPE& t10 = POCO_TYPEWRAPPER_DEFAULTVALUE(T10)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, typename TypeListType::HeadType (t10, NullTypeList()))))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8), typename TypeWrapper::CONSTTYPE& t9 = POCO_TYPEWRAPPER_DEFAULTVALUE(T9)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, typename TypeListType::HeadType (t9, NullTypeList())))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7), typename TypeWrapper::CONSTTYPE& t8 = POCO_TYPEWRAPPER_DEFAULTVALUE(T8)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, typename TypeListType::HeadType (t8, NullTypeList()))))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6), typename TypeWrapper::CONSTTYPE& t7 = POCO_TYPEWRAPPER_DEFAULTVALUE(T7)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, typename TypeListType::HeadType (t7, NullTypeList())))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5), typename TypeWrapper::CONSTTYPE& t6 = POCO_TYPEWRAPPER_DEFAULTVALUE(T6)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, typename TypeListType::HeadType (t6, NullTypeList()))))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4), typename TypeWrapper::CONSTTYPE& t5 = POCO_TYPEWRAPPER_DEFAULTVALUE(T5)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, typename TypeListType::HeadType (t5, NullTypeList())))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3), typename TypeWrapper::CONSTTYPE& t4 = POCO_TYPEWRAPPER_DEFAULTVALUE(T4)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, typename TypeListType::HeadType (t4, NullTypeList()))))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2), typename TypeWrapper::CONSTTYPE& t3 = POCO_TYPEWRAPPER_DEFAULTVALUE(T3)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, typename TypeListType::HeadType (t3, NullTypeList())))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1), typename TypeWrapper::CONSTTYPE& t2 = POCO_TYPEWRAPPER_DEFAULTVALUE(T2)): _data(t0, typename TypeListType::HeadType (t1, typename TypeListType::HeadType (t2, NullTypeList()))) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef typename TypeListType::HeadType Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0, typename TypeWrapper::CONSTTYPE& t1 = POCO_TYPEWRAPPER_DEFAULTVALUE(T1)): _data(t0, typename TypeListType::HeadType(t1, NullTypeList())) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; template struct Tuple { typedef TypeList Type; enum TupleLengthType { length = Type::length }; Tuple():_data() { } Tuple(typename TypeWrapper::CONSTTYPE& t0): _data(t0, NullTypeList()) { } template typename TypeGetter::ConstHeadType& get() const { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template typename TypeGetter::HeadType& get() { return Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data); } template void set(typename TypeGetter::ConstHeadType& val) { Getter::template get::HeadType, typename Type::HeadType, typename Type::TailType>(_data) = val; } bool operator == (const Tuple& other) const { return _data == other._data; } bool operator != (const Tuple& other) const { return !(_data == other._data); } bool operator < (const Tuple& other) const { return _data < other._data; } private: Type _data; }; } // namespace Poco #endif // Foundation_Tuple_INCLUDED