From 3ceb0112ef307d4d280dda8aca4aa7d4a34eb3f6 Mon Sep 17 00:00:00 2001 From: Nick Cameron Date: Mon, 3 Nov 2014 17:52:00 +1300 Subject: Ignore whitespace tokens when re-computing spans in save_analysis --- src/libsyntax/parse/lexer/mod.rs | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/libsyntax/parse/lexer') diff --git a/src/libsyntax/parse/lexer/mod.rs b/src/libsyntax/parse/lexer/mod.rs index 293b91111b5..1bc1d42d888 100644 --- a/src/libsyntax/parse/lexer/mod.rs +++ b/src/libsyntax/parse/lexer/mod.rs @@ -35,6 +35,19 @@ pub trait Reader { /// Report a non-fatal error with the current span. fn err(&self, &str); fn peek(&self) -> TokenAndSpan; + /// Get a token the parser cares about. + fn real_token(&mut self) -> TokenAndSpan { + let mut t = self.next_token(); + loop { + match t.tok { + token::Whitespace | token::Comment | token::Shebang(_) => { + t = self.next_token(); + }, + _ => break + } + } + t + } } #[deriving(Clone, PartialEq, Eq, Show)] -- cgit 1.4.1-3-g733a5