Skip to main content

toys_macros/
lib.rs

1extern crate proc_macro;
2
3#[cfg(feature = "asynchronous-traits")]
4mod async_macro;
5
6#[cfg(feature = "event")]
7mod responsible_macro;
8
9#[cfg(feature = "asynchronous-traits")]
10#[proc_macro_attribute]
11pub fn asynchronous(
12    attr: proc_macro::TokenStream,
13    item: proc_macro::TokenStream,
14) -> proc_macro::TokenStream {
15    async_macro::asynchronous_macro(attr, item)
16}
17
18#[cfg(feature = "event")]
19#[proc_macro_attribute]
20pub fn responsible(
21    attr: proc_macro::TokenStream,
22    item: proc_macro::TokenStream,
23) -> proc_macro::TokenStream {
24    responsible_macro::responsible_macro(attr, item)
25}