rustc: Implement pattern matching for structs

This commit is contained in:
Patrick Walton
2012-08-06 17:01:14 -07:00
parent 5cb3a94bfb
commit 253dfc3387
13 changed files with 445 additions and 100 deletions

View File

@@ -602,7 +602,8 @@ fn walk_pat(pat: @pat, it: fn(@pat)) {
it(pat);
match pat.node {
pat_ident(_, pth, some(p)) => walk_pat(p, it),
pat_rec(fields, _) => for fields.each |f| { walk_pat(f.pat, it) }
pat_rec(fields, _) | pat_struct(_, fields, _) =>
for fields.each |f| { walk_pat(f.pat, it) }
pat_enum(_, some(s)) | pat_tup(s) => for s.each |p| {
walk_pat(p, it)
}