diff options
| author | 魏曹先生 <1992414357@qq.com> | 2026-04-05 22:33:19 +0800 |
|---|---|---|
| committer | 魏曹先生 <1992414357@qq.com> | 2026-04-05 22:33:19 +0800 |
| commit | bdbaad9eff0eb3425dd0af8d3f479c7d8dcfd632 (patch) | |
| tree | c645834ff10ca06a2f146a3486b49aeb250de771 /mingling_macros/src/lib.rs | |
| parent | d21d963a0f152d58a5997195b145cac4b8ccd018 (diff) | |
Add Groupped derive macro for automatic trait implementation
Diffstat (limited to 'mingling_macros/src/lib.rs')
| -rw-r--r-- | mingling_macros/src/lib.rs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/mingling_macros/src/lib.rs b/mingling_macros/src/lib.rs index 9513875..4341669 100644 --- a/mingling_macros/src/lib.rs +++ b/mingling_macros/src/lib.rs @@ -10,6 +10,7 @@ use syn::parse_macro_input; mod chain; mod dispatcher_chain; +mod groupped; mod node; mod pack; mod program_setup; @@ -74,6 +75,17 @@ pub fn program_setup(attr: TokenStream, item: TokenStream) -> TokenStream { program_setup::setup_attr(attr, item) } +#[proc_macro_derive(Groupped, attributes(group))] +pub fn derive_groupped(input: TokenStream) -> TokenStream { + groupped::derive_groupped(input) +} + +#[cfg(feature = "general_renderer")] +#[proc_macro_derive(GrouppedSerialize, attributes(group))] +pub fn derive_groupped_serialize(input: TokenStream) -> TokenStream { + groupped::derive_groupped_serialize(input) +} + #[proc_macro] pub fn gen_program(input: TokenStream) -> TokenStream { let name = if input.is_empty() { |
