2016-12-22 03:07:45 -08:00
|
|
|
# bigint
|
|
|
|
|
2017-03-22 11:30:06 -07:00
|
|
|
[![Build Status](https://travis-ci.org/paritytech/bigint.svg?branch=master)](https://travis-ci.org/paritytech/bigint)
|
2017-03-15 06:23:05 -07:00
|
|
|
|
2017-06-21 20:23:26 -07:00
|
|
|
[API Documentation](https://docs.rs/bigint/)
|
|
|
|
|
2016-12-22 03:07:45 -08:00
|
|
|
Fixed-sized integers arithmetic
|
|
|
|
|
2017-09-22 02:02:06 -07:00
|
|
|
To specify a dependency, add to `Cargo.toml`
|
2017-09-22 02:01:31 -07:00
|
|
|
|
2017-09-22 02:02:06 -07:00
|
|
|
```toml
|
2017-09-22 02:01:31 -07:00
|
|
|
[dependencies]
|
|
|
|
bigint = "4"
|
2017-09-22 02:02:06 -07:00
|
|
|
```
|
2017-09-22 02:01:31 -07:00
|
|
|
|
|
|
|
Little example
|
|
|
|
|
2016-12-22 03:07:45 -08:00
|
|
|
```rust
|
|
|
|
extern crate bigint;
|
2017-05-21 03:00:23 -07:00
|
|
|
use bigint::U256;
|
2016-12-22 03:07:45 -08:00
|
|
|
|
|
|
|
fn main() {
|
2017-04-11 05:44:32 -07:00
|
|
|
let mut val: U256 = 1023.into();
|
|
|
|
for _ in 0..200 { val = val * 2.into() }
|
|
|
|
assert_eq!(
|
|
|
|
&format!("{}", val),
|
|
|
|
"1643897619276947051879427220465009342380213662639797070513307648"
|
|
|
|
);
|
2016-12-22 03:07:45 -08:00
|
|
|
}
|
2017-08-14 07:31:00 -07:00
|
|
|
```
|
2017-08-14 07:30:50 -07:00
|
|
|
|
|
|
|
### `no_std` crates
|
|
|
|
|
|
|
|
This crate has a feature, `std`, that is enabled by default. To use this crate
|
|
|
|
in a `no_std` context, add the following to your `Cargo.toml`:
|
|
|
|
|
|
|
|
```toml
|
|
|
|
[dependencies]
|
|
|
|
bigint = { version = "4", default-features = false }
|
|
|
|
```
|