From f4ae3650d855554575f866264a3c8197dfd12835 Mon Sep 17 00:00:00 2001 From: Kirill Bulatov Date: Tue, 24 Nov 2020 23:25:13 +0200 Subject: Extract the import code into the shared module --- crates/completion/src/render.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'crates/completion/src/render.rs') diff --git a/crates/completion/src/render.rs b/crates/completion/src/render.rs index bce02f577..e9704c27c 100644 --- a/crates/completion/src/render.rs +++ b/crates/completion/src/render.rs @@ -9,9 +9,9 @@ pub(crate) mod type_alias; mod builder_ext; -use assists::utils::{ImportScope, MergeBehaviour}; use hir::{Documentation, HasAttrs, HirDisplay, ModPath, Mutability, ScopeDef, Type}; use ide_db::RootDatabase; +use ide_helpers::insert_use::{ImportScope, MergeBehaviour}; use syntax::TextRange; use test_utils::mark; -- cgit v1.2.3 From f75f07019bd754e4fcc40c6144cc83911bbf21c8 Mon Sep 17 00:00:00 2001 From: Kirill Bulatov Date: Fri, 27 Nov 2020 12:22:10 +0200 Subject: Group import data in a struct --- crates/completion/src/render.rs | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) (limited to 'crates/completion/src/render.rs') diff --git a/crates/completion/src/render.rs b/crates/completion/src/render.rs index e9704c27c..e84aef0e4 100644 --- a/crates/completion/src/render.rs +++ b/crates/completion/src/render.rs @@ -16,8 +16,8 @@ use syntax::TextRange; use test_utils::mark; use crate::{ - config::SnippetCap, CompletionContext, CompletionItem, CompletionItemKind, CompletionKind, - CompletionScore, + config::SnippetCap, item::ImportToAdd, CompletionContext, CompletionItem, CompletionItemKind, + CompletionKind, CompletionScore, }; use crate::render::{enum_variant::render_enum_variant, function::render_fn, macro_::render_macro}; @@ -48,15 +48,15 @@ pub(crate) fn render_resolution<'a>( pub(crate) fn render_resolution_with_import<'a>( ctx: RenderContext<'a>, - import: ModPath, + import_path: ModPath, import_scope: ImportScope, merge_behaviour: Option, resolution: &ScopeDef, ) -> Option { - let local_name = import.segments.last()?.to_string(); + let local_name = import_path.segments.last()?.to_string(); Render::new(ctx).render_resolution( local_name, - Some((import, import_scope, merge_behaviour)), + Some(ImportToAdd { import_path, import_scope, merge_behaviour }), resolution, ) } @@ -147,7 +147,7 @@ impl<'a> Render<'a> { fn render_resolution( self, local_name: String, - import_data: Option<(ModPath, ImportScope, Option)>, + import_to_add: Option, resolution: &ScopeDef, ) -> Option { let _p = profile::span("render_resolution"); @@ -160,15 +160,16 @@ impl<'a> Render<'a> { let kind = match resolution { ScopeDef::ModuleDef(Function(func)) => { - let item = render_fn(self.ctx, import_data, Some(local_name), *func); + let item = render_fn(self.ctx, import_to_add, Some(local_name), *func); return Some(item); } ScopeDef::ModuleDef(EnumVariant(var)) => { - let item = render_enum_variant(self.ctx, import_data, Some(local_name), *var, None); + let item = + render_enum_variant(self.ctx, import_to_add, Some(local_name), *var, None); return Some(item); } ScopeDef::MacroDef(mac) => { - let item = render_macro(self.ctx, import_data, local_name, *mac); + let item = render_macro(self.ctx, import_to_add, local_name, *mac); return item; } @@ -193,7 +194,7 @@ impl<'a> Render<'a> { local_name, ) .kind(CompletionItemKind::UnresolvedReference) - .import_data(import_data) + .add_import(import_to_add) .build(); return Some(item); } @@ -248,7 +249,7 @@ impl<'a> Render<'a> { let item = item .kind(kind) - .import_data(import_data) + .add_import(import_to_add) .set_documentation(docs) .set_ref_match(ref_match) .build(); -- cgit v1.2.3 From 3f612d37c68a6e4c09e407b7cd2ad8a1d17ab4e6 Mon Sep 17 00:00:00 2001 From: Kirill Bulatov Date: Sat, 28 Nov 2020 16:30:39 +0200 Subject: Move the helpers into ide_db --- crates/completion/src/render.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'crates/completion/src/render.rs') diff --git a/crates/completion/src/render.rs b/crates/completion/src/render.rs index e84aef0e4..504757a6a 100644 --- a/crates/completion/src/render.rs +++ b/crates/completion/src/render.rs @@ -10,8 +10,8 @@ pub(crate) mod type_alias; mod builder_ext; use hir::{Documentation, HasAttrs, HirDisplay, ModPath, Mutability, ScopeDef, Type}; +use ide_db::helpers::insert_use::{ImportScope, MergeBehaviour}; use ide_db::RootDatabase; -use ide_helpers::insert_use::{ImportScope, MergeBehaviour}; use syntax::TextRange; use test_utils::mark; -- cgit v1.2.3