diff options
Diffstat (limited to 'crates/ra_ide_api/src')
-rw-r--r-- | crates/ra_ide_api/src/completion/complete_path.rs | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/crates/ra_ide_api/src/completion/complete_path.rs b/crates/ra_ide_api/src/completion/complete_path.rs index 6a55670d1..9bfec88d0 100644 --- a/crates/ra_ide_api/src/completion/complete_path.rs +++ b/crates/ra_ide_api/src/completion/complete_path.rs | |||
@@ -23,17 +23,12 @@ pub(super) fn complete_path(acc: &mut Completions, ctx: &CompletionContext) -> C | |||
23 | } | 23 | } |
24 | hir::Def::Enum(e) => { | 24 | hir::Def::Enum(e) => { |
25 | e.variants(ctx.db)? | 25 | e.variants(ctx.db)? |
26 | .unwrap_or(vec![]) | ||
27 | .into_iter() | 26 | .into_iter() |
28 | .for_each(|variant| { | 27 | .for_each(|(variant_name, _variant)| { |
29 | let variant_name = variant.name(ctx.db); | 28 | CompletionItem::new(CompletionKind::Reference, variant_name.to_string()) |
30 | 29 | .kind(CompletionItemKind::EnumVariant) | |
31 | if let Ok(Some(name)) = variant_name { | 30 | .add_to(acc) |
32 | CompletionItem::new(CompletionKind::Reference, name.to_string()) | 31 | }); |
33 | .kind(CompletionItemKind::EnumVariant) | ||
34 | .add_to(acc) | ||
35 | } | ||
36 | }) | ||
37 | } | 32 | } |
38 | _ => return Ok(()), | 33 | _ => return Ok(()), |
39 | }; | 34 | }; |