oxilean_kernel/trace/windowiterator_traits.rs
1//! # WindowIterator - Trait Implementations
2//!
3//! This module contains trait implementations for `WindowIterator`.
4//!
5//! ## Implemented Traits
6//!
7//! - `Iterator`
8//!
9//! 🤖 Generated with [SplitRS](https://github.com/cool-japan/splitrs)
10
11use super::types::WindowIterator;
12use std::fmt;
13
14impl<'a, T> Iterator for WindowIterator<'a, T> {
15 type Item = &'a [T];
16 fn next(&mut self) -> Option<Self::Item> {
17 if self.pos + self.window > self.data.len() {
18 return None;
19 }
20 let slice = &self.data[self.pos..self.pos + self.window];
21 self.pos += 1;
22 Some(slice)
23 }
24}