+ #[allow(unused_variables)]
+ for i in 0..max_field {
+ $(
+ if i == $type {
+ BigSize($type).write($stream)?;
+ let mut len_calc = LengthCalculatingWriter(0);
+ $field.write(&mut len_calc)?;
+ BigSize(len_calc.0 as u64).write($stream)?;
+ $field.write($stream)?;
+ }
+ )*
+ $(
+ if i == $optional_type {
+ if let Some(ref field) = $optional_field {
+ BigSize($optional_type).write($stream)?;
+ let mut len_calc = LengthCalculatingWriter(0);
+ field.write(&mut len_calc)?;
+ BigSize(len_calc.0 as u64).write($stream)?;
+ field.write($stream)?;
+ }
+ }
+ )*
+ }