summaryrefslogtreecommitdiffstats
path: root/src/tools/clippy/src/docs/map_unwrap_or.txt
blob: 485b29f01b103e6cac338a0f0d7a2d03b62c5210 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
### What it does
Checks for usage of `option.map(_).unwrap_or(_)` or `option.map(_).unwrap_or_else(_)` or
`result.map(_).unwrap_or_else(_)`.

### Why is this bad?
Readability, these can be written more concisely (resp.) as
`option.map_or(_, _)`, `option.map_or_else(_, _)` and `result.map_or_else(_, _)`.

### Known problems
The order of the arguments is not in execution order

### Examples
```
option.map(|a| a + 1).unwrap_or(0);
result.map(|a| a + 1).unwrap_or_else(some_function);
```

Use instead:
```
option.map_or(0, |a| a + 1);
result.map_or_else(some_function, |a| a + 1);
```