rscel_macro/lib.rs
1use proc_macro::TokenStream;
2use syn::{parse_macro_input, ItemMod};
3use types::DispatchMod;
4
5mod types;
6
7#[proc_macro_attribute]
8pub fn dispatch(_attr: TokenStream, item: TokenStream) -> TokenStream {
9 // Parse the module with functions
10 let input = parse_macro_input!(item as ItemMod);
11
12 DispatchMod::from_mod(input).into_token_stream()
13}