#[macro_export]
macro_rules! expand_ffi {
($item:expr) => {{
let attr_args = if let Some(attr) = $item.attrs.iter().find(|a| a.path().is_ident("ffi")) {
match &attr.meta {
syn::Meta::Path(_) => quote! {}, syn::Meta::List(list) => list.tokens.clone(), syn::Meta::NameValue(_) => quote! {}, }
} else {
quote! {}
};
let mut clean_item = $item.clone();
clean_item.attrs.retain(|attr| !attr.path().is_ident("ffi"));
let item_tokens = quote! { #clean_item };
let output = interoptopus_proc_impl::ffi(attr_args, item_tokens);
prettyplease::unparse(&syn::parse2(output).unwrap())
}};
}