hebi_derive/
lib.rs

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}