poem_openapi_api_derive/
lib.rs1mod query_object;
2mod uni_open_api;
3
4use proc_macro::TokenStream;
5use syn::{parse_macro_input, DeriveInput};
6
7#[proc_macro_derive(UniOpenApi)]
8pub fn derive_uni_open_api(input: TokenStream) -> TokenStream {
9 let args = parse_macro_input!(input as DeriveInput);
10 uni_open_api::generate(&args)
11 .unwrap_or_else(|e| e.to_compile_error())
12 .into()
13}
14
15#[proc_macro_derive(QueryObject)]
16pub fn derive_object(input: TokenStream) -> TokenStream {
17 let args = parse_macro_input!(input as DeriveInput);
18 query_object::generate(&args)
19 .unwrap_or_else(|e| e.to_compile_error())
20 .into()
21}