是否有未记录部分的警告?

Is there a warning for undocumented sections?

我正在写一个准备发布的 crate。发布时,最重要的事情之一(在我看来)是确保 crate 被妥善记录。因此我的问题是:是否有一个警告要打开,它会加热代码中未记录的部分?


例如:我通常会想到 #[warn(undocumented)]

是的,存在这样的 lint。 rustc 编译器提供 missing_docs lint, which warns about missing documentation on public items when enabled. The clippy linter provides the missing_docs_on_private_items lint,它还会警告……好吧,你猜对了。请注意 missing_docs_in_private_items 对所有项目发出警告,因此如果启用它则不需要 missing_docs

您可以使用

启用 lints
#![warn(missing_docs)]
#![warn(missing_docs_in_private_items)]

警告或

#![deny(missing_docs)]
#![deny(missing_docs_in_private_items)]

错误。

您正在寻找 Rust 编译器中的 missing-docs lint

示例:

#![warn(missing_docs)]

fn foo(bar: i32) {}

编译器的输出:

warning: missing documentation for crate
 --> src/lib.rs:1:1
  |
1 | / #![warn(missing_docs)]
2 | |
3 | | fn foo(bar: i32) {}
  | |___________________^
  |

您可能还会发现 more lints in the rustc book