@@ -92,7 +92,7 @@ impl<'a> SpanUtils<'a> {
92
92
let mut toks = self . retokenise_span ( span) ;
93
93
let mut bracket_count = 0 u;
94
94
loop {
95
- let ts = toks. next_token ( ) ;
95
+ let ts = toks. real_token ( ) ;
96
96
if ts. tok == token:: Eof {
97
97
return self . make_sub_span ( span, result)
98
98
}
@@ -115,7 +115,7 @@ impl<'a> SpanUtils<'a> {
115
115
let mut toks = self . retokenise_span ( span) ;
116
116
let mut bracket_count = 0 u;
117
117
loop {
118
- let ts = toks. next_token ( ) ;
118
+ let ts = toks. real_token ( ) ;
119
119
if ts. tok == token:: Eof {
120
120
return None ;
121
121
}
@@ -137,13 +137,13 @@ impl<'a> SpanUtils<'a> {
137
137
// any brackets, or the last span.
138
138
pub fn sub_span_for_meth_name ( & self , span : Span ) -> Option < Span > {
139
139
let mut toks = self . retokenise_span ( span) ;
140
- let mut prev = toks. next_token ( ) ;
140
+ let mut prev = toks. real_token ( ) ;
141
141
let mut result = None ;
142
142
let mut bracket_count = 0 u;
143
143
let mut last_span = None ;
144
144
while prev. tok != token:: Eof {
145
145
last_span = None ;
146
- let mut next = toks. next_token ( ) ;
146
+ let mut next = toks. real_token ( ) ;
147
147
148
148
if ( next. tok == token:: OpenDelim ( token:: Paren ) ||
149
149
next. tok == token:: Lt ) &&
@@ -156,7 +156,7 @@ impl<'a> SpanUtils<'a> {
156
156
next. tok == token:: ModSep {
157
157
let old = prev;
158
158
prev = next;
159
- next = toks. next_token ( ) ;
159
+ next = toks. real_token ( ) ;
160
160
if next. tok == token:: Lt &&
161
161
old. tok . is_ident ( ) {
162
162
result = Some ( old. sp ) ;
@@ -185,11 +185,11 @@ impl<'a> SpanUtils<'a> {
185
185
// brackets, or the last span.
186
186
pub fn sub_span_for_type_name ( & self , span : Span ) -> Option < Span > {
187
187
let mut toks = self . retokenise_span ( span) ;
188
- let mut prev = toks. next_token ( ) ;
188
+ let mut prev = toks. real_token ( ) ;
189
189
let mut result = None ;
190
190
let mut bracket_count = 0 u;
191
191
loop {
192
- let next = toks. next_token ( ) ;
192
+ let next = toks. real_token ( ) ;
193
193
194
194
if ( next. tok == token:: Lt ||
195
195
next. tok == token:: Colon ) &&
@@ -234,7 +234,7 @@ impl<'a> SpanUtils<'a> {
234
234
// We keep track of how many brackets we're nested in
235
235
let mut bracket_count = 0 i;
236
236
loop {
237
- let ts = toks. next_token ( ) ;
237
+ let ts = toks. real_token ( ) ;
238
238
if ts. tok == token:: Eof {
239
239
if bracket_count != 0 {
240
240
let loc = self . sess . codemap ( ) . lookup_char_pos ( span. lo ) ;
@@ -263,12 +263,12 @@ impl<'a> SpanUtils<'a> {
263
263
264
264
pub fn sub_span_before_token ( & self , span : Span , tok : Token ) -> Option < Span > {
265
265
let mut toks = self . retokenise_span ( span) ;
266
- let mut prev = toks. next_token ( ) ;
266
+ let mut prev = toks. real_token ( ) ;
267
267
loop {
268
268
if prev. tok == token:: Eof {
269
269
return None ;
270
270
}
271
- let next = toks. next_token ( ) ;
271
+ let next = toks. real_token ( ) ;
272
272
if next. tok == tok {
273
273
return self . make_sub_span ( span, Some ( prev. sp ) ) ;
274
274
}
@@ -281,15 +281,16 @@ impl<'a> SpanUtils<'a> {
281
281
keyword : keywords:: Keyword ) -> Option < Span > {
282
282
let mut toks = self . retokenise_span ( span) ;
283
283
loop {
284
- let ts = toks. next_token ( ) ;
284
+ let ts = toks. real_token ( ) ;
285
285
if ts. tok == token:: Eof {
286
286
return None ;
287
287
}
288
288
if ts. tok . is_keyword ( keyword) {
289
- let ts = toks. next_token ( ) ;
289
+ let ts = toks. real_token ( ) ;
290
290
if ts. tok == token:: Eof {
291
291
return None
292
292
} else {
293
+ println ! ( "found keyword: {} at {}" , ts, ts. sp) ;
293
294
return self . make_sub_span ( span, Some ( ts. sp ) ) ;
294
295
}
295
296
}
0 commit comments