parse_int

crates.io CI pipeline

Parse &str with common prefixes to integer values:

```rust use parse_int::parse;

let d = parse::("42")?; assert_eq!(42, d);

let d = parse::("0x42")?; assert_eq!(66, d);

// you can use underscores for more readable inputs let d = parse::("0x42424242")?; asserteq!(1111638594, d);

let d = parse::("0o42")?; assert_eq!(34, d);

[cfg(feature = "implicit-octal")]

{ let d = parse::("042")?; assert_eq!(34, d); }

let d = parse::("0b0110")?; assert_eq!(6, d); ```

Documentation.

Enable the "implicit-octal" feature

Specify the crate like this:

yaml [dependencies] parse_int = { version = "0.5", features = ["implicit-octal"] }

Then this code will return Hello, Ok(34)!:

rust use parse_int::parse; fn main() { println!("Hello, {:?}!", parse::<i128>("00042")); }

License

This work is distributed under the super-Rust quad-license:

[Apache-2.0]/[MIT]/[BSL-1.0]/[CC0-1.0]

This is equivalent to public domain in jurisdictions that allow it (CC0-1.0). Otherwise it is compatible with the Rust license, plus the option of the runtime-exception-containing BSL-1. This means that, outside of public domain jurisdictions, the source must be distributed along with author attribution and at least one of the licenses; but in binary form no attribution or license distribution is required.