diff options
Diffstat (limited to 'crates/ra_assists/src/move_guard.rs')
-rw-r--r-- | crates/ra_assists/src/move_guard.rs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/crates/ra_assists/src/move_guard.rs b/crates/ra_assists/src/move_guard.rs index e1ce86a33..313c9ad18 100644 --- a/crates/ra_assists/src/move_guard.rs +++ b/crates/ra_assists/src/move_guard.rs | |||
@@ -18,9 +18,9 @@ pub(crate) fn move_guard_to_arm_body(mut ctx: AssistCtx<impl HirDatabase>) -> Op | |||
18 | 18 | ||
19 | ctx.add_action(AssistId("move_guard_to_arm_body"), "move guard to arm body", |edit| { | 19 | ctx.add_action(AssistId("move_guard_to_arm_body"), "move guard to arm body", |edit| { |
20 | edit.target(guard.syntax().range()); | 20 | edit.target(guard.syntax().range()); |
21 | let offseting_amount = match space_before_guard { | 21 | let offseting_amount = match &space_before_guard { |
22 | Some(SyntaxElement::Token(tok)) => { | 22 | Some(SyntaxElement::Token(tok)) => { |
23 | if let Some(_) = ast::Whitespace::cast(tok) { | 23 | if let Some(_) = ast::Whitespace::cast(tok.clone()) { |
24 | let ele = space_before_guard.unwrap().range(); | 24 | let ele = space_before_guard.unwrap().range(); |
25 | edit.delete(ele); | 25 | edit.delete(ele); |
26 | ele.len() | 26 | ele.len() |
@@ -39,11 +39,11 @@ pub(crate) fn move_guard_to_arm_body(mut ctx: AssistCtx<impl HirDatabase>) -> Op | |||
39 | } | 39 | } |
40 | 40 | ||
41 | pub(crate) fn move_arm_cond_to_match_guard(mut ctx: AssistCtx<impl HirDatabase>) -> Option<Assist> { | 41 | pub(crate) fn move_arm_cond_to_match_guard(mut ctx: AssistCtx<impl HirDatabase>) -> Option<Assist> { |
42 | let match_arm: &MatchArm = ctx.node_at_offset::<MatchArm>()?; | 42 | let match_arm: MatchArm = ctx.node_at_offset::<MatchArm>()?; |
43 | let last_match_pat = match_arm.pats().last()?; | 43 | let last_match_pat = match_arm.pats().last()?; |
44 | 44 | ||
45 | let arm_body = match_arm.expr()?; | 45 | let arm_body = match_arm.expr()?; |
46 | let if_expr: &IfExpr = IfExpr::cast(arm_body.syntax())?; | 46 | let if_expr: IfExpr = IfExpr::cast(arm_body.syntax().clone())?; |
47 | let cond = if_expr.condition()?; | 47 | let cond = if_expr.condition()?; |
48 | let then_block = if_expr.then_branch()?; | 48 | let then_block = if_expr.then_branch()?; |
49 | 49 | ||
@@ -65,7 +65,7 @@ pub(crate) fn move_arm_cond_to_match_guard(mut ctx: AssistCtx<impl HirDatabase>) | |||
65 | edit.target(if_expr.syntax().range()); | 65 | edit.target(if_expr.syntax().range()); |
66 | let then_only_expr = then_block.statements().next().is_none(); | 66 | let then_only_expr = then_block.statements().next().is_none(); |
67 | 67 | ||
68 | match then_block.expr() { | 68 | match &then_block.expr() { |
69 | Some(then_expr) if then_only_expr => { | 69 | Some(then_expr) if then_only_expr => { |
70 | edit.replace(if_expr.syntax().range(), then_expr.syntax().text()) | 70 | edit.replace(if_expr.syntax().range(), then_expr.syntax().text()) |
71 | } | 71 | } |