diff options
| author | Vadim Petrochenkov <vadim.petrochenkov@gmail.com> | 2019-12-01 15:55:32 +0300 |
|---|---|---|
| committer | Vadim Petrochenkov <vadim.petrochenkov@gmail.com> | 2019-12-02 21:56:34 +0300 |
| commit | 0fac56717a1bce4e362d91d8f4e71d65676d49a3 (patch) | |
| tree | 11b5ebb959a47b61f5e8a7e1853d85c8b62e7554 /src/libsyntax/tokenstream.rs | |
| parent | a81804b4d5f222f94758139b504aa2570528f9f1 (diff) | |
| download | rust-0fac56717a1bce4e362d91d8f4e71d65676d49a3.tar.gz rust-0fac56717a1bce4e362d91d8f4e71d65676d49a3.zip | |
syntax: Remove redundant span from `ast::Mac`
Also remove a couple of redundant `visit_mac` asserts
Diffstat (limited to 'src/libsyntax/tokenstream.rs')
| -rw-r--r-- | src/libsyntax/tokenstream.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/libsyntax/tokenstream.rs b/src/libsyntax/tokenstream.rs index 6a0523dd655..491b9a9ade4 100644 --- a/src/libsyntax/tokenstream.rs +++ b/src/libsyntax/tokenstream.rs @@ -225,6 +225,14 @@ impl TokenStream { self.0.len() } + pub fn span(&self) -> Option<Span> { + match &**self.0 { + [] => None, + [(tt, _)] => Some(tt.span()), + [(tt_start, _), .., (tt_end, _)] => Some(tt_start.span().to(tt_end.span())), + } + } + pub fn from_streams(mut streams: SmallVec<[TokenStream; 2]>) -> TokenStream { match streams.len() { 0 => TokenStream::default(), |
