}
ctx.add_assist(AssistId("fill_match_arms"), "Fill match arms", |edit| {
- let new_arm_list =
- match_arm_list.remove_placeholder().append_arms(missing_arms.into_iter());
+ let new_arm_list = match_arm_list.remove_placeholder().append_arms(missing_arms);
edit.target(match_expr.syntax().text_range());
edit.set_cursor(expr.syntax().text_range().start());
impl ast::ItemList {
#[must_use]
- pub fn append_items(&self, items: impl Iterator<Item = ast::ImplItem>) -> ast::ItemList {
+ pub fn append_items(&self, items: impl IntoIterator<Item = ast::ImplItem>) -> ast::ItemList {
let mut res = self.clone();
if !self.syntax().text().contains_char('\n') {
res = make_multiline(res);
}
- items.for_each(|it| res = res.append_item(it));
+ items.into_iter().for_each(|it| res = res.append_item(it));
res
}
impl ast::MatchArmList {
#[must_use]
- pub fn append_arms(&self, items: impl Iterator<Item = ast::MatchArm>) -> ast::MatchArmList {
+ pub fn append_arms(&self, items: impl IntoIterator<Item = ast::MatchArm>) -> ast::MatchArmList {
let mut res = self.clone();
res = res.strip_if_only_whitespace();
if !res.syntax().text().contains_char('\n') {
res = make_multiline(res);
}
- items.for_each(|it| res = res.append_arm(it));
+ items.into_iter().for_each(|it| res = res.append_arm(it));
res
}