mod modeling_cmd_enum;
mod modeling_cmd_output;
mod modeling_cmd_variant;
mod ok_modeling_cmd_response_enum;
use proc_macro::TokenStream;
use syn::{DeriveInput, ItemMod};
#[proc_macro_derive(ModelingCmdVariantEmpty)]
pub fn derive_modeling_cmd_variant_empty(input: TokenStream) -> TokenStream {
let input: DeriveInput = syn::parse2(input.into()).unwrap();
TokenStream::from(modeling_cmd_variant::derive_empty(input))
}
#[proc_macro_derive(ModelingCmdVariant)]
pub fn derive_modeling_cmd_variant_nonempty(input: TokenStream) -> TokenStream {
let input: DeriveInput = syn::parse2(input.into()).unwrap();
TokenStream::from(modeling_cmd_variant::derive_nonempty(input))
}
#[proc_macro]
pub fn define_modeling_cmd_enum(item: TokenStream) -> TokenStream {
let input: ItemMod = syn::parse2(item.into()).unwrap();
TokenStream::from(modeling_cmd_enum::generate(input))
}
#[proc_macro_derive(ModelingCmdOutput)]
pub fn derive_modeling_cmd_output(input: TokenStream) -> TokenStream {
let input: DeriveInput = syn::parse2(input.into()).unwrap();
TokenStream::from(modeling_cmd_output::derive(input))
}
#[proc_macro]
pub fn define_ok_modeling_cmd_response_enum(item: TokenStream) -> TokenStream {
let input: ItemMod = syn::parse2(item.into()).unwrap();
TokenStream::from(ok_modeling_cmd_response_enum::generate(input))
}