Implement slice pattern AST > HIR lowering

This commit is contained in:
Jonas Platte 2020-02-11 22:33:11 +01:00
parent 3e1d97790b
commit a3b104aa6d
No known key found for this signature in database
GPG key ID: 7D261D771D915378
8 changed files with 64 additions and 13 deletions

View file

@ -393,7 +393,7 @@ pub enum Pat {
},
Slice {
prefix: Vec<PatId>,
rest: Option<PatId>,
slice: Option<PatId>,
suffix: Vec<PatId>,
},
Path(Path),
@ -424,8 +424,8 @@ impl Pat {
args.iter().copied().for_each(f);
}
Pat::Ref { pat, .. } => f(*pat),
Pat::Slice { prefix, rest, suffix } => {
let total_iter = prefix.iter().chain(rest.iter()).chain(suffix.iter());
Pat::Slice { prefix, slice, suffix } => {
let total_iter = prefix.iter().chain(slice.iter()).chain(suffix.iter());
total_iter.copied().for_each(f);
}
Pat::Record { args, .. } => {