Add #[schemars(extend("key" = value))] attribute (#297)

This commit is contained in:
Graham Esau 2024-06-05 21:09:52 +01:00 committed by GitHub
parent 97b70aa82c
commit 840315b2dd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
18 changed files with 527 additions and 26 deletions

View file

@ -9,6 +9,7 @@ pub struct SchemaMetadata<'a> {
pub write_only: bool,
pub examples: &'a [syn::Path],
pub default: Option<TokenStream>,
pub extensions: &'a [(String, TokenStream)],
}
impl<'a> SchemaMetadata<'a> {
@ -74,6 +75,12 @@ impl<'a> SchemaMetadata<'a> {
});
}
for (k, v) in self.extensions {
setters.push(quote! {
obj.insert(#k.to_owned(), schemars::_serde_json::json!(#v));
});
}
setters
}
}