aboutsummaryrefslogtreecommitdiff
path: root/src/comp/pretty
diff options
context:
space:
mode:
authorGraydon Hoare <[email protected]>2011-03-14 16:59:04 -0700
committerGraydon Hoare <[email protected]>2011-03-14 16:59:04 -0700
commit7f5bffc3ea8545be1916dd089e4f25a360c83950 (patch)
tree877d7e430339360c8645a1983707d04088d1cba2 /src/comp/pretty
parentRename check_assignment_like to check_assignment since it turned out not to b... (diff)
parentMerge branch 'master' into recursive-elseif (diff)
downloadrust-7f5bffc3ea8545be1916dd089e4f25a360c83950.tar.xz
rust-7f5bffc3ea8545be1916dd089e4f25a360c83950.zip
Merge remote branch 'brson/recursive-elseif'
Diffstat (limited to 'src/comp/pretty')
-rw-r--r--src/comp/pretty/pprust.rs28
1 files changed, 10 insertions, 18 deletions
diff --git a/src/comp/pretty/pprust.rs b/src/comp/pretty/pprust.rs
index 413de413..e59c0c3d 100644
--- a/src/comp/pretty/pprust.rs
+++ b/src/comp/pretty/pprust.rs
@@ -376,26 +376,18 @@ impure fn print_expr(ps s, @ast.expr expr) {
wrd1(s, "as");
print_type(s, ty);
}
- case (ast.expr_if(?test,?block,?clauses,?_else,_)) {
- impure fn print_clause(ps s, @ast.expr test, ast.block blk) {
- wrd1(s, "if");
- popen(s);
- print_expr(s, test);
- pclose(s);
- space(s);
- print_block(s, blk);
- }
- print_clause(s, test, block);
- for (tup(@ast.expr, ast.block) clause in clauses) {
- space(s);
- wrd1(s, "else");
- print_clause(s, clause._0, clause._1);
- }
- alt (_else) {
- case (option.some[ast.block](?blk)) {
+ case (ast.expr_if(?test,?block,?elseopt,_)) {
+ wrd1(s, "if");
+ popen(s);
+ print_expr(s, test);
+ pclose(s);
+ space(s);
+ print_block(s, block);
+ alt (elseopt) {
+ case (option.some[@ast.expr](?_else)) {
space(s);
wrd1(s, "else");
- print_block(s, blk);
+ print_expr(s, _else);
}
case (_) { /* fall through */ }
}