@@ -114,7 +114,7 @@ trait AddRewrite {
114
114
label : & str ,
115
115
old : Vec < T > ,
116
116
new : Vec < T > ,
117
- target : SyntaxNode ,
117
+ target : & SyntaxNode ,
118
118
) -> Option < ( ) > ;
119
119
}
120
120
@@ -124,15 +124,14 @@ impl AddRewrite for Assists {
124
124
label : & str ,
125
125
old : Vec < T > ,
126
126
new : Vec < T > ,
127
- target : SyntaxNode ,
127
+ target : & SyntaxNode ,
128
128
) -> Option < ( ) > {
129
- let node = old. first ( ) . unwrap ( ) . syntax ( ) . parent ( ) . unwrap ( ) ;
130
129
self . add (
131
130
AssistId ( "sort_items" , AssistKind :: RefactorRewrite ) ,
132
131
label,
133
132
target. text_range ( ) ,
134
133
|builder| {
135
- let mut editor = builder. make_editor ( & node ) ;
134
+ let mut editor = builder. make_editor ( target ) ;
136
135
137
136
old. into_iter ( ) . zip ( new) . for_each ( |( old, new) | {
138
137
// FIXME: remove `clone_for_update` when `SyntaxEditor` handles it for us
@@ -176,7 +175,7 @@ fn add_sort_methods_assist(
176
175
return None ;
177
176
}
178
177
179
- acc. add_rewrite ( "Sort methods alphabetically" , methods, sorted, item_list. syntax ( ) . clone ( ) )
178
+ acc. add_rewrite ( "Sort methods alphabetically" , methods, sorted, item_list. syntax ( ) )
180
179
}
181
180
182
181
fn add_sort_fields_assist (
@@ -191,12 +190,7 @@ fn add_sort_fields_assist(
191
190
return None ;
192
191
}
193
192
194
- acc. add_rewrite (
195
- "Sort fields alphabetically" ,
196
- fields,
197
- sorted,
198
- record_field_list. syntax ( ) . clone ( ) ,
199
- )
193
+ acc. add_rewrite ( "Sort fields alphabetically" , fields, sorted, record_field_list. syntax ( ) )
200
194
}
201
195
202
196
fn add_sort_variants_assist ( acc : & mut Assists , variant_list : ast:: VariantList ) -> Option < ( ) > {
@@ -208,7 +202,7 @@ fn add_sort_variants_assist(acc: &mut Assists, variant_list: ast::VariantList) -
208
202
return None ;
209
203
}
210
204
211
- acc. add_rewrite ( "Sort variants alphabetically" , variants, sorted, variant_list. syntax ( ) . clone ( ) )
205
+ acc. add_rewrite ( "Sort variants alphabetically" , variants, sorted, variant_list. syntax ( ) )
212
206
}
213
207
214
208
fn sort_by_name < T : HasName + Clone > ( initial : & [ T ] ) -> Vec < T > {
0 commit comments