1 个不稳定版本
0.1.0 | 2019 年 10 月 17 日 |
---|
#5 in #equivalents
68 每月下载量
用于 rand_krull
7KB
95 行
此包提供了一个过程宏,该宏将算术运算符 +,-,*
重写为其包装等价物 wrapping_add, wrapping_sub, wrapping_mul
以及它们的赋值版本 +=,-=,*=
。
以下函数示例
#[wrappit]
fn mix(a: u32, b: u32, c: [u32; 8]) -> u32 {
let mut r = a + b;
for u in c {
r *= u;
}
r
}
被重写为
fn mix(a: u32, b: u32, c: [u32; 8]) -> u32 {
let mut r = a.wrapping_add(b);
for u in c {
r = r.wrapping_mul(u);
}
r
}
依赖项
~1.5MB
~35K SLoC