10 #ifndef IWORKCONTAINERCONTEXT_H_INCLUDED
11 #define IWORKCONTAINERCONTEXT_H_INCLUDED
16 #include <boost/optional.hpp>
26 template<
typename Type,
class NestedParser,
template<
typename T,
class C>
class Collector,
unsigned Id,
unsigned RefId = 0>
29 typedef std::unordered_map<ID_t, Type>
Dict_t;
60 else if ((RefId != 0) && (name == RefId))
64 ETONYEK_DEBUG_MSG((
"IWORKContainerContext::handleRef: find unknown element %d\n",
int(name)));
82 const typename Dict_t::const_iterator it =
m_dict->find(
get(
m_ref));
103 #endif // IWORKCONTAINERCONTEXT_H_INCLUDED
#define ETONYEK_DEBUG_MSG(M)
Definition: libetonyek_utils.h:54
Collector< Type, std::deque< Type > > m_collector
Definition: IWORKContainerContext.h:98
std::shared_ptr< IWORKXMLContext > IWORKXMLContextPtr_t
Definition: IWORKXMLContext.h:18
std::deque< Type > & m_elements
Definition: IWORKContainerContext.h:97
Definition: KEY1Token.h:51
std::unordered_map< ID_t, Type > Dict_t
Definition: IWORKContainerContext.h:29
Definition: IWORKToken.h:335
IWORKXMLContextPtr_t element(const int name) override
Definition: IWORKContainerContext.h:51
Dict_t *const m_dict
Definition: IWORKContainerContext.h:95
IWORKContainerContext(IWORKXMLParserState &state, std::deque< Type > &elements)
Definition: IWORKContainerContext.h:32
State & getState()
Definition: IWORKXMLContextBase.h:43
Definition: IWORKToken.h:696
const char * name
Definition: IWORKToken.cpp:43
IWORKContainerContext & operator=(IWORKContainerContext &)
void handleRef()
Definition: IWORKContainerContext.h:78
Definition: IWORKContainerContext.h:27
Definition: IWORKXMLContextBase.h:27
Definition: IWORKXMLParserState.h:31
boost::optional< ID_t > m_ref
Definition: IWORKContainerContext.h:96
IWORKContainerContext(IWORKXMLParserState &state, Dict_t &dict, std::deque< Type > &elements)
Definition: IWORKContainerContext.h:41
void endOfElement() override
Definition: IWORKContainerContext.h:69