mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-10-30 07:29:49 +00:00
Implement deserialize (#773)
This commit is contained in:
1 parent
26b8a81c17
commit
c9f414f4ed
1 file changed
+14
-1
@@ -10,7 +10,10 @@ use codec::{
|
||||
Decode,
|
||||
Encode,
|
||||
};
|
||||
use serde::Serialize;
|
||||
use serde::{
|
||||
Deserialize,
|
||||
Serialize,
|
||||
};
|
||||
|
||||
/// A 32-byte cryptographic identifier. This is a simplified version of Substrate's
|
||||
/// `sp_core::crypto::AccountId32`. To obtain more functionality, convert this into
|
||||
@@ -127,6 +130,16 @@ impl Serialize for AccountId32 {
|
||||
}
|
||||
}
|
||||
|
||||
impl<'de> Deserialize<'de> for AccountId32 {
|
||||
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
|
||||
where
|
||||
D: serde::Deserializer<'de>,
|
||||
{
|
||||
AccountId32::from_ss58check(&String::deserialize(deserializer)?)
|
||||
.map_err(|e| serde::de::Error::custom(format!("{:?}", e)))
|
||||
}
|
||||
}
|
||||
|
||||
impl std::fmt::Display for AccountId32 {
|
||||
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
|
||||
write!(f, "{}", self.to_ss58check())
|
||||
|
||||
Reference in new issue
Block a user