leptos_spin_macro/
lib.rs

1use proc_macro::TokenStream;
2use proc_macro_error::proc_macro_error;
3use syn::__private::ToTokens;
4
5#[proc_macro_attribute]
6#[proc_macro_error]
7pub fn server(args: proc_macro::TokenStream, s: TokenStream) -> TokenStream {
8    match server_fn_macro::server_macro_impl(
9        args.into(),
10        s.into(),
11        Some(syn::parse_quote!(leptos::server_fn)),
12        "/api",
13        Some(syn::parse_quote!(::leptos_spin::request::SpinRequest)),
14        Some(syn::parse_quote!(::leptos_spin::response::SpinResponse)),
15    ) {
16        Err(e) => e.to_compile_error().into(),
17        Ok(s) => s.to_token_stream().into(),
18    }
19}