Skip to content

Commit

Permalink
Use faster byte array serialization for Address
Browse files Browse the repository at this point in the history
It was missed because the serialization wasn't derived.
  • Loading branch information
hrxi authored and jsdanielh committed Jun 17, 2024
1 parent 97771b3 commit 06f2c21
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions keys/src/address.rs
Original file line number Diff line number Diff line change
Expand Up @@ -227,7 +227,7 @@ impl FromDatabaseValue for Address {
mod serde_derive {
use std::borrow::Cow;

use nimiq_serde::SerializedSize;
use nimiq_serde::{FixedSizeByteArray, SerializedSize};
use serde::{
de::{Deserialize, Deserializer, Error},
ser::{Serialize, Serializer},
Expand All @@ -247,7 +247,7 @@ mod serde_derive {
if serializer.is_human_readable() {
serializer.serialize_str(&self.to_user_friendly_address())
} else {
Serialize::serialize(&self.0, serializer)
FixedSizeByteArray::from(self.0).serialize(serializer)
}
}
}
Expand All @@ -261,7 +261,8 @@ mod serde_derive {
let s: Cow<'de, str> = Deserialize::deserialize(deserializer)?;
Address::from_any_str(&s).map_err(Error::custom)
} else {
let data: [u8; Self::SIZE] = Deserialize::deserialize(deserializer)?;
let data: [u8; Self::SIZE] =
FixedSizeByteArray::deserialize(deserializer)?.into_inner();
Ok(Address(data))
}
}
Expand Down

0 comments on commit 06f2c21

Please sign in to comment.