Skip to content

Commit aadb5a1

Browse files
committed
remove usage of make variant getter from generate_getter_or_setter
1 parent 09250f9 commit aadb5a1

1 file changed

Lines changed: 32 additions & 36 deletions

File tree

crates/ide-assists/src/handlers/generate_getter_or_setter.rs

Lines changed: 32 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -218,14 +218,14 @@ fn generate_getter_from_info(
218218
ctx: &AssistContext<'_>,
219219
info: &AssistInfo,
220220
record_field_info: &RecordFieldInfo,
221-
syntax_factory: &SyntaxFactory,
221+
make: &SyntaxFactory,
222222
) -> ast::Fn {
223223
let (ty, body) = if matches!(info.assist_type, AssistType::MutGet) {
224-
let self_expr = syntax_factory.expr_path(syntax_factory.ident_path("self"));
224+
let self_expr = make.expr_path(make.ident_path("self"));
225225
(
226-
syntax_factory.ty_ref(record_field_info.field_ty.clone(), true),
227-
syntax_factory.expr_ref(
228-
syntax_factory.expr_field(self_expr, &record_field_info.field_name.text()).into(),
226+
make.ty_ref(record_field_info.field_ty.clone(), true),
227+
make.expr_ref(
228+
make.expr_field(self_expr, &record_field_info.field_name.text()).into(),
229229
true,
230230
),
231231
)
@@ -239,40 +239,39 @@ fn generate_getter_from_info(
239239
.map(|conversion| {
240240
cov_mark::hit!(convert_reference_type);
241241
(
242-
conversion.convert_type(ctx.db(), module),
243-
conversion.getter(record_field_info.field_name.to_string()),
242+
conversion.convert_type_with_factory(make, ctx.db(), module),
243+
conversion.getter(make, record_field_info.field_name.to_string()),
244244
)
245245
})
246246
})()
247247
.unwrap_or_else(|| {
248248
(
249-
syntax_factory.ty_ref(record_field_info.field_ty.clone(), false),
250-
syntax_factory.expr_ref(
251-
syntax_factory
252-
.expr_field(
253-
syntax_factory.expr_path(syntax_factory.ident_path("self")),
254-
&record_field_info.field_name.text(),
255-
)
256-
.into(),
249+
make.ty_ref(record_field_info.field_ty.clone(), false),
250+
make.expr_ref(
251+
make.expr_field(
252+
make.expr_path(make.ident_path("self")),
253+
&record_field_info.field_name.text(),
254+
)
255+
.into(),
257256
false,
258257
),
259258
)
260259
})
261260
};
262261

263262
let self_param = if matches!(info.assist_type, AssistType::MutGet) {
264-
syntax_factory.mut_self_param()
263+
make.mut_self_param()
265264
} else {
266-
syntax_factory.self_param()
265+
make.self_param()
267266
};
268267

269268
let strukt = &info.strukt;
270-
let fn_name = syntax_factory.name(&record_field_info.fn_name);
271-
let params = syntax_factory.param_list(Some(self_param), []);
272-
let ret_type = Some(syntax_factory.ret_type(ty));
273-
let body = syntax_factory.block_expr([], Some(body));
269+
let fn_name = make.name(&record_field_info.fn_name);
270+
let params = make.param_list(Some(self_param), []);
271+
let ret_type = Some(make.ret_type(ty));
272+
let body = make.block_expr([], Some(body));
274273

275-
syntax_factory.fn_(
274+
make.fn_(
276275
None,
277276
strukt.visibility(),
278277
fn_name,
@@ -291,32 +290,29 @@ fn generate_getter_from_info(
291290
fn generate_setter_from_info(
292291
info: &AssistInfo,
293292
record_field_info: &RecordFieldInfo,
294-
syntax_factory: &SyntaxFactory,
293+
make: &SyntaxFactory,
295294
) -> ast::Fn {
296295
let strukt = &info.strukt;
297296
let field_name = &record_field_info.fn_name;
298-
let fn_name = syntax_factory.name(&format!("set_{field_name}"));
297+
let fn_name = make.name(&format!("set_{field_name}"));
299298
let field_ty = &record_field_info.field_ty;
300299

301300
// Make the param list
302301
// `(&mut self, $field_name: $field_ty)`
303-
let field_param = syntax_factory.param(
304-
syntax_factory.ident_pat(false, false, syntax_factory.name(field_name)).into(),
305-
field_ty.clone(),
306-
);
307-
let params = syntax_factory.param_list(Some(syntax_factory.mut_self_param()), [field_param]);
302+
let field_param =
303+
make.param(make.ident_pat(false, false, make.name(field_name)).into(), field_ty.clone());
304+
let params = make.param_list(Some(make.mut_self_param()), [field_param]);
308305

309306
// Make the assignment body
310307
// `self.$field_name = $field_name`
311-
let self_expr = syntax_factory.expr_path(syntax_factory.ident_path("self"));
312-
let lhs = syntax_factory.expr_field(self_expr, field_name);
313-
let rhs = syntax_factory.expr_path(syntax_factory.ident_path(field_name));
314-
let assign_stmt =
315-
syntax_factory.expr_stmt(syntax_factory.expr_assignment(lhs.into(), rhs).into());
316-
let body = syntax_factory.block_expr([assign_stmt.into()], None);
308+
let self_expr = make.expr_path(make.ident_path("self"));
309+
let lhs = make.expr_field(self_expr, field_name);
310+
let rhs = make.expr_path(make.ident_path(field_name));
311+
let assign_stmt = make.expr_stmt(make.expr_assignment(lhs.into(), rhs).into());
312+
let body = make.block_expr([assign_stmt.into()], None);
317313

318314
// Make the setter fn
319-
syntax_factory.fn_(
315+
make.fn_(
320316
None,
321317
strukt.visibility(),
322318
fn_name,

0 commit comments

Comments
 (0)