Go to the documentation of this file.
10 #ifndef XMLTREEWALKER_H_INCLUDED
11 #define XMLTREEWALKER_H_INCLUDED
16 #include <boost/intrusive_ptr.hpp>
18 #include <librevenge-stream/librevenge-stream.h>
53 const std::string
getName()
const;
56 const std::string &
getText()
const;
81 const std::string
getName()
const;
159 struct iterator_traits<
libebook::XMLTreeWalker::AttributeIterator>
169 struct iterator_traits<
libebook::XMLTreeWalker::Iterator>
180 #endif // XMLTREEWALKER_H_INCLUDED
Definition: XMLTreeWalker.h:72
size_t len
Definition: EBOOKHTMLParser.cpp:53
libebook::XMLTreeWalker * pointer_type
Definition: XMLTreeWalker.h:174
libebook::XMLTreeWalker::Attribute * pointer_type
Definition: XMLTreeWalker.h:164
@ link
Definition: EBOOKHTMLToken.h:99
boost::shared_ptr< css_stylesheet > CSSStylesheetPtr_t
Definition: libebook_libcss.h:22
Definition: XMLTreeWalker.h:28
const XMLTreeNodePtr_t m_node
Definition: XMLTreeWalker.h:115
const std::string getName() const
Definition: XMLTreeWalker.cpp:1392
Definition: XMLTreeWalker.h:99
bool hasParent() const
Definition: XMLTreeWalker.cpp:1249
Iterator begin() const
Definition: XMLTreeWalker.cpp:1233
bool isText() const
Definition: XMLTreeWalker.cpp:1277
Definition: XMLTreeNode.h:28
std::deque< XMLStylesheet > XMLStylesheets_t
Definition: XMLStylesheet.h:51
bool operator==(const XMLTreeWalker::Attribute &rhs) const
Definition: XMLTreeWalker.cpp:1407
XMLTreeNodePtr_t m_impl
Definition: XMLTreeWalker.h:67
@ NODE_TYPE_DOCUMENT
Definition: XMLTreeNode.h:31
std::size_t m_index
Definition: XMLTreeWalker.h:116
const XMLTreeWalker * operator->() const
Definition: XMLTreeWalker.cpp:1500
boost::shared_ptr< css_select_ctx > CSSSelectCtxPtr_t
Definition: libebook_libcss.h:23
const XMLTreeWalker getParent() const
Definition: XMLTreeWalker.cpp:1256
@ SOURCE_UA
Definition: XMLStylesheet.h:28
@ SOURCE_USER
Definition: XMLStylesheet.h:29
std::size_t m_index
Definition: XMLTreeWalker.h:92
Iterator & operator++()
Definition: XMLTreeWalker.cpp:1475
boost::shared_ptr< css_select_results > CSSSelectResultsPtr_t
Definition: libebook_libcss.h:24
Definition: CHMParser.cpp:21
std::ptrdiff_t difference_type
Definition: XMLTreeWalker.h:162
LWCStringPtr_t name
Definition: XMLTreeNode.h:40
CSSSelectResultsPtr_t getStyle(const XMLStylesheets_t &sheets, bool quirks=false, const CSSStylesheetPtr_t &inlineSheet=CSSStylesheetPtr_t()) const
Definition: XMLTreeWalker.cpp:1525
int id
Definition: XMLTreeNode.h:83
libebook::XMLTreeWalker::Attribute & reference_type
Definition: XMLTreeWalker.h:165
const std::string getName() const
Definition: XMLTreeWalker.cpp:1307
const XMLTreeWalker & operator*() const
Definition: XMLTreeWalker.cpp:1493
const std::string getValue() const
Definition: XMLTreeWalker.cpp:1402
XMLTreeNodePtr_t m_node
Definition: XMLTreeWalker.h:91
@ value
Definition: EBOOKHTMLToken.h:263
void intrusive_ptr_add_ref(XMLTreeNode *const p)
Definition: XMLTreeNode.cpp:484
bool operator!=(const XMLTreeNode::QName &lhs, const XMLTreeNode::QName &rhs)
Definition: XMLTreeNode.cpp:446
const string & m_str
Definition: XMLTreeWalker.cpp:145
LWCStringPtr_t value
Definition: XMLTreeNode.h:82
const AttributeIterator endAttributes() const
Definition: XMLTreeWalker.cpp:1347
@ rhs
Definition: EBOOKHTMLToken.h:311
int getValueId() const
Definition: XMLTreeWalker.cpp:1383
@ NODE_TYPE_TEXT
Definition: XMLTreeNode.h:33
@ i
Definition: EBOOKHTMLToken.h:88
bool hasAttributes() const
Definition: XMLTreeWalker.cpp:1331
bool operator==(const XMLTreeNode::QName &lhs, const XMLTreeNode::QName &rhs)
Definition: XMLTreeNode.cpp:441
const std::string getNamespace() const
Definition: XMLTreeWalker.cpp:1397
AttributeIterator beginAttributes() const
Definition: XMLTreeWalker.cpp:1339
XMLTreeWalker(const XMLTreeNodePtr_t &p, TokenizerFun_t tok=0)
Definition: XMLTreeWalker.cpp:1355
TokenizerFun_t m_tok
Definition: XMLTreeWalker.h:118
std::ptrdiff_t difference_type
Definition: XMLTreeWalker.h:172
Attribute m_current
Definition: XMLTreeWalker.h:117
Definition: XMLTreeWalker.h:124
bool isDocument() const
Definition: XMLTreeWalker.cpp:1263
libebook::XMLTreeWalker value_type
Definition: XMLTreeWalker.h:171
QName qname
Definition: XMLTreeNode.h:81
int getId() const
Definition: XMLTreeWalker.cpp:1361
const char * str
Definition: EBOOKHTMLParser.cpp:52
@ p
Definition: EBOOKHTMLToken.h:118
Attribute(const XMLTreeNodePtr_t &node, std::size_t index, TokenizerFun_t tok)
Definition: XMLTreeWalker.cpp:1412
HUBBUBParserPtr_t wrap(hubbub_parser *const p)
Definition: libebook_hubbub.cpp:15
const Iterator end() const
Definition: XMLTreeWalker.cpp:1241
int(* TokenizerFun_t)(const char *, std::size_t)
Definition: XMLTreeWalker.h:34
const XMLTreeNode::QName & m_qname
Definition: XMLTreeWalker.cpp:165
const std::string & getText() const
Definition: XMLTreeWalker.cpp:1323
@ v
Definition: FB2Token.h:99
string name
Definition: CHMStream.cpp:80
TokenizerFun_t m_tok
Definition: XMLTreeWalker.h:93
Iterator(const XMLTreeNodePtr_t &node, TokenizerFun_t tok)
Definition: XMLTreeWalker.cpp:1512
std::forward_iterator_tag iterator_category
Definition: XMLTreeWalker.h:173
TokenizerFun_t m_tok
Definition: XMLTreeWalker.h:68
bool idSet
Definition: XMLTreeNode.h:84
LWCStringPtr_t ns
Definition: XMLTreeNode.h:41
@ lang
Definition: EBOOKHTMLToken.h:207
XMLTreeNodePtr_t m_node
Definition: XMLTreeWalker.h:140
int getId() const
Definition: XMLTreeWalker.cpp:1284
Definition: XMLTreeWalker.h:153
@ lhs
Definition: EBOOKHTMLToken.h:292
XMLTreeWalker m_current
Definition: XMLTreeWalker.h:141
libebook::XMLTreeWalker & reference_type
Definition: XMLTreeWalker.h:175
@ NODE_TYPE_ELEMENT
Definition: XMLTreeNode.h:32
AttributeIterator(const XMLTreeNodePtr_t &node, TokenizerFun_t tok, bool end=false)
Definition: XMLTreeWalker.cpp:1461
std::forward_iterator_tag iterator_category
Definition: XMLTreeWalker.h:163
Definition: XMLTreeNode.h:80
const Attribute * operator->() const
Definition: XMLTreeWalker.cpp:1449
bool isElement() const
Definition: XMLTreeWalker.cpp:1270
bool operator==(const XMLTreeWalker::AttributeIterator &rhs) const
Definition: XMLTreeWalker.cpp:1456
const bool m_caseless
Definition: XMLTreeWalker.cpp:146
@ size
Definition: EBOOKHTMLToken.h:251
boost::intrusive_ptr< XMLTreeNode > XMLTreeNodePtr_t
Definition: XMLTreeNode.h:24
bool empty() const
Definition: XMLTreeWalker.cpp:1225
const Attribute & operator*() const
Definition: XMLTreeWalker.cpp:1442
@ s
Definition: EBOOKHTMLToken.h:127
@ SOURCE_AUTHOR
Definition: XMLStylesheet.h:30
bool caselessEqual(const XMLTreeNode::QName &lhs, const XMLTreeNode::QName &rhs)
Definition: XMLTreeNode.cpp:451
const std::string getNamespace() const
Definition: XMLTreeWalker.cpp:1315
@ match
Definition: FB2Token.h:114
AttributeIterator & operator++()
Definition: XMLTreeWalker.cpp:1424
void intrusive_ptr_release(XMLTreeNode *const p)
Definition: XMLTreeNode.cpp:489
TokenizerFun_t m_tok
Definition: XMLTreeWalker.h:142
Definition: libebook_utils.h:132
libebook::XMLTreeWalker::Attribute value_type
Definition: XMLTreeWalker.h:161
boost::intrusive_ptr< lwc_string > LWCStringPtr_t
Definition: libebook_libcss.h:26
bool operator==(const XMLTreeWalker::Iterator &rhs) const
Definition: XMLTreeWalker.cpp:1507
Generated for libe-book by
doxygen 1.8.18