diff options
| author | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2017-01-18 03:27:09 +0000 |
|---|---|---|
| committer | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2017-01-22 21:37:38 +0000 |
| commit | 2dc60b1180b2974b8966c33100e9541845e1d2e8 (patch) | |
| tree | 8d5ca1abc7811361e7528325010330143daba668 /src/libproc_macro | |
| parent | ec29011346ac91f2acdc0455ad6dc19a6f9614ca (diff) | |
| download | rust-2dc60b1180b2974b8966c33100e9541845e1d2e8.tar.gz rust-2dc60b1180b2974b8966c33100e9541845e1d2e8.zip | |
Refactor `TokenStream`.
Diffstat (limited to 'src/libproc_macro')
| -rw-r--r-- | src/libproc_macro/lib.rs | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/libproc_macro/lib.rs b/src/libproc_macro/lib.rs index ab5962779fe..f962c888f42 100644 --- a/src/libproc_macro/lib.rs +++ b/src/libproc_macro/lib.rs @@ -82,14 +82,15 @@ pub mod __internal { use syntax::ast; use syntax::ptr::P; use syntax::parse::{self, token, ParseSess}; - use syntax::tokenstream::TokenStream as TokenStream_; + use syntax::tokenstream::{TokenTree, TokenStream as TokenStream_}; use super::{TokenStream, LexError}; pub fn new_token_stream(item: P<ast::Item>) -> TokenStream { - TokenStream { inner: TokenStream_::from_tokens(vec![ - token::Interpolated(Rc::new(token::NtItem(item))) - ])} + TokenStream { + inner: TokenTree::Token(item.span, token::Interpolated(Rc::new(token::NtItem(item)))) + .into() + } } pub fn token_stream_wrap(inner: TokenStream_) -> TokenStream { @@ -175,7 +176,7 @@ impl FromStr for TokenStream { let tts = try!(parse::parse_tts_from_source_str(name, src, sess) .map_err(parse_to_lex_err)); - Ok(__internal::token_stream_wrap(TokenStream_::from_tts(tts))) + Ok(__internal::token_stream_wrap(tts.into_iter().collect())) }) } } |
