gpui2_macros.rs

 1mod action;
 2mod derive_component;
 3mod derive_render_once;
 4mod register_action;
 5mod style_helpers;
 6mod test;
 7
 8use proc_macro::TokenStream;
 9
10#[proc_macro_derive(Action)]
11pub fn action(input: TokenStream) -> TokenStream {
12    action::action(input)
13}
14
15#[proc_macro_attribute]
16pub fn register_action(attr: TokenStream, item: TokenStream) -> TokenStream {
17    register_action::register_action_macro(attr, item)
18}
19
20#[proc_macro_derive(Component, attributes(component))]
21pub fn derive_component(input: TokenStream) -> TokenStream {
22    derive_component::derive_component(input)
23}
24
25#[proc_macro_derive(RenderOnce, attributes(view))]
26pub fn derive_render_once(input: TokenStream) -> TokenStream {
27    derive_render_once::derive_render_once(input)
28}
29
30#[proc_macro]
31pub fn style_helpers(input: TokenStream) -> TokenStream {
32    style_helpers::style_helpers(input)
33}
34
35#[proc_macro_attribute]
36pub fn test(args: TokenStream, function: TokenStream) -> TokenStream {
37    test::test(args, function)
38}