pub trait NumCast: TryFrom<i128> + Into<i128> + TryFrom<u128> { }
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".