Нет.Система типов Rust в настоящее время не поддерживает какие-либо функции, относящиеся к типам с более высоким родом.Однако он поддерживает конструкцию, аналогичную описанной вами, но ограниченную параметрами времени жизни.Например:
trait B<'a> {}
trait A: for<'a> B<'a> {}
struct D;
impl A for D { }
Это ошибка:
error[E0277]: the trait bound `for<'a> D: B<'a>` is not satisfied
--> src/lib.rs:7:6
|
7 | impl A for D { }
| ^ the trait `for<'a> B<'a>` is not implemented for `D`
Пока вы не добавите общую реализацию:
impl<'a> B<'a> for D { }
Не исключено, что Rustв конечном итоге добавит аналогичную функциональность и для типов, но я не ожидаю этого в ближайшее время.