hpl_toolkit_macro_merkle_tree_apply_fn/
lib.rs

1
2
3
4
5
6
7
8
9
10
11
12
extern crate proc_macro;
mod renderer;

#[proc_macro]
pub fn merkle_tree_apply_fn(input: proc_macro::TokenStream) -> proc_macro::TokenStream {
    if input.is_empty() {
        panic!("`merkle_tree_apply_fn!()` macro takes arguments");
    }
    let arg: proc_macro2::TokenStream = input.into();

    renderer::MerkleTreeFuncApply::new(arg).render()
}