XMLNode is a base class for every object that is in the XML Document Object Model (DOM), except XMLAttributes. ...
#include <tinyxml2.h>
Veřejné metody | |
const XMLDocument * | GetDocument () const |
Get the XMLDocument that owns this XMLNode. ... | |
XMLDocument * | GetDocument () |
Get the XMLDocument that owns this XMLNode. ... | |
virtual XMLElement * | ToElement () |
Safely cast to an Element, or null. ... | |
virtual XMLText * | ToText () |
Safely cast to Text, or null. ... | |
virtual XMLComment * | ToComment () |
Safely cast to a Comment, or null. ... | |
virtual XMLDocument * | ToDocument () |
Safely cast to a Document, or null. ... | |
virtual XMLDeclaration * | ToDeclaration () |
Safely cast to a Declaration, or null. ... | |
virtual XMLUnknown * | ToUnknown () |
Safely cast to an Unknown, or null. ... | |
virtual const XMLElement * | ToElement () const |
virtual const XMLText * | ToText () const |
virtual const XMLComment * | ToComment () const |
virtual const XMLDocument * | ToDocument () const |
virtual const XMLDeclaration * | ToDeclaration () const |
virtual const XMLUnknown * | ToUnknown () const |
const char * | Value () const |
The meaning of 'value' changes for the specific type. ... | |
void | SetValue (const char *val, bool staticMem=false) |
Set the Value of an XML node. ... | |
const XMLNode * | Parent () const |
Get the parent of this node on the DOM. ... | |
XMLNode * | Parent () |
bool | NoChildren () const |
Returns true if this node has no children. ... | |
const XMLNode * | FirstChild () const |
Get the first child node, or null if none exists. ... | |
XMLNode * | FirstChild () |
const XMLElement * | FirstChildElement (const char *value=0) const |
Get the first child element, or optionally the first child element with the specified name. ... | |
XMLElement * | FirstChildElement (const char *value=0) |
const XMLNode * | LastChild () const |
Get the last child node, or null if none exists. ... | |
XMLNode * | LastChild () |
const XMLElement * | LastChildElement (const char *value=0) const |
Get the last child element or optionally the last child element with the specified name. ... | |
XMLElement * | LastChildElement (const char *value=0) |
const XMLNode * | PreviousSibling () const |
Get the previous (left) sibling node of this node. ... | |
XMLNode * | PreviousSibling () |
const XMLElement * | PreviousSiblingElement (const char *value=0) const |
Get the previous (left) sibling element of this node, with an optionally supplied name. ... | |
XMLElement * | PreviousSiblingElement (const char *value=0) |
const XMLNode * | NextSibling () const |
Get the next (right) sibling node of this node. ... | |
XMLNode * | NextSibling () |
const XMLElement * | NextSiblingElement (const char *value=0) const |
Get the next (right) sibling element of this node, with an optionally supplied name. ... | |
XMLElement * | NextSiblingElement (const char *value=0) |
XMLNode * | InsertEndChild (XMLNode *addThis) |
Add a child node as the last (right) child. ... | |
XMLNode * | LinkEndChild (XMLNode *addThis) |
XMLNode * | InsertFirstChild (XMLNode *addThis) |
Add a child node as the first (left) child. ... | |
XMLNode * | InsertAfterChild (XMLNode *afterThis, XMLNode *addThis) |
Add a node after the specified child node. ... | |
void | DeleteChildren () |
Delete all the children of this node. ... | |
void | DeleteChild (XMLNode *node) |
Delete a child of this node. ... | |
virtual XMLNode * | ShallowClone (XMLDocument *document) const =0 |
Make a copy of this node, but not its children. ... | |
virtual bool | ShallowEqual (const XMLNode *compare) const =0 |
Test if 2 nodes are the same, but don't test children. ... | |
virtual bool | Accept (XMLVisitor *visitor) const =0 |
Accept a hierarchical visit of the nodes in the TinyXML-2 DOM. ... | |
virtual char * | ParseDeep (char *, StrPair *) |
Chráněné metody | |
XMLNode (XMLDocument *) | |
virtual | ~XMLNode () |
XMLNode (const XMLNode &) | |
XMLNode & | operator= (const XMLNode &) |
Chráněné atributy | |
XMLDocument * | _document |
XMLNode * | _parent |
StrPair | _value |
XMLNode * | _firstChild |
XMLNode * | _lastChild |
XMLNode * | _prev |
XMLNode * | _next |
Privátní metody | |
void | Unlink (XMLNode *child) |
Privátní atributy | |
MemPool * | _memPool |
Friends | |
class | XMLDocument |
class | XMLElement |
XMLNode is a base class for every object that is in the XML Document Object Model (DOM), except XMLAttributes.
Nodes have siblings, a parent, and children which can be navigated. A node is always in a XMLDocument. The type of a XMLNode can be queried, and it can be cast to its more defined type.
A XMLDocument allocates memory for all its Nodes. When the XMLDocument gets deleted, all its Nodes will also be deleted.
A Document can contain: Element (container or leaf) Comment (leaf) Unknown (leaf) Declaration( leaf ) An Element can contain: Element (container or leaf) Text (leaf) Attributes (not on tree) Comment (leaf) Unknown (leaf)
Definice je uvedena na řádku 579 v souboru tinyxml2.h.
|
protected |
Definice je uvedena na řádku 589 v souboru tinyxml2.cpp.
|
protectedvirtual |
Definice je uvedena na řádku 599 v souboru tinyxml2.cpp.
Odkazuje se na _parent, DeleteChildren() a Unlink().
|
protected |
|
pure virtual |
Accept a hierarchical visit of the nodes in the TinyXML-2 DOM.
Every node in the XML tree will be conditionally visited and the host will be called back via the XMLVisitor interface.
This is essentially a SAX interface for TinyXML-2. (Note however it doesn't re-parse the XML for the callbacks, so the performance of TinyXML-2 is unchanged by using this interface versus any other.)
The interface has been based on ideas from:
Which are both good references for "visiting".
An example of using Accept():
XMLPrinter printer; tinyxmlDoc.Accept( &printer ); const char* xmlcstr = printer.CStr();
Implementováno v tinyxml2::XMLDocument, tinyxml2::XMLElement, tinyxml2::XMLUnknown, tinyxml2::XMLDeclaration, tinyxml2::XMLComment a tinyxml2::XMLText.
void tinyxml2::XMLNode::DeleteChild | ( | XMLNode * | node | ) |
Delete a child of this node.
Definice je uvedena na řádku 651 v souboru tinyxml2.cpp.
Odkazuje se na _parent, DELETE_NODE a TIXMLASSERT.
Používá se v tinyxml2::XMLDocument::DeleteNode().
void tinyxml2::XMLNode::DeleteChildren | ( | ) |
Delete all the children of this node.
Definice je uvedena na řádku 619 v souboru tinyxml2.cpp.
Odkazuje se na _firstChild, _lastChild, DELETE_NODE a Unlink().
Používá se v tinyxml2::XMLDocument::Clear(), tinyxml2::XMLDocument::~XMLDocument() a ~XMLNode().
|
inline |
Get the first child node, or null if none exists.
Definice je uvedena na řádku 671 v souboru tinyxml2.h.
Používá se v tinyxml2::XMLElement::Accept(), tinyxml2::XMLDocument::Accept(), tinyxml2::XMLElement::GetText(), tinyxml2::XMLElement::QueryBoolText(), tinyxml2::XMLElement::QueryDoubleText(), tinyxml2::XMLElement::QueryFloatText(), tinyxml2::XMLElement::QueryIntText(), tinyxml2::XMLElement::QueryUnsignedText(), gelibspace::Stream::relink_downF(), gelibspace::XP_give_unique_expected_elem() a gelibspace::XP_giveDAtext().
|
inline |
Definice je uvedena na řádku 675 v souboru tinyxml2.h.
const XMLElement * tinyxml2::XMLNode::FirstChildElement | ( | const char * | value = 0 | ) | const |
Get the first child element, or optionally the first child element with the specified name.
Definice je uvedena na řádku 730 v souboru tinyxml2.cpp.
Odkazuje se na _firstChild, _next, tinyxml2::XMLElement::Name(), tinyxml2::XMLUtil::StringEqual() a tinyxml2::XMLElement::ToElement().
|
inline |
Definice je uvedena na řádku 684 v souboru tinyxml2.h.
|
inline |
Get the XMLDocument that owns this XMLNode.
Definice je uvedena na řádku 586 v souboru tinyxml2.h.
Používá se v gelibspace::Stream::close() a gelibspace::Stream::tix_doc().
|
inline |
Get the XMLDocument that owns this XMLNode.
Definice je uvedena na řádku 590 v souboru tinyxml2.h.
Add a node after the specified child node.
Definice je uvedena na řádku 707 v souboru tinyxml2.cpp.
Odkazuje se na _memPool, _next, _parent, _prev, InsertEndChild(), tinyxml2::MemPool::SetTracked() a TIXMLASSERT.
Add a child node as the last (right) child.
Definice je uvedena na řádku 658 v souboru tinyxml2.cpp.
Odkazuje se na _firstChild, _lastChild, _memPool, _next, _parent, _prev, tinyxml2::MemPool::SetTracked() a TIXMLASSERT.
Používá se v InsertAfterChild() a ParseDeep().
Add a child node as the first (left) child.
Definice je uvedena na řádku 682 v souboru tinyxml2.cpp.
Odkazuje se na _firstChild, _lastChild, _memPool, _next, _parent, _prev, tinyxml2::MemPool::SetTracked() a TIXMLASSERT.
|
inline |
Get the last child node, or null if none exists.
Definice je uvedena na řádku 689 v souboru tinyxml2.h.
Používá se v gelibspace::Stream::relink_downL().
|
inline |
Definice je uvedena na řádku 693 v souboru tinyxml2.h.
const XMLElement * tinyxml2::XMLNode::LastChildElement | ( | const char * | value = 0 | ) | const |
Get the last child element or optionally the last child element with the specified name.
Definice je uvedena na řádku 744 v souboru tinyxml2.cpp.
Odkazuje se na _lastChild, _prev, tinyxml2::XMLElement::Name(), tinyxml2::XMLUtil::StringEqual() a tinyxml2::XMLElement::ToElement().
|
inline |
Definice je uvedena na řádku 702 v souboru tinyxml2.h.
Definice je uvedena na řádku 743 v souboru tinyxml2.h.
|
inline |
Get the next (right) sibling node of this node.
Definice je uvedena na řádku 723 v souboru tinyxml2.h.
Používá se v tinyxml2::XMLElement::Accept(), tinyxml2::XMLDocument::Accept(), gelibspace::Stream::relink_next(), gelibspace::Stream::skip_commnet(), tinyxml2::XMLPrinter::Visit(), gelibspace::XP_give_unique_expected_elem() a gelibspace::XP_giveDAtext().
|
inline |
Definice je uvedena na řádku 727 v souboru tinyxml2.h.
const XMLElement * tinyxml2::XMLNode::NextSiblingElement | ( | const char * | value = 0 | ) | const |
Get the next (right) sibling element of this node, with an optionally supplied name.
Definice je uvedena na řádku 758 v souboru tinyxml2.cpp.
Odkazuje se na _next, tinyxml2::XMLUtil::StringEqual() a tinyxml2::XMLElement::ToElement().
|
inline |
Definice je uvedena na řádku 734 v souboru tinyxml2.h.
|
inline |
Returns true if this node has no children.
Definice je uvedena na řádku 666 v souboru tinyxml2.h.
|
inline |
Get the parent of this node on the DOM.
Definice je uvedena na řádku 657 v souboru tinyxml2.h.
Používá se v gelibspace::Stream::relink_up().
|
inline |
Definice je uvedena na řádku 661 v souboru tinyxml2.h.
|
virtual |
Reimplementováno v tinyxml2::XMLElement, tinyxml2::XMLUnknown, tinyxml2::XMLDeclaration, tinyxml2::XMLComment a tinyxml2::XMLText.
Definice je uvedena na řádku 782 v souboru tinyxml2.cpp.
Odkazuje se na _document, _memPool, _value, tinyxml2::XMLElement::CLOSING, tinyxml2::XMLElement::ClosingType(), DELETE_NODE, tinyxml2::StrPair::Empty(), tinyxml2::XMLDocument::Error(), tinyxml2::StrPair::GetStr(), tinyxml2::XMLDocument::Identify(), InsertEndChild(), tinyxml2::XMLElement::OPEN, ParseDeep(), tinyxml2::XMLDocument::SetError(), tinyxml2::MemPool::SetTracked(), tinyxml2::XMLUtil::StringEqual(), ToElement(), Value(), tinyxml2::XML_ERROR_MISMATCHED_ELEMENT a tinyxml2::XML_ERROR_PARSING.
Používá se v tinyxml2::XMLDocument::LoadFile(), tinyxml2::XMLDocument::Parse(), ParseDeep() a tinyxml2::XMLElement::ParseDeep().
|
inline |
Get the previous (left) sibling node of this node.
Definice je uvedena na řádku 707 v souboru tinyxml2.h.
Používá se v gelibspace::Stream::relink_prev().
|
inline |
Definice je uvedena na řádku 711 v souboru tinyxml2.h.
const XMLElement * tinyxml2::XMLNode::PreviousSiblingElement | ( | const char * | value = 0 | ) | const |
Get the previous (left) sibling element of this node, with an optionally supplied name.
Definice je uvedena na řádku 770 v souboru tinyxml2.cpp.
Odkazuje se na _prev, tinyxml2::XMLUtil::StringEqual() a tinyxml2::XMLElement::ToElement().
|
inline |
Definice je uvedena na řádku 718 v souboru tinyxml2.h.
void tinyxml2::XMLNode::SetValue | ( | const char * | val, |
bool | staticMem = false |
||
) |
Set the Value of an XML node.
Definice je uvedena na řádku 608 v souboru tinyxml2.cpp.
Odkazuje se na _value, tinyxml2::StrPair::SetInternedStr() a tinyxml2::StrPair::SetStr().
Používá se v tinyxml2::XMLDocument::NewComment(), tinyxml2::XMLDocument::NewDeclaration(), tinyxml2::XMLDocument::NewText() a tinyxml2::XMLDocument::NewUnknown().
|
pure virtual |
Make a copy of this node, but not its children.
You may pass in a Document pointer that will be the owner of the new Node. If the 'document' is null, then the node returned will be allocated from the current Document. (this->GetDocument())
Note: if called on a XMLDocument, this will return null.
Implementováno v tinyxml2::XMLDocument, tinyxml2::XMLElement, tinyxml2::XMLUnknown, tinyxml2::XMLDeclaration, tinyxml2::XMLComment a tinyxml2::XMLText.
|
pure virtual |
Test if 2 nodes are the same, but don't test children.
The 2 nodes do not need to be in the same Document.
Note: if called on a XMLDocument, this will return false.
Implementováno v tinyxml2::XMLDocument, tinyxml2::XMLElement, tinyxml2::XMLUnknown, tinyxml2::XMLDeclaration, tinyxml2::XMLComment a tinyxml2::XMLText.
|
inlinevirtual |
Safely cast to a Comment, or null.
Reimplementováno v tinyxml2::XMLComment.
Definice je uvedena na řádku 603 v souboru tinyxml2.h.
Používá se v tinyxml2::XMLComment::ShallowEqual() a gelibspace::Stream::skip_commnet().
|
inlinevirtual |
Reimplementováno v tinyxml2::XMLComment.
Definice je uvedena na řádku 625 v souboru tinyxml2.h.
|
inlinevirtual |
Safely cast to a Declaration, or null.
Reimplementováno v tinyxml2::XMLDeclaration.
Definice je uvedena na řádku 611 v souboru tinyxml2.h.
Používá se v tinyxml2::XMLDeclaration::ShallowEqual().
|
inlinevirtual |
Reimplementováno v tinyxml2::XMLDeclaration.
Definice je uvedena na řádku 631 v souboru tinyxml2.h.
|
inlinevirtual |
Safely cast to a Document, or null.
Reimplementováno v tinyxml2::XMLDocument.
Definice je uvedena na řádku 607 v souboru tinyxml2.h.
|
inlinevirtual |
Reimplementováno v tinyxml2::XMLDocument.
Definice je uvedena na řádku 628 v souboru tinyxml2.h.
|
inlinevirtual |
Safely cast to an Element, or null.
Reimplementováno v tinyxml2::XMLElement.
Definice je uvedena na řádku 595 v souboru tinyxml2.h.
Používá se v ParseDeep(), tinyxml2::XMLElement::ShallowEqual(), gelibspace::Stream::tixel(), gelibspace::XP_check_expected_attribute(), gelibspace::XP_give_unique_expected_elem() a gelibspace::XP_giveDAtext().
|
inlinevirtual |
Reimplementováno v tinyxml2::XMLElement.
Definice je uvedena na řádku 619 v souboru tinyxml2.h.
|
inlinevirtual |
Safely cast to Text, or null.
Reimplementováno v tinyxml2::XMLText.
Definice je uvedena na řádku 599 v souboru tinyxml2.h.
Používá se v tinyxml2::XMLElement::GetText(), tinyxml2::XMLElement::QueryBoolText(), tinyxml2::XMLElement::QueryDoubleText(), tinyxml2::XMLElement::QueryFloatText(), tinyxml2::XMLElement::QueryIntText(), tinyxml2::XMLElement::QueryUnsignedText() a tinyxml2::XMLText::ShallowEqual().
|
inlinevirtual |
Reimplementováno v tinyxml2::XMLText.
Definice je uvedena na řádku 622 v souboru tinyxml2.h.
|
inlinevirtual |
Safely cast to an Unknown, or null.
Reimplementováno v tinyxml2::XMLUnknown.
Definice je uvedena na řádku 615 v souboru tinyxml2.h.
Používá se v tinyxml2::XMLUnknown::ShallowEqual().
|
inlinevirtual |
Reimplementováno v tinyxml2::XMLUnknown.
Definice je uvedena na řádku 634 v souboru tinyxml2.h.
|
private |
Definice je uvedena na řádku 631 v souboru tinyxml2.cpp.
Odkazuje se na _firstChild, _lastChild, _next, _parent, _prev a TIXMLASSERT.
Používá se v DeleteChildren() a ~XMLNode().
|
inline |
The meaning of 'value' changes for the specific type.
Document: empty Element: name of the element Comment: the comment text Unknown: the tag contents Text: the text string
Definice je uvedena na řádku 647 v souboru tinyxml2.h.
Používá se v tinyxml2::XMLElement::GetText(), ParseDeep(), tinyxml2::XMLElement::QueryBoolText(), tinyxml2::XMLElement::QueryDoubleText(), tinyxml2::XMLElement::QueryFloatText(), tinyxml2::XMLElement::QueryIntText(), tinyxml2::XMLElement::QueryUnsignedText(), tinyxml2::XMLText::ShallowClone(), tinyxml2::XMLComment::ShallowClone(), tinyxml2::XMLDeclaration::ShallowClone(), tinyxml2::XMLUnknown::ShallowClone(), tinyxml2::XMLElement::ShallowClone(), tinyxml2::XMLText::ShallowEqual(), tinyxml2::XMLComment::ShallowEqual(), tinyxml2::XMLDeclaration::ShallowEqual(), tinyxml2::XMLUnknown::ShallowEqual(), tinyxml2::XMLElement::ShallowEqual(), tinyxml2::XMLPrinter::Visit(), gelibspace::XP_give_unique_expected_elem() a gelibspace::XP_giveDAtext().
|
friend |
Definice je uvedena na řádku 581 v souboru tinyxml2.h.
|
friend |
Definice je uvedena na řádku 582 v souboru tinyxml2.h.
|
protected |
Definice je uvedena na řádku 817 v souboru tinyxml2.h.
Používá se v tinyxml2::XMLElement::FindOrCreateAttribute(), tinyxml2::XMLElement::ParseAttributes(), ParseDeep(), tinyxml2::XMLText::ParseDeep(), tinyxml2::XMLComment::ParseDeep(), tinyxml2::XMLDeclaration::ParseDeep(), tinyxml2::XMLUnknown::ParseDeep(), tinyxml2::XMLText::ShallowClone(), tinyxml2::XMLComment::ShallowClone(), tinyxml2::XMLDeclaration::ShallowClone(), tinyxml2::XMLUnknown::ShallowClone(), tinyxml2::XMLElement::ShallowClone() a tinyxml2::XMLDocument::XMLDocument().
|
protected |
Definice je uvedena na řádku 821 v souboru tinyxml2.h.
Používá se v DeleteChildren(), FirstChildElement(), InsertEndChild(), InsertFirstChild() a Unlink().
|
protected |
Definice je uvedena na řádku 822 v souboru tinyxml2.h.
Používá se v DeleteChildren(), InsertEndChild(), InsertFirstChild(), LastChildElement() a Unlink().
|
private |
Definice je uvedena na řádku 828 v souboru tinyxml2.h.
Používá se v tinyxml2::XMLDocument::Identify(), InsertAfterChild(), InsertEndChild(), InsertFirstChild() a ParseDeep().
|
protected |
Definice je uvedena na řádku 825 v souboru tinyxml2.h.
Používá se v FirstChildElement(), InsertAfterChild(), InsertEndChild(), InsertFirstChild(), NextSiblingElement() a Unlink().
|
protected |
Definice je uvedena na řádku 818 v souboru tinyxml2.h.
Používá se v DeleteChild(), tinyxml2::XMLDocument::DeleteNode(), InsertAfterChild(), InsertEndChild(), InsertFirstChild(), Unlink() a ~XMLNode().
|
protected |
Definice je uvedena na řádku 824 v souboru tinyxml2.h.
Používá se v InsertAfterChild(), InsertEndChild(), InsertFirstChild(), LastChildElement(), PreviousSiblingElement() a Unlink().
|
mutableprotected |
Definice je uvedena na řádku 819 v souboru tinyxml2.h.
Používá se v ParseDeep(), tinyxml2::XMLText::ParseDeep(), tinyxml2::XMLComment::ParseDeep(), tinyxml2::XMLDeclaration::ParseDeep(), tinyxml2::XMLUnknown::ParseDeep(), tinyxml2::XMLElement::ParseDeep() a SetValue().