markup_proc_macro/lib.rs
1mod ast;
2mod escape;
3mod generate;
4mod parse;
5
6#[proc_macro]
7pub fn define(tokens: proc_macro::TokenStream) -> proc_macro::TokenStream {
8 let structs = syn::parse_macro_input!(tokens as parse::Many<ast::Struct>).0;
9 quote::quote!( #(#structs)* ).into()
10}
11
12#[proc_macro]
13pub fn new(tokens: proc_macro::TokenStream) -> proc_macro::TokenStream {
14 let new = syn::parse_macro_input!(tokens as ast::Template);
15 quote::quote!( #new ).into()
16}