diff options
| author | bors <bors@rust-lang.org> | 2013-03-11 04:27:48 -0700 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2013-03-11 04:27:48 -0700 |
| commit | 51cdca0bf0d3efc554c1815df9306ea10e881a14 (patch) | |
| tree | 250354cf3cd8fe9af0de4e0d8434c99a50742c75 /src/libsyntax/print/pprust.rs | |
| parent | 58618fb8cfd791a930261ff68ae6bc77e0bc4412 (diff) | |
| parent | 070137ce905d0177e8d112385f1d8dc7b2407006 (diff) | |
| download | rust-51cdca0bf0d3efc554c1815df9306ea10e881a14.tar.gz rust-51cdca0bf0d3efc554c1815df9306ea10e881a14.zip | |
auto merge of #5122 : sanxiyn/rust/vec-match-tail-2, r=nikomatsakis
Incorporated @nikomatsakis's comments from #4748. Fix #4635.
Diffstat (limited to 'src/libsyntax/print/pprust.rs')
| -rw-r--r-- | src/libsyntax/print/pprust.rs | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/libsyntax/print/pprust.rs b/src/libsyntax/print/pprust.rs index 3744b7a8f6c..c81c1c8bd0e 100644 --- a/src/libsyntax/print/pprust.rs +++ b/src/libsyntax/print/pprust.rs @@ -1609,13 +1609,19 @@ pub fn print_pat(s: @ps, &&pat: @ast::pat, refutable: bool) { word(s.s, ~".."); print_expr(s, end); } - ast::pat_vec(elts, tail) => { + ast::pat_vec(before, slice, after) => { word(s.s, ~"["); - commasep(s, inconsistent, elts, |s, p| print_pat(s, p, refutable)); - for tail.each |tail| { - if vec::len(elts) != 0u { word_space(s, ~","); } + do commasep(s, inconsistent, before) |s, p| { + print_pat(s, p, refutable); + } + for slice.each |&p| { + if !before.is_empty() { word_space(s, ~","); } word(s.s, ~".."); - print_pat(s, *tail, refutable); + print_pat(s, p, refutable); + if !after.is_empty() { word_space(s, ~","); } + } + do commasep(s, inconsistent, after) |s, p| { + print_pat(s, p, refutable); } word(s.s, ~"]"); } |
