Skip to content

Commit

Permalink
syntax: fixing pretty printing of brackets in match arms
Browse files Browse the repository at this point in the history
  • Loading branch information
Daniel Patterson committed Aug 14, 2012
1 parent 8271b3f commit 62a9e16
Showing 1 changed file with 15 additions and 2 deletions.
17 changes: 15 additions & 2 deletions src/libsyntax/print/pprust.rs
Expand Up @@ -838,6 +838,11 @@ fn print_block_unclosed(s: ps, blk: ast::blk) {
false);
}
fn print_block_unclosed_indent(s: ps, blk: ast::blk, indented: uint) {
print_possibly_embedded_block_(s, blk, block_normal, indented, ~[],
false);
}
fn print_block_with_attrs(s: ps, blk: ast::blk, attrs: ~[ast::attribute]) {
print_possibly_embedded_block_(s, blk, block_normal, indent_unit, attrs,
true);
Expand Down Expand Up @@ -1178,8 +1183,16 @@ fn print_expr(s: ps, &&expr: @ast::expr) {
assert arm.body.node.rules == ast::default_blk;
match arm.body.node.expr {
some(expr) => {
end(s); // close the ibox for the pattern
print_expr(s, expr);
match expr.node {
ast::expr_block(blk) => {
// the block will close the pattern's ibox
print_block_unclosed_indent(s, blk, alt_indent_unit);
}
_ => {
end(s); // close the ibox for the pattern
print_expr(s, expr);
}
}
if !expr_is_simple_block(expr)
&& i < len - 1 {
word(s.s, ~",");
Expand Down

0 comments on commit 62a9e16

Please sign in to comment.