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}