Skip to main content

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