1use proc_macro::TokenStream;
2
3mod builtin;
4mod class;
5mod delegate;
6mod function;
7mod util;
8
9#[doc(hidden)]
10#[proc_macro_attribute]
11pub fn delegate_to_handle(args: TokenStream, input: TokenStream) -> TokenStream {
12 delegate::macro_impl(args, input)
13}
14
15#[proc_macro_attribute]
16pub fn function(args: TokenStream, input: TokenStream) -> TokenStream {
17 function::macro_impl(args, input)
18}
19
20#[proc_macro_attribute]
21pub fn class(args: TokenStream, input: TokenStream) -> TokenStream {
22 class::class_macro_impl(args, input)
23}
24
25#[proc_macro_attribute]
26pub fn methods(args: TokenStream, input: TokenStream) -> TokenStream {
27 class::methods_macro_impl(args, input)
28}
29
30#[doc(hidden)]
31#[proc_macro_attribute]
32pub fn builtin(args: TokenStream, input: TokenStream) -> TokenStream {
33 builtin::macro_impl(args, input)
34}