parse_it_macros/lib.rs
1use parse_it_codegen::syntax::ParseIt;
2
3#[proc_macro]
4pub fn parse_it(input: proc_macro::TokenStream) -> proc_macro::TokenStream {
5 let input = syn::parse_macro_input!(input as ParseIt);
6 let middle = match input.compile() {
7 Ok(middle) => middle,
8 Err(msg) => return msg.into(),
9 };
10 match middle.expand() {
11 Ok(expanded) => expanded.into(),
12 Err(msg) => msg.into(),
13 }
14}