about summary refs log tree commit diff
path: root/tvix/eval/src/value/list.rs
diff options
context:
space:
mode:
authorWilliam Carroll <wpcarro@gmail.com>2022-08-30T00·33-0700
committertazjin <tazjin@tvl.su>2022-09-07T20·56+0000
commit197fe37daef242596900bcab948d6fc14348f910 (patch)
treeae7daee7509d03cd2b18fbc2aa16a61dc28f35f6 /tvix/eval/src/value/list.rs
parent15e2bc54f1beab0f99a7d7199af92a3139052302 (diff)
feat(tvix/eval): Support builtins.length r/4740
Get the length of a list

Change-Id: I41d91e96d833269541a1b3c23b7cc879f96d1e5a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/6407
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Diffstat (limited to 'tvix/eval/src/value/list.rs')
-rw-r--r--tvix/eval/src/value/list.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/tvix/eval/src/value/list.rs b/tvix/eval/src/value/list.rs
index b8682a5b3d5a..da86fdda26ec 100644
--- a/tvix/eval/src/value/list.rs
+++ b/tvix/eval/src/value/list.rs
@@ -28,6 +28,10 @@ impl NixList {
         lhs
     }
 
+    pub fn len(&self) -> usize {
+        self.0.len()
+    }
+
     pub fn construct(count: usize, stack_slice: Vec<Value>) -> Self {
         debug_assert!(
             count == stack_slice.len(),