Skip to content

Commit b1f882b

Browse files
Merge pull request #20514 from A4-Tacks/else-if-let-snip
Add else-if-let keyword snippet
2 parents b9185af + 48180fd commit b1f882b

2 files changed

Lines changed: 13 additions & 4 deletions

File tree

crates/ide-completion/src/completions/expr.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -393,6 +393,7 @@ pub(crate) fn complete_expr_path(
393393

394394
if after_if_expr {
395395
add_keyword("else if", "else if $1 {\n $0\n}");
396+
add_keyword("else if let", "else if let $1 = $2 {\n $0\n}");
396397
}
397398

398399
if wants_raw_token {

crates/ide-completion/src/tests/expression.rs

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,7 @@ fn complete_after_if_expr() {
292292
kw crate::
293293
kw else
294294
kw else if
295+
kw else if let
295296
kw enum
296297
kw extern
297298
kw false
@@ -1165,6 +1166,7 @@ fn foo() { if foo {} $0 }
11651166
kw crate::
11661167
kw else
11671168
kw else if
1169+
kw else if let
11681170
kw enum
11691171
kw extern
11701172
kw false
@@ -1208,6 +1210,7 @@ fn foo() { if foo {} el$0 }
12081210
kw crate::
12091211
kw else
12101212
kw else if
1213+
kw else if let
12111214
kw enum
12121215
kw extern
12131216
kw false
@@ -1244,12 +1247,13 @@ fn foo() { if foo {} el$0 }
12441247
fn foo() { bar(if foo {} $0) }
12451248
"#,
12461249
expect![[r#"
1247-
fn foo() fn()
1248-
bt u32 u32
1250+
fn foo() fn()
1251+
bt u32 u32
12491252
kw const
12501253
kw crate::
12511254
kw else
12521255
kw else if
1256+
kw else if let
12531257
kw false
12541258
kw for
12551259
kw if
@@ -1269,12 +1273,13 @@ fn foo() { bar(if foo {} $0) }
12691273
fn foo() { bar(if foo {} el$0) }
12701274
"#,
12711275
expect![[r#"
1272-
fn foo() fn()
1273-
bt u32 u32
1276+
fn foo() fn()
1277+
bt u32 u32
12741278
kw const
12751279
kw crate::
12761280
kw else
12771281
kw else if
1282+
kw else if let
12781283
kw false
12791284
kw for
12801285
kw if
@@ -1301,6 +1306,7 @@ fn foo() { if foo {} $0 let x = 92; }
13011306
kw crate::
13021307
kw else
13031308
kw else if
1309+
kw else if let
13041310
kw enum
13051311
kw extern
13061312
kw false
@@ -1344,6 +1350,7 @@ fn foo() { if foo {} el$0 let x = 92; }
13441350
kw crate::
13451351
kw else
13461352
kw else if
1353+
kw else if let
13471354
kw enum
13481355
kw extern
13491356
kw false
@@ -1387,6 +1394,7 @@ fn foo() { if foo {} el$0 { let x = 92; } }
13871394
kw crate::
13881395
kw else
13891396
kw else if
1397+
kw else if let
13901398
kw enum
13911399
kw extern
13921400
kw false

0 commit comments

Comments
 (0)