diff options
Diffstat (limited to 'src/pad_tail.rs')
-rw-r--r-- | src/pad_tail.rs | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/pad_tail.rs b/src/pad_tail.rs index 4ed83c3..de57ee4 100644 --- a/src/pad_tail.rs +++ b/src/pad_tail.rs @@ -1,4 +1,4 @@ -use std::iter::Fuse; +use std::iter::{Fuse, FusedIterator}; use crate::size_hint; /// An iterator adaptor that pads a sequence to a minimum length by filling @@ -6,7 +6,7 @@ use crate::size_hint; /// /// Iterator element type is `I::Item`. /// -/// See [`.pad_using()`](../trait.Itertools.html#method.pad_using) for more information. +/// See [`.pad_using()`](crate::Itertools::pad_using) for more information. #[derive(Clone)] #[must_use = "iterator adaptors are lazy and do nothing unless consumed"] pub struct PadUsing<I, F> { @@ -16,6 +16,13 @@ pub struct PadUsing<I, F> { filler: F, } +impl<I, F> std::fmt::Debug for PadUsing<I, F> +where + I: std::fmt::Debug, +{ + debug_fmt_fields!(PadUsing, iter, min, pos); +} + /// Create a new **PadUsing** iterator. pub fn pad_using<I, F>(iter: I, min: usize, filler: F) -> PadUsing<I, F> where I: Iterator, @@ -81,3 +88,9 @@ impl<I, F> ExactSizeIterator for PadUsing<I, F> where I: ExactSizeIterator, F: FnMut(usize) -> I::Item {} + + +impl<I, F> FusedIterator for PadUsing<I, F> + where I: FusedIterator, + F: FnMut(usize) -> I::Item +{} |