Skip to content

Commit 2e52c78

Browse files
committed
---
yaml --- r: 564 b: refs/heads/master c: c0e173e h: refs/heads/master v: v3
1 parent 2093b65 commit 2e52c78

File tree

2 files changed

+30
-3
lines changed

2 files changed

+30
-3
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
---
2-
refs/heads/master: a2bd79a6acc9fc9f1dba6e718c9d9eda7791a277
2+
refs/heads/master: c0e173e19a3a7a69cda13e5c39da96c39fa09d73

trunk/src/comp/fe/token.rs

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -152,10 +152,37 @@ type token = tag
152152
BRACEQUOTE(str),
153153
EOF());
154154

155+
fn op_to_str(op o) -> str {
156+
alt (o) {
157+
case (PLUS()) { ret "+"; }
158+
case (MINUS()) { ret "-"; }
159+
case (STAR()) { ret "*"; }
160+
case (SLASH()) { ret "/"; }
161+
case (PERCENT()) { ret "%"; }
162+
case (EQ()) { ret "="; }
163+
case (LT()) { ret "<"; }
164+
case (LE()) { ret "<="; }
165+
case (EQEQ()) { ret "=="; }
166+
case (NE()) { ret "!="; }
167+
case (GE()) { ret ">="; }
168+
case (GT()) { ret ">"; }
169+
case (NOT()) { ret "!"; }
170+
case (TILDE()) { ret "~"; }
171+
case (CARET()) { ret "^"; }
172+
case (AND()) { ret "&"; }
173+
case (ANDAND()) { ret "&&"; }
174+
case (OR()) { ret "|"; }
175+
case (OROR()) { ret "||"; }
176+
case (LSL()) { ret "<<"; }
177+
case (LSR()) { ret ">>"; }
178+
case (ASR()) { ret ">>>"; }
179+
}
180+
}
181+
155182
fn to_str(token t) -> str {
156183
alt (t) {
157-
case (OP(_)) { ret "<op>"; }
158-
case (OPEQ(_)) { ret "<op>="; }
184+
case (OP(op)) { ret op_to_str(op); }
185+
case (OPEQ(op)) { ret op_to_str(op) + "="; }
159186
case (AS()) { ret "as"; }
160187
case (WITH()) { ret "with"; }
161188

0 commit comments

Comments
 (0)