dioxus_table_macro/
lib.rs

1mod table;
2
3use darling::FromDeriveInput;
4use proc_macro::TokenStream;
5use quote::quote;
6use syn::parse_macro_input;
7
8#[proc_macro_derive(TableData, attributes(table))]
9pub fn derive(input: TokenStream) -> TokenStream {
10    let input = parse_macro_input!(input as syn::DeriveInput);
11
12    let ast = &input;
13    let table_data = table::TableDataDeriveInput::from_derive_input(&ast).expect("Wrong options");
14    let data = quote!(#table_data);
15    data.into()
16}