Skip to content

Commit

Permalink
Implement BitAssign and Shl/Shr ops (#7)
Browse files Browse the repository at this point in the history
* Tiny multiply optimization to eliminate extra rounds

* Implement in-place Shl/Shr and Assign

* Implement BitAssign ops, stub Shl/Shr variants

* Implement and test Shl/Shr
  • Loading branch information
kaidokert authored Apr 13, 2021
1 parent e664fa8 commit 037ff0b
Show file tree
Hide file tree
Showing 7 changed files with 433 additions and 105 deletions.
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "fixed-bigint"
version = "0.1.3"
version = "0.1.4"
authors = ["kaidokert <[email protected]>"]
documentation = "https://docs.rs/fixed-bigint"
edition = "2018"
Expand Down
2 changes: 0 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,6 @@ The crate is written for `no_std` and `no_alloc` environments with option for pa
The arithmetic operands ( +, -, .add() ) panic on overflow, just like native integer types. Panic-free alternatives like `overlowing_add` and `wrapping_add` are supported.

_TODO list_:
* Implement WrappingShl/Shr, CheckedShl/Shr, ShlAssign, ShrAssign
* Implement BitOrAssign, BitAndAssign, BitXorAssign
* Implement experimental `unchecked_math` operands, unchecked_mul, unchecked_div etc.
* Probably needs its own error structs instead of reusing core::fmt::Error and core::num::ParseIntError
* Decimal string to/from conversion, currently only binary and hex strings are supported.
Expand Down
Loading

0 comments on commit 037ff0b

Please sign in to comment.