summary refs log tree commit diff
path: root/src/libsyntax/print
diff options
context:
space:
mode:
authorJakub Wieczorek <jakubw@jakubw.net>2012-12-08 20:22:43 +0000
committerGraydon Hoare <graydon@mozilla.com>2012-12-17 16:50:40 -0800
commit1968cb315af9d128ee4457738fddd1eba275277f (patch)
tree99dc401a2713e3502c9b53333b74767adad53e98 /src/libsyntax/print
parent5bf7ba077330c4cdb75802a4ca2497af24d21c4e (diff)
downloadrust-1968cb315af9d128ee4457738fddd1eba275277f.tar.gz
rust-1968cb315af9d128ee4457738fddd1eba275277f.zip
Add support for destructuring vectors in match expressions
Diffstat (limited to 'src/libsyntax/print')
-rw-r--r--src/libsyntax/print/pprust.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/libsyntax/print/pprust.rs b/src/libsyntax/print/pprust.rs
index e977327e919..3b995addd62 100644
--- a/src/libsyntax/print/pprust.rs
+++ b/src/libsyntax/print/pprust.rs
@@ -1641,6 +1641,16 @@ fn print_pat(s: ps, &&pat: @ast::pat, refutable: bool) {
         word(s.s, ~"..");
         print_expr(s, end);
       }
+      ast::pat_vec(elts, tail) => {
+        word(s.s, ~"[");
+        commasep(s, inconsistent, elts, |s, p| print_pat(s, p, refutable));
+        do option::iter(&tail) |tail| {
+            if vec::len(elts) != 0u { word_space(s, ~","); }
+            word(s.s, ~"..");
+            print_pat(s, *tail, refutable);
+        }
+        word(s.s, ~"]");
+      }
     }
     (s.ann.post)(ann_node);
 }