2 unstable releases

0.2.0 Jun 13, 2022
0.1.0 Feb 19, 2022

#15 in #overflow

Download history 441/week @ 2024-04-06 467/week @ 2024-04-13 385/week @ 2024-04-20 312/week @ 2024-04-27 310/week @ 2024-05-04 387/week @ 2024-05-11 155/week @ 2024-05-18 248/week @ 2024-05-25 262/week @ 2024-06-01 253/week @ 2024-06-08 219/week @ 2024-06-15 166/week @ 2024-06-22 122/week @ 2024-06-29 231/week @ 2024-07-06 377/week @ 2024-07-13 171/week @ 2024-07-20

909 downloads per month
Used in 4 crates

MIT license

9KB
187 lines

Cast and Overflow utilities

This utility lib helps for type casting and integer operation overflow checking. The following code block shows examples:

let a: u64 = 10;
let b: i64 = a.numeric_cast();
let a = 1.overflow_add(1);

For the first example, as conversion is not perfect for slicently lossy conversion while try_from and try_into are better. However they're too verbose in most cases, so we wrap it in the cast method and make it panic while these try_xxx methods failed.

For the second example, rust std lib provides overflow checking methods such as overflowing_add. The methods provided in this lib are one step futher, panicing when any overflow happens.


lib.rs:

Traits for datenlord.

Dependencies

~22KB