desse_derive/
lib.rs

1extern crate proc_macro;
2
3use proc_macro::TokenStream;
4use syn::{parse_macro_input, DeriveInput};
5
6mod desse;
7mod desse_sized;
8mod expr;
9
10#[proc_macro_derive(DesseSized)]
11pub fn desse_sized_macro_derive(input: TokenStream) -> TokenStream {
12    let input = parse_macro_input!(input as DeriveInput);
13    desse_sized::get_desse_sized_impl(input).into()
14}
15
16#[proc_macro_derive(Desse)]
17pub fn desse_macro_derive(input: TokenStream) -> TokenStream {
18    let input = parse_macro_input!(input as DeriveInput);
19    desse::get_desse_impl(input).into()
20}