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