### What it does
Detects `loop + match` combinations that are easier
written as a `while let` loop.

### Why is this bad?
The `while let` loop is usually shorter and more
readable.

### Known problems
Sometimes the wrong binding is displayed ([#383](https://github.com/rust-lang/rust-clippy/issues/383)).

### Example
```
loop {
    let x = match y {
        Some(x) => x,
        None => break,
    };
    // .. do something with x
}
// is easier written as
while let Some(x) = y {
    // .. do something with x
};
```