Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId > Class Template Reference

`#include <IWORKContainerContext.h>`

Inheritance diagram for libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >:

## Public Member Functions
| IWORKContainerContext (IWORKXMLParserState &state, std::deque< Type > &elements)
| IWORKContainerContext (IWORKXMLParserState &state, Dict_t &dict, std::deque< Type > &elements)
Public Member Functions inherited from libetonyek::IWORKXMLContextBase< Base, State, Collector >
| IWORKXMLContextBase (State &state)
template<typename T >
| IWORKXMLContextBase (State &state, const T &a)
State & | getState ()

## Protected Member Functions
IWORKXMLContextPtr_t | element (const int name) override
void | endOfElement () override
Protected Member Functions inherited from libetonyek::IWORKXMLContextBase< Base, State, Collector >
Collector & | getCollector () const
int | getToken (const char *const value) const
bool | isCollector () const

## Private Types
typedef std::unordered_map< ID_t, Type > | Dict_t

## Private Member Functions
void | handleRef ()
| IWORKContainerContext (IWORKContainerContext &)
IWORKContainerContext & | operator= (IWORKContainerContext &)

## Private Attributes
Dict_t *const | m_dict
boost::optional< ID_t > | m_ref
std::deque< Type > & | m_elements
Collector< Type, std::deque< Type > > | m_collector

## Additional Inherited Members
Protected Attributes inherited from libetonyek::IWORKXMLContextBase< Base, State, Collector >
State & | m_state

## Member Typedef Documentation

## ◆ Dict_t

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

typedef std::unordered_map<ID_t, Type> libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::Dict_t
| private

## Constructor & Destructor Documentation

## ◆ IWORKContainerContext() [1/3]

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::IWORKContainerContext | ( | IWORKXMLParserState & | state,
|  | std::deque< Type > & | elements
| ) |  |
| inline

## ◆ IWORKContainerContext() [2/3]

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::IWORKContainerContext | ( | IWORKXMLParserState & | state,
|  | Dict_t & | dict,
|  | std::deque< Type > & | elements
| ) |  |
| inline

## ◆ IWORKContainerContext() [3/3]

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::IWORKContainerContext | ( | IWORKContainerContext< Type, NestedParser, Collector, Id, RefId > & |  | ) |
| private

## Member Function Documentation

## ◆ element()

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

IWORKXMLContextPtr_t libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::element | ( | const int | name | ) |
| inline override protected

Referenced by libetonyek::IWORKMutableArrayElement< Type, NestedParser, Collector, Id, RefId >::element().

## ◆ endOfElement()

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

void libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::endOfElement | ( |  | ) |
| inline override protected

Referenced by libetonyek::IWORKMutableArrayElement< Type, NestedParser, Collector, Id, RefId >::endOfElement().

## ◆ handleRef()

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

void libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::handleRef | ( |  | ) |
| inline private

Referenced by libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::element(), and libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::endOfElement().

## ◆ operator=()

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

IWORKContainerContext& libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::operator= | ( | IWORKContainerContext< Type, NestedParser, Collector, Id, RefId > & |  | ) |
| private

## Member Data Documentation

## ◆ m_collector

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

Collector<Type, std::deque<Type> > libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::m_collector
| private

Referenced by libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::element(), and libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::endOfElement().

## ◆ m_dict

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

Dict_t* const libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::m_dict
| private

Referenced by libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::element(), libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::endOfElement(), and libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::handleRef().

## ◆ m_elements

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

std::deque<Type>& libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::m_elements
| private

Referenced by libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::handleRef().

## ◆ m_ref

template<typename Type , class NestedParser , template< typename T, class C > class Collector, unsigned Id, unsigned RefId = 0>

boost::optional<ID_t> libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::m_ref
| private

Referenced by libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::element(), libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::endOfElement(), and libetonyek::IWORKContainerContext< Type, NestedParser, Collector, Id, RefId >::handleRef().

The documentation for this class was generated from the following file:

- IWORKContainerContext.h