Skip to main content

pwr_rs/validator/
mod.rs

1use serde::{Deserialize};
2// use serde_json::Number;
3
4#[derive(Debug, Deserialize)]
5#[serde(rename_all = "camelCase")]
6pub struct Validator {
7    pub address: String,
8    pub ip: String,
9    pub voting_power: u128,
10    // #[serde(deserialize_with = "deserialize_number_to_string")]
11    // pub total_shares: String,
12    pub status: String,
13}
14
15// fn deserialize_number_to_string<'de, D>(deserializer: D) -> Result<String, D::Error>
16// where
17//     D: serde::Deserializer<'de>,
18// {
19//     #[derive(Deserialize)]
20//     #[serde(untagged)]
21//     enum StringOrNumber {
22//         String(String),
23//         Number(Number),
24//     }
25
26//     match StringOrNumber::deserialize(deserializer)? {
27//         StringOrNumber::String(s) => Ok(s),
28//         StringOrNumber::Number(n) => Ok(n.to_string()),
29//     }
30// }