I really like this change, however I wouldn't be happy with the implementation proposed. I would love to be able to use these functions in a generic context just like I can use
TryFrom/TryInto. I think it would be better to have a generic like
SaturatingTo<usize> rather than having to have two different methods for when it's
FloatToInt. It would help reduce a lot of boilerplate that currently is only solved by writing macros, and personally I would like to be able to move away from writing macros for writing numeric generic code and towards using traits.
I also don't think these methods should be behind sealed traits as there are plenty of numeric types in the library space such as
bignum that should also be able to implement these traits so they can feel and be used more interchangeably with the numeric types in the language.