summaryrefslogtreecommitdiffstats
path: root/raul/Path.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'raul/Path.hpp')
-rw-r--r--raul/Path.hpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/raul/Path.hpp b/raul/Path.hpp
index 5776309..d8ef751 100644
--- a/raul/Path.hpp
+++ b/raul/Path.hpp
@@ -21,6 +21,7 @@
#include <cctype>
#include <string>
#include <cassert>
+#include <iostream>
using std::string;
namespace Raul {
@@ -120,6 +121,14 @@ public:
else
return (*this) + "/";
}
+
+ /** Return true if \a child is equal to, or a descendant of \a parent */
+ static bool descendant_comparator(const Path& parent, const Path& child)
+ {
+ return ( child == parent
+ || (!strncmp(parent.c_str(), child.c_str(), parent.length())
+ && child[parent.length()] == '/') );
+ }
};