X-Git-Url: http://git.tdb.fi/?p=libs%2Fcore.git;a=blobdiff_plain;f=source%2Ffs%2Futils.h;h=e518d35cf225da8e38692e5b09dffe2d21793af5;hp=df7bc76b8d5add12bae4cb3daae6cf4027d3a3a1;hb=8bbba6b8cd02c33612fb173e6df48b130407af8f;hpb=eeb6ed7b20d56578ff8c68f3c94e887d5ac768ee diff --git a/source/fs/utils.h b/source/fs/utils.h index df7bc76..e518d35 100644 --- a/source/fs/utils.h +++ b/source/fs/utils.h @@ -35,11 +35,15 @@ void unlink(const Path &path); /// Renames a file. Existing file, if any, is overwritten. void rename(const Path &from, const Path &to); -/// Makes a path relative to some base path. That is, base/result==path. +/** Makes a path relative to some base path. That is, base/result==path. Both +paths must be either absolute or relative. */ Path relative(const Path &path, const Path &base); +/// Returns the longest prefix shared by both paths. +Path common_ancestor(const Path &, const Path &); + /** Determines how many levels a path is below another. Returns -1 if path is -not a descendant of parent. */ +not a descendant of parent. Both paths must be either absolute or relative. */ int descendant_depth(const Path &path, const Path &parent); } // namespace FS