Skip to main content

smplx_macros/
lib.rs

1use proc_macro::TokenStream;
2
3#[proc_macro]
4pub fn include_simf(tokenstream: TokenStream) -> TokenStream {
5    let input = syn::parse_macro_input!(tokenstream as smplx_build::macros::parse::SynFilePath);
6
7    match smplx_build::macros::expand(&input) {
8        Ok(ts) => ts.into(),
9        Err(e) => e.to_compile_error().into(),
10    }
11}
12
13#[proc_macro_attribute]
14pub fn test(args: TokenStream, input: TokenStream) -> TokenStream {
15    let input = syn::parse_macro_input!(input as syn::ItemFn);
16
17    match smplx_test::macros::expand(args.into(), input) {
18        Ok(ts) => ts.into(),
19        Err(e) => e.to_compile_error().into(),
20    }
21}