Add `FromIterator<TokenStream> for TokenStream`
This was left out by accident! It'll already be avaialable in 1.29.0 Rust, so
let's include it here as well.
diff --git a/src/stable.rs b/src/stable.rs
index 935e86c..34df695 100644
--- a/src/stable.rs
+++ b/src/stable.rs
@@ -154,6 +154,18 @@
}
}
+impl iter::FromIterator<TokenStream> for TokenStream {
+ fn from_iter<I: IntoIterator<Item = TokenStream>>(streams: I) -> Self {
+ let mut v = Vec::new();
+
+ for stream in streams.into_iter() {
+ v.extend(stream.inner);
+ }
+
+ TokenStream { inner: v }
+ }
+}
+
impl Extend<TokenTree> for TokenStream {
fn extend<I: IntoIterator<Item = TokenTree>>(&mut self, streams: I) {
self.inner.extend(streams);