We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent bec629d commit 18f7f14Copy full SHA for 18f7f14
typesense_derive/src/lib.rs
@@ -77,14 +77,18 @@ fn impl_typesense_collection(item: ItemStruct) -> syn::Result<TokenStream> {
77
proc_macro2::TokenStream::new()
78
};
79
80
- let optional_fields = fields.iter().map(|f| {
+ let optional_fields = fields.iter().filter_map(|f| {
81
+ let ident = f.ident.as_ref()?;
82
+ if ident == "id" {
83
+ return None;
84
+ }
85
let vis = &f.vis;
- let ident = &f.ident;
86
let ty = &f.ty;
- quote! {
87
+
88
+ Some(quote! {
89
#[serde(skip_serializing_if = "Option::is_none")]
90
#vis #ident: Option<#ty>,
- }
91
+ })
92
});
93
94
let name_partial = Ident::new(&(ident.to_string() + "Partial"), ident.span());
0 commit comments