blob: 825094bd00993edd6c71201169ed482a25688290 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
mod enum_impl;
mod field;
mod struct_impl;
mod visibility;
pub fn derive(input: proc_macro2::TokenStream) -> proc_macro2::TokenStream
{
let input = syn::parse2::<syn::Item>(input).unwrap();
match input {
syn::Item::Struct(input) => struct_impl::generate(input),
syn::Item::Enum(input) => enum_impl::generate(input),
_ => panic!("Invalid input"),
}
}
|