typed_arrow_derive/
lib.rs1mod attrs;
4mod record;
5mod union;
6
7use proc_macro::TokenStream;
8use syn::{DeriveInput, parse_macro_input};
9
10#[proc_macro_derive(Record, attributes(nested, schema_metadata, metadata, record))]
11pub fn derive_record(input: TokenStream) -> TokenStream {
12 let input = parse_macro_input!(input as DeriveInput);
13 record::derive_record(&input)
14}
15
16#[proc_macro_derive(Union, attributes(union))]
17pub fn derive_union(input: TokenStream) -> TokenStream {
18 let input = parse_macro_input!(input as DeriveInput);
19 union::derive_union(&input)
20}