1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
#[min_specialization::specialization] mod test1 { #[allow(unused)] trait MyTrait { fn f(a: Self) -> Self; } impl<T> MyTrait for T { default fn f(a: T) -> T { a } } impl MyTrait for () { fn f(_: ()) -> () { () } } }