17 个版本
0.5.1 | 2020年6月2日 |
---|---|
0.5.0 | 2020年6月2日 |
0.4.2 | 2019年6月15日 |
0.3.4 | 2019年5月17日 |
0.1.1 | 2019年3月30日 |
#11 in #num
每月下载 42 次
41KB
915 行代码(不含注释)
nummap
定义了一个围绕数字值的HashMap包装器,表现得像是所有键都进行了映射,但未存储的值为0。
lib.rs
:
定义了 [NumMap] 结构体,表现得像是所有未映射的键都具有值0。
let mut map = map![(1, 2), (3, 4)];
//We have set no mapping but we still get 0.
assert_eq!(map.get(&0,), 0,);
//We didn't set a mapping here either but we still get 0.
assert_eq!(map.set(0, 10,), 0,);
assert_eq!(map.get(&0,), 10,);
由于所有键都被视为已映射,因此数学运算是在值上实现的。
let map = map![(1, 2), (3, 4)] + map![(1, 4), (3, 2)];
assert_eq!(map, map![(1, 3), (3, 3)] * 2,);
作者 --- [email protected]
最后修改时间 --- 2020-01-06
依赖关系
~0–390KB