1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
extern crate proc_macro; use proc_macro::TokenStream; use syn::{parse_macro_input, DeriveInput}; mod desse; mod desse_sized; mod expr; #[proc_macro_derive(DesseSized)] pub fn desse_sized_macro_derive(input: TokenStream) -> TokenStream { let input = parse_macro_input!(input as DeriveInput); desse_sized::get_desse_sized_impl(input).into() } #[proc_macro_derive(Desse)] pub fn desse_macro_derive(input: TokenStream) -> TokenStream { let input = parse_macro_input!(input as DeriveInput); desse::get_desse_impl(input).into() }