Skip to content

Commit 272c25e

Browse files
committed
libsyntax: minor cleanup
1 parent 3635480 commit 272c25e

File tree

3 files changed

+246
-138
lines changed

3 files changed

+246
-138
lines changed

src/libsyntax/parse/attr.rs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -151,9 +151,12 @@ impl parser_attr for Parser {
151151
}
152152

153153
fn parse_meta_seq() -> ~[@ast::meta_item] {
154-
return self.parse_seq(token::LPAREN, token::RPAREN,
155-
seq_sep_trailing_disallowed(token::COMMA),
156-
|p| p.parse_meta_item()).node;
154+
self.parse_seq(
155+
token::LPAREN,
156+
token::RPAREN,
157+
seq_sep_trailing_disallowed(token::COMMA),
158+
|p| p.parse_meta_item()
159+
).node
157160
}
158161

159162
fn parse_optional_meta() -> ~[@ast::meta_item] {

src/libsyntax/parse/common.rs

Lines changed: 88 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -29,20 +29,20 @@ pub struct SeqSep {
2929

3030
pub fn seq_sep_trailing_disallowed(t: token::Token) -> SeqSep {
3131
SeqSep {
32-
sep: option::Some(t),
33-
trailing_sep_allowed: false
32+
sep: Some(t),
33+
trailing_sep_allowed: false,
3434
}
3535
}
3636
pub fn seq_sep_trailing_allowed(t: token::Token) -> SeqSep {
3737
SeqSep {
38-
sep: option::Some(t),
39-
trailing_sep_allowed: true
38+
sep: Some(t),
39+
trailing_sep_allowed: true,
4040
}
4141
}
4242
pub fn seq_sep_none() -> SeqSep {
4343
SeqSep {
44-
sep: option::None,
45-
trailing_sep_allowed: false
44+
sep: None,
45+
trailing_sep_allowed: false,
4646
}
4747
}
4848

@@ -54,12 +54,20 @@ pub impl Parser {
5454
fn unexpected_last(t: token::Token) -> ! {
5555
self.span_fatal(
5656
*self.last_span,
57-
~"unexpected token: `" + token_to_str(self.reader, t) + ~"`");
57+
fmt!(
58+
"unexpected token: `%s`",
59+
token_to_str(self.reader, t)
60+
)
61+
);
5862
}
5963

6064
fn unexpected() -> ! {
61-
self.fatal(~"unexpected token: `"
62-
+ token_to_str(self.reader, *self.token) + ~"`");
65+
self.fatal(
66+
fmt!(
67+
"unexpected token: `%s`",
68+
token_to_str(self.reader, *self.token)
69+
)
70+
);
6371
}
6472

6573
// expect and consume the token t. Signal an error if
@@ -81,12 +89,23 @@ pub impl Parser {
8189
self.check_strict_keywords();
8290
self.check_reserved_keywords();
8391
match *self.token {
84-
token::IDENT(i, _) => { self.bump(); return i; }
85-
token::INTERPOLATED(token::nt_ident(*)) => { self.bug(
86-
~"ident interpolation not converted to real token"); }
87-
_ => { self.fatal(~"expected ident, found `"
88-
+ token_to_str(self.reader, *self.token)
89-
+ ~"`"); }
92+
token::IDENT(i, _) => {
93+
self.bump();
94+
i
95+
}
96+
token::INTERPOLATED(token::nt_ident(*)) => {
97+
self.bug(
98+
~"ident interpolation not converted to real token"
99+
);
100+
}
101+
_ => {
102+
self.fatal(
103+
fmt!(
104+
"expected ident, found `%s`",
105+
token_to_str(self.reader, *self.token)
106+
)
107+
);
108+
}
90109
}
91110
}
92111

@@ -155,9 +174,13 @@ pub impl Parser {
155174
fn expect_keyword(word: &~str) {
156175
self.require_keyword(word);
157176
if !self.eat_keyword(word) {
158-
self.fatal(~"expected `" + *word + ~"`, found `" +
159-
token_to_str(self.reader, *self.token) +
160-
~"`");
177+
self.fatal(
178+
fmt!(
179+
"expected `%s`, found `%s`",
180+
*word,
181+
token_to_str(self.reader, *self.token)
182+
)
183+
);
161184
}
162185
}
163186

@@ -177,7 +200,7 @@ pub impl Parser {
177200

178201
fn check_strict_keywords_(w: &~str) {
179202
if self.is_strict_keyword(w) {
180-
self.fatal(~"found `" + *w + ~"` in ident position");
203+
self.fatal(fmt!("found `%s` in ident position", *w));
181204
}
182205
}
183206

@@ -197,7 +220,7 @@ pub impl Parser {
197220

198221
fn check_reserved_keywords_(w: &~str) {
199222
if self.is_reserved_keyword(w) {
200-
self.fatal(~"`" + *w + ~"` is a reserved keyword");
223+
self.fatal(fmt!("`%s` is a reserved keyword", *w));
201224
}
202225
}
203226

@@ -207,9 +230,11 @@ pub impl Parser {
207230
if *self.token == token::GT {
208231
self.bump();
209232
} else if *self.token == token::BINOP(token::SHR) {
210-
self.replace_token(token::GT,
211-
self.span.lo + BytePos(1u),
212-
self.span.hi);
233+
self.replace_token(
234+
token::GT,
235+
self.span.lo + BytePos(1u),
236+
self.span.hi
237+
);
213238
} else {
214239
let mut s: ~str = ~"expected `";
215240
s += token_to_str(self.reader, token::GT);
@@ -222,8 +247,10 @@ pub impl Parser {
222247

223248
// parse a sequence bracketed by '<' and '>', stopping
224249
// before the '>'.
225-
fn parse_seq_to_before_gt<T:Copy>(sep: Option<token::Token>,
226-
f: fn(Parser) -> T) -> ~[T] {
250+
fn parse_seq_to_before_gt<T: Copy>(
251+
sep: Option<token::Token>,
252+
f: fn(Parser) -> T
253+
) -> ~[T] {
227254
let mut first = true;
228255
let mut v = ~[];
229256
while *self.token != token::GT
@@ -241,17 +268,21 @@ pub impl Parser {
241268
return v;
242269
}
243270

244-
fn parse_seq_to_gt<T:Copy>(sep: Option<token::Token>,
245-
f: fn(Parser) -> T) -> ~[T] {
271+
fn parse_seq_to_gt<T: Copy>(
272+
sep: Option<token::Token>,
273+
f: fn(Parser) -> T
274+
) -> ~[T] {
246275
let v = self.parse_seq_to_before_gt(sep, f);
247276
self.expect_gt();
248277

249278
return v;
250279
}
251280

252281
// parse a sequence bracketed by '<' and '>'
253-
fn parse_seq_lt_gt<T:Copy>(sep: Option<token::Token>,
254-
f: fn(Parser) -> T) -> spanned<~[T]> {
282+
fn parse_seq_lt_gt<T: Copy>(
283+
sep: Option<token::Token>,
284+
f: fn(Parser) -> T
285+
) -> spanned<~[T]> {
255286
let lo = self.span.lo;
256287
self.expect(&token::LT);
257288
let result = self.parse_seq_to_before_gt::<T>(sep, f);
@@ -263,18 +294,24 @@ pub impl Parser {
263294
// parse a sequence, including the closing delimiter. The function
264295
// f must consume tokens until reaching the next separator or
265296
// closing bracket.
266-
fn parse_seq_to_end<T:Copy>(ket: token::Token, sep: SeqSep,
267-
f: fn(Parser) -> T) -> ~[T] {
297+
fn parse_seq_to_end<T: Copy>(
298+
ket: token::Token,
299+
sep: SeqSep,
300+
f: fn(Parser) -> T
301+
) -> ~[T] {
268302
let val = self.parse_seq_to_before_end(ket, sep, f);
269303
self.bump();
270-
return val;
304+
val
271305
}
272306

273307
// parse a sequence, not including the closing delimiter. The function
274308
// f must consume tokens until reaching the next separator or
275309
// closing bracket.
276-
fn parse_seq_to_before_end<T:Copy>(ket: token::Token, sep: SeqSep,
277-
f: fn(Parser) -> T) -> ~[T] {
310+
fn parse_seq_to_before_end<T: Copy>(
311+
ket: token::Token,
312+
sep: SeqSep,
313+
f: fn(Parser) -> T
314+
) -> ~[T] {
278315
let mut first: bool = true;
279316
let mut v: ~[T] = ~[];
280317
while *self.token != ket {
@@ -288,31 +325,37 @@ pub impl Parser {
288325
if sep.trailing_sep_allowed && *self.token == ket { break; }
289326
v.push(f(self));
290327
}
291-
return v;
328+
v
292329
}
293330

294331
// parse a sequence, including the closing delimiter. The function
295332
// f must consume tokens until reaching the next separator or
296333
// closing bracket.
297-
fn parse_unspanned_seq<T:Copy>(+bra: token::Token,
298-
+ket: token::Token,
299-
sep: SeqSep,
300-
f: fn(Parser) -> T) -> ~[T] {
334+
fn parse_unspanned_seq<T: Copy>(
335+
+bra: token::Token,
336+
+ket: token::Token,
337+
sep: SeqSep,
338+
f: fn(Parser) -> T
339+
) -> ~[T] {
301340
self.expect(&bra);
302-
let result = self.parse_seq_to_before_end::<T>(ket, sep, f);
341+
let result = self.parse_seq_to_before_end(ket, sep, f);
303342
self.bump();
304-
return result;
343+
result
305344
}
306345

307346
// NB: Do not use this function unless you actually plan to place the
308347
// spanned list in the AST.
309-
fn parse_seq<T:Copy>(bra: token::Token, ket: token::Token, sep: SeqSep,
310-
f: fn(Parser) -> T) -> spanned<~[T]> {
348+
fn parse_seq<T: Copy>(
349+
+bra: token::Token,
350+
+ket: token::Token,
351+
sep: SeqSep,
352+
f: fn(Parser) -> T
353+
) -> spanned<~[T]> {
311354
let lo = self.span.lo;
312355
self.expect(&bra);
313-
let result = self.parse_seq_to_before_end::<T>(ket, sep, f);
356+
let result = self.parse_seq_to_before_end(ket, sep, f);
314357
let hi = self.span.hi;
315358
self.bump();
316-
return spanned(lo, hi, result);
359+
spanned(lo, hi, result)
317360
}
318361
}

0 commit comments

Comments
 (0)