Poco::Dynamic

template < typename K >

class Struct

Library: Foundation
Package: Dynamic
Header: Poco/Dynamic/Struct.h

Description

Struct allows to define a named collection of Var objects.

Member Summary

Member Functions: begin, contains, empty, end, erase, find, insert, members, operator [], size

Types

ConstIterator

typedef typename Data::const_iterator ConstIterator;

Data

typedef typename std::map < K, Var > Data;

InsRetVal

typedef typename std::pair < typename Struct < K >::Iterator, bool > InsRetVal;

Iterator

typedef typename Data::iterator Iterator;

NameSet

typedef typename std::set < K > NameSet;

SizeType

typedef typename Struct < K >::Data::size_type SizeType;

ValueType

typedef typename Struct < K >::Data::value_type ValueType;

Constructors

Struct inline

Struct();

Creates an empty Struct

Struct inline

Struct(
    const Data & val
);

Creates the Struct from the given value.

Struct inline

template < typename T > Struct(
    const std::map < K, T > & val
);

Destructor

~Struct virtual inline

virtual ~Struct();

Destroys the Struct.

Member Functions

begin inline

inline Iterator begin();

Returns the begin iterator for the Struct

begin inline

inline ConstIterator begin() const;

Returns the begin const iterator for the Struct

contains inline

inline bool contains(
    const K & name
) const;

Returns true if the Struct contains a member with the given name

empty inline

inline bool empty() const;

Returns true if the Struct doesn't contain any members

end inline

inline Iterator end();

Returns the end iterator for the Struct

end inline

inline ConstIterator end() const;

Returns the end const iterator for the Struct

erase inline

inline SizeType erase(
    const K & key
);

Erases the element if found, returns number of elements deleted

erase inline

inline void erase(
    Iterator & it
);

Erases the element at the given position

find inline

inline Iterator find(
    const K & name
);

Returns an iterator, pointing to the <name,Var> pair containing the element, or it returns end() if the member was not found

find inline

inline ConstIterator find(
    const K & name
) const;

Returns a const iterator, pointing to the <name,Var> pair containing the element, or it returns end() if the member was not found

insert inline

inline InsRetVal insert(
    const K & key,
    const Var & value
);

Inserts a <name, Var> pair into the Struct, returns a pair containing the iterator and a boolean which indicates success or not (is true, when insert succeeded, false, when already another element was present, in this case Iterator points to that other element)

insert inline

inline InsRetVal insert(
    const ValueType & aPair
);

Inserts a <name, Var> pair into the Struct, returns a pair containing the iterator and a boolean which indicates success or not (is true, when insert succeeded, false, when already another element was present, in this case Iterator points to that other element)

members inline

inline NameSet members() const;

Returns a sorted collection containing all member names

operator [] inline

inline Var & operator[] (
    const K & name
);

Returns the Var with the given name, creates an entry if not found.

operator [] inline

const Var & operator[] (
    const K & name
) const;

Returns the Var with the given name, throws a NotFoundException if the data member is not found.

size inline

SizeType size() const;

Returns the number of members the Struct contains