splitter_derive/
lib.rs

1
2//! `Splitter` derive macro
3
4mod info;
5mod str_info;
6
7use proc_macro::TokenStream;
8use syn::{parse_macro_input, DeriveInput};
9
10/// derive macro for `Info` trait
11#[proc_macro_derive(Info, attributes(splitter))]
12pub fn info(input: TokenStream) -> TokenStream {
13    info::parse(parse_macro_input!(input as DeriveInput))
14}
15
16/// derive macro for `StrInfo` trait
17#[proc_macro_derive(StrInfo, attributes(splitter))]
18pub fn str_info(input: TokenStream) -> TokenStream {
19    str_info::parse(parse_macro_input!(input as DeriveInput))
20}