nominal_api/conjure/objects/persistent/compute/api/
unavailable_result_configuration_reason.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 UnavailableResultConfigurationReason {
17 #[serde(rename = "APPENDS_NOT_SUPPORTED_FOR_COMPUTE")]
18 AppendsNotSupportedForCompute,
19 #[serde(rename = "TOO_MANY_POINTS_FOR_UNDECIMATED_APPENDS")]
20 TooManyPointsForUndecimatedAppends,
21 #[serde(untagged)]
23 Unknown(Unknown),
24}
25impl UnavailableResultConfigurationReason {
26 #[inline]
28 pub fn as_str(&self) -> &str {
29 match self {
30 UnavailableResultConfigurationReason::AppendsNotSupportedForCompute => {
31 "APPENDS_NOT_SUPPORTED_FOR_COMPUTE"
32 }
33 UnavailableResultConfigurationReason::TooManyPointsForUndecimatedAppends => {
34 "TOO_MANY_POINTS_FOR_UNDECIMATED_APPENDS"
35 }
36 UnavailableResultConfigurationReason::Unknown(v) => &*v,
37 }
38 }
39}
40impl fmt::Display for UnavailableResultConfigurationReason {
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 UnavailableResultConfigurationReason {
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 UnavailableResultConfigurationReason {
51 type Err = conjure_object::plain::ParseEnumError;
52 #[inline]
53 fn from_str(
54 v: &str,
55 ) -> Result<
56 UnavailableResultConfigurationReason,
57 conjure_object::plain::ParseEnumError,
58 > {
59 match v {
60 "APPENDS_NOT_SUPPORTED_FOR_COMPUTE" => {
61 Ok(UnavailableResultConfigurationReason::AppendsNotSupportedForCompute)
62 }
63 "TOO_MANY_POINTS_FOR_UNDECIMATED_APPENDS" => {
64 Ok(
65 UnavailableResultConfigurationReason::TooManyPointsForUndecimatedAppends,
66 )
67 }
68 v => {
69 v.parse()
70 .map(|v| UnavailableResultConfigurationReason::Unknown(Unknown(v)))
71 }
72 }
73 }
74}
75impl conjure_object::FromPlain for UnavailableResultConfigurationReason {
76 type Err = conjure_object::plain::ParseEnumError;
77 #[inline]
78 fn from_plain(
79 v: &str,
80 ) -> Result<
81 UnavailableResultConfigurationReason,
82 conjure_object::plain::ParseEnumError,
83 > {
84 v.parse()
85 }
86}
87#[derive(
89 Debug,
90 Clone,
91 PartialEq,
92 Eq,
93 PartialOrd,
94 Ord,
95 Hash,
96 conjure_object::serde::Deserialize,
97 conjure_object::serde::Serialize,
98)]
99#[serde(crate = "conjure_object::serde", transparent)]
100pub struct Unknown(conjure_object::private::Variant);
101impl std::ops::Deref for Unknown {
102 type Target = str;
103 #[inline]
104 fn deref(&self) -> &str {
105 &self.0
106 }
107}
108impl fmt::Display for Unknown {
109 #[inline]
110 fn fmt(&self, fmt: &mut fmt::Formatter<'_>) -> fmt::Result {
111 fmt::Display::fmt(&self.0, fmt)
112 }
113}