aboutsummaryrefslogtreecommitdiff
path: root/crates/ide/src/completion
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2020-08-13 17:50:50 +0100
committerGitHub <[email protected]>2020-08-13 17:50:50 +0100
commit3d6fd620e80050d68e6da55aabad2ca780ba2323 (patch)
tree1ee2aaf3f2b3ae4901ddd03985b5d217d1521612 /crates/ide/src/completion
parent018a6cac072767dfd630c22e6d9ce134b7bb09af (diff)
parentef462ed6af7ae8e0d30894baefe6ba1ff49aab8f (diff)
Merge #5751
5751: Better recovery in `use foo::;` r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
Diffstat (limited to 'crates/ide/src/completion')
-rw-r--r--crates/ide/src/completion/completion_context.rs18
1 files changed, 12 insertions, 6 deletions
diff --git a/crates/ide/src/completion/completion_context.rs b/crates/ide/src/completion/completion_context.rs
index 047ecd9d7..09440334d 100644
--- a/crates/ide/src/completion/completion_context.rs
+++ b/crates/ide/src/completion/completion_context.rs
@@ -9,15 +9,21 @@ use syntax::{
9 SyntaxKind::*, 9 SyntaxKind::*,
10 SyntaxNode, SyntaxToken, TextRange, TextSize, 10 SyntaxNode, SyntaxToken, TextRange, TextSize,
11}; 11};
12use test_utils::mark;
12use text_edit::Indel; 13use text_edit::Indel;
13 14
14use super::patterns::{ 15use crate::{
15 has_bind_pat_parent, has_block_expr_parent, has_impl_as_prev_sibling, has_impl_parent, 16 call_info::ActiveParameter,
16 has_item_list_or_source_file_parent, has_ref_parent, has_trait_as_prev_sibling, 17 completion::{
17 has_trait_parent, if_is_prev, is_in_loop_body, is_match_arm, unsafe_is_prev, 18 patterns::{
19 has_bind_pat_parent, has_block_expr_parent, has_impl_as_prev_sibling, has_impl_parent,
20 has_item_list_or_source_file_parent, has_ref_parent, has_trait_as_prev_sibling,
21 has_trait_parent, if_is_prev, is_in_loop_body, is_match_arm, unsafe_is_prev,
22 },
23 CompletionConfig,
24 },
25 FilePosition,
18}; 26};
19use crate::{call_info::ActiveParameter, completion::CompletionConfig, FilePosition};
20use test_utils::mark;
21 27
22/// `CompletionContext` is created early during completion to figure out, where 28/// `CompletionContext` is created early during completion to figure out, where
23/// exactly is the cursor, syntax-wise. 29/// exactly is the cursor, syntax-wise.