From 456da98bed4182bb4155d2212bed333dd15ecd48 Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Sun, 31 May 2020 14:29:59 -0400 Subject: [PATCH] Added an iter function which I think will let me automatically make iterators without having to explicitly take a reference to the tree. --- src/renderer/breadcrumb_tree.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/renderer/breadcrumb_tree.rs b/src/renderer/breadcrumb_tree.rs index 414cc96..1faf0c3 100644 --- a/src/renderer/breadcrumb_tree.rs +++ b/src/renderer/breadcrumb_tree.rs @@ -17,6 +17,12 @@ enum BreadcrumbTreeNodeElement<'a, C: IntoContextElement> { Borrowed(&'a C), } +impl<'a, C: IntoContextElement> BreadcrumbTreeNode<'a, C> { + pub fn iter(&'a self) -> BreadcrumbTreeIterator<'a> { + BreadcrumbTreeIterator(Some(self)) + } +} + impl<'a, C: IntoContextElement> Borrow for BreadcrumbTreeNodeElement<'a, C> { @@ -55,6 +61,6 @@ impl<'a, C: IntoContextElement> IntoIterator for &'a BreadcrumbTreeNode<'a, C> { type IntoIter = BreadcrumbTreeIterator<'a>; fn into_iter(self) -> BreadcrumbTreeIterator<'a> { - BreadcrumbTreeIterator(Some(self)) + self.iter() } }