about summary refs log tree commit diff
path: root/tvix/eval/src/builtins/mod.rs
diff options
context:
space:
mode:
authorGriffin Smith <grfn@gws.fyi>2022-10-13T02·36-0400
committertazjin <tazjin@tvl.su>2022-10-17T11·04+0000
commit89dbcbbb3d292c612056ed75a35a78ebd6fae3e1 (patch)
tree8ef4ba4e7e465f1c6a3c19831848a73a73fbc3f2 /tvix/eval/src/builtins/mod.rs
parent6e30fbbf7b9bf7641e48692d94d9c215e148b239 (diff)
feat(tvix/eval): Implement builtins.seq r/5152
Since we already have infra for forcing arguments to builtins, this ends
up being almost *too* simple - we just return the second argument!

Change-Id: I070d3d0b551c4dcdac095f67b31e22e0de90cbd7
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6999
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
Diffstat (limited to 'tvix/eval/src/builtins/mod.rs')
-rw-r--r--tvix/eval/src/builtins/mod.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/tvix/eval/src/builtins/mod.rs b/tvix/eval/src/builtins/mod.rs
index e9ad4a8ee82e..a5676a63f895 100644
--- a/tvix/eval/src/builtins/mod.rs
+++ b/tvix/eval/src/builtins/mod.rs
@@ -490,6 +490,11 @@ fn pure_builtins() -> Vec<Builtin> {
                 Ok(Value::attrs(NixAttrs::from_map(res)))
             },
         ),
+        Builtin::new("seq", &[true, true], |mut args: Vec<Value>, _: &mut VM| {
+            // The builtin calling infra has already forced both args for us, so we just return the
+            // second and ignore the first
+            Ok(args.pop().unwrap())
+        }),
         Builtin::new("splitVersion", &[true], |args: Vec<Value>, _: &mut VM| {
             let s = args[0].to_str()?;
             let s = VersionPartsIter::new(s.as_str());