about summary refs log tree commit diff
path: root/third_party/nix/tests/lang/eval-okay-patterns.nix
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/nix/tests/lang/eval-okay-patterns.nix')
-rw-r--r--third_party/nix/tests/lang/eval-okay-patterns.nix16
1 files changed, 16 insertions, 0 deletions
diff --git a/third_party/nix/tests/lang/eval-okay-patterns.nix b/third_party/nix/tests/lang/eval-okay-patterns.nix
new file mode 100644
index 000000000000..96fd25a01517
--- /dev/null
+++ b/third_party/nix/tests/lang/eval-okay-patterns.nix
@@ -0,0 +1,16 @@
+let
+
+  f = args@{x, y, z}: x + args.y + z;
+
+  g = {x, y, z}@args: f args;
+
+  h = {x ? "d", y ? x, z ? args.x}@args: x + y + z;
+
+  j = {x, y, z, ...}: x + y + z;
+
+in
+  f {x = "a"; y = "b"; z = "c";} +
+  g {x = "x"; y = "y"; z = "z";} +
+  h {x = "D";} +
+  h {x = "D"; y = "E"; z = "F";} +
+  j {x = "i"; y = "j"; z = "k"; bla = "bla"; foo = "bar";}