aws_sdk_route53domains/operation/view_billing/
_view_billing_output.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct ViewBillingOutput {
7 pub next_page_marker: ::std::option::Option<::std::string::String>,
9 pub billing_records: ::std::option::Option<::std::vec::Vec<crate::types::BillingRecord>>,
11 _request_id: Option<String>,
12}
13impl ViewBillingOutput {
14 pub fn next_page_marker(&self) -> ::std::option::Option<&str> {
16 self.next_page_marker.as_deref()
17 }
18 pub fn billing_records(&self) -> &[crate::types::BillingRecord] {
22 self.billing_records.as_deref().unwrap_or_default()
23 }
24}
25impl ::aws_types::request_id::RequestId for ViewBillingOutput {
26 fn request_id(&self) -> Option<&str> {
27 self._request_id.as_deref()
28 }
29}
30impl ViewBillingOutput {
31 pub fn builder() -> crate::operation::view_billing::builders::ViewBillingOutputBuilder {
33 crate::operation::view_billing::builders::ViewBillingOutputBuilder::default()
34 }
35}
36
37#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
39#[non_exhaustive]
40pub struct ViewBillingOutputBuilder {
41 pub(crate) next_page_marker: ::std::option::Option<::std::string::String>,
42 pub(crate) billing_records: ::std::option::Option<::std::vec::Vec<crate::types::BillingRecord>>,
43 _request_id: Option<String>,
44}
45impl ViewBillingOutputBuilder {
46 pub fn next_page_marker(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
48 self.next_page_marker = ::std::option::Option::Some(input.into());
49 self
50 }
51 pub fn set_next_page_marker(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
53 self.next_page_marker = input;
54 self
55 }
56 pub fn get_next_page_marker(&self) -> &::std::option::Option<::std::string::String> {
58 &self.next_page_marker
59 }
60 pub fn billing_records(mut self, input: crate::types::BillingRecord) -> Self {
66 let mut v = self.billing_records.unwrap_or_default();
67 v.push(input);
68 self.billing_records = ::std::option::Option::Some(v);
69 self
70 }
71 pub fn set_billing_records(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::BillingRecord>>) -> Self {
73 self.billing_records = input;
74 self
75 }
76 pub fn get_billing_records(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::BillingRecord>> {
78 &self.billing_records
79 }
80 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
81 self._request_id = Some(request_id.into());
82 self
83 }
84
85 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
86 self._request_id = request_id;
87 self
88 }
89 pub fn build(self) -> crate::operation::view_billing::ViewBillingOutput {
91 crate::operation::view_billing::ViewBillingOutput {
92 next_page_marker: self.next_page_marker,
93 billing_records: self.billing_records,
94 _request_id: self._request_id,
95 }
96 }
97}