1mod component_macro;
12mod computed_macro;
13mod debounce_macro;
14mod effect_macro;
15mod island_macro;
16mod js_macro;
17mod layout_macro;
18mod load_macro;
19mod middleware_macro;
20mod rs2js;
21mod server_macro;
22mod submit_macro;
23mod view_macro;
24
25use proc_macro::TokenStream;
26
27#[proc_macro]
29pub fn view(input: TokenStream) -> TokenStream {
30 view_macro::expand(input.into()).into()
31}
32
33#[proc_macro_attribute]
35pub fn component(args: TokenStream, input: TokenStream) -> TokenStream {
36 component_macro::expand(args.into(), input.into()).into()
37}
38
39#[proc_macro_attribute]
41pub fn server(args: TokenStream, input: TokenStream) -> TokenStream {
42 server_macro::expand(args.into(), input.into()).into()
43}
44
45#[proc_macro_attribute]
47pub fn island(args: TokenStream, input: TokenStream) -> TokenStream {
48 island_macro::expand(args.into(), input.into()).into()
49}
50
51#[proc_macro_attribute]
53pub fn load(args: TokenStream, input: TokenStream) -> TokenStream {
54 load_macro::expand(args.into(), input.into()).into()
55}
56
57#[proc_macro_attribute]
59pub fn submit(args: TokenStream, input: TokenStream) -> TokenStream {
60 submit_macro::expand(args.into(), input.into()).into()
61}
62
63#[proc_macro_attribute]
65pub fn layout(args: TokenStream, input: TokenStream) -> TokenStream {
66 layout_macro::expand(args.into(), input.into()).into()
67}
68
69#[proc_macro_attribute]
71pub fn middleware(args: TokenStream, input: TokenStream) -> TokenStream {
72 middleware_macro::expand(args.into(), input.into()).into()
73}
74
75#[proc_macro]
77pub fn js(input: TokenStream) -> TokenStream {
78 js_macro::expand(input.into()).into()
79}
80
81#[proc_macro]
83pub fn computed(input: TokenStream) -> TokenStream {
84 computed_macro::expand(input.into()).into()
85}
86
87#[proc_macro]
89pub fn effect(input: TokenStream) -> TokenStream {
90 effect_macro::expand(input.into()).into()
91}
92
93#[proc_macro]
99pub fn debounce(input: TokenStream) -> TokenStream {
100 debounce_macro::expand(input.into()).into()
101}