@@ -1342,6 +1342,10 @@ impl<'a, T> DoubleEndedIterator for Iter<'a, T> {
13421342
13431343#[ stable( feature = "rust1" , since = "1.0.0" ) ]
13441344impl < T > ExactSizeIterator for Iter < ' _ , T > {
1345+ fn len ( & self ) -> usize {
1346+ self . iter . len ( )
1347+ }
1348+
13451349 fn is_empty ( & self ) -> bool {
13461350 self . iter . is_empty ( )
13471351 }
@@ -1395,6 +1399,10 @@ impl<T> DoubleEndedIterator for IntoIter<T> {
13951399
13961400#[ stable( feature = "rust1" , since = "1.0.0" ) ]
13971401impl < T > ExactSizeIterator for IntoIter < T > {
1402+ fn len ( & self ) -> usize {
1403+ self . iter . len ( )
1404+ }
1405+
13981406 fn is_empty ( & self ) -> bool {
13991407 self . iter . is_empty ( )
14001408 }
@@ -1452,7 +1460,11 @@ impl<T: Ord> Iterator for IntoIterSorted<T> {
14521460}
14531461
14541462#[ unstable( feature = "binary_heap_into_iter_sorted" , issue = "59278" ) ]
1455- impl < T : Ord > ExactSizeIterator for IntoIterSorted < T > { }
1463+ impl < T : Ord > ExactSizeIterator for IntoIterSorted < T > {
1464+ fn len ( & self ) -> usize {
1465+ self . inner . len ( )
1466+ }
1467+ }
14561468
14571469#[ unstable( feature = "binary_heap_into_iter_sorted" , issue = "59278" ) ]
14581470impl < T : Ord > FusedIterator for IntoIterSorted < T > { }
@@ -1497,6 +1509,10 @@ impl<T> DoubleEndedIterator for Drain<'_, T> {
14971509
14981510#[ stable( feature = "drain" , since = "1.6.0" ) ]
14991511impl < T > ExactSizeIterator for Drain < ' _ , T > {
1512+ fn len ( & self ) -> usize {
1513+ self . iter . len ( )
1514+ }
1515+
15001516 fn is_empty ( & self ) -> bool {
15011517 self . iter . is_empty ( )
15021518 }
@@ -1554,7 +1570,11 @@ impl<T: Ord> Iterator for DrainSorted<'_, T> {
15541570}
15551571
15561572#[ unstable( feature = "binary_heap_drain_sorted" , issue = "59278" ) ]
1557- impl < T : Ord > ExactSizeIterator for DrainSorted < ' _ , T > { }
1573+ impl < T : Ord > ExactSizeIterator for DrainSorted < ' _ , T > {
1574+ fn len ( & self ) -> usize {
1575+ self . inner . len ( )
1576+ }
1577+ }
15581578
15591579#[ unstable( feature = "binary_heap_drain_sorted" , issue = "59278" ) ]
15601580impl < T : Ord > FusedIterator for DrainSorted < ' _ , T > { }
0 commit comments