Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide-assists/src/handlers/replace_named_generic_with_impl.rs')
-rw-r--r--crates/ide-assists/src/handlers/replace_named_generic_with_impl.rs15
1 files changed, 7 insertions, 8 deletions
diff --git a/crates/ide-assists/src/handlers/replace_named_generic_with_impl.rs b/crates/ide-assists/src/handlers/replace_named_generic_with_impl.rs
index df7057835c..018642a047 100644
--- a/crates/ide-assists/src/handlers/replace_named_generic_with_impl.rs
+++ b/crates/ide-assists/src/handlers/replace_named_generic_with_impl.rs
@@ -5,9 +5,10 @@ use ide_db::{
defs::Definition,
search::{SearchScope, UsageSearchResult},
};
+use syntax::ast::syntax_factory::SyntaxFactory;
use syntax::{
AstNode,
- ast::{self, HasGenericParams, HasName, HasTypeBounds, Name, NameLike, PathType, make},
+ ast::{self, HasGenericParams, HasName, HasTypeBounds, Name, NameLike, PathType},
match_ast,
};
@@ -72,6 +73,7 @@ pub(crate) fn replace_named_generic_with_impl(
target,
|edit| {
let mut editor = edit.make_editor(type_param.syntax());
+ let make = SyntaxFactory::without_mappings();
// remove trait from generic param list
if let Some(generic_params) = fn_.generic_param_list() {
@@ -83,17 +85,14 @@ pub(crate) fn replace_named_generic_with_impl(
if params.is_empty() {
editor.delete(generic_params.syntax());
} else {
- let new_generic_param_list = make::generic_param_list(params);
- editor.replace(
- generic_params.syntax(),
- new_generic_param_list.syntax().clone_for_update(),
- );
+ let new_generic_param_list = make.generic_param_list(params);
+ editor.replace(generic_params.syntax(), new_generic_param_list.syntax());
}
}
- let new_bounds = make::impl_trait_type(type_bound_list);
+ let new_bounds = make.impl_trait_type(type_bound_list);
for path_type in path_types_to_replace.iter().rev() {
- editor.replace(path_type.syntax(), new_bounds.clone_for_update().syntax());
+ editor.replace(path_type.syntax(), new_bounds.syntax());
}
edit.add_file_edits(ctx.vfs_file_id(), editor);
},