nominal_api/conjure/objects/scout/chartdefinition/api/
spatial_time_unit.rs1#![allow(deprecated)]
2use std::fmt;
3use std::str;
4#[derive(
6 Debug,
7 Clone,
8 PartialEq,
9 Eq,
10 PartialOrd,
11 Ord,
12 Hash,
13 conjure_object::serde::Deserialize,
14 conjure_object::serde::Serialize,
15)]
16#[serde(crate = "conjure_object::serde")]
17pub enum SpatialTimeUnit {
18 #[serde(rename = "NS")]
19 Ns,
20 #[serde(rename = "US")]
21 Us,
22 #[serde(rename = "MS")]
23 Ms,
24 #[serde(rename = "S")]
25 S,
26 #[serde(untagged)]
28 Unknown(Unknown),
29}
30impl SpatialTimeUnit {
31 #[inline]
33 pub fn as_str(&self) -> &str {
34 match self {
35 SpatialTimeUnit::Ns => "NS",
36 SpatialTimeUnit::Us => "US",
37 SpatialTimeUnit::Ms => "MS",
38 SpatialTimeUnit::S => "S",
39 SpatialTimeUnit::Unknown(v) => &*v,
40 }
41 }
42}
43impl fmt::Display for SpatialTimeUnit {
44 fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
45 fmt::Display::fmt(self.as_str(), fmt)
46 }
47}
48impl conjure_object::Plain for SpatialTimeUnit {
49 fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
50 conjure_object::Plain::fmt(self.as_str(), fmt)
51 }
52}
53impl str::FromStr for SpatialTimeUnit {
54 type Err = conjure_object::plain::ParseEnumError;
55 #[inline]
56 fn from_str(
57 v: &str,
58 ) -> Result<SpatialTimeUnit, conjure_object::plain::ParseEnumError> {
59 match v {
60 "NS" => Ok(SpatialTimeUnit::Ns),
61 "US" => Ok(SpatialTimeUnit::Us),
62 "MS" => Ok(SpatialTimeUnit::Ms),
63 "S" => Ok(SpatialTimeUnit::S),
64 v => v.parse().map(|v| SpatialTimeUnit::Unknown(Unknown(v))),
65 }
66 }
67}
68impl conjure_object::FromPlain for SpatialTimeUnit {
69 type Err = conjure_object::plain::ParseEnumError;
70 #[inline]
71 fn from_plain(
72 v: &str,
73 ) -> Result<SpatialTimeUnit, conjure_object::plain::ParseEnumError> {
74 v.parse()
75 }
76}
77#[derive(
79 Debug,
80 Clone,
81 PartialEq,
82 Eq,
83 PartialOrd,
84 Ord,
85 Hash,
86 conjure_object::serde::Deserialize,
87 conjure_object::serde::Serialize,
88)]
89#[serde(crate = "conjure_object::serde", transparent)]
90pub struct Unknown(conjure_object::private::Variant);
91impl std::ops::Deref for Unknown {
92 type Target = str;
93 #[inline]
94 fn deref(&self) -> &str {
95 &self.0
96 }
97}
98impl fmt::Display for Unknown {
99 #[inline]
100 fn fmt(&self, fmt: &mut fmt::Formatter<'_>) -> fmt::Result {
101 fmt::Display::fmt(&self.0, fmt)
102 }
103}