use proc_macro2::{Ident, TokenStream};
use syn::Generics;
pub(crate) trait RecordItemCodegen {
fn from_ast(ast: &syn::DeriveInput) -> Self;
fn gen_item_type(
&self,
item_name: &Ident,
generics: &Generics,
has_backend: bool,
) -> TokenStream;
fn gen_into_item(&self, item_name: &Ident) -> TokenStream;
fn gen_from_item(&self) -> TokenStream;
}