#pragma once // std::filesystem-backed implementation of IFileSystem. #include "ccm/ports/IFileSystem.hpp" namespace ccm { class StdFileSystem final : public IFileSystem { public: [[nodiscard]] bool exists(const std::filesystem::path& p) const override; [[nodiscard]] bool isDirectory(const std::filesystem::path& p) const override; Result ensureDirectory(const std::filesystem::path& p) override; Result readText(const std::filesystem::path& p) override; Result writeText(const std::filesystem::path& p, std::string_view contents) override; Result copyFile(const std::filesystem::path& from, const std::filesystem::path& to, bool overwrite) override; Result remove(const std::filesystem::path& p) override; Result> listDirectory( const std::filesystem::path& p) override; }; } // namespace ccm