### What it does Checks for `.unwrap()` or `.unwrap_err()` calls on `Result`s and `.unwrap()` call on `Option`s. ### Why is this bad? It is better to handle the `None` or `Err` case, or at least call `.expect(_)` with a more helpful message. Still, for a lot of quick-and-dirty code, `unwrap` is a good choice, which is why this lint is `Allow` by default. `result.unwrap()` will let the thread panic on `Err` values. Normally, you want to implement more sophisticated error handling, and propagate errors upwards with `?` operator. Even if you want to panic on errors, not all `Error`s implement good messages on display. Therefore, it may be beneficial to look at the places where they may get displayed. Activate this lint to do just that. ### Examples ``` option.unwrap(); result.unwrap(); ``` Use instead: ``` option.expect("more helpful message"); result.expect("more helpful message"); ``` If [expect_used](#expect_used) is enabled, instead: ``` option?; // or result?; ```