Fix clippy field_reassign_with_default in generated code (#65)

This commit is contained in:
Jan Michael Auer 2021-03-21 19:31:58 +01:00 committed by GitHub
parent addac6d386
commit d85eec3b7a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -22,9 +22,10 @@ impl ToTokens for SchemaMetadata<'_> {
} else { } else {
tokens.extend(quote! { tokens.extend(quote! {
Some({ Some({
let mut metadata = schemars::schema::Metadata::default(); schemars::schema::Metadata {
#(#setters)* #(#setters)*
metadata ..Default::default()
}
}) })
}) })
} }
@ -58,29 +59,29 @@ impl<'a> SchemaMetadata<'a> {
if let Some(title) = &self.title { if let Some(title) = &self.title {
setters.push(quote! { setters.push(quote! {
metadata.title = Some(#title.to_owned()); title: Some(#title.to_owned()),
}); });
} }
if let Some(description) = &self.description { if let Some(description) = &self.description {
setters.push(quote! { setters.push(quote! {
metadata.description = Some(#description.to_owned()); description: Some(#description.to_owned()),
}); });
} }
if self.deprecated { if self.deprecated {
setters.push(quote! { setters.push(quote! {
metadata.deprecated = true; deprecated: true,
}); });
} }
if self.read_only { if self.read_only {
setters.push(quote! { setters.push(quote! {
metadata.read_only = true; read_only: true,
}); });
} }
if self.write_only { if self.write_only {
setters.push(quote! { setters.push(quote! {
metadata.write_only = true; write_only: true,
}); });
} }
@ -91,13 +92,13 @@ impl<'a> SchemaMetadata<'a> {
} }
}); });
setters.push(quote! { setters.push(quote! {
metadata.examples = vec![#(#examples),*].into_iter().flatten().collect(); examples: vec![#(#examples),*].into_iter().flatten().collect(),
}); });
} }
if let Some(default) = &self.default { if let Some(default) = &self.default {
setters.push(quote! { setters.push(quote! {
metadata.default = #default.and_then(|d| schemars::_serde_json::value::to_value(d).ok()); default: #default.and_then(|d| schemars::_serde_json::value::to_value(d).ok()),
}); });
} }