macro_rules! streamable_struct {
    ( $name:ident { $( $field:ident: $t:ty ),+ $(,)? } ) => { ... };
    ( $name:ident {} ) => { ... };
    ( $name:ident ) => { ... };
    ( impl $name:ident $( { $( $field:ident: $t:ty ),* $(,)? } )? ) => { ... };
}