From 965f2c6d24a36fdd80bd99428f017c047294203b Mon Sep 17 00:00:00 2001 From: Kavi Gupta Date: Mon, 28 Jul 2025 17:11:24 -0400 Subject: [PATCH] zip iter --- src/zipper.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/zipper.rs b/src/zipper.rs index cb43c45..78f4e89 100644 --- a/src/zipper.rs +++ b/src/zipper.rs @@ -30,7 +30,13 @@ impl LabelledZId { } impl<'a> Expr<'a> { - pub fn zip(&self, zipper: &[ZNode]) -> Self { + pub fn zip(&self, zipper: &'a[ZNode]) -> Self { + self.zip_iter(zipper.iter()) + } + + #[inline] + pub fn zip_iter(&self, zipper: T) -> Self + where T: Iterator { let mut e = *self; for znode in zipper { e = match znode {