Clippy
If there is a tool that will help you sanitize your code the most, it is Clippy. At the time of writing, Clippy provides 208 extra lints, most of them really useful to avoid interesting pitfalls such as the unwrap_or()
usage that we discussed in Chapter 2, Extra Performance Enhancements, or to avoid non-idiomatic code. Of course, we will not see all of them here, and you will find a comprehensive list of all of them in the Clippy lint documentation at https://rust-lang-nursery.github.io/rust-clippy/master/.
Since many of them already warn or even deny by default, we will check some of the ones that are allowed by default but that could be really useful to improve the code quality of your application and even its performance.
Installation
Installing Clippy is pretty easy: you will need to install Rust nightly by running rustup toolchain install nightly
, then you can install Clippy by running cargo +nightly install clippy
.
Note that since Clippy requires a nightly compiler to build, and...