4个版本
0.1.3 | 2022年4月23日 |
---|---|
0.1.2 | 2021年12月8日 |
0.1.1 | 2021年12月8日 |
0.1.0 | 2021年12月8日 |
#31 in #concat
673 每月下载量
在 11 个crate中使用了 (6 直接使用)
12KB
229 行
🚨 macropol
在宏定义中进行人性化的字符串字面量插值。
替换字符串字面量中的占位符($foo
)和任意表达式,并使用core::concat!
与周围的文本片段进行连接。
#[macropol::macropol]
macro_rules! mymacro {
($count:expr, $name:expr, fn $func:ident()) => {
/// Returns `"$$ $name, ${stringify!($count)} to beam up"`.
fn $func() -> &'static str {
"$$ $name, $&count to beam up"
}
};
}
// The above definition expands to:
//
// macro_rules! mymacro {
// ($count:expr, $name:expr, fn $func:ident()) => {
// #[doc = concat!("Returns `\"$ ", $name, ", ",
// stringify!($count), " to beam up\"`.")]
// fn func() -> &'static str {
// concat!("$ ", $name, ", ",
// stringify!($count), " to beam up")
// }
// };
// }
//
mymacro!(3, "Scotty", fn func());
assert_eq!(func(), "$ Scotty, 3 to beam up");
依赖关系
~2MB
~43K SLoC