1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.

/// <p>A decimal parameter for a dataset.</p>
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct DecimalDatasetParameter {
    /// <p>An identifier for the decimal parameter created in the dataset.</p>
    pub id: ::std::string::String,
    /// <p>The name of the decimal parameter that is created in the dataset.</p>
    pub name: ::std::string::String,
    /// <p>The value type of the dataset parameter. Valid values are <code>single value</code> or <code>multi value</code>.</p>
    pub value_type: crate::types::DatasetParameterValueType,
    /// <p>A list of default values for a given decimal parameter. This structure only accepts static values.</p>
    pub default_values: ::std::option::Option<crate::types::DecimalDatasetParameterDefaultValues>,
}
impl DecimalDatasetParameter {
    /// <p>An identifier for the decimal parameter created in the dataset.</p>
    pub fn id(&self) -> &str {
        use std::ops::Deref;
        self.id.deref()
    }
    /// <p>The name of the decimal parameter that is created in the dataset.</p>
    pub fn name(&self) -> &str {
        use std::ops::Deref;
        self.name.deref()
    }
    /// <p>The value type of the dataset parameter. Valid values are <code>single value</code> or <code>multi value</code>.</p>
    pub fn value_type(&self) -> &crate::types::DatasetParameterValueType {
        &self.value_type
    }
    /// <p>A list of default values for a given decimal parameter. This structure only accepts static values.</p>
    pub fn default_values(&self) -> ::std::option::Option<&crate::types::DecimalDatasetParameterDefaultValues> {
        self.default_values.as_ref()
    }
}
impl DecimalDatasetParameter {
    /// Creates a new builder-style object to manufacture [`DecimalDatasetParameter`](crate::types::DecimalDatasetParameter).
    pub fn builder() -> crate::types::builders::DecimalDatasetParameterBuilder {
        crate::types::builders::DecimalDatasetParameterBuilder::default()
    }
}

/// A builder for [`DecimalDatasetParameter`](crate::types::DecimalDatasetParameter).
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct DecimalDatasetParameterBuilder {
    pub(crate) id: ::std::option::Option<::std::string::String>,
    pub(crate) name: ::std::option::Option<::std::string::String>,
    pub(crate) value_type: ::std::option::Option<crate::types::DatasetParameterValueType>,
    pub(crate) default_values: ::std::option::Option<crate::types::DecimalDatasetParameterDefaultValues>,
}
impl DecimalDatasetParameterBuilder {
    /// <p>An identifier for the decimal parameter created in the dataset.</p>
    /// This field is required.
    pub fn id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.id = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>An identifier for the decimal parameter created in the dataset.</p>
    pub fn set_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.id = input;
        self
    }
    /// <p>An identifier for the decimal parameter created in the dataset.</p>
    pub fn get_id(&self) -> &::std::option::Option<::std::string::String> {
        &self.id
    }
    /// <p>The name of the decimal parameter that is created in the dataset.</p>
    /// This field is required.
    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.name = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The name of the decimal parameter that is created in the dataset.</p>
    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.name = input;
        self
    }
    /// <p>The name of the decimal parameter that is created in the dataset.</p>
    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
        &self.name
    }
    /// <p>The value type of the dataset parameter. Valid values are <code>single value</code> or <code>multi value</code>.</p>
    /// This field is required.
    pub fn value_type(mut self, input: crate::types::DatasetParameterValueType) -> Self {
        self.value_type = ::std::option::Option::Some(input);
        self
    }
    /// <p>The value type of the dataset parameter. Valid values are <code>single value</code> or <code>multi value</code>.</p>
    pub fn set_value_type(mut self, input: ::std::option::Option<crate::types::DatasetParameterValueType>) -> Self {
        self.value_type = input;
        self
    }
    /// <p>The value type of the dataset parameter. Valid values are <code>single value</code> or <code>multi value</code>.</p>
    pub fn get_value_type(&self) -> &::std::option::Option<crate::types::DatasetParameterValueType> {
        &self.value_type
    }
    /// <p>A list of default values for a given decimal parameter. This structure only accepts static values.</p>
    pub fn default_values(mut self, input: crate::types::DecimalDatasetParameterDefaultValues) -> Self {
        self.default_values = ::std::option::Option::Some(input);
        self
    }
    /// <p>A list of default values for a given decimal parameter. This structure only accepts static values.</p>
    pub fn set_default_values(mut self, input: ::std::option::Option<crate::types::DecimalDatasetParameterDefaultValues>) -> Self {
        self.default_values = input;
        self
    }
    /// <p>A list of default values for a given decimal parameter. This structure only accepts static values.</p>
    pub fn get_default_values(&self) -> &::std::option::Option<crate::types::DecimalDatasetParameterDefaultValues> {
        &self.default_values
    }
    /// Consumes the builder and constructs a [`DecimalDatasetParameter`](crate::types::DecimalDatasetParameter).
    /// This method will fail if any of the following fields are not set:
    /// - [`id`](crate::types::builders::DecimalDatasetParameterBuilder::id)
    /// - [`name`](crate::types::builders::DecimalDatasetParameterBuilder::name)
    /// - [`value_type`](crate::types::builders::DecimalDatasetParameterBuilder::value_type)
    pub fn build(self) -> ::std::result::Result<crate::types::DecimalDatasetParameter, ::aws_smithy_types::error::operation::BuildError> {
        ::std::result::Result::Ok(crate::types::DecimalDatasetParameter {
            id: self.id.ok_or_else(|| {
                ::aws_smithy_types::error::operation::BuildError::missing_field(
                    "id",
                    "id was not specified but it is required when building DecimalDatasetParameter",
                )
            })?,
            name: self.name.ok_or_else(|| {
                ::aws_smithy_types::error::operation::BuildError::missing_field(
                    "name",
                    "name was not specified but it is required when building DecimalDatasetParameter",
                )
            })?,
            value_type: self.value_type.ok_or_else(|| {
                ::aws_smithy_types::error::operation::BuildError::missing_field(
                    "value_type",
                    "value_type was not specified but it is required when building DecimalDatasetParameter",
                )
            })?,
            default_values: self.default_values,
        })
    }
}