@@ -1197,6 +1197,12 @@ impl<'a, K, V> DoubleEndedIterator for Keys<'a, K, V> {
1197
1197
}
1198
1198
}
1199
1199
1200
+ impl < ' a , K , V > ExactSizeIterator for Keys < ' a , K , V > {
1201
+ fn len ( & self ) -> usize {
1202
+ self . iter . len ( )
1203
+ }
1204
+ }
1205
+
1200
1206
pub struct Values < ' a , K : ' a , V : ' a > {
1201
1207
iter : SliceIter < ' a , Bucket < K , V > > ,
1202
1208
}
@@ -1231,6 +1237,12 @@ impl<'a, K, V> DoubleEndedIterator for Values<'a, K, V> {
1231
1237
}
1232
1238
}
1233
1239
1240
+ impl < ' a , K , V > ExactSizeIterator for Values < ' a , K , V > {
1241
+ fn len ( & self ) -> usize {
1242
+ self . iter . len ( )
1243
+ }
1244
+ }
1245
+
1234
1246
pub struct ValuesMut < ' a , K : ' a , V : ' a > {
1235
1247
iter : SliceIterMut < ' a , Bucket < K , V > > ,
1236
1248
}
@@ -1265,6 +1277,12 @@ impl<'a, K, V> DoubleEndedIterator for ValuesMut<'a, K, V> {
1265
1277
}
1266
1278
}
1267
1279
1280
+ impl < ' a , K , V > ExactSizeIterator for ValuesMut < ' a , K , V > {
1281
+ fn len ( & self ) -> usize {
1282
+ self . iter . len ( )
1283
+ }
1284
+ }
1285
+
1268
1286
pub struct Iter < ' a , K : ' a , V : ' a > {
1269
1287
iter : SliceIter < ' a , Bucket < K , V > > ,
1270
1288
}
@@ -1299,6 +1317,12 @@ impl<'a, K, V> DoubleEndedIterator for Iter<'a, K, V> {
1299
1317
}
1300
1318
}
1301
1319
1320
+ impl < ' a , K , V > ExactSizeIterator for Iter < ' a , K , V > {
1321
+ fn len ( & self ) -> usize {
1322
+ self . iter . len ( )
1323
+ }
1324
+ }
1325
+
1302
1326
pub struct IterMut < ' a , K : ' a , V : ' a > {
1303
1327
iter : SliceIterMut < ' a , Bucket < K , V > > ,
1304
1328
}
@@ -1333,6 +1357,12 @@ impl<'a, K, V> DoubleEndedIterator for IterMut<'a, K, V> {
1333
1357
}
1334
1358
}
1335
1359
1360
+ impl < ' a , K , V > ExactSizeIterator for IterMut < ' a , K , V > {
1361
+ fn len ( & self ) -> usize {
1362
+ self . iter . len ( )
1363
+ }
1364
+ }
1365
+
1336
1366
pub struct IntoIter < K , V > {
1337
1367
iter : VecIntoIter < Bucket < K , V > > ,
1338
1368
}
@@ -1367,6 +1397,13 @@ impl<'a, K, V> DoubleEndedIterator for IntoIter<K, V> {
1367
1397
}
1368
1398
}
1369
1399
1400
+ impl < K , V > ExactSizeIterator for IntoIter < K , V > {
1401
+ fn len ( & self ) -> usize {
1402
+ self . iter . len ( )
1403
+ }
1404
+ }
1405
+
1406
+
1370
1407
impl < ' a , K , V , S > IntoIterator for & ' a OrderMap < K , V , S >
1371
1408
where K : Hash + Eq ,
1372
1409
S : BuildHasher ,
0 commit comments