pub fn limit_range<T>(x: T, low: T, high: T) -> T where
    T: LimitRange