summaryrefslogtreecommitdiff
path: root/src/buildtool/build_engine/expression
diff options
context:
space:
mode:
Diffstat (limited to 'src/buildtool/build_engine/expression')
-rw-r--r--src/buildtool/build_engine/expression/TARGETS6
-rw-r--r--src/buildtool/build_engine/expression/configuration.hpp6
-rw-r--r--src/buildtool/build_engine/expression/evaluator.cpp10
-rw-r--r--src/buildtool/build_engine/expression/evaluator.hpp5
-rw-r--r--src/buildtool/build_engine/expression/expression.cpp7
-rw-r--r--src/buildtool/build_engine/expression/expression.hpp7
-rw-r--r--src/buildtool/build_engine/expression/expression_ptr.cpp1
-rw-r--r--src/buildtool/build_engine/expression/expression_ptr.hpp2
-rw-r--r--src/buildtool/build_engine/expression/linked_map.hpp10
-rw-r--r--src/buildtool/build_engine/expression/target_node.hpp6
-rw-r--r--src/buildtool/build_engine/expression/target_result.cpp7
-rw-r--r--src/buildtool/build_engine/expression/target_result.hpp2
12 files changed, 43 insertions, 26 deletions
diff --git a/src/buildtool/build_engine/expression/TARGETS b/src/buildtool/build_engine/expression/TARGETS
index ff615020..0e5e38c1 100644
--- a/src/buildtool/build_engine/expression/TARGETS
+++ b/src/buildtool/build_engine/expression/TARGETS
@@ -5,7 +5,6 @@
, "deps":
[ ["@", "fmt", "", "fmt"]
, ["src/buildtool/multithreading", "atomic_value"]
- , ["src/utils/cpp", "atomic"]
, ["src/utils/cpp", "hash_combine"]
]
, "stage": ["src", "buildtool", "build_engine", "expression"]
@@ -42,24 +41,25 @@
, "deps":
[ "expression_ptr_interface"
, "linked_map"
- , ["@", "gsl", "", "gsl"]
, ["@", "json", "", "json"]
, ["src/buildtool/build_engine/base_maps", "entity_name_data"]
, ["src/buildtool/common", "artifact_description"]
+ , ["src/buildtool/common", "common"]
, ["src/buildtool/crypto", "hash_function"]
, ["src/buildtool/multithreading", "atomic_value"]
, ["src/utils/cpp", "concepts"]
, ["src/utils/cpp", "gsl"]
, ["src/utils/cpp", "hash_combine"]
, ["src/utils/cpp", "hex_string"]
- , ["src/utils/cpp", "json"]
]
, "stage": ["src", "buildtool", "build_engine", "expression"]
, "private-deps":
[ ["@", "fmt", "", "fmt"]
+ , ["@", "gsl", "", "gsl"]
, ["src/buildtool/crypto", "hasher"]
, ["src/buildtool/logging", "log_level"]
, ["src/buildtool/logging", "logging"]
+ , ["src/utils/cpp", "json"]
, ["src/utils/cpp", "path"]
]
}
diff --git a/src/buildtool/build_engine/expression/configuration.hpp b/src/buildtool/build_engine/expression/configuration.hpp
index 15f8c379..ec3fde66 100644
--- a/src/buildtool/build_engine/expression/configuration.hpp
+++ b/src/buildtool/build_engine/expression/configuration.hpp
@@ -17,12 +17,16 @@
#include <algorithm>
#include <cstddef>
+#include <functional>
+#include <optional>
#include <sstream>
#include <string>
#include <utility> // std::move
+#include <vector>
-#include "gsl/gsl"
+#include "nlohmann/json.hpp"
#include "src/buildtool/build_engine/expression/expression.hpp"
+#include "src/buildtool/build_engine/expression/expression_ptr.hpp"
#include "src/utils/cpp/concepts.hpp"
#include "src/utils/cpp/gsl.hpp"
diff --git a/src/buildtool/build_engine/expression/evaluator.cpp b/src/buildtool/build_engine/expression/evaluator.cpp
index dfae8499..e26c43e0 100644
--- a/src/buildtool/build_engine/expression/evaluator.cpp
+++ b/src/buildtool/build_engine/expression/evaluator.cpp
@@ -15,16 +15,26 @@
#include "src/buildtool/build_engine/expression/evaluator.hpp"
#include <algorithm>
+#include <cmath>
+#include <compare>
+#include <cstdint>
+#include <cstdlib>
#include <exception>
#include <filesystem>
+#include <iterator>
+#include <map>
+#include <optional>
#include <sstream>
#include <string>
#include <unordered_set>
#include <utility> // std::move
#include "fmt/core.h"
+#include "nlohmann/json.hpp"
#include "src/buildtool/build_engine/expression/configuration.hpp"
+#include "src/buildtool/build_engine/expression/expression.hpp"
#include "src/buildtool/build_engine/expression/function_map.hpp"
+#include "src/buildtool/build_engine/expression/linked_map.hpp"
#include "src/utils/cpp/path.hpp"
namespace {
diff --git a/src/buildtool/build_engine/expression/evaluator.hpp b/src/buildtool/build_engine/expression/evaluator.hpp
index ba9bd2ef..4affb16b 100644
--- a/src/buildtool/build_engine/expression/evaluator.hpp
+++ b/src/buildtool/build_engine/expression/evaluator.hpp
@@ -17,15 +17,14 @@
#include <cstddef>
#include <exception>
+#include <functional>
#include <string>
#include <utility>
#include <vector>
-#include "src/buildtool/build_engine/expression/expression.hpp"
+#include "src/buildtool/build_engine/expression/expression_ptr.hpp"
#include "src/buildtool/build_engine/expression/function_map.hpp"
-class Configuration;
-
class Evaluator {
struct ConfigData {
std::size_t expression_log_limit{kDefaultExpressionLogLimit};
diff --git a/src/buildtool/build_engine/expression/expression.cpp b/src/buildtool/build_engine/expression/expression.cpp
index 4dd61a2d..17e25fc6 100644
--- a/src/buildtool/build_engine/expression/expression.cpp
+++ b/src/buildtool/build_engine/expression/expression.cpp
@@ -15,18 +15,13 @@
#include "src/buildtool/build_engine/expression/expression.hpp"
#include <algorithm>
-#include <exception>
+#include <iterator>
#include <optional>
-#include <sstream>
#include <string>
-#include <type_traits>
#include "fmt/core.h"
-#include "gsl/gsl"
-#include "src/buildtool/build_engine/expression/evaluator.hpp"
#include "src/buildtool/crypto/hash_function.hpp"
#include "src/buildtool/crypto/hasher.hpp"
-#include "src/buildtool/logging/logger.hpp"
#include "src/utils/cpp/gsl.hpp"
#include "src/utils/cpp/json.hpp"
diff --git a/src/buildtool/build_engine/expression/expression.hpp b/src/buildtool/build_engine/expression/expression.hpp
index b28fec51..1f3d2d88 100644
--- a/src/buildtool/build_engine/expression/expression.hpp
+++ b/src/buildtool/build_engine/expression/expression.hpp
@@ -15,11 +15,12 @@
#ifndef INCLUDED_SRC_BUILDTOOL_BUILD_ENGINE_EXPRESSION_EXPRESSION_HPP
#define INCLUDED_SRC_BUILDTOOL_BUILD_ENGINE_EXPRESSION_EXPRESSION_HPP
+#include <algorithm>
#include <cstddef>
#include <cstdint>
+#include <cstring>
#include <exception>
#include <functional>
-#include <memory>
#include <optional>
#include <string>
#include <type_traits>
@@ -28,17 +29,15 @@
#include <vector>
#include "fmt/core.h"
-#include "gsl/gsl"
+#include "nlohmann/json.hpp"
#include "src/buildtool/build_engine/base_maps/entity_name_data.hpp"
#include "src/buildtool/build_engine/expression/expression_ptr.hpp"
-#include "src/buildtool/build_engine/expression/function_map.hpp"
#include "src/buildtool/build_engine/expression/linked_map.hpp"
#include "src/buildtool/build_engine/expression/target_node.hpp"
#include "src/buildtool/build_engine/expression/target_result.hpp"
#include "src/buildtool/common/artifact_description.hpp"
#include "src/buildtool/multithreading/atomic_value.hpp"
#include "src/utils/cpp/hex_string.hpp"
-#include "src/utils/cpp/json.hpp"
class Expression {
friend auto operator+(Expression const& /*lhs*/,
diff --git a/src/buildtool/build_engine/expression/expression_ptr.cpp b/src/buildtool/build_engine/expression/expression_ptr.cpp
index 0d3ce649..cd39c45e 100644
--- a/src/buildtool/build_engine/expression/expression_ptr.cpp
+++ b/src/buildtool/build_engine/expression/expression_ptr.cpp
@@ -14,6 +14,7 @@
#include "src/buildtool/build_engine/expression/expression_ptr.hpp"
+#include <compare>
#include <string>
#include <utility> // std::move
diff --git a/src/buildtool/build_engine/expression/expression_ptr.hpp b/src/buildtool/build_engine/expression/expression_ptr.hpp
index c1ab6066..4fa3964d 100644
--- a/src/buildtool/build_engine/expression/expression_ptr.hpp
+++ b/src/buildtool/build_engine/expression/expression_ptr.hpp
@@ -20,6 +20,7 @@
#include <memory>
#include <string>
#include <type_traits>
+#include <utility>
#include "nlohmann/json.hpp"
#include "src/buildtool/build_engine/expression/function_map.hpp"
@@ -27,7 +28,6 @@
#include "src/buildtool/logging/log_level.hpp"
#include "src/buildtool/logging/logger.hpp"
-class Configuration;
class Expression;
class ExpressionPtr {
diff --git a/src/buildtool/build_engine/expression/linked_map.hpp b/src/buildtool/build_engine/expression/linked_map.hpp
index 1f66ab3c..1eaca5dd 100644
--- a/src/buildtool/build_engine/expression/linked_map.hpp
+++ b/src/buildtool/build_engine/expression/linked_map.hpp
@@ -15,19 +15,19 @@
#ifndef INCLUDED_SRC_BUILDTOOL_BUILD_ENGINE_EXPRESSION_LINKED_MAP_HPP
#define INCLUDED_SRC_BUILDTOOL_BUILD_ENGINE_EXPRESSION_LINKED_MAP_HPP
-#include <algorithm>
-#include <atomic>
-#include <condition_variable>
#include <cstddef>
+#include <functional>
+#include <iterator>
#include <map>
#include <memory>
-#include <mutex>
+#include <optional>
+#include <stdexcept>
+#include <type_traits>
#include <utility> // std::move
#include <vector>
#include "fmt/core.h"
#include "src/buildtool/multithreading/atomic_value.hpp"
-#include "src/utils/cpp/atomic.hpp"
#include "src/utils/cpp/hash_combine.hpp"
template <class K, class V, class NextPtr>
diff --git a/src/buildtool/build_engine/expression/target_node.hpp b/src/buildtool/build_engine/expression/target_node.hpp
index 1e7cbd2e..955a6fb7 100644
--- a/src/buildtool/build_engine/expression/target_node.hpp
+++ b/src/buildtool/build_engine/expression/target_node.hpp
@@ -15,12 +15,12 @@
#ifndef INCLUDED_SRC_BUILDTOOL_BUILDENGINE_EXPRESSION_TARGET_NODE_HPP
#define INCLUDED_SRC_BUILDTOOL_BUILDENGINE_EXPRESSION_TARGET_NODE_HPP
-#include <type_traits>
-#include <utility> // std::move
+#include <string>
+#include <utility> // IWYU pragma: keep
#include <variant>
+#include "nlohmann/json.hpp"
#include "src/buildtool/build_engine/expression/expression_ptr.hpp"
-#include "src/buildtool/build_engine/expression/target_result.hpp"
class TargetNode {
using Value = ExpressionPtr; // store result type
diff --git a/src/buildtool/build_engine/expression/target_result.cpp b/src/buildtool/build_engine/expression/target_result.cpp
index c95a803f..bb5712b1 100644
--- a/src/buildtool/build_engine/expression/target_result.cpp
+++ b/src/buildtool/build_engine/expression/target_result.cpp
@@ -14,6 +14,9 @@
#include "src/buildtool/build_engine/expression/target_result.hpp"
+#include <exception>
+#include <stdexcept>
+#include <string>
#include <unordered_map>
#include <unordered_set>
#include <utility> // std::move
@@ -21,9 +24,13 @@
#include "gsl/gsl"
#include "src/buildtool/build_engine/expression/expression.hpp"
+#include "src/buildtool/build_engine/expression/target_node.hpp"
+#include "src/buildtool/common/artifact.hpp"
#include "src/buildtool/common/artifact_description.hpp"
+#include "src/buildtool/common/artifact_digest.hpp"
#include "src/buildtool/logging/log_level.hpp"
#include "src/buildtool/logging/logger.hpp"
+#include "src/utils/cpp/hex_string.hpp"
namespace {
diff --git a/src/buildtool/build_engine/expression/target_result.hpp b/src/buildtool/build_engine/expression/target_result.hpp
index 4a698fc4..bda00ce5 100644
--- a/src/buildtool/build_engine/expression/target_result.hpp
+++ b/src/buildtool/build_engine/expression/target_result.hpp
@@ -16,11 +16,13 @@
#define INCLUDED_SRC_BUILDTOOL_BUILDENGINE_EXPRESSION_TARGET_RESULT_HPP
#include <cstddef>
+#include <functional>
#include <optional>
#include <unordered_map>
#include "nlohmann/json.hpp"
#include "src/buildtool/build_engine/expression/expression_ptr.hpp"
+#include "src/buildtool/common/artifact.hpp"
#include "src/buildtool/common/artifact_description.hpp"
#include "src/buildtool/crypto/hash_function.hpp"
#include "src/utils/cpp/hash_combine.hpp"