Skip to main content

nominal_api/conjure/objects/scout/compute/api/
scatter3d.rs

1#[derive(
2    Debug,
3    Clone,
4    conjure_object::serde::Serialize,
5    conjure_object::serde::Deserialize,
6    conjure_object::private::DeriveWith
7)]
8#[serde(crate = "conjure_object::serde")]
9#[derive_with(PartialEq, Eq, PartialOrd, Ord, Hash)]
10#[conjure_object::private::staged_builder::staged_builder]
11#[builder(crate = conjure_object::private::staged_builder, update, inline)]
12pub struct Scatter3d {
13    #[builder(custom(type = super::NumericSeries, convert = Box::new))]
14    #[serde(rename = "x")]
15    x: Box<super::NumericSeries>,
16    #[builder(custom(type = super::NumericSeries, convert = Box::new))]
17    #[serde(rename = "y")]
18    y: Box<super::NumericSeries>,
19    #[builder(custom(type = super::NumericSeries, convert = Box::new))]
20    #[serde(rename = "z")]
21    z: Box<super::NumericSeries>,
22    #[builder(default, into)]
23    #[serde(rename = "driverSeries", skip_serializing_if = "Option::is_none", default)]
24    driver_series: Option<super::DriverSeries3d>,
25}
26impl Scatter3d {
27    /// Constructs a new instance of the type.
28    #[inline]
29    pub fn new(
30        x: super::NumericSeries,
31        y: super::NumericSeries,
32        z: super::NumericSeries,
33    ) -> Self {
34        Self::builder().x(x).y(y).z(z).build()
35    }
36    #[inline]
37    pub fn x(&self) -> &super::NumericSeries {
38        &*self.x
39    }
40    #[inline]
41    pub fn y(&self) -> &super::NumericSeries {
42        &*self.y
43    }
44    #[inline]
45    pub fn z(&self) -> &super::NumericSeries {
46        &*self.z
47    }
48    #[inline]
49    pub fn driver_series(&self) -> Option<&super::DriverSeries3d> {
50        self.driver_series.as_ref().map(|o| &*o)
51    }
52}