summary refs log tree commit diff
path: root/doc/functions/debug.xml
diff options
context:
space:
mode:
Diffstat (limited to 'doc/functions/debug.xml')
-rw-r--r--doc/functions/debug.xml21
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/functions/debug.xml b/doc/functions/debug.xml
new file mode 100644
index 000000000000..272bdf55513f
--- /dev/null
+++ b/doc/functions/debug.xml
@@ -0,0 +1,21 @@
+<section xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         xml:id="sec-debug">
+  <title>Debugging Nix Expressions</title>
+
+  <para>
+   Nix is a unityped, dynamic language, this means every value can potentially
+   appear anywhere. Since it is also non-strict, evaluation order and what
+   ultimately is evaluated might surprise you. Therefore it is important to be
+   able to debug nix expressions.
+  </para>
+
+  <para>
+   In the <literal>lib/debug.nix</literal> file you will find a number of
+   functions that help (pretty-)printing values while evaluation is runnnig.
+   You can even specify how deep these values should be printed recursively,
+   and transform them on the fly. Please consult the docstrings in
+   <literal>lib/debug.nix</literal> for usage information.
+  </para>
+ </section>