(
source_fields: &[SourceField<'_>],
field_idents: &[Ident],
)
| 61 | } |
| 62 | |
| 63 | fn gen_write_variant_fields( |
| 64 | source_fields: &[SourceField<'_>], |
| 65 | field_idents: &[Ident], |
| 66 | ) -> Vec<TokenStream> { |
| 67 | match build_bindings(source_fields) { |
| 68 | Ok(bindings) => bindings |
| 69 | .iter() |
| 70 | .zip(field_idents.iter()) |
| 71 | .filter_map(|(binding, ident)| match binding { |
| 72 | FieldBinding::Codec(binding) => Some(binding.write_value_field(quote! { #ident })), |
| 73 | FieldBinding::Skipped(_) => None, |
| 74 | }) |
| 75 | .collect(), |
| 76 | Err(err) => vec![err.to_compile_error()], |
| 77 | } |
| 78 | } |
| 79 | |
| 80 | fn gen_write_variant_elements( |
| 81 | source_fields: &[SourceField<'_>], |
no test coverage detected