config_parser_derive/lib.rs
1use proc_macro::TokenStream;
2use syn::{parse_macro_input, DeriveInput};
3
4mod parser;
5use parser::expand_config_parsers;
6
7#[proc_macro_derive(ConfigParse)]
8pub fn parsers(input: TokenStream) -> TokenStream {
9 let input = parse_macro_input!(input as DeriveInput);
10 expand_config_parsers(input)
11 .unwrap_or_else(syn::Error::into_compile_error)
12 .into()
13}