3 个不稳定版本
0.3.1 | 2024年4月21日 |
---|---|
0.3.0 | 2024年4月20日 |
0.2.0 | 2024年4月20日 |
#5 in #imp
每月 91 次下载
用于 3 crates
15KB
289 行
imp_int
整数新类型不过是一堆令人沮丧的宏吗?
此crate提供了以下轻封装类型
u8 =>Imp8
;u16 =>Imp16
;u32 =>Imp32
;u64 =>Imp64
;u128 =>Imp128
;usize =>ImpSize
.
启用 bigint
功能后,它还提供了一个 ImpBigInt
类型,作为 num_bigint::BigUint
类型的包装,以提供具有 IMP 整数语义的任意精度整数。
安装
# ordinary usage
cargo add imp_int
# usage with the bigint feature enabled
cargo add imp_int --features bigint
lib.rs
:
轻封装的整数类型,用于建模 IMP 整数语义。
在一般意义上,IMP 整数只是一个无符号整数,其加法和乘法按常规定义,而减法定义为饱和到 0。然而,由于 IMP 没有定义整数溢出;它强制实现者决定它们希望有多正确。
因此,此crate中的类型在调试和发布构建中实现了 checked 加法和乘法(不包括 ImpBigInt
,它通过无界性避免了这些检查)。
依赖关系
~230KB