use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct DrepVotesInner {
#[serde(rename = "tx_hash")]
pub tx_hash: String,
#[serde(rename = "cert_index")]
pub cert_index: i32,
#[serde(rename = "proposal_id")]
pub proposal_id: String,
#[serde(rename = "proposal_tx_hash")]
pub proposal_tx_hash: String,
#[serde(rename = "proposal_cert_index")]
pub proposal_cert_index: i32,
#[serde(rename = "vote")]
pub vote: Vote,
}
impl DrepVotesInner {
pub fn new(tx_hash: String, cert_index: i32, proposal_id: String, proposal_tx_hash: String, proposal_cert_index: i32, vote: Vote) -> DrepVotesInner {
DrepVotesInner {
tx_hash,
cert_index,
proposal_id,
proposal_tx_hash,
proposal_cert_index,
vote,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Vote {
#[serde(rename = "yes")]
Yes,
#[serde(rename = "no")]
No,
#[serde(rename = "abstain")]
Abstain,
}
impl Default for Vote {
fn default() -> Vote {
Self::Yes
}
}