在C中,如果你愿意,你可以:
#define do {
#define end }
// ...
if (foo == bar) do
foo += 5;
bar /= foo;
end
有没有办法在Rust中做这样的事情?
答案 0 :(得分:8)
不(谢天谢地)。 Rust宏必须始终扩展为完整的AST节点。
如果您需要文字替换,请使用适合该作业的工具,例如sed
,awk
,m4
,C预处理器等。很可能是由构建脚本驱动的。
答案 1 :(得分:4)