diff --git a/crates/ide-completion/src/completions/postfix.rs b/crates/ide-completion/src/completions/postfix.rs index 3a92903d05..067d906cd1 100644 --- a/crates/ide-completion/src/completions/postfix.rs +++ b/crates/ide-completion/src/completions/postfix.rs @@ -161,7 +161,7 @@ pub(crate) fn complete_postfix( postfix_snippet("letm", "let mut", &format!("let mut $0 = {receiver_text};")) .add_to(acc, ctx.db); } - _ => { + _ if ast::MatchArm::can_cast(second_ancestor.kind()) => { postfix_snippet( "let", "let", @@ -175,6 +175,7 @@ pub(crate) fn complete_postfix( ) .add_to(acc, ctx.db); } + _ => (), } } @@ -594,8 +595,6 @@ fn main() { sn dbgr dbg!(&expr) sn deref *expr sn if if expr {} - sn let let - sn letm let mut sn match match expr {} sn not !expr sn ref &expr @@ -811,7 +810,7 @@ fn main() { } #[test] - fn let_fallback_block() { + fn match_arm_let_block() { check( r#" fn main() { diff --git a/crates/ide-completion/src/render.rs b/crates/ide-completion/src/render.rs index 7a7b054b39..765304d818 100644 --- a/crates/ide-completion/src/render.rs +++ b/crates/ide-completion/src/render.rs @@ -3033,8 +3033,6 @@ fn main() { sn dbgr dbg!(&expr) [] sn deref *expr [] sn if if expr {} [] - sn let let [] - sn letm let mut [] sn match match expr {} [] sn ref &expr [] sn refm &mut expr [] diff --git a/crates/ide-completion/src/tests/expression.rs b/crates/ide-completion/src/tests/expression.rs index b9b0f76c88..df39591a33 100644 --- a/crates/ide-completion/src/tests/expression.rs +++ b/crates/ide-completion/src/tests/expression.rs @@ -2341,8 +2341,6 @@ fn main() { sn dbg dbg!(expr) sn dbgr dbg!(&expr) sn deref *expr - sn let let - sn letm let mut sn match match expr {} sn ref &expr sn refm &mut expr @@ -2370,8 +2368,6 @@ fn main() { sn dbg dbg!(expr) sn dbgr dbg!(&expr) sn deref *expr - sn let let - sn letm let mut sn match match expr {} sn ref &expr sn refm &mut expr @@ -2403,8 +2399,6 @@ fn main() { sn dbg dbg!(expr) sn dbgr dbg!(&expr) sn deref *expr - sn let let - sn letm let mut sn match match expr {} sn ref &expr sn refm &mut expr @@ -2432,8 +2426,6 @@ fn main() { sn dbg dbg!(expr) sn dbgr dbg!(&expr) sn deref *expr - sn let let - sn letm let mut sn match match expr {} sn ref &expr sn refm &mut expr @@ -2461,8 +2453,6 @@ fn main() { sn dbg dbg!(expr) sn dbgr dbg!(&expr) sn deref *expr - sn let let - sn letm let mut sn match match expr {} sn ref &expr sn refm &mut expr @@ -2490,8 +2480,6 @@ fn main() { sn dbg dbg!(expr) sn dbgr dbg!(&expr) sn deref *expr - sn let let - sn letm let mut sn match match expr {} sn ref &expr sn refm &mut expr @@ -3280,8 +3268,6 @@ fn foo() { sn dbg dbg!(expr) sn dbgr dbg!(&expr) sn deref *expr - sn let let - sn letm let mut sn match match expr {} sn ref &expr sn refm &mut expr