paypal_rust/resources/enums/
network.rs

1use 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}