nil_payload_macros/lib.rs
1// Copyright (C) Call of Nil contributors
2// SPDX-License-Identifier: AGPL-3.0-only
3
4#![cfg_attr(docsrs, feature(doc_cfg))]
5#![doc(html_favicon_url = "https://nil.dev.br/favicon.png")]
6
7mod response;
8
9use proc_macro::TokenStream;
10use syn::DeriveInput;
11
12#[proc_macro_derive(IntoJsonResponse)]
13pub fn derive_into_json_response(input: TokenStream) -> TokenStream {
14 let ast = syn::parse::<DeriveInput>(input).unwrap();
15 response::impl_into_json_response(&ast)
16}