diff options
Diffstat (limited to 'crates/ra_assists/src/assists/move_bounds.rs')
-rw-r--r-- | crates/ra_assists/src/assists/move_bounds.rs | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/crates/ra_assists/src/assists/move_bounds.rs b/crates/ra_assists/src/assists/move_bounds.rs index aa9036fed..6fd2fb72b 100644 --- a/crates/ra_assists/src/assists/move_bounds.rs +++ b/crates/ra_assists/src/assists/move_bounds.rs | |||
@@ -6,7 +6,7 @@ use ra_syntax::{ | |||
6 | TextRange, | 6 | TextRange, |
7 | }; | 7 | }; |
8 | 8 | ||
9 | use crate::{ast_builder::AstBuilder, Assist, AssistCtx, AssistId}; | 9 | use crate::{ast_builder::Make, Assist, AssistCtx, AssistId}; |
10 | 10 | ||
11 | pub(crate) fn move_bounds_to_where_clause(mut ctx: AssistCtx<impl HirDatabase>) -> Option<Assist> { | 11 | pub(crate) fn move_bounds_to_where_clause(mut ctx: AssistCtx<impl HirDatabase>) -> Option<Assist> { |
12 | let type_param_list = ctx.node_at_offset::<ast::TypeParamList>()?; | 12 | let type_param_list = ctx.node_at_offset::<ast::TypeParamList>()?; |
@@ -52,7 +52,7 @@ pub(crate) fn move_bounds_to_where_clause(mut ctx: AssistCtx<impl HirDatabase>) | |||
52 | } | 52 | } |
53 | 53 | ||
54 | let predicates = type_params.iter().filter_map(build_predicate); | 54 | let predicates = type_params.iter().filter_map(build_predicate); |
55 | let where_clause = AstBuilder::<ast::WhereClause>::from_predicates(predicates); | 55 | let where_clause = Make::<ast::WhereClause>::from_predicates(predicates); |
56 | 56 | ||
57 | let to_insert = match anchor.prev_sibling_or_token() { | 57 | let to_insert = match anchor.prev_sibling_or_token() { |
58 | Some(ref elem) if elem.kind() == WHITESPACE => { | 58 | Some(ref elem) if elem.kind() == WHITESPACE => { |
@@ -69,9 +69,8 @@ pub(crate) fn move_bounds_to_where_clause(mut ctx: AssistCtx<impl HirDatabase>) | |||
69 | } | 69 | } |
70 | 70 | ||
71 | fn build_predicate(param: &ast::TypeParam) -> Option<ast::WherePred> { | 71 | fn build_predicate(param: &ast::TypeParam) -> Option<ast::WherePred> { |
72 | let path = AstBuilder::<ast::Path>::from_name(param.name()?); | 72 | let path = Make::<ast::Path>::from_name(param.name()?); |
73 | let predicate = | 73 | let predicate = Make::<ast::WherePred>::from(path, param.type_bound_list()?.bounds()); |
74 | AstBuilder::<ast::WherePred>::from_pieces(path, param.type_bound_list()?.bounds()); | ||
75 | Some(predicate) | 74 | Some(predicate) |
76 | } | 75 | } |
77 | 76 | ||