@@ -1053,16 +1053,14 @@ pub fn min<T: Ord>(v1: T, v2: T) -> T {
1053
1053
/// # Examples
1054
1054
///
1055
1055
/// ```
1056
- /// #![feature(cmp_min_max_by)]
1057
- ///
1058
1056
/// use std::cmp;
1059
1057
///
1060
1058
/// assert_eq!(cmp::min_by(-2, 1, |x: &i32, y: &i32| x.abs().cmp(&y.abs())), 1);
1061
1059
/// assert_eq!(cmp::min_by(-2, 2, |x: &i32, y: &i32| x.abs().cmp(&y.abs())), -2);
1062
1060
/// ```
1063
1061
#[ inline]
1064
1062
#[ must_use]
1065
- #[ unstable ( feature = "cmp_min_max_by" , issue = "64460 " ) ]
1063
+ #[ stable ( feature = "cmp_min_max_by" , since = "1.53.0 " ) ]
1066
1064
pub fn min_by < T , F : FnOnce ( & T , & T ) -> Ordering > ( v1 : T , v2 : T , compare : F ) -> T {
1067
1065
match compare ( & v1, & v2) {
1068
1066
Ordering :: Less | Ordering :: Equal => v1,
@@ -1077,16 +1075,14 @@ pub fn min_by<T, F: FnOnce(&T, &T) -> Ordering>(v1: T, v2: T, compare: F) -> T {
1077
1075
/// # Examples
1078
1076
///
1079
1077
/// ```
1080
- /// #![feature(cmp_min_max_by)]
1081
- ///
1082
1078
/// use std::cmp;
1083
1079
///
1084
1080
/// assert_eq!(cmp::min_by_key(-2, 1, |x: &i32| x.abs()), 1);
1085
1081
/// assert_eq!(cmp::min_by_key(-2, 2, |x: &i32| x.abs()), -2);
1086
1082
/// ```
1087
1083
#[ inline]
1088
1084
#[ must_use]
1089
- #[ unstable ( feature = "cmp_min_max_by" , issue = "64460 " ) ]
1085
+ #[ stable ( feature = "cmp_min_max_by" , since = "1.53.0 " ) ]
1090
1086
pub fn min_by_key < T , F : FnMut ( & T ) -> K , K : Ord > ( v1 : T , v2 : T , mut f : F ) -> T {
1091
1087
min_by ( v1, v2, |v1, v2| f ( v1) . cmp ( & f ( v2) ) )
1092
1088
}
@@ -1119,16 +1115,14 @@ pub fn max<T: Ord>(v1: T, v2: T) -> T {
1119
1115
/// # Examples
1120
1116
///
1121
1117
/// ```
1122
- /// #![feature(cmp_min_max_by)]
1123
- ///
1124
1118
/// use std::cmp;
1125
1119
///
1126
1120
/// assert_eq!(cmp::max_by(-2, 1, |x: &i32, y: &i32| x.abs().cmp(&y.abs())), -2);
1127
1121
/// assert_eq!(cmp::max_by(-2, 2, |x: &i32, y: &i32| x.abs().cmp(&y.abs())), 2);
1128
1122
/// ```
1129
1123
#[ inline]
1130
1124
#[ must_use]
1131
- #[ unstable ( feature = "cmp_min_max_by" , issue = "64460 " ) ]
1125
+ #[ stable ( feature = "cmp_min_max_by" , since = "1.53.0 " ) ]
1132
1126
pub fn max_by < T , F : FnOnce ( & T , & T ) -> Ordering > ( v1 : T , v2 : T , compare : F ) -> T {
1133
1127
match compare ( & v1, & v2) {
1134
1128
Ordering :: Less | Ordering :: Equal => v2,
@@ -1143,16 +1137,14 @@ pub fn max_by<T, F: FnOnce(&T, &T) -> Ordering>(v1: T, v2: T, compare: F) -> T {
1143
1137
/// # Examples
1144
1138
///
1145
1139
/// ```
1146
- /// #![feature(cmp_min_max_by)]
1147
- ///
1148
1140
/// use std::cmp;
1149
1141
///
1150
1142
/// assert_eq!(cmp::max_by_key(-2, 1, |x: &i32| x.abs()), -2);
1151
1143
/// assert_eq!(cmp::max_by_key(-2, 2, |x: &i32| x.abs()), 2);
1152
1144
/// ```
1153
1145
#[ inline]
1154
1146
#[ must_use]
1155
- #[ unstable ( feature = "cmp_min_max_by" , issue = "64460 " ) ]
1147
+ #[ stable ( feature = "cmp_min_max_by" , since = "1.53.0 " ) ]
1156
1148
pub fn max_by_key < T , F : FnMut ( & T ) -> K , K : Ord > ( v1 : T , v2 : T , mut f : F ) -> T {
1157
1149
max_by ( v1, v2, |v1, v2| f ( v1) . cmp ( & f ( v2) ) )
1158
1150
}
0 commit comments