10 个版本 (3 个稳定版)
| 1.1.0 | 2020年12月13日 |
|---|---|
| 0.7.0 | 2020年4月5日 |
| 0.6.0 | 2020年3月29日 |
#1705 在 数据结构 中
67KB
1.5K SLoC
Smallbigint
两种类型,Uint 和 Int,类似于 smallvec 用于大整数。任何适合 32 位的都保持在栈上。不适合的数字存储在 Box<num_bigint::BigUint> / Box<num_bigint::BigInt>。
在 64 位架构上,默认情况下,我们使用 unsafe 将类型压缩到 8 字节,利用指针对齐。这种行为由默认启用的 unsafe-opt 功能触发。
实现的特性
已实现最重要的数值特性。以下是一些尚未实现的特性;欢迎提交拉取请求!
- 位操作
num_traits::Num,num_traits::Signed,num_traits::Unsigned,num_integer::Integer,num_integer::Roots,std::iter::Product,std::iter::Sum,num_traits::pow::Pow- 直接在
BigInt和BigUint上实现的其他方法 - 实现
num_bigint::{ToBigInt, ToBigUint}
许可证
本项目采用以下任一许可证:
- Apache 许可证 2.0 版,(LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 许可证 (LICENSE-MIT 或 https://open-source.org.cn/licenses/MIT)
由您选择。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义,您有意提交供本项目包含的任何贡献,应以上述双重许可方式,不附加任何额外条款或条件。
依赖项
~550KB
~12K SLoC