1 2 3 4 5 6 7 8 9 10 11 12 13 14
extern crate proc_macro; #[macro_use] extern crate quote; #[macro_use] extern crate syn; mod parameterised; #[proc_macro_derive(Parameterised, attributes(weights))] pub fn derive_parameterised(tokens: proc_macro::TokenStream) -> proc_macro::TokenStream { let ast = syn::parse2(tokens.into()).unwrap(); parameterised::expand_derive_parameterised(&ast).into() }