Skip to main content

Module math

Module math 

Source
Expand description

Math utilities module.

Numeric helpers covering rounding, clamping, statistics, and more.

Examples:

use toolchest::math::{clamp, mean, median, round, in_range};
assert_eq!(clamp(15, 0, 10), 10);
assert_eq!(round(3.14159, 2), 3.14);
assert_eq!(in_range(5, 0..10), true);
assert_eq!(mean(&[1.0, 2.0, 3.0]), 2.0);
let mut vals = vec![1.0, 3.0, 2.0];
assert_eq!(median(&mut vals), 2.0);

Re-exports§

pub use numeric::approx_eq;
pub use numeric::gcd_u64;
pub use numeric::lcm_u64;
pub use numeric::signum_zero;
pub use numeric::sum_i64_saturating;
pub use rounding::ceil;
pub use rounding::clamp;
pub use rounding::floor;
pub use rounding::in_range;
pub use rounding::round;
pub use statistics::max_by;
pub use statistics::mean;
pub use statistics::median;
pub use statistics::min_by;
pub use statistics::percentile;
pub use statistics::std_dev;
pub use statistics::sum;
pub use statistics::variance;

Modules§

numeric
Numeric helper utilities
rounding
Rounding utilities with precision
statistics
Statistical utilities