我目前正在与Rust和Cargo合作开展一个项目.它运行良好,但我遇到一个小问题:对于代码重用,我的大多数项目都在lib crate中.在这个箱子里,很多东西都是私人的.所以当我这样做的时候cargo doc,我只有公共的,出口的东西的文件......这实际上很棒,因为很容易看出什么是出口的,什么不是.
但我不得不承认:我错过了整个项目的完整文档,用于开发目的......
She*_*ter 10
今天您可能无法使用Cargo,如果您直接使用rustdoc,则有一种解决方法.
运行cargo doc -v并记下它运行的rustdoc命令:
$ cargo doc -v
Compiling docz v0.0.1 (file:///private/tmp/docz)
Running `rustdoc src/lib.rs -o /private/tmp/docz/target/doc --crate-name docz -L dependency=/private/tmp/docz/target/debug -L dependency=/private/tmp/docz/target/debug/deps`
Run Code Online (Sandbox Code Playgroud)
然后,添加--no-defaults --passes strip-hidden --passes collapse-docs --passes unindent-comments到命令:
rustdoc src/lib.rs -o /private/tmp/docz/target/doc --crate-name docz \
-L dependency=/private/tmp/docz/target/debug \
-L dependency=/private/tmp/docz/target/debug/deps \
--no-defaults \
--passes strip-hidden --passes collapse-docs --passes unindent-comments
Run Code Online (Sandbox Code Playgroud)
这现在更简单,只需使用:
cargo rustdoc -- --document-private-items
Run Code Online (Sandbox Code Playgroud)
使用货物记录私人物品:
cargo doc --document-private-items
Run Code Online (Sandbox Code Playgroud)
这可以通过将参数传递给rustdoc来实现--,例如。
cargo rustdoc -- \
--no-defaults \
--passes strip-hidden \
--passes collapse-docs \
--passes unindent-comments \
--passes strip-priv-imports
Run Code Online (Sandbox Code Playgroud)
基于@Shepmaster的答案,无需手动复制粘贴。
| 归档时间: |
|
| 查看次数: |
1414 次 |
| 最近记录: |