#spell #aliases #named #macro #drop #less #snippets

code-spells

将一些常用(以及不太常用)的代码片段别名为以哈利波特中适当主题的咒语命名的宏,因此您不再需要调用drop(x),而是可以施展obliviate!(x)

4 个版本

0.2.2 2023年4月26日
0.2.1 2023年3月30日
0.2.0 2023年3月30日
0.1.0 2023年3月29日

#1699 in Rust 模式

MIT 许可证

17KB
245

code-spells

你认为 Rust 宏有点像魔法吗?我也是!
这个crate将一些常用(以及一些不太常用)的代码片段别名为以哈利波特中适当主题的咒语命名的宏。
例如,现在可以使用obliviate!施展Pin::new(),如果您想防止有害的食死徒,这个crate允许您施展expecto_patronum!(expr, ""message"")而不是调用expr.expect(""message"")

let v1 = vec![erecto!(i32); 5];
let mut v2 = geminio!(&v1);
obliviate!(v1);
accio!(expecto_patronum!(v2.get_mut(0), "Dementors B-gone!")) = 5;

还别名为unsafe的宏unforgivable!,因为还有什么比未定义的行为更不可饶恕的呢?

相关crates

expecto-patronum


lib.rs:

你认为 Rust 宏有点像魔法吗?我也是!

使用这个crate,您可以在源代码中实现您的巫师梦想。它将一些常用(以及一些不太常用)的代码片段别名为以哈利波特中适当主题的咒语命名的宏。

这使得您可以使用geminio!(item)而不是强制您调用item.clone)

let v1 = vec![erecto!(i32); 5];
let mut v2 = geminio!(&v1);
obliviate!(v1);
accio!(expecto_patronum!(v2.get_mut(0), "Dementors B-gone!")) = 5;

还别名为unsafe的宏unforgivable!,因为还有什么比未定义的行为更不可饶恕的呢?

无运行时依赖