@@ -9,7 +9,6 @@ use stdx::never;
9
9
use syntax:: {
10
10
AstNode , Direction , SyntaxNode , SyntaxToken , T ,
11
11
ast:: { self , Use , UseTree , VisibilityKind , make} ,
12
- ted,
13
12
} ;
14
13
15
14
use crate :: {
@@ -165,8 +164,6 @@ fn build_expanded_import(
165
164
let filtered_defs =
166
165
if reexport_public_items { refs_in_target } else { refs_in_target. used_refs ( ctx) } ;
167
166
168
- let use_tree = builder. make_mut ( use_tree) ;
169
-
170
167
let names_to_import = find_names_to_import ( filtered_defs, imported_defs) ;
171
168
let expanded = make:: use_tree_list ( names_to_import. iter ( ) . map ( |n| {
172
169
let path = make:: ext:: ident_path (
@@ -176,22 +173,24 @@ fn build_expanded_import(
176
173
} ) )
177
174
. clone_for_update ( ) ;
178
175
176
+ let mut editor = builder. make_editor ( use_tree. syntax ( ) ) ;
179
177
match use_tree. star_token ( ) {
180
178
Some ( star) => {
181
179
let needs_braces = use_tree. path ( ) . is_some ( ) && names_to_import. len ( ) != 1 ;
182
180
if needs_braces {
183
- ted :: replace ( star, expanded. syntax ( ) )
181
+ editor . replace ( star, expanded. syntax ( ) )
184
182
} else {
185
183
let without_braces = expanded
186
184
. syntax ( )
187
185
. children_with_tokens ( )
188
186
. filter ( |child| !matches ! ( child. kind( ) , T ![ '{' ] | T ![ '}' ] ) )
189
187
. collect ( ) ;
190
- ted :: replace_with_many ( star, without_braces)
188
+ editor . replace_with_many ( star, without_braces)
191
189
}
192
190
}
193
191
None => never ! ( ) ,
194
192
}
193
+ builder. add_file_edits ( ctx. vfs_file_id ( ) , editor) ;
195
194
}
196
195
197
196
fn get_export_visibility_kind ( use_item : & Use ) -> VisibilityKind {
0 commit comments