aws_sdk_quicksight/types/
_pivot_table_field_options.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct PivotTableFieldOptions {
7 pub selected_field_options: ::std::option::Option<::std::vec::Vec<crate::types::PivotTableFieldOption>>,
9 pub data_path_options: ::std::option::Option<::std::vec::Vec<crate::types::PivotTableDataPathOption>>,
11 pub collapse_state_options: ::std::option::Option<::std::vec::Vec<crate::types::PivotTableFieldCollapseStateOption>>,
13}
14impl PivotTableFieldOptions {
15 pub fn selected_field_options(&self) -> &[crate::types::PivotTableFieldOption] {
19 self.selected_field_options.as_deref().unwrap_or_default()
20 }
21 pub fn data_path_options(&self) -> &[crate::types::PivotTableDataPathOption] {
25 self.data_path_options.as_deref().unwrap_or_default()
26 }
27 pub fn collapse_state_options(&self) -> &[crate::types::PivotTableFieldCollapseStateOption] {
31 self.collapse_state_options.as_deref().unwrap_or_default()
32 }
33}
34impl PivotTableFieldOptions {
35 pub fn builder() -> crate::types::builders::PivotTableFieldOptionsBuilder {
37 crate::types::builders::PivotTableFieldOptionsBuilder::default()
38 }
39}
40
41#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
43#[non_exhaustive]
44pub struct PivotTableFieldOptionsBuilder {
45 pub(crate) selected_field_options: ::std::option::Option<::std::vec::Vec<crate::types::PivotTableFieldOption>>,
46 pub(crate) data_path_options: ::std::option::Option<::std::vec::Vec<crate::types::PivotTableDataPathOption>>,
47 pub(crate) collapse_state_options: ::std::option::Option<::std::vec::Vec<crate::types::PivotTableFieldCollapseStateOption>>,
48}
49impl PivotTableFieldOptionsBuilder {
50 pub fn selected_field_options(mut self, input: crate::types::PivotTableFieldOption) -> Self {
56 let mut v = self.selected_field_options.unwrap_or_default();
57 v.push(input);
58 self.selected_field_options = ::std::option::Option::Some(v);
59 self
60 }
61 pub fn set_selected_field_options(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::PivotTableFieldOption>>) -> Self {
63 self.selected_field_options = input;
64 self
65 }
66 pub fn get_selected_field_options(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::PivotTableFieldOption>> {
68 &self.selected_field_options
69 }
70 pub fn data_path_options(mut self, input: crate::types::PivotTableDataPathOption) -> Self {
76 let mut v = self.data_path_options.unwrap_or_default();
77 v.push(input);
78 self.data_path_options = ::std::option::Option::Some(v);
79 self
80 }
81 pub fn set_data_path_options(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::PivotTableDataPathOption>>) -> Self {
83 self.data_path_options = input;
84 self
85 }
86 pub fn get_data_path_options(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::PivotTableDataPathOption>> {
88 &self.data_path_options
89 }
90 pub fn collapse_state_options(mut self, input: crate::types::PivotTableFieldCollapseStateOption) -> Self {
96 let mut v = self.collapse_state_options.unwrap_or_default();
97 v.push(input);
98 self.collapse_state_options = ::std::option::Option::Some(v);
99 self
100 }
101 pub fn set_collapse_state_options(
103 mut self,
104 input: ::std::option::Option<::std::vec::Vec<crate::types::PivotTableFieldCollapseStateOption>>,
105 ) -> Self {
106 self.collapse_state_options = input;
107 self
108 }
109 pub fn get_collapse_state_options(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::PivotTableFieldCollapseStateOption>> {
111 &self.collapse_state_options
112 }
113 pub fn build(self) -> crate::types::PivotTableFieldOptions {
115 crate::types::PivotTableFieldOptions {
116 selected_field_options: self.selected_field_options,
117 data_path_options: self.data_path_options,
118 collapse_state_options: self.collapse_state_options,
119 }
120 }
121}