diff options
| author | Matthew Jasper <mjjasper1@gmail.com> | 2023-09-21 11:26:50 +0000 |
|---|---|---|
| committer | Matthew Jasper <mjjasper1@gmail.com> | 2024-01-05 10:56:59 +0000 |
| commit | 407cb241422cd13ab01b0017fcf1ef6e49c80b1b (patch) | |
| tree | 4abcfb20080471248b44be06f71ab5cc2d89e7c8 /compiler/rustc_ast_lowering/src | |
| parent | 5113ed28ea1451a13eae3a05dca0dbabfd56f587 (diff) | |
| download | rust-407cb241422cd13ab01b0017fcf1ef6e49c80b1b.tar.gz rust-407cb241422cd13ab01b0017fcf1ef6e49c80b1b.zip | |
Remove `hir::Guard`
Use Expr instead. Use `ExprKind::Let` to represent if let guards.
Diffstat (limited to 'compiler/rustc_ast_lowering/src')
| -rw-r--r-- | compiler/rustc_ast_lowering/src/expr.rs | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/compiler/rustc_ast_lowering/src/expr.rs b/compiler/rustc_ast_lowering/src/expr.rs index ba858d49acf..69704de105c 100644 --- a/compiler/rustc_ast_lowering/src/expr.rs +++ b/compiler/rustc_ast_lowering/src/expr.rs @@ -546,20 +546,7 @@ impl<'hir> LoweringContext<'_, 'hir> { fn lower_arm(&mut self, arm: &Arm) -> hir::Arm<'hir> { let pat = self.lower_pat(&arm.pat); - let guard = arm.guard.as_ref().map(|cond| { - if let ExprKind::Let(pat, scrutinee, span, is_recovered) = &cond.kind { - hir::Guard::IfLet(self.arena.alloc(hir::Let { - hir_id: self.next_id(), - span: self.lower_span(*span), - pat: self.lower_pat(pat), - ty: None, - init: self.lower_expr(scrutinee), - is_recovered: *is_recovered, - })) - } else { - hir::Guard::If(self.lower_expr(cond)) - } - }); + let guard = arm.guard.as_ref().map(|cond| self.lower_expr(cond)); let hir_id = self.next_id(); let span = self.lower_span(arm.span); self.lower_attrs(hir_id, &arm.attrs); |
