记录项目rustdoc无法查看

时间:2016-01-18 00:59:29

标签: rust rustdoc rust-compiler-plugin

我注意到编译器插件经常提供文档甚至没有提到的宏。它们以编程方式注册和创建,而不是在rustdoc识别的语法中定义。当然,不能显示任何文档。

我正在寻找一种方法来解决这个问题,某些方法可以为编译时在包中不存在的宏生成文档。

我注意到语法包可以从这样的事情中受益。例如,quote_item完全没有记录。我甚至找不到注册它的代码。

1 个答案:

答案 0 :(得分:3)

一种可能性是执行the compiler does:创建一个空的macro_rules!宏并附加文档。例如。如果一个crate定义foo采用一个表达式,那么写一些类似

的东西
/// Documentation
#[macro_export]
macro_rules! foo {
     ($e: expr) => ({ /* syntax extension */ })
}
  

我注意到语法包可以从这样的事情中受益。例如,quote_item完全没有记录。我甚至找不到注册它的代码。

您可以search the Rust source for quote_item,这有两个原因:它提供了一些示例,还允许您跟踪定义。后者使用Rust's DXR instance更容易,它可以用引号搜索(即可以找到字符串),并包含各种源代码导航技巧(如跳转到定义)。