| Crates.io | round-to |
| lib.rs | round-to |
| version | 0.1.5 |
| created_at | 2023-10-07 17:38:10.550647+00 |
| updated_at | 2024-10-06 06:56:27.751212+00 |
| description | Round floating point to integer. |
| homepage | |
| repository | https://github.com/lubomirkurcak/round-to/ |
| max_upload_size | |
| id | 996496 |
| size | 31,084 |
Round floating point to integer.
You can round to i32 and i64 explicitly:
use round_to::*;
assert_eq!(0.4.round_to_i32(), 0);
assert_eq!(0.6.round_to_i64(), 1);
or implicitly to i8, i16, i32, i64, i128, isize, u8, u16, u32, u64, u128, or usize:
use round_to::*;
let a: i8 = 0.4.round_to();
assert_eq!(a, 0);
using these modes:
use round_to::*;
assert_eq!(0.5.round_to_i32(), 0);
assert_eq!(0.5.floor_to_i32(), 0);
assert_eq!(0.5.ceil_to_i32(), 1);
Rounding is implemented using round_ties_even. Floor and ceil use floor and ceil. Values are then converted to target integer type using as.
Dual-licensed to be compatible with the Rust project.
Licensed under the Apache License, Version 2.0 https://www.apache.org/licenses/LICENSE-2.0 or the MIT license https://opensource.org/licenses/MIT, at your option.