gpt4 book ai didi

rust - 如何让cargo-expand在宏内扩展宏

转载 作者:行者123 更新时间:2023-12-03 07:51:30 41 4
gpt4 key购买 nike

我正在学习 Rust,并尝试在默认的 Hello, World 程序上使用 Cargo-expand。据我了解,它应该扩展所有宏,但是当我使用它时,它会留下另一个宏生成的宏。

#![feature(prelude_import)]
#[prelude_import]
use std::prelude::rust_2021::*;
#[macro_use]
extern crate std;
fn main() {
{
::std::io::_print(format_args!("Hello, World\n"));
};
}

根据我的理解,cargo Expand 的输出应该扩展所有内容,所以我有点困惑。我尝试谷歌搜索并寻找答案,但我读到的所有内容都显示输出中没有宏。

这对不对?

最佳答案

如果您指的是format_args!,我将引用 this issue 中的 dtolnay(cargo-expand 维护者)。 :

This is working correctly. format_args does not expand to Rust code. (In the past it used to.)

Cargo-expand 确实递归地扩展宏。只是在这种情况下不能。

关于rust - 如何让cargo-expand在宏内扩展宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76971977/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com