Expand description
Trait for types that have the same shape as tuples, such as tuples and structs.
For example, the tuple (A, B) implements TupleStructure<Tuple2<A, B>> since it is
a 2-tuple with fields of type A and B. The struct S { a: A, b: B }
also implements TupleStructure<Tuple2<A, B>>.
We can then write generic functions over both (A, B) and S using this trait.
self.get_ref() returns immutable references to each of their fields (e.g. (&A, &B))
self.get_mut() returns mutable references to each of their fields (e.g. (&mut A, &mut B))
Self::new(..) creates a new Self from a list of its fields (e.g. Self::new((a, b)))
sourceimpl<T0: 'static, T1: 'static, T2: 'static, T3: 'static, T4: 'static> TupleStructure<Tuple5<T0, T1, T2, T3, T4>> for (T0, T1, T2, T3, T4)
sourceimpl<T0: 'static, T1: 'static, T2: 'static, T3: 'static, T4: 'static, T5: 'static> TupleStructure<Tuple6<T0, T1, T2, T3, T4, T5>> for (T0, T1, T2, T3, T4, T5)
sourceimpl<T0: 'static, T1: 'static, T2: 'static, T3: 'static, T4: 'static, T5: 'static, T6: 'static> TupleStructure<Tuple7<T0, T1, T2, T3, T4, T5, T6>> for (T0, T1, T2, T3, T4, T5, T6)
sourceimpl<T0: 'static, T1: 'static, T2: 'static, T3: 'static, T4: 'static, T5: 'static, T6: 'static, T7: 'static> TupleStructure<Tuple8<T0, T1, T2, T3, T4, T5, T6, T7>> for (T0, T1, T2, T3, T4, T5, T6, T7)
sourceimpl<T0: 'static, T1: 'static, T2: 'static, T3: 'static, T4: 'static, T5: 'static, T6: 'static, T7: 'static, T8: 'static> TupleStructure<Tuple9<T0, T1, T2, T3, T4, T5, T6, T7, T8>> for (T0, T1, T2, T3, T4, T5, T6, T7, T8)
sourceimpl<T0: 'static, T1: 'static, T2: 'static, T3: 'static, T4: 'static, T5: 'static, T6: 'static, T7: 'static, T8: 'static, T9: 'static> TupleStructure<Tuple10<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9>> for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)