宏是否可以根据文件内容生成代码?

时间:2017-08-27 03:19:58

标签: io macros rust

我想编写一个由文件路径参数化的宏。在编译时,它会读取该文件并根据其内容发出Rust代码。这可能吗?

我找到了include_bytes!,但我不清楚如何在编译时使用其结果,而不是仅仅将内容拼接到生成的代码中。

1 个答案:

答案 0 :(得分:1)

虽然这可能是可能的,但你肯定会遇到麻烦:例如,货物将无法判断"包装"代码需要在" wrapped"之后重新编译。代码已更改,因为它不认为该文件是源树的一部分。

您应该考虑使用build script或旧的Makefile,它们是专为此目的而设计的。