summaryrefslogtreecommitdiff
path: root/src/buildtool/execution_api/common/execution_response.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildtool/execution_api/common/execution_response.hpp')
-rw-r--r--src/buildtool/execution_api/common/execution_response.hpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/buildtool/execution_api/common/execution_response.hpp b/src/buildtool/execution_api/common/execution_response.hpp
index a08134dd..3ad4e2ba 100644
--- a/src/buildtool/execution_api/common/execution_response.hpp
+++ b/src/buildtool/execution_api/common/execution_response.hpp
@@ -30,6 +30,8 @@ class IExecutionResponse {
public:
using Ptr = std::unique_ptr<IExecutionResponse>;
using ArtifactInfos = std::unordered_map<std::string, Artifact::ObjectInfo>;
+ // set of paths found in output_directory_symlinks list of the action result
+ using DirSymlinks = std::unordered_set<std::string>;
enum class StatusCode { Failed, Success };
@@ -56,7 +58,11 @@ class IExecutionResponse {
[[nodiscard]] virtual auto ActionDigest() const noexcept -> std::string = 0;
- [[nodiscard]] virtual auto Artifacts() const noexcept -> ArtifactInfos = 0;
+ [[nodiscard]] virtual auto Artifacts() noexcept -> ArtifactInfos = 0;
+
+ // Artifacts plus extra useful info
+ [[nodiscard]] virtual auto ArtifactsWithDirSymlinks() noexcept
+ -> std::pair<ArtifactInfos, DirSymlinks> = 0;
};
#endif // INCLUDED_SRC_BUILDTOOL_EXECUTION_API_COMMON_REMOTE_EXECUTION_RESPONSE_HPP