1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
@args --debugger
we enter a debugger via builtins.break in the input file.
info: breakpoint reached
causing another debugger even should not nest, but simply
print the error, skip the breakpoint, etc as appropriate.
nix-repl> "values show"
"values show"
nix-repl> builtins.break 2
2
nix-repl> builtins.throw "foo"
error:
… caused by explicit throw
at «string»:1:1:
1| builtins.throw "foo"
| ^
error: foo
nix-repl> assert false; 2
error: assertion failed
at «string»:1:1:
1| assert false; 2
| ^
exiting the debug frame should allow another to open.
nix-repl> :c
nix-repl> builtins.throw "bar"
error: bar
and once again, more breakpoints are ignored.
nix-repl> builtins.break 3
3
error: bar
|