Client Test

Client Test

rev. dfb5149b65b7bcc09edd15b8e071ad43b5ac5943

Files changed:

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_operation_with_nested_structure_input.rs

@@ -1,1 +13,22 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* JsonSerializerGenerator.kt:358 */
    2      3   
pub fn ser_operation_with_nested_structure_input_input(
    3      4   
    object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
    4      5   
    input: &crate::operation::operation_with_nested_structure::OperationWithNestedStructureInput,
    5      6   
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
           7  +
    /* JsonSerializerGenerator.kt:382 */
    6      8   
    if let Some(var_1) = &input.top_level {
           9  +
        /* JsonSerializerGenerator.kt:495 */
    7     10   
        #[allow(unused_mut)]
          11  +
        /* JsonSerializerGenerator.kt:496 */
    8     12   
        let mut object_2 = object.key("topLevel").start_object();
          13  +
        /* JsonSerializerGenerator.kt:375 */
    9     14   
        crate::protocol_serde::shape_top_level::ser_top_level(&mut object_2, var_1)?;
          15  +
        /* JsonSerializerGenerator.kt:515 */
   10     16   
        object_2.finish();
          17  +
        /* JsonSerializerGenerator.kt:382 */
   11     18   
    }
          19  +
    /* JsonSerializerGenerator.kt:372 */
   12     20   
    Ok(())
          21  +
    /* JsonSerializerGenerator.kt:358 */
   13     22   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_operation_with_required_members.rs

@@ -1,1 +135,231 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* RustType.kt:516 */
    2      3   
#[allow(clippy::unnecessary_wraps)]
           4  +
/* ProtocolParserGenerator.kt:99 */
    3      5   
pub fn de_operation_with_required_members_http_error(
    4      6   
    _response_status: u16,
    5      7   
    _response_headers: &::aws_smithy_runtime_api::http::Headers,
    6      8   
    _response_body: &[u8],
    7      9   
) -> std::result::Result<
    8     10   
    crate::operation::operation_with_required_members::OperationWithRequiredMembersOutput,
    9     11   
    crate::operation::operation_with_required_members::OperationWithRequiredMembersError,
   10     12   
> {
          13  +
    /* RustType.kt:516 */
   11     14   
    #[allow(unused_mut)]
          15  +
    /* ProtocolParserGenerator.kt:106 */
   12     16   
    let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
   13     17   
        .map_err(crate::operation::operation_with_required_members::OperationWithRequiredMembersError::unhandled)?;
          18  +
    /* ProtocolParserGenerator.kt:120 */
   14     19   
    let generic = generic_builder.build();
          20  +
    /* ProtocolParserGenerator.kt:185 */
   15     21   
    Err(crate::operation::operation_with_required_members::OperationWithRequiredMembersError::generic(generic))
          22  +
    /* ProtocolParserGenerator.kt:99 */
   16     23   
}
   17     24   
          25  +
/* RustType.kt:516 */
   18     26   
#[allow(clippy::unnecessary_wraps)]
          27  +
/* ProtocolParserGenerator.kt:71 */
   19     28   
pub fn de_operation_with_required_members_http_response(
   20     29   
    _response_status: u16,
   21     30   
    _response_headers: &::aws_smithy_runtime_api::http::Headers,
   22     31   
    _response_body: &[u8],
   23     32   
) -> std::result::Result<
   24     33   
    crate::operation::operation_with_required_members::OperationWithRequiredMembersOutput,
   25     34   
    crate::operation::operation_with_required_members::OperationWithRequiredMembersError,
   26     35   
> {
          36  +
    /* ProtocolParserGenerator.kt:77 */
   27     37   
    Ok({
          38  +
        /* RustType.kt:516 */
   28     39   
        #[allow(unused_mut)]
          40  +
        /* ProtocolParserGenerator.kt:240 */
   29     41   
        let mut output = crate::operation::operation_with_required_members::builders::OperationWithRequiredMembersOutputBuilder::default();
          42  +
        /* ProtocolParserGenerator.kt:247 */
   30     43   
        output = crate::protocol_serde::shape_operation_with_required_members::de_operation_with_required_members(_response_body, output)
   31     44   
            .map_err(crate::operation::operation_with_required_members::OperationWithRequiredMembersError::unhandled)?;
          45  +
        /* ClientBuilderInstantiator.kt:46 */
   32     46   
        crate::serde_util::operation_with_required_members_output_output_correct_errors(output)
   33     47   
            .build()
   34     48   
            .map_err(crate::operation::operation_with_required_members::OperationWithRequiredMembersError::unhandled)?
          49  +
        /* ProtocolParserGenerator.kt:77 */
   35     50   
    })
          51  +
    /* ProtocolParserGenerator.kt:71 */
   36     52   
}
   37     53   
          54  +
/* AwsJson.kt:152 */
   38     55   
pub fn ser_operation_with_required_members_input(
   39     56   
    _input: &crate::operation::operation_with_required_members::OperationWithRequiredMembersInput,
   40     57   
) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
          58  +
    /* AwsJson.kt:156 */
   41     59   
    Ok(::aws_smithy_types::body::SdkBody::from("{}"))
          60  +
    /* AwsJson.kt:152 */
   42     61   
}
   43     62   
          63  +
/* JsonParserGenerator.kt:148 */
   44     64   
pub(crate) fn de_operation_with_required_members(
   45     65   
    value: &[u8],
   46     66   
    mut builder: crate::operation::operation_with_required_members::builders::OperationWithRequiredMembersOutputBuilder,
   47     67   
) -> ::std::result::Result<
   48     68   
    crate::operation::operation_with_required_members::builders::OperationWithRequiredMembersOutputBuilder,
   49     69   
    ::aws_smithy_json::deserialize::error::DeserializeError,
   50     70   
> {
          71  +
    /* JsonParserGenerator.kt:153 */
   51     72   
    let mut tokens_owned = ::aws_smithy_json::deserialize::json_token_iter(crate::protocol_serde::or_empty_doc(value)).peekable();
   52     73   
    let tokens = &mut tokens_owned;
   53     74   
    ::aws_smithy_json::deserialize::token::expect_start_object(tokens.next())?;
          75  +
    /* JsonParserGenerator.kt:684 */
   54     76   
    loop {
          77  +
        /* JsonParserGenerator.kt:685 */
   55     78   
        match tokens.next().transpose()? {
   56         -
            Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   57         -
            Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
   58         -
                "requiredString" => {
   59         -
                    builder = builder.set_required_string(
   60         -
                        ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
   61         -
                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
   62         -
                            .transpose()?,
   63         -
                    );
          79  +
            /* JsonParserGenerator.kt:686 */ Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
          80  +
            Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
          81  +
                /* JsonParserGenerator.kt:260 */
          82  +
                match key.to_unescaped()?.as_ref() {
          83  +
                    /* JsonParserGenerator.kt:262 */
          84  +
                    "requiredString" => {
          85  +
                        /* JsonParserGenerator.kt:265 */
          86  +
                        builder = builder.set_required_string(
          87  +
                            /* JsonParserGenerator.kt:354 */
          88  +
                            ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
          89  +
                                .map(|s|
          90  +
                                /* JsonParserGenerator.kt:339 */s.to_unescaped().map(|u|
          91  +
                                    /* JsonParserGenerator.kt:348 */u.into_owned()
          92  +
                                /* JsonParserGenerator.kt:339 */) /* JsonParserGenerator.kt:354 */)
          93  +
                                .transpose()?, /* JsonParserGenerator.kt:265 */
          94  +
                        );
          95  +
                        /* JsonParserGenerator.kt:262 */
          96  +
                    }
          97  +
                    /* JsonParserGenerator.kt:262 */
          98  +
                    "requiredBoolean" => {
          99  +
                        /* JsonParserGenerator.kt:265 */
         100  +
                        builder = builder.set_required_boolean(
         101  +
                            /* JsonParserGenerator.kt:298 */
         102  +
                            ::aws_smithy_json::deserialize::token::expect_bool_or_null(tokens.next())?, /* JsonParserGenerator.kt:265 */
         103  +
                        );
         104  +
                        /* JsonParserGenerator.kt:262 */
         105  +
                    }
         106  +
                    /* JsonParserGenerator.kt:262 */
         107  +
                    "requiredList" => {
         108  +
                        /* JsonParserGenerator.kt:265 */
         109  +
                        builder = builder.set_required_list(
         110  +
                            /* JsonParserGenerator.kt:451 */
         111  +
                            crate::protocol_serde::shape_required_string_list::de_required_string_list(tokens)?, /* JsonParserGenerator.kt:265 */
         112  +
                        );
         113  +
                        /* JsonParserGenerator.kt:262 */
         114  +
                    }
         115  +
                    /* JsonParserGenerator.kt:262 */
         116  +
                    "requiredTimestamp" => {
         117  +
                        /* JsonParserGenerator.kt:265 */
         118  +
                        builder = builder.set_required_timestamp(
         119  +
                            /* JsonParserGenerator.kt:384 */
         120  +
                            ::aws_smithy_json::deserialize::token::expect_timestamp_or_null(
         121  +
                                tokens.next(),
         122  +
                                ::aws_smithy_types::date_time::Format::EpochSeconds,
         123  +
                            )?, /* JsonParserGenerator.kt:265 */
         124  +
                        );
         125  +
                        /* JsonParserGenerator.kt:262 */
         126  +
                    }
         127  +
                    /* JsonParserGenerator.kt:262 */
         128  +
                    "requiredBlob" => {
         129  +
                        /* JsonParserGenerator.kt:265 */
         130  +
                        builder = builder.set_required_blob(
         131  +
                            /* JsonParserGenerator.kt:326 */
         132  +
                            ::aws_smithy_json::deserialize::token::expect_blob_or_null(tokens.next())?, /* JsonParserGenerator.kt:265 */
         133  +
                        );
         134  +
                        /* JsonParserGenerator.kt:262 */
         135  +
                    }
         136  +
                    /* JsonParserGenerator.kt:262 */
         137  +
                    "requiredByte" => {
         138  +
                        /* JsonParserGenerator.kt:265 */
         139  +
                        builder = builder.set_required_byte(
         140  +
                            /* JsonParserGenerator.kt:365 */
         141  +
                            ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
         142  +
                                .map(i8::try_from)
         143  +
                                .transpose()?, /* JsonParserGenerator.kt:265 */
         144  +
                        );
         145  +
                        /* JsonParserGenerator.kt:262 */
         146  +
                    }
         147  +
                    /* JsonParserGenerator.kt:262 */
         148  +
                    "requiredShort" => {
         149  +
                        /* JsonParserGenerator.kt:265 */
         150  +
                        builder = builder.set_required_short(
         151  +
                            /* JsonParserGenerator.kt:365 */
         152  +
                            ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
         153  +
                                .map(i16::try_from)
         154  +
                                .transpose()?, /* JsonParserGenerator.kt:265 */
         155  +
                        );
         156  +
                        /* JsonParserGenerator.kt:262 */
         157  +
                    }
         158  +
                    /* JsonParserGenerator.kt:262 */
         159  +
                    "requiredInteger" => {
         160  +
                        /* JsonParserGenerator.kt:265 */
         161  +
                        builder = builder.set_required_integer(
         162  +
                            /* JsonParserGenerator.kt:365 */
         163  +
                            ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
         164  +
                                .map(i32::try_from)
         165  +
                                .transpose()?, /* JsonParserGenerator.kt:265 */
         166  +
                        );
         167  +
                        /* JsonParserGenerator.kt:262 */
         168  +
                    }
         169  +
                    /* JsonParserGenerator.kt:262 */
         170  +
                    "requiredLong" => {
         171  +
                        /* JsonParserGenerator.kt:265 */
         172  +
                        builder = builder.set_required_long(
         173  +
                            /* JsonParserGenerator.kt:365 */
         174  +
                            ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
         175  +
                                .map(i64::try_from)
         176  +
                                .transpose()?, /* JsonParserGenerator.kt:265 */
         177  +
                        );
         178  +
                        /* JsonParserGenerator.kt:262 */
         179  +
                    }
         180  +
                    /* JsonParserGenerator.kt:262 */
         181  +
                    "requiredFloat" => {
         182  +
                        /* JsonParserGenerator.kt:265 */
         183  +
                        builder = builder.set_required_float(
         184  +
                            /* JsonParserGenerator.kt:361 */::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?.map(|v| v.to_f32_lossy())
         185  +
                        /* JsonParserGenerator.kt:265 */);
         186  +
                        /* JsonParserGenerator.kt:262 */
         187  +
                    }
         188  +
                    /* JsonParserGenerator.kt:262 */
         189  +
                    "requiredDouble" => {
         190  +
                        /* JsonParserGenerator.kt:265 */
         191  +
                        builder = builder.set_required_double(
         192  +
                            /* JsonParserGenerator.kt:363 */::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?.map(|v| v.to_f64_lossy())
         193  +
                        /* JsonParserGenerator.kt:265 */);
         194  +
                        /* JsonParserGenerator.kt:262 */
         195  +
                    }
         196  +
                    /* JsonParserGenerator.kt:262 */
         197  +
                    "requiredMap" => {
         198  +
                        /* JsonParserGenerator.kt:265 */
         199  +
                        builder = builder.set_required_map(
         200  +
                            /* JsonParserGenerator.kt:509 */
         201  +
                            crate::protocol_serde::shape_required_string_map::de_required_string_map(tokens)?, /* JsonParserGenerator.kt:265 */
         202  +
                        );
         203  +
                        /* JsonParserGenerator.kt:262 */
         204  +
                    }
         205  +
                    /* JsonParserGenerator.kt:290 */
         206  +
                    _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, /* JsonParserGenerator.kt:260 */
   64    207   
                }
   65         -
                "requiredBoolean" => {
   66         -
                    builder = builder.set_required_boolean(::aws_smithy_json::deserialize::token::expect_bool_or_null(tokens.next())?);
   67         -
                }
   68         -
                "requiredList" => {
   69         -
                    builder = builder.set_required_list(crate::protocol_serde::shape_required_string_list::de_required_string_list(tokens)?);
   70         -
                }
   71         -
                "requiredTimestamp" => {
   72         -
                    builder = builder.set_required_timestamp(::aws_smithy_json::deserialize::token::expect_timestamp_or_null(
   73         -
                        tokens.next(),
   74         -
                        ::aws_smithy_types::date_time::Format::EpochSeconds,
   75         -
                    )?);
   76         -
                }
   77         -
                "requiredBlob" => {
   78         -
                    builder = builder.set_required_blob(::aws_smithy_json::deserialize::token::expect_blob_or_null(tokens.next())?);
   79         -
                }
   80         -
                "requiredByte" => {
   81         -
                    builder = builder.set_required_byte(
   82         -
                        ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
   83         -
                            .map(i8::try_from)
   84         -
                            .transpose()?,
   85         -
                    );
   86         -
                }
   87         -
                "requiredShort" => {
   88         -
                    builder = builder.set_required_short(
   89         -
                        ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
   90         -
                            .map(i16::try_from)
   91         -
                            .transpose()?,
   92         -
                    );
   93         -
                }
   94         -
                "requiredInteger" => {
   95         -
                    builder = builder.set_required_integer(
   96         -
                        ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
   97         -
                            .map(i32::try_from)
   98         -
                            .transpose()?,
   99         -
                    );
  100         -
                }
  101         -
                "requiredLong" => {
  102         -
                    builder = builder.set_required_long(
  103         -
                        ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
  104         -
                            .map(i64::try_from)
  105         -
                            .transpose()?,
  106         -
                    );
  107         -
                }
  108         -
                "requiredFloat" => {
  109         -
                    builder = builder
  110         -
                        .set_required_float(::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?.map(|v| v.to_f32_lossy()));
  111         -
                }
  112         -
                "requiredDouble" => {
  113         -
                    builder = builder
  114         -
                        .set_required_double(::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?.map(|v| v.to_f64_lossy()));
  115         -
                }
  116         -
                "requiredMap" => {
  117         -
                    builder = builder.set_required_map(crate::protocol_serde::shape_required_string_map::de_required_string_map(tokens)?);
  118         -
                }
  119         -
                _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
  120         -
            },
         208  +
                /* JsonParserGenerator.kt:686 */
         209  +
            }
         210  +
            /* JsonParserGenerator.kt:695 */
  121    211   
            other => {
  122    212   
                return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
  123    213   
                    "expected object key or end object, found: {:?}",
  124    214   
                    other
  125    215   
                )))
  126         -
            }
         216  +
            } /* JsonParserGenerator.kt:685 */
  127    217   
        }
         218  +
        /* JsonParserGenerator.kt:684 */
  128    219   
    }
         220  +
    /* JsonParserGenerator.kt:250 */
  129    221   
    if tokens.next().is_some() {
         222  +
        /* JsonParserGenerator.kt:251 */
  130    223   
        return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
  131    224   
            "found more JSON tokens after completing parsing",
  132    225   
        ));
         226  +
        /* JsonParserGenerator.kt:250 */
  133    227   
    }
         228  +
    /* JsonParserGenerator.kt:163 */
  134    229   
    Ok(builder)
         230  +
    /* JsonParserGenerator.kt:148 */
  135    231   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_put_with_content_encoding.rs

@@ -1,1 +42,64 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* RustType.kt:516 */
    2      3   
#[allow(clippy::unnecessary_wraps)]
           4  +
/* ProtocolParserGenerator.kt:99 */
    3      5   
pub fn de_put_with_content_encoding_http_error(
    4      6   
    _response_status: u16,
    5      7   
    _response_headers: &::aws_smithy_runtime_api::http::Headers,
    6      8   
    _response_body: &[u8],
    7      9   
) -> std::result::Result<
    8     10   
    crate::operation::put_with_content_encoding::PutWithContentEncodingOutput,
    9     11   
    crate::operation::put_with_content_encoding::PutWithContentEncodingError,
   10     12   
> {
          13  +
    /* RustType.kt:516 */
   11     14   
    #[allow(unused_mut)]
          15  +
    /* ProtocolParserGenerator.kt:106 */
   12     16   
    let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
   13     17   
        .map_err(crate::operation::put_with_content_encoding::PutWithContentEncodingError::unhandled)?;
          18  +
    /* ProtocolParserGenerator.kt:120 */
   14     19   
    let generic = generic_builder.build();
          20  +
    /* ProtocolParserGenerator.kt:185 */
   15     21   
    Err(crate::operation::put_with_content_encoding::PutWithContentEncodingError::generic(generic))
          22  +
    /* ProtocolParserGenerator.kt:99 */
   16     23   
}
   17     24   
          25  +
/* RustType.kt:516 */
   18     26   
#[allow(clippy::unnecessary_wraps)]
          27  +
/* ProtocolParserGenerator.kt:71 */
   19     28   
pub fn de_put_with_content_encoding_http_response(
   20     29   
    _response_status: u16,
   21     30   
    _response_headers: &::aws_smithy_runtime_api::http::Headers,
   22     31   
    _response_body: &[u8],
   23     32   
) -> std::result::Result<
   24     33   
    crate::operation::put_with_content_encoding::PutWithContentEncodingOutput,
   25     34   
    crate::operation::put_with_content_encoding::PutWithContentEncodingError,
   26     35   
> {
          36  +
    /* ProtocolParserGenerator.kt:77 */
   27     37   
    Ok({
          38  +
        /* RustType.kt:516 */
   28     39   
        #[allow(unused_mut)]
          40  +
        /* ProtocolParserGenerator.kt:240 */
   29     41   
        let mut output = crate::operation::put_with_content_encoding::builders::PutWithContentEncodingOutputBuilder::default();
          42  +
        /* ClientBuilderInstantiator.kt:56 */
   30     43   
        output.build()
          44  +
        /* ProtocolParserGenerator.kt:77 */
   31     45   
    })
          46  +
    /* ProtocolParserGenerator.kt:71 */
   32     47   
}
   33     48   
          49  +
/* JsonSerializerGenerator.kt:287 */
   34     50   
pub fn ser_put_with_content_encoding_input(
   35     51   
    input: &crate::operation::put_with_content_encoding::PutWithContentEncodingInput,
   36     52   
) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
          53  +
    /* JsonSerializerGenerator.kt:291 */
   37     54   
    let mut out = String::new();
          55  +
    /* JsonSerializerGenerator.kt:292 */
   38     56   
    let mut object = ::aws_smithy_json::serialize::JsonObjectWriter::new(&mut out);
          57  +
    /* JsonSerializerGenerator.kt:375 */
   39     58   
    crate::protocol_serde::shape_put_with_content_encoding_input::ser_put_with_content_encoding_input_input(&mut object, input)?;
          59  +
    /* JsonSerializerGenerator.kt:295 */
   40     60   
    object.finish();
          61  +
    /* JsonSerializerGenerator.kt:296 */
   41     62   
    Ok(::aws_smithy_types::body::SdkBody::from(out))
          63  +
    /* JsonSerializerGenerator.kt:287 */
   42     64   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_put_with_content_encoding_input.rs

@@ -1,1 +13,22 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* JsonSerializerGenerator.kt:358 */
    2      3   
pub fn ser_put_with_content_encoding_input_input(
    3      4   
    object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
    4      5   
    input: &crate::operation::put_with_content_encoding::PutWithContentEncodingInput,
    5      6   
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
           7  +
    /* JsonSerializerGenerator.kt:382 */
    6      8   
    if let Some(var_1) = &input.encoding {
           9  +
        /* JsonSerializerGenerator.kt:423 */
    7     10   
        object.key("encoding").string(var_1.as_str());
          11  +
        /* JsonSerializerGenerator.kt:382 */
    8     12   
    }
          13  +
    /* JsonSerializerGenerator.kt:382 */
    9     14   
    if let Some(var_2) = &input.data {
          15  +
        /* JsonSerializerGenerator.kt:423 */
   10     16   
        object.key("data").string(var_2.as_str());
          17  +
        /* JsonSerializerGenerator.kt:382 */
   11     18   
    }
          19  +
    /* JsonSerializerGenerator.kt:372 */
   12     20   
    Ok(())
          21  +
    /* JsonSerializerGenerator.kt:358 */
   13     22   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_required_string_list.rs

@@ -1,1 +34,59 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* JsonParserGenerator.kt:398 */
    2      3   
pub(crate) fn de_required_string_list<'a, I>(
    3      4   
    tokens: &mut ::std::iter::Peekable<I>,
    4      5   
) -> ::std::result::Result<Option<::std::vec::Vec<::std::string::String>>, ::aws_smithy_json::deserialize::error::DeserializeError>
    5      6   
where
    6      7   
    I: Iterator<Item = Result<::aws_smithy_json::deserialize::Token<'a>, ::aws_smithy_json::deserialize::error::DeserializeError>>,
    7      8   
{
           9  +
    /* JsonParserGenerator.kt:712 */
    8     10   
    match tokens.next().transpose()? {
    9         -
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
          11  +
        /* JsonParserGenerator.kt:713 */ Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   10     12   
        Some(::aws_smithy_json::deserialize::Token::StartArray { .. }) => {
          13  +
            /* JsonParserGenerator.kt:407 */
   11     14   
            let mut items = Vec::new();
          15  +
            /* JsonParserGenerator.kt:408 */
   12     16   
            loop {
          17  +
                /* JsonParserGenerator.kt:409 */
   13     18   
                match tokens.peek() {
          19  +
                    /* JsonParserGenerator.kt:410 */
   14     20   
                    Some(Ok(::aws_smithy_json::deserialize::Token::EndArray { .. })) => {
          21  +
                        /* JsonParserGenerator.kt:411 */
   15     22   
                        tokens.next().transpose().unwrap();
   16     23   
                        break;
          24  +
                        /* JsonParserGenerator.kt:410 */
   17     25   
                    }
          26  +
                    /* JsonParserGenerator.kt:413 */
   18     27   
                    _ => {
   19         -
                        let value = ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
   20         -
                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
   21         -
                            .transpose()?;
          28  +
                        /* JsonParserGenerator.kt:419 */
          29  +
                        let value =
          30  +
                            /* JsonParserGenerator.kt:354 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
          31  +
                                /* JsonParserGenerator.kt:339 */s.to_unescaped().map(|u|
          32  +
                                    /* JsonParserGenerator.kt:348 */u.into_owned()
          33  +
                                /* JsonParserGenerator.kt:339 */)
          34  +
                            /* JsonParserGenerator.kt:354 */).transpose()?
          35  +
                        /* JsonParserGenerator.kt:419 */;
          36  +
                        /* JsonParserGenerator.kt:422 */
   22     37   
                        if let Some(value) = value {
   23     38   
                            items.push(value);
   24     39   
                        }
   25         -
                    }
          40  +
                        /* JsonParserGenerator.kt:413 */
          41  +
                    } /* JsonParserGenerator.kt:409 */
   26     42   
                }
          43  +
                /* JsonParserGenerator.kt:408 */
   27     44   
            }
          45  +
            /* JsonParserGenerator.kt:446 */
   28     46   
            Ok(Some(items))
          47  +
            /* JsonParserGenerator.kt:713 */
   29     48   
        }
   30         -
        _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
   31         -
            "expected start array or null",
   32         -
        )),
          49  +
        /* JsonParserGenerator.kt:722 */
          50  +
        _ => {
          51  +
            /* JsonParserGenerator.kt:723 */
          52  +
            Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
          53  +
                "expected start array or null",
          54  +
            ))
          55  +
            /* JsonParserGenerator.kt:722 */
          56  +
        } /* JsonParserGenerator.kt:712 */
   33     57   
    }
          58  +
    /* JsonParserGenerator.kt:398 */
   34     59   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_required_string_map.rs

@@ -1,1 +41,68 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* JsonParserGenerator.kt:460 */
    2      3   
pub(crate) fn de_required_string_map<'a, I>(
    3      4   
    tokens: &mut ::std::iter::Peekable<I>,
    4      5   
) -> ::std::result::Result<
    5      6   
    Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
    6      7   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    7      8   
>
    8      9   
where
    9     10   
    I: Iterator<Item = Result<::aws_smithy_json::deserialize::Token<'a>, ::aws_smithy_json::deserialize::error::DeserializeError>>,
   10     11   
{
          12  +
    /* JsonParserGenerator.kt:712 */
   11     13   
    match tokens.next().transpose()? {
   12         -
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
          14  +
        /* JsonParserGenerator.kt:713 */ Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   13     15   
        Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
          16  +
            /* JsonParserGenerator.kt:469 */
   14     17   
            let mut map = ::std::collections::HashMap::new();
          18  +
            /* JsonParserGenerator.kt:684 */
   15     19   
            loop {
          20  +
                /* JsonParserGenerator.kt:685 */
   16     21   
                match tokens.next().transpose()? {
   17         -
                    Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
          22  +
                    /* JsonParserGenerator.kt:686 */ Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   18     23   
                    Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
   19         -
                        let key = key.to_unescaped().map(|u| u.into_owned())?;
   20         -
                        let value = ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
   21         -
                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
   22         -
                            .transpose()?;
          24  +
                        /* JsonParserGenerator.kt:471 */
          25  +
                        let key =
          26  +
                            /* JsonParserGenerator.kt:339 */key.to_unescaped().map(|u|
          27  +
                                /* JsonParserGenerator.kt:348 */u.into_owned()
          28  +
                            /* JsonParserGenerator.kt:339 */)
          29  +
                        /* JsonParserGenerator.kt:471 */?;
          30  +
                        /* JsonParserGenerator.kt:474 */
          31  +
                        let value =
          32  +
                            /* JsonParserGenerator.kt:354 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
          33  +
                                /* JsonParserGenerator.kt:339 */s.to_unescaped().map(|u|
          34  +
                                    /* JsonParserGenerator.kt:348 */u.into_owned()
          35  +
                                /* JsonParserGenerator.kt:339 */)
          36  +
                            /* JsonParserGenerator.kt:354 */).transpose()?
          37  +
                        /* JsonParserGenerator.kt:474 */;
          38  +
                        /* JsonParserGenerator.kt:491 */
   23     39   
                        if let Some(value) = value {
   24     40   
                            map.insert(key, value);
   25     41   
                        }
          42  +
                        /* JsonParserGenerator.kt:686 */
   26     43   
                    }
          44  +
                    /* JsonParserGenerator.kt:695 */
   27     45   
                    other => {
   28     46   
                        return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
   29     47   
                            "expected object key or end object, found: {:?}",
   30     48   
                            other
   31     49   
                        )))
   32         -
                    }
          50  +
                    } /* JsonParserGenerator.kt:685 */
   33     51   
                }
          52  +
                /* JsonParserGenerator.kt:684 */
   34     53   
            }
          54  +
            /* JsonParserGenerator.kt:504 */
   35     55   
            Ok(Some(map))
          56  +
            /* JsonParserGenerator.kt:713 */
   36     57   
        }
   37         -
        _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
   38         -
            "expected start object or null",
   39         -
        )),
          58  +
        /* JsonParserGenerator.kt:722 */
          59  +
        _ => {
          60  +
            /* JsonParserGenerator.kt:723 */
          61  +
            Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
          62  +
                "expected start object or null",
          63  +
            ))
          64  +
            /* JsonParserGenerator.kt:722 */
          65  +
        } /* JsonParserGenerator.kt:712 */
   40     66   
    }
          67  +
    /* JsonParserGenerator.kt:460 */
   41     68   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_simple_scalar_properties.rs

@@ -1,1 +84,131 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* RustType.kt:516 */
    2      3   
#[allow(clippy::unnecessary_wraps)]
           4  +
/* ProtocolParserGenerator.kt:99 */
    3      5   
pub fn de_simple_scalar_properties_http_error(
    4      6   
    _response_status: u16,
    5      7   
    _response_headers: &::aws_smithy_runtime_api::http::Headers,
    6      8   
    _response_body: &[u8],
    7      9   
) -> std::result::Result<
    8     10   
    crate::operation::simple_scalar_properties::SimpleScalarPropertiesOutput,
    9     11   
    crate::operation::simple_scalar_properties::SimpleScalarPropertiesError,
   10     12   
> {
          13  +
    /* RustType.kt:516 */
   11     14   
    #[allow(unused_mut)]
          15  +
    /* ProtocolParserGenerator.kt:106 */
   12     16   
    let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
   13     17   
        .map_err(crate::operation::simple_scalar_properties::SimpleScalarPropertiesError::unhandled)?;
          18  +
    /* ProtocolParserGenerator.kt:120 */
   14     19   
    let generic = generic_builder.build();
          20  +
    /* ProtocolParserGenerator.kt:185 */
   15     21   
    Err(crate::operation::simple_scalar_properties::SimpleScalarPropertiesError::generic(generic))
          22  +
    /* ProtocolParserGenerator.kt:99 */
   16     23   
}
   17     24   
          25  +
/* RustType.kt:516 */
   18     26   
#[allow(clippy::unnecessary_wraps)]
          27  +
/* ProtocolParserGenerator.kt:71 */
   19     28   
pub fn de_simple_scalar_properties_http_response(
   20     29   
    _response_status: u16,
   21     30   
    _response_headers: &::aws_smithy_runtime_api::http::Headers,
   22     31   
    _response_body: &[u8],
   23     32   
) -> std::result::Result<
   24     33   
    crate::operation::simple_scalar_properties::SimpleScalarPropertiesOutput,
   25     34   
    crate::operation::simple_scalar_properties::SimpleScalarPropertiesError,
   26     35   
> {
          36  +
    /* ProtocolParserGenerator.kt:77 */
   27     37   
    Ok({
          38  +
        /* RustType.kt:516 */
   28     39   
        #[allow(unused_mut)]
          40  +
        /* ProtocolParserGenerator.kt:240 */
   29     41   
        let mut output = crate::operation::simple_scalar_properties::builders::SimpleScalarPropertiesOutputBuilder::default();
          42  +
        /* ProtocolParserGenerator.kt:247 */
   30     43   
        output = crate::protocol_serde::shape_simple_scalar_properties::de_simple_scalar_properties(_response_body, output)
   31     44   
            .map_err(crate::operation::simple_scalar_properties::SimpleScalarPropertiesError::unhandled)?;
          45  +
        /* ClientBuilderInstantiator.kt:56 */
   32     46   
        output.build()
          47  +
        /* ProtocolParserGenerator.kt:77 */
   33     48   
    })
          49  +
    /* ProtocolParserGenerator.kt:71 */
   34     50   
}
   35     51   
          52  +
/* JsonSerializerGenerator.kt:287 */
   36     53   
pub fn ser_simple_scalar_properties_input(
   37     54   
    input: &crate::operation::simple_scalar_properties::SimpleScalarPropertiesInput,
   38     55   
) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
          56  +
    /* JsonSerializerGenerator.kt:291 */
   39     57   
    let mut out = String::new();
          58  +
    /* JsonSerializerGenerator.kt:292 */
   40     59   
    let mut object = ::aws_smithy_json::serialize::JsonObjectWriter::new(&mut out);
          60  +
    /* JsonSerializerGenerator.kt:375 */
   41     61   
    crate::protocol_serde::shape_simple_scalar_properties_input::ser_simple_scalar_properties_input_input(&mut object, input)?;
          62  +
    /* JsonSerializerGenerator.kt:295 */
   42     63   
    object.finish();
          64  +
    /* JsonSerializerGenerator.kt:296 */
   43     65   
    Ok(::aws_smithy_types::body::SdkBody::from(out))
          66  +
    /* JsonSerializerGenerator.kt:287 */
   44     67   
}
   45     68   
          69  +
/* JsonParserGenerator.kt:148 */
   46     70   
pub(crate) fn de_simple_scalar_properties(
   47     71   
    value: &[u8],
   48     72   
    mut builder: crate::operation::simple_scalar_properties::builders::SimpleScalarPropertiesOutputBuilder,
   49     73   
) -> ::std::result::Result<
   50     74   
    crate::operation::simple_scalar_properties::builders::SimpleScalarPropertiesOutputBuilder,
   51     75   
    ::aws_smithy_json::deserialize::error::DeserializeError,
   52     76   
> {
          77  +
    /* JsonParserGenerator.kt:153 */
   53     78   
    let mut tokens_owned = ::aws_smithy_json::deserialize::json_token_iter(crate::protocol_serde::or_empty_doc(value)).peekable();
   54     79   
    let tokens = &mut tokens_owned;
   55     80   
    ::aws_smithy_json::deserialize::token::expect_start_object(tokens.next())?;
          81  +
    /* JsonParserGenerator.kt:684 */
   56     82   
    loop {
          83  +
        /* JsonParserGenerator.kt:685 */
   57     84   
        match tokens.next().transpose()? {
   58         -
            Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   59         -
            Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
   60         -
                "floatValue" => {
   61         -
                    builder = builder
   62         -
                        .set_float_value(::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?.map(|v| v.to_f32_lossy()));
          85  +
            /* JsonParserGenerator.kt:686 */ Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
          86  +
            Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
          87  +
                /* JsonParserGenerator.kt:260 */
          88  +
                match key.to_unescaped()?.as_ref() {
          89  +
                    /* JsonParserGenerator.kt:262 */
          90  +
                    "floatValue" => {
          91  +
                        /* JsonParserGenerator.kt:265 */
          92  +
                        builder = builder.set_float_value(
          93  +
                            /* JsonParserGenerator.kt:361 */::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?.map(|v| v.to_f32_lossy())
          94  +
                        /* JsonParserGenerator.kt:265 */);
          95  +
                        /* JsonParserGenerator.kt:262 */
          96  +
                    }
          97  +
                    /* JsonParserGenerator.kt:262 */
          98  +
                    "doubleValue" => {
          99  +
                        /* JsonParserGenerator.kt:265 */
         100  +
                        builder = builder.set_double_value(
         101  +
                            /* JsonParserGenerator.kt:363 */::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?.map(|v| v.to_f64_lossy())
         102  +
                        /* JsonParserGenerator.kt:265 */);
         103  +
                        /* JsonParserGenerator.kt:262 */
         104  +
                    }
         105  +
                    /* JsonParserGenerator.kt:290 */
         106  +
                    _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?, /* JsonParserGenerator.kt:260 */
   63    107   
                }
   64         -
                "doubleValue" => {
   65         -
                    builder = builder
   66         -
                        .set_double_value(::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?.map(|v| v.to_f64_lossy()));
   67         -
                }
   68         -
                _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
   69         -
            },
         108  +
                /* JsonParserGenerator.kt:686 */
         109  +
            }
         110  +
            /* JsonParserGenerator.kt:695 */
   70    111   
            other => {
   71    112   
                return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
   72    113   
                    "expected object key or end object, found: {:?}",
   73    114   
                    other
   74    115   
                )))
   75         -
            }
         116  +
            } /* JsonParserGenerator.kt:685 */
   76    117   
        }
         118  +
        /* JsonParserGenerator.kt:684 */
   77    119   
    }
         120  +
    /* JsonParserGenerator.kt:250 */
   78    121   
    if tokens.next().is_some() {
         122  +
        /* JsonParserGenerator.kt:251 */
   79    123   
        return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
   80    124   
            "found more JSON tokens after completing parsing",
   81    125   
        ));
         126  +
        /* JsonParserGenerator.kt:250 */
   82    127   
    }
         128  +
    /* JsonParserGenerator.kt:163 */
   83    129   
    Ok(builder)
         130  +
    /* JsonParserGenerator.kt:148 */
   84    131   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_simple_scalar_properties_input.rs

@@ -1,1 +19,28 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* JsonSerializerGenerator.kt:358 */
    2      3   
pub fn ser_simple_scalar_properties_input_input(
    3      4   
    object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
    4      5   
    input: &crate::operation::simple_scalar_properties::SimpleScalarPropertiesInput,
    5      6   
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
           7  +
    /* JsonSerializerGenerator.kt:382 */
    6      8   
    if let Some(var_1) = &input.float_value {
           9  +
        /* JsonSerializerGenerator.kt:432 */
    7     10   
        object.key("floatValue").number(
    8     11   
            #[allow(clippy::useless_conversion)]
    9     12   
            ::aws_smithy_types::Number::Float((*var_1).into()),
   10     13   
        );
          14  +
        /* JsonSerializerGenerator.kt:382 */
   11     15   
    }
          16  +
    /* JsonSerializerGenerator.kt:382 */
   12     17   
    if let Some(var_2) = &input.double_value {
          18  +
        /* JsonSerializerGenerator.kt:432 */
   13     19   
        object.key("doubleValue").number(
   14     20   
            #[allow(clippy::useless_conversion)]
   15     21   
            ::aws_smithy_types::Number::Float((*var_2).into()),
   16     22   
        );
          23  +
        /* JsonSerializerGenerator.kt:382 */
   17     24   
    }
          25  +
    /* JsonSerializerGenerator.kt:372 */
   18     26   
    Ok(())
          27  +
    /* JsonSerializerGenerator.kt:358 */
   19     28   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_string_list.rs

@@ -1,1 +34,59 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* JsonParserGenerator.kt:398 */
    2      3   
pub(crate) fn de_string_list<'a, I>(
    3      4   
    tokens: &mut ::std::iter::Peekable<I>,
    4      5   
) -> ::std::result::Result<Option<::std::vec::Vec<::std::string::String>>, ::aws_smithy_json::deserialize::error::DeserializeError>
    5      6   
where
    6      7   
    I: Iterator<Item = Result<::aws_smithy_json::deserialize::Token<'a>, ::aws_smithy_json::deserialize::error::DeserializeError>>,
    7      8   
{
           9  +
    /* JsonParserGenerator.kt:712 */
    8     10   
    match tokens.next().transpose()? {
    9         -
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
          11  +
        /* JsonParserGenerator.kt:713 */ Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   10     12   
        Some(::aws_smithy_json::deserialize::Token::StartArray { .. }) => {
          13  +
            /* JsonParserGenerator.kt:407 */
   11     14   
            let mut items = Vec::new();
          15  +
            /* JsonParserGenerator.kt:408 */
   12     16   
            loop {
          17  +
                /* JsonParserGenerator.kt:409 */
   13     18   
                match tokens.peek() {
          19  +
                    /* JsonParserGenerator.kt:410 */
   14     20   
                    Some(Ok(::aws_smithy_json::deserialize::Token::EndArray { .. })) => {
          21  +
                        /* JsonParserGenerator.kt:411 */
   15     22   
                        tokens.next().transpose().unwrap();
   16     23   
                        break;
          24  +
                        /* JsonParserGenerator.kt:410 */
   17     25   
                    }
          26  +
                    /* JsonParserGenerator.kt:413 */
   18     27   
                    _ => {
   19         -
                        let value = ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
   20         -
                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
   21         -
                            .transpose()?;
          28  +
                        /* JsonParserGenerator.kt:419 */
          29  +
                        let value =
          30  +
                            /* JsonParserGenerator.kt:354 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
          31  +
                                /* JsonParserGenerator.kt:339 */s.to_unescaped().map(|u|
          32  +
                                    /* JsonParserGenerator.kt:348 */u.into_owned()
          33  +
                                /* JsonParserGenerator.kt:339 */)
          34  +
                            /* JsonParserGenerator.kt:354 */).transpose()?
          35  +
                        /* JsonParserGenerator.kt:419 */;
          36  +
                        /* JsonParserGenerator.kt:422 */
   22     37   
                        if let Some(value) = value {
   23     38   
                            items.push(value);
   24     39   
                        }
   25         -
                    }
          40  +
                        /* JsonParserGenerator.kt:413 */
          41  +
                    } /* JsonParserGenerator.kt:409 */
   26     42   
                }
          43  +
                /* JsonParserGenerator.kt:408 */
   27     44   
            }
          45  +
            /* JsonParserGenerator.kt:446 */
   28     46   
            Ok(Some(items))
          47  +
            /* JsonParserGenerator.kt:713 */
   29     48   
        }
   30         -
        _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
   31         -
            "expected start array or null",
   32         -
        )),
          49  +
        /* JsonParserGenerator.kt:722 */
          50  +
        _ => {
          51  +
            /* JsonParserGenerator.kt:723 */
          52  +
            Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
          53  +
                "expected start array or null",
          54  +
            ))
          55  +
            /* JsonParserGenerator.kt:722 */
          56  +
        } /* JsonParserGenerator.kt:712 */
   33     57   
    }
          58  +
    /* JsonParserGenerator.kt:398 */
   34     59   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_string_map.rs

@@ -1,1 +41,68 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* JsonParserGenerator.kt:460 */
    2      3   
pub(crate) fn de_string_map<'a, I>(
    3      4   
    tokens: &mut ::std::iter::Peekable<I>,
    4      5   
) -> ::std::result::Result<
    5      6   
    Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
    6      7   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    7      8   
>
    8      9   
where
    9     10   
    I: Iterator<Item = Result<::aws_smithy_json::deserialize::Token<'a>, ::aws_smithy_json::deserialize::error::DeserializeError>>,
   10     11   
{
          12  +
    /* JsonParserGenerator.kt:712 */
   11     13   
    match tokens.next().transpose()? {
   12         -
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
          14  +
        /* JsonParserGenerator.kt:713 */ Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   13     15   
        Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
          16  +
            /* JsonParserGenerator.kt:469 */
   14     17   
            let mut map = ::std::collections::HashMap::new();
          18  +
            /* JsonParserGenerator.kt:684 */
   15     19   
            loop {
          20  +
                /* JsonParserGenerator.kt:685 */
   16     21   
                match tokens.next().transpose()? {
   17         -
                    Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
          22  +
                    /* JsonParserGenerator.kt:686 */ Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   18     23   
                    Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
   19         -
                        let key = key.to_unescaped().map(|u| u.into_owned())?;
   20         -
                        let value = ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
   21         -
                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
   22         -
                            .transpose()?;
          24  +
                        /* JsonParserGenerator.kt:471 */
          25  +
                        let key =
          26  +
                            /* JsonParserGenerator.kt:339 */key.to_unescaped().map(|u|
          27  +
                                /* JsonParserGenerator.kt:348 */u.into_owned()
          28  +
                            /* JsonParserGenerator.kt:339 */)
          29  +
                        /* JsonParserGenerator.kt:471 */?;
          30  +
                        /* JsonParserGenerator.kt:474 */
          31  +
                        let value =
          32  +
                            /* JsonParserGenerator.kt:354 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
          33  +
                                /* JsonParserGenerator.kt:339 */s.to_unescaped().map(|u|
          34  +
                                    /* JsonParserGenerator.kt:348 */u.into_owned()
          35  +
                                /* JsonParserGenerator.kt:339 */)
          36  +
                            /* JsonParserGenerator.kt:354 */).transpose()?
          37  +
                        /* JsonParserGenerator.kt:474 */;
          38  +
                        /* JsonParserGenerator.kt:491 */
   23     39   
                        if let Some(value) = value {
   24     40   
                            map.insert(key, value);
   25     41   
                        }
          42  +
                        /* JsonParserGenerator.kt:686 */
   26     43   
                    }
          44  +
                    /* JsonParserGenerator.kt:695 */
   27     45   
                    other => {
   28     46   
                        return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
   29     47   
                            "expected object key or end object, found: {:?}",
   30     48   
                            other
   31     49   
                        )))
   32         -
                    }
          50  +
                    } /* JsonParserGenerator.kt:685 */
   33     51   
                }
          52  +
                /* JsonParserGenerator.kt:684 */
   34     53   
            }
          54  +
            /* JsonParserGenerator.kt:504 */
   35     55   
            Ok(Some(map))
          56  +
            /* JsonParserGenerator.kt:713 */
   36     57   
        }
   37         -
        _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
   38         -
            "expected start object or null",
   39         -
        )),
          58  +
        /* JsonParserGenerator.kt:722 */
          59  +
        _ => {
          60  +
            /* JsonParserGenerator.kt:723 */
          61  +
            Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
          62  +
                "expected start object or null",
          63  +
            ))
          64  +
            /* JsonParserGenerator.kt:722 */
          65  +
        } /* JsonParserGenerator.kt:712 */
   40     66   
    }
          67  +
    /* JsonParserGenerator.kt:460 */
   41     68   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_test_string_list.rs

@@ -1,1 +34,59 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* JsonParserGenerator.kt:398 */
    2      3   
pub(crate) fn de_test_string_list<'a, I>(
    3      4   
    tokens: &mut ::std::iter::Peekable<I>,
    4      5   
) -> ::std::result::Result<Option<::std::vec::Vec<::std::string::String>>, ::aws_smithy_json::deserialize::error::DeserializeError>
    5      6   
where
    6      7   
    I: Iterator<Item = Result<::aws_smithy_json::deserialize::Token<'a>, ::aws_smithy_json::deserialize::error::DeserializeError>>,
    7      8   
{
           9  +
    /* JsonParserGenerator.kt:712 */
    8     10   
    match tokens.next().transpose()? {
    9         -
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
          11  +
        /* JsonParserGenerator.kt:713 */ Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   10     12   
        Some(::aws_smithy_json::deserialize::Token::StartArray { .. }) => {
          13  +
            /* JsonParserGenerator.kt:407 */
   11     14   
            let mut items = Vec::new();
          15  +
            /* JsonParserGenerator.kt:408 */
   12     16   
            loop {
          17  +
                /* JsonParserGenerator.kt:409 */
   13     18   
                match tokens.peek() {
          19  +
                    /* JsonParserGenerator.kt:410 */
   14     20   
                    Some(Ok(::aws_smithy_json::deserialize::Token::EndArray { .. })) => {
          21  +
                        /* JsonParserGenerator.kt:411 */
   15     22   
                        tokens.next().transpose().unwrap();
   16     23   
                        break;
          24  +
                        /* JsonParserGenerator.kt:410 */
   17     25   
                    }
          26  +
                    /* JsonParserGenerator.kt:413 */
   18     27   
                    _ => {
   19         -
                        let value = ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
   20         -
                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
   21         -
                            .transpose()?;
          28  +
                        /* JsonParserGenerator.kt:419 */
          29  +
                        let value =
          30  +
                            /* JsonParserGenerator.kt:354 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
          31  +
                                /* JsonParserGenerator.kt:339 */s.to_unescaped().map(|u|
          32  +
                                    /* JsonParserGenerator.kt:348 */u.into_owned()
          33  +
                                /* JsonParserGenerator.kt:339 */)
          34  +
                            /* JsonParserGenerator.kt:354 */).transpose()?
          35  +
                        /* JsonParserGenerator.kt:419 */;
          36  +
                        /* JsonParserGenerator.kt:422 */
   22     37   
                        if let Some(value) = value {
   23     38   
                            items.push(value);
   24     39   
                        }
   25         -
                    }
          40  +
                        /* JsonParserGenerator.kt:413 */
          41  +
                    } /* JsonParserGenerator.kt:409 */
   26     42   
                }
          43  +
                /* JsonParserGenerator.kt:408 */
   27     44   
            }
          45  +
            /* JsonParserGenerator.kt:446 */
   28     46   
            Ok(Some(items))
          47  +
            /* JsonParserGenerator.kt:713 */
   29     48   
        }
   30         -
        _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
   31         -
            "expected start array or null",
   32         -
        )),
          49  +
        /* JsonParserGenerator.kt:722 */
          50  +
        _ => {
          51  +
            /* JsonParserGenerator.kt:723 */
          52  +
            Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
          53  +
                "expected start array or null",
          54  +
            ))
          55  +
            /* JsonParserGenerator.kt:722 */
          56  +
        } /* JsonParserGenerator.kt:712 */
   33     57   
    }
          58  +
    /* JsonParserGenerator.kt:398 */
   34     59   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_test_string_map.rs

@@ -1,1 +41,68 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* JsonParserGenerator.kt:460 */
    2      3   
pub(crate) fn de_test_string_map<'a, I>(
    3      4   
    tokens: &mut ::std::iter::Peekable<I>,
    4      5   
) -> ::std::result::Result<
    5      6   
    Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
    6      7   
    ::aws_smithy_json::deserialize::error::DeserializeError,
    7      8   
>
    8      9   
where
    9     10   
    I: Iterator<Item = Result<::aws_smithy_json::deserialize::Token<'a>, ::aws_smithy_json::deserialize::error::DeserializeError>>,
   10     11   
{
          12  +
    /* JsonParserGenerator.kt:712 */
   11     13   
    match tokens.next().transpose()? {
   12         -
        Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
          14  +
        /* JsonParserGenerator.kt:713 */ Some(::aws_smithy_json::deserialize::Token::ValueNull { .. }) => Ok(None),
   13     15   
        Some(::aws_smithy_json::deserialize::Token::StartObject { .. }) => {
          16  +
            /* JsonParserGenerator.kt:469 */
   14     17   
            let mut map = ::std::collections::HashMap::new();
          18  +
            /* JsonParserGenerator.kt:684 */
   15     19   
            loop {
          20  +
                /* JsonParserGenerator.kt:685 */
   16     21   
                match tokens.next().transpose()? {
   17         -
                    Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
          22  +
                    /* JsonParserGenerator.kt:686 */ Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
   18     23   
                    Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => {
   19         -
                        let key = key.to_unescaped().map(|u| u.into_owned())?;
   20         -
                        let value = ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
   21         -
                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
   22         -
                            .transpose()?;
          24  +
                        /* JsonParserGenerator.kt:471 */
          25  +
                        let key =
          26  +
                            /* JsonParserGenerator.kt:339 */key.to_unescaped().map(|u|
          27  +
                                /* JsonParserGenerator.kt:348 */u.into_owned()
          28  +
                            /* JsonParserGenerator.kt:339 */)
          29  +
                        /* JsonParserGenerator.kt:471 */?;
          30  +
                        /* JsonParserGenerator.kt:474 */
          31  +
                        let value =
          32  +
                            /* JsonParserGenerator.kt:354 */::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?.map(|s|
          33  +
                                /* JsonParserGenerator.kt:339 */s.to_unescaped().map(|u|
          34  +
                                    /* JsonParserGenerator.kt:348 */u.into_owned()
          35  +
                                /* JsonParserGenerator.kt:339 */)
          36  +
                            /* JsonParserGenerator.kt:354 */).transpose()?
          37  +
                        /* JsonParserGenerator.kt:474 */;
          38  +
                        /* JsonParserGenerator.kt:491 */
   23     39   
                        if let Some(value) = value {
   24     40   
                            map.insert(key, value);
   25     41   
                        }
          42  +
                        /* JsonParserGenerator.kt:686 */
   26     43   
                    }
          44  +
                    /* JsonParserGenerator.kt:695 */
   27     45   
                    other => {
   28     46   
                        return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
   29     47   
                            "expected object key or end object, found: {:?}",
   30     48   
                            other
   31     49   
                        )))
   32         -
                    }
          50  +
                    } /* JsonParserGenerator.kt:685 */
   33     51   
                }
          52  +
                /* JsonParserGenerator.kt:684 */
   34     53   
            }
          54  +
            /* JsonParserGenerator.kt:504 */
   35     55   
            Ok(Some(map))
          56  +
            /* JsonParserGenerator.kt:713 */
   36     57   
        }
   37         -
        _ => Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
   38         -
            "expected start object or null",
   39         -
        )),
          58  +
        /* JsonParserGenerator.kt:722 */
          59  +
        _ => {
          60  +
            /* JsonParserGenerator.kt:723 */
          61  +
            Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
          62  +
                "expected start object or null",
          63  +
            ))
          64  +
            /* JsonParserGenerator.kt:722 */
          65  +
        } /* JsonParserGenerator.kt:712 */
   40     66   
    }
          67  +
    /* JsonParserGenerator.kt:460 */
   41     68   
}

tmp-codegen-diff/codegen-client-test/json_rpc10/rust-client-codegen/src/protocol_serde/shape_top_level.rs

@@ -1,1 +38,72 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* JsonSerializerGenerator.kt:358 */
    2      3   
pub fn ser_top_level(
    3      4   
    object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
    4      5   
    input: &crate::types::TopLevel,
    5      6   
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
           7  +
    /* SerializerUtil.kt:42 */
    6      8   
    {
           9  +
        /* JsonSerializerGenerator.kt:495 */
    7     10   
        #[allow(unused_mut)]
          11  +
        /* JsonSerializerGenerator.kt:496 */
    8     12   
        let mut object_1 = object.key("dialog").start_object();
          13  +
        /* JsonSerializerGenerator.kt:375 */
    9     14   
        crate::protocol_serde::shape_dialog::ser_dialog(&mut object_1, &input.dialog)?;
          15  +
        /* JsonSerializerGenerator.kt:515 */
   10     16   
        object_1.finish();
          17  +
        /* SerializerUtil.kt:42 */
   11     18   
    }
          19  +
    /* SerializerUtil.kt:46 */
   12     20   
    {
          21  +
        /* JsonSerializerGenerator.kt:484 */
   13     22   
        let mut array_2 = object.key("dialogList").start_array();
          23  +
        /* JsonSerializerGenerator.kt:524 */
   14     24   
        for item_3 in &input.dialog_list {
          25  +
            /* SerializerUtil.kt:42 */
   15     26   
            {
          27  +
                /* JsonSerializerGenerator.kt:495 */
   16     28   
                #[allow(unused_mut)]
          29  +
                /* JsonSerializerGenerator.kt:496 */
   17     30   
                let mut object_4 = array_2.value().start_object();
          31  +
                /* JsonSerializerGenerator.kt:375 */
   18     32   
                crate::protocol_serde::shape_dialog::ser_dialog(&mut object_4, item_3)?;
          33  +
                /* JsonSerializerGenerator.kt:515 */
   19     34   
                object_4.finish();
          35  +
                /* SerializerUtil.kt:42 */
   20     36   
            }
          37  +
            /* JsonSerializerGenerator.kt:524 */
   21     38   
        }
          39  +
        /* JsonSerializerGenerator.kt:486 */
   22     40   
        array_2.finish();
          41  +
        /* SerializerUtil.kt:46 */
   23     42   
    }
          43  +
    /* SerializerUtil.kt:46 */
   24     44   
    {
          45  +
        /* JsonSerializerGenerator.kt:495 */
   25     46   
        #[allow(unused_mut)]
          47  +
        /* JsonSerializerGenerator.kt:496 */
   26     48   
        let mut object_5 = object.key("dialogMap").start_object();
          49  +
        /* JsonSerializerGenerator.kt:537 */
   27     50   
        for (key_6, value_7) in &input.dialog_map {
          51  +
            /* SerializerUtil.kt:42 */
   28     52   
            {
          53  +
                /* JsonSerializerGenerator.kt:495 */
   29     54   
                #[allow(unused_mut)]
          55  +
                /* JsonSerializerGenerator.kt:496 */
   30     56   
                let mut object_8 = object_5.key(key_6.as_str()).start_object();
          57  +
                /* JsonSerializerGenerator.kt:375 */
   31     58   
                crate::protocol_serde::shape_dialog::ser_dialog(&mut object_8, value_7)?;
          59  +
                /* JsonSerializerGenerator.kt:515 */
   32     60   
                object_8.finish();
          61  +
                /* SerializerUtil.kt:42 */
   33     62   
            }
          63  +
            /* JsonSerializerGenerator.kt:537 */
   34     64   
        }
          65  +
        /* JsonSerializerGenerator.kt:515 */
   35     66   
        object_5.finish();
          67  +
        /* SerializerUtil.kt:46 */
   36     68   
    }
          69  +
    /* JsonSerializerGenerator.kt:372 */
   37     70   
    Ok(())
          71  +
    /* JsonSerializerGenerator.kt:358 */
   38     72   
}

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

@@ -1,1 +43,45 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* ErrorCorrection.kt:126 */
    2      3   
pub(crate) fn operation_with_nested_structure_output_output_correct_errors(
    3      4   
    mut builder: crate::operation::operation_with_nested_structure::builders::OperationWithNestedStructureOutputBuilder,
    4      5   
) -> crate::operation::operation_with_nested_structure::builders::OperationWithNestedStructureOutputBuilder {
    5      6   
    if builder.dialog.is_none() {
    6      7   
        builder.dialog = {
    7      8   
            let builder = crate::types::builders::DialogBuilder::default();
    8      9   
            Some(builder.build())
    9     10   
        }
   10     11   
    }
   11     12   
    builder
   12     13   
}
   13     14   
          15  +
/* ErrorCorrection.kt:126 */
   14     16   
pub(crate) fn operation_with_required_members_output_output_correct_errors(
   15     17   
    mut builder: crate::operation::operation_with_required_members::builders::OperationWithRequiredMembersOutputBuilder,
   16     18   
) -> crate::operation::operation_with_required_members::builders::OperationWithRequiredMembersOutputBuilder {
   17     19   
    if builder.required_string.is_none() {
   18     20   
        builder.required_string = Some(Default::default())
   19     21   
    }
   20     22   
    if builder.required_boolean.is_none() {
   21     23   
        builder.required_boolean = Some(Default::default())
   22     24   
    }
   23     25   
    if builder.required_list.is_none() {

tmp-codegen-diff/codegen-client-test/json_rpc10/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::_dialog::Dialog;
    3      4   
           5  +
/* CodegenDelegator.kt:255 */
    4      6   
pub use crate::types::_farewell::Farewell;
    5      7   
           8  +
/* CodegenDelegator.kt:255 */
    6      9   
pub use crate::types::_top_level::TopLevel;
    7     10   
          11  +
/* CodegenDelegator.kt:255 */
    8     12   
pub use crate::types::_test_enum::TestEnum;
    9     13   
          14  +
/* CodegenDelegator.kt:255 */
   10     15   
pub use crate::types::_client_optional_defaults::ClientOptionalDefaults;
   11     16   
          17  +
/* CodegenDelegator.kt:255 */
   12     18   
pub use crate::types::_defaults::Defaults;
   13     19   
          20  +
/* CodegenDelegator.kt:255 */
   14     21   
pub use crate::types::_my_union::MyUnion;
   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::_foo_enum::FooEnum;
   19     28   
          29  +
/* CodegenDelegator.kt:255 */
   20     30   
pub use crate::types::_complex_nested_error_data::ComplexNestedErrorData;
   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 _dialog;
   29     43   
          44  +
/* RustModule.kt:172 */
   30     45   
mod _farewell;
   31     46   
          47  +
/* RustModule.kt:172 */
   32     48   
mod _foo_enum;
   33     49   
          50  +
/* RustModule.kt:172 */
   34     51   
mod _greeting_struct;
   35     52   
          53  +
/* RustModule.kt:172 */
   36     54   
mod _my_union;
   37     55   
          56  +
/* RustModule.kt:172 */
   38     57   
mod _test_enum;
   39     58   
          59  +
/* RustModule.kt:172 */
   40     60   
mod _top_level;
   41     61   
   42         -
/// Builders
          62  +
/// /* CodegenDelegator.kt:51 */Builders
   43     63   
pub mod builders;
   44     64   
   45         -
/// Error types that Sample Json 1.0 Protocol Service can respond with.
          65  +
/// /* ClientRustModule.kt:121 */Error types that Sample Json 1.0 Protocol Service can respond with.
   46     66   
pub mod error;

tmp-codegen-diff/codegen-client-test/json_rpc10/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   
}