summaryrefslogtreecommitdiff
path: root/src/cxml.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2017-05-24 13:05:37 +0100
committerCarl Hetherington <cth@carlh.net>2017-05-24 13:05:37 +0100
commit9777a3cef3f434c5c9ba60161602a9305c705eb1 (patch)
tree43746220256fd7da67aeb0aa2a67679b90eec3d4 /src/cxml.cc
parent494afbcf4720b1e1042ef3cab9b320f03bd4d6f6 (diff)
Add node_children() method.
Diffstat (limited to 'src/cxml.cc')
-rw-r--r--src/cxml.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/cxml.cc b/src/cxml.cc
index 3248324..77770f9 100644
--- a/src/cxml.cc
+++ b/src/cxml.cc
@@ -74,6 +74,19 @@ cxml::Node::optional_node_child (string name) const
}
list<shared_ptr<cxml::Node> >
+cxml::Node::node_children () const
+{
+ xmlpp::Node::NodeList c = _node->get_children ();
+
+ list<shared_ptr<cxml::Node> > n;
+ for (xmlpp::Node::NodeList::iterator i = c.begin (); i != c.end(); ++i) {
+ n.push_back (shared_ptr<Node> (new Node (*i)));
+ }
+
+ return n;
+}
+
+list<shared_ptr<cxml::Node> >
cxml::Node::node_children (string name) const
{
/* XXX: using find / get_path should work here, but I can't follow