diff options
| author | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2016-07-17 17:22:25 +0000 |
|---|---|---|
| committer | Jeffrey Seyfried <jeffrey.seyfried@gmail.com> | 2016-07-23 12:49:01 -0700 |
| commit | 41745f30f751364bdce14428b7d3ffa5dd028903 (patch) | |
| tree | 2d826ade6a6ff25cfd8e35310da57a4de152caea /src/libsyntax/tokenstream.rs | |
| parent | fd1d3603d46422bef6531a2d74401361ba1d822b (diff) | |
| download | rust-41745f30f751364bdce14428b7d3ffa5dd028903.tar.gz rust-41745f30f751364bdce14428b7d3ffa5dd028903.zip | |
macros: Improve `tt` fragments
Diffstat (limited to 'src/libsyntax/tokenstream.rs')
| -rw-r--r-- | src/libsyntax/tokenstream.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/libsyntax/tokenstream.rs b/src/libsyntax/tokenstream.rs index 0ad09fd0f7d..d38edf81688 100644 --- a/src/libsyntax/tokenstream.rs +++ b/src/libsyntax/tokenstream.rs @@ -135,6 +135,7 @@ impl TokenTree { } TokenTree::Token(_, token::SpecialVarNt(..)) => 2, TokenTree::Token(_, token::MatchNt(..)) => 3, + TokenTree::Token(_, token::Interpolated(Nonterminal::NtTT(..))) => 1, TokenTree::Delimited(_, ref delimed) => delimed.tts.len() + 2, TokenTree::Sequence(_, ref seq) => seq.tts.len(), TokenTree::Token(..) => 0, @@ -197,6 +198,9 @@ impl TokenTree { TokenTree::Token(sp, token::Ident(kind))]; v[index].clone() } + (&TokenTree::Token(_, token::Interpolated(Nonterminal::NtTT(ref tt))), _) => { + tt.clone().unwrap() + } (&TokenTree::Sequence(_, ref seq), _) => seq.tts[index].clone(), _ => panic!("Cannot expand a token tree"), } |
