nominal_api/conjure/objects/scout/compute/resolved/api/
arithmetic_series_node.rs1#[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 ArithmeticSeriesNode {
13 #[builder(
14 default,
15 map(
16 key(type = super::super::super::api::LocalVariableName),
17 value(type = super::NumericSeriesNode)
18 )
19 )]
20 #[serde(
21 rename = "inputs",
22 skip_serializing_if = "std::collections::BTreeMap::is_empty",
23 default
24 )]
25 inputs: std::collections::BTreeMap<
26 super::super::super::api::LocalVariableName,
27 super::NumericSeriesNode,
28 >,
29 #[builder(into)]
30 #[serde(rename = "expression")]
31 expression: String,
32 #[builder(custom(type = super::FillStrategy, convert = Box::new))]
33 #[serde(rename = "fillStrategy")]
34 fill_strategy: Box<super::FillStrategy>,
35}
36impl ArithmeticSeriesNode {
37 #[inline]
39 pub fn new(
40 expression: impl Into<String>,
41 fill_strategy: super::FillStrategy,
42 ) -> Self {
43 Self::builder().expression(expression).fill_strategy(fill_strategy).build()
44 }
45 #[inline]
46 pub fn inputs(
47 &self,
48 ) -> &std::collections::BTreeMap<
49 super::super::super::api::LocalVariableName,
50 super::NumericSeriesNode,
51 > {
52 &self.inputs
53 }
54 #[inline]
55 pub fn expression(&self) -> &str {
56 &*self.expression
57 }
58 #[inline]
59 pub fn fill_strategy(&self) -> &super::FillStrategy {
60 &*self.fill_strategy
61 }
62}