@@ -98,37 +98,39 @@ where
9898}
9999
100100macro_rules! impl_bit_unpack_as_for_tuple {
101- ( $( $n : tt : $t : ident as $a : ident) ,+ ) => {
102- impl <' de, $( $t , $a ) ,+ > BitUnpackAs <' de, ( $( $t , ) + ) > for ( $( $a , ) + )
101+ ( $( $ts : ident as $as : ident: $ns : tt ) , * ) => {
102+ impl <' de, $( $ts , $as ) , * > BitUnpackAs <' de, ( $( $ts , ) * ) > for ( $( $as , ) * )
103103 where $(
104- $a : BitUnpackAs <' de, $t >,
105- ) +
104+ $as : BitUnpackAs <' de, $ts >,
105+ ) *
106106 {
107- type Args = ( $( $a :: Args , ) + ) ;
107+ type Args = ( $( $as :: Args , ) * ) ;
108108
109109 #[ inline]
110- fn unpack_as<R >( reader: & mut R , args: Self :: Args ) -> Result <( $( $t, ) +) , R :: Error >
110+ #[ allow( unused_variables) ]
111+ fn unpack_as<R >( reader: & mut R , args: Self :: Args ) -> Result <( $( $ts, ) * ) , R :: Error >
111112 where
112113 R : BitReader <' de> + ?Sized ,
113114 {
114115 Ok ( ( $(
115- $a :: unpack_as( reader, args. $n )
116- . context( concat!( "." , stringify!( $n ) ) ) ?,
117- ) + ) )
116+ $as :: unpack_as( reader, args. $ns )
117+ . context( concat!( "." , stringify!( $ns ) ) ) ?,
118+ ) * ) )
118119 }
119120 }
120121 } ;
121122}
122- impl_bit_unpack_as_for_tuple ! ( 0 : T0 as As0 ) ;
123- impl_bit_unpack_as_for_tuple ! ( 0 : T0 as As0 , 1 : T1 as As1 ) ;
124- impl_bit_unpack_as_for_tuple ! ( 0 : T0 as As0 , 1 : T1 as As1 , 2 : T2 as As2 ) ;
125- impl_bit_unpack_as_for_tuple ! ( 0 : T0 as As0 , 1 : T1 as As1 , 2 : T2 as As2 , 3 : T3 as As3 ) ;
126- impl_bit_unpack_as_for_tuple ! ( 0 : T0 as As0 , 1 : T1 as As1 , 2 : T2 as As2 , 3 : T3 as As3 , 4 : T4 as As4 ) ;
127- impl_bit_unpack_as_for_tuple ! ( 0 : T0 as As0 , 1 : T1 as As1 , 2 : T2 as As2 , 3 : T3 as As3 , 4 : T4 as As4 , 5 : T5 as As5 ) ;
128- impl_bit_unpack_as_for_tuple ! ( 0 : T0 as As0 , 1 : T1 as As1 , 2 : T2 as As2 , 3 : T3 as As3 , 4 : T4 as As4 , 5 : T5 as As5 , 6 : T6 as As6 ) ;
129- impl_bit_unpack_as_for_tuple ! ( 0 : T0 as As0 , 1 : T1 as As1 , 2 : T2 as As2 , 3 : T3 as As3 , 4 : T4 as As4 , 5 : T5 as As5 , 6 : T6 as As6 , 7 : T7 as As7 ) ;
130- impl_bit_unpack_as_for_tuple ! ( 0 : T0 as As0 , 1 : T1 as As1 , 2 : T2 as As2 , 3 : T3 as As3 , 4 : T4 as As4 , 5 : T5 as As5 , 6 : T6 as As6 , 7 : T7 as As7 , 8 : T8 as As8 ) ;
131- impl_bit_unpack_as_for_tuple ! ( 0 : T0 as As0 , 1 : T1 as As1 , 2 : T2 as As2 , 3 : T3 as As3 , 4 : T4 as As4 , 5 : T5 as As5 , 6 : T6 as As6 , 7 : T7 as As7 , 8 : T8 as As8 , 9 : T9 as As9 ) ;
123+ impl_bit_unpack_as_for_tuple ! ( ) ;
124+ impl_bit_unpack_as_for_tuple ! ( T0 as As0 : 0 ) ;
125+ impl_bit_unpack_as_for_tuple ! ( T0 as As0 : 0 , T1 as As1 : 1 ) ;
126+ impl_bit_unpack_as_for_tuple ! ( T0 as As0 : 0 , T1 as As1 : 1 , T2 as As2 : 2 ) ;
127+ impl_bit_unpack_as_for_tuple ! ( T0 as As0 : 0 , T1 as As1 : 1 , T2 as As2 : 2 , T3 as As3 : 3 ) ;
128+ impl_bit_unpack_as_for_tuple ! ( T0 as As0 : 0 , T1 as As1 : 1 , T2 as As2 : 2 , T3 as As3 : 3 , T4 as As4 : 4 ) ;
129+ impl_bit_unpack_as_for_tuple ! ( T0 as As0 : 0 , T1 as As1 : 1 , T2 as As2 : 2 , T3 as As3 : 3 , T4 as As4 : 4 , T5 as As5 : 5 ) ;
130+ impl_bit_unpack_as_for_tuple ! ( T0 as As0 : 0 , T1 as As1 : 1 , T2 as As2 : 2 , T3 as As3 : 3 , T4 as As4 : 4 , T5 as As5 : 5 , T6 as As6 : 6 ) ;
131+ impl_bit_unpack_as_for_tuple ! ( T0 as As0 : 0 , T1 as As1 : 1 , T2 as As2 : 2 , T3 as As3 : 3 , T4 as As4 : 4 , T5 as As5 : 5 , T6 as As6 : 6 , T7 as As7 : 7 ) ;
132+ impl_bit_unpack_as_for_tuple ! ( T0 as As0 : 0 , T1 as As1 : 1 , T2 as As2 : 2 , T3 as As3 : 3 , T4 as As4 : 4 , T5 as As5 : 5 , T6 as As6 : 6 , T7 as As7 : 7 , T8 as As8 : 8 ) ;
133+ impl_bit_unpack_as_for_tuple ! ( T0 as As0 : 0 , T1 as As1 : 1 , T2 as As2 : 2 , T3 as As3 : 3 , T4 as As4 : 4 , T5 as As5 : 5 , T6 as As6 : 6 , T7 as As7 : 7 , T8 as As8 : 8 , T9 as As9 : 9 ) ;
132134
133135impl < ' de , T , As > BitUnpackAs < ' de , Box < T > > for Box < As >
134136where
0 commit comments