iterator sizing lib
| -rw-r--r-- | Cargo.toml | 2 | ||||
| -rw-r--r-- | src/lib.rs | 4 |
2 files changed, 3 insertions, 3 deletions
@@ -1,6 +1,6 @@ [package] name = "hinted" -version = "0.0.1" +version = "0.0.2" edition = "2021" authors = ["bend-n <[email protected]>"] license = "MIT" @@ -110,7 +110,7 @@ where type Item = <I as Iterator>::Item; fn next(&mut self) -> Option<Self::Item> { - self.len = unsafe { self.len.unchecked_sub(1) }; + self.len = self.len.saturating_sub(1); self.iter.next() } @@ -126,7 +126,7 @@ impl<I: Iterator> ExactSizeIterator for Exactly<I> { } impl<I: DoubleEndedIterator> DoubleEndedIterator for Exactly<I> { fn next_back(&mut self) -> Option<Self::Item> { - self.len = unsafe { self.len.unchecked_sub(1) }; + self.len = self.len.saturating_sub(1); self.iter.next_back() } } |