3

我正在尝试创建一个proc-macro来派生和实现结构的特征,并且我需要结构中的所有字段都实现Display

我该如何检查?

此外,我如何检查一个属性是否也实现Iterator了?(如果迭代器的项目也实现了显示,我想处理)。

我正在使用synquote板条箱。我设法解析了我的struct并生成了实现。但是对于像这样的类型VecOption我想检查它们Iterator是否正确实现和处理它。

syn::Field结构具有ty我认为应该是一个起点的属性,但是查看文档我无法猜测任何方法来检查这种类型是否实现了某个特征。

4

1 回答 1

1

向生成的代码添加特征边界和/或静态断言。宏在类型信息可用之前运行,因为它们会影响类型信息。

于 2022-01-27T18:51:24.033 回答