nominal_api/conjure/objects/scout/chartdefinition/api/
spatial_splat_mode.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 SpatialSplatMode {
18 #[serde(rename = "BALL")]
19 Ball,
20 #[serde(rename = "PARABOLIC")]
21 Parabolic,
22 #[serde(rename = "DISC")]
23 Disc,
24 #[serde(untagged)]
26 Unknown(Unknown),
27}
28impl SpatialSplatMode {
29 #[inline]
31 pub fn as_str(&self) -> &str {
32 match self {
33 SpatialSplatMode::Ball => "BALL",
34 SpatialSplatMode::Parabolic => "PARABOLIC",
35 SpatialSplatMode::Disc => "DISC",
36 SpatialSplatMode::Unknown(v) => &*v,
37 }
38 }
39}
40impl fmt::Display for SpatialSplatMode {
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 SpatialSplatMode {
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 SpatialSplatMode {
51 type Err = conjure_object::plain::ParseEnumError;
52 #[inline]
53 fn from_str(
54 v: &str,
55 ) -> Result<SpatialSplatMode, conjure_object::plain::ParseEnumError> {
56 match v {
57 "BALL" => Ok(SpatialSplatMode::Ball),
58 "PARABOLIC" => Ok(SpatialSplatMode::Parabolic),
59 "DISC" => Ok(SpatialSplatMode::Disc),
60 v => v.parse().map(|v| SpatialSplatMode::Unknown(Unknown(v))),
61 }
62 }
63}
64impl conjure_object::FromPlain for SpatialSplatMode {
65 type Err = conjure_object::plain::ParseEnumError;
66 #[inline]
67 fn from_plain(
68 v: &str,
69 ) -> Result<SpatialSplatMode, conjure_object::plain::ParseEnumError> {
70 v.parse()
71 }
72}
73#[derive(
75 Debug,
76 Clone,
77 PartialEq,
78 Eq,
79 PartialOrd,
80 Ord,
81 Hash,
82 conjure_object::serde::Deserialize,
83 conjure_object::serde::Serialize,
84)]
85#[serde(crate = "conjure_object::serde", transparent)]
86pub struct Unknown(conjure_object::private::Variant);
87impl std::ops::Deref for Unknown {
88 type Target = str;
89 #[inline]
90 fn deref(&self) -> &str {
91 &self.0
92 }
93}
94impl fmt::Display for Unknown {
95 #[inline]
96 fn fmt(&self, fmt: &mut fmt::Formatter<'_>) -> fmt::Result {
97 fmt::Display::fmt(&self.0, fmt)
98 }
99}