@@ -82,12 +82,13 @@ pub mod structs {
82
82
DedupBy ,
83
83
Interleave ,
84
84
InterleaveShortest ,
85
- FilterMapResults ,
86
- FilterResults ,
85
+ FilterMapOk ,
86
+ FilterOk ,
87
87
Product ,
88
88
PutBack ,
89
89
Batching ,
90
90
MapInto ,
91
+ MapOk ,
91
92
MapResults ,
92
93
Merge ,
93
94
MergeBy ,
@@ -696,6 +697,14 @@ pub trait Itertools : Iterator {
696
697
adaptors:: map_into ( self )
697
698
}
698
699
700
+ #[ deprecated( note="Use .map_ok() instead" , since="0.10" ) ]
701
+ fn map_results < F , T , U , E > ( self , f : F ) -> MapOk < Self , F >
702
+ where Self : Iterator < Item = Result < T , E > > + Sized ,
703
+ F : FnMut ( T ) -> U ,
704
+ {
705
+ self . map_ok ( f)
706
+ }
707
+
699
708
/// Return an iterator adaptor that applies the provided closure
700
709
/// to every `Result::Ok` value. `Result::Err` values are
701
710
/// unchanged.
@@ -704,14 +713,14 @@ pub trait Itertools : Iterator {
704
713
/// use itertools::Itertools;
705
714
///
706
715
/// let input = vec![Ok(41), Err(false), Ok(11)];
707
- /// let it = input.into_iter().map_results (|i| i + 1);
716
+ /// let it = input.into_iter().map_ok (|i| i + 1);
708
717
/// itertools::assert_equal(it, vec![Ok(42), Err(false), Ok(12)]);
709
718
/// ```
710
- fn map_results < F , T , U , E > ( self , f : F ) -> MapResults < Self , F >
719
+ fn map_ok < F , T , U , E > ( self , f : F ) -> MapOk < Self , F >
711
720
where Self : Iterator < Item = Result < T , E > > + Sized ,
712
721
F : FnMut ( T ) -> U ,
713
722
{
714
- adaptors:: map_results ( self , f)
723
+ adaptors:: map_ok ( self , f)
715
724
}
716
725
717
726
/// Return an iterator adaptor that filters every `Result::Ok`
@@ -722,14 +731,14 @@ pub trait Itertools : Iterator {
722
731
/// use itertools::Itertools;
723
732
///
724
733
/// let input = vec![Ok(22), Err(false), Ok(11)];
725
- /// let it = input.into_iter().filter_results (|&i| i > 20);
734
+ /// let it = input.into_iter().filter_ok (|&i| i > 20);
726
735
/// itertools::assert_equal(it, vec![Ok(22), Err(false)]);
727
736
/// ```
728
- fn filter_results < F , T , E > ( self , f : F ) -> FilterResults < Self , F >
737
+ fn filter_ok < F , T , E > ( self , f : F ) -> FilterOk < Self , F >
729
738
where Self : Iterator < Item = Result < T , E > > + Sized ,
730
739
F : FnMut ( & T ) -> bool ,
731
740
{
732
- adaptors:: filter_results ( self , f)
741
+ adaptors:: filter_ok ( self , f)
733
742
}
734
743
735
744
/// Return an iterator adaptor that filters and transforms every
@@ -740,14 +749,14 @@ pub trait Itertools : Iterator {
740
749
/// use itertools::Itertools;
741
750
///
742
751
/// let input = vec![Ok(22), Err(false), Ok(11)];
743
- /// let it = input.into_iter().filter_map_results (|i| if i > 20 { Some(i * 2) } else { None });
752
+ /// let it = input.into_iter().filter_map_ok (|i| if i > 20 { Some(i * 2) } else { None });
744
753
/// itertools::assert_equal(it, vec![Ok(44), Err(false)]);
745
754
/// ```
746
- fn filter_map_results < F , T , U , E > ( self , f : F ) -> FilterMapResults < Self , F >
755
+ fn filter_map_ok < F , T , U , E > ( self , f : F ) -> FilterMapOk < Self , F >
747
756
where Self : Iterator < Item = Result < T , E > > + Sized ,
748
757
F : FnMut ( T ) -> Option < U > ,
749
758
{
750
- adaptors:: filter_map_results ( self , f)
759
+ adaptors:: filter_map_ok ( self , f)
751
760
}
752
761
753
762
/// Return an iterator adaptor that merges the two base iterators in
@@ -1699,6 +1708,14 @@ pub trait Itertools : Iterator {
1699
1708
format:: new_format ( self , sep, format)
1700
1709
}
1701
1710
1711
+ #[ deprecated( note="Use .fold_ok() instead" , since="0.10" ) ]
1712
+ fn fold_results < A , E , B , F > ( & mut self , mut start : B , mut f : F ) -> Result < B , E >
1713
+ where Self : Iterator < Item = Result < A , E > > ,
1714
+ F : FnMut ( B , A ) -> B
1715
+ {
1716
+ self . fold_ok ( start, f)
1717
+ }
1718
+
1702
1719
/// Fold `Result` values from an iterator.
1703
1720
///
1704
1721
/// Only `Ok` values are folded. If no error is encountered, the folded
@@ -1731,17 +1748,17 @@ pub trait Itertools : Iterator {
1731
1748
/// assert_eq!(
1732
1749
/// values.iter()
1733
1750
/// .map(Ok::<_, ()>)
1734
- /// .fold_results (0, Add::add),
1751
+ /// .fold_ok (0, Add::add),
1735
1752
/// Ok(3)
1736
1753
/// );
1737
1754
/// assert!(
1738
1755
/// values.iter()
1739
1756
/// .map(|&x| if x >= 0 { Ok(x) } else { Err("Negative number") })
1740
- /// .fold_results (0, Add::add)
1757
+ /// .fold_ok (0, Add::add)
1741
1758
/// .is_err()
1742
1759
/// );
1743
1760
/// ```
1744
- fn fold_results < A , E , B , F > ( & mut self , mut start : B , mut f : F ) -> Result < B , E >
1761
+ fn fold_ok < A , E , B , F > ( & mut self , mut start : B , mut f : F ) -> Result < B , E >
1745
1762
where Self : Iterator < Item = Result < A , E > > ,
1746
1763
F : FnMut ( B , A ) -> B
1747
1764
{
@@ -1760,7 +1777,7 @@ pub trait Itertools : Iterator {
1760
1777
/// value is returned inside `Some`. Otherwise, the operation terminates
1761
1778
/// and returns `None`. No iterator elements are consumed after the `None`.
1762
1779
///
1763
- /// This is the `Option` equivalent to `fold_results `.
1780
+ /// This is the `Option` equivalent to `fold_ok `.
1764
1781
///
1765
1782
/// ```
1766
1783
/// use std::ops::Add;
0 commit comments