File tree 1 file changed +20
-0
lines changed
1 file changed +20
-0
lines changed Original file line number Diff line number Diff line change @@ -722,6 +722,15 @@ impl<A: Step> Iterator for ops::Range<A> {
722
722
}
723
723
}
724
724
725
+ #[ inline]
726
+ fn count ( self ) -> usize {
727
+ if self . start < self . end {
728
+ Step :: steps_between ( & self . start , & self . end ) . expect ( "count overflowed usize" )
729
+ } else {
730
+ 0
731
+ }
732
+ }
733
+
725
734
#[ inline]
726
735
fn nth ( & mut self , n : usize ) -> Option < A > {
727
736
self . spec_nth ( n)
@@ -1119,6 +1128,17 @@ impl<A: Step> Iterator for ops::RangeInclusive<A> {
1119
1128
}
1120
1129
}
1121
1130
1131
+ #[ inline]
1132
+ fn count ( self ) -> usize {
1133
+ if self . is_empty ( ) {
1134
+ return 0 ;
1135
+ }
1136
+
1137
+ Step :: steps_between ( & self . start , & self . end )
1138
+ . and_then ( |steps| steps. checked_add ( 1 ) )
1139
+ . expect ( "count overflowed usize" )
1140
+ }
1141
+
1122
1142
#[ inline]
1123
1143
fn nth ( & mut self , n : usize ) -> Option < A > {
1124
1144
if self . is_empty ( ) {
You can’t perform that action at this time.
0 commit comments