mod transform;
use proc_macro::TokenStream;
use proc_macro_error2::proc_macro_error;
use syn::{parse_macro_input, DeriveInput};
use transform::expand_transform;
#[proc_macro_error]
#[proc_macro_derive(Transform, attributes(transform))]
pub fn derive_transform(input: TokenStream) -> TokenStream {
let input = parse_macro_input!(input as DeriveInput);
expand_transform(input)
.unwrap_or_else(syn::Error::into_compile_error)
.into()
}