paypal_rust/resources/enums/
payment_status.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Copy, Clone, Debug, Deserialize, Serialize, PartialEq, Eq)]
4pub enum PaymentStatus {
5 #[serde(rename = "CREATED")]
6 Created,
7 #[serde(rename = "CAPTURED")]
8 Captured,
9 #[serde(rename = "DENIED")]
10 Denied,
11 #[serde(rename = "EXPIRED")]
12 Expired,
13 #[serde(rename = "PARTIALLY_CAPTURED")]
14 PartiallyCaptured,
15 #[serde(rename = "PARTIALLY_CREATED")]
16 PartiallyCreated,
17 #[serde(rename = "VOIDED")]
18 Voided,
19 #[serde(rename = "PENDING")]
20 Pending,
21}
22
23impl PaymentStatus {
24 pub const fn as_str(self) -> &'static str {
25 match self {
26 Self::Created => "CREATED",
27 Self::Captured => "CAPTURED",
28 Self::Denied => "DENIED",
29 Self::Expired => "EXPIRED",
30 Self::PartiallyCaptured => "PARTIALLY_CAPTURED",
31 Self::PartiallyCreated => "PARTIALLY_CREATED",
32 Self::Voided => "VOIDED",
33 Self::Pending => "PENDING",
34 }
35 }
36}
37
38impl AsRef<str> for PaymentStatus {
39 fn as_ref(&self) -> &str {
40 self.as_str()
41 }
42}
43
44impl std::fmt::Display for PaymentStatus {
45 fn fmt(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
46 self.as_str().fmt(formatter)
47 }
48}