diff options
Diffstat (limited to 'src/buildtool/common/repository_config.cpp')
-rw-r--r-- | src/buildtool/common/repository_config.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/buildtool/common/repository_config.cpp b/src/buildtool/common/repository_config.cpp index e47fc8d3..988c65cd 100644 --- a/src/buildtool/common/repository_config.cpp +++ b/src/buildtool/common/repository_config.cpp @@ -16,6 +16,7 @@ #include <initializer_list> +#include "src/buildtool/file_system/git_tree_utils.hpp" #include "src/utils/automata/dfa_minimizer.hpp" auto RepositoryConfig::RepositoryInfo::BaseContentDescription() const @@ -172,3 +173,12 @@ void RepositoryConfig::SetPrecomputedRoot(PrecomputedRoot const& root, } } } + +auto RepositoryConfig::ReadTreeFromGitCAS( + std::string const& hex_id) const noexcept -> std::optional<GitTree> { + if (git_cas_ == nullptr or storage_config_ == nullptr) { + return std::nullopt; + } + return GitTreeUtils::ReadValidGitCASTree( + *storage_config_, hex_id, git_cas_); +} |