From 7bd18b4b22f3a6bf86b131329345f9a75d8f699c Mon Sep 17 00:00:00 2001 From: Malfurious Date: Sat, 28 Aug 2021 09:45:57 -0400 Subject: Commit Rust POC This replaces the Python script. Since all MIT-licensed code is removed, the LICENSE file is as well. 'cargo run' to run the program. Signed-off-by: Malfurious --- src/iter.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 src/iter.rs (limited to 'src/iter.rs') diff --git a/src/iter.rs b/src/iter.rs new file mode 100644 index 0000000..f8aa6cb --- /dev/null +++ b/src/iter.rs @@ -0,0 +1,10 @@ +use num::BigInt; + +pub fn next(v: &BigInt) -> BigInt +{ + /*let t: BigUint = v | (v - 1); + (t + 1) | (((!t & -!t) - 1) >> (v.trailing_zeros() + 1))*/ + + let t: BigInt = (v | (v - 1u32)) + 1u32; + &t | ((((&t & -&t) / (v & -v)) >> 1) - 1u32) +} -- cgit v1.2.3