Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide-assists/src/handlers/convert_let_else_to_match.rs')
| -rw-r--r-- | crates/ide-assists/src/handlers/convert_let_else_to_match.rs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/crates/ide-assists/src/handlers/convert_let_else_to_match.rs b/crates/ide-assists/src/handlers/convert_let_else_to_match.rs index 1ae12390ee..07e12f0320 100644 --- a/crates/ide-assists/src/handlers/convert_let_else_to_match.rs +++ b/crates/ide-assists/src/handlers/convert_let_else_to_match.rs @@ -24,7 +24,10 @@ use crate::{AssistContext, AssistId, Assists}; // }; // } // ``` -pub(crate) fn convert_let_else_to_match(acc: &mut Assists, ctx: &AssistContext<'_>) -> Option<()> { +pub(crate) fn convert_let_else_to_match( + acc: &mut Assists, + ctx: &AssistContext<'_, '_>, +) -> Option<()> { let (editor, _) = SyntaxEditor::new(ctx.source_file().syntax().clone()); // Should focus on the `else` token to trigger let let_stmt = ctx @@ -143,6 +146,10 @@ fn remove_mut_and_collect_idents( let pat = remove_mut_and_collect_idents(editor, &p.pat()?, acc)?; make.box_pat(pat).into() } + ast::Pat::DerefPat(p) => { + let pat = remove_mut_and_collect_idents(editor, &p.pat()?, acc)?; + make.deref_pat(pat) + } ast::Pat::OrPat(p) => { let pats = p .pats() |