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// }