diff options
Diffstat (limited to 'crates/ide/src/completion/completion_context.rs')
-rw-r--r-- | crates/ide/src/completion/completion_context.rs | 10 |
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()); |