basement_macros/
lib.rs

1//! service macros
2use proc_macro::TokenStream;
3mod service;
4
5#[proc_macro]
6pub fn start_service_ctrl_dispatcher(item: TokenStream) -> TokenStream {
7    service::expand_start_service_ctrl_dispatcher(item).map_or_else(
8        |e| TokenStream::from(e.to_compile_error()),
9        TokenStream::from,
10    )
11}
12
13#[proc_macro_attribute]
14pub fn service(attr: TokenStream, item: TokenStream) -> TokenStream {
15    service::expand_service(attr, item).map_or_else(
16        |e| TokenStream::from(e.to_compile_error()),
17        TokenStream::from,
18    )
19}