1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
// Opaque type. #![feature(type_alias_impl_trait)] pub type Adder<F, T> where T: Clone, F: Copy, = Fn(T) -> T; pub type Adderrr<T> = Fn(T) -> T; impl Foo for Bar { type E = impl Trait; }