Skip to main content

nominal_api/conjure/objects/scout/compute/api/
window_symmetry.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)]
15#[serde(crate = "conjure_object::serde")]
16pub enum WindowSymmetry {
17    /// Generates dft-even/periodic window values.
18    #[serde(rename = "DFT_EVEN")]
19    DftEven,
20    /// Generates symmetric window values.
21    #[serde(rename = "SYMMETRIC")]
22    Symmetric,
23    /// An unknown variant.
24    #[serde(untagged)]
25    Unknown(Unknown),
26}
27impl WindowSymmetry {
28    /// Returns the string representation of the enum.
29    #[inline]
30    pub fn as_str(&self) -> &str {
31        match self {
32            WindowSymmetry::DftEven => "DFT_EVEN",
33            WindowSymmetry::Symmetric => "SYMMETRIC",
34            WindowSymmetry::Unknown(v) => &*v,
35        }
36    }
37}
38impl fmt::Display for WindowSymmetry {
39    fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
40        fmt::Display::fmt(self.as_str(), fmt)
41    }
42}
43impl conjure_object::Plain for WindowSymmetry {
44    fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
45        conjure_object::Plain::fmt(self.as_str(), fmt)
46    }
47}
48impl str::FromStr for WindowSymmetry {
49    type Err = conjure_object::plain::ParseEnumError;
50    #[inline]
51    fn from_str(
52        v: &str,
53    ) -> Result<WindowSymmetry, conjure_object::plain::ParseEnumError> {
54        match v {
55            "DFT_EVEN" => Ok(WindowSymmetry::DftEven),
56            "SYMMETRIC" => Ok(WindowSymmetry::Symmetric),
57            v => v.parse().map(|v| WindowSymmetry::Unknown(Unknown(v))),
58        }
59    }
60}
61impl conjure_object::FromPlain for WindowSymmetry {
62    type Err = conjure_object::plain::ParseEnumError;
63    #[inline]
64    fn from_plain(
65        v: &str,
66    ) -> Result<WindowSymmetry, conjure_object::plain::ParseEnumError> {
67        v.parse()
68    }
69}
70///An unknown variant of the WindowSymmetry enum.
71#[derive(
72    Debug,
73    Clone,
74    PartialEq,
75    Eq,
76    PartialOrd,
77    Ord,
78    Hash,
79    conjure_object::serde::Deserialize,
80    conjure_object::serde::Serialize,
81)]
82#[serde(crate = "conjure_object::serde", transparent)]
83pub struct Unknown(conjure_object::private::Variant);
84impl std::ops::Deref for Unknown {
85    type Target = str;
86    #[inline]
87    fn deref(&self) -> &str {
88        &self.0
89    }
90}
91impl fmt::Display for Unknown {
92    #[inline]
93    fn fmt(&self, fmt: &mut fmt::Formatter<'_>) -> fmt::Result {
94        fmt::Display::fmt(&self.0, fmt)
95    }
96}