rollup merge of #18562 : nick29581/dxr-1

This commit is contained in:
Alex Crichton 2014-11-03 15:29:46 -08:00
commit 2659b2e885
3 changed files with 29 additions and 29 deletions

View file

@ -92,7 +92,7 @@ impl<'a> SpanUtils<'a> {
let mut toks = self.retokenise_span(span);
let mut bracket_count = 0u;
loop {
let ts = toks.next_token();
let ts = toks.real_token();
if ts.tok == token::Eof {
return self.make_sub_span(span, result)
}
@ -115,7 +115,7 @@ impl<'a> SpanUtils<'a> {
let mut toks = self.retokenise_span(span);
let mut bracket_count = 0u;
loop {
let ts = toks.next_token();
let ts = toks.real_token();
if ts.tok == token::Eof {
return None;
}
@ -137,13 +137,13 @@ impl<'a> SpanUtils<'a> {
// any brackets, or the last span.
pub fn sub_span_for_meth_name(&self, span: Span) -> Option<Span> {
let mut toks = self.retokenise_span(span);
let mut prev = toks.next_token();
let mut prev = toks.real_token();
let mut result = None;
let mut bracket_count = 0u;
let mut last_span = None;
while prev.tok != token::Eof {
last_span = None;
let mut next = toks.next_token();
let mut next = toks.real_token();
if (next.tok == token::OpenDelim(token::Paren) ||
next.tok == token::Lt) &&
@ -156,7 +156,7 @@ impl<'a> SpanUtils<'a> {
next.tok == token::ModSep {
let old = prev;
prev = next;
next = toks.next_token();
next = toks.real_token();
if next.tok == token::Lt &&
old.tok.is_ident() {
result = Some(old.sp);
@ -185,11 +185,11 @@ impl<'a> SpanUtils<'a> {
// brackets, or the last span.
pub fn sub_span_for_type_name(&self, span: Span) -> Option<Span> {
let mut toks = self.retokenise_span(span);
let mut prev = toks.next_token();
let mut prev = toks.real_token();
let mut result = None;
let mut bracket_count = 0u;
loop {
let next = toks.next_token();
let next = toks.real_token();
if (next.tok == token::Lt ||
next.tok == token::Colon) &&
@ -234,7 +234,7 @@ impl<'a> SpanUtils<'a> {
// We keep track of how many brackets we're nested in
let mut bracket_count = 0i;
loop {
let ts = toks.next_token();
let ts = toks.real_token();
if ts.tok == token::Eof {
if bracket_count != 0 {
let loc = self.sess.codemap().lookup_char_pos(span.lo);
@ -263,12 +263,12 @@ impl<'a> SpanUtils<'a> {
pub fn sub_span_before_token(&self, span: Span, tok: Token) -> Option<Span> {
let mut toks = self.retokenise_span(span);
let mut prev = toks.next_token();
let mut prev = toks.real_token();
loop {
if prev.tok == token::Eof {
return None;
}
let next = toks.next_token();
let next = toks.real_token();
if next.tok == tok {
return self.make_sub_span(span, Some(prev.sp));
}
@ -281,15 +281,16 @@ impl<'a> SpanUtils<'a> {
keyword: keywords::Keyword) -> Option<Span> {
let mut toks = self.retokenise_span(span);
loop {
let ts = toks.next_token();
let ts = toks.real_token();
if ts.tok == token::Eof {
return None;
}
if ts.tok.is_keyword(keyword) {
let ts = toks.next_token();
let ts = toks.real_token();
if ts.tok == token::Eof {
return None
} else {
println!("found keyword: {} at {}", ts, ts.sp);
return self.make_sub_span(span, Some(ts.sp));
}
}