raiden_primitives/
serializers.rs1#![warn(clippy::missing_docs_in_private_items)]
2
3use serde::{
4 Serialize,
5 Serializer,
6};
7
8use crate::{
9 traits::Checksum,
10 types::{
11 ChainID,
12 U64,
13 },
14};
15
16impl Serialize for ChainID {
17 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
18 where
19 S: serde::Serializer,
20 {
21 let value: u64 = (*self).into();
22 serializer.serialize_str(&value.to_string())
23 }
24}
25
26impl Serialize for U64 {
27 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
28 where
29 S: Serializer,
30 {
31 serializer.serialize_str(&self.to_string())
32 }
33}
34
35pub fn u256_to_str<T, S>(v: &T, serializer: S) -> Result<S::Ok, S::Error>
37where
38 T: ToString,
39 S: Serializer,
40{
41 serializer.serialize_str(&v.to_string())
42}
43
44pub fn to_checksum_str<T, S>(v: &T, serializer: S) -> Result<S::Ok, S::Error>
46where
47 T: Checksum,
48 S: Serializer,
49{
50 serializer.serialize_str(&v.checksum())
51}