macro_rules! impl_fields {
    ($on: expr, $kind: ty =>
    [$($first_field_doc: expr),*], $head_field: ident, $head_actual: ty $(, [$($field_doc: expr),*], $field: ident, $actual: ty)*) => { ... };
    ($on: expr, $kind: ty =>) => { ... };
}