Poco

template < class T0, class T1 = NullTypeList, class T2 = NullTypeList, class T3 = NullTypeList, class T4 = NullTypeList, class T5 = NullTypeList, class T6 = NullTypeList, class T7 = NullTypeList, class T8 = NullTypeList, class T9 = NullTypeList, class T10 = NullTypeList, class T11 = NullTypeList, class T12 = NullTypeList, class T13 = NullTypeList, class T14 = NullTypeList, class T15 = NullTypeList, class T16 = NullTypeList, class T17 = NullTypeList, class T18 = NullTypeList, class T19 = NullTypeList >

struct NamedTuple

Library: Foundation
Package: Core
Header: Poco/NamedTuple.h

Inheritance

Direct Base Classes: Tuple < T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19 >

All Base Classes: Tuple < T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19 >

Member Summary

Member Functions: get, getName, names, operator, operator !=, operator <, set, setName

Types

NameVec

typedef std::vector < std::string > NameVec;

NameVecPtr

typedef SharedPtr < NameVec > NameVecPtr;

TupleType

typedef Tuple < T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19 > TupleType;

Type

typedef typename Tuple < T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19 >::Type Type;

Constructors

NamedTuple inline

NamedTuple();

NamedTuple inline

NamedTuple(
    const NameVecPtr & rNames
);

NamedTuple inline

NamedTuple(
    typename TypeWrapper < T0 >::CONSTTYPE & t0,
    typename TypeWrapper < T1 >::CONSTTYPE & t1 = TypeWrapper < T1 >::TYPE (),
    typename TypeWrapper < T2 >::CONSTTYPE & t2 = TypeWrapper < T2 >::TYPE (),
    typename TypeWrapper < T3 >::CONSTTYPE & t3 = TypeWrapper < T3 >::TYPE (),
    typename TypeWrapper < T4 >::CONSTTYPE & t4 = TypeWrapper < T4 >::TYPE (),
    typename TypeWrapper < T5 >::CONSTTYPE & t5 = TypeWrapper < T5 >::TYPE (),
    typename TypeWrapper < T6 >::CONSTTYPE & t6 = TypeWrapper < T6 >::TYPE (),
    typename TypeWrapper < T7 >::CONSTTYPE & t7 = TypeWrapper < T7 >::TYPE (),
    typename TypeWrapper < T8 >::CONSTTYPE & t8 = TypeWrapper < T8 >::TYPE (),
    typename TypeWrapper < T9 >::CONSTTYPE & t9 = TypeWrapper < T9 >::TYPE (),
    typename TypeWrapper < T10 >::CONSTTYPE & t10 = TypeWrapper < T10 >::TYPE (),
    typename TypeWrapper < T11 >::CONSTTYPE & t11 = TypeWrapper < T11 >::TYPE (),
    typename TypeWrapper < T12 >::CONSTTYPE & t12 = TypeWrapper < T12 >::TYPE (),
    typename TypeWrapper < T13 >::CONSTTYPE & t13 = TypeWrapper < T13 >::TYPE (),
    typename TypeWrapper < T14 >::CONSTTYPE & t14 = TypeWrapper < T14 >::TYPE (),
    typename TypeWrapper < T15 >::CONSTTYPE & t15 = TypeWrapper < T15 >::TYPE (),
    typename TypeWrapper < T16 >::CONSTTYPE & t16 = TypeWrapper < T16 >::TYPE (),
    typename TypeWrapper < T17 >::CONSTTYPE & t17 = TypeWrapper < T17 >::TYPE (),
    typename TypeWrapper < T18 >::CONSTTYPE & t18 = TypeWrapper < T18 >::TYPE (),
    typename TypeWrapper < T19 >::CONSTTYPE & t19 = TypeWrapper < T19 >::TYPE ()
);

NamedTuple inline

NamedTuple(
    const NameVecPtr & rNames,
    typename TypeWrapper < T0 >::CONSTTYPE & t0,
    typename TypeWrapper < T1 >::CONSTTYPE & t1 = TypeWrapper < T1 >::TYPE (),
    typename TypeWrapper < T2 >::CONSTTYPE & t2 = TypeWrapper < T2 >::TYPE (),
    typename TypeWrapper < T3 >::CONSTTYPE & t3 = TypeWrapper < T3 >::TYPE (),
    typename TypeWrapper < T4 >::CONSTTYPE & t4 = TypeWrapper < T4 >::TYPE (),
    typename TypeWrapper < T5 >::CONSTTYPE & t5 = TypeWrapper < T5 >::TYPE (),
    typename TypeWrapper < T6 >::CONSTTYPE & t6 = TypeWrapper < T6 >::TYPE (),
    typename TypeWrapper < T7 >::CONSTTYPE & t7 = TypeWrapper < T7 >::TYPE (),
    typename TypeWrapper < T8 >::CONSTTYPE & t8 = TypeWrapper < T8 >::TYPE (),
    typename TypeWrapper < T9 >::CONSTTYPE & t9 = TypeWrapper < T9 >::TYPE (),
    typename TypeWrapper < T10 >::CONSTTYPE & t10 = TypeWrapper < T10 >::TYPE (),
    typename TypeWrapper < T11 >::CONSTTYPE & t11 = TypeWrapper < T11 >::TYPE (),
    typename TypeWrapper < T12 >::CONSTTYPE & t12 = TypeWrapper < T12 >::TYPE (),
    typename TypeWrapper < T13 >::CONSTTYPE & t13 = TypeWrapper < T13 >::TYPE (),
    typename TypeWrapper < T14 >::CONSTTYPE & t14 = TypeWrapper < T14 >::TYPE (),
    typename TypeWrapper < T15 >::CONSTTYPE & t15 = TypeWrapper < T15 >::TYPE (),
    typename TypeWrapper < T16 >::CONSTTYPE & t16 = TypeWrapper < T16 >::TYPE (),
    typename TypeWrapper < T17 >::CONSTTYPE & t17 = TypeWrapper < T17 >::TYPE (),
    typename TypeWrapper < T18 >::CONSTTYPE & t18 = TypeWrapper < T18 >::TYPE (),
    typename TypeWrapper < T19 >::CONSTTYPE & t19 = TypeWrapper < T19 >::TYPE ()
);

NamedTuple inline

NamedTuple(
    const std::string & n0,
    typename TypeWrapper < T0 >::CONSTTYPE & t0,
    const std::string & n1 = "B",
    typename TypeWrapper < T1 >::CONSTTYPE & t1 = TypeWrapper < T1 >::TYPE (),
    const std::string & n2 = "C",
    typename TypeWrapper < T2 >::CONSTTYPE & t2 = TypeWrapper < T2 >::TYPE (),
    const std::string & n3 = "D",
    typename TypeWrapper < T3 >::CONSTTYPE & t3 = TypeWrapper < T3 >::TYPE (),
    const std::string & n4 = "E",
    typename TypeWrapper < T4 >::CONSTTYPE & t4 = TypeWrapper < T4 >::TYPE (),
    const std::string & n5 = "F",
    typename TypeWrapper < T5 >::CONSTTYPE & t5 = TypeWrapper < T5 >::TYPE (),
    const std::string & n6 = "G",
    typename TypeWrapper < T6 >::CONSTTYPE & t6 = TypeWrapper < T6 >::TYPE (),
    const std::string & n7 = "H",
    typename TypeWrapper < T7 >::CONSTTYPE & t7 = TypeWrapper < T7 >::TYPE (),
    const std::string & n8 = "I",
    typename TypeWrapper < T8 >::CONSTTYPE & t8 = TypeWrapper < T8 >::TYPE (),
    const std::string & n9 = "J",
    typename TypeWrapper < T9 >::CONSTTYPE & t9 = TypeWrapper < T9 >::TYPE (),
    const std::string & n10 = "K",
    typename TypeWrapper < T10 >::CONSTTYPE & t10 = TypeWrapper < T10 >::TYPE (),
    const std::string & n11 = "L",
    typename TypeWrapper < T11 >::CONSTTYPE & t11 = TypeWrapper < T11 >::TYPE (),
    const std::string & n12 = "M",
    typename TypeWrapper < T12 >::CONSTTYPE & t12 = TypeWrapper < T12 >::TYPE (),
    const std::string & n13 = "N",
    typename TypeWrapper < T13 >::CONSTTYPE & t13 = TypeWrapper < T13 >::TYPE (),
    const std::string & n14 = "O",
    typename TypeWrapper < T14 >::CONSTTYPE & t14 = TypeWrapper < T14 >::TYPE (),
    const std::string & n15 = "P",
    typename TypeWrapper < T15 >::CONSTTYPE & t15 = TypeWrapper < T15 >::TYPE (),
    const std::string & n16 = "Q",
    typename TypeWrapper < T16 >::CONSTTYPE & t16 = TypeWrapper < T16 >::TYPE (),
    const std::string & n17 = "R",
    typename TypeWrapper < T17 >::CONSTTYPE & t17 = TypeWrapper < T17 >::TYPE (),
    const std::string & n18 = "S",
    typename TypeWrapper < T18 >::CONSTTYPE & t18 = TypeWrapper < T18 >::TYPE (),
    const std::string & n19 = "T",
    typename TypeWrapper < T19 >::CONSTTYPE & t19 = TypeWrapper < T19 >::TYPE ()
);

Member Functions

get inline

DynamicAny get(
    const std::string & name
) const;

get inline

template < int N > typename TypeGetter < N, Type >::ConstHeadType & get() const;

get inline

template < int N > typename TypeGetter < N, Type >::HeadType & get();

getName inline

const std::string & getName(
    std::size_t index
);

names inline

const NameVecPtr & names();

operator inline

DynamicAny operator[] (
    const std::string & name
) const;

operator inline

bool operator == (
    const NamedTuple & other
) const;

operator != inline

bool operator != (
    const NamedTuple & other
) const;

operator < inline

bool operator < (
    const NamedTuple & other
) const;

set inline

template < int N > void set(
    typename TypeGetter < N,
    Type >::ConstHeadType & val
);

setName inline

void setName(
    std::size_t index,
    const std::string & name
);