27 const std::filesystem::path &base)
const override;
30 bool isAbsolute(
const std::filesystem::path &path)
const override;
33 bool isRelative(
const std::filesystem::path &path)
const override;
36 std::filesystem::path
getParent(
const std::filesystem::path &path)
const override;
39 std::string
getFilename(
const std::filesystem::path &path)
const override;
42 std::string
getExtension(
const std::filesystem::path &path)
const override;
45 std::string
getStem(
const std::filesystem::path &path)
const override;
48 std::filesystem::path
join(
const std::vector<std::string> &parts)
const override;
Interface for path resolution and manipulation.
Definition IPathResolver.hpp:15
bool isRelative(const std::filesystem::path &path) const override
Check if path is relative.
Definition PathResolver.cpp:84
std::filesystem::path getParent(const std::filesystem::path &path) const override
Get the Parent object.
Definition PathResolver.cpp:88
std::filesystem::path join(const std::vector< std::string > &parts) const override
Join multiple path components.
Definition PathResolver.cpp:104
std::string getExtension(const std::filesystem::path &path) const override
Get the Extension object.
Definition PathResolver.cpp:96
PathResolver(const PathResolver &)=delete
PathResolver(PathResolver &&)=delete
bool isAbsolute(const std::filesystem::path &path) const override
Check if path is absolute.
Definition PathResolver.cpp:80
Result< std::filesystem::path, FileError > getCanonicalPath(const std::filesystem::path &path) const override
Get the Canonical Path object.
Definition PathResolver.cpp:32
Result< std::filesystem::path, FileError > getRelativePath(const std::filesystem::path &target, const std::filesystem::path &base) const override
Get the Relative Path object.
Definition PathResolver.cpp:56
Result< std::filesystem::path, FileError > getAbsolutePath(const std::filesystem::path &path) const override
Get the Absolute Path object.
Definition PathResolver.cpp:8
std::string getFilename(const std::filesystem::path &path) const override
Get the Filename object.
Definition PathResolver.cpp:92
~PathResolver() override=default
std::string getStem(const std::filesystem::path &path) const override
Get the Stem object.
Definition PathResolver.cpp:100
PathResolver & operator=(const PathResolver &)=delete
PathResolver & operator=(PathResolver &&)=delete
Definition UtilsError.hpp:93
Definition DirectoryManager.cpp:5