wasm_bus_macros/
lib.rs

1#![allow(
2    clippy::default_trait_access,
3    clippy::doc_markdown,
4    clippy::if_not_else,
5    clippy::items_after_statements,
6    clippy::module_name_repetitions,
7    clippy::shadow_unrelated,
8    clippy::similar_names,
9    clippy::too_many_lines
10)]
11
12extern crate proc_macro;
13
14mod args;
15mod convert;
16mod method_inputs;
17mod method_output;
18mod parse;
19mod receiver;
20mod return_trait;
21
22use crate::args::Args;
23use crate::convert::convert;
24use crate::parse::Item;
25use proc_macro::TokenStream;
26use syn::parse_macro_input;
27
28#[proc_macro_attribute]
29pub fn wasm_bus(args: TokenStream, input: TokenStream) -> TokenStream {
30    let args = parse_macro_input!(args as Args);
31    let item = parse_macro_input!(input as Item);
32    convert(args, item)
33}