use proc_macro::Span;
use syn::{Data, DataStruct, Error, Fields, FieldsNamed};
pub fn get_named_struct_fields(data: &syn::Data) -> syn::Result<&FieldsNamed> {
match data {
Data::Struct(DataStruct {
fields: Fields::Named(fields),
..
}) => Ok(fields),
_ => Err(Error::new(
Span::call_site().into(),
"Only structs with named fields are supported",
)),
}
}