devhub_shared/
str_serializers.rs1pub mod u128_dec_format {
2 use near_sdk::serde::de;
3 use near_sdk::serde::{Deserialize, Deserializer, Serializer};
4
5 pub fn serialize<S>(num: &u128, serializer: S) -> Result<S::Ok, S::Error>
6 where
7 S: Serializer,
8 {
9 serializer.serialize_str(&num.to_string())
10 }
11
12 pub fn deserialize<'de, D>(deserializer: D) -> Result<u128, D::Error>
13 where
14 D: Deserializer<'de>,
15 {
16 String::deserialize(deserializer)?.parse().map_err(de::Error::custom)
17 }
18}
19
20pub mod u64_dec_format {
21 use near_sdk::serde::de;
22 use near_sdk::serde::{Deserialize, Deserializer, Serializer};
23
24 pub fn serialize<S>(num: &u64, serializer: S) -> Result<S::Ok, S::Error>
25 where
26 S: Serializer,
27 {
28 serializer.serialize_str(&num.to_string())
29 }
30
31 pub fn deserialize<'de, D>(deserializer: D) -> Result<u64, D::Error>
32 where
33 D: Deserializer<'de>,
34 {
35 String::deserialize(deserializer)?.parse().map_err(de::Error::custom)
36 }
37}
38
39pub mod u32_dec_format {
40 use near_sdk::serde::de;
41 use near_sdk::serde::{Deserialize, Deserializer, Serializer};
42
43 pub fn serialize<S>(num: &u32, serializer: S) -> Result<S::Ok, S::Error>
44 where
45 S: Serializer,
46 {
47 serializer.serialize_str(&num.to_string())
48 }
49
50 pub fn deserialize<'de, D>(deserializer: D) -> Result<u32, D::Error>
51 where
52 D: Deserializer<'de>,
53 {
54 String::deserialize(deserializer)?.parse().map_err(de::Error::custom)
55 }
56}