@@ -123,54 +123,30 @@ impl<'a> StringReader<'a> {
123
123
/// `Err(())` means that some errors were encountered, which can be
124
124
/// retrieved using `buffer_fatal_errors`.
125
125
pub fn try_next_token ( & mut self ) -> Result < Token , ( ) > {
126
- let ( token, _raw_span) = self . try_next_token_with_raw_span ( ) ?;
127
- Ok ( token)
128
- }
129
-
130
- /// Returns the next token, including trivia like whitespace or comments.
131
- ///
132
- /// Aborts in case of an error.
133
- pub fn next_token ( & mut self ) -> Token {
134
- let res = self . try_next_token ( ) ;
135
- self . unwrap_or_abort ( res)
136
- }
137
-
138
- /// Returns the next token, skipping over trivia.
139
- /// Also returns an unoverriden span which can be used to check tokens
140
- fn real_token ( & mut self ) -> ( Token , Span ) {
141
- let res = try {
142
- loop {
143
- let t = self . try_next_token_with_raw_span ( ) ?;
144
- match t. 0 . kind {
145
- token:: Whitespace | token:: Comment | token:: Shebang ( _) => continue ,
146
- _ => break t,
147
- }
148
- }
149
- } ;
150
-
151
- self . unwrap_or_abort ( res)
152
- }
153
-
154
- fn try_next_token_with_raw_span ( & mut self ) -> Result < ( Token , Span ) , ( ) > {
155
126
assert ! ( self . fatal_errs. is_empty( ) ) ;
156
127
match self . scan_whitespace_or_comment ( ) {
157
- Some ( comment) => {
158
- let raw_span = comment. span ;
159
- Ok ( ( comment, raw_span) )
160
- }
128
+ Some ( comment) => Ok ( comment) ,
161
129
None => {
162
130
let ( kind, start_pos, end_pos) = if self . is_eof ( ) {
163
131
( token:: Eof , self . source_file . end_pos , self . source_file . end_pos )
164
132
} else {
165
133
let start_pos = self . pos ;
166
134
( self . next_token_inner ( ) ?, start_pos, self . pos )
167
135
} ;
168
- let ( real, raw ) = self . mk_sp_and_raw ( start_pos, end_pos) ;
169
- Ok ( ( Token :: new ( kind, real) , raw ) )
136
+ let ( real, _raw ) = self . mk_sp_and_raw ( start_pos, end_pos) ;
137
+ Ok ( Token :: new ( kind, real) )
170
138
}
171
139
}
172
140
}
173
141
142
+ /// Returns the next token, including trivia like whitespace or comments.
143
+ ///
144
+ /// Aborts in case of an error.
145
+ pub fn next_token ( & mut self ) -> Token {
146
+ let res = self . try_next_token ( ) ;
147
+ self . unwrap_or_abort ( res)
148
+ }
149
+
174
150
#[ inline]
175
151
fn is_eof ( & self ) -> bool {
176
152
self . ch . is_none ( )
0 commit comments