@@ -2912,22 +2912,22 @@ pub trait Itertools : Iterator {
2912
2912
/// use itertools::Itertools;
2913
2913
///
2914
2914
/// let a: [i32; 0] = [];
2915
- /// assert_eq!(a.iter().min_set(), None );
2915
+ /// assert_eq!(a.iter().min_set(), Vec::<&i32>::new() );
2916
2916
///
2917
2917
/// let a = [1];
2918
- /// assert_eq!(a.iter().min_set(), Some( vec![&1]) );
2918
+ /// assert_eq!(a.iter().min_set(), vec![&1]);
2919
2919
///
2920
2920
/// let a = [1, 2, 3, 4, 5];
2921
- /// assert_eq!(a.iter().min_set(), Some( vec![&1]) );
2921
+ /// assert_eq!(a.iter().min_set(), vec![&1]);
2922
2922
///
2923
2923
/// let a = [1, 1, 1, 1];
2924
- /// assert_eq!(a.iter().min_set(), Some( vec![&1, &1, &1, &1]) );
2924
+ /// assert_eq!(a.iter().min_set(), vec![&1, &1, &1, &1]);
2925
2925
/// ```
2926
2926
///
2927
2927
/// The elements can be floats but no particular result is guaranteed
2928
2928
/// if an element is NaN.
2929
2929
#[ cfg( feature = "use_std" ) ]
2930
- fn min_set ( self ) -> Option < Vec < Self :: Item > >
2930
+ fn min_set ( self ) -> Vec < Self :: Item >
2931
2931
where Self : Sized , Self :: Item : PartialOrd
2932
2932
{
2933
2933
extrema_set:: min_set_impl ( self , |_| ( ) , |x, y, _, _| x < y)
@@ -2943,22 +2943,22 @@ pub trait Itertools : Iterator {
2943
2943
/// use itertools::Itertools;
2944
2944
///
2945
2945
/// let a: [(i32, i32); 0] = [];
2946
- /// assert_eq!(a.iter().min_set_by(|_, _| Ordering::Equal), None );
2946
+ /// assert_eq!(a.iter().min_set_by(|_, _| Ordering::Equal), Vec::<&(i32, i32)>::new() );
2947
2947
///
2948
2948
/// let a = [(1, 2)];
2949
- /// assert_eq!(a.iter().min_set_by(|&&(k1,_), &&(k2, _)| k1.cmp(&k2)), Some( vec![&(1, 2)]) );
2949
+ /// assert_eq!(a.iter().min_set_by(|&&(k1,_), &&(k2, _)| k1.cmp(&k2)), vec![&(1, 2)]);
2950
2950
///
2951
2951
/// let a = [(1, 2), (2, 2), (3, 9), (4, 8), (5, 9)];
2952
- /// assert_eq!(a.iter().min_set_by(|&&(_,k1), &&(_,k2)| k1.cmp(&k2)), Some( vec![&(1, 2), &(2, 2)]) );
2952
+ /// assert_eq!(a.iter().min_set_by(|&&(_,k1), &&(_,k2)| k1.cmp(&k2)), vec![&(1, 2), &(2, 2)]);
2953
2953
///
2954
2954
/// let a = [(1, 2), (1, 3), (1, 4), (1, 5)];
2955
- /// assert_eq!(a.iter().min_set_by(|&&(k1,_), &&(k2, _)| k1.cmp(&k2)), Some( vec![&(1, 2), &(1, 3), &(1, 4), &(1, 5)]) );
2955
+ /// assert_eq!(a.iter().min_set_by(|&&(k1,_), &&(k2, _)| k1.cmp(&k2)), vec![&(1, 2), &(1, 3), &(1, 4), &(1, 5)]);
2956
2956
/// ```
2957
2957
///
2958
2958
/// The elements can be floats but no particular result is guaranteed
2959
2959
/// if an element is NaN.
2960
2960
#[ cfg( feature = "use_std" ) ]
2961
- fn min_set_by < F > ( self , mut compare : F ) -> Option < Vec < Self :: Item > >
2961
+ fn min_set_by < F > ( self , mut compare : F ) -> Vec < Self :: Item >
2962
2962
where Self : Sized , F : FnMut ( & Self :: Item , & Self :: Item ) -> Ordering
2963
2963
{
2964
2964
extrema_set:: min_set_impl (
@@ -2977,22 +2977,22 @@ pub trait Itertools : Iterator {
2977
2977
/// use itertools::Itertools;
2978
2978
///
2979
2979
/// let a: [(i32, i32); 0] = [];
2980
- /// assert_eq!(a.iter().min_set_by_key(|_| ()), None );
2980
+ /// assert_eq!(a.iter().min_set_by_key(|_| ()), Vec::<&(i32, i32)>::new() );
2981
2981
///
2982
2982
/// let a = [(1, 2)];
2983
- /// assert_eq!(a.iter().min_set_by_key(|&&(k,_)| k), Some( vec![&(1, 2)]) );
2983
+ /// assert_eq!(a.iter().min_set_by_key(|&&(k,_)| k), vec![&(1, 2)]);
2984
2984
///
2985
2985
/// let a = [(1, 2), (2, 2), (3, 9), (4, 8), (5, 9)];
2986
- /// assert_eq!(a.iter().min_set_by_key(|&&(_, k)| k), Some( vec![&(1, 2), &(2, 2)]) );
2986
+ /// assert_eq!(a.iter().min_set_by_key(|&&(_, k)| k), vec![&(1, 2), &(2, 2)]);
2987
2987
///
2988
2988
/// let a = [(1, 2), (1, 3), (1, 4), (1, 5)];
2989
- /// assert_eq!(a.iter().min_set_by_key(|&&(k, _)| k), Some( vec![&(1, 2), &(1, 3), &(1, 4), &(1, 5)]) );
2989
+ /// assert_eq!(a.iter().min_set_by_key(|&&(k, _)| k), vec![&(1, 2), &(1, 3), &(1, 4), &(1, 5)]);
2990
2990
/// ```
2991
2991
///
2992
2992
/// The elements can be floats but no particular result is guaranteed
2993
2993
/// if an element is NaN.
2994
2994
#[ cfg( feature = "use_std" ) ]
2995
- fn min_set_by_key < K , F > ( self , key : F ) -> Option < Vec < Self :: Item > >
2995
+ fn min_set_by_key < K , F > ( self , key : F ) -> Vec < Self :: Item >
2996
2996
where Self : Sized , K : PartialOrd , F : FnMut ( & Self :: Item ) -> K
2997
2997
{
2998
2998
extrema_set:: min_set_impl ( self , key, |_, _, kx, ky| kx < ky)
@@ -3006,22 +3006,22 @@ pub trait Itertools : Iterator {
3006
3006
/// use itertools::Itertools;
3007
3007
///
3008
3008
/// let a: [i32; 0] = [];
3009
- /// assert_eq!(a.iter().max_set(), None );
3009
+ /// assert_eq!(a.iter().max_set(), Vec::<&i32>::new() );
3010
3010
///
3011
3011
/// let a = [1];
3012
- /// assert_eq!(a.iter().max_set(), Some( vec![&1]) );
3012
+ /// assert_eq!(a.iter().max_set(), vec![&1]);
3013
3013
///
3014
3014
/// let a = [1, 2, 3, 4, 5];
3015
- /// assert_eq!(a.iter().max_set(), Some( vec![&5]) );
3015
+ /// assert_eq!(a.iter().max_set(), vec![&5]);
3016
3016
///
3017
3017
/// let a = [1, 1, 1, 1];
3018
- /// assert_eq!(a.iter().max_set(), Some( vec![&1, &1, &1, &1]) );
3018
+ /// assert_eq!(a.iter().max_set(), vec![&1, &1, &1, &1]);
3019
3019
/// ```
3020
3020
///
3021
3021
/// The elements can be floats but no particular result is guaranteed
3022
3022
/// if an element is NaN.
3023
3023
#[ cfg( feature = "use_std" ) ]
3024
- fn max_set ( self ) -> Option < Vec < Self :: Item > >
3024
+ fn max_set ( self ) -> Vec < Self :: Item >
3025
3025
where Self : Sized , Self :: Item : PartialOrd
3026
3026
{
3027
3027
extrema_set:: max_set_impl ( self , |_| ( ) , |x, y, _, _| x < y)
@@ -3037,22 +3037,22 @@ pub trait Itertools : Iterator {
3037
3037
/// use itertools::Itertools;
3038
3038
///
3039
3039
/// let a: [(i32, i32); 0] = [];
3040
- /// assert_eq!(a.iter().max_set_by(|_, _| Ordering::Equal), None );
3040
+ /// assert_eq!(a.iter().max_set_by(|_, _| Ordering::Equal), Vec::<&(i32, i32)>::new() );
3041
3041
///
3042
3042
/// let a = [(1, 2)];
3043
- /// assert_eq!(a.iter().max_set_by(|&&(k1,_), &&(k2, _)| k1.cmp(&k2)), Some( vec![&(1, 2)]) );
3043
+ /// assert_eq!(a.iter().max_set_by(|&&(k1,_), &&(k2, _)| k1.cmp(&k2)), vec![&(1, 2)]);
3044
3044
///
3045
3045
/// let a = [(1, 2), (2, 2), (3, 9), (4, 8), (5, 9)];
3046
- /// assert_eq!(a.iter().max_set_by(|&&(_,k1), &&(_,k2)| k1.cmp(&k2)), Some( vec![&(3, 9), &(5, 9)]) );
3046
+ /// assert_eq!(a.iter().max_set_by(|&&(_,k1), &&(_,k2)| k1.cmp(&k2)), vec![&(3, 9), &(5, 9)]);
3047
3047
///
3048
3048
/// let a = [(1, 2), (1, 3), (1, 4), (1, 5)];
3049
- /// assert_eq!(a.iter().max_set_by(|&&(k1,_), &&(k2, _)| k1.cmp(&k2)), Some( vec![&(1, 2), &(1, 3), &(1, 4), &(1, 5)]) );
3049
+ /// assert_eq!(a.iter().max_set_by(|&&(k1,_), &&(k2, _)| k1.cmp(&k2)), vec![&(1, 2), &(1, 3), &(1, 4), &(1, 5)]);
3050
3050
/// ```
3051
3051
///
3052
3052
/// The elements can be floats but no particular result is guaranteed
3053
3053
/// if an element is NaN.
3054
3054
#[ cfg( feature = "use_std" ) ]
3055
- fn max_set_by < F > ( self , mut compare : F ) -> Option < Vec < Self :: Item > >
3055
+ fn max_set_by < F > ( self , mut compare : F ) -> Vec < Self :: Item >
3056
3056
where Self : Sized , F : FnMut ( & Self :: Item , & Self :: Item ) -> Ordering
3057
3057
{
3058
3058
extrema_set:: max_set_impl (
@@ -3071,22 +3071,22 @@ pub trait Itertools : Iterator {
3071
3071
/// use itertools::Itertools;
3072
3072
///
3073
3073
/// let a: [(i32, i32); 0] = [];
3074
- /// assert_eq!(a.iter().max_set_by_key(|_| ()), None );
3074
+ /// assert_eq!(a.iter().max_set_by_key(|_| ()), Vec::<&(i32, i32)>::new() );
3075
3075
///
3076
3076
/// let a = [(1, 2)];
3077
- /// assert_eq!(a.iter().max_set_by_key(|&&(k,_)| k), Some( vec![&(1, 2)]) );
3077
+ /// assert_eq!(a.iter().max_set_by_key(|&&(k,_)| k), vec![&(1, 2)]);
3078
3078
///
3079
3079
/// let a = [(1, 2), (2, 2), (3, 9), (4, 8), (5, 9)];
3080
- /// assert_eq!(a.iter().max_set_by_key(|&&(_, k)| k), Some( vec![&(3, 9), &(5, 9)]) );
3080
+ /// assert_eq!(a.iter().max_set_by_key(|&&(_, k)| k), vec![&(3, 9), &(5, 9)]);
3081
3081
///
3082
3082
/// let a = [(1, 2), (1, 3), (1, 4), (1, 5)];
3083
- /// assert_eq!(a.iter().max_set_by_key(|&&(k, _)| k), Some( vec![&(1, 2), &(1, 3), &(1, 4), &(1, 5)]) );
3083
+ /// assert_eq!(a.iter().max_set_by_key(|&&(k, _)| k), vec![&(1, 2), &(1, 3), &(1, 4), &(1, 5)]);
3084
3084
/// ```
3085
3085
///
3086
3086
/// The elements can be floats but no particular result is guaranteed
3087
3087
/// if an element is NaN.
3088
3088
#[ cfg( feature = "use_std" ) ]
3089
- fn max_set_by_key < K , F > ( self , key : F ) -> Option < Vec < Self :: Item > >
3089
+ fn max_set_by_key < K , F > ( self , key : F ) -> Vec < Self :: Item >
3090
3090
where Self : Sized , K : PartialOrd , F : FnMut ( & Self :: Item ) -> K
3091
3091
{
3092
3092
extrema_set:: max_set_impl ( self , key, |_, _, kx, ky| kx < ky)
0 commit comments