1mod common;
2mod hook;
3mod method;
4
5pub(crate) use common::*;
6pub(crate) use hook::*;
7pub(crate) use method::*;
8
9pub(crate) use proc_macro::TokenStream;
10pub(crate) use proc_macro2::TokenStream as TokenStream2;
11pub(crate) use quote::quote;
12pub(crate) use syn::{
13 parse::{Parse, ParseStream},
14 punctuated::Punctuated,
15 *,
16};
17
18#[proc_macro_attribute]
19pub fn get(_attr: TokenStream, item: TokenStream) -> TokenStream {
20 get_handler(item)
21}
22
23#[proc_macro_attribute]
24pub fn post(_attr: TokenStream, item: TokenStream) -> TokenStream {
25 post_handler(item)
26}
27
28#[proc_macro_attribute]
29pub fn put(_attr: TokenStream, item: TokenStream) -> TokenStream {
30 put_handler(item)
31}
32
33#[proc_macro_attribute]
34pub fn delete(_attr: TokenStream, item: TokenStream) -> TokenStream {
35 delete_handler(item)
36}
37
38#[proc_macro_attribute]
39pub fn patch(_attr: TokenStream, item: TokenStream) -> TokenStream {
40 patch_handler(item)
41}
42
43#[proc_macro_attribute]
44pub fn head(_attr: TokenStream, item: TokenStream) -> TokenStream {
45 head_handler(item)
46}
47
48#[proc_macro_attribute]
49pub fn options(_attr: TokenStream, item: TokenStream) -> TokenStream {
50 options_handler(item)
51}
52
53#[proc_macro_attribute]
54pub fn connect(_attr: TokenStream, item: TokenStream) -> TokenStream {
55 connect_handler(item)
56}
57
58#[proc_macro_attribute]
59pub fn trace(_attr: TokenStream, item: TokenStream) -> TokenStream {
60 trace_handler(item)
61}
62
63#[proc_macro_attribute]
64pub fn methods(attr: TokenStream, item: TokenStream) -> TokenStream {
65 methods_macro(attr, item)
66}
67
68#[proc_macro_attribute]
69pub fn ws(_attr: TokenStream, item: TokenStream) -> TokenStream {
70 ws_macro(item)
71}
72
73#[proc_macro_attribute]
74pub fn http(_attr: TokenStream, item: TokenStream) -> TokenStream {
75 http_macro(item)
76}
77
78#[proc_macro_attribute]
79pub fn status_code(attr: TokenStream, item: TokenStream) -> TokenStream {
80 code_macro(attr, item)
81}
82
83#[proc_macro_attribute]
84pub fn reason_phrase(attr: TokenStream, item: TokenStream) -> TokenStream {
85 reason_phrase_macro(attr, item)
86}
87
88#[proc_macro_attribute]
89pub fn send(_attr: TokenStream, item: TokenStream) -> TokenStream {
90 send_macro(item)
91}
92
93#[proc_macro_attribute]
94pub fn send_body(_attr: TokenStream, item: TokenStream) -> TokenStream {
95 send_body_macro(item)
96}
97
98#[proc_macro_attribute]
99pub fn send_once(_attr: TokenStream, item: TokenStream) -> TokenStream {
100 send_once_macro(item)
101}
102
103#[proc_macro_attribute]
104pub fn send_once_body(_attr: TokenStream, item: TokenStream) -> TokenStream {
105 send_once_body_macro(item)
106}
107
108#[proc_macro_attribute]
109pub fn h2c(_attr: TokenStream, item: TokenStream) -> TokenStream {
110 h2c_macro(item)
111}
112
113#[proc_macro_attribute]
114pub fn http0_9(_attr: TokenStream, item: TokenStream) -> TokenStream {
115 http0_9_macro(item)
116}
117
118#[proc_macro_attribute]
119pub fn http1_0(_attr: TokenStream, item: TokenStream) -> TokenStream {
120 http1_0_macro(item)
121}
122
123#[proc_macro_attribute]
124pub fn http1_1(_attr: TokenStream, item: TokenStream) -> TokenStream {
125 http1_1_macro(item)
126}
127
128#[proc_macro_attribute]
129pub fn http1_1_or_higher(_attr: TokenStream, item: TokenStream) -> TokenStream {
130 http1_1_or_higher_macro(item)
131}
132
133#[proc_macro_attribute]
134pub fn http2(_attr: TokenStream, item: TokenStream) -> TokenStream {
135 http2_macro(item)
136}
137
138#[proc_macro_attribute]
139pub fn http3(_attr: TokenStream, item: TokenStream) -> TokenStream {
140 http3_macro(item)
141}
142
143#[proc_macro_attribute]
144pub fn tls(_attr: TokenStream, item: TokenStream) -> TokenStream {
145 tls_macro(item)
146}
147
148#[proc_macro_attribute]
149pub fn filter_unknown_method(_attr: TokenStream, item: TokenStream) -> TokenStream {
150 filter_unknown_method_macro(item)
151}
152
153#[proc_macro_attribute]
154pub fn filter_unknown_upgrade(_attr: TokenStream, item: TokenStream) -> TokenStream {
155 filter_unknown_upgrade_macro(item)
156}
157
158#[proc_macro_attribute]
159pub fn filter_unknown_version(_attr: TokenStream, item: TokenStream) -> TokenStream {
160 filter_unknown_version_macro(item)
161}
162
163#[proc_macro_attribute]
164pub fn filter_unknown(_attr: TokenStream, item: TokenStream) -> TokenStream {
165 filter_unknown_macro(item)
166}
167
168#[proc_macro_attribute]
169pub fn pre_hook(attr: TokenStream, item: TokenStream) -> TokenStream {
170 pre_hook_macro(attr, item)
171}
172
173#[proc_macro_attribute]
174pub fn post_hook(attr: TokenStream, item: TokenStream) -> TokenStream {
175 post_hook_macro(attr, item)
176}