1mod controller;
4mod guard;
5mod module;
6mod route;
7mod service;
8
9use proc_macro::TokenStream;
10
11#[proc_macro_attribute]
13pub fn service(_attr: TokenStream, item: TokenStream) -> TokenStream {
14 service::expand(item)
15}
16
17#[proc_macro_attribute]
24pub fn module(attr: TokenStream, item: TokenStream) -> TokenStream {
25 module::expand(attr, item)
26}
27
28#[proc_macro_attribute]
30pub fn controller(attr: TokenStream, item: TokenStream) -> TokenStream {
31 controller::expand(attr, item)
32}
33
34#[proc_macro_attribute]
36pub fn routes(_attr: TokenStream, item: TokenStream) -> TokenStream {
37 route::expand_routes_impl(item)
38}
39
40#[proc_macro_attribute]
41pub fn get(attr: TokenStream, item: TokenStream) -> TokenStream {
42 route::passthrough_route_method(attr, item)
43}
44
45#[proc_macro_attribute]
46pub fn post(attr: TokenStream, item: TokenStream) -> TokenStream {
47 route::passthrough_route_method(attr, item)
48}
49
50#[proc_macro_attribute]
51pub fn put(attr: TokenStream, item: TokenStream) -> TokenStream {
52 route::passthrough_route_method(attr, item)
53}
54
55#[proc_macro_attribute]
56pub fn patch(attr: TokenStream, item: TokenStream) -> TokenStream {
57 route::passthrough_route_method(attr, item)
58}
59
60#[proc_macro_attribute]
61pub fn delete(attr: TokenStream, item: TokenStream) -> TokenStream {
62 route::passthrough_route_method(attr, item)
63}
64
65#[proc_macro_attribute]
67pub fn middleware(_attr: TokenStream, item: TokenStream) -> TokenStream {
68 item
69}
70
71#[proc_macro_attribute]
73pub fn dto(_attr: TokenStream, item: TokenStream) -> TokenStream {
74 item
75}
76
77#[proc_macro_attribute]
84pub fn guard(attr: TokenStream, item: TokenStream) -> TokenStream {
85 guard::expand(attr, item)
86}