| Crates.io | ethers-uint-rs |
| lib.rs | ethers-uint-rs |
| version | 0.9.5 |
| created_at | 2023-01-28 10:47:28.874205+00 |
| updated_at | 2023-01-28 10:47:28.874205+00 |
| description | Large fixed-size integer arithmetic |
| homepage | http://parity.io |
| repository | https://github.com/paritytech/parity-common |
| max_upload_size | |
| id | 770290 |
| size | 133,040 |
Provides facilities to construct big unsigned integer types which use no allocations (stack-based, fixed bit length).
If you want to use a predefined U128, U256 or U512 type, take a look at the primitive-types or ethereum-types crate.
The focus on the provided big unsigned integer types is performance and cross-platform availability. Support a very similar API as the built-in primitive integer types.
In your Cargo.toml paste
uint = "0.8"
Import the macro
use uint::construct_uint;
If you're using pre-edition Rust in your main file
#[macro_use]
extern crate uint;
Construct your own big unsigned integer type as follows.
// U1024 with 1024 bits consisting of 16 x 64-bit words
construct_uint! {
pub struct U1024(16);
}
cargo test --release
cargo test --release --features=quickcheck
cargo bench
see fuzz README.md
std: Use Rust's standard library.
byteorder/std, rustc-hex/stdquickcheck: Enable quickcheck-style property testing
cargo test --release --features=quickcheck.arbitrary: Allow for creation of an uint object from random unstructured input for use with fuzzers that use the arbitrary crate.