#[derive(
Debug,
Clone,
conjure_object::serde::Serialize,
conjure_object::serde::Deserialize,
PartialEq,
Eq,
PartialOrd,
Ord,
Hash
)]
#[serde(crate = "conjure_object::serde")]
#[conjure_object::private::staged_builder::staged_builder]
#[builder(crate = conjure_object::private::staged_builder, update, inline)]
pub struct HistogramPriorityBucket {
#[builder(
custom(type = super::super::super::super::api::Timestamp, convert = Box::new)
)]
#[serde(rename = "startInclusive")]
start_inclusive: Box<super::super::super::super::api::Timestamp>,
#[builder(
custom(type = super::super::super::super::api::Timestamp, convert = Box::new)
)]
#[serde(rename = "endExclusive")]
end_exclusive: Box<super::super::super::super::api::Timestamp>,
#[builder(
default,
map(key(type = super::super::super::api::Priority), value(type = i32))
)]
#[serde(
rename = "counts",
skip_serializing_if = "std::collections::BTreeMap::is_empty",
default
)]
counts: std::collections::BTreeMap<super::super::super::api::Priority, i32>,
}
impl HistogramPriorityBucket {
#[inline]
pub fn new(
start_inclusive: super::super::super::super::api::Timestamp,
end_exclusive: super::super::super::super::api::Timestamp,
) -> Self {
Self::builder()
.start_inclusive(start_inclusive)
.end_exclusive(end_exclusive)
.build()
}
#[inline]
pub fn start_inclusive(&self) -> &super::super::super::super::api::Timestamp {
&*self.start_inclusive
}
#[inline]
pub fn end_exclusive(&self) -> &super::super::super::super::api::Timestamp {
&*self.end_exclusive
}
#[inline]
pub fn counts(
&self,
) -> &std::collections::BTreeMap<super::super::super::api::Priority, i32> {
&self.counts
}
}