pub trait Type: NumCast + FromPrimitive + Zero + Clone + Copy + Send + Sync + PartialEq + PartialOrd + Add<Output = Self> + Sub<Output = Self> + Mul<Output = Self> + Div<Output = Self> + Rem<Output = Self> {
fn min_f() -> f64;
fn max_f() -> f64;
fn min() -> Self { ... }
fn max() -> Self { ... }
fn is_float() -> bool { ... }
fn is_signed() -> bool { ... }
fn normalize(f: f64) -> f64 { ... }
fn denormalize(f: f64) -> f64 { ... }
fn to_float(x: &Self) -> f64 { ... }
fn from_float(x: f64) -> Self { ... }
fn clamp(f: f64) -> f64 { ... }
fn convert<X: Type>(&self) -> X { ... }
}