Skip to main content

nominal_api/conjure/objects/scout/catalog/
bounds.rs

1#[derive(
2    Debug,
3    Clone,
4    conjure_object::serde::Serialize,
5    conjure_object::serde::Deserialize,
6    PartialEq,
7    Eq,
8    PartialOrd,
9    Ord,
10    Hash
11)]
12#[serde(crate = "conjure_object::serde")]
13#[conjure_object::private::staged_builder::staged_builder]
14#[builder(crate = conjure_object::private::staged_builder, update, inline)]
15pub struct Bounds {
16    #[builder(custom(type = super::super::super::api::Timestamp, convert = Box::new))]
17    #[serde(rename = "start")]
18    start: Box<super::super::super::api::Timestamp>,
19    #[builder(custom(type = super::super::super::api::Timestamp, convert = Box::new))]
20    #[serde(rename = "end")]
21    end: Box<super::super::super::api::Timestamp>,
22    #[serde(rename = "type")]
23    type_: super::super::super::datasource::TimestampType,
24}
25impl Bounds {
26    /// Constructs a new instance of the type.
27    #[inline]
28    pub fn new(
29        start: super::super::super::api::Timestamp,
30        end: super::super::super::api::Timestamp,
31        type_: super::super::super::datasource::TimestampType,
32    ) -> Self {
33        Self::builder().start(start).end(end).type_(type_).build()
34    }
35    #[inline]
36    pub fn start(&self) -> &super::super::super::api::Timestamp {
37        &*self.start
38    }
39    #[inline]
40    pub fn end(&self) -> &super::super::super::api::Timestamp {
41        &*self.end
42    }
43    #[inline]
44    pub fn type_(&self) -> &super::super::super::datasource::TimestampType {
45        &self.type_
46    }
47}