]> git.lizzy.rs Git - rust.git/commitdiff
Use IntoIter
authorAleksey Kladov <aleksey.kladov@gmail.com>
Mon, 30 Mar 2020 10:28:22 +0000 (12:28 +0200)
committerAleksey Kladov <aleksey.kladov@gmail.com>
Mon, 30 Mar 2020 10:28:22 +0000 (12:28 +0200)
crates/ra_assists/src/handlers/fill_match_arms.rs
crates/ra_syntax/src/ast/edit.rs

index 5f279d25ad3abd4fc9314011ba50b7497140bdb8..41bb97928db7e08336cc9f438fac83e873877fc9 100644 (file)
@@ -97,8 +97,7 @@ pub(crate) fn fill_match_arms(ctx: AssistCtx) -> Option<Assist> {
     }
 
     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());
index baf9a1b4b20db31f4ce7b631c0fa279d4944b519..3d023f1891baa62e7e8ef26567b8fe3d02b917e6 100644 (file)
@@ -80,12 +80,12 @@ fn make_multiline<N>(node: N) -> N
 
 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
     }
 
@@ -339,13 +339,13 @@ pub fn remove(&self) -> SyntaxRewriter<'static> {
 
 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
     }