aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr/print.cc
diff options
context:
space:
mode:
authoreldritch horrors <pennae@lix.systems>2024-03-08 04:49:08 +0100
committereldritch horrors <pennae@lix.systems>2024-03-09 00:05:41 -0700
commit87e6ac5eb706593d15d29b070eac5f05e305a787 (patch)
tree79062f2ab0e8a298de9b68419fa4094994e26e22 /src/libexpr/print.cc
parent896e525681bbf696c330af4e51c5e161d3818350 (diff)
Merge pull request #9753 from 9999years/print-value-on-type-error
Print the value in `value is X while a Y is expected` error (cherry picked from commit 5f72a97092da6af28a7d2b2a50d74e9d34fae7e1) Change-Id: Idb4bc903ae59a0f5b6fb3b1da4d47970fe0a6efe
Diffstat (limited to 'src/libexpr/print.cc')
-rw-r--r--src/libexpr/print.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libexpr/print.cc b/src/libexpr/print.cc
index 0e8f80888..28ca8874c 100644
--- a/src/libexpr/print.cc
+++ b/src/libexpr/print.cc
@@ -5,6 +5,7 @@
#include "ansicolor.hh"
#include "store-api.hh"
#include "english.hh"
+#include "eval.hh"
namespace nix {
@@ -499,4 +500,10 @@ void printValue(EvalState & state, std::ostream & output, Value & v, PrintOption
Printer(output, state, options).print(v);
}
+std::ostream & operator<<(std::ostream & output, const ValuePrinter & printer)
+{
+ printValue(printer.state, output, printer.value, printer.options);
+ return output;
+}
+
}