【发布时间】:2018-07-14 18:12:12
【问题描述】:
在 C 中,如果你愿意,你可以:
#define do {
#define end }
// ...
if (foo == bar) do
foo += 5;
bar /= foo;
end
有没有办法在 Rust 中做这样的事情?
【问题讨论】:
标签: macros rust preprocessor
在 C 中,如果你愿意,你可以:
#define do {
#define end }
// ...
if (foo == bar) do
foo += 5;
bar /= foo;
end
有没有办法在 Rust 中做这样的事情?
【问题讨论】:
标签: macros rust preprocessor
没有(谢天谢地)。 Rust 宏必须始终扩展为完整的 AST 节点。
如果您需要文本替换,请使用适合该工作的工具,例如 sed、awk、m4、C 预处理器等。这可能由构建脚本。
【讨论】:
【讨论】: