From d597939d7fe3532ba98d21045dbb0dbbb4302b2c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Kim=20Nguy=E1=BB=85n?= Date: Mon, 15 Oct 2012 18:40:22 +0200 Subject: [PATCH] Documentation step 1: Properly document counting functions. --- xml-tree.hpp | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/xml-tree.hpp b/xml-tree.hpp index 436e2f9..68e5f36 100644 --- a/xml-tree.hpp +++ b/xml-tree.hpp @@ -47,12 +47,50 @@ public: ~xml_tree(); //Counting functions + /** + * [size()] returns the size of the tree (number of nodes) + * Runs in O(1) + */ inline uint32_t size() const; + + /** + * [num_tags()] returns the number of distinct tags. + * Runs in O(1) + */ inline uint32_t num_tags() const; + + /** + * [subtree_size(n)] returns the size of the subtree (number of nodes) + * rooted at n. + * Runs in O(1) + */ inline uint32_t subtree_size(node_t) const; + + /** + * [subtree_tags(n, t)] returns the number of occurences of tag [t] in the + * subtree rooted at [n] + * Runs in O(1) + */ inline uint32_t subtree_tags(node_t, tag_t) const; + + /** + * [subtree_elements(n)] returns the number of element nodes below [n] + * Runs in O(attribute_ids->size()+3) + */ inline uint32_t subtree_elements(node_t) const; + + /** + * [num_children(n)] returns the number of child nodes of [n] + * (both text and elements, and including a fake <@> node if + * present). + * Runs in O(1) (?) + */ uint32_t num_children(node_t) const; + + /** + * [child_pos(n)] returns the position of [n] amongst its siblings + * Runs in O(1) (?) + */ uint32_t child_pos(node_t) const; -- 2.17.1