nominal_api/conjure/objects/event/
sort_field.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 SortField {
17 #[serde(rename = "START_TIME")]
18 StartTime,
19 #[serde(rename = "END_TIME")]
20 EndTime,
21 #[serde(rename = "DURATION")]
22 Duration,
23 #[serde(rename = "DISPOSITION_STATUS")]
24 DispositionStatus,
25 #[serde(rename = "PRIORITY")]
26 Priority,
27 #[serde(rename = "EVENT_NAME")]
28 EventName,
29 #[serde(untagged)]
31 Unknown(Unknown),
32}
33impl SortField {
34 #[inline]
36 pub fn as_str(&self) -> &str {
37 match self {
38 SortField::StartTime => "START_TIME",
39 SortField::EndTime => "END_TIME",
40 SortField::Duration => "DURATION",
41 SortField::DispositionStatus => "DISPOSITION_STATUS",
42 SortField::Priority => "PRIORITY",
43 SortField::EventName => "EVENT_NAME",
44 SortField::Unknown(v) => &*v,
45 }
46 }
47}
48impl fmt::Display for SortField {
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 SortField {
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 SortField {
59 type Err = conjure_object::plain::ParseEnumError;
60 #[inline]
61 fn from_str(v: &str) -> Result<SortField, conjure_object::plain::ParseEnumError> {
62 match v {
63 "START_TIME" => Ok(SortField::StartTime),
64 "END_TIME" => Ok(SortField::EndTime),
65 "DURATION" => Ok(SortField::Duration),
66 "DISPOSITION_STATUS" => Ok(SortField::DispositionStatus),
67 "PRIORITY" => Ok(SortField::Priority),
68 "EVENT_NAME" => Ok(SortField::EventName),
69 v => v.parse().map(|v| SortField::Unknown(Unknown(v))),
70 }
71 }
72}
73impl conjure_object::FromPlain for SortField {
74 type Err = conjure_object::plain::ParseEnumError;
75 #[inline]
76 fn from_plain(v: &str) -> Result<SortField, conjure_object::plain::ParseEnumError> {
77 v.parse()
78 }
79}
80#[derive(
82 Debug,
83 Clone,
84 PartialEq,
85 Eq,
86 PartialOrd,
87 Ord,
88 Hash,
89 conjure_object::serde::Deserialize,
90 conjure_object::serde::Serialize,
91)]
92#[serde(crate = "conjure_object::serde", transparent)]
93pub struct Unknown(conjure_object::private::Variant);
94impl std::ops::Deref for Unknown {
95 type Target = str;
96 #[inline]
97 fn deref(&self) -> &str {
98 &self.0
99 }
100}
101impl fmt::Display for Unknown {
102 #[inline]
103 fn fmt(&self, fmt: &mut fmt::Formatter<'_>) -> fmt::Result {
104 fmt::Display::fmt(&self.0, fmt)
105 }
106}