summaryrefslogtreecommitdiffstats
path: root/filetreelist/src/treeitems_iter.rs
diff options
context:
space:
mode:
Diffstat (limited to 'filetreelist/src/treeitems_iter.rs')
-rw-r--r--filetreelist/src/treeitems_iter.rs84
1 files changed, 42 insertions, 42 deletions
diff --git a/filetreelist/src/treeitems_iter.rs b/filetreelist/src/treeitems_iter.rs
index 7ca187a1..4feeb3e8 100644
--- a/filetreelist/src/treeitems_iter.rs
+++ b/filetreelist/src/treeitems_iter.rs
@@ -1,60 +1,60 @@
use crate::{filetreeitems::FileTreeItems, item::FileTreeItem};
pub struct TreeItemsIterator<'a> {
- tree: &'a FileTreeItems,
- index: usize,
- increments: Option<usize>,
- max_amount: usize,
+ tree: &'a FileTreeItems,
+ index: usize,
+ increments: Option<usize>,
+ max_amount: usize,
}
impl<'a> TreeItemsIterator<'a> {
- pub const fn new(
- tree: &'a FileTreeItems,
- start: usize,
- max_amount: usize,
- ) -> Self {
- TreeItemsIterator {
- max_amount,
- increments: None,
- index: start,
- tree,
- }
- }
+ pub const fn new(
+ tree: &'a FileTreeItems,
+ start: usize,
+ max_amount: usize,
+ ) -> Self {
+ TreeItemsIterator {
+ max_amount,
+ increments: None,
+ index: start,
+ tree,
+ }
+ }
}
impl<'a> Iterator for TreeItemsIterator<'a> {
- type Item = (usize, &'a FileTreeItem);
+ type Item = (usize, &'a FileTreeItem);
- fn next(&mut self) -> Option<Self::Item> {
- if self.increments.unwrap_or_default() < self.max_amount {
- let items = &self.tree.tree_items;
+ fn next(&mut self) -> Option<Self::Item> {
+ if self.increments.unwrap_or_default() < self.max_amount {
+ let items = &self.tree.tree_items;
- let mut init = self.increments.is_none();
+ let mut init = self.increments.is_none();
- if let Some(i) = self.increments.as_mut() {
- *i += 1;
- } else {
- self.increments = Some(0);
- };
+ if let Some(i) = self.increments.as_mut() {
+ *i += 1;
+ } else {
+ self.increments = Some(0);
+ };
- loop {
- if !init {
- self.index += 1;
- }
- init = false;
+ loop {
+ if !init {
+ self.index += 1;
+ }
+ init = false;
- if self.index >= self.tree.len() {
- break;
- }
+ if self.index >= self.tree.len() {
+ break;
+ }
- let elem = &items[self.index];
+ let elem = &items[self.index];
- if elem.info().is_visible() {
- return Some((self.index, &items[self.index]));
- }
- }
- }
+ if elem.info().is_visible() {
+ return Some((self.index, &items[self.index]));
+ }
+ }
+ }
- None
- }
+ None
+ }
}