是否use允许在函数中间使用 -statements?
如果是这样,我怎么参阅模块(self?super?完整路径?)
如果没有,在我调用宏的文件中导入结构/枚举和宏是唯一的选择吗?
是否
use允许在函数中间使用 -statements?
如果是这样,我怎么参阅模块(
self?super?完整路径?)[来自评论]如何引用定义宏和类型的模块?
AFAIK,这真的不可能。唯一的希望是特殊的$crate元变量,它引用定义宏的crate。因此,您可以并且必须指定要引用的类型的整个路径,例如:
use $crate::path::to::MyType;
Run Code Online (Sandbox Code Playgroud)
请注意,此类型必须是公开的,才能在使用您的宏的其他 crate 中访问!这意味着该类型属于您的 crate 的公共接口,更改其路径被视为破坏性更改。由于很少发生重大更改,因此您不必经常更改宏定义中的路径;-)
| 归档时间: |
|
| 查看次数: |
446 次 |
| 最近记录: |