rust-lang/rust-clippy

Enhancements for `manual_flatten`

Open

#6,676 opened on Feb 5, 2021

View on GitHub
 (4 comments) (1 reaction) (1 assignee)Rust (10,406 stars) (1,391 forks)batch import
C-enhancementL-stylegood first issue

Description

Enhancements for manual_flatten

  1. for_each

    Before:

    iter.for_each(|o| {
        if let Some(x) = o { //.. }
    })
    

    After

    iter.flatten().for_each(|o| //..)
    
  2. nested loops

    Before:

    for x in vec![vec![1]] {
        for y in x {
            //..  x is not used again
        }
    }
    

    After:

    for x in vec![vec![1]].into_iter().flatten() {
        // ..
    }
    

Contributor guide