File tree 1 file changed +11
-12
lines changed 1 file changed +11
-12
lines changed Original file line number Diff line number Diff line change @@ -167,7 +167,7 @@ where
167
167
I : Iterator < Item = T :: Item > ,
168
168
T : HomogeneousTuple ,
169
169
{
170
- iter : Fuse < I > ,
170
+ iter : I ,
171
171
last : Option < T > ,
172
172
}
173
173
@@ -180,7 +180,7 @@ where
180
180
{
181
181
TupleWindows {
182
182
last : None ,
183
- iter : iter . fuse ( ) ,
183
+ iter,
184
184
}
185
185
}
186
186
@@ -196,20 +196,19 @@ where
196
196
if T :: num_items ( ) == 1 {
197
197
return T :: collect_from_iter_no_buf ( & mut self . iter ) ;
198
198
}
199
- if let Some ( ref mut last ) = self . last {
200
- if let Some ( new ) = self . iter . next ( ) {
199
+ if let Some ( new ) = self . iter . next ( ) {
200
+ if let Some ( ref mut last ) = self . last {
201
201
last. left_shift_push ( new) ;
202
- return Some ( last. clone ( ) ) ;
203
- }
204
- } else {
205
- use std:: iter:: once;
206
- if let Some ( item) = self . iter . next ( ) {
207
- let iter = once ( item) . chain ( & mut self . iter ) ;
202
+ Some ( last. clone ( ) )
203
+ } else {
204
+ use std:: iter:: once;
205
+ let iter = once ( new) . chain ( & mut self . iter ) ;
208
206
self . last = T :: collect_from_iter_no_buf ( iter) ;
209
- return self . last . clone ( ) ;
207
+ self . last . clone ( )
210
208
}
209
+ } else {
210
+ None
211
211
}
212
- None
213
212
}
214
213
215
214
fn size_hint ( & self ) -> ( usize , Option < usize > ) {
You can’t perform that action at this time.
0 commit comments