#![feature(proc_macro_diagnostic)] use proc_macro::TokenStream; mod derive; mod template; mod util; #[proc_macro] pub fn template(input: TokenStream) -> TokenStream { template::invoke(input) } #[proc_macro_derive(NativeComponent)] pub fn native_component(input: TokenStream) -> TokenStream { derive::component::native(input) } #[proc_macro_derive(CustomComponent)] pub fn custom_component(input: TokenStream) -> TokenStream { derive::component::custom(input) }