rust 如何阻止“货物单据”导出pub(crate)项目

yshpjwxd  于 2023-11-19  发布在  其他
关注(0)|答案(1)|浏览(171)

我试图只为我的面向公众的API生成rustdoc。我希望这包括pub,但不包括pub(crate)项目。
有没有一种方法可以表明这一点,而不必单独排除每一项?

  1. pub struct DocumentMe;
  2. // I do not want to have to
  3. // explicitly specify excluding this
  4. #[doc(hidden)]
  5. pub(crate) struct DoNotDocumentMe;

字符串
正如@Chayim Friedman在评论中所说,这只是二进制板条箱的问题,而不是图书馆板条箱。

6g8kf2rb

6g8kf2rb1#

从Rust 1.41开始,二进制crate中的私有API默认被记录。由于API不被导出给任何人(因为这是一个二进制文件),Rust假设你想为源代码的消费者记录API,所以它也记录私有项。
在library crate中,你可以使用--document-private-items标志来更改默认值和记录私有项。可悲的是,我不认为有一个选项可以不记录二进制crate的私有项。在Rust 1.41中更改默认值的PR中,据说PR可以不加标志来改变默认值,将来如果有需要的话,可以加这样的标志,我不认为这件事发生过

相关问题