Skip to main content

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