pub fn expand(input: &DeriveInput, trait_name: &str) -> TokenStream