Skip to main content

nominal_api_conjure/conjure/objects/authentication/api/
appearance_setting.rs

1#![allow(deprecated)]
2use std::fmt;
3use std::str;
4#[derive(
5    Debug,
6    Clone,
7    PartialEq,
8    Eq,
9    PartialOrd,
10    Ord,
11    Hash,
12    conjure_object::serde::Deserialize,
13    conjure_object::serde::Serialize,
14    conjure_object::log_safety::derive::LogSafe
15)]
16#[serde(crate = "conjure_object::serde")]
17pub enum AppearanceSetting {
18    #[serde(rename = "SYSTEM")]
19    System,
20    #[serde(rename = "LIGHT")]
21    Light,
22    #[serde(rename = "DARK")]
23    Dark,
24    /// An unknown variant.
25    #[serde(untagged)]
26    Unknown(Unknown),
27}
28impl AppearanceSetting {
29    /// Returns the string representation of the enum.
30    #[inline]
31    pub fn as_str(&self) -> &str {
32        match self {
33            AppearanceSetting::System => "SYSTEM",
34            AppearanceSetting::Light => "LIGHT",
35            AppearanceSetting::Dark => "DARK",
36            AppearanceSetting::Unknown(v) => &*v,
37        }
38    }
39}
40impl fmt::Display for AppearanceSetting {
41    fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
42        fmt::Display::fmt(self.as_str(), fmt)
43    }
44}
45impl conjure_object::Plain for AppearanceSetting {
46    fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
47        conjure_object::Plain::fmt(self.as_str(), fmt)
48    }
49}
50impl str::FromStr for AppearanceSetting {
51    type Err = conjure_object::plain::ParseEnumError;
52    #[inline]
53    fn from_str(
54        v: &str,
55    ) -> Result<AppearanceSetting, conjure_object::plain::ParseEnumError> {
56        match v {
57            "SYSTEM" => Ok(AppearanceSetting::System),
58            "LIGHT" => Ok(AppearanceSetting::Light),
59            "DARK" => Ok(AppearanceSetting::Dark),
60            v => v.parse().map(|v| AppearanceSetting::Unknown(Unknown(v))),
61        }
62    }
63}
64impl conjure_object::FromPlain for AppearanceSetting {
65    type Err = conjure_object::plain::ParseEnumError;
66    #[inline]
67    fn from_plain(
68        v: &str,
69    ) -> Result<AppearanceSetting, conjure_object::plain::ParseEnumError> {
70        v.parse()
71    }
72}
73///An unknown variant of the AppearanceSetting enum.
74#[derive(
75    Debug,
76    Clone,
77    PartialEq,
78    Eq,
79    PartialOrd,
80    Ord,
81    Hash,
82    conjure_object::serde::Deserialize,
83    conjure_object::serde::Serialize,
84    conjure_object::log_safety::derive::LogSafe,
85)]
86#[serde(crate = "conjure_object::serde", transparent)]
87pub struct Unknown(conjure_object::private::Variant);
88impl std::ops::Deref for Unknown {
89    type Target = str;
90    #[inline]
91    fn deref(&self) -> &str {
92        &self.0
93    }
94}
95impl fmt::Display for Unknown {
96    #[inline]
97    fn fmt(&self, fmt: &mut fmt::Formatter<'_>) -> fmt::Result {
98        fmt::Display::fmt(&self.0, fmt)
99    }
100}