diff options
Diffstat (limited to 'raul')
-rw-r--r-- | raul/Path.hpp | 3 | ||||
-rw-r--r-- | raul/URI.hpp | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/raul/Path.hpp b/raul/Path.hpp index 91122c6..a00740a 100644 --- a/raul/Path.hpp +++ b/raul/Path.hpp @@ -134,6 +134,9 @@ public: Path operator+(const Path& p) const { return child(p); } + /** Return the lowest common ancestor of a and b. */ + static Path lca(const Path& a, const Path& b); + /** Return the symbol of this path (everything after the last '/'). * This is e.g. the "method name" for OSC paths, the filename * for filesystem paths, etc. diff --git a/raul/URI.hpp b/raul/URI.hpp index 90d285c..6a6b532 100644 --- a/raul/URI.hpp +++ b/raul/URI.hpp @@ -90,6 +90,8 @@ public: inline bool operator==(const URI& uri) const { return _str == uri._str; } inline bool operator!=(const URI& uri) const { return _str != uri._str; } + inline char operator[](int i) const { return _str[i]; } + inline size_t length() const { return str().length(); } inline size_t find(const std::string& s) const { return str().find(s); } inline size_t find_last_of(char c) const { return str().find_last_of(c); } |