Skip to content

Commit b751996

Browse files
committed
syntax: minor cleanups; making things more idiomatic
1 parent 8467279 commit b751996

File tree

1 file changed

+69
-75
lines changed

1 file changed

+69
-75
lines changed

src/libsyntax/parse/token.rs

Lines changed: 69 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
import util::interner;
32
import util::interner::interner;
43
import std::map::{hashmap, str_hash};
@@ -66,95 +65,91 @@ enum token {
6665
IDENT(str_num, bool),
6766
UNDERSCORE,
6867
EOF,
69-
7068
}
7169

7270
fn binop_to_str(o: binop) -> str {
7371
alt o {
74-
PLUS { ret "+"; }
75-
MINUS { ret "-"; }
76-
STAR { ret "*"; }
77-
SLASH { ret "/"; }
78-
PERCENT { ret "%"; }
79-
CARET { ret "^"; }
80-
AND { ret "&"; }
81-
OR { ret "|"; }
82-
SHL { ret "<<"; }
83-
SHR { ret ">>"; }
72+
PLUS { "+" }
73+
MINUS { "-" }
74+
STAR { "*" }
75+
SLASH { "/" }
76+
PERCENT { "%" }
77+
CARET { "^" }
78+
AND { "&" }
79+
OR { "|" }
80+
SHL { "<<" }
81+
SHR { ">>" }
8482
}
8583
}
8684
8785
fn to_str(in: interner<@str>, t: token) -> str {
8886
alt t {
89-
EQ { ret "="; }
90-
LT { ret "<"; }
91-
LE { ret "<="; }
92-
EQEQ { ret "=="; }
93-
NE { ret "!="; }
94-
GE { ret ">="; }
95-
GT { ret ">"; }
96-
NOT { ret "!"; }
97-
TILDE { ret "~"; }
98-
OROR { ret "||"; }
99-
ANDAND { ret "&&"; }
100-
BINOP(op) { ret binop_to_str(op); }
101-
BINOPEQ(op) { ret binop_to_str(op) + "="; }
87+
EQ { "=" }
88+
LT { "<" }
89+
LE { "<=" }
90+
EQEQ { "==" }
91+
NE { "!=" }
92+
GE { ">=" }
93+
GT { ">" }
94+
NOT { "!" }
95+
TILDE { "~" }
96+
OROR { "||" }
97+
ANDAND { "&&" }
98+
BINOP(op) { binop_to_str(op) }
99+
BINOPEQ(op) { binop_to_str(op) + "=" }
102100
103101
/* Structural symbols */
104-
AT {
105-
ret "@";
106-
}
107-
DOT { ret "."; }
108-
ELLIPSIS { ret "..."; }
109-
COMMA { ret ","; }
110-
SEMI { ret ";"; }
111-
COLON { ret ":"; }
112-
MOD_SEP { ret "::"; }
113-
RARROW { ret "->"; }
114-
LARROW { ret "<-"; }
115-
DARROW { ret "<->"; }
116-
FAT_ARROW { ret "=>"; }
117-
LPAREN { ret "("; }
118-
RPAREN { ret ")"; }
119-
LBRACKET { ret "["; }
120-
RBRACKET { ret "]"; }
121-
LBRACE { ret "{"; }
122-
RBRACE { ret "}"; }
123-
POUND { ret "#"; }
124-
DOLLAR { ret "$"; }
102+
AT { "@" }
103+
DOT { "." }
104+
ELLIPSIS { "..." }
105+
COMMA { "," }
106+
SEMI { "" }
107+
COLON { ":" }
108+
MOD_SEP { "::" }
109+
RARROW { "->" }
110+
LARROW { "<-" }
111+
DARROW { "<->" }
112+
FAT_ARROW { "=>" }
113+
LPAREN { "(" }
114+
RPAREN { ")" }
115+
LBRACKET { "[" }
116+
RBRACKET { "]" }
117+
LBRACE { "{" }
118+
RBRACE { "}" }
119+
POUND { "#" }
120+
DOLLAR { "$" }
125121

126122
/* Literals */
127123
LIT_INT(c, ast::ty_char) {
128-
ret "'" + char::escape_default(c as char) + "'";
124+
"'" + char::escape_default(c as char) + "'"
129125
}
130126
LIT_INT(i, t) {
131-
ret int::to_str(i as int, 10u) + ast_util::int_ty_to_str(t);
127+
int::to_str(i as int, 10u) + ast_util::int_ty_to_str(t)
132128
}
133129
LIT_UINT(u, t) {
134-
ret uint::to_str(u as uint, 10u) + ast_util::uint_ty_to_str(t);
130+
uint::to_str(u as uint, 10u) + ast_util::uint_ty_to_str(t)
135131
}
136132
LIT_INT_UNSUFFIXED(i, t) {
137-
ret int::to_str(i as int, 10u) + ast_util::int_ty_to_str(t);
133+
int::to_str(i as int, 10u) + ast_util::int_ty_to_str(t)
138134
}
139135
LIT_FLOAT(s, t) {
140-
ret *interner::get(in, s) +
141-
ast_util::float_ty_to_str(t);
136+
*interner::get(in, s) +
137+
ast_util::float_ty_to_str(t)
142138
}
143139
LIT_STR(s) {
144-
ret "\""
140+
"\""
145141
+ str::escape_default(*interner::get(in, s))
146-
+ "\"";
142+
+ "\""
147143
}
148144
/* Name components */
149145
IDENT(s, _) {
150-
ret *interner::get(in, s);
146+
*interner::get(in, s)
151147
}
152-
UNDERSCORE { ret "_"; }
153-
EOF { ret "<eof>"; }
148+
UNDERSCORE { "_" }
149+
EOF { "<eof>" }
154150
}
155151
}
156152
157-
158153
pure fn can_begin_expr(t: token) -> bool {
159154
alt t {
160155
LPAREN { true }
@@ -179,28 +174,27 @@ pure fn can_begin_expr(t: token) -> bool {
179174
}
180175
}
181176
182-
fn is_lit(t: token::token) -> bool {
183-
ret alt t {
184-
token::LIT_INT(_, _) { true }
185-
token::LIT_UINT(_, _) { true }
186-
token::LIT_INT_UNSUFFIXED(_, _) { true }
187-
token::LIT_FLOAT(_, _) { true }
188-
token::LIT_STR(_) { true }
189-
_ { false }
190-
}
177+
fn is_lit(t: token) -> bool {
178+
alt t {
179+
LIT_INT(_, _) { true }
180+
LIT_UINT(_, _) { true }
181+
LIT_INT_UNSUFFIXED(_, _) { true }
182+
LIT_FLOAT(_, _) { true }
183+
LIT_STR(_) { true }
184+
_ { false }
185+
}
191186
}
192187
193-
pure fn is_ident(t: token::token) -> bool {
194-
alt t { token::IDENT(_, _) { ret true; } _ { } }
195-
ret false;
188+
pure fn is_ident(t: token) -> bool {
189+
alt t { IDENT(_, _) { true } _ { false } }
196190
}
197191
198-
pure fn is_plain_ident(t: token::token) -> bool {
199-
ret alt t { token::IDENT(_, false) { true } _ { false } };
192+
pure fn is_plain_ident(t: token) -> bool {
193+
alt t { IDENT(_, false) { true } _ { false } }
200194
}
201195
202-
pure fn is_bar(t: token::token) -> bool {
203-
alt t { token::BINOP(token::OR) | token::OROR { true } _ { false } }
196+
pure fn is_bar(t: token) -> bool {
197+
alt t { BINOP(OR) | OROR { true } _ { false } }
204198
}
205199
206200
#[doc = "
@@ -219,7 +213,7 @@ fn keyword_table() -> hashmap<str, ()> {
219213
for restricted_keyword_table().each_key {|word|
220214
keywords.insert(word, ());
221215
}
222-
ret keywords;
216+
keywords
223217
}
224218
225219
#[doc = "Keywords that may be used as identifiers"]

0 commit comments

Comments
 (0)