From 9ef9974db0941587453891e3250ffed8de7e10f1 Mon Sep 17 00:00:00 2001 From: Maksim Denisov Date: Tue, 25 Feb 2025 15:01:35 +0100 Subject: ArtifactBlob: Allow different content sources --- src/buildtool/common/artifact_blob.hpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/buildtool/common/artifact_blob.hpp') diff --git a/src/buildtool/common/artifact_blob.hpp b/src/buildtool/common/artifact_blob.hpp index 800b78c1..c5a03cf9 100644 --- a/src/buildtool/common/artifact_blob.hpp +++ b/src/buildtool/common/artifact_blob.hpp @@ -20,6 +20,7 @@ #include #include #include +#include #include "src/buildtool/common/artifact_digest.hpp" #include "src/buildtool/crypto/hash_function.hpp" @@ -79,12 +80,15 @@ class ArtifactBlob final { } private: + using InMemory = std::shared_ptr; + using ContentSource = std::variant; + ArtifactDigest digest_; - std::shared_ptr content_; + ContentSource content_; bool is_executable_; explicit ArtifactBlob(ArtifactDigest digest, - std::shared_ptr content, + ContentSource content, bool is_executable) noexcept : digest_{std::move(digest)}, content_{std::move(content)}, -- cgit v1.2.3