@@ -1851,6 +1851,7 @@ where
1851
1851
let ( _, upper) = self . iter . size_hint ( ) ;
1852
1852
( 0 , upper)
1853
1853
}
1854
+
1854
1855
#[ cfg_attr( feature = "inline-more" , inline) ]
1855
1856
fn fold < B , F > ( self , init : B , mut f : F ) -> B
1856
1857
where
@@ -1916,9 +1917,10 @@ where
1916
1917
1917
1918
#[ cfg_attr( feature = "inline-more" , inline) ]
1918
1919
fn size_hint ( & self ) -> ( usize , Option < usize > ) {
1919
- let ( _ , upper) = self . iter . size_hint ( ) ;
1920
- ( 0 , upper)
1920
+ let ( lower , upper) = self . iter . size_hint ( ) ;
1921
+ ( lower . saturating_sub ( self . other . len ( ) ) , upper)
1921
1922
}
1923
+
1922
1924
#[ cfg_attr( feature = "inline-more" , inline) ]
1923
1925
fn fold < B , F > ( self , init : B , mut f : F ) -> B
1924
1926
where
@@ -1975,10 +1977,12 @@ where
1975
1977
fn next ( & mut self ) -> Option < & ' a T > {
1976
1978
self . iter . next ( )
1977
1979
}
1980
+
1978
1981
#[ cfg_attr( feature = "inline-more" , inline) ]
1979
1982
fn size_hint ( & self ) -> ( usize , Option < usize > ) {
1980
1983
self . iter . size_hint ( )
1981
1984
}
1985
+
1982
1986
#[ cfg_attr( feature = "inline-more" , inline) ]
1983
1987
fn fold < B , F > ( self , init : B , f : F ) -> B
1984
1988
where
@@ -2048,10 +2052,12 @@ where
2048
2052
fn next ( & mut self ) -> Option < & ' a T > {
2049
2053
self . iter . next ( )
2050
2054
}
2055
+
2051
2056
#[ cfg_attr( feature = "inline-more" , inline) ]
2052
2057
fn size_hint ( & self ) -> ( usize , Option < usize > ) {
2053
2058
self . iter . size_hint ( )
2054
2059
}
2060
+
2055
2061
#[ cfg_attr( feature = "inline-more" , inline) ]
2056
2062
fn fold < B , F > ( self , init : B , f : F ) -> B
2057
2063
where
0 commit comments