@@ -184,11 +184,8 @@ macro_rules! decode_tlv {
184
184
( $reader: expr, $field: ident, ( option: $trait: ident $( , $read_arg: expr) ?) ) => { {
185
185
$field = Some ( $trait:: read( & mut $reader $( , $read_arg) * ) ?) ;
186
186
} } ;
187
- ( $reader: expr, $field: ident, ( option, encoding: ( $fieldty: ty, Iterable <$lifetime: lifetime, $itertype: ty, $valuetype: ty>) ) ) => { {
188
- $field = {
189
- let field: $crate:: util:: ser:: WithoutLength <$fieldty> = ser:: Readable :: read( & mut $reader) ?;
190
- Some ( field. 0 )
191
- } ;
187
+ ( $reader: expr, $field: ident, ( option, encoding: ( $fieldty: ty, $encoding: ident, $encoder: ty) ) ) => { {
188
+ decode_tlv!( $reader, $field, ( option, encoding: ( $fieldty, $encoding) ) ) ;
192
189
} } ;
193
190
( $reader: expr, $field: ident, ( option, encoding: ( $fieldty: ty, $encoding: ident) ) ) => { {
194
191
$field = {
@@ -555,8 +552,8 @@ macro_rules! tlv_stream {
555
552
}
556
553
557
554
macro_rules! tlv_record_type {
558
- ( ( $type: ty, Iterable <$lifetime: lifetime, $itertype: ty, $valuetype: ty>) ) => { $type } ;
559
555
( ( $type: ty, $wrapper: ident) ) => { $type } ;
556
+ ( ( $type: ty, $wrapper: ident, $encoder: ty) ) => { $type } ;
560
557
( $type: ty) => { $type } ;
561
558
}
562
559
@@ -566,10 +563,8 @@ macro_rules! tlv_record_ref_type {
566
563
( ( u16 , $wrapper: ident) ) => { u16 } ;
567
564
( ( u32 , $wrapper: ident) ) => { u32 } ;
568
565
( ( u64 , $wrapper: ident) ) => { u64 } ;
569
- ( ( $type: ty, Iterable <$lifetime: lifetime, $itertype: ty, $valuetype: ty>) ) => {
570
- Iterable <$lifetime, $itertype, $valuetype>
571
- } ;
572
566
( ( $type: ty, $wrapper: ident) ) => { & ' a $type } ;
567
+ ( ( $type: ty, $wrapper: ident, $encoder: ty) ) => { $encoder } ;
573
568
( $type: ty) => { & ' a $type } ;
574
569
}
575
570
0 commit comments