diff options
author | HimbeerserverDE <himbeerserverde@gmail.com> | 2023-05-20 22:54:39 +0200 |
---|---|---|
committer | HimbeerserverDE <himbeerserverde@gmail.com> | 2023-05-20 22:54:39 +0200 |
commit | 89d9f9ad228271c1777cb6744f365601cd12310b (patch) | |
tree | b3f7e9830594affbfd893f82e4bdbfc42c20f78c | |
parent | 0ee5ef7d514c9030e016383e3d90e91d9fba8e92 (diff) |
conditionally generate reader limiting code
-rw-r--r-- | src/lib.rs | 18 |
1 files changed, 8 insertions, 10 deletions
@@ -88,16 +88,14 @@ pub fn derive_deserialize(item: TokenStream) -> TokenStream { discriminant_for.insert(attr, ()); } - out.extend( - vec![quote!( - let r = if let Some(attr) = len_for.get("#field_name") { - r.take(attr) - } else { - r - }; - )] - .into_iter(), - ); + if len_for.contains_key(&field_name.to_string()) { + out.extend( + vec![quote!( + let r = r.take(len_for.get("#field_name").unwrap()); + )] + .into_iter(), + ); + } if discriminant_for.contains_key(&field_name.to_string()) { out.extend( |