Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide_assists/src/handlers/replace_if_let_with_match.rs')
| -rw-r--r-- | crates/ide_assists/src/handlers/replace_if_let_with_match.rs | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/crates/ide_assists/src/handlers/replace_if_let_with_match.rs b/crates/ide_assists/src/handlers/replace_if_let_with_match.rs index f7b601d144..dcbc277b26 100644 --- a/crates/ide_assists/src/handlers/replace_if_let_with_match.rs +++ b/crates/ide_assists/src/handlers/replace_if_let_with_match.rs @@ -12,7 +12,7 @@ use syntax::{ }; use crate::{ - utils::{does_pat_match_variant, unwrap_trivial_block}, + utils::{does_nested_pattern, does_pat_match_variant, unwrap_trivial_block}, AssistContext, AssistId, AssistKind, Assists, }; @@ -143,6 +143,8 @@ fn make_else_arm( Some((it, pat)) => { if does_pat_match_variant(pat, &it.sad_pattern()) { it.happy_pattern_wildcard() + } else if does_nested_pattern(pat) { + make::wildcard_pat().into() } else { it.sad_pattern() } @@ -596,6 +598,7 @@ fn foo(x: Result<i32, ()>) { Ok(Some(_)) => (), _ => (), } +} "#, ); } |