Unstable book documentation of tool lints
This commit is contained in:
parent
dddb8d2eba
commit
a9634fcd01
35
src/doc/unstable-book/src/language-features/tool-lints.md
Normal file
35
src/doc/unstable-book/src/language-features/tool-lints.md
Normal file
@ -0,0 +1,35 @@
|
||||
# `tool_lints`
|
||||
|
||||
The tracking issue for this feature is: [#44690]
|
||||
|
||||
[#44690]: https://github.com/rust-lang/rust/issues/44690
|
||||
|
||||
------------------------
|
||||
|
||||
Tool lints let you use scoped lints, to `allow`, `warn`, `deny` or `forbid` lints of
|
||||
certain tools.
|
||||
|
||||
Currently `clippy` is the only available lint tool.
|
||||
|
||||
It is recommended for lint tools to implement the scoped lints like this:
|
||||
|
||||
- `#[_(TOOL_NAME::lintname)]`: for lint names
|
||||
- `#[_(TOOL_NAME::lintgroup)]`: for groups of lints
|
||||
- `#[_(TOOL_NAME::all)]`: for (almost[^1]) all lints
|
||||
|
||||
## An example
|
||||
|
||||
```rust
|
||||
#![feature(tool_lints)]
|
||||
|
||||
#![warn(clippy::pedantic)]
|
||||
|
||||
#[allow(clippy::filter_map)]
|
||||
fn main() {
|
||||
let v = vec![0; 10];
|
||||
let _ = v.into_iter().filter(|&x| x < 1).map(|x| x + 1).collect::<Vec<_>>();
|
||||
println!("No filter_map()!");
|
||||
}
|
||||
```
|
||||
|
||||
[^1]: Some defined lint groups can be excluded here.
|
Loading…
Reference in New Issue
Block a user