Skip to content

Commit 8497b5b

Browse files
committed
Use format_to! to make logic a bit nicer
1 parent b963893 commit 8497b5b

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

crates/assists/src/handlers/move_module_to_file.rs

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
use ast::{edit::IndentLevel, VisibilityOwner};
22
use ide_db::base_db::AnchoredPathBuf;
3+
use stdx::format_to;
34
use syntax::{
45
ast::{self, edit::AstNodeEdit, NameOwner},
56
AstNode, TextRange,
@@ -36,8 +37,6 @@ pub(crate) fn move_module_to_file(acc: &mut Assists, ctx: &AssistContext) -> Opt
3637

3738
let module_def = ctx.sema.to_def(&module_ast)?;
3839
let parent_module = module_def.parent(ctx.db())?;
39-
let vis_str =
40-
if let Some(v) = module_ast.visibility() { v.to_string() + " " } else { "".to_string() };
4140

4241
acc.add(
4342
AssistId("move_module_to_file", AssistKind::RefactorExtract),
@@ -61,10 +60,13 @@ pub(crate) fn move_module_to_file(acc: &mut Assists, ctx: &AssistContext) -> Opt
6160
items
6261
};
6362

64-
builder.replace(
65-
module_ast.syntax().text_range(),
66-
format!("{}mod {};", vis_str, module_name),
67-
);
63+
let mut buf = String::new();
64+
if let Some(v) = module_ast.visibility() {
65+
format_to!(buf, "{} ", v);
66+
}
67+
format_to!(buf, "mod {};", module_name);
68+
69+
builder.replace(module_ast.syntax().text_range(), buf);
6870

6971
let dst = AnchoredPathBuf { anchor: ctx.frange.file_id, path };
7072
builder.create_file(dst, contents);

0 commit comments

Comments
 (0)