nominal_api/conjure/objects/scout/compute/api/
threshold_operator.rs1#![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 #[serde(untagged)]
31 Unknown(Unknown),
32}
33impl ThresholdOperator {
34 #[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#[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}