2个版本
0.1.1 | 2020年8月12日 |
---|---|
0.1.0 | 2020年5月23日 |
#32 in #names
6KB
61 行
rename-rs
轻松修改结构体名称。
示例
#[rename(prepend = "One", name = "Two", append = "Three")]
struct Placeholder {
pub one: u64,
pub two: u64,
pub three: u64
}
结构体的名称现在为 OneTwoThree
。
为什么?
当使用 声明式宏 时,无法创建新的 标识符。您也可以通过使用 过程宏 来解决这个问题,但这会增加复杂性。然而,有一个名为 concat_idents 的宏,它允许您,正如您可能猜到的,连接标识符。这个宏的大问题在于,它还不稳定,并且不允许创建新的标识符。因此,我决定创建一个自己的小助手crate来解决这个问题。
上述问题的实现可以在 这里 找到。
依赖
~1.5MB
~35K SLoC