pub fn clamp<T: PartialOrd>(value: T, min: T, max: T) -> T
Clamp a value between a minimum and maximum