@@ -947,7 +947,7 @@ mod test_drain_filter {
947
947
#[ test]
948
948
fn empty ( ) {
949
949
let mut map: BTreeMap < i32 , i32 > = BTreeMap :: new ( ) ;
950
- map. drain_filter ( |_, _| unreachable ! ( "there's nothing to decide on" ) ) ;
950
+ map. drain_filter ( |_, _| unreachable ! ( "there's nothing to decide on" ) ) . for_each ( drop ) ;
951
951
assert_eq ! ( map. height( ) , None ) ;
952
952
map. check ( ) ;
953
953
}
@@ -1008,7 +1008,7 @@ mod test_drain_filter {
1008
1008
fn underfull_keeping_all ( ) {
1009
1009
let pairs = ( 0 ..3 ) . map ( |i| ( i, i) ) ;
1010
1010
let mut map = BTreeMap :: from_iter ( pairs) ;
1011
- map. drain_filter ( |_, _| false ) ;
1011
+ map. drain_filter ( |_, _| false ) . for_each ( drop ) ;
1012
1012
assert ! ( map. keys( ) . copied( ) . eq( 0 ..3 ) ) ;
1013
1013
map. check ( ) ;
1014
1014
}
@@ -1018,7 +1018,7 @@ mod test_drain_filter {
1018
1018
let pairs = ( 0 ..3 ) . map ( |i| ( i, i) ) ;
1019
1019
for doomed in 0 ..3 {
1020
1020
let mut map = BTreeMap :: from_iter ( pairs. clone ( ) ) ;
1021
- map. drain_filter ( |i, _| * i == doomed) ;
1021
+ map. drain_filter ( |i, _| * i == doomed) . for_each ( drop ) ;
1022
1022
assert_eq ! ( map. len( ) , 2 ) ;
1023
1023
map. check ( ) ;
1024
1024
}
@@ -1029,7 +1029,7 @@ mod test_drain_filter {
1029
1029
let pairs = ( 0 ..3 ) . map ( |i| ( i, i) ) ;
1030
1030
for sacred in 0 ..3 {
1031
1031
let mut map = BTreeMap :: from_iter ( pairs. clone ( ) ) ;
1032
- map. drain_filter ( |i, _| * i != sacred) ;
1032
+ map. drain_filter ( |i, _| * i != sacred) . for_each ( drop ) ;
1033
1033
assert ! ( map. keys( ) . copied( ) . eq( sacred..=sacred) ) ;
1034
1034
map. check ( ) ;
1035
1035
}
@@ -1039,7 +1039,7 @@ mod test_drain_filter {
1039
1039
fn underfull_removing_all ( ) {
1040
1040
let pairs = ( 0 ..3 ) . map ( |i| ( i, i) ) ;
1041
1041
let mut map = BTreeMap :: from_iter ( pairs) ;
1042
- map. drain_filter ( |_, _| true ) ;
1042
+ map. drain_filter ( |_, _| true ) . for_each ( drop ) ;
1043
1043
assert ! ( map. is_empty( ) ) ;
1044
1044
map. check ( ) ;
1045
1045
}
@@ -1048,7 +1048,7 @@ mod test_drain_filter {
1048
1048
fn height_0_keeping_all ( ) {
1049
1049
let pairs = ( 0 ..node:: CAPACITY ) . map ( |i| ( i, i) ) ;
1050
1050
let mut map = BTreeMap :: from_iter ( pairs) ;
1051
- map. drain_filter ( |_, _| false ) ;
1051
+ map. drain_filter ( |_, _| false ) . for_each ( drop ) ;
1052
1052
assert ! ( map. keys( ) . copied( ) . eq( 0 ..node:: CAPACITY ) ) ;
1053
1053
map. check ( ) ;
1054
1054
}
@@ -1058,7 +1058,7 @@ mod test_drain_filter {
1058
1058
let pairs = ( 0 ..node:: CAPACITY ) . map ( |i| ( i, i) ) ;
1059
1059
for doomed in 0 ..node:: CAPACITY {
1060
1060
let mut map = BTreeMap :: from_iter ( pairs. clone ( ) ) ;
1061
- map. drain_filter ( |i, _| * i == doomed) ;
1061
+ map. drain_filter ( |i, _| * i == doomed) . for_each ( drop ) ;
1062
1062
assert_eq ! ( map. len( ) , node:: CAPACITY - 1 ) ;
1063
1063
map. check ( ) ;
1064
1064
}
@@ -1069,7 +1069,7 @@ mod test_drain_filter {
1069
1069
let pairs = ( 0 ..node:: CAPACITY ) . map ( |i| ( i, i) ) ;
1070
1070
for sacred in 0 ..node:: CAPACITY {
1071
1071
let mut map = BTreeMap :: from_iter ( pairs. clone ( ) ) ;
1072
- map. drain_filter ( |i, _| * i != sacred) ;
1072
+ map. drain_filter ( |i, _| * i != sacred) . for_each ( drop ) ;
1073
1073
assert ! ( map. keys( ) . copied( ) . eq( sacred..=sacred) ) ;
1074
1074
map. check ( ) ;
1075
1075
}
@@ -1079,7 +1079,7 @@ mod test_drain_filter {
1079
1079
fn height_0_removing_all ( ) {
1080
1080
let pairs = ( 0 ..node:: CAPACITY ) . map ( |i| ( i, i) ) ;
1081
1081
let mut map = BTreeMap :: from_iter ( pairs) ;
1082
- map. drain_filter ( |_, _| true ) ;
1082
+ map. drain_filter ( |_, _| true ) . for_each ( drop ) ;
1083
1083
assert ! ( map. is_empty( ) ) ;
1084
1084
map. check ( ) ;
1085
1085
}
@@ -1096,7 +1096,7 @@ mod test_drain_filter {
1096
1096
fn height_1_removing_all ( ) {
1097
1097
let pairs = ( 0 ..MIN_INSERTS_HEIGHT_1 ) . map ( |i| ( i, i) ) ;
1098
1098
let mut map = BTreeMap :: from_iter ( pairs) ;
1099
- map. drain_filter ( |_, _| true ) ;
1099
+ map. drain_filter ( |_, _| true ) . for_each ( drop ) ;
1100
1100
assert ! ( map. is_empty( ) ) ;
1101
1101
map. check ( ) ;
1102
1102
}
@@ -1106,7 +1106,7 @@ mod test_drain_filter {
1106
1106
let pairs = ( 0 ..MIN_INSERTS_HEIGHT_1 ) . map ( |i| ( i, i) ) ;
1107
1107
for doomed in 0 ..MIN_INSERTS_HEIGHT_1 {
1108
1108
let mut map = BTreeMap :: from_iter ( pairs. clone ( ) ) ;
1109
- map. drain_filter ( |i, _| * i == doomed) ;
1109
+ map. drain_filter ( |i, _| * i == doomed) . for_each ( drop ) ;
1110
1110
assert_eq ! ( map. len( ) , MIN_INSERTS_HEIGHT_1 - 1 ) ;
1111
1111
map. check ( ) ;
1112
1112
}
@@ -1117,7 +1117,7 @@ mod test_drain_filter {
1117
1117
let pairs = ( 0 ..MIN_INSERTS_HEIGHT_1 ) . map ( |i| ( i, i) ) ;
1118
1118
for sacred in 0 ..MIN_INSERTS_HEIGHT_1 {
1119
1119
let mut map = BTreeMap :: from_iter ( pairs. clone ( ) ) ;
1120
- map. drain_filter ( |i, _| * i != sacred) ;
1120
+ map. drain_filter ( |i, _| * i != sacred) . for_each ( drop ) ;
1121
1121
assert ! ( map. keys( ) . copied( ) . eq( sacred..=sacred) ) ;
1122
1122
map. check ( ) ;
1123
1123
}
@@ -1128,7 +1128,7 @@ mod test_drain_filter {
1128
1128
let pairs = ( 0 ..MIN_INSERTS_HEIGHT_2 ) . map ( |i| ( i, i) ) ;
1129
1129
for doomed in ( 0 ..MIN_INSERTS_HEIGHT_2 ) . step_by ( 12 ) {
1130
1130
let mut map = BTreeMap :: from_iter ( pairs. clone ( ) ) ;
1131
- map. drain_filter ( |i, _| * i == doomed) ;
1131
+ map. drain_filter ( |i, _| * i == doomed) . for_each ( drop ) ;
1132
1132
assert_eq ! ( map. len( ) , MIN_INSERTS_HEIGHT_2 - 1 ) ;
1133
1133
map. check ( ) ;
1134
1134
}
@@ -1139,7 +1139,7 @@ mod test_drain_filter {
1139
1139
let pairs = ( 0 ..MIN_INSERTS_HEIGHT_2 ) . map ( |i| ( i, i) ) ;
1140
1140
for sacred in ( 0 ..MIN_INSERTS_HEIGHT_2 ) . step_by ( 12 ) {
1141
1141
let mut map = BTreeMap :: from_iter ( pairs. clone ( ) ) ;
1142
- map. drain_filter ( |i, _| * i != sacred) ;
1142
+ map. drain_filter ( |i, _| * i != sacred) . for_each ( drop ) ;
1143
1143
assert ! ( map. keys( ) . copied( ) . eq( sacred..=sacred) ) ;
1144
1144
map. check ( ) ;
1145
1145
}
@@ -1149,7 +1149,7 @@ mod test_drain_filter {
1149
1149
fn height_2_removing_all ( ) {
1150
1150
let pairs = ( 0 ..MIN_INSERTS_HEIGHT_2 ) . map ( |i| ( i, i) ) ;
1151
1151
let mut map = BTreeMap :: from_iter ( pairs) ;
1152
- map. drain_filter ( |_, _| true ) ;
1152
+ map. drain_filter ( |_, _| true ) . for_each ( drop ) ;
1153
1153
assert ! ( map. is_empty( ) ) ;
1154
1154
map. check ( ) ;
1155
1155
}
@@ -1165,7 +1165,8 @@ mod test_drain_filter {
1165
1165
map. insert ( b. spawn ( Panic :: InDrop ) , ( ) ) ;
1166
1166
map. insert ( c. spawn ( Panic :: Never ) , ( ) ) ;
1167
1167
1168
- catch_unwind ( move || drop ( map. drain_filter ( |dummy, _| dummy. query ( true ) ) ) ) . unwrap_err ( ) ;
1168
+ catch_unwind ( move || map. drain_filter ( |dummy, _| dummy. query ( true ) ) . for_each ( drop) )
1169
+ . unwrap_err ( ) ;
1169
1170
1170
1171
assert_eq ! ( a. queried( ) , 1 ) ;
1171
1172
assert_eq ! ( b. queried( ) , 1 ) ;
@@ -1186,8 +1187,10 @@ mod test_drain_filter {
1186
1187
map. insert ( b. spawn ( Panic :: InQuery ) , ( ) ) ;
1187
1188
map. insert ( c. spawn ( Panic :: InQuery ) , ( ) ) ;
1188
1189
1189
- catch_unwind ( AssertUnwindSafe ( || drop ( map. drain_filter ( |dummy, _| dummy. query ( true ) ) ) ) )
1190
- . unwrap_err ( ) ;
1190
+ catch_unwind ( AssertUnwindSafe ( || {
1191
+ map. drain_filter ( |dummy, _| dummy. query ( true ) ) . for_each ( drop)
1192
+ } ) )
1193
+ . unwrap_err ( ) ;
1191
1194
1192
1195
assert_eq ! ( a. queried( ) , 1 ) ;
1193
1196
assert_eq ! ( b. queried( ) , 1 ) ;
0 commit comments