### What it does
As the counterpart to `or_fun_call`, this lint looks for unnecessary
lazily evaluated closures on `Option` and `Result`.

This lint suggests changing the following functions, when eager evaluation results in
simpler code:
 - `unwrap_or_else` to `unwrap_or`
 - `and_then` to `and`
 - `or_else` to `or`
 - `get_or_insert_with` to `get_or_insert`
 - `ok_or_else` to `ok_or`

### Why is this bad?
Using eager evaluation is shorter and simpler in some cases.

### Known problems
It is possible, but not recommended for `Deref` and `Index` to have
side effects. Eagerly evaluating them can change the semantics of the program.

### Example
```
// example code where clippy issues a warning
let opt: Option<u32> = None;

opt.unwrap_or_else(|| 42);
```
Use instead:
```
let opt: Option<u32> = None;

opt.unwrap_or(42);
```