diff options
Diffstat (limited to 'bin/tests/data/eta_reduction.nix')
-rw-r--r-- | bin/tests/data/eta_reduction.nix | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/bin/tests/data/eta_reduction.nix b/bin/tests/data/eta_reduction.nix new file mode 100644 index 0000000..e717ee7 --- /dev/null +++ b/bin/tests/data/eta_reduction.nix | |||
@@ -0,0 +1,18 @@ | |||
1 | let | ||
2 | double = x: x * 2; | ||
3 | inherit (builtins) map; | ||
4 | xs = [ 1 2 3 ]; | ||
5 | f = { | ||
6 | inherit double; | ||
7 | val = 2; | ||
8 | }; | ||
9 | in | ||
10 | [ | ||
11 | (map (x: double x) xs) | ||
12 | |||
13 | # don't lint on non-free exprs | ||
14 | (map (f: f.double f.val) [ f ]) | ||
15 | |||
16 | # other non-free forms | ||
17 | (map (f: {inherit f;}.double f.val) [ f ]) | ||
18 | ] | ||