diff options
| author | Duong Quoc Khanh <dqkqdlot@gmail.com> | 2023-02-09 17:37:11 +0900 |
|---|---|---|
| committer | Duong Quoc Khanh <dqkqdlot@gmail.com> | 2023-02-09 17:37:11 +0900 |
| commit | 74cd8ecc7ebe2782044f6b91ea94f0ac95b9fefa (patch) | |
| tree | 6f1e35e12420217ca7e27d6a2d377b7e3be504ce | |
| parent | 58136b01ba0cc0c2f598c300db3cc864fcb09f1f (diff) | |
| download | rust-74cd8ecc7ebe2782044f6b91ea94f0ac95b9fefa.tar.gz rust-74cd8ecc7ebe2782044f6b91ea94f0ac95b9fefa.zip | |
Add completion without body.
Add completion for Fn, Const, TypeAlias without body.
| -rw-r--r-- | crates/ide-completion/src/context/analysis.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/crates/ide-completion/src/context/analysis.rs b/crates/ide-completion/src/context/analysis.rs index f606d79ad20..4bff665ab1d 100644 --- a/crates/ide-completion/src/context/analysis.rs +++ b/crates/ide-completion/src/context/analysis.rs @@ -675,10 +675,10 @@ fn classify_name_ref( { if let Some(item) = ast::Item::cast(n) { let is_inbetween = match &item { - ast::Item::Const(it) => it.body().is_none(), + ast::Item::Const(it) => it.body().is_none() && it.semicolon_token().is_none(), ast::Item::Enum(it) => it.variant_list().is_none(), ast::Item::ExternBlock(it) => it.extern_item_list().is_none(), - ast::Item::Fn(it) => it.body().is_none(), + ast::Item::Fn(it) => it.body().is_none() && it.semicolon_token().is_none(), ast::Item::Impl(it) => it.assoc_item_list().is_none(), ast::Item::Module(it) => { it.item_list().is_none() && it.semicolon_token().is_none() @@ -688,7 +688,7 @@ fn classify_name_ref( it.field_list().is_none() && it.semicolon_token().is_none() } ast::Item::Trait(it) => it.assoc_item_list().is_none(), - ast::Item::TypeAlias(it) => it.ty().is_none(), + ast::Item::TypeAlias(it) => it.ty().is_none() && it.semicolon_token().is_none(), ast::Item::Union(it) => it.record_field_list().is_none(), _ => false, }; |
