pub fn truncating_cast<X, Y>(x: X) -> Y where
    Y: TruncatingCastFrom<X>,