summaryrefslogtreecommitdiff
path: root/src/buildtool/build_engine/expression/expression_ptr.cpp
diff options
context:
space:
mode:
authorKlaus Aehlig <klaus.aehlig@huawei.com>2024-04-04 10:13:17 +0200
committerKlaus Aehlig <klaus.aehlig@huawei.com>2024-04-05 14:48:26 +0200
commit427b6e4e83486858b1ab160c75e2754ba173eebe (patch)
treea8f46108ab2796ea56eac847f0f5bc8d9e3fbefe /src/buildtool/build_engine/expression/expression_ptr.cpp
parente704f5a976809eaf76f2d1b29616c24a15a113ed (diff)
downloadjustbuild-427b6e4e83486858b1ab160c75e2754ba173eebe.tar.gz
Evaluator: Add infrastructure to annotate relevant objects
... which are, in particular, artifacts involved in staging conflicts. While there, also make disjoint union honor the expression log limit.
Diffstat (limited to 'src/buildtool/build_engine/expression/expression_ptr.cpp')
-rw-r--r--src/buildtool/build_engine/expression/expression_ptr.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/buildtool/build_engine/expression/expression_ptr.cpp b/src/buildtool/build_engine/expression/expression_ptr.cpp
index 368d2816..68b45c6f 100644
--- a/src/buildtool/build_engine/expression/expression_ptr.cpp
+++ b/src/buildtool/build_engine/expression/expression_ptr.cpp
@@ -60,10 +60,12 @@ auto ExpressionPtr::Evaluate(
Configuration const& env,
FunctionMapPtr const& functions,
std::function<void(std::string const&)> const& logger,
- std::function<void(void)> const& note_user_context) const noexcept
- -> ExpressionPtr {
+ std::function<std::string(ExpressionPtr)> const& annotate_object,
+ std::function<void(void)> const& note_user_context
+
+) const noexcept -> ExpressionPtr {
return Evaluator::EvaluateExpression(
- *this, env, functions, logger, note_user_context);
+ *this, env, functions, logger, annotate_object, note_user_context);
}
auto ExpressionPtr::IsCacheable() const noexcept -> bool {