Class XMLComment

Inheritance Relationships

Base Type

Class Documentation

class XMLComment : public tinyxml2::XMLNode

An XML Comment.

Public Functions

inline virtual XMLComment *ToComment() override

Safely cast to a Comment, or null.

inline virtual const XMLComment *ToComment() const override
virtual bool Accept(XMLVisitor *visitor) const override

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();

virtual XMLNode *ShallowClone(XMLDocument *document) const override

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.

virtual bool ShallowEqual(const XMLNode *compare) const override

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.

Protected Functions

explicit XMLComment(XMLDocument *doc)
virtual ~XMLComment()
virtual char *ParseDeep(char *p, StrPair *parentEndTag, int *curLineNumPtr) override