firls-rs/firls-rs-macros/src/lib.rs

23 lines
600 B
Rust

extern crate proc_macro;
use proc_macro::TokenStream;
use syn::parse::{Parse, ParseStream};
use syn::parse_macro_input;
use syn::{punctuated::Punctuated, Expr, Token};
struct FirlsRealInput {}
impl Parse for FirlsRealInput {
fn parse(input: ParseStream) -> Result<Self, syn::Error> {
let arg_list = Punctuated::<Expr, Token![,]>::parse_separated_nonempty(input)?;
Ok(FirlsRealInput {})
}
}
#[proc_macro]
pub fn firls_real(input: TokenStream) -> TokenStream {
let input = parse_macro_input!(input as FirlsRealInput);
"fn answer() -> u32 { 42 }".parse().unwrap()
}