@@ -6,7 +6,6 @@ use ra_syntax::{
66 ast:: { self , AstNode , NameOwner } ,
77 SourceFile , SyntaxNode , TextRange , TextSize ,
88} ;
9- use stdx:: format_to;
109
1110use crate :: {
1211 assist_context:: { AssistBuilder , AssistDirector } ,
@@ -58,7 +57,7 @@ pub(crate) fn extract_struct_from_enum(acc: &mut Assists, ctx: &AssistContext) -
5857 let definition = Definition :: ModuleDef ( ModuleDef :: EnumVariant ( variant_hir) ) ;
5958 let res = definition. find_usages ( & ctx. db , None ) ;
6059 let start_offset = variant. parent_enum ( ) . syntax ( ) . text_range ( ) . start ( ) ;
61- let mut visited_modules_set: FxHashSet < Module > = FxHashSet :: default ( ) ;
60+ let mut visited_modules_set = FxHashSet :: default ( ) ;
6261 visited_modules_set. insert ( current_module) ;
6362 for reference in res {
6463 let source_file = ctx. sema . parse ( reference. file_range . file_id ) ;
@@ -132,10 +131,7 @@ fn extract_struct_def(
132131 } else {
133132 "" . to_string ( )
134133 } ;
135- let mut buf = String :: new ( ) ;
136-
137- format_to ! (
138- buf,
134+ let struct_def = format ! (
139135 r#"{}struct {}{};
140136
141137{}"# ,
@@ -145,7 +141,7 @@ fn extract_struct_def(
145141 indent
146142 ) ;
147143 edit. perform ( file_id, |builder| {
148- builder. insert ( start_offset, buf ) ;
144+ builder. insert ( start_offset, struct_def ) ;
149145 } ) ;
150146 Some ( ( ) )
151147}
0 commit comments