paypal_rust/resources/enums/
network.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Copy, Clone, Debug, Default, Deserialize, Serialize, PartialEq, Eq)]
4pub enum Network {
5 #[default]
6 #[serde(rename = "VISA")]
7 Visa,
8 #[serde(rename = "MASTERCARD")]
9 Mastercard,
10 #[serde(rename = "DISCOVER")]
11 Discover,
12 #[serde(rename = "AMEX")]
13 Amex,
14 #[serde(rename = "SOLO")]
15 Solo,
16 #[serde(rename = "JCB")]
17 Jcb,
18 #[serde(rename = "STAR")]
19 Star,
20 #[serde(rename = "DELTA")]
21 Delta,
22 #[serde(rename = "SWITCH")]
23 Switch,
24 #[serde(rename = "MAESTRO")]
25 Maestro,
26 #[serde(rename = "CB_NATIONALE")]
27 CbNationale,
28 #[serde(rename = "CONFIGOGA")]
29 Configoga,
30 #[serde(rename = "CONFIDIS")]
31 Confidis,
32 #[serde(rename = "ELECTRON")]
33 Electron,
34 #[serde(rename = "CETELEM")]
35 Cetelem,
36 #[serde(rename = "CHINA_UNION_PAY")]
37 ChinaUnionPay,
38}
39
40impl Network {
41 pub const fn as_str(self) -> &'static str {
42 match self {
43 Self::Visa => "VISA",
44 Self::Mastercard => "MASTERCARD",
45 Self::Discover => "DISCOVER",
46 Self::Amex => "AMEX",
47 Self::Solo => "SOLO",
48 Self::Jcb => "JCB",
49 Self::Star => "STAR",
50 Self::Delta => "DELTA",
51 Self::Switch => "SWITCH",
52 Self::Maestro => "MAESTRO",
53 Self::CbNationale => "CB_NATIONALE",
54 Self::Configoga => "CONFIGOGA",
55 Self::Confidis => "CONFIDIS",
56 Self::Electron => "ELECTRON",
57 Self::Cetelem => "CETELEM",
58 Self::ChinaUnionPay => "CHINA_UNION_PAY",
59 }
60 }
61}
62
63impl AsRef<str> for Network {
64 fn as_ref(&self) -> &str {
65 self.as_str()
66 }
67}
68
69impl std::fmt::Display for Network {
70 fn fmt(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
71 self.as_str().fmt(formatter)
72 }
73}