blockfrost_openapi/models/
proposal_votes_inner.rs1use crate::models;
2use serde::{Deserialize, Serialize};
3
4#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
5pub struct ProposalVotesInner {
6 #[serde(rename = "tx_hash")]
8 pub tx_hash: String,
9 #[serde(rename = "cert_index")]
11 pub cert_index: i32,
12 #[serde(rename = "voter_role")]
14 pub voter_role: VoterRole,
15 #[serde(rename = "voter")]
17 pub voter: String,
18 #[serde(rename = "vote")]
20 pub vote: Vote,
21}
22
23impl ProposalVotesInner {
24 pub fn new(tx_hash: String, cert_index: i32, voter_role: VoterRole, voter: String, vote: Vote) -> ProposalVotesInner {
25 ProposalVotesInner {
26 tx_hash,
27 cert_index,
28 voter_role,
29 voter,
30 vote,
31 }
32 }
33}
34#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
36pub enum VoterRole {
37 #[serde(rename = "constitutional_committee")]
38 ConstitutionalCommittee,
39 #[serde(rename = "drep")]
40 Drep,
41 #[serde(rename = "spo")]
42 Spo,
43}
44
45impl Default for VoterRole {
46 fn default() -> VoterRole {
47 Self::ConstitutionalCommittee
48 }
49}
50#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
52pub enum Vote {
53 #[serde(rename = "yes")]
54 Yes,
55 #[serde(rename = "no")]
56 No,
57 #[serde(rename = "abstain")]
58 Abstain,
59}
60
61impl Default for Vote {
62 fn default() -> Vote {
63 Self::Yes
64 }
65}
66