Commit Graph

8 Commits

Author SHA1 Message Date
dianne
b41d8bde00 let deref patterns participate in usefulness/exhaustiveness
This does not yet handle the case of mixed deref patterns with normal
constructors; it'll ICE in `Constructor::is_covered_by`. That'll be
fixed in a later commit.
2025-05-06 18:53:55 -07:00
dianne
64c8d5d7f5 move existing tests away from using boxes
Since deref patterns on boxes will be lowered differently, I'll be
making a separate test file for them. This makes sure we're still
testing the generic `Deref(Mut)::deref(_mut)`-based lowering.
2025-04-24 14:25:27 -07:00
dianne
91d0b579f0 register DerefMut bounds for implicit mutable derefs 2025-04-16 14:42:56 -07:00
dianne
e4b7b3d820 pattern typing for immutable implicit deref patterns 2025-04-16 14:42:56 -07:00
Nadrieril
217a4dff7d Test or-patterns inside deref patterns 2024-04-20 16:04:06 +02:00
Nadrieril
377e095371 Allow mutable bindings inside deref patterns 2024-04-20 15:59:54 +02:00
Nadrieril
1dabacd059 Don't fake borrow inside a deref pattern 2024-04-20 15:59:54 +02:00
Nadrieril
c623319a30 Lower deref patterns to MIR
This handles using deref patterns to choose the correct match arm. This
does not handle bindings or guards.

Co-authored-by: Deadbeef <ent3rm4n@gmail.com>
2024-04-20 15:59:54 +02:00