aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHimbeerserverDE <himbeerserverde@gmail.com>2023-07-26 16:15:28 +0200
committerHimbeerserverDE <himbeerserverde@gmail.com>2023-07-26 16:15:28 +0200
commit06cc85d7016e1b54781e5bdf21a4c8f0433a81cd (patch)
treeb0f100d646b9f0a96bbb19abec97f745cdd24f59
parent9f3f3128d1f45771da2a84694288d0f6f141f411 (diff)
len_for: support length methods returning different integer sizesHEADmaster
-rw-r--r--src/lib.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 2f795dc..69664f0 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -57,7 +57,8 @@ pub fn derive_serialize(item: TokenStream) -> TokenStream {
out.extend(
vec![quote!(
- (self.#field_ident.len() + #data_type_ident::from(#offset)).serialize(w)?;
+ let n = #data_type_ident::try_from(self.#field_ident.len())?;
+ (n + #data_type_ident::from(#offset)).serialize(w)?;
)]
.into_iter(),
);