use std::pin::Pin; use crate::prelude::*; use crate::stream::{Extend, IntoStream}; impl Extend for Vec { fn stream_extend<'a, S: IntoStream + 'a>( &'a mut self, stream: S, ) -> Pin + 'a>> { let stream = stream.into_stream(); self.reserve(stream.size_hint().0); Box::pin(stream.for_each(move |item| self.push(item))) } }