1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
use params::to_snakecase;
use std::fmt;
#[derive(Debug, PartialEq, Deserialize, Serialize)]
pub enum Currency {
#[serde(rename = "aed")] AED,
#[serde(rename = "afn")] AFN,
#[serde(rename = "all")] ALL,
#[serde(rename = "amd")] AMD,
#[serde(rename = "ang")] ANG,
#[serde(rename = "aoa")] AOA,
#[serde(rename = "ars")] ARS,
#[serde(rename = "aud")] AUD,
#[serde(rename = "awg")] AWG,
#[serde(rename = "azn")] AZN,
#[serde(rename = "bam")] BAM,
#[serde(rename = "bbd")] BBD,
#[serde(rename = "bdt")] BDT,
#[serde(rename = "bgn")] BGN,
#[serde(rename = "bif")] BIF,
#[serde(rename = "bmd")] BMD,
#[serde(rename = "bnd")] BND,
#[serde(rename = "bob")] BOB,
#[serde(rename = "brl")] BRL,
#[serde(rename = "bsd")] BSD,
#[serde(rename = "bwp")] BWP,
#[serde(rename = "bzd")] BZD,
#[serde(rename = "cad")] CAD,
#[serde(rename = "cdf")] CDF,
#[serde(rename = "chf")] CHF,
#[serde(rename = "clp")] CLP,
#[serde(rename = "cny")] CNY,
#[serde(rename = "cop")] COP,
#[serde(rename = "crc")] CRC,
#[serde(rename = "cve")] CVE,
#[serde(rename = "czk")] CZK,
#[serde(rename = "djf")] DJF,
#[serde(rename = "dkk")] DKK,
#[serde(rename = "dop")] DOP,
#[serde(rename = "dzd")] DZD,
#[serde(rename = "eek")] EEK,
#[serde(rename = "egp")] EGP,
#[serde(rename = "etb")] ETB,
#[serde(rename = "eur")] EUR,
#[serde(rename = "fjd")] FJD,
#[serde(rename = "fkp")] FKP,
#[serde(rename = "gbp")] GBP,
#[serde(rename = "gel")] GEL,
#[serde(rename = "gip")] GIP,
#[serde(rename = "gmd")] GMD,
#[serde(rename = "gnf")] GNF,
#[serde(rename = "gtq")] GTQ,
#[serde(rename = "gyd")] GYD,
#[serde(rename = "hkd")] HKD,
#[serde(rename = "hnl")] HNL,
#[serde(rename = "hrk")] HRK,
#[serde(rename = "htg")] HTG,
#[serde(rename = "huf")] HUF,
#[serde(rename = "idr")] IDR,
#[serde(rename = "ils")] ILS,
#[serde(rename = "inr")] INR,
#[serde(rename = "isk")] ISK,
#[serde(rename = "jmd")] JMD,
#[serde(rename = "jpy")] JPY,
#[serde(rename = "kes")] KES,
#[serde(rename = "kgs")] KGS,
#[serde(rename = "khr")] KHR,
#[serde(rename = "kmf")] KMF,
#[serde(rename = "krw")] KRW,
#[serde(rename = "kyd")] KYD,
#[serde(rename = "kzt")] KZT,
#[serde(rename = "lak")] LAK,
#[serde(rename = "lbp")] LBP,
#[serde(rename = "lkr")] LKR,
#[serde(rename = "lrd")] LRD,
#[serde(rename = "lsl")] LSL,
#[serde(rename = "ltl")] LTL,
#[serde(rename = "lvl")] LVL,
#[serde(rename = "mad")] MAD,
#[serde(rename = "mdl")] MDL,
#[serde(rename = "mga")] MGA,
#[serde(rename = "mkd")] MKD,
#[serde(rename = "mnt")] MNT,
#[serde(rename = "mop")] MOP,
#[serde(rename = "mro")] MRO,
#[serde(rename = "mur")] MUR,
#[serde(rename = "mvr")] MVR,
#[serde(rename = "mwk")] MWK,
#[serde(rename = "mxn")] MXN,
#[serde(rename = "myr")] MYR,
#[serde(rename = "mzn")] MZN,
#[serde(rename = "nad")] NAD,
#[serde(rename = "ngn")] NGN,
#[serde(rename = "nio")] NIO,
#[serde(rename = "nok")] NOK,
#[serde(rename = "npr")] NPR,
#[serde(rename = "nzd")] NZD,
#[serde(rename = "pab")] PAB,
#[serde(rename = "pen")] PEN,
#[serde(rename = "pgk")] PGK,
#[serde(rename = "php")] PHP,
#[serde(rename = "pkr")] PKR,
#[serde(rename = "pln")] PLN,
#[serde(rename = "pyg")] PYG,
#[serde(rename = "qar")] QAR,
#[serde(rename = "ron")] RON,
#[serde(rename = "rsd")] RSD,
#[serde(rename = "rub")] RUB,
#[serde(rename = "rwf")] RWF,
#[serde(rename = "sar")] SAR,
#[serde(rename = "sbd")] SBD,
#[serde(rename = "scr")] SCR,
#[serde(rename = "sek")] SEK,
#[serde(rename = "sgd")] SGD,
#[serde(rename = "shp")] SHP,
#[serde(rename = "sll")] SLL,
#[serde(rename = "sos")] SOS,
#[serde(rename = "srd")] SRD,
#[serde(rename = "std")] STD,
#[serde(rename = "svc")] SVC,
#[serde(rename = "szl")] SZL,
#[serde(rename = "thb")] THB,
#[serde(rename = "tjs")] TJS,
#[serde(rename = "top")] TOP,
#[serde(rename = "try")] TRY,
#[serde(rename = "ttd")] TTD,
#[serde(rename = "twd")] TWD,
#[serde(rename = "tzs")] TZS,
#[serde(rename = "uah")] UAH,
#[serde(rename = "ugx")] UGX,
#[serde(rename = "usd")] USD,
#[serde(rename = "uyu")] UYU,
#[serde(rename = "uzs")] UZS,
#[serde(rename = "vef")] VEF,
#[serde(rename = "vnd")] VND,
#[serde(rename = "vuv")] VUV,
#[serde(rename = "wst")] WST,
#[serde(rename = "xaf")] XAF,
#[serde(rename = "xcd")] XCD,
#[serde(rename = "xof")] XOF,
#[serde(rename = "xpf")] XPF,
#[serde(rename = "yer")] YER,
#[serde(rename = "zar")] ZAR,
#[serde(rename = "zmw")] ZMW,
}
impl Default for Currency {
fn default() -> Self {
Currency::USD
}
}
impl fmt::Display for Currency {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
write!(f, "{}", to_snakecase(&format!("{:?}", self)))
}
}