auto merge of #18365 : bjz/rust/token, r=alexcrichton
[breaking-change]
(for syntax-extensions)
- Token variant identifiers have been converted to PascalCase for consistency with Rust coding standards
- Some free-functions in `syntax::token` have been converted to methods on `syntax::token::Token`:
- `can_begin_expr` -> `Token::can_begin_expr`
- `close_delimiter_for` -> `Token::get_close_delimiter`
- `is_lit` -> `Token::is_lit`
- `is_ident` -> `Token::is_ident`
- `is_path` -> `Token::is_path`
- `is_plain_ident` -> `Token::is_plain_ident`
- `is_lifetime` -> `Token::is_lifetime`
- `is_mutability` -> `Token::is_mutability`
- `to_binop` -> `Token::to_binop`
- `is_keyword` -> `Token::is_keyword`
- `is_any_keyword` -> `Token:is_any_keyword`
- `is_strict_keyword` -> `Token::is_strict_keyword`
- `is_reserved_keyword` -> `Token::is_reserved_keyword`
- `mtwt_token_eq` -> `Token::mtwt_eq`
- `token::Ident` now takes an enum instead of a boolean for clarity
- `token::{to_string, binop_to_string}` were moved to `pprust::{token_to_string, binop_to_string}`
This commit is contained in:
commit
3bc545373d
29 changed files with 1501 additions and 1421 deletions
|
|
@ -428,7 +428,7 @@ impl <'l, 'tcx> DxrVisitor<'l, 'tcx> {
|
|||
let qualname = format!("{}::{}", qualname, name);
|
||||
let typ = ppaux::ty_to_string(&self.analysis.ty_cx,
|
||||
(*self.analysis.ty_cx.node_types.borrow())[field.node.id as uint]);
|
||||
match self.span.sub_span_before_token(field.span, token::COLON) {
|
||||
match self.span.sub_span_before_token(field.span, token::Colon) {
|
||||
Some(sub_span) => self.fmt.field_str(field.span,
|
||||
Some(sub_span),
|
||||
field.node.id,
|
||||
|
|
@ -1175,7 +1175,7 @@ impl<'l, 'tcx, 'v> Visitor<'v> for DxrVisitor<'l, 'tcx> {
|
|||
// 'use' always introduces an alias, if there is not an explicit
|
||||
// one, there is an implicit one.
|
||||
let sub_span =
|
||||
match self.span.sub_span_before_token(path.span, token::EQ) {
|
||||
match self.span.sub_span_before_token(path.span, token::Eq) {
|
||||
Some(sub_span) => Some(sub_span),
|
||||
None => sub_span,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ use syntax::codemap::*;
|
|||
use syntax::parse::lexer;
|
||||
use syntax::parse::lexer::{Reader,StringReader};
|
||||
use syntax::parse::token;
|
||||
use syntax::parse::token::{is_keyword,keywords,is_ident,Token};
|
||||
use syntax::parse::token::{keywords, Token};
|
||||
|
||||
pub struct SpanUtils<'a> {
|
||||
pub sess: &'a Session,
|
||||
|
|
@ -93,18 +93,18 @@ impl<'a> SpanUtils<'a> {
|
|||
let mut bracket_count = 0u;
|
||||
loop {
|
||||
let ts = toks.next_token();
|
||||
if ts.tok == token::EOF {
|
||||
if ts.tok == token::Eof {
|
||||
return self.make_sub_span(span, result)
|
||||
}
|
||||
if bracket_count == 0 &&
|
||||
(is_ident(&ts.tok) || is_keyword(keywords::Self, &ts.tok)) {
|
||||
(ts.tok.is_ident() || ts.tok.is_keyword(keywords::Self)) {
|
||||
result = Some(ts.sp);
|
||||
}
|
||||
|
||||
bracket_count += match ts.tok {
|
||||
token::LT => 1,
|
||||
token::GT => -1,
|
||||
token::BINOP(token::SHR) => -2,
|
||||
token::Lt => 1,
|
||||
token::Gt => -1,
|
||||
token::BinOp(token::Shr) => -2,
|
||||
_ => 0
|
||||
}
|
||||
}
|
||||
|
|
@ -116,18 +116,18 @@ impl<'a> SpanUtils<'a> {
|
|||
let mut bracket_count = 0u;
|
||||
loop {
|
||||
let ts = toks.next_token();
|
||||
if ts.tok == token::EOF {
|
||||
if ts.tok == token::Eof {
|
||||
return None;
|
||||
}
|
||||
if bracket_count == 0 &&
|
||||
(is_ident(&ts.tok) || is_keyword(keywords::Self, &ts.tok)) {
|
||||
(ts.tok.is_ident() || ts.tok.is_keyword(keywords::Self)) {
|
||||
return self.make_sub_span(span, Some(ts.sp));
|
||||
}
|
||||
|
||||
bracket_count += match ts.tok {
|
||||
token::LT => 1,
|
||||
token::GT => -1,
|
||||
token::BINOP(token::SHR) => -2,
|
||||
token::Lt => 1,
|
||||
token::Gt => -1,
|
||||
token::BinOp(token::Shr) => -2,
|
||||
_ => 0
|
||||
}
|
||||
}
|
||||
|
|
@ -141,36 +141,36 @@ impl<'a> SpanUtils<'a> {
|
|||
let mut result = None;
|
||||
let mut bracket_count = 0u;
|
||||
let mut last_span = None;
|
||||
while prev.tok != token::EOF {
|
||||
while prev.tok != token::Eof {
|
||||
last_span = None;
|
||||
let mut next = toks.next_token();
|
||||
|
||||
if (next.tok == token::LPAREN ||
|
||||
next.tok == token::LT) &&
|
||||
if (next.tok == token::LParen ||
|
||||
next.tok == token::Lt) &&
|
||||
bracket_count == 0 &&
|
||||
is_ident(&prev.tok) {
|
||||
prev.tok.is_ident() {
|
||||
result = Some(prev.sp);
|
||||
}
|
||||
|
||||
if bracket_count == 0 &&
|
||||
next.tok == token::MOD_SEP {
|
||||
next.tok == token::ModSep {
|
||||
let old = prev;
|
||||
prev = next;
|
||||
next = toks.next_token();
|
||||
if next.tok == token::LT &&
|
||||
is_ident(&old.tok) {
|
||||
if next.tok == token::Lt &&
|
||||
old.tok.is_ident() {
|
||||
result = Some(old.sp);
|
||||
}
|
||||
}
|
||||
|
||||
bracket_count += match prev.tok {
|
||||
token::LPAREN | token::LT => 1,
|
||||
token::RPAREN | token::GT => -1,
|
||||
token::BINOP(token::SHR) => -2,
|
||||
token::LParen | token::Lt => 1,
|
||||
token::RParen | token::Gt => -1,
|
||||
token::BinOp(token::Shr) => -2,
|
||||
_ => 0
|
||||
};
|
||||
|
||||
if is_ident(&prev.tok) && bracket_count == 0 {
|
||||
if prev.tok.is_ident() && bracket_count == 0 {
|
||||
last_span = Some(prev.sp);
|
||||
}
|
||||
prev = next;
|
||||
|
|
@ -191,21 +191,21 @@ impl<'a> SpanUtils<'a> {
|
|||
loop {
|
||||
let next = toks.next_token();
|
||||
|
||||
if (next.tok == token::LT ||
|
||||
next.tok == token::COLON) &&
|
||||
if (next.tok == token::Lt ||
|
||||
next.tok == token::Colon) &&
|
||||
bracket_count == 0 &&
|
||||
is_ident(&prev.tok) {
|
||||
prev.tok.is_ident() {
|
||||
result = Some(prev.sp);
|
||||
}
|
||||
|
||||
bracket_count += match prev.tok {
|
||||
token::LT => 1,
|
||||
token::GT => -1,
|
||||
token::BINOP(token::SHR) => -2,
|
||||
token::Lt => 1,
|
||||
token::Gt => -1,
|
||||
token::BinOp(token::Shr) => -2,
|
||||
_ => 0
|
||||
};
|
||||
|
||||
if next.tok == token::EOF {
|
||||
if next.tok == token::Eof {
|
||||
break;
|
||||
}
|
||||
prev = next;
|
||||
|
|
@ -216,7 +216,7 @@ impl<'a> SpanUtils<'a> {
|
|||
format!("Mis-counted brackets when breaking path? Parsing '{}' in {}, line {}",
|
||||
self.snippet(span), loc.file.name, loc.line).as_slice());
|
||||
}
|
||||
if result.is_none() && is_ident(&prev.tok) && bracket_count == 0 {
|
||||
if result.is_none() && prev.tok.is_ident() && bracket_count == 0 {
|
||||
return self.make_sub_span(span, Some(prev.sp));
|
||||
}
|
||||
self.make_sub_span(span, result)
|
||||
|
|
@ -235,7 +235,7 @@ impl<'a> SpanUtils<'a> {
|
|||
let mut bracket_count = 0i;
|
||||
loop {
|
||||
let ts = toks.next_token();
|
||||
if ts.tok == token::EOF {
|
||||
if ts.tok == token::Eof {
|
||||
if bracket_count != 0 {
|
||||
let loc = self.sess.codemap().lookup_char_pos(span.lo);
|
||||
self.sess.span_bug(span, format!(
|
||||
|
|
@ -248,13 +248,13 @@ impl<'a> SpanUtils<'a> {
|
|||
return result;
|
||||
}
|
||||
bracket_count += match ts.tok {
|
||||
token::LT => 1,
|
||||
token::GT => -1,
|
||||
token::BINOP(token::SHL) => 2,
|
||||
token::BINOP(token::SHR) => -2,
|
||||
token::Lt => 1,
|
||||
token::Gt => -1,
|
||||
token::BinOp(token::Shl) => 2,
|
||||
token::BinOp(token::Shr) => -2,
|
||||
_ => 0
|
||||
};
|
||||
if is_ident(&ts.tok) &&
|
||||
if ts.tok.is_ident() &&
|
||||
bracket_count == nesting {
|
||||
result.push(self.make_sub_span(span, Some(ts.sp)).unwrap());
|
||||
}
|
||||
|
|
@ -265,7 +265,7 @@ impl<'a> SpanUtils<'a> {
|
|||
let mut toks = self.retokenise_span(span);
|
||||
let mut prev = toks.next_token();
|
||||
loop {
|
||||
if prev.tok == token::EOF {
|
||||
if prev.tok == token::Eof {
|
||||
return None;
|
||||
}
|
||||
let next = toks.next_token();
|
||||
|
|
@ -282,12 +282,12 @@ impl<'a> SpanUtils<'a> {
|
|||
let mut toks = self.retokenise_span(span);
|
||||
loop {
|
||||
let ts = toks.next_token();
|
||||
if ts.tok == token::EOF {
|
||||
if ts.tok == token::Eof {
|
||||
return None;
|
||||
}
|
||||
if is_keyword(keyword, &ts.tok) {
|
||||
if ts.tok.is_keyword(keyword) {
|
||||
let ts = toks.next_token();
|
||||
if ts.tok == token::EOF {
|
||||
if ts.tok == token::Eof {
|
||||
return None
|
||||
} else {
|
||||
return self.make_sub_span(span, Some(ts.sp));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue