dunge_macros/
lib.rs

1mod group;
2mod instance;
3mod member;
4mod vertex;
5
6use proc_macro::TokenStream;
7
8/// Derive implementation for the group type.
9#[proc_macro_derive(Group)]
10pub fn derive_group(input: TokenStream) -> TokenStream {
11    let input = syn::parse_macro_input!(input);
12    group::derive(input).into()
13}
14
15/// Derive implementation for the instance type.
16#[proc_macro_derive(Instance)]
17pub fn derive_instance(input: TokenStream) -> TokenStream {
18    let input = syn::parse_macro_input!(input);
19    instance::derive(input).into()
20}
21
22/// Derive implementation for the vector type.
23#[proc_macro_derive(Vertex)]
24pub fn derive_vertex(input: TokenStream) -> TokenStream {
25    let input = syn::parse_macro_input!(input);
26    vertex::derive(input).into()
27}