From 3342268ed2cd3d6a31d67ab2d727648af1de22e5 Mon Sep 17 00:00:00 2001 From: Klaus Aehlig Date: Thu, 11 Apr 2024 15:28:20 +0200 Subject: configured target: support short representation ... with only the non-null entries of the configuration. This information is enough for the user to build this target, e.g., when searching for the cause of a build failure. --- src/buildtool/build_engine/target_map/TARGETS | 1 + src/buildtool/build_engine/target_map/configured_target.hpp | 6 ++++++ 2 files changed, 7 insertions(+) (limited to 'src') diff --git a/src/buildtool/build_engine/target_map/TARGETS b/src/buildtool/build_engine/target_map/TARGETS index 97576c2c..6964f19e 100644 --- a/src/buildtool/build_engine/target_map/TARGETS +++ b/src/buildtool/build_engine/target_map/TARGETS @@ -7,6 +7,7 @@ , ["src/buildtool/build_engine/base_maps", "entity_name_data"] , ["src/buildtool/build_engine/expression", "expression"] , ["src/utils/cpp", "hash_combine"] + , ["src/utils/cpp", "json"] ] , "stage": ["src", "buildtool", "build_engine", "target_map"] } diff --git a/src/buildtool/build_engine/target_map/configured_target.hpp b/src/buildtool/build_engine/target_map/configured_target.hpp index b97b1912..e5713460 100644 --- a/src/buildtool/build_engine/target_map/configured_target.hpp +++ b/src/buildtool/build_engine/target_map/configured_target.hpp @@ -22,6 +22,7 @@ #include "src/buildtool/build_engine/base_maps/entity_name_data.hpp" #include "src/buildtool/build_engine/expression/configuration.hpp" #include "src/utils/cpp/hash_combine.hpp" +#include "src/utils/cpp/json.hpp" namespace BuildMaps::Target { @@ -38,6 +39,11 @@ struct ConfiguredTarget { [[nodiscard]] auto ToString() const noexcept -> std::string { return fmt::format("[{},{}]", target.ToString(), config.ToString()); } + + [[nodiscard]] auto ToShortString() const noexcept -> std::string { + return fmt::format( + "[{},{}]", target.ToString(), PruneJson(config.ToJson()).dump()); + } }; using ConfiguredTargetPtr = std::shared_ptr; -- cgit v1.2.3