This commit is contained in:
Billy Chan 2023-07-05 13:03:46 +08:00
parent 986f0c2d49
commit 325e73468e
No known key found for this signature in database
GPG Key ID: A2D690CAC7DF3CC7

View File

@ -43,7 +43,14 @@ impl DerivePartialModel {
return Err(Error::NotSupportGeneric(input.generics.params.span())); return Err(Error::NotSupportGeneric(input.generics.params.span()));
} }
let syn::Data::Struct(syn::DataStruct{fields:syn::Fields::Named(syn::FieldsNamed{named:fields,..}),..},..) = input.data else{ let syn::Data::Struct(
syn::DataStruct {
fields: syn::Fields::Named(syn::FieldsNamed { named: fields, .. }),
..
},
..,
) = input.data
else {
return Err(Error::InputNotStruct); return Err(Error::InputNotStruct);
}; };
@ -196,11 +203,18 @@ mod util {
impl GetAsKVMeta for Meta { impl GetAsKVMeta for Meta {
fn get_as_kv(&self, k: &str) -> Option<String> { fn get_as_kv(&self, k: &str) -> Option<String> {
let Meta::NameValue(MetaNameValue{path, value: syn::Expr::Lit(exprlit), ..}) = self else { let Meta::NameValue(MetaNameValue {
path,
value: syn::Expr::Lit(exprlit),
..
}) = self
else {
return None; return None;
}; };
let syn::Lit::Str(litstr) = &exprlit.lit else { return None; }; let syn::Lit::Str(litstr) = &exprlit.lit else {
return None;
};
if path.is_ident(k) { if path.is_ident(k) {
Some(litstr.value()) Some(litstr.value())