7
Kod:Czy istnieje sposób obejścia parametru nieużywanego typu?
trait Trait<T> {}
struct Struct<U>;
impl<T, U: Trait<T>> Struct<U> {}
Błąd:
error[E0207]: the type parameter `T` is not constrained by the impl trait, self type, or predicates
--> src/main.rs:5:6
|
5 | impl<T, U: Trait<T>> Struct<U> {}
| ^unconstrained type parameter
Wydaje się, że RFC 447 zabrania tego wzoru; Czy jest jakiś sposób obejścia tego? Myślę, że można to rozwiązać, zmieniając T
na skojarzony typ, ale to uniemożliwiłoby mi zrobienie multidispatch.
Wow, nie wiedziałem, że to już możliwe użycie gdzie klauzula nad metodami. Rust to naprawdę niesamowity język. –