Unnamed repository; edit this file 'description' to name the repository.
apply to only has nested if.
l1nxy 2024-01-01
parent 7fee088 · commit edb9ad2
-rw-r--r--crates/ide-assists/src/handlers/merge_nested_if.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/crates/ide-assists/src/handlers/merge_nested_if.rs b/crates/ide-assists/src/handlers/merge_nested_if.rs
index af99d6fdef..39db42faae 100644
--- a/crates/ide-assists/src/handlers/merge_nested_if.rs
+++ b/crates/ide-assists/src/handlers/merge_nested_if.rs
@@ -47,6 +47,10 @@ pub(crate) fn merge_nested_if(acc: &mut Assists, ctx: &AssistContext<'_>) -> Opt
//check if the then branch is a nested if
let then_branch = expr.then_branch()?;
+ let stmt = then_branch.stmt_list()?;
+ if stmt.statements().count() != 0 {
+ return None;
+ }
let nested_if_to_merge = then_branch.syntax().descendants().find_map(ast::IfExpr::cast)?;
// should not apply to nested if with else branch.
@@ -221,7 +225,7 @@ mod tests {
)
}
#[test]
- fn merge_nested_if_do_not_apply_with_not_only_has_nested_if(){
+ fn merge_nested_if_do_not_apply_with_not_only_has_nested_if() {
check_assist_not_applicable(
merge_nested_if,
"fn f() { i$0f x == 0 { if y == 3 { foo(); } foo(); } }",