aboutsummaryrefslogtreecommitdiff
path: root/crates/ide/src/completion/completion_context.rs
diff options
context:
space:
mode:
authorAleksey Kladov <[email protected]>2020-08-25 16:20:29 +0100
committerAleksey Kladov <[email protected]>2020-08-25 16:22:23 +0100
commit18b667cfcb31b2c5e421d12a34b34e83165603f4 (patch)
treec9a8da95da29f52b35e7f06171a34ecaeb9b8cfa /crates/ide/src/completion/completion_context.rs
parent6b8bc132dc6dee538964fffa0720480beb5b25dd (diff)
Complete `pub` in fields
Diffstat (limited to 'crates/ide/src/completion/completion_context.rs')
-rw-r--r--crates/ide/src/completion/completion_context.rs10
1 files changed, 7 insertions, 3 deletions
diff --git a/crates/ide/src/completion/completion_context.rs b/crates/ide/src/completion/completion_context.rs
index 5adac7ebc..47355d5dc 100644
--- a/crates/ide/src/completion/completion_context.rs
+++ b/crates/ide/src/completion/completion_context.rs
@@ -16,9 +16,10 @@ use crate::{
16 call_info::ActiveParameter, 16 call_info::ActiveParameter,
17 completion::{ 17 completion::{
18 patterns::{ 18 patterns::{
19 has_bind_pat_parent, has_block_expr_parent, has_impl_as_prev_sibling, has_impl_parent, 19 has_bind_pat_parent, has_block_expr_parent, has_field_list_parent,
20 has_item_list_or_source_file_parent, has_ref_parent, has_trait_as_prev_sibling, 20 has_impl_as_prev_sibling, has_impl_parent, has_item_list_or_source_file_parent,
21 has_trait_parent, if_is_prev, is_in_loop_body, is_match_arm, unsafe_is_prev, 21 has_ref_parent, has_trait_as_prev_sibling, has_trait_parent, if_is_prev,
22 is_in_loop_body, is_match_arm, unsafe_is_prev,
22 }, 23 },
23 CompletionConfig, 24 CompletionConfig,
24 }, 25 },
@@ -84,6 +85,7 @@ pub(crate) struct CompletionContext<'a> {
84 pub(super) in_loop_body: bool, 85 pub(super) in_loop_body: bool,
85 pub(super) has_trait_parent: bool, 86 pub(super) has_trait_parent: bool,
86 pub(super) has_impl_parent: bool, 87 pub(super) has_impl_parent: bool,
88 pub(super) has_field_list_parent: bool,
87 pub(super) trait_as_prev_sibling: bool, 89 pub(super) trait_as_prev_sibling: bool,
88 pub(super) impl_as_prev_sibling: bool, 90 pub(super) impl_as_prev_sibling: bool,
89 pub(super) is_match_arm: bool, 91 pub(super) is_match_arm: bool,
@@ -157,6 +159,7 @@ impl<'a> CompletionContext<'a> {
157 block_expr_parent: false, 159 block_expr_parent: false,
158 has_trait_parent: false, 160 has_trait_parent: false,
159 has_impl_parent: false, 161 has_impl_parent: false,
162 has_field_list_parent: false,
160 trait_as_prev_sibling: false, 163 trait_as_prev_sibling: false,
161 impl_as_prev_sibling: false, 164 impl_as_prev_sibling: false,
162 if_is_prev: false, 165 if_is_prev: false,
@@ -230,6 +233,7 @@ impl<'a> CompletionContext<'a> {
230 self.in_loop_body = is_in_loop_body(syntax_element.clone()); 233 self.in_loop_body = is_in_loop_body(syntax_element.clone());
231 self.has_trait_parent = has_trait_parent(syntax_element.clone()); 234 self.has_trait_parent = has_trait_parent(syntax_element.clone());
232 self.has_impl_parent = has_impl_parent(syntax_element.clone()); 235 self.has_impl_parent = has_impl_parent(syntax_element.clone());
236 self.has_field_list_parent = has_field_list_parent(syntax_element.clone());
233 self.impl_as_prev_sibling = has_impl_as_prev_sibling(syntax_element.clone()); 237 self.impl_as_prev_sibling = has_impl_as_prev_sibling(syntax_element.clone());
234 self.trait_as_prev_sibling = has_trait_as_prev_sibling(syntax_element.clone()); 238 self.trait_as_prev_sibling = has_trait_as_prev_sibling(syntax_element.clone());
235 self.is_match_arm = is_match_arm(syntax_element.clone()); 239 self.is_match_arm = is_match_arm(syntax_element.clone());