Crates.io | saturate |
lib.rs | saturate |
version | 0.1.0 |
source | src |
created_at | 2024-05-17 12:11:31.474917 |
updated_at | 2024-05-17 12:11:31.474917 |
description | Rust traits for saturating conversion between numeric types |
homepage | |
repository | https://github.com/staticintlucas/saturate |
max_upload_size | |
id | 1243074 |
size | 32,805 |
This crate provides a set of traits for saturating conversion between different numeric types.
The trait SaturatingFrom
is implemented by default for all standard numeric types.
A blanket implementation of SaturatingInto
is also provided,
mirroring the standard library's From
and Into
traits.
use saturate::{SaturatingFrom, SaturatingInto};
assert_eq!(0, u8::saturating_from(-26));
assert_eq!(u32::MAX, i64::MAX.saturating_into());
assert!(f32::saturating_from(u128::MAX).is_infinite()); // out of range => infinity
assert_eq!(u8::MAX, 300.0.saturating_into());
Licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.