summary refs log tree commit diff
path: root/doc/functions/debug.xml
blob: c6b3611eea53dc43437418d6a4c062322e15047e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
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>