Add support for deriving items with generics
Dependencies
- [2]
K3G4HK2JTrack Fluent files using `include!` - [3]
XGRU7WZEAdd `expand` feature for proc-macro debugging - [4]
3NMKD6I5Refactor `Localize` trait to use `std::io::Write` - [5]
OWXLFLRMMerge `cli_macros` shim into `fluent_embed` - [6]
CESJ4CTOMove macro-specific code into `macro_impl` module - [7]
7M4UI3TWUpdate dependencies to latest versions - [*]
O77KA6C4Create `fluent_embed` crate
Change contents
- edit in fluent_embed_derive/src/macro_impl/mod.rs at line 5
use syn::parse_quote; - edit in fluent_embed_derive/src/macro_impl/mod.rs at line 63
// Get the generics for the derived itemlet (impl_generics, type_generics, where_clause) = derive_input.generics.split_for_impl();// Combine all of the derived item's generic parameters along with `std::io::Write` for `Localize`// e.g. for MyStruct<'a, T>, it will be <'a, T, W: std::io::Write>let localize_impl_generics =derive_input.generics.params.clone().into_iter().chain(std::iter::once(syn::GenericParam::Type(parse_quote!(W: std::io::Write),))); - replacement in fluent_embed_derive/src/macro_impl/mod.rs at line 78
impl #ident {impl #impl_generics #ident #type_generics #where_clause { - replacement in fluent_embed_derive/src/macro_impl/mod.rs at line 85
impl<W: ::std::io::Write> ::fluent_embed::Localize<W> for #ident {impl <#(#localize_impl_generics),*> ::fluent_embed::Localize<W> for #ident #type_generics #where_clause { - replacement in fluent_embed_derive/src/lib.rs at line 22
#original_item#derive_input