Rust 结合博士和“外部板条箱”`
例如,在Rust 2018中,我可以使用Rust 结合博士和“外部板条箱”`,rust,rustdoc,Rust,Rustdoc,例如,在Rust 2018中,我可以使用extern self作为板条箱名称,然后使用完全限定语法 外部板条箱自身作为板条箱名称//设置我们的板条箱名称 pub结构成员; fn test(){ ::板条箱名称::成员;//使用完全限定名称 } 然而,我似乎无法让它在医生测试中起作用: //``` ///外部板条箱自身作为板条箱名称//设置板条箱名称 ///pub结构成员; ///fn test(){ ///::板条箱名称::成员;//使用完全限定名称 /// } /// ``` fn示例(){
extern self作为板条箱名称
,然后使用完全限定语法
外部板条箱自身作为板条箱名称//设置我们的板条箱名称
pub结构成员;
fn test(){
::板条箱名称::成员;//使用完全限定名称
}
然而,我似乎无法让它在医生测试中起作用:
//```
///外部板条箱自身作为板条箱名称//设置板条箱名称
///pub结构成员;
///fn test(){
///::板条箱名称::成员;//使用完全限定名称
/// }
/// ```
fn示例(){}
错误[E0425]:在模块板条箱名称
我应该提到的是,我实际上正在对procmacro进行博士测试。也就是说,a)测试需要包含完全限定的语法,因为procmacro将扩展到该语法,b)我需要调整测试前奏,以便编译扩展。基本上,doctest应该模拟类型/路径,以便procmacro可以工作。这是因为如果doctest中没有出现fn main()
,rustdoc会将测试包装在main
中,因此模拟的类型实际上是在该函数中声明的
在测试中包含一个main
函数将选择此选项,并允许控制声明类型的位置
//```
///外部板条箱自身作为板条箱名称//假装我们是板条箱
///pub结构成员;
///fn main(){::板条箱名称::成员;//演示完全限定名称
/// }
/// ```
fn示例(){}