alloy-rs / alloy-rs/ruint

`base_convert`: keep track of non-zero limbs and mul the minimum.

未关闭
#46 0 条评论 0 个 reaction 已指派 1 人 已被 @recmo 认领 在 GitHub 查看
optimize tracker
主要语言
Rust
星标
225
派生
70
平均合并
16 小时 54 分钟
30 天内合并 PR
8

描述

*On 2022-05-28 @recmo wrote in [`b0b5d54`](https://github.com/recmo/uint/commit/b0b5d5401643d19747653934e838604cd59bcd81) “Mod names”:*

keep track of non-zero limbs and mul the minimum.

```rust
for digit in digits {
if digit >= base {
return Err(BaseConvertError::InvalidDigit(digit, base));
}
// Multiply by base.
// OPT: keep track of non-zero limbs and mul the minimum.
let mut carry: u128 = u128::from(digit);
#[allow(clippy::cast_possible_truncation)]
for limb in result.limbs.iter_mut() {
carry += u128::from(*limb) * u128::from(base);
*limb = carry as u64;

```
*From [`src/base_convert.rs:93`](https://github.com/recmo/uint/blob/b0b5d5401643d19747653934e838604cd59bcd81/src/base_convert.rs#L93)*

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。