Open
Description
When writing generic bounds such as:
fn foo<T>(a: T) where u32: From<T>;
Into
should be preferred, like this:
fn foo<T>(a: T) where T: Into<u32>;
Why the former is bad: Into
is a superset of From
. In some cases coherence rules prevent implementing From
but do allow implementing Into
. As a result Into
is more generic bound than From
.
Category: Style, I guess?