Add recursive ls
Change-Id: Ifab8c9577c01cf7a96cda8d79fe232b12b5538bd
diff --git a/src/schema.hpp b/src/schema.hpp
index 96176ab..e5827de 100644
--- a/src/schema.hpp
+++ b/src/schema.hpp
@@ -45,6 +45,10 @@
};
}
+enum class Recursion {
+ NonRecursive,
+ Recursive
+};
using NodeType = boost::variant<yang::container, yang::list, yang::leaf, yang::module>;
@@ -75,7 +79,7 @@
virtual bool nodeExists(const std::string& location, const std::string& node) const = 0;
virtual const std::set<std::string> listKeys(const path_& location, const ModuleNodePair& node) const = 0;
virtual yang::LeafDataTypes leafType(const path_& location, const ModuleNodePair& node) const = 0;
- virtual std::set<std::string> childNodes(const path_& path) const = 0;
+ virtual std::set<std::string> childNodes(const path_& path, const Recursion recursion) const = 0;
private:
const std::unordered_map<std::string, NodeType>& children(const std::string& name) const;