Client Test

Client Test

rev. dfb5149b65b7bcc09edd15b8e071ad43b5ac5943

Files changed:

tmp-codegen-diff/codegen-client-test/rpcv2Cbor/rust-client-codegen/src/serde_util.rs

@@ -1,1 +21,23 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* ErrorCorrection.kt:126 */
    2      3   
pub(crate) fn validation_exception_correct_errors(
    3      4   
    mut builder: crate::types::error::builders::ValidationErrorBuilder,
    4      5   
) -> crate::types::error::builders::ValidationErrorBuilder {
    5      6   
    if builder.message.is_none() {
    6      7   
        builder.message = Some(Default::default())
    7      8   
    }
    8      9   
    builder
    9     10   
}
   10     11   
          12  +
/* ErrorCorrection.kt:126 */
   11     13   
pub(crate) fn validation_exception_field_correct_errors(
   12     14   
    mut builder: crate::types::builders::ValidationExceptionFieldBuilder,
   13     15   
) -> crate::types::builders::ValidationExceptionFieldBuilder {
   14     16   
    if builder.path.is_none() {
   15     17   
        builder.path = Some(Default::default())
   16     18   
    }
   17     19   
    if builder.message.is_none() {
   18     20   
        builder.message = Some(Default::default())
   19     21   
    }
   20     22   
    builder

tmp-codegen-diff/codegen-client-test/rpcv2Cbor/rust-client-codegen/src/types.rs

@@ -1,1 +46,66 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* CodegenDelegator.kt:255 */
    2      3   
pub use crate::types::_validation_exception_field::ValidationExceptionField;
    3      4   
           5  +
/* CodegenDelegator.kt:255 */
    4      6   
pub use crate::types::_test_enum::TestEnum;
    5      7   
           8  +
/* CodegenDelegator.kt:255 */
    6      9   
pub use crate::types::_client_optional_defaults::ClientOptionalDefaults;
    7     10   
          11  +
/* CodegenDelegator.kt:255 */
    8     12   
pub use crate::types::_defaults::Defaults;
    9     13   
          14  +
/* CodegenDelegator.kt:255 */
   10     15   
pub use crate::types::_complex_nested_error_data::ComplexNestedErrorData;
   11     16   
          17  +
/* CodegenDelegator.kt:255 */
   12     18   
pub use crate::types::_recursive_shapes_input_output_nested1::RecursiveShapesInputOutputNested1;
   13     19   
          20  +
/* CodegenDelegator.kt:255 */
   14     21   
pub use crate::types::_recursive_shapes_input_output_nested2::RecursiveShapesInputOutputNested2;
   15     22   
          23  +
/* CodegenDelegator.kt:255 */
   16     24   
pub use crate::types::_greeting_struct::GreetingStruct;
   17     25   
          26  +
/* CodegenDelegator.kt:255 */
   18     27   
pub use crate::types::_structure_list_member::StructureListMember;
   19     28   
          29  +
/* CodegenDelegator.kt:255 */
   20     30   
pub use crate::types::_foo_enum::FooEnum;
   21     31   
          32  +
/* RustModule.kt:172 */
   22     33   
mod _client_optional_defaults;
   23     34   
          35  +
/* RustModule.kt:172 */
   24     36   
mod _complex_nested_error_data;
   25     37   
          38  +
/* RustModule.kt:172 */
   26     39   
mod _defaults;
   27     40   
          41  +
/* RustModule.kt:172 */
   28     42   
mod _foo_enum;
   29     43   
          44  +
/* RustModule.kt:172 */
   30     45   
mod _greeting_struct;
   31     46   
          47  +
/* RustModule.kt:172 */
   32     48   
mod _recursive_shapes_input_output_nested1;
   33     49   
          50  +
/* RustModule.kt:172 */
   34     51   
mod _recursive_shapes_input_output_nested2;
   35     52   
          53  +
/* RustModule.kt:172 */
   36     54   
mod _structure_list_member;
   37     55   
          56  +
/* RustModule.kt:172 */
   38     57   
mod _test_enum;
   39     58   
          59  +
/* RustModule.kt:172 */
   40     60   
mod _validation_exception_field;
   41     61   
   42         -
/// Builders
          62  +
/// /* CodegenDelegator.kt:51 */Builders
   43     63   
pub mod builders;
   44     64   
   45         -
/// Error types that RpcV2 Protocol Service can respond with.
          65  +
/// /* ClientRustModule.kt:121 */Error types that RpcV2 Protocol Service can respond with.
   46     66   
pub mod error;

tmp-codegen-diff/codegen-client-test/rpcv2Cbor/rust-client-codegen/src/types/_client_optional_defaults.rs

@@ -1,1 +47,88 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct ClientOptionalDefaults {
           8  +
pub /* StructureGenerator.kt:201 */ struct ClientOptionalDefaults {
           9  +
    /* StructureGenerator.kt:231 */
    6     10   
    #[allow(missing_docs)] // documentation missing in model
    7     11   
    pub member: ::std::option::Option<i32>,
          12  +
    /* StructureGenerator.kt:201 */
    8     13   
}
          14  +
/* StructureGenerator.kt:135 */
    9     15   
impl ClientOptionalDefaults {
          16  +
    /* StructureGenerator.kt:231 */
   10     17   
    #[allow(missing_docs)] // documentation missing in model
          18  +
                           /* StructureGenerator.kt:166 */
   11     19   
    pub fn member(&self) -> ::std::option::Option<i32> {
          20  +
        /* StructureGenerator.kt:168 */
   12     21   
        self.member
          22  +
        /* StructureGenerator.kt:166 */
   13     23   
    }
          24  +
    /* StructureGenerator.kt:135 */
   14     25   
}
          26  +
/* ClientCodegenVisitor.kt:237 */
   15     27   
impl ClientOptionalDefaults {
   16         -
    /// Creates a new builder-style object to manufacture [`ClientOptionalDefaults`](crate::types::ClientOptionalDefaults).
          28  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`ClientOptionalDefaults`](crate::types::ClientOptionalDefaults).
          29  +
    /* BuilderGenerator.kt:175 */
   17     30   
    pub fn builder() -> crate::types::builders::ClientOptionalDefaultsBuilder {
          31  +
        /* BuilderGenerator.kt:176 */
   18     32   
        crate::types::builders::ClientOptionalDefaultsBuilder::default()
          33  +
        /* BuilderGenerator.kt:175 */
   19     34   
    }
          35  +
    /* ClientCodegenVisitor.kt:237 */
   20     36   
}
   21     37   
   22         -
/// A builder for [`ClientOptionalDefaults`](crate::types::ClientOptionalDefaults).
          38  +
/// /* BuilderGenerator.kt:342 */A builder for [`ClientOptionalDefaults`](crate::types::ClientOptionalDefaults).
          39  +
/* RustType.kt:516 */
   23     40   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          41  +
/* RustType.kt:516 */
   24     42   
#[non_exhaustive]
          43  +
/* BuilderGenerator.kt:345 */
   25     44   
pub struct ClientOptionalDefaultsBuilder {
   26         -
    pub(crate) member: ::std::option::Option<i32>,
          45  +
    /* BuilderGenerator.kt:275 */ pub(crate) member: ::std::option::Option<i32>,
          46  +
    /* BuilderGenerator.kt:345 */
   27     47   
}
          48  +
/* BuilderGenerator.kt:355 */
   28     49   
impl ClientOptionalDefaultsBuilder {
          50  +
    /* BuilderGenerator.kt:286 */
   29     51   
    #[allow(missing_docs)] // documentation missing in model
          52  +
                           /* BuilderGenerator.kt:291 */
   30     53   
    pub fn member(mut self, input: i32) -> Self {
          54  +
        /* BuilderGenerator.kt:292 */
   31     55   
        self.member = ::std::option::Option::Some(input);
          56  +
        /* BuilderGenerator.kt:293 */
   32     57   
        self
          58  +
        /* BuilderGenerator.kt:291 */
   33     59   
    }
          60  +
    /* BuilderGenerator.kt:312 */
   34     61   
    #[allow(missing_docs)] // documentation missing in model
          62  +
                           /* BuilderGenerator.kt:314 */
   35     63   
    pub fn set_member(mut self, input: ::std::option::Option<i32>) -> Self {
          64  +
        /* BuilderGenerator.kt:315 */
   36     65   
        self.member = input;
   37     66   
        self
          67  +
        /* BuilderGenerator.kt:314 */
   38     68   
    }
          69  +
    /* BuilderGenerator.kt:334 */
   39     70   
    #[allow(missing_docs)] // documentation missing in model
          71  +
                           /* BuilderGenerator.kt:336 */
   40     72   
    pub fn get_member(&self) -> &::std::option::Option<i32> {
          73  +
        /* BuilderGenerator.kt:337 */
   41     74   
        &self.member
          75  +
        /* BuilderGenerator.kt:336 */
   42     76   
    }
   43         -
    /// Consumes the builder and constructs a [`ClientOptionalDefaults`](crate::types::ClientOptionalDefaults).
          77  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`ClientOptionalDefaults`](crate::types::ClientOptionalDefaults).
          78  +
    /* BuilderGenerator.kt:253 */
   44     79   
    pub fn build(self) -> crate::types::ClientOptionalDefaults {
   45         -
        crate::types::ClientOptionalDefaults { member: self.member }
          80  +
        /* BuilderGenerator.kt:477 */
          81  +
        crate::types::ClientOptionalDefaults {
          82  +
            /* BuilderGenerator.kt:481 */ member: self.member,
          83  +
            /* BuilderGenerator.kt:477 */
          84  +
        }
          85  +
        /* BuilderGenerator.kt:253 */
   46     86   
    }
          87  +
    /* BuilderGenerator.kt:355 */
   47     88   
}

tmp-codegen-diff/codegen-client-test/rpcv2Cbor/rust-client-codegen/src/types/_complex_nested_error_data.rs

@@ -1,1 +47,88 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct ComplexNestedErrorData {
           8  +
pub /* StructureGenerator.kt:201 */ struct ComplexNestedErrorData {
           9  +
    /* StructureGenerator.kt:231 */
    6     10   
    #[allow(missing_docs)] // documentation missing in model
    7     11   
    pub foo: ::std::option::Option<::std::string::String>,
          12  +
    /* StructureGenerator.kt:201 */
    8     13   
}
          14  +
/* StructureGenerator.kt:135 */
    9     15   
impl ComplexNestedErrorData {
          16  +
    /* StructureGenerator.kt:231 */
   10     17   
    #[allow(missing_docs)] // documentation missing in model
          18  +
                           /* StructureGenerator.kt:166 */
   11     19   
    pub fn foo(&self) -> ::std::option::Option<&str> {
          20  +
        /* StructureGenerator.kt:169 */
   12     21   
        self.foo.as_deref()
          22  +
        /* StructureGenerator.kt:166 */
   13     23   
    }
          24  +
    /* StructureGenerator.kt:135 */
   14     25   
}
          26  +
/* ClientCodegenVisitor.kt:237 */
   15     27   
impl ComplexNestedErrorData {
   16         -
    /// Creates a new builder-style object to manufacture [`ComplexNestedErrorData`](crate::types::ComplexNestedErrorData).
          28  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`ComplexNestedErrorData`](crate::types::ComplexNestedErrorData).
          29  +
    /* BuilderGenerator.kt:175 */
   17     30   
    pub fn builder() -> crate::types::builders::ComplexNestedErrorDataBuilder {
          31  +
        /* BuilderGenerator.kt:176 */
   18     32   
        crate::types::builders::ComplexNestedErrorDataBuilder::default()
          33  +
        /* BuilderGenerator.kt:175 */
   19     34   
    }
          35  +
    /* ClientCodegenVisitor.kt:237 */
   20     36   
}
   21     37   
   22         -
/// A builder for [`ComplexNestedErrorData`](crate::types::ComplexNestedErrorData).
          38  +
/// /* BuilderGenerator.kt:342 */A builder for [`ComplexNestedErrorData`](crate::types::ComplexNestedErrorData).
          39  +
/* RustType.kt:516 */
   23     40   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          41  +
/* RustType.kt:516 */
   24     42   
#[non_exhaustive]
          43  +
/* BuilderGenerator.kt:345 */
   25     44   
pub struct ComplexNestedErrorDataBuilder {
   26         -
    pub(crate) foo: ::std::option::Option<::std::string::String>,
          45  +
    /* BuilderGenerator.kt:275 */ pub(crate) foo: ::std::option::Option<::std::string::String>,
          46  +
    /* BuilderGenerator.kt:345 */
   27     47   
}
          48  +
/* BuilderGenerator.kt:355 */
   28     49   
impl ComplexNestedErrorDataBuilder {
          50  +
    /* BuilderGenerator.kt:286 */
   29     51   
    #[allow(missing_docs)] // documentation missing in model
          52  +
                           /* BuilderGenerator.kt:291 */
   30     53   
    pub fn foo(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
          54  +
        /* BuilderGenerator.kt:292 */
   31     55   
        self.foo = ::std::option::Option::Some(input.into());
          56  +
        /* BuilderGenerator.kt:293 */
   32     57   
        self
          58  +
        /* BuilderGenerator.kt:291 */
   33     59   
    }
          60  +
    /* BuilderGenerator.kt:312 */
   34     61   
    #[allow(missing_docs)] // documentation missing in model
          62  +
                           /* BuilderGenerator.kt:314 */
   35     63   
    pub fn set_foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
          64  +
        /* BuilderGenerator.kt:315 */
   36     65   
        self.foo = input;
   37     66   
        self
          67  +
        /* BuilderGenerator.kt:314 */
   38     68   
    }
          69  +
    /* BuilderGenerator.kt:334 */
   39     70   
    #[allow(missing_docs)] // documentation missing in model
          71  +
                           /* BuilderGenerator.kt:336 */
   40     72   
    pub fn get_foo(&self) -> &::std::option::Option<::std::string::String> {
          73  +
        /* BuilderGenerator.kt:337 */
   41     74   
        &self.foo
          75  +
        /* BuilderGenerator.kt:336 */
   42     76   
    }
   43         -
    /// Consumes the builder and constructs a [`ComplexNestedErrorData`](crate::types::ComplexNestedErrorData).
          77  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`ComplexNestedErrorData`](crate::types::ComplexNestedErrorData).
          78  +
    /* BuilderGenerator.kt:253 */
   44     79   
    pub fn build(self) -> crate::types::ComplexNestedErrorData {
   45         -
        crate::types::ComplexNestedErrorData { foo: self.foo }
          80  +
        /* BuilderGenerator.kt:477 */
          81  +
        crate::types::ComplexNestedErrorData {
          82  +
            /* BuilderGenerator.kt:481 */ foo: self.foo,
          83  +
            /* BuilderGenerator.kt:477 */
          84  +
        }
          85  +
        /* BuilderGenerator.kt:253 */
   46     86   
    }
          87  +
    /* BuilderGenerator.kt:355 */
   47     88   
}

tmp-codegen-diff/codegen-client-test/rpcv2Cbor/rust-client-codegen/src/types/_defaults.rs

@@ -1,1 +553,1058 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct Defaults {
    6         -
    #[allow(missing_docs)] // documentation missing in model
           8  +
pub /* StructureGenerator.kt:201 */ struct Defaults {
           9  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
    7     10   
    pub default_string: ::std::string::String,
    8         -
    #[allow(missing_docs)] // documentation missing in model
          11  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
    9     12   
    pub default_boolean: bool,
          13  +
    /* StructureGenerator.kt:231 */
   10     14   
    #[allow(missing_docs)] // documentation missing in model
   11     15   
    pub default_list: ::std::vec::Vec<::std::string::String>,
          16  +
    /* StructureGenerator.kt:231 */
   12     17   
    #[allow(missing_docs)] // documentation missing in model
   13     18   
    pub default_timestamp: ::aws_smithy_types::DateTime,
   14         -
    #[allow(missing_docs)] // documentation missing in model
          19  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   15     20   
    pub default_blob: ::aws_smithy_types::Blob,
   16         -
    #[allow(missing_docs)] // documentation missing in model
          21  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   17     22   
    pub default_byte: i8,
   18         -
    #[allow(missing_docs)] // documentation missing in model
          23  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   19     24   
    pub default_short: i16,
   20         -
    #[allow(missing_docs)] // documentation missing in model
          25  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   21     26   
    pub default_integer: i32,
   22         -
    #[allow(missing_docs)] // documentation missing in model
          27  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   23     28   
    pub default_long: i64,
   24         -
    #[allow(missing_docs)] // documentation missing in model
          29  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   25     30   
    pub default_float: f32,
   26         -
    #[allow(missing_docs)] // documentation missing in model
          31  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   27     32   
    pub default_double: f64,
          33  +
    /* StructureGenerator.kt:231 */
   28     34   
    #[allow(missing_docs)] // documentation missing in model
   29     35   
    pub default_map: ::std::collections::HashMap<::std::string::String, ::std::string::String>,
   30         -
    #[allow(missing_docs)] // documentation missing in model
          36  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   31     37   
    pub default_enum: crate::types::TestEnum,
   32         -
    #[allow(missing_docs)] // documentation missing in model
          38  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   33     39   
    pub default_int_enum: i32,
   34         -
    #[allow(missing_docs)] // documentation missing in model
          40  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   35     41   
    pub empty_string: ::std::string::String,
   36         -
    #[allow(missing_docs)] // documentation missing in model
          42  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   37     43   
    pub false_boolean: bool,
   38         -
    #[allow(missing_docs)] // documentation missing in model
          44  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   39     45   
    pub empty_blob: ::aws_smithy_types::Blob,
   40         -
    #[allow(missing_docs)] // documentation missing in model
          46  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   41     47   
    pub zero_byte: i8,
   42         -
    #[allow(missing_docs)] // documentation missing in model
          48  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   43     49   
    pub zero_short: i16,
   44         -
    #[allow(missing_docs)] // documentation missing in model
          50  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   45     51   
    pub zero_integer: i32,
   46         -
    #[allow(missing_docs)] // documentation missing in model
          52  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   47     53   
    pub zero_long: i64,
   48         -
    #[allow(missing_docs)] // documentation missing in model
          54  +
    /* StructureGenerator.kt:231 */ #[allow(missing_docs)] // documentation missing in model
   49     55   
    pub zero_float: f32,
          56  +
    /* StructureGenerator.kt:231 */
   50     57   
    #[allow(missing_docs)] // documentation missing in model
   51     58   
    pub zero_double: f64,
          59  +
    /* StructureGenerator.kt:201 */
   52     60   
}
          61  +
/* StructureGenerator.kt:135 */
   53     62   
impl Defaults {
          63  +
    /* StructureGenerator.kt:231 */
   54     64   
    #[allow(missing_docs)] // documentation missing in model
          65  +
                           /* StructureGenerator.kt:166 */
   55     66   
    pub fn default_string(&self) -> &str {
          67  +
        /* StructureGenerator.kt:171 */
   56     68   
        use std::ops::Deref;
   57     69   
        self.default_string.deref()
          70  +
        /* StructureGenerator.kt:166 */
   58     71   
    }
          72  +
    /* StructureGenerator.kt:231 */
   59     73   
    #[allow(missing_docs)] // documentation missing in model
          74  +
                           /* StructureGenerator.kt:166 */
   60     75   
    pub fn default_boolean(&self) -> bool {
          76  +
        /* StructureGenerator.kt:168 */
   61     77   
        self.default_boolean
          78  +
        /* StructureGenerator.kt:166 */
   62     79   
    }
          80  +
    /* StructureGenerator.kt:231 */
   63     81   
    #[allow(missing_docs)] // documentation missing in model
          82  +
                           /* StructureGenerator.kt:166 */
   64     83   
    pub fn default_list(&self) -> &[::std::string::String] {
          84  +
        /* StructureGenerator.kt:171 */
   65     85   
        use std::ops::Deref;
   66     86   
        self.default_list.deref()
          87  +
        /* StructureGenerator.kt:166 */
   67     88   
    }
          89  +
    /* StructureGenerator.kt:231 */
   68     90   
    #[allow(missing_docs)] // documentation missing in model
          91  +
                           /* StructureGenerator.kt:166 */
   69     92   
    pub fn default_timestamp(&self) -> &::aws_smithy_types::DateTime {
          93  +
        /* StructureGenerator.kt:172 */
   70     94   
        &self.default_timestamp
          95  +
        /* StructureGenerator.kt:166 */
   71     96   
    }
          97  +
    /* StructureGenerator.kt:231 */
   72     98   
    #[allow(missing_docs)] // documentation missing in model
          99  +
                           /* StructureGenerator.kt:166 */
   73    100   
    pub fn default_blob(&self) -> &::aws_smithy_types::Blob {
         101  +
        /* StructureGenerator.kt:172 */
   74    102   
        &self.default_blob
         103  +
        /* StructureGenerator.kt:166 */
   75    104   
    }
         105  +
    /* StructureGenerator.kt:231 */
   76    106   
    #[allow(missing_docs)] // documentation missing in model
         107  +
                           /* StructureGenerator.kt:166 */
   77    108   
    pub fn default_byte(&self) -> i8 {
         109  +
        /* StructureGenerator.kt:168 */
   78    110   
        self.default_byte
         111  +
        /* StructureGenerator.kt:166 */
   79    112   
    }
         113  +
    /* StructureGenerator.kt:231 */
   80    114   
    #[allow(missing_docs)] // documentation missing in model
         115  +
                           /* StructureGenerator.kt:166 */
   81    116   
    pub fn default_short(&self) -> i16 {
         117  +
        /* StructureGenerator.kt:168 */
   82    118   
        self.default_short
         119  +
        /* StructureGenerator.kt:166 */
   83    120   
    }
         121  +
    /* StructureGenerator.kt:231 */
   84    122   
    #[allow(missing_docs)] // documentation missing in model
         123  +
                           /* StructureGenerator.kt:166 */
   85    124   
    pub fn default_integer(&self) -> i32 {
         125  +
        /* StructureGenerator.kt:168 */
   86    126   
        self.default_integer
         127  +
        /* StructureGenerator.kt:166 */
   87    128   
    }
         129  +
    /* StructureGenerator.kt:231 */
   88    130   
    #[allow(missing_docs)] // documentation missing in model
         131  +
                           /* StructureGenerator.kt:166 */
   89    132   
    pub fn default_long(&self) -> i64 {
         133  +
        /* StructureGenerator.kt:168 */
   90    134   
        self.default_long
         135  +
        /* StructureGenerator.kt:166 */
   91    136   
    }
         137  +
    /* StructureGenerator.kt:231 */
   92    138   
    #[allow(missing_docs)] // documentation missing in model
         139  +
                           /* StructureGenerator.kt:166 */
   93    140   
    pub fn default_float(&self) -> f32 {
         141  +
        /* StructureGenerator.kt:168 */
   94    142   
        self.default_float
         143  +
        /* StructureGenerator.kt:166 */
   95    144   
    }
         145  +
    /* StructureGenerator.kt:231 */
   96    146   
    #[allow(missing_docs)] // documentation missing in model
         147  +
                           /* StructureGenerator.kt:166 */
   97    148   
    pub fn default_double(&self) -> f64 {
         149  +
        /* StructureGenerator.kt:168 */
   98    150   
        self.default_double
         151  +
        /* StructureGenerator.kt:166 */
   99    152   
    }
         153  +
    /* StructureGenerator.kt:231 */
  100    154   
    #[allow(missing_docs)] // documentation missing in model
         155  +
                           /* StructureGenerator.kt:166 */
  101    156   
    pub fn default_map(&self) -> &::std::collections::HashMap<::std::string::String, ::std::string::String> {
         157  +
        /* StructureGenerator.kt:172 */
  102    158   
        &self.default_map
         159  +
        /* StructureGenerator.kt:166 */
  103    160   
    }
         161  +
    /* StructureGenerator.kt:231 */
  104    162   
    #[allow(missing_docs)] // documentation missing in model
         163  +
                           /* StructureGenerator.kt:166 */
  105    164   
    pub fn default_enum(&self) -> &crate::types::TestEnum {
         165  +
        /* StructureGenerator.kt:172 */
  106    166   
        &self.default_enum
         167  +
        /* StructureGenerator.kt:166 */
  107    168   
    }
         169  +
    /* StructureGenerator.kt:231 */
  108    170   
    #[allow(missing_docs)] // documentation missing in model
         171  +
                           /* StructureGenerator.kt:166 */
  109    172   
    pub fn default_int_enum(&self) -> i32 {
         173  +
        /* StructureGenerator.kt:168 */
  110    174   
        self.default_int_enum
         175  +
        /* StructureGenerator.kt:166 */
  111    176   
    }
         177  +
    /* StructureGenerator.kt:231 */
  112    178   
    #[allow(missing_docs)] // documentation missing in model
         179  +
                           /* StructureGenerator.kt:166 */
  113    180   
    pub fn empty_string(&self) -> &str {
         181  +
        /* StructureGenerator.kt:171 */
  114    182   
        use std::ops::Deref;
  115    183   
        self.empty_string.deref()
         184  +
        /* StructureGenerator.kt:166 */
  116    185   
    }
         186  +
    /* StructureGenerator.kt:231 */
  117    187   
    #[allow(missing_docs)] // documentation missing in model
         188  +
                           /* StructureGenerator.kt:166 */
  118    189   
    pub fn false_boolean(&self) -> bool {
         190  +
        /* StructureGenerator.kt:168 */
  119    191   
        self.false_boolean
         192  +
        /* StructureGenerator.kt:166 */
  120    193   
    }
         194  +
    /* StructureGenerator.kt:231 */
  121    195   
    #[allow(missing_docs)] // documentation missing in model
         196  +
                           /* StructureGenerator.kt:166 */
  122    197   
    pub fn empty_blob(&self) -> &::aws_smithy_types::Blob {
         198  +
        /* StructureGenerator.kt:172 */
  123    199   
        &self.empty_blob
         200  +
        /* StructureGenerator.kt:166 */
  124    201   
    }
         202  +
    /* StructureGenerator.kt:231 */
  125    203   
    #[allow(missing_docs)] // documentation missing in model
         204  +
                           /* StructureGenerator.kt:166 */
  126    205   
    pub fn zero_byte(&self) -> i8 {
         206  +
        /* StructureGenerator.kt:168 */
  127    207   
        self.zero_byte
         208  +
        /* StructureGenerator.kt:166 */
  128    209   
    }
         210  +
    /* StructureGenerator.kt:231 */
  129    211   
    #[allow(missing_docs)] // documentation missing in model
         212  +
                           /* StructureGenerator.kt:166 */
  130    213   
    pub fn zero_short(&self) -> i16 {
         214  +
        /* StructureGenerator.kt:168 */
  131    215   
        self.zero_short
         216  +
        /* StructureGenerator.kt:166 */
  132    217   
    }
         218  +
    /* StructureGenerator.kt:231 */
  133    219   
    #[allow(missing_docs)] // documentation missing in model
         220  +
                           /* StructureGenerator.kt:166 */
  134    221   
    pub fn zero_integer(&self) -> i32 {
         222  +
        /* StructureGenerator.kt:168 */
  135    223   
        self.zero_integer
         224  +
        /* StructureGenerator.kt:166 */
  136    225   
    }
         226  +
    /* StructureGenerator.kt:231 */
  137    227   
    #[allow(missing_docs)] // documentation missing in model
         228  +
                           /* StructureGenerator.kt:166 */
  138    229   
    pub fn zero_long(&self) -> i64 {
         230  +
        /* StructureGenerator.kt:168 */
  139    231   
        self.zero_long
         232  +
        /* StructureGenerator.kt:166 */
  140    233   
    }
         234  +
    /* StructureGenerator.kt:231 */
  141    235   
    #[allow(missing_docs)] // documentation missing in model
         236  +
                           /* StructureGenerator.kt:166 */
  142    237   
    pub fn zero_float(&self) -> f32 {
         238  +
        /* StructureGenerator.kt:168 */
  143    239   
        self.zero_float
         240  +
        /* StructureGenerator.kt:166 */
  144    241   
    }
         242  +
    /* StructureGenerator.kt:231 */
  145    243   
    #[allow(missing_docs)] // documentation missing in model
         244  +
                           /* StructureGenerator.kt:166 */
  146    245   
    pub fn zero_double(&self) -> f64 {
         246  +
        /* StructureGenerator.kt:168 */
  147    247   
        self.zero_double
         248  +
        /* StructureGenerator.kt:166 */
  148    249   
    }
         250  +
    /* StructureGenerator.kt:135 */
  149    251   
}
         252  +
/* ClientCodegenVisitor.kt:237 */
  150    253   
impl Defaults {
  151         -
    /// Creates a new builder-style object to manufacture [`Defaults`](crate::types::Defaults).
         254  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`Defaults`](crate::types::Defaults).
         255  +
    /* BuilderGenerator.kt:175 */
  152    256   
    pub fn builder() -> crate::types::builders::DefaultsBuilder {
         257  +
        /* BuilderGenerator.kt:176 */
  153    258   
        crate::types::builders::DefaultsBuilder::default()
         259  +
        /* BuilderGenerator.kt:175 */
  154    260   
    }
         261  +
    /* ClientCodegenVisitor.kt:237 */
  155    262   
}
  156    263   
  157         -
/// A builder for [`Defaults`](crate::types::Defaults).
         264  +
/// /* BuilderGenerator.kt:342 */A builder for [`Defaults`](crate::types::Defaults).
         265  +
/* RustType.kt:516 */
  158    266   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
         267  +
/* RustType.kt:516 */
  159    268   
#[non_exhaustive]
         269  +
/* BuilderGenerator.kt:345 */
  160    270   
pub struct DefaultsBuilder {
  161         -
    pub(crate) default_string: ::std::option::Option<::std::string::String>,
  162         -
    pub(crate) default_boolean: ::std::option::Option<bool>,
  163         -
    pub(crate) default_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
  164         -
    pub(crate) default_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
  165         -
    pub(crate) default_blob: ::std::option::Option<::aws_smithy_types::Blob>,
  166         -
    pub(crate) default_byte: ::std::option::Option<i8>,
  167         -
    pub(crate) default_short: ::std::option::Option<i16>,
  168         -
    pub(crate) default_integer: ::std::option::Option<i32>,
  169         -
    pub(crate) default_long: ::std::option::Option<i64>,
  170         -
    pub(crate) default_float: ::std::option::Option<f32>,
  171         -
    pub(crate) default_double: ::std::option::Option<f64>,
         271  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_string: ::std::option::Option<::std::string::String>,
         272  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_boolean: ::std::option::Option<bool>,
         273  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
         274  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
         275  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_blob: ::std::option::Option<::aws_smithy_types::Blob>,
         276  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_byte: ::std::option::Option<i8>,
         277  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_short: ::std::option::Option<i16>,
         278  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_integer: ::std::option::Option<i32>,
         279  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_long: ::std::option::Option<i64>,
         280  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_float: ::std::option::Option<f32>,
         281  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_double: ::std::option::Option<f64>,
         282  +
    /* BuilderGenerator.kt:275 */
  172    283   
    pub(crate) default_map: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
  173         -
    pub(crate) default_enum: ::std::option::Option<crate::types::TestEnum>,
  174         -
    pub(crate) default_int_enum: ::std::option::Option<i32>,
  175         -
    pub(crate) empty_string: ::std::option::Option<::std::string::String>,
  176         -
    pub(crate) false_boolean: ::std::option::Option<bool>,
  177         -
    pub(crate) empty_blob: ::std::option::Option<::aws_smithy_types::Blob>,
  178         -
    pub(crate) zero_byte: ::std::option::Option<i8>,
  179         -
    pub(crate) zero_short: ::std::option::Option<i16>,
  180         -
    pub(crate) zero_integer: ::std::option::Option<i32>,
  181         -
    pub(crate) zero_long: ::std::option::Option<i64>,
  182         -
    pub(crate) zero_float: ::std::option::Option<f32>,
  183         -
    pub(crate) zero_double: ::std::option::Option<f64>,
         284  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_enum: ::std::option::Option<crate::types::TestEnum>,
         285  +
    /* BuilderGenerator.kt:275 */ pub(crate) default_int_enum: ::std::option::Option<i32>,
         286  +
    /* BuilderGenerator.kt:275 */ pub(crate) empty_string: ::std::option::Option<::std::string::String>,
         287  +
    /* BuilderGenerator.kt:275 */ pub(crate) false_boolean: ::std::option::Option<bool>,
         288  +
    /* BuilderGenerator.kt:275 */ pub(crate) empty_blob: ::std::option::Option<::aws_smithy_types::Blob>,
         289  +
    /* BuilderGenerator.kt:275 */ pub(crate) zero_byte: ::std::option::Option<i8>,
         290  +
    /* BuilderGenerator.kt:275 */ pub(crate) zero_short: ::std::option::Option<i16>,
         291  +
    /* BuilderGenerator.kt:275 */ pub(crate) zero_integer: ::std::option::Option<i32>,
         292  +
    /* BuilderGenerator.kt:275 */ pub(crate) zero_long: ::std::option::Option<i64>,
         293  +
    /* BuilderGenerator.kt:275 */ pub(crate) zero_float: ::std::option::Option<f32>,
         294  +
    /* BuilderGenerator.kt:275 */ pub(crate) zero_double: ::std::option::Option<f64>,
         295  +
    /* BuilderGenerator.kt:345 */
  184    296   
}
         297  +
/* BuilderGenerator.kt:355 */
  185    298   
impl DefaultsBuilder {
         299  +
    /* BuilderGenerator.kt:286 */
  186    300   
    #[allow(missing_docs)] // documentation missing in model
         301  +
                           /* BuilderGenerator.kt:291 */
  187    302   
    pub fn default_string(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         303  +
        /* BuilderGenerator.kt:292 */
  188    304   
        self.default_string = ::std::option::Option::Some(input.into());
         305  +
        /* BuilderGenerator.kt:293 */
  189    306   
        self
         307  +
        /* BuilderGenerator.kt:291 */
  190    308   
    }
         309  +
    /* BuilderGenerator.kt:312 */
  191    310   
    #[allow(missing_docs)] // documentation missing in model
         311  +
                           /* BuilderGenerator.kt:314 */
  192    312   
    pub fn set_default_string(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         313  +
        /* BuilderGenerator.kt:315 */
  193    314   
        self.default_string = input;
  194    315   
        self
         316  +
        /* BuilderGenerator.kt:314 */
  195    317   
    }
         318  +
    /* BuilderGenerator.kt:334 */
  196    319   
    #[allow(missing_docs)] // documentation missing in model
         320  +
                           /* BuilderGenerator.kt:336 */
  197    321   
    pub fn get_default_string(&self) -> &::std::option::Option<::std::string::String> {
         322  +
        /* BuilderGenerator.kt:337 */
  198    323   
        &self.default_string
         324  +
        /* BuilderGenerator.kt:336 */
  199    325   
    }
         326  +
    /* BuilderGenerator.kt:286 */
  200    327   
    #[allow(missing_docs)] // documentation missing in model
         328  +
                           /* BuilderGenerator.kt:291 */
  201    329   
    pub fn default_boolean(mut self, input: bool) -> Self {
         330  +
        /* BuilderGenerator.kt:292 */
  202    331   
        self.default_boolean = ::std::option::Option::Some(input);
         332  +
        /* BuilderGenerator.kt:293 */
  203    333   
        self
         334  +
        /* BuilderGenerator.kt:291 */
  204    335   
    }
         336  +
    /* BuilderGenerator.kt:312 */
  205    337   
    #[allow(missing_docs)] // documentation missing in model
         338  +
                           /* BuilderGenerator.kt:314 */
  206    339   
    pub fn set_default_boolean(mut self, input: ::std::option::Option<bool>) -> Self {
         340  +
        /* BuilderGenerator.kt:315 */
  207    341   
        self.default_boolean = input;
  208    342   
        self
         343  +
        /* BuilderGenerator.kt:314 */
  209    344   
    }
         345  +
    /* BuilderGenerator.kt:334 */
  210    346   
    #[allow(missing_docs)] // documentation missing in model
         347  +
                           /* BuilderGenerator.kt:336 */
  211    348   
    pub fn get_default_boolean(&self) -> &::std::option::Option<bool> {
         349  +
        /* BuilderGenerator.kt:337 */
  212    350   
        &self.default_boolean
         351  +
        /* BuilderGenerator.kt:336 */
  213    352   
    }
  214         -
    /// Appends an item to `default_list`.
         353  +
    /// /* BuilderGenerator.kt:410 */Appends an item to `default_list`.
         354  +
    /* BuilderGenerator.kt:411 */
  215    355   
    ///
  216         -
    /// To override the contents of this collection use [`set_default_list`](Self::set_default_list).
         356  +
    /// /* BuilderGenerator.kt:412 */To override the contents of this collection use [`set_default_list`](Self::set_default_list).
         357  +
    /* BuilderGenerator.kt:413 */
  217    358   
    ///
         359  +
    /* BuilderGenerator.kt:418 */
  218    360   
    pub fn default_list(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         361  +
        /* BuilderGenerator.kt:419 */
  219    362   
        let mut v = self.default_list.unwrap_or_default();
  220    363   
        v.push(input.into());
  221    364   
        self.default_list = ::std::option::Option::Some(v);
  222    365   
        self
         366  +
        /* BuilderGenerator.kt:418 */
  223    367   
    }
         368  +
    /* BuilderGenerator.kt:312 */
  224    369   
    #[allow(missing_docs)] // documentation missing in model
         370  +
                           /* BuilderGenerator.kt:314 */
  225    371   
    pub fn set_default_list(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
         372  +
        /* BuilderGenerator.kt:315 */
  226    373   
        self.default_list = input;
  227    374   
        self
         375  +
        /* BuilderGenerator.kt:314 */
  228    376   
    }
         377  +
    /* BuilderGenerator.kt:334 */
  229    378   
    #[allow(missing_docs)] // documentation missing in model
         379  +
                           /* BuilderGenerator.kt:336 */
  230    380   
    pub fn get_default_list(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
         381  +
        /* BuilderGenerator.kt:337 */
  231    382   
        &self.default_list
         383  +
        /* BuilderGenerator.kt:336 */
  232    384   
    }
         385  +
    /* BuilderGenerator.kt:286 */
  233    386   
    #[allow(missing_docs)] // documentation missing in model
         387  +
                           /* BuilderGenerator.kt:291 */
  234    388   
    pub fn default_timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
         389  +
        /* BuilderGenerator.kt:292 */
  235    390   
        self.default_timestamp = ::std::option::Option::Some(input);
         391  +
        /* BuilderGenerator.kt:293 */
  236    392   
        self
         393  +
        /* BuilderGenerator.kt:291 */
  237    394   
    }
         395  +
    /* BuilderGenerator.kt:312 */
  238    396   
    #[allow(missing_docs)] // documentation missing in model
         397  +
                           /* BuilderGenerator.kt:314 */
  239    398   
    pub fn set_default_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
         399  +
        /* BuilderGenerator.kt:315 */
  240    400   
        self.default_timestamp = input;
  241    401   
        self
         402  +
        /* BuilderGenerator.kt:314 */
  242    403   
    }
         404  +
    /* BuilderGenerator.kt:334 */
  243    405   
    #[allow(missing_docs)] // documentation missing in model
         406  +
                           /* BuilderGenerator.kt:336 */
  244    407   
    pub fn get_default_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
         408  +
        /* BuilderGenerator.kt:337 */
  245    409   
        &self.default_timestamp
         410  +
        /* BuilderGenerator.kt:336 */
  246    411   
    }
         412  +
    /* BuilderGenerator.kt:286 */
  247    413   
    #[allow(missing_docs)] // documentation missing in model
         414  +
                           /* BuilderGenerator.kt:291 */
  248    415   
    pub fn default_blob(mut self, input: ::aws_smithy_types::Blob) -> Self {
         416  +
        /* BuilderGenerator.kt:292 */
  249    417   
        self.default_blob = ::std::option::Option::Some(input);
         418  +
        /* BuilderGenerator.kt:293 */
  250    419   
        self
         420  +
        /* BuilderGenerator.kt:291 */
  251    421   
    }
         422  +
    /* BuilderGenerator.kt:312 */
  252    423   
    #[allow(missing_docs)] // documentation missing in model
         424  +
                           /* BuilderGenerator.kt:314 */
  253    425   
    pub fn set_default_blob(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
         426  +
        /* BuilderGenerator.kt:315 */
  254    427   
        self.default_blob = input;
  255    428   
        self
         429  +
        /* BuilderGenerator.kt:314 */
  256    430   
    }
         431  +
    /* BuilderGenerator.kt:334 */
  257    432   
    #[allow(missing_docs)] // documentation missing in model
         433  +
                           /* BuilderGenerator.kt:336 */
  258    434   
    pub fn get_default_blob(&self) -> &::std::option::Option<::aws_smithy_types::Blob> {
         435  +
        /* BuilderGenerator.kt:337 */
  259    436   
        &self.default_blob
         437  +
        /* BuilderGenerator.kt:336 */
  260    438   
    }
         439  +
    /* BuilderGenerator.kt:286 */
  261    440   
    #[allow(missing_docs)] // documentation missing in model
         441  +
                           /* BuilderGenerator.kt:291 */
  262    442   
    pub fn default_byte(mut self, input: i8) -> Self {
         443  +
        /* BuilderGenerator.kt:292 */
  263    444   
        self.default_byte = ::std::option::Option::Some(input);
         445  +
        /* BuilderGenerator.kt:293 */
  264    446   
        self
         447  +
        /* BuilderGenerator.kt:291 */
  265    448   
    }
         449  +
    /* BuilderGenerator.kt:312 */
  266    450   
    #[allow(missing_docs)] // documentation missing in model
         451  +
                           /* BuilderGenerator.kt:314 */
  267    452   
    pub fn set_default_byte(mut self, input: ::std::option::Option<i8>) -> Self {
         453  +
        /* BuilderGenerator.kt:315 */
  268    454   
        self.default_byte = input;
  269    455   
        self
         456  +
        /* BuilderGenerator.kt:314 */
  270    457   
    }
         458  +
    /* BuilderGenerator.kt:334 */
  271    459   
    #[allow(missing_docs)] // documentation missing in model
         460  +
                           /* BuilderGenerator.kt:336 */
  272    461   
    pub fn get_default_byte(&self) -> &::std::option::Option<i8> {
         462  +
        /* BuilderGenerator.kt:337 */
  273    463   
        &self.default_byte
         464  +
        /* BuilderGenerator.kt:336 */
  274    465   
    }
         466  +
    /* BuilderGenerator.kt:286 */
  275    467   
    #[allow(missing_docs)] // documentation missing in model
         468  +
                           /* BuilderGenerator.kt:291 */
  276    469   
    pub fn default_short(mut self, input: i16) -> Self {
         470  +
        /* BuilderGenerator.kt:292 */
  277    471   
        self.default_short = ::std::option::Option::Some(input);
         472  +
        /* BuilderGenerator.kt:293 */
  278    473   
        self
         474  +
        /* BuilderGenerator.kt:291 */
  279    475   
    }
         476  +
    /* BuilderGenerator.kt:312 */
  280    477   
    #[allow(missing_docs)] // documentation missing in model
         478  +
                           /* BuilderGenerator.kt:314 */
  281    479   
    pub fn set_default_short(mut self, input: ::std::option::Option<i16>) -> Self {
         480  +
        /* BuilderGenerator.kt:315 */
  282    481   
        self.default_short = input;
  283    482   
        self
         483  +
        /* BuilderGenerator.kt:314 */
  284    484   
    }
         485  +
    /* BuilderGenerator.kt:334 */
  285    486   
    #[allow(missing_docs)] // documentation missing in model
         487  +
                           /* BuilderGenerator.kt:336 */
  286    488   
    pub fn get_default_short(&self) -> &::std::option::Option<i16> {
         489  +
        /* BuilderGenerator.kt:337 */
  287    490   
        &self.default_short
         491  +
        /* BuilderGenerator.kt:336 */
  288    492   
    }
         493  +
    /* BuilderGenerator.kt:286 */
  289    494   
    #[allow(missing_docs)] // documentation missing in model
         495  +
                           /* BuilderGenerator.kt:291 */
  290    496   
    pub fn default_integer(mut self, input: i32) -> Self {
         497  +
        /* BuilderGenerator.kt:292 */
  291    498   
        self.default_integer = ::std::option::Option::Some(input);
         499  +
        /* BuilderGenerator.kt:293 */
  292    500   
        self
         501  +
        /* BuilderGenerator.kt:291 */
  293    502   
    }
         503  +
    /* BuilderGenerator.kt:312 */
  294    504   
    #[allow(missing_docs)] // documentation missing in model
         505  +
                           /* BuilderGenerator.kt:314 */
  295    506   
    pub fn set_default_integer(mut self, input: ::std::option::Option<i32>) -> Self {
         507  +
        /* BuilderGenerator.kt:315 */
  296    508   
        self.default_integer = input;
  297    509   
        self
         510  +
        /* BuilderGenerator.kt:314 */
  298    511   
    }
         512  +
    /* BuilderGenerator.kt:334 */
  299    513   
    #[allow(missing_docs)] // documentation missing in model
         514  +
                           /* BuilderGenerator.kt:336 */
  300    515   
    pub fn get_default_integer(&self) -> &::std::option::Option<i32> {
         516  +
        /* BuilderGenerator.kt:337 */
  301    517   
        &self.default_integer
         518  +
        /* BuilderGenerator.kt:336 */
  302    519   
    }
         520  +
    /* BuilderGenerator.kt:286 */
  303    521   
    #[allow(missing_docs)] // documentation missing in model
         522  +
                           /* BuilderGenerator.kt:291 */
  304    523   
    pub fn default_long(mut self, input: i64) -> Self {
         524  +
        /* BuilderGenerator.kt:292 */
  305    525   
        self.default_long = ::std::option::Option::Some(input);
         526  +
        /* BuilderGenerator.kt:293 */
  306    527   
        self
         528  +
        /* BuilderGenerator.kt:291 */
  307    529   
    }
         530  +
    /* BuilderGenerator.kt:312 */
  308    531   
    #[allow(missing_docs)] // documentation missing in model
         532  +
                           /* BuilderGenerator.kt:314 */
  309    533   
    pub fn set_default_long(mut self, input: ::std::option::Option<i64>) -> Self {
         534  +
        /* BuilderGenerator.kt:315 */
  310    535   
        self.default_long = input;
  311    536   
        self
         537  +
        /* BuilderGenerator.kt:314 */
  312    538   
    }
         539  +
    /* BuilderGenerator.kt:334 */
  313    540   
    #[allow(missing_docs)] // documentation missing in model
         541  +
                           /* BuilderGenerator.kt:336 */
  314    542   
    pub fn get_default_long(&self) -> &::std::option::Option<i64> {
         543  +
        /* BuilderGenerator.kt:337 */
  315    544   
        &self.default_long
         545  +
        /* BuilderGenerator.kt:336 */
  316    546   
    }
         547  +
    /* BuilderGenerator.kt:286 */
  317    548   
    #[allow(missing_docs)] // documentation missing in model
         549  +
                           /* BuilderGenerator.kt:291 */
  318    550   
    pub fn default_float(mut self, input: f32) -> Self {
         551  +
        /* BuilderGenerator.kt:292 */
  319    552   
        self.default_float = ::std::option::Option::Some(input);
         553  +
        /* BuilderGenerator.kt:293 */
  320    554   
        self
         555  +
        /* BuilderGenerator.kt:291 */
  321    556   
    }
         557  +
    /* BuilderGenerator.kt:312 */
  322    558   
    #[allow(missing_docs)] // documentation missing in model
         559  +
                           /* BuilderGenerator.kt:314 */
  323    560   
    pub fn set_default_float(mut self, input: ::std::option::Option<f32>) -> Self {
         561  +
        /* BuilderGenerator.kt:315 */
  324    562   
        self.default_float = input;
  325    563   
        self
         564  +
        /* BuilderGenerator.kt:314 */
  326    565   
    }
         566  +
    /* BuilderGenerator.kt:334 */
  327    567   
    #[allow(missing_docs)] // documentation missing in model
         568  +
                           /* BuilderGenerator.kt:336 */
  328    569   
    pub fn get_default_float(&self) -> &::std::option::Option<f32> {
         570  +
        /* BuilderGenerator.kt:337 */
  329    571   
        &self.default_float
         572  +
        /* BuilderGenerator.kt:336 */
  330    573   
    }
         574  +
    /* BuilderGenerator.kt:286 */
  331    575   
    #[allow(missing_docs)] // documentation missing in model
         576  +
                           /* BuilderGenerator.kt:291 */
  332    577   
    pub fn default_double(mut self, input: f64) -> Self {
         578  +
        /* BuilderGenerator.kt:292 */
  333    579   
        self.default_double = ::std::option::Option::Some(input);
         580  +
        /* BuilderGenerator.kt:293 */
  334    581   
        self
         582  +
        /* BuilderGenerator.kt:291 */
  335    583   
    }
         584  +
    /* BuilderGenerator.kt:312 */
  336    585   
    #[allow(missing_docs)] // documentation missing in model
         586  +
                           /* BuilderGenerator.kt:314 */
  337    587   
    pub fn set_default_double(mut self, input: ::std::option::Option<f64>) -> Self {
         588  +
        /* BuilderGenerator.kt:315 */
  338    589   
        self.default_double = input;
  339    590   
        self
         591  +
        /* BuilderGenerator.kt:314 */
  340    592   
    }
         593  +
    /* BuilderGenerator.kt:334 */
  341    594   
    #[allow(missing_docs)] // documentation missing in model
         595  +
                           /* BuilderGenerator.kt:336 */
  342    596   
    pub fn get_default_double(&self) -> &::std::option::Option<f64> {
         597  +
        /* BuilderGenerator.kt:337 */
  343    598   
        &self.default_double
         599  +
        /* BuilderGenerator.kt:336 */
  344    600   
    }
  345         -
    /// Adds a key-value pair to `default_map`.
         601  +
    /// /* BuilderGenerator.kt:436 */Adds a key-value pair to `default_map`.
         602  +
    /* BuilderGenerator.kt:437 */
  346    603   
    ///
  347         -
    /// To override the contents of this collection use [`set_default_map`](Self::set_default_map).
         604  +
    /// /* BuilderGenerator.kt:438 */To override the contents of this collection use [`set_default_map`](Self::set_default_map).
         605  +
    /* BuilderGenerator.kt:439 */
  348    606   
    ///
         607  +
    /* BuilderGenerator.kt:445 */
  349    608   
    pub fn default_map(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
         609  +
        /* BuilderGenerator.kt:448 */
  350    610   
        let mut hash_map = self.default_map.unwrap_or_default();
  351    611   
        hash_map.insert(k.into(), v.into());
  352    612   
        self.default_map = ::std::option::Option::Some(hash_map);
  353    613   
        self
         614  +
        /* BuilderGenerator.kt:445 */
  354    615   
    }
         616  +
    /* BuilderGenerator.kt:312 */
  355    617   
    #[allow(missing_docs)] // documentation missing in model
         618  +
                           /* BuilderGenerator.kt:314 */
  356    619   
    pub fn set_default_map(
  357    620   
        mut self,
  358    621   
        input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
  359    622   
    ) -> Self {
         623  +
        /* BuilderGenerator.kt:315 */
  360    624   
        self.default_map = input;
  361    625   
        self
         626  +
        /* BuilderGenerator.kt:314 */
  362    627   
    }
         628  +
    /* BuilderGenerator.kt:334 */
  363    629   
    #[allow(missing_docs)] // documentation missing in model
         630  +
                           /* BuilderGenerator.kt:336 */
  364    631   
    pub fn get_default_map(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
         632  +
        /* BuilderGenerator.kt:337 */
  365    633   
        &self.default_map
         634  +
        /* BuilderGenerator.kt:336 */
  366    635   
    }
         636  +
    /* BuilderGenerator.kt:286 */
  367    637   
    #[allow(missing_docs)] // documentation missing in model
         638  +
                           /* BuilderGenerator.kt:291 */
  368    639   
    pub fn default_enum(mut self, input: crate::types::TestEnum) -> Self {
         640  +
        /* BuilderGenerator.kt:292 */
  369    641   
        self.default_enum = ::std::option::Option::Some(input);
         642  +
        /* BuilderGenerator.kt:293 */
  370    643   
        self
         644  +
        /* BuilderGenerator.kt:291 */
  371    645   
    }
         646  +
    /* BuilderGenerator.kt:312 */
  372    647   
    #[allow(missing_docs)] // documentation missing in model
         648  +
                           /* BuilderGenerator.kt:314 */
  373    649   
    pub fn set_default_enum(mut self, input: ::std::option::Option<crate::types::TestEnum>) -> Self {
         650  +
        /* BuilderGenerator.kt:315 */
  374    651   
        self.default_enum = input;
  375    652   
        self
         653  +
        /* BuilderGenerator.kt:314 */
  376    654   
    }
         655  +
    /* BuilderGenerator.kt:334 */
  377    656   
    #[allow(missing_docs)] // documentation missing in model
         657  +
                           /* BuilderGenerator.kt:336 */
  378    658   
    pub fn get_default_enum(&self) -> &::std::option::Option<crate::types::TestEnum> {
         659  +
        /* BuilderGenerator.kt:337 */
  379    660   
        &self.default_enum
         661  +
        /* BuilderGenerator.kt:336 */
  380    662   
    }
         663  +
    /* BuilderGenerator.kt:286 */
  381    664   
    #[allow(missing_docs)] // documentation missing in model
         665  +
                           /* BuilderGenerator.kt:291 */
  382    666   
    pub fn default_int_enum(mut self, input: i32) -> Self {
         667  +
        /* BuilderGenerator.kt:292 */
  383    668   
        self.default_int_enum = ::std::option::Option::Some(input);
         669  +
        /* BuilderGenerator.kt:293 */
  384    670   
        self
         671  +
        /* BuilderGenerator.kt:291 */
  385    672   
    }
         673  +
    /* BuilderGenerator.kt:312 */
  386    674   
    #[allow(missing_docs)] // documentation missing in model
         675  +
                           /* BuilderGenerator.kt:314 */
  387    676   
    pub fn set_default_int_enum(mut self, input: ::std::option::Option<i32>) -> Self {
         677  +
        /* BuilderGenerator.kt:315 */
  388    678   
        self.default_int_enum = input;
  389    679   
        self
         680  +
        /* BuilderGenerator.kt:314 */
  390    681   
    }
         682  +
    /* BuilderGenerator.kt:334 */
  391    683   
    #[allow(missing_docs)] // documentation missing in model
         684  +
                           /* BuilderGenerator.kt:336 */
  392    685   
    pub fn get_default_int_enum(&self) -> &::std::option::Option<i32> {
         686  +
        /* BuilderGenerator.kt:337 */
  393    687   
        &self.default_int_enum
         688  +
        /* BuilderGenerator.kt:336 */
  394    689   
    }
         690  +
    /* BuilderGenerator.kt:286 */
  395    691   
    #[allow(missing_docs)] // documentation missing in model
         692  +
                           /* BuilderGenerator.kt:291 */
  396    693   
    pub fn empty_string(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
         694  +
        /* BuilderGenerator.kt:292 */
  397    695   
        self.empty_string = ::std::option::Option::Some(input.into());
         696  +
        /* BuilderGenerator.kt:293 */
  398    697   
        self
         698  +
        /* BuilderGenerator.kt:291 */
  399    699   
    }
         700  +
    /* BuilderGenerator.kt:312 */
  400    701   
    #[allow(missing_docs)] // documentation missing in model
         702  +
                           /* BuilderGenerator.kt:314 */
  401    703   
    pub fn set_empty_string(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         704  +
        /* BuilderGenerator.kt:315 */
  402    705   
        self.empty_string = input;
  403    706   
        self
         707  +
        /* BuilderGenerator.kt:314 */
  404    708   
    }
         709  +
    /* BuilderGenerator.kt:334 */
  405    710   
    #[allow(missing_docs)] // documentation missing in model
         711  +
                           /* BuilderGenerator.kt:336 */
  406    712   
    pub fn get_empty_string(&self) -> &::std::option::Option<::std::string::String> {
         713  +
        /* BuilderGenerator.kt:337 */
  407    714   
        &self.empty_string
         715  +
        /* BuilderGenerator.kt:336 */
  408    716   
    }
         717  +
    /* BuilderGenerator.kt:286 */
  409    718   
    #[allow(missing_docs)] // documentation missing in model
         719  +
                           /* BuilderGenerator.kt:291 */
  410    720   
    pub fn false_boolean(mut self, input: bool) -> Self {
         721  +
        /* BuilderGenerator.kt:292 */
  411    722   
        self.false_boolean = ::std::option::Option::Some(input);
         723  +
        /* BuilderGenerator.kt:293 */
  412    724   
        self
         725  +
        /* BuilderGenerator.kt:291 */
  413    726   
    }
         727  +
    /* BuilderGenerator.kt:312 */
  414    728   
    #[allow(missing_docs)] // documentation missing in model
         729  +
                           /* BuilderGenerator.kt:314 */
  415    730   
    pub fn set_false_boolean(mut self, input: ::std::option::Option<bool>) -> Self {
         731  +
        /* BuilderGenerator.kt:315 */
  416    732   
        self.false_boolean = input;
  417    733   
        self
         734  +
        /* BuilderGenerator.kt:314 */
  418    735   
    }
         736  +
    /* BuilderGenerator.kt:334 */
  419    737   
    #[allow(missing_docs)] // documentation missing in model
         738  +
                           /* BuilderGenerator.kt:336 */
  420    739   
    pub fn get_false_boolean(&self) -> &::std::option::Option<bool> {
         740  +
        /* BuilderGenerator.kt:337 */
  421    741   
        &self.false_boolean
         742  +
        /* BuilderGenerator.kt:336 */
  422    743   
    }
         744  +
    /* BuilderGenerator.kt:286 */
  423    745   
    #[allow(missing_docs)] // documentation missing in model
         746  +
                           /* BuilderGenerator.kt:291 */
  424    747   
    pub fn empty_blob(mut self, input: ::aws_smithy_types::Blob) -> Self {
         748  +
        /* BuilderGenerator.kt:292 */
  425    749   
        self.empty_blob = ::std::option::Option::Some(input);
         750  +
        /* BuilderGenerator.kt:293 */
  426    751   
        self
         752  +
        /* BuilderGenerator.kt:291 */
  427    753   
    }
         754  +
    /* BuilderGenerator.kt:312 */
  428    755   
    #[allow(missing_docs)] // documentation missing in model
         756  +
                           /* BuilderGenerator.kt:314 */
  429    757   
    pub fn set_empty_blob(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
         758  +
        /* BuilderGenerator.kt:315 */
  430    759   
        self.empty_blob = input;
  431    760   
        self
         761  +
        /* BuilderGenerator.kt:314 */
  432    762   
    }
         763  +
    /* BuilderGenerator.kt:334 */
  433    764   
    #[allow(missing_docs)] // documentation missing in model
         765  +
                           /* BuilderGenerator.kt:336 */
  434    766   
    pub fn get_empty_blob(&self) -> &::std::option::Option<::aws_smithy_types::Blob> {
         767  +
        /* BuilderGenerator.kt:337 */
  435    768   
        &self.empty_blob
         769  +
        /* BuilderGenerator.kt:336 */
  436    770   
    }
         771  +
    /* BuilderGenerator.kt:286 */
  437    772   
    #[allow(missing_docs)] // documentation missing in model
         773  +
                           /* BuilderGenerator.kt:291 */
  438    774   
    pub fn zero_byte(mut self, input: i8) -> Self {
         775  +
        /* BuilderGenerator.kt:292 */
  439    776   
        self.zero_byte = ::std::option::Option::Some(input);
         777  +
        /* BuilderGenerator.kt:293 */
  440    778   
        self
         779  +
        /* BuilderGenerator.kt:291 */
  441    780   
    }
         781  +
    /* BuilderGenerator.kt:312 */
  442    782   
    #[allow(missing_docs)] // documentation missing in model
         783  +
                           /* BuilderGenerator.kt:314 */
  443    784   
    pub fn set_zero_byte(mut self, input: ::std::option::Option<i8>) -> Self {
         785  +
        /* BuilderGenerator.kt:315 */
  444    786   
        self.zero_byte = input;
  445    787   
        self
         788  +
        /* BuilderGenerator.kt:314 */
  446    789   
    }
         790  +
    /* BuilderGenerator.kt:334 */
  447    791   
    #[allow(missing_docs)] // documentation missing in model
         792  +
                           /* BuilderGenerator.kt:336 */
  448    793   
    pub fn get_zero_byte(&self) -> &::std::option::Option<i8> {
         794  +
        /* BuilderGenerator.kt:337 */
  449    795   
        &self.zero_byte
         796  +
        /* BuilderGenerator.kt:336 */
  450    797   
    }
         798  +
    /* BuilderGenerator.kt:286 */
  451    799   
    #[allow(missing_docs)] // documentation missing in model
         800  +
                           /* BuilderGenerator.kt:291 */
  452    801   
    pub fn zero_short(mut self, input: i16) -> Self {
         802  +
        /* BuilderGenerator.kt:292 */
  453    803   
        self.zero_short = ::std::option::Option::Some(input);
         804  +
        /* BuilderGenerator.kt:293 */
  454    805   
        self
         806  +
        /* BuilderGenerator.kt:291 */
  455    807   
    }
         808  +
    /* BuilderGenerator.kt:312 */
  456    809   
    #[allow(missing_docs)] // documentation missing in model
         810  +
                           /* BuilderGenerator.kt:314 */
  457    811   
    pub fn set_zero_short(mut self, input: ::std::option::Option<i16>) -> Self {
         812  +
        /* BuilderGenerator.kt:315 */
  458    813   
        self.zero_short = input;
  459    814   
        self
         815  +
        /* BuilderGenerator.kt:314 */
  460    816   
    }
         817  +
    /* BuilderGenerator.kt:334 */
  461    818   
    #[allow(missing_docs)] // documentation missing in model
         819  +
                           /* BuilderGenerator.kt:336 */
  462    820   
    pub fn get_zero_short(&self) -> &::std::option::Option<i16> {
         821  +
        /* BuilderGenerator.kt:337 */
  463    822   
        &self.zero_short
         823  +
        /* BuilderGenerator.kt:336 */
  464    824   
    }
         825  +
    /* BuilderGenerator.kt:286 */
  465    826   
    #[allow(missing_docs)] // documentation missing in model
         827  +
                           /* BuilderGenerator.kt:291 */
  466    828   
    pub fn zero_integer(mut self, input: i32) -> Self {
         829  +
        /* BuilderGenerator.kt:292 */
  467    830   
        self.zero_integer = ::std::option::Option::Some(input);
         831  +
        /* BuilderGenerator.kt:293 */
  468    832   
        self
         833  +
        /* BuilderGenerator.kt:291 */
  469    834   
    }
         835  +
    /* BuilderGenerator.kt:312 */
  470    836   
    #[allow(missing_docs)] // documentation missing in model
         837  +
                           /* BuilderGenerator.kt:314 */
  471    838   
    pub fn set_zero_integer(mut self, input: ::std::option::Option<i32>) -> Self {
         839  +
        /* BuilderGenerator.kt:315 */
  472    840   
        self.zero_integer = input;
  473    841   
        self
         842  +
        /* BuilderGenerator.kt:314 */
  474    843   
    }
         844  +
    /* BuilderGenerator.kt:334 */
  475    845   
    #[allow(missing_docs)] // documentation missing in model
         846  +
                           /* BuilderGenerator.kt:336 */
  476    847   
    pub fn get_zero_integer(&self) -> &::std::option::Option<i32> {
         848  +
        /* BuilderGenerator.kt:337 */
  477    849   
        &self.zero_integer
         850  +
        /* BuilderGenerator.kt:336 */
  478    851   
    }
         852  +
    /* BuilderGenerator.kt:286 */
  479    853   
    #[allow(missing_docs)] // documentation missing in model
         854  +
                           /* BuilderGenerator.kt:291 */
  480    855   
    pub fn zero_long(mut self, input: i64) -> Self {
         856  +
        /* BuilderGenerator.kt:292 */
  481    857   
        self.zero_long = ::std::option::Option::Some(input);
         858  +
        /* BuilderGenerator.kt:293 */
  482    859   
        self
         860  +
        /* BuilderGenerator.kt:291 */
  483    861   
    }
         862  +
    /* BuilderGenerator.kt:312 */
  484    863   
    #[allow(missing_docs)] // documentation missing in model
         864  +
                           /* BuilderGenerator.kt:314 */
  485    865   
    pub fn set_zero_long(mut self, input: ::std::option::Option<i64>) -> Self {
         866  +
        /* BuilderGenerator.kt:315 */
  486    867   
        self.zero_long = input;
  487    868   
        self
         869  +
        /* BuilderGenerator.kt:314 */
  488    870   
    }
         871  +
    /* BuilderGenerator.kt:334 */
  489    872   
    #[allow(missing_docs)] // documentation missing in model
         873  +
                           /* BuilderGenerator.kt:336 */
  490    874   
    pub fn get_zero_long(&self) -> &::std::option::Option<i64> {
         875  +
        /* BuilderGenerator.kt:337 */
  491    876   
        &self.zero_long
         877  +
        /* BuilderGenerator.kt:336 */
  492    878   
    }
         879  +
    /* BuilderGenerator.kt:286 */
  493    880   
    #[allow(missing_docs)] // documentation missing in model
         881  +
                           /* BuilderGenerator.kt:291 */
  494    882   
    pub fn zero_float(mut self, input: f32) -> Self {
         883  +
        /* BuilderGenerator.kt:292 */
  495    884   
        self.zero_float = ::std::option::Option::Some(input);
         885  +
        /* BuilderGenerator.kt:293 */
  496    886   
        self
         887  +
        /* BuilderGenerator.kt:291 */
  497    888   
    }
         889  +
    /* BuilderGenerator.kt:312 */
  498    890   
    #[allow(missing_docs)] // documentation missing in model
         891  +
                           /* BuilderGenerator.kt:314 */
  499    892   
    pub fn set_zero_float(mut self, input: ::std::option::Option<f32>) -> Self {
         893  +
        /* BuilderGenerator.kt:315 */
  500    894   
        self.zero_float = input;
  501    895   
        self
         896  +
        /* BuilderGenerator.kt:314 */
  502    897   
    }
         898  +
    /* BuilderGenerator.kt:334 */
  503    899   
    #[allow(missing_docs)] // documentation missing in model
         900  +
                           /* BuilderGenerator.kt:336 */
  504    901   
    pub fn get_zero_float(&self) -> &::std::option::Option<f32> {
         902  +
        /* BuilderGenerator.kt:337 */
  505    903   
        &self.zero_float
         904  +
        /* BuilderGenerator.kt:336 */
  506    905   
    }
         906  +
    /* BuilderGenerator.kt:286 */
  507    907   
    #[allow(missing_docs)] // documentation missing in model
         908  +
                           /* BuilderGenerator.kt:291 */
  508    909   
    pub fn zero_double(mut self, input: f64) -> Self {
         910  +
        /* BuilderGenerator.kt:292 */
  509    911   
        self.zero_double = ::std::option::Option::Some(input);
         912  +
        /* BuilderGenerator.kt:293 */
  510    913   
        self
         914  +
        /* BuilderGenerator.kt:291 */
  511    915   
    }
         916  +
    /* BuilderGenerator.kt:312 */
  512    917   
    #[allow(missing_docs)] // documentation missing in model
         918  +
                           /* BuilderGenerator.kt:314 */
  513    919   
    pub fn set_zero_double(mut self, input: ::std::option::Option<f64>) -> Self {
         920  +
        /* BuilderGenerator.kt:315 */
  514    921   
        self.zero_double = input;
  515    922   
        self
         923  +
        /* BuilderGenerator.kt:314 */
  516    924   
    }
         925  +
    /* BuilderGenerator.kt:334 */
  517    926   
    #[allow(missing_docs)] // documentation missing in model
         927  +
                           /* BuilderGenerator.kt:336 */
  518    928   
    pub fn get_zero_double(&self) -> &::std::option::Option<f64> {
         929  +
        /* BuilderGenerator.kt:337 */
  519    930   
        &self.zero_double
         931  +
        /* BuilderGenerator.kt:336 */
  520    932   
    }
  521         -
    /// Consumes the builder and constructs a [`Defaults`](crate::types::Defaults).
         933  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`Defaults`](crate::types::Defaults).
         934  +
    /* BuilderGenerator.kt:253 */
  522    935   
    pub fn build(self) -> crate::types::Defaults {
         936  +
        /* BuilderGenerator.kt:477 */
  523    937   
        crate::types::Defaults {
  524         -
            default_string: self.default_string.unwrap_or_else(|| "hi".to_owned()),
  525         -
            default_boolean: self.default_boolean.unwrap_or(true),
  526         -
            default_list: self.default_list.unwrap_or_default(),
         938  +
            /* BuilderGenerator.kt:481 */
         939  +
            default_string: self
         940  +
                .default_string
         941  +
                /* BuilderGenerator.kt:489 */
         942  +
                .unwrap_or_else(|| "hi".to_owned()),
         943  +
            /* BuilderGenerator.kt:481 */
         944  +
            default_boolean: self
         945  +
                .default_boolean
         946  +
                /* BuilderGenerator.kt:491 */
         947  +
                .unwrap_or(true),
         948  +
            /* BuilderGenerator.kt:481 */
         949  +
            default_list: self
         950  +
                .default_list
         951  +
                /* BuilderGenerator.kt:487 */
         952  +
                .unwrap_or_default(),
         953  +
            /* BuilderGenerator.kt:481 */
  527    954   
            default_timestamp: self
  528    955   
                .default_timestamp
         956  +
                /* BuilderGenerator.kt:489 */
  529    957   
                .unwrap_or_else(|| ::aws_smithy_types::DateTime::from_fractional_secs(0, 0_f64)),
  530         -
            default_blob: self.default_blob.unwrap_or_else(|| ::aws_smithy_types::Blob::new("abc")),
  531         -
            default_byte: self.default_byte.unwrap_or(1),
  532         -
            default_short: self.default_short.unwrap_or(1),
  533         -
            default_integer: self.default_integer.unwrap_or(10),
  534         -
            default_long: self.default_long.unwrap_or(100),
  535         -
            default_float: self.default_float.unwrap_or(1.0_f32),
  536         -
            default_double: self.default_double.unwrap_or(1.0_f64),
  537         -
            default_map: self.default_map.unwrap_or_default(),
         958  +
            /* BuilderGenerator.kt:481 */
         959  +
            default_blob: self
         960  +
                .default_blob
         961  +
                /* BuilderGenerator.kt:489 */
         962  +
                .unwrap_or_else(|| ::aws_smithy_types::Blob::new("abc")),
         963  +
            /* BuilderGenerator.kt:481 */
         964  +
            default_byte: self
         965  +
                .default_byte
         966  +
                /* BuilderGenerator.kt:491 */
         967  +
                .unwrap_or(1),
         968  +
            /* BuilderGenerator.kt:481 */
         969  +
            default_short: self
         970  +
                .default_short
         971  +
                /* BuilderGenerator.kt:491 */
         972  +
                .unwrap_or(1),
         973  +
            /* BuilderGenerator.kt:481 */
         974  +
            default_integer: self
         975  +
                .default_integer
         976  +
                /* BuilderGenerator.kt:491 */
         977  +
                .unwrap_or(10),
         978  +
            /* BuilderGenerator.kt:481 */
         979  +
            default_long: self
         980  +
                .default_long
         981  +
                /* BuilderGenerator.kt:491 */
         982  +
                .unwrap_or(100),
         983  +
            /* BuilderGenerator.kt:481 */
         984  +
            default_float: self
         985  +
                .default_float
         986  +
                /* BuilderGenerator.kt:491 */
         987  +
                .unwrap_or(1.0_f32),
         988  +
            /* BuilderGenerator.kt:481 */
         989  +
            default_double: self
         990  +
                .default_double
         991  +
                /* BuilderGenerator.kt:491 */
         992  +
                .unwrap_or(1.0_f64),
         993  +
            /* BuilderGenerator.kt:481 */
         994  +
            default_map: self
         995  +
                .default_map
         996  +
                /* BuilderGenerator.kt:487 */
         997  +
                .unwrap_or_default(),
         998  +
            /* BuilderGenerator.kt:481 */
  538    999   
            default_enum: self
  539   1000   
                .default_enum
        1001  +
                /* BuilderGenerator.kt:491 */
  540   1002   
                .unwrap_or("FOO".parse::<crate::types::TestEnum>().expect("static value validated to member")),
  541         -
            default_int_enum: self.default_int_enum.unwrap_or(1),
  542         -
            empty_string: self.empty_string.unwrap_or_default(),
  543         -
            false_boolean: self.false_boolean.unwrap_or_default(),
  544         -
            empty_blob: self.empty_blob.unwrap_or_default(),
  545         -
            zero_byte: self.zero_byte.unwrap_or_default(),
  546         -
            zero_short: self.zero_short.unwrap_or_default(),
  547         -
            zero_integer: self.zero_integer.unwrap_or_default(),
  548         -
            zero_long: self.zero_long.unwrap_or_default(),
  549         -
            zero_float: self.zero_float.unwrap_or(0.0_f32),
  550         -
            zero_double: self.zero_double.unwrap_or(0.0_f64),
        1003  +
            /* BuilderGenerator.kt:481 */
        1004  +
            default_int_enum: self
        1005  +
                .default_int_enum
        1006  +
                /* BuilderGenerator.kt:491 */
        1007  +
                .unwrap_or(1),
        1008  +
            /* BuilderGenerator.kt:481 */
        1009  +
            empty_string: self
        1010  +
                .empty_string
        1011  +
                /* BuilderGenerator.kt:487 */
        1012  +
                .unwrap_or_default(),
        1013  +
            /* BuilderGenerator.kt:481 */
        1014  +
            false_boolean: self
        1015  +
                .false_boolean
        1016  +
                /* BuilderGenerator.kt:487 */
        1017  +
                .unwrap_or_default(),
        1018  +
            /* BuilderGenerator.kt:481 */
        1019  +
            empty_blob: self
        1020  +
                .empty_blob
        1021  +
                /* BuilderGenerator.kt:487 */
        1022  +
                .unwrap_or_default(),
        1023  +
            /* BuilderGenerator.kt:481 */
        1024  +
            zero_byte: self
        1025  +
                .zero_byte
        1026  +
                /* BuilderGenerator.kt:487 */
        1027  +
                .unwrap_or_default(),
        1028  +
            /* BuilderGenerator.kt:481 */
        1029  +
            zero_short: self
        1030  +
                .zero_short
        1031  +
                /* BuilderGenerator.kt:487 */
        1032  +
                .unwrap_or_default(),
        1033  +
            /* BuilderGenerator.kt:481 */
        1034  +
            zero_integer: self
        1035  +
                .zero_integer
        1036  +
                /* BuilderGenerator.kt:487 */
        1037  +
                .unwrap_or_default(),
        1038  +
            /* BuilderGenerator.kt:481 */
        1039  +
            zero_long: self
        1040  +
                .zero_long
        1041  +
                /* BuilderGenerator.kt:487 */
        1042  +
                .unwrap_or_default(),
        1043  +
            /* BuilderGenerator.kt:481 */
        1044  +
            zero_float: self
        1045  +
                .zero_float
        1046  +
                /* BuilderGenerator.kt:491 */
        1047  +
                .unwrap_or(0.0_f32),
        1048  +
            /* BuilderGenerator.kt:481 */
        1049  +
            zero_double: self
        1050  +
                .zero_double
        1051  +
                /* BuilderGenerator.kt:491 */
        1052  +
                .unwrap_or(0.0_f64),
        1053  +
            /* BuilderGenerator.kt:477 */
  551   1054   
        }
        1055  +
        /* BuilderGenerator.kt:253 */
  552   1056   
    }
        1057  +
    /* BuilderGenerator.kt:355 */
  553   1058   
}

tmp-codegen-diff/codegen-client-test/rpcv2Cbor/rust-client-codegen/src/types/_foo_enum.rs

@@ -1,1 +126,152 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
    3         -
/// When writing a match expression against `FooEnum`, it is important to ensure
           2  +
/* ClientEnumGenerator.kt:234 */
           3  +
/// /* ClientEnumGenerator.kt:234 */When writing a match expression against `FooEnum`, it is important to ensure
    4      4   
/// your code is forward-compatible. That is, if a match arm handles a case for a
    5      5   
/// feature that is supported by the service but has not been represented as an enum
    6      6   
/// variant in a current version of SDK, your code should continue to work when you
    7      7   
/// upgrade SDK to a future version in which the enum does include a variant for that
    8      8   
/// feature.
    9         -
///
   10         -
/// Here is an example of how you can make a match expression forward-compatible:
   11         -
///
   12         -
/// ```text
           9  +
/// /* ClientEnumGenerator.kt:244 */
          10  +
/// /* ClientEnumGenerator.kt:245 */Here is an example of how you can make a match expression forward-compatible:
          11  +
/// /* ClientEnumGenerator.kt:246 */
          12  +
/// /* ClientEnumGenerator.kt:247 */```text
          13  +
/* ClientEnumGenerator.kt:248 */
   13     14   
/// # let fooenum = unimplemented!();
          15  +
/* ClientEnumGenerator.kt:249 */
   14     16   
/// match fooenum {
          17  +
/* ClientEnumGenerator.kt:251 */
   15     18   
///     FooEnum::Zero => { /* ... */ },
          19  +
/* ClientEnumGenerator.kt:251 */
   16     20   
///     FooEnum::One => { /* ... */ },
          21  +
/* ClientEnumGenerator.kt:251 */
   17     22   
///     FooEnum::Bar => { /* ... */ },
          23  +
/* ClientEnumGenerator.kt:251 */
   18     24   
///     FooEnum::Baz => { /* ... */ },
          25  +
/* ClientEnumGenerator.kt:251 */
   19     26   
///     FooEnum::Foo => { /* ... */ },
          27  +
/* ClientEnumGenerator.kt:253 */
   20     28   
///     other @ _ if other.as_str() == "NewFeature" => { /* handles a case for `NewFeature` */ },
          29  +
/* ClientEnumGenerator.kt:254 */
   21     30   
///     _ => { /* ... */ },
          31  +
/* ClientEnumGenerator.kt:255 */
   22     32   
/// }
   23         -
/// ```
   24         -
/// The above code demonstrates that when `fooenum` represents
          33  +
/// /* ClientEnumGenerator.kt:256 */```
          34  +
/// /* ClientEnumGenerator.kt:257 */The above code demonstrates that when `fooenum` represents
   25     35   
/// `NewFeature`, the execution path will lead to the second last match arm,
   26     36   
/// even though the enum does not contain a variant `FooEnum::NewFeature`
   27     37   
/// in the current version of SDK. The reason is that the variable `other`,
   28     38   
/// created by the `@` operator, is bound to
   29     39   
/// `FooEnum::Unknown(UnknownVariantValue("NewFeature".to_owned()))`
   30     40   
/// and calling `as_str` on it yields `"NewFeature"`.
   31     41   
/// This match expression is forward-compatible when executed with a newer
   32     42   
/// version of SDK where the variant `FooEnum::NewFeature` is defined.
   33     43   
/// Specifically, when `fooenum` represents `NewFeature`,
   34     44   
/// the execution path will hit the second last match arm as before by virtue of
   35     45   
/// calling `as_str` on `FooEnum::NewFeature` also yielding `"NewFeature"`.
   36         -
///
   37         -
/// Explicitly matching on the `Unknown` variant should
          46  +
/// /* ClientEnumGenerator.kt:273 */
          47  +
/// /* ClientEnumGenerator.kt:274 */Explicitly matching on the `Unknown` variant should
   38     48   
/// be avoided for two reasons:
   39     49   
/// - The inner data `UnknownVariantValue` is opaque, and no further information can be extracted.
   40     50   
/// - It might inadvertently shadow other intended match arms.
   41         -
///
          51  +
/// /* ClientEnumGenerator.kt:282 */
          52  +
/* EnumGenerator.kt:154 */
   42     53   
#[allow(missing_docs)] // documentation missing in model
          54  +
/* RustType.kt:516 */
   43     55   
#[non_exhaustive]
          56  +
/* RustType.kt:516 */
   44     57   
#[derive(
   45     58   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::Ord, ::std::cmp::PartialEq, ::std::cmp::PartialOrd, ::std::fmt::Debug, ::std::hash::Hash,
   46     59   
)]
   47         -
pub enum FooEnum {
   48         -
    #[allow(missing_docs)] // documentation missing in model
          60  +
pub /* EnumGenerator.kt:267 */ enum FooEnum {
          61  +
    /* EnumGenerator.kt:154 */ #[allow(missing_docs)] // documentation missing in model
          62  +
    /* EnumGenerator.kt:143 */
   49     63   
    Zero,
   50         -
    #[allow(missing_docs)] // documentation missing in model
          64  +
    /* EnumGenerator.kt:154 */ #[allow(missing_docs)] // documentation missing in model
          65  +
    /* EnumGenerator.kt:143 */
   51     66   
    One,
   52         -
    #[allow(missing_docs)] // documentation missing in model
          67  +
    /* EnumGenerator.kt:154 */ #[allow(missing_docs)] // documentation missing in model
          68  +
    /* EnumGenerator.kt:143 */
   53     69   
    Bar,
   54         -
    #[allow(missing_docs)] // documentation missing in model
          70  +
    /* EnumGenerator.kt:154 */ #[allow(missing_docs)] // documentation missing in model
          71  +
    /* EnumGenerator.kt:143 */
   55     72   
    Baz,
   56         -
    #[allow(missing_docs)] // documentation missing in model
          73  +
    /* EnumGenerator.kt:154 */ #[allow(missing_docs)] // documentation missing in model
          74  +
    /* EnumGenerator.kt:143 */
   57     75   
    Foo,
   58         -
    /// `Unknown` contains new variants that have been added since this code was generated.
          76  +
    /// /* ClientEnumGenerator.kt:175 */`Unknown` contains new variants that have been added since this code was generated.
          77  +
    /* ClientEnumGenerator.kt:176 */
   59     78   
    #[deprecated(note = "Don't directly match on `Unknown`. See the docs on this enum for the correct way to handle unknown variants.")]
   60         -
    Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue),
          79  +
    /* ClientEnumGenerator.kt:179 */
          80  +
    Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue), /* EnumGenerator.kt:267 */
   61     81   
}
          82  +
/* ClientEnumGenerator.kt:42 */
   62     83   
impl ::std::convert::From<&str> for FooEnum {
   63     84   
    fn from(s: &str) -> Self {
   64     85   
        match s {
   65     86   
            "0" => FooEnum::Zero,
   66     87   
            "1" => FooEnum::One,
   67     88   
            "Bar" => FooEnum::Bar,
   68     89   
            "Baz" => FooEnum::Baz,
   69     90   
            "Foo" => FooEnum::Foo,
   70     91   
            other => FooEnum::Unknown(crate::primitives::sealed_enum_unknown::UnknownVariantValue(other.to_owned())),
   71     92   
        }
   72     93   
    }
   73     94   
}
          95  +
/* ClientEnumGenerator.kt:68 */
   74     96   
impl ::std::str::FromStr for FooEnum {
   75     97   
    type Err = ::std::convert::Infallible;
   76     98   
   77     99   
    fn from_str(s: &str) -> ::std::result::Result<Self, <Self as ::std::str::FromStr>::Err> {
   78    100   
        ::std::result::Result::Ok(FooEnum::from(s))
   79    101   
    }
   80    102   
}
         103  +
/* EnumGenerator.kt:274 */
   81    104   
impl FooEnum {
   82    105   
    /// Returns the `&str` value of the enum member.
   83    106   
    pub fn as_str(&self) -> &str {
   84    107   
        match self {
   85    108   
            FooEnum::Zero => "0",
   86    109   
            FooEnum::One => "1",
   87    110   
            FooEnum::Bar => "Bar",
   88    111   
            FooEnum::Baz => "Baz",
   89    112   
            FooEnum::Foo => "Foo",
   90    113   
            FooEnum::Unknown(value) => value.as_str(),
   91    114   
        }
   92    115   
    }
   93    116   
    /// Returns all the `&str` representations of the enum members.
   94    117   
    pub const fn values() -> &'static [&'static str] {
   95    118   
        &["0", "1", "Bar", "Baz", "Foo"]
   96    119   
    }
   97    120   
}
         121  +
/* EnumGenerator.kt:223 */
   98    122   
impl ::std::convert::AsRef<str> for FooEnum {
   99    123   
    fn as_ref(&self) -> &str {
  100    124   
        self.as_str()
  101    125   
    }
  102    126   
}
         127  +
/* ClientEnumGenerator.kt:117 */
  103    128   
impl FooEnum {
  104    129   
    /// Parses the enum value while disallowing unknown variants.
  105    130   
    ///
  106    131   
    /// Unknown variants will result in an error.
  107    132   
    pub fn try_parse(value: &str) -> ::std::result::Result<Self, crate::error::UnknownVariantError> {
  108    133   
        match Self::from(value) {
  109    134   
            #[allow(deprecated)]
  110    135   
            Self::Unknown(_) => ::std::result::Result::Err(crate::error::UnknownVariantError::new(value)),
  111    136   
            known => Ok(known),
  112    137   
        }
  113    138   
    }
  114    139   
}
         140  +
/* ClientEnumGenerator.kt:136 */
  115    141   
impl ::std::fmt::Display for FooEnum {
  116    142   
    fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result {
  117    143   
        match self {
  118    144   
            FooEnum::Zero => write!(f, "0"),
  119    145   
            FooEnum::One => write!(f, "1"),
  120    146   
            FooEnum::Bar => write!(f, "Bar"),
  121    147   
            FooEnum::Baz => write!(f, "Baz"),
  122    148   
            FooEnum::Foo => write!(f, "Foo"),
  123    149   
            FooEnum::Unknown(value) => write!(f, "{}", value),
  124    150   
        }

tmp-codegen-diff/codegen-client-test/rpcv2Cbor/rust-client-codegen/src/types/_greeting_struct.rs

@@ -1,1 +47,88 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct GreetingStruct {
           8  +
pub /* StructureGenerator.kt:201 */ struct GreetingStruct {
           9  +
    /* StructureGenerator.kt:231 */
    6     10   
    #[allow(missing_docs)] // documentation missing in model
    7     11   
    pub hi: ::std::option::Option<::std::string::String>,
          12  +
    /* StructureGenerator.kt:201 */
    8     13   
}
          14  +
/* StructureGenerator.kt:135 */
    9     15   
impl GreetingStruct {
          16  +
    /* StructureGenerator.kt:231 */
   10     17   
    #[allow(missing_docs)] // documentation missing in model
          18  +
                           /* StructureGenerator.kt:166 */
   11     19   
    pub fn hi(&self) -> ::std::option::Option<&str> {
          20  +
        /* StructureGenerator.kt:169 */
   12     21   
        self.hi.as_deref()
          22  +
        /* StructureGenerator.kt:166 */
   13     23   
    }
          24  +
    /* StructureGenerator.kt:135 */
   14     25   
}
          26  +
/* ClientCodegenVisitor.kt:237 */
   15     27   
impl GreetingStruct {
   16         -
    /// Creates a new builder-style object to manufacture [`GreetingStruct`](crate::types::GreetingStruct).
          28  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`GreetingStruct`](crate::types::GreetingStruct).
          29  +
    /* BuilderGenerator.kt:175 */
   17     30   
    pub fn builder() -> crate::types::builders::GreetingStructBuilder {
          31  +
        /* BuilderGenerator.kt:176 */
   18     32   
        crate::types::builders::GreetingStructBuilder::default()
          33  +
        /* BuilderGenerator.kt:175 */
   19     34   
    }
          35  +
    /* ClientCodegenVisitor.kt:237 */
   20     36   
}
   21     37   
   22         -
/// A builder for [`GreetingStruct`](crate::types::GreetingStruct).
          38  +
/// /* BuilderGenerator.kt:342 */A builder for [`GreetingStruct`](crate::types::GreetingStruct).
          39  +
/* RustType.kt:516 */
   23     40   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          41  +
/* RustType.kt:516 */
   24     42   
#[non_exhaustive]
          43  +
/* BuilderGenerator.kt:345 */
   25     44   
pub struct GreetingStructBuilder {
   26         -
    pub(crate) hi: ::std::option::Option<::std::string::String>,
          45  +
    /* BuilderGenerator.kt:275 */ pub(crate) hi: ::std::option::Option<::std::string::String>,
          46  +
    /* BuilderGenerator.kt:345 */
   27     47   
}
          48  +
/* BuilderGenerator.kt:355 */
   28     49   
impl GreetingStructBuilder {
          50  +
    /* BuilderGenerator.kt:286 */
   29     51   
    #[allow(missing_docs)] // documentation missing in model
          52  +
                           /* BuilderGenerator.kt:291 */
   30     53   
    pub fn hi(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
          54  +
        /* BuilderGenerator.kt:292 */
   31     55   
        self.hi = ::std::option::Option::Some(input.into());
          56  +
        /* BuilderGenerator.kt:293 */
   32     57   
        self
          58  +
        /* BuilderGenerator.kt:291 */
   33     59   
    }
          60  +
    /* BuilderGenerator.kt:312 */
   34     61   
    #[allow(missing_docs)] // documentation missing in model
          62  +
                           /* BuilderGenerator.kt:314 */
   35     63   
    pub fn set_hi(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
          64  +
        /* BuilderGenerator.kt:315 */
   36     65   
        self.hi = input;
   37     66   
        self
          67  +
        /* BuilderGenerator.kt:314 */
   38     68   
    }
          69  +
    /* BuilderGenerator.kt:334 */
   39     70   
    #[allow(missing_docs)] // documentation missing in model
          71  +
                           /* BuilderGenerator.kt:336 */
   40     72   
    pub fn get_hi(&self) -> &::std::option::Option<::std::string::String> {
          73  +
        /* BuilderGenerator.kt:337 */
   41     74   
        &self.hi
          75  +
        /* BuilderGenerator.kt:336 */
   42     76   
    }
   43         -
    /// Consumes the builder and constructs a [`GreetingStruct`](crate::types::GreetingStruct).
          77  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`GreetingStruct`](crate::types::GreetingStruct).
          78  +
    /* BuilderGenerator.kt:253 */
   44     79   
    pub fn build(self) -> crate::types::GreetingStruct {
   45         -
        crate::types::GreetingStruct { hi: self.hi }
          80  +
        /* BuilderGenerator.kt:477 */
          81  +
        crate::types::GreetingStruct {
          82  +
            /* BuilderGenerator.kt:481 */ hi: self.hi,
          83  +
            /* BuilderGenerator.kt:477 */
          84  +
        }
          85  +
        /* BuilderGenerator.kt:253 */
   46     86   
    }
          87  +
    /* BuilderGenerator.kt:355 */
   47     88   
}

tmp-codegen-diff/codegen-client-test/rpcv2Cbor/rust-client-codegen/src/types/_recursive_shapes_input_output_nested1.rs

@@ -1,1 +71,130 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct RecursiveShapesInputOutputNested1 {
           8  +
pub /* StructureGenerator.kt:201 */ struct RecursiveShapesInputOutputNested1 {
           9  +
    /* StructureGenerator.kt:231 */
    6     10   
    #[allow(missing_docs)] // documentation missing in model
    7     11   
    pub foo: ::std::option::Option<::std::string::String>,
          12  +
    /* StructureGenerator.kt:231 */
    8     13   
    #[allow(missing_docs)] // documentation missing in model
    9     14   
    pub nested: ::std::option::Option<::std::boxed::Box<crate::types::RecursiveShapesInputOutputNested2>>,
          15  +
    /* StructureGenerator.kt:201 */
   10     16   
}
          17  +
/* StructureGenerator.kt:135 */
   11     18   
impl RecursiveShapesInputOutputNested1 {
          19  +
    /* StructureGenerator.kt:231 */
   12     20   
    #[allow(missing_docs)] // documentation missing in model
          21  +
                           /* StructureGenerator.kt:166 */
   13     22   
    pub fn foo(&self) -> ::std::option::Option<&str> {
          23  +
        /* StructureGenerator.kt:169 */
   14     24   
        self.foo.as_deref()
          25  +
        /* StructureGenerator.kt:166 */
   15     26   
    }
          27  +
    /* StructureGenerator.kt:231 */
   16     28   
    #[allow(missing_docs)] // documentation missing in model
          29  +
                           /* StructureGenerator.kt:166 */
   17     30   
    pub fn nested(&self) -> ::std::option::Option<&crate::types::RecursiveShapesInputOutputNested2> {
          31  +
        /* StructureGenerator.kt:169 */
   18     32   
        self.nested.as_deref()
          33  +
        /* StructureGenerator.kt:166 */
   19     34   
    }
          35  +
    /* StructureGenerator.kt:135 */
   20     36   
}
          37  +
/* ClientCodegenVisitor.kt:237 */
   21     38   
impl RecursiveShapesInputOutputNested1 {
   22         -
    /// Creates a new builder-style object to manufacture [`RecursiveShapesInputOutputNested1`](crate::types::RecursiveShapesInputOutputNested1).
          39  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`RecursiveShapesInputOutputNested1`](crate::types::RecursiveShapesInputOutputNested1).
          40  +
    /* BuilderGenerator.kt:175 */
   23     41   
    pub fn builder() -> crate::types::builders::RecursiveShapesInputOutputNested1Builder {
          42  +
        /* BuilderGenerator.kt:176 */
   24     43   
        crate::types::builders::RecursiveShapesInputOutputNested1Builder::default()
          44  +
        /* BuilderGenerator.kt:175 */
   25     45   
    }
          46  +
    /* ClientCodegenVisitor.kt:237 */
   26     47   
}
   27     48   
   28         -
/// A builder for [`RecursiveShapesInputOutputNested1`](crate::types::RecursiveShapesInputOutputNested1).
          49  +
/// /* BuilderGenerator.kt:342 */A builder for [`RecursiveShapesInputOutputNested1`](crate::types::RecursiveShapesInputOutputNested1).
          50  +
/* RustType.kt:516 */
   29     51   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          52  +
/* RustType.kt:516 */
   30     53   
#[non_exhaustive]
          54  +
/* BuilderGenerator.kt:345 */
   31     55   
pub struct RecursiveShapesInputOutputNested1Builder {
   32         -
    pub(crate) foo: ::std::option::Option<::std::string::String>,
          56  +
    /* BuilderGenerator.kt:275 */ pub(crate) foo: ::std::option::Option<::std::string::String>,
          57  +
    /* BuilderGenerator.kt:275 */
   33     58   
    pub(crate) nested: ::std::option::Option<::std::boxed::Box<crate::types::RecursiveShapesInputOutputNested2>>,
          59  +
    /* BuilderGenerator.kt:345 */
   34     60   
}
          61  +
/* BuilderGenerator.kt:355 */
   35     62   
impl RecursiveShapesInputOutputNested1Builder {
          63  +
    /* BuilderGenerator.kt:286 */
   36     64   
    #[allow(missing_docs)] // documentation missing in model
          65  +
                           /* BuilderGenerator.kt:291 */
   37     66   
    pub fn foo(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
          67  +
        /* BuilderGenerator.kt:292 */
   38     68   
        self.foo = ::std::option::Option::Some(input.into());
          69  +
        /* BuilderGenerator.kt:293 */
   39     70   
        self
          71  +
        /* BuilderGenerator.kt:291 */
   40     72   
    }
          73  +
    /* BuilderGenerator.kt:312 */
   41     74   
    #[allow(missing_docs)] // documentation missing in model
          75  +
                           /* BuilderGenerator.kt:314 */
   42     76   
    pub fn set_foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
          77  +
        /* BuilderGenerator.kt:315 */
   43     78   
        self.foo = input;
   44     79   
        self
          80  +
        /* BuilderGenerator.kt:314 */
   45     81   
    }
          82  +
    /* BuilderGenerator.kt:334 */
   46     83   
    #[allow(missing_docs)] // documentation missing in model
          84  +
                           /* BuilderGenerator.kt:336 */
   47     85   
    pub fn get_foo(&self) -> &::std::option::Option<::std::string::String> {
          86  +
        /* BuilderGenerator.kt:337 */
   48     87   
        &self.foo
          88  +
        /* BuilderGenerator.kt:336 */
   49     89   
    }
          90  +
    /* BuilderGenerator.kt:286 */
   50     91   
    #[allow(missing_docs)] // documentation missing in model
          92  +
                           /* BuilderGenerator.kt:291 */
   51     93   
    pub fn nested(mut self, input: impl ::std::convert::Into<::std::boxed::Box<crate::types::RecursiveShapesInputOutputNested2>>) -> Self {
          94  +
        /* BuilderGenerator.kt:292 */
   52     95   
        self.nested = ::std::option::Option::Some(input.into());
          96  +
        /* BuilderGenerator.kt:293 */
   53     97   
        self
          98  +
        /* BuilderGenerator.kt:291 */
   54     99   
    }
         100  +
    /* BuilderGenerator.kt:312 */
   55    101   
    #[allow(missing_docs)] // documentation missing in model
         102  +
                           /* BuilderGenerator.kt:314 */
   56    103   
    pub fn set_nested(mut self, input: ::std::option::Option<::std::boxed::Box<crate::types::RecursiveShapesInputOutputNested2>>) -> Self {
         104  +
        /* BuilderGenerator.kt:315 */
   57    105   
        self.nested = input;
   58    106   
        self
         107  +
        /* BuilderGenerator.kt:314 */
   59    108   
    }
         109  +
    /* BuilderGenerator.kt:334 */
   60    110   
    #[allow(missing_docs)] // documentation missing in model
         111  +
                           /* BuilderGenerator.kt:336 */
   61    112   
    pub fn get_nested(&self) -> &::std::option::Option<::std::boxed::Box<crate::types::RecursiveShapesInputOutputNested2>> {
         113  +
        /* BuilderGenerator.kt:337 */
   62    114   
        &self.nested
         115  +
        /* BuilderGenerator.kt:336 */
   63    116   
    }
   64         -
    /// Consumes the builder and constructs a [`RecursiveShapesInputOutputNested1`](crate::types::RecursiveShapesInputOutputNested1).
         117  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`RecursiveShapesInputOutputNested1`](crate::types::RecursiveShapesInputOutputNested1).
         118  +
    /* BuilderGenerator.kt:253 */
   65    119   
    pub fn build(self) -> crate::types::RecursiveShapesInputOutputNested1 {
         120  +
        /* BuilderGenerator.kt:477 */
   66    121   
        crate::types::RecursiveShapesInputOutputNested1 {
   67         -
            foo: self.foo,
         122  +
            /* BuilderGenerator.kt:481 */ foo: self.foo,
         123  +
            /* BuilderGenerator.kt:481 */
   68    124   
            nested: self.nested,
         125  +
            /* BuilderGenerator.kt:477 */
   69    126   
        }
         127  +
        /* BuilderGenerator.kt:253 */
   70    128   
    }
         129  +
    /* BuilderGenerator.kt:355 */
   71    130   
}

tmp-codegen-diff/codegen-client-test/rpcv2Cbor/rust-client-codegen/src/types/_recursive_shapes_input_output_nested2.rs

@@ -1,1 +71,130 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct RecursiveShapesInputOutputNested2 {
           8  +
pub /* StructureGenerator.kt:201 */ struct RecursiveShapesInputOutputNested2 {
           9  +
    /* StructureGenerator.kt:231 */
    6     10   
    #[allow(missing_docs)] // documentation missing in model
    7     11   
    pub bar: ::std::option::Option<::std::string::String>,
          12  +
    /* StructureGenerator.kt:231 */
    8     13   
    #[allow(missing_docs)] // documentation missing in model
    9     14   
    pub recursive_member: ::std::option::Option<crate::types::RecursiveShapesInputOutputNested1>,
          15  +
    /* StructureGenerator.kt:201 */
   10     16   
}
          17  +
/* StructureGenerator.kt:135 */
   11     18   
impl RecursiveShapesInputOutputNested2 {
          19  +
    /* StructureGenerator.kt:231 */
   12     20   
    #[allow(missing_docs)] // documentation missing in model
          21  +
                           /* StructureGenerator.kt:166 */
   13     22   
    pub fn bar(&self) -> ::std::option::Option<&str> {
          23  +
        /* StructureGenerator.kt:169 */
   14     24   
        self.bar.as_deref()
          25  +
        /* StructureGenerator.kt:166 */
   15     26   
    }
          27  +
    /* StructureGenerator.kt:231 */
   16     28   
    #[allow(missing_docs)] // documentation missing in model
          29  +
                           /* StructureGenerator.kt:166 */
   17     30   
    pub fn recursive_member(&self) -> ::std::option::Option<&crate::types::RecursiveShapesInputOutputNested1> {
          31  +
        /* StructureGenerator.kt:170 */
   18     32   
        self.recursive_member.as_ref()
          33  +
        /* StructureGenerator.kt:166 */
   19     34   
    }
          35  +
    /* StructureGenerator.kt:135 */
   20     36   
}
          37  +
/* ClientCodegenVisitor.kt:237 */
   21     38   
impl RecursiveShapesInputOutputNested2 {
   22         -
    /// Creates a new builder-style object to manufacture [`RecursiveShapesInputOutputNested2`](crate::types::RecursiveShapesInputOutputNested2).
          39  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`RecursiveShapesInputOutputNested2`](crate::types::RecursiveShapesInputOutputNested2).
          40  +
    /* BuilderGenerator.kt:175 */
   23     41   
    pub fn builder() -> crate::types::builders::RecursiveShapesInputOutputNested2Builder {
          42  +
        /* BuilderGenerator.kt:176 */
   24     43   
        crate::types::builders::RecursiveShapesInputOutputNested2Builder::default()
          44  +
        /* BuilderGenerator.kt:175 */
   25     45   
    }
          46  +
    /* ClientCodegenVisitor.kt:237 */
   26     47   
}
   27     48   
   28         -
/// A builder for [`RecursiveShapesInputOutputNested2`](crate::types::RecursiveShapesInputOutputNested2).
          49  +
/// /* BuilderGenerator.kt:342 */A builder for [`RecursiveShapesInputOutputNested2`](crate::types::RecursiveShapesInputOutputNested2).
          50  +
/* RustType.kt:516 */
   29     51   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          52  +
/* RustType.kt:516 */
   30     53   
#[non_exhaustive]
          54  +
/* BuilderGenerator.kt:345 */
   31     55   
pub struct RecursiveShapesInputOutputNested2Builder {
   32         -
    pub(crate) bar: ::std::option::Option<::std::string::String>,
          56  +
    /* BuilderGenerator.kt:275 */ pub(crate) bar: ::std::option::Option<::std::string::String>,
          57  +
    /* BuilderGenerator.kt:275 */
   33     58   
    pub(crate) recursive_member: ::std::option::Option<crate::types::RecursiveShapesInputOutputNested1>,
          59  +
    /* BuilderGenerator.kt:345 */
   34     60   
}
          61  +
/* BuilderGenerator.kt:355 */
   35     62   
impl RecursiveShapesInputOutputNested2Builder {
          63  +
    /* BuilderGenerator.kt:286 */
   36     64   
    #[allow(missing_docs)] // documentation missing in model
          65  +
                           /* BuilderGenerator.kt:291 */
   37     66   
    pub fn bar(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
          67  +
        /* BuilderGenerator.kt:292 */
   38     68   
        self.bar = ::std::option::Option::Some(input.into());
          69  +
        /* BuilderGenerator.kt:293 */
   39     70   
        self
          71  +
        /* BuilderGenerator.kt:291 */
   40     72   
    }
          73  +
    /* BuilderGenerator.kt:312 */
   41     74   
    #[allow(missing_docs)] // documentation missing in model
          75  +
                           /* BuilderGenerator.kt:314 */
   42     76   
    pub fn set_bar(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
          77  +
        /* BuilderGenerator.kt:315 */
   43     78   
        self.bar = input;
   44     79   
        self
          80  +
        /* BuilderGenerator.kt:314 */
   45     81   
    }
          82  +
    /* BuilderGenerator.kt:334 */
   46     83   
    #[allow(missing_docs)] // documentation missing in model
          84  +
                           /* BuilderGenerator.kt:336 */
   47     85   
    pub fn get_bar(&self) -> &::std::option::Option<::std::string::String> {
          86  +
        /* BuilderGenerator.kt:337 */
   48     87   
        &self.bar
          88  +
        /* BuilderGenerator.kt:336 */
   49     89   
    }
          90  +
    /* BuilderGenerator.kt:286 */
   50     91   
    #[allow(missing_docs)] // documentation missing in model
          92  +
                           /* BuilderGenerator.kt:291 */
   51     93   
    pub fn recursive_member(mut self, input: crate::types::RecursiveShapesInputOutputNested1) -> Self {
          94  +
        /* BuilderGenerator.kt:292 */
   52     95   
        self.recursive_member = ::std::option::Option::Some(input);
          96  +
        /* BuilderGenerator.kt:293 */
   53     97   
        self
          98  +
        /* BuilderGenerator.kt:291 */
   54     99   
    }
         100  +
    /* BuilderGenerator.kt:312 */
   55    101   
    #[allow(missing_docs)] // documentation missing in model
         102  +
                           /* BuilderGenerator.kt:314 */
   56    103   
    pub fn set_recursive_member(mut self, input: ::std::option::Option<crate::types::RecursiveShapesInputOutputNested1>) -> Self {
         104  +
        /* BuilderGenerator.kt:315 */
   57    105   
        self.recursive_member = input;
   58    106   
        self
         107  +
        /* BuilderGenerator.kt:314 */
   59    108   
    }
         109  +
    /* BuilderGenerator.kt:334 */
   60    110   
    #[allow(missing_docs)] // documentation missing in model
         111  +
                           /* BuilderGenerator.kt:336 */
   61    112   
    pub fn get_recursive_member(&self) -> &::std::option::Option<crate::types::RecursiveShapesInputOutputNested1> {
         113  +
        /* BuilderGenerator.kt:337 */
   62    114   
        &self.recursive_member
         115  +
        /* BuilderGenerator.kt:336 */
   63    116   
    }
   64         -
    /// Consumes the builder and constructs a [`RecursiveShapesInputOutputNested2`](crate::types::RecursiveShapesInputOutputNested2).
         117  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`RecursiveShapesInputOutputNested2`](crate::types::RecursiveShapesInputOutputNested2).
         118  +
    /* BuilderGenerator.kt:253 */
   65    119   
    pub fn build(self) -> crate::types::RecursiveShapesInputOutputNested2 {
         120  +
        /* BuilderGenerator.kt:477 */
   66    121   
        crate::types::RecursiveShapesInputOutputNested2 {
   67         -
            bar: self.bar,
         122  +
            /* BuilderGenerator.kt:481 */ bar: self.bar,
         123  +
            /* BuilderGenerator.kt:481 */
   68    124   
            recursive_member: self.recursive_member,
         125  +
            /* BuilderGenerator.kt:477 */
   69    126   
        }
         127  +
        /* BuilderGenerator.kt:253 */
   70    128   
    }
         129  +
    /* BuilderGenerator.kt:355 */
   71    130   
}