summaryrefslogtreecommitdiff
path: root/src/buildtool/serve_api/remote/source_tree_client.hpp
diff options
context:
space:
mode:
authorMaksim Denisov <denisov.maksim@huawei.com>2025-01-14 13:05:19 +0100
committerMaksim Denisov <denisov.maksim@huawei.com>2025-01-21 09:58:36 +0100
commit7321beb731e5f09584baaf77554cbfe1c470742f (patch)
tree99e590b9b85951ae30324f88bc13133baf6de6eb /src/buildtool/serve_api/remote/source_tree_client.hpp
parentc326095d4201bea74bbe7ebfffb8a58de3b20bba (diff)
downloadjustbuild-7321beb731e5f09584baaf77554cbfe1c470742f.tar.gz
TreeStructure: Compute on serve
Diffstat (limited to 'src/buildtool/serve_api/remote/source_tree_client.hpp')
-rw-r--r--src/buildtool/serve_api/remote/source_tree_client.hpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/buildtool/serve_api/remote/source_tree_client.hpp b/src/buildtool/serve_api/remote/source_tree_client.hpp
index 32fb910c..e6ad6083 100644
--- a/src/buildtool/serve_api/remote/source_tree_client.hpp
+++ b/src/buildtool/serve_api/remote/source_tree_client.hpp
@@ -133,6 +133,13 @@ class SourceTreeClient {
[[nodiscard]] auto GetRemoteTree(
ArtifactDigest const& digest) const noexcept -> bool;
+ /// \brief Compute tree structure of a tree
+ /// \param tree Tree to compute
+ /// \return Git digest of the tree structure computed for tree on
+ /// success or an unexpected error on failure (fatal or content not found).
+ [[nodiscard]] auto ComputeTreeStructure(ArtifactDigest const& tree)
+ const noexcept -> expected<ArtifactDigest, GitLookupError>;
+
private:
HashFunction const& hash_function_; // hash function of the remote
std::unique_ptr<justbuild::just_serve::SourceTree::Stub> stub_;