Classes | Namespaces | Macros | Enumerations
XMLCollector.cpp File Reference
`#include <boost/optional.hpp>`
`#include <boost/static_assert.hpp>`
`#include <stack>`
`#include "libebook_utils.h"`
`#include "XMLCollector.h"`
`#include "EBOOKOutputElements.h"`

## Classes
struct | libebook::XMLCollector::State

## Namespaces
| libebook

## Macros
#define | TR_IMPL(c, e, n, a, r) {c, e, n, a, r}
#define | TR(c, e, a) TR_IMPL(c, e, c, a, false)
#define | TR_R(c, e, a) TR_IMPL(c, e, c, a, true)
#define | TR_NEW(c, e, n, a) TR_IMPL(c, e, n, a, false)
#define | TR_NEW_R(c, e, n, a) TR_IMPL(c, e, n, a, true)
#define | TR_ANY(c, e, a) TR_IMPL(c, e, c, a, false)
#define | TR_ANY_R(c, e, a) TR_IMPL(c, e, c, a, true)

## Enumerations
enum | libebook::@136::ContextType
enum | libebook::@136::EventType

## Macro Definition Documentation

## § TR

#define TR | ( |  | c,
|  |  | e,
|  |  | a
| ) |  | TR_IMPL(c, e, c, a, false)

## § TR_ANY

#define TR_ANY | ( |  | c,
|  |  | e,
|  |  | a
| ) |  | TR_IMPL(c, e, c, a, false)

## § TR_ANY_R

#define TR_ANY_R | ( |  | c,
|  |  | e,
|  |  | a
| ) |  | TR_IMPL(c, e, c, a, true)

## § TR_IMPL

#define TR_IMPL | ( |  | c,
|  |  | e,
|  |  | n,
|  |  | a,
|  |  | r
| ) |  | {c, e, n, a, r}

## § TR_NEW

#define TR_NEW | ( |  | c,
|  |  | e,
|  |  | n,
|  |  | a
| ) |  | TR_IMPL(c, e, n, a, false)

## § TR_NEW_R

#define TR_NEW_R | ( |  | c,
|  |  | e,
|  |  | n,
|  |  | a
| ) |  | TR_IMPL(c, e, n, a, true)

## § TR_R

#define TR_R | ( |  | c,
|  |  | e,
|  |  | a
| ) |  | TR_IMPL(c, e, c, a, true)

## Enumeration Type Documentation

## § ContextType

enum libebook::@136::ContextType

## § EventType

enum libebook::@136::EventType

## Variable Documentation

## § action

ActionFun_t action

## § artificial

bool artificial

## § context

ContextType context

Referenced by ebookXMLReadFromStream(), libebook::FB2Parser::parse(), and libebook::EBOOKHTMLParser::readTreeImpl().

## § continued

bool continued

Indicates that this is a continuation of an interrupted context.

It will not be added into output if it is empty.

## § event

EventType event

## § m_closed

bool m_closed
| private

## § m_closeFun

CloseFun_t m_closeFun
| private

## § m_continued

bool m_continued
| private

## § m_data

shared_ptr<XMLCollector::State> m_data
| private

## § m_dummy

bool m_dummy
| private

## § m_init

ContextType m_init
| private

## § m_open

bool m_open
| private

## § m_openFun

OpenFun_t m_openFun
| private

## § m_output

EBOOKOutputElements& m_output
| private

## § m_parent

const OutputHandlerPtr_t m_parent
| private

## § m_propList

RVNGPropertyList m_propList
| private

## § m_queue

EventQueue_t m_queue
| private

## § m_state

const shared_ptr<XMLCollector::State> m_state
| private

## § m_transitions

TransitionTable_t m_transitions
| private

## § newContext

ContextType newContext

## § output

OutputHandlerPtr_t output

## § repeat

bool repeat

## § restore

bool restore

Restore one (or more) contexts on close.

## § restoring

bool restoring

Indicate whether restoring should continue with another context.

In other words, means that this context is inside a list of contexts that should be restored together.

## § type

EventType type