Skip to main content

clamp_or_default

Function clamp_or_default 

Source
pub fn clamp_or_default(value: f32, min: f32, max: f32, default: f32) -> f32
Expand description

Clamps a value to a range, replacing NaN/Infinity with a default.

§Arguments

  • value - Value to clamp
  • min - Minimum allowed value
  • max - Maximum allowed value
  • default - Default value to use if value is NaN/Infinity

§Returns

Clamped value in range [min, max].

§Example

use aether_core::param::validation::clamp_or_default;

assert_eq!(clamp_or_default(0.5, 0.0, 1.0, 0.5), 0.5);
assert_eq!(clamp_or_default(1.5, 0.0, 1.0, 0.5), 1.0);
assert_eq!(clamp_or_default(-0.5, 0.0, 1.0, 0.5), 0.0);
assert_eq!(clamp_or_default(f32::NAN, 0.0, 1.0, 0.5), 0.5);
assert_eq!(clamp_or_default(f32::INFINITY, 0.0, 1.0, 0.5), 0.5);