Merge pull request #933 from kb1sph/master

Added ChildElementCount()
This commit is contained in:
Lee Thomason
2023-11-20 21:22:19 -08:00
committed by GitHub
2 changed files with 34 additions and 0 deletions

View File

@@ -822,6 +822,34 @@ XMLNode::~XMLNode()
} }
} }
// ChildElementCount was originally suggested by msteiger on the sourceforge page for TinyXML and modified by KB1SPH for TinyXML-2.
int XMLNode::ChildElementCount(const char *value) const {
int count = 0;
const XMLElement *e = FirstChildElement(value);
while (e) {
e = e->NextSiblingElement(value);
count++;
}
return count;
}
int XMLNode::ChildElementCount() const {
int count = 0;
const XMLElement *e = FirstChildElement();
while (e) {
e = e->NextSiblingElement();
count++;
}
return count;
}
const char* XMLNode::Value() const const char* XMLNode::Value() const
{ {
// Edge case: XMLDocuments don't have a Value. Return null. // Edge case: XMLDocuments don't have a Value. Return null.

View File

@@ -732,6 +732,12 @@ public:
return 0; return 0;
} }
// ChildElementCount was originally suggested by msteiger on the sourceforge page for TinyXML and modified by KB1SPH for TinyXML-2.
int ChildElementCount(const char *value) const;
int ChildElementCount() const;
/** The meaning of 'value' changes for the specific type. /** The meaning of 'value' changes for the specific type.
@verbatim @verbatim
Document: empty (NULL is returned, not an empty string) Document: empty (NULL is returned, not an empty string)