]> git.lizzy.rs Git - rust.git/commitdiff
Make spec_extend use for_each()
authorNathan West <Lucretiel@users.noreply.github.com>
Tue, 2 Oct 2018 19:35:25 +0000 (12:35 -0700)
committerGitHub <noreply@github.com>
Tue, 2 Oct 2018 19:35:25 +0000 (12:35 -0700)
src/liballoc/vec.rs

index e845438c0a836972d56a39c72cd7f897e6a1e626..2bc037e3fee126343715212911c8b62e1d28867e 100644 (file)
@@ -1822,12 +1822,12 @@ impl<T, I> SpecExtend<T, I> for Vec<T>
             unsafe {
                 let mut ptr = self.as_mut_ptr().add(self.len());
                 let mut local_len = SetLenOnDrop::new(&mut self.len);
-                for element in iterator {
+                iterator.for_each(move |element| {
                     ptr::write(ptr, element);
                     ptr = ptr.offset(1);
                     // NB can't overflow since we would have had to alloc the address space
                     local_len.increment_len(1);
-                }
+                });
             }
         } else {
             self.extend_desugared(iterator)