data_bucket_codegen/
lib.rs

1mod persistable;
2mod size_measure;
3mod variable_size_measure;
4
5use proc_macro::TokenStream;
6
7#[proc_macro_derive(SizeMeasure)]
8pub fn size_measure(input: TokenStream) -> TokenStream {
9    size_measure::expand(&(input.into()))
10        .unwrap_or_else(|e| e.to_compile_error())
11        .into()
12}
13
14#[proc_macro_derive(VariableSizeMeasure)]
15pub fn variable_size_measure(input: TokenStream) -> TokenStream {
16    variable_size_measure::expand(&(input.into()))
17        .unwrap_or_else(|e| e.to_compile_error())
18        .into()
19}
20
21#[proc_macro_derive(Persistable, attributes(persistable))]
22pub fn persistable(input: TokenStream) -> TokenStream {
23    persistable::expand(&(input.into()))
24        .unwrap_or_else(|e| e.to_compile_error())
25        .into()
26}