From f39dd5a95cb2a46abde2596c5e659b267e3a7639 Mon Sep 17 00:00:00 2001 From: Andrea Zagli Date: Tue, 7 Jul 2026 12:05:46 +0200 Subject: [PATCH] Setted struct members as zakform members. --- zakform_macro/src/lib.rs | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/zakform_macro/src/lib.rs b/zakform_macro/src/lib.rs index e674ac1..51e2be2 100644 --- a/zakform_macro/src/lib.rs +++ b/zakform_macro/src/lib.rs @@ -42,11 +42,11 @@ pub fn derive_into_hash_map(input: TokenStream) -> TokenStream { let id = field.ident.unwrap(); form_fields.extend(quote! { - #id: String, + pub #id: String, }); zakform_fields.extend(quote! { - #id: zakform::fields::FieldText, + pub #id: zakform::fields::FieldText, }); match field.ty { @@ -57,18 +57,21 @@ pub fn derive_into_hash_map(input: TokenStream) -> TokenStream { get_form.extend(quote!{ let mut fi = zakform::fields::FieldText::new(stringify!(#id)); fi.set_db_type(zakform::fields::FieldDbType::Integer); - f.add_field(Box::new(fi)); + self.#id = fi; + f.add_field(Box::new(self.#id)); }); } else if s.ident.to_string() == "NaiveDate" { get_form.extend(quote!{ let mut fi = zakform::fields::FieldText::new(stringify!(#id)); fi.set_db_type(zakform::fields::FieldDbType::Date); - f.add_field(Box::new(fi)); + self.#id = fi; + f.add_field(Box::new(self.#id)); }); } else { get_form.extend(quote!{ let mut fi = zakform::fields::FieldText::new(stringify!(#id)); - f.add_field(Box::new(fi)); + self.#id = fi; + f.add_field(Box::new(self.#id)); }); } }, @@ -85,10 +88,12 @@ pub fn derive_into_hash_map(input: TokenStream) -> TokenStream { } impl #zakform_ident { - pub fn get_form () -> zakform::form::Form { + pub fn get_form (&self) -> (Self, zakform::form::Form) { let mut f = zakform::form::Form::new(); + #get_form - f + + (&self, f) } } }; -- 2.53.0