OA
Т.е. хочется чего-то такого:
struct Generic<A, B>(...);
impl<T: Generic<...>> X<T> {
fn x(_: T::A, _: T::B) {}
}Size: a a a
В
struct Generic<A, B>(...);
impl<T: Generic<...>> X<T> {
fn x(_: T::A, _: T::B) {}
}В
impl<A, B> X<Generic<A, B>> {
fn x(_: A, _: B) {}
}В
r
struct Generic<A, B>(...);
impl<T: Generic<...>> X<T> {
fn x(_: T::A, _: T::B) {}
}T: StructType ?p
p
T: StructType ?В
T: StructType ?<A, B, C, ...> StructType<A, B, C, ...>. Т.е. для любой структуры StructType...В
r
В
impl<A, B, C, D, E, F, G, A1, B1, C1, D1, E1, F1, G1> Trait<Struct<A1, B1, C1, D1, E1, F1, G1>> for Struct<A, B, C, D, E, F, G> {}а
а
struct Generic<A, B>(...);
impl<T: Generic<...>> X<T> {
fn x(_: T::A, _: T::B) {}
}r
В
а
OA
а
В
OA