10#ifndef XMLTREENODE_H_INCLUDED
11#define XMLTREENODE_H_INCLUDED
17#include <boost/intrusive_ptr.hpp>
54 std::deque<QName>
ids;
XMLTreeNode::ConfigurationPtr_t config
Definition: EBOOKHTMLParser.cpp:177
string name
Definition: HTMLHelpStream.cpp:80
@ selected
Definition: EBOOKHTMLToken.h:247
@ p
Definition: EBOOKHTMLToken.h:116
@ lhs
Definition: EBOOKHTMLToken.h:290
@ rhs
Definition: EBOOKHTMLToken.h:309
Definition: BBeBCollector.cpp:19
void intrusive_ptr_add_ref(XMLTreeNode *const p)
Definition: XMLTreeNode.cpp:483
boost::intrusive_ptr< lwc_string > LWCStringPtr_t
Definition: libebook_libcss.h:27
bool operator==(const XMLTreeNode::QName &lhs, const XMLTreeNode::QName &rhs)
Definition: XMLTreeNode.cpp:440
void intrusive_ptr_release(XMLTreeNode *const p)
Definition: XMLTreeNode.cpp:488
boost::intrusive_ptr< XMLTreeNode > XMLTreeNodePtr_t
Definition: XMLTreeNode.h:24
bool caselessEqual(const XMLTreeNode::QName &lhs, const XMLTreeNode::QName &rhs)
Definition: XMLTreeNode.cpp:450
bool operator!=(const XMLTreeNode::QName &lhs, const XMLTreeNode::QName &rhs)
Definition: XMLTreeNode.cpp:445
Definition: XMLTreeNode.h:80
QName qname
Definition: XMLTreeNode.h:81
AttributeData()
Definition: XMLTreeNode.cpp:352
bool idSet
Definition: XMLTreeNode.h:84
int id
Definition: XMLTreeNode.h:83
LWCStringPtr_t value
Definition: XMLTreeNode.h:82
Definition: XMLTreeNode.h:50
bool caseless
Definition: XMLTreeNode.h:51
std::deque< QName > classes
Definition: XMLTreeNode.h:53
std::deque< LinkId_t > links
A list of element / attribute pairs representing a "link".
Definition: XMLTreeNode.h:62
Configuration(bool caseless_=false)
Definition: XMLTreeNode.cpp:329
std::deque< QName > ids
Definition: XMLTreeNode.h:54
std::deque< QName > langs
Definition: XMLTreeNode.h:55
Definition: XMLTreeNode.h:70
int id
Definition: XMLTreeNode.h:72
QName qname
Definition: XMLTreeNode.h:71
ElementData()
Definition: XMLTreeNode.cpp:338
bool idSet
Definition: XMLTreeNode.h:73
Definition: XMLTreeNode.h:39
LWCStringPtr_t ns
Definition: XMLTreeNode.h:41
QName()
Definition: XMLTreeNode.cpp:317
LWCStringPtr_t name
Definition: XMLTreeNode.h:40
Definition: XMLTreeNode.h:28
XMLTreeNodePtr_t parent
Definition: XMLTreeNode.h:102
NodeType type
Definition: XMLTreeNode.h:95
XMLTreeNodePtr_t insertChildBefore(const XMLTreeNodePtr_t &child, const XMLTreeNodePtr_t &selected)
Definition: XMLTreeNode.cpp:410
XMLTreeNode & operator=(const XMLTreeNode &)
XMLTreeNode(NodeType nodeType, const ConfigurationPtr_t &config=ConfigurationPtr_t())
Definition: XMLTreeNode.cpp:376
ConfigurationPtr_t configuration
Definition: XMLTreeNode.h:96
std::shared_ptr< Configuration > ConfigurationPtr_t
Definition: XMLTreeNode.h:67
std::string text
Definition: XMLTreeNode.h:100
int refcount
Definition: XMLTreeNode.h:112
void removeChild(const XMLTreeNodePtr_t &child)
Definition: XMLTreeNode.cpp:416
XMLTreeNodePtr_t last
Definition: XMLTreeNode.h:108
ElementData self
Definition: XMLTreeNode.h:98
void transferChildren(const XMLTreeNodePtr_t &newParent)
Definition: XMLTreeNode.cpp:422
XMLTreeNodePtr_t appendChild(const XMLTreeNodePtr_t &child)
Definition: XMLTreeNode.cpp:404
XMLTreeNodePtr_t first
Definition: XMLTreeNode.h:107
XMLTreeNodePtr_t prev
Definition: XMLTreeNode.h:104
std::deque< AttributeData > attributes
Definition: XMLTreeNode.h:99
size_t elements
Definition: XMLTreeNode.h:110
bool hasChildren(bool ignoreText=false) const
Definition: XMLTreeNode.cpp:434
void addAttributes(const std::deque< AttributeData > &attrs)
Definition: XMLTreeNode.cpp:428
~XMLTreeNode()
Definition: XMLTreeNode.cpp:392
NodeType
Definition: XMLTreeNode.h:30
@ NODE_TYPE_ELEMENT
Definition: XMLTreeNode.h:32
@ NODE_TYPE_TEXT
Definition: XMLTreeNode.h:33
@ NODE_TYPE_DOCTYPE
Definition: XMLTreeNode.h:35
@ NODE_TYPE_DOCUMENT
Definition: XMLTreeNode.h:31
@ NODE_TYPE_COMMENT
Definition: XMLTreeNode.h:34
std::pair< QName, QName > LinkId_t
Definition: XMLTreeNode.h:47
XMLTreeNodePtr_t next
Definition: XMLTreeNode.h:105
XMLTreeNodePtr_t clone(bool deep=false) const
Definition: XMLTreeNode.cpp:398
XMLTreeNode(const XMLTreeNode &)