diff options
Diffstat (limited to 'src/buildtool/execution_api/common')
-rw-r--r-- | src/buildtool/execution_api/common/execution_api.hpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/buildtool/execution_api/common/execution_api.hpp b/src/buildtool/execution_api/common/execution_api.hpp index 7a301f71..a8ba8009 100644 --- a/src/buildtool/execution_api/common/execution_api.hpp +++ b/src/buildtool/execution_api/common/execution_api.hpp @@ -17,6 +17,7 @@ #include <map> #include <memory> +#include <optional> #include <string> #include <utility> #include <vector> @@ -86,6 +87,12 @@ class IExecutionApi { std::vector<Artifact::ObjectInfo> const& artifacts_info, gsl::not_null<IExecutionApi*> const& api) noexcept -> bool = 0; + /// \brief Retrieve one artifact from CAS and make it available for + /// furter in-memory processing + [[nodiscard]] virtual auto RetrieveToMemory( + Artifact::ObjectInfo const& artifact_info) + -> std::optional<std::string> = 0; + /// \brief Upload blobs to CAS. Uploads only the blobs that are not yet /// available in CAS, unless `skip_find_missing` is specified. /// \param blobs Container of blobs to upload. |