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}