Client Test

Client Test

rev. dfb5149b65b7bcc09edd15b8e071ad43b5ac5943 (ignoring whitespace)

Files changed:

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/protocol_serde/shape_xml_empty_strings_input.rs

@@ -1,1 +14,26 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* XmlBindingTraitSerializerGenerator.kt:427 */
    2      3   
pub fn ser_xml_empty_strings_input_input_input(
    3      4   
    input: &crate::operation::xml_empty_strings::XmlEmptyStringsInput,
    4      5   
    writer: ::aws_smithy_xml::encode::ElWriter,
    5      6   
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
           7  +
    /* RustType.kt:516 */
    6      8   
    #[allow(unused_mut)]
           9  +
    /* XmlBindingTraitSerializerGenerator.kt:299 */
    7     10   
    let mut scope = writer.finish();
          11  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
    8     12   
    if let Some(var_1) = &input.empty_string {
          13  +
        /* XmlBindingTraitSerializerGenerator.kt:359 */
    9     14   
        let mut inner_writer = scope.start_el("emptyString").finish();
   10         -
        inner_writer.data(var_1.as_str());
          15  +
        /* XmlBindingTraitSerializerGenerator.kt:360 */
          16  +
        inner_writer.data(
          17  +
            /* XmlBindingTraitSerializerGenerator.kt:321 */ var_1.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          18  +
        );
          19  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   11     20   
    }
          21  +
    /* XmlBindingTraitSerializerGenerator.kt:304 */
   12     22   
    scope.finish();
          23  +
    /* XmlBindingTraitSerializerGenerator.kt:437 */
   13     24   
    Ok(())
          25  +
    /* XmlBindingTraitSerializerGenerator.kt:427 */
   14     26   
}

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/protocol_serde/shape_xml_enums.rs

@@ -1,1 +138,171 @@
    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_xml_enums_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<crate::operation::xml_enums::XmlEnumsOutput, crate::operation::xml_enums::XmlEnumsError> {
          10  +
    /* RustType.kt:516 */
    8     11   
    #[allow(unused_mut)]
          12  +
    /* ProtocolParserGenerator.kt:106 */
    9     13   
    let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
   10     14   
        .map_err(crate::operation::xml_enums::XmlEnumsError::unhandled)?;
          15  +
    /* ProtocolParserGenerator.kt:120 */
   11     16   
    let generic = generic_builder.build();
          17  +
    /* ProtocolParserGenerator.kt:185 */
   12     18   
    Err(crate::operation::xml_enums::XmlEnumsError::generic(generic))
          19  +
    /* ProtocolParserGenerator.kt:99 */
   13     20   
}
   14     21   
          22  +
/* RustType.kt:516 */
   15     23   
#[allow(clippy::unnecessary_wraps)]
          24  +
/* ProtocolParserGenerator.kt:71 */
   16     25   
pub fn de_xml_enums_http_response(
   17     26   
    _response_status: u16,
   18     27   
    _response_headers: &::aws_smithy_runtime_api::http::Headers,
   19     28   
    _response_body: &[u8],
   20     29   
) -> std::result::Result<crate::operation::xml_enums::XmlEnumsOutput, crate::operation::xml_enums::XmlEnumsError> {
          30  +
    /* ProtocolParserGenerator.kt:77 */
   21     31   
    Ok({
          32  +
        /* RustType.kt:516 */
   22     33   
        #[allow(unused_mut)]
          34  +
        /* ProtocolParserGenerator.kt:240 */
   23     35   
        let mut output = crate::operation::xml_enums::builders::XmlEnumsOutputBuilder::default();
          36  +
        /* ProtocolParserGenerator.kt:247 */
   24     37   
        output = crate::protocol_serde::shape_xml_enums::de_xml_enums(_response_body, output)
   25     38   
            .map_err(crate::operation::xml_enums::XmlEnumsError::unhandled)?;
          39  +
        /* ClientBuilderInstantiator.kt:56 */
   26     40   
        output.build()
          41  +
        /* ProtocolParserGenerator.kt:77 */
   27     42   
    })
          43  +
    /* ProtocolParserGenerator.kt:71 */
   28     44   
}
   29     45   
          46  +
/* XmlBindingTraitSerializerGenerator.kt:116 */
   30     47   
pub fn ser_xml_enums_op_input(
   31     48   
    input: &crate::operation::xml_enums::XmlEnumsInput,
   32     49   
) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
          50  +
    /* XmlBindingTraitSerializerGenerator.kt:120 */
   33     51   
    let mut out = String::new();
          52  +
    /* XmlBindingTraitSerializerGenerator.kt:124 */
   34     53   
    {
          54  +
        /* XmlBindingTraitSerializerGenerator.kt:125 */
   35     55   
        let mut writer = ::aws_smithy_xml::encode::XmlWriter::new(&mut out);
   36     56   
        #[allow(unused_mut)]
   37     57   
        let mut root = writer.start_el("XmlEnumsRequest");
          58  +
        /* XmlBindingTraitSerializerGenerator.kt:440 */
   38     59   
        crate::protocol_serde::shape_xml_enums_input::ser_xml_enums_input_input_input(input, root)?
          60  +
        /* XmlBindingTraitSerializerGenerator.kt:124 */
   39     61   
    }
          62  +
    /* XmlBindingTraitSerializerGenerator.kt:137 */
   40     63   
    Ok(::aws_smithy_types::body::SdkBody::from(out))
          64  +
    /* XmlBindingTraitSerializerGenerator.kt:116 */
   41     65   
}
   42     66   
          67  +
/* RustType.kt:516 */
   43     68   
#[allow(unused_mut)]
          69  +
/* XmlBindingTraitParserGenerator.kt:189 */
   44     70   
pub fn de_xml_enums(
   45     71   
    inp: &[u8],
   46     72   
    mut builder: crate::operation::xml_enums::builders::XmlEnumsOutputBuilder,
   47     73   
) -> std::result::Result<crate::operation::xml_enums::builders::XmlEnumsOutputBuilder, ::aws_smithy_xml::decode::XmlDecodeError> {
          74  +
    /* XmlBindingTraitParserGenerator.kt:194 */
   48     75   
    let mut doc = ::aws_smithy_xml::decode::Document::try_from(inp)?;
   49     76   
   50     77   
    #[allow(unused_mut)]
   51     78   
    let mut decoder = doc.root_element()?;
   52     79   
    #[allow(unused_variables)]
   53     80   
    let start_el = decoder.start_el();
          81  +
    /* RestXmlParserGenerator.kt:36 */
   54     82   
    if !start_el.matches("XmlEnumsResponse") {
   55     83   
        return Err(::aws_smithy_xml::decode::XmlDecodeError::custom(format!(
   56     84   
            "encountered invalid XML root: expected XmlEnumsResponse but got {:?}. This is likely a bug in the SDK.",
   57     85   
            start_el
   58     86   
        )));
   59     87   
    }
          88  +
    /* XmlBindingTraitParserGenerator.kt:352 */
   60     89   
    while let Some(mut tag) = decoder.next_tag() {
          90  +
        /* XmlBindingTraitParserGenerator.kt:353 */
   61     91   
        match tag.start_el() {
   62         -
            s if s.matches("fooEnumSet") /* fooEnumSet aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnumSet */ =>  {
   63         -
                let var_1 =
   64         -
                    Some(
   65         -
                        crate::protocol_serde::shape_foo_enum_set::de_foo_enum_set(&mut tag)
   66         -
                        ?
   67         -
                    )
   68         -
                ;
   69         -
                builder = builder.set_foo_enum_set(var_1);
   70         -
            }
          92  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("fooEnumSet") /* fooEnumSet aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnumSet */ =>  {
          93  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_1 =
          94  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
          95  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_foo_enum_set::de_foo_enum_set(&mut tag)
          96  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
          97  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
          98  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
          99  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_foo_enum_set(var_1);
         100  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
   71    101   
            ,
   72         -
            s if s.matches("fooEnumList") /* fooEnumList aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnumList */ =>  {
   73         -
                let var_2 =
   74         -
                    Some(
   75         -
                        crate::protocol_serde::shape_foo_enum_list::de_foo_enum_list(&mut tag)
   76         -
                        ?
   77         -
                    )
   78         -
                ;
   79         -
                builder = builder.set_foo_enum_list(var_2);
   80         -
            }
         102  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("fooEnumList") /* fooEnumList aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnumList */ =>  {
         103  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_2 =
         104  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         105  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_foo_enum_list::de_foo_enum_list(&mut tag)
         106  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         107  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         108  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         109  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_foo_enum_list(var_2);
         110  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
   81    111   
            ,
   82         -
            s if s.matches("fooEnum3") /* fooEnum3 aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnum3 */ =>  {
   83         -
                let var_3 =
   84         -
                    Some(
   85         -
                        Result::<crate::types::FooEnum, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
   86         -
                            crate::types::FooEnum::from(
   87         -
                                ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
   88         -
                            )
   89         -
                        )
   90         -
                        ?
   91         -
                    )
   92         -
                ;
   93         -
                builder = builder.set_foo_enum3(var_3);
   94         -
            }
         112  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("fooEnum3") /* fooEnum3 aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnum3 */ =>  {
         113  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_3 =
         114  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         115  +
                        /* XmlBindingTraitParserGenerator.kt:729 */Result::<crate::types::FooEnum, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
         116  +
                            /* XmlBindingTraitParserGenerator.kt:741 */crate::types::FooEnum::from(
         117  +
                                /* XmlBindingTraitParserGenerator.kt:377 */::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
         118  +
                            /* XmlBindingTraitParserGenerator.kt:741 */)
         119  +
                        /* XmlBindingTraitParserGenerator.kt:729 */)
         120  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         121  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         122  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         123  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_foo_enum3(var_3);
         124  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
   95    125   
            ,
   96         -
            s if s.matches("fooEnumMap") /* fooEnumMap aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnumMap */ =>  {
   97         -
                let var_4 =
   98         -
                    Some(
   99         -
                        crate::protocol_serde::shape_foo_enum_map::de_foo_enum_map(&mut tag)
  100         -
                        ?
  101         -
                    )
  102         -
                ;
  103         -
                builder = builder.set_foo_enum_map(var_4);
  104         -
            }
         126  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("fooEnumMap") /* fooEnumMap aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnumMap */ =>  {
         127  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_4 =
         128  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         129  +
                        /* XmlBindingTraitParserGenerator.kt:600 */crate::protocol_serde::shape_foo_enum_map::de_foo_enum_map(&mut tag)
         130  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         131  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         132  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         133  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_foo_enum_map(var_4);
         134  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  105    135   
            ,
  106         -
            s if s.matches("fooEnum2") /* fooEnum2 aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnum2 */ =>  {
  107         -
                let var_5 =
  108         -
                    Some(
  109         -
                        Result::<crate::types::FooEnum, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
  110         -
                            crate::types::FooEnum::from(
  111         -
                                ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
  112         -
                            )
  113         -
                        )
  114         -
                        ?
  115         -
                    )
  116         -
                ;
  117         -
                builder = builder.set_foo_enum2(var_5);
  118         -
            }
         136  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("fooEnum2") /* fooEnum2 aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnum2 */ =>  {
         137  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_5 =
         138  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         139  +
                        /* XmlBindingTraitParserGenerator.kt:729 */Result::<crate::types::FooEnum, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
         140  +
                            /* XmlBindingTraitParserGenerator.kt:741 */crate::types::FooEnum::from(
         141  +
                                /* XmlBindingTraitParserGenerator.kt:377 */::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
         142  +
                            /* XmlBindingTraitParserGenerator.kt:741 */)
         143  +
                        /* XmlBindingTraitParserGenerator.kt:729 */)
         144  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         145  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         146  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         147  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_foo_enum2(var_5);
         148  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  119    149   
            ,
  120         -
            s if s.matches("fooEnum1") /* fooEnum1 aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnum1 */ =>  {
  121         -
                let var_6 =
  122         -
                    Some(
  123         -
                        Result::<crate::types::FooEnum, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
  124         -
                            crate::types::FooEnum::from(
  125         -
                                ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
  126         -
                            )
  127         -
                        )
  128         -
                        ?
  129         -
                    )
  130         -
                ;
  131         -
                builder = builder.set_foo_enum1(var_6);
  132         -
            }
         150  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("fooEnum1") /* fooEnum1 aws.protocoltests.restxml.synthetic#XmlEnumsOutput$fooEnum1 */ =>  {
         151  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_6 =
         152  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         153  +
                        /* XmlBindingTraitParserGenerator.kt:729 */Result::<crate::types::FooEnum, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
         154  +
                            /* XmlBindingTraitParserGenerator.kt:741 */crate::types::FooEnum::from(
         155  +
                                /* XmlBindingTraitParserGenerator.kt:377 */::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
         156  +
                            /* XmlBindingTraitParserGenerator.kt:741 */)
         157  +
                        /* XmlBindingTraitParserGenerator.kt:729 */)
         158  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         159  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         160  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         161  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_foo_enum1(var_6);
         162  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  133    163   
            ,
  134         -
            _ => {}
  135         -
        }
         164  +
            /* XmlBindingTraitParserGenerator.kt:356 */_ => {}
         165  +
        /* XmlBindingTraitParserGenerator.kt:353 */}
         166  +
        /* XmlBindingTraitParserGenerator.kt:352 */
  136    167   
    }
         168  +
    /* XmlBindingTraitParserGenerator.kt:213 */
  137    169   
    Ok(builder)
         170  +
    /* XmlBindingTraitParserGenerator.kt:189 */
  138    171   
}

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/protocol_serde/shape_xml_enums_input.rs

@@ -1,1 +54,118 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* XmlBindingTraitSerializerGenerator.kt:427 */
    2      3   
pub fn ser_xml_enums_input_input_input(
    3      4   
    input: &crate::operation::xml_enums::XmlEnumsInput,
    4      5   
    writer: ::aws_smithy_xml::encode::ElWriter,
    5      6   
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
           7  +
    /* RustType.kt:516 */
    6      8   
    #[allow(unused_mut)]
           9  +
    /* XmlBindingTraitSerializerGenerator.kt:299 */
    7     10   
    let mut scope = writer.finish();
          11  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
    8     12   
    if let Some(var_1) = &input.foo_enum1 {
          13  +
        /* XmlBindingTraitSerializerGenerator.kt:359 */
    9     14   
        let mut inner_writer = scope.start_el("fooEnum1").finish();
   10         -
        inner_writer.data(var_1.as_str());
          15  +
        /* XmlBindingTraitSerializerGenerator.kt:360 */
          16  +
        inner_writer.data(
          17  +
            /* XmlBindingTraitSerializerGenerator.kt:321 */ var_1.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          18  +
        );
          19  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   11     20   
    }
          21  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   12     22   
    if let Some(var_2) = &input.foo_enum2 {
          23  +
        /* XmlBindingTraitSerializerGenerator.kt:359 */
   13     24   
        let mut inner_writer = scope.start_el("fooEnum2").finish();
   14         -
        inner_writer.data(var_2.as_str());
          25  +
        /* XmlBindingTraitSerializerGenerator.kt:360 */
          26  +
        inner_writer.data(
          27  +
            /* XmlBindingTraitSerializerGenerator.kt:321 */ var_2.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          28  +
        );
          29  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   15     30   
    }
          31  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   16     32   
    if let Some(var_3) = &input.foo_enum3 {
          33  +
        /* XmlBindingTraitSerializerGenerator.kt:359 */
   17     34   
        let mut inner_writer = scope.start_el("fooEnum3").finish();
   18         -
        inner_writer.data(var_3.as_str());
          35  +
        /* XmlBindingTraitSerializerGenerator.kt:360 */
          36  +
        inner_writer.data(
          37  +
            /* XmlBindingTraitSerializerGenerator.kt:321 */ var_3.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          38  +
        );
          39  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   19     40   
    }
          41  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   20     42   
    if let Some(var_4) = &input.foo_enum_list {
          43  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
   21     44   
        let mut inner_writer = scope.start_el("fooEnumList").finish();
          45  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
   22     46   
        for list_item_5 in var_4 {
          47  +
            /* SerializerUtil.kt:42 */
   23     48   
            {
          49  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   24     50   
                let mut inner_writer = inner_writer.start_el("member").finish();
   25         -
                inner_writer.data(list_item_5.as_str());
          51  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
          52  +
                inner_writer.data(
          53  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ list_item_5.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          54  +
                );
          55  +
                /* SerializerUtil.kt:42 */
   26     56   
            }
          57  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
   27     58   
        }
          59  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   28     60   
    }
          61  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   29     62   
    if let Some(var_6) = &input.foo_enum_map {
          63  +
        /* XmlBindingTraitSerializerGenerator.kt:377 */
   30     64   
        let mut inner_writer = scope.start_el("fooEnumMap").finish();
          65  +
        /* XmlBindingTraitSerializerGenerator.kt:512 */
   31     66   
        for (key_7, value_8) in var_6 {
          67  +
            /* XmlBindingTraitSerializerGenerator.kt:513 */
   32     68   
            let mut entry = inner_writer.start_el("entry").finish();
          69  +
            /* SerializerUtil.kt:42 */
   33     70   
            {
          71  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   34     72   
                let mut inner_writer = entry.start_el("key").finish();
   35         -
                inner_writer.data(key_7.as_str());
          73  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
          74  +
                inner_writer.data(
          75  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ key_7.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          76  +
                );
          77  +
                /* SerializerUtil.kt:42 */
   36     78   
            }
          79  +
            /* SerializerUtil.kt:42 */
   37     80   
            {
          81  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   38     82   
                let mut inner_writer = entry.start_el("value").finish();
   39         -
                inner_writer.data(value_8.as_str());
          83  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
          84  +
                inner_writer.data(
          85  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ value_8.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          86  +
                );
          87  +
                /* SerializerUtil.kt:42 */
   40     88   
            }
          89  +
            /* XmlBindingTraitSerializerGenerator.kt:512 */
   41     90   
        }
          91  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   42     92   
    }
          93  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   43     94   
    if let Some(var_9) = &input.foo_enum_set {
          95  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
   44     96   
        let mut inner_writer = scope.start_el("fooEnumSet").finish();
          97  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
   45     98   
        for list_item_10 in var_9 {
          99  +
            /* SerializerUtil.kt:42 */
   46    100   
            {
         101  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   47    102   
                let mut inner_writer = inner_writer.start_el("member").finish();
   48         -
                inner_writer.data(list_item_10.as_str());
         103  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
         104  +
                inner_writer.data(
         105  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ list_item_10.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
         106  +
                );
         107  +
                /* SerializerUtil.kt:42 */
   49    108   
            }
         109  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
   50    110   
        }
         111  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   51    112   
    }
         113  +
    /* XmlBindingTraitSerializerGenerator.kt:304 */
   52    114   
    scope.finish();
         115  +
    /* XmlBindingTraitSerializerGenerator.kt:437 */
   53    116   
    Ok(())
         117  +
    /* XmlBindingTraitSerializerGenerator.kt:427 */
   54    118   
}

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/protocol_serde/shape_xml_int_enums.rs

@@ -1,1 +141,174 @@
    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_xml_int_enums_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<crate::operation::xml_int_enums::XmlIntEnumsOutput, crate::operation::xml_int_enums::XmlIntEnumsError> {
          10  +
    /* RustType.kt:516 */
    8     11   
    #[allow(unused_mut)]
          12  +
    /* ProtocolParserGenerator.kt:106 */
    9     13   
    let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
   10     14   
        .map_err(crate::operation::xml_int_enums::XmlIntEnumsError::unhandled)?;
          15  +
    /* ProtocolParserGenerator.kt:120 */
   11     16   
    let generic = generic_builder.build();
          17  +
    /* ProtocolParserGenerator.kt:185 */
   12     18   
    Err(crate::operation::xml_int_enums::XmlIntEnumsError::generic(generic))
          19  +
    /* ProtocolParserGenerator.kt:99 */
   13     20   
}
   14     21   
          22  +
/* RustType.kt:516 */
   15     23   
#[allow(clippy::unnecessary_wraps)]
          24  +
/* ProtocolParserGenerator.kt:71 */
   16     25   
pub fn de_xml_int_enums_http_response(
   17     26   
    _response_status: u16,
   18     27   
    _response_headers: &::aws_smithy_runtime_api::http::Headers,
   19     28   
    _response_body: &[u8],
   20     29   
) -> std::result::Result<crate::operation::xml_int_enums::XmlIntEnumsOutput, crate::operation::xml_int_enums::XmlIntEnumsError> {
          30  +
    /* ProtocolParserGenerator.kt:77 */
   21     31   
    Ok({
          32  +
        /* RustType.kt:516 */
   22     33   
        #[allow(unused_mut)]
          34  +
        /* ProtocolParserGenerator.kt:240 */
   23     35   
        let mut output = crate::operation::xml_int_enums::builders::XmlIntEnumsOutputBuilder::default();
          36  +
        /* ProtocolParserGenerator.kt:247 */
   24     37   
        output = crate::protocol_serde::shape_xml_int_enums::de_xml_int_enums(_response_body, output)
   25     38   
            .map_err(crate::operation::xml_int_enums::XmlIntEnumsError::unhandled)?;
          39  +
        /* ClientBuilderInstantiator.kt:56 */
   26     40   
        output.build()
          41  +
        /* ProtocolParserGenerator.kt:77 */
   27     42   
    })
          43  +
    /* ProtocolParserGenerator.kt:71 */
   28     44   
}
   29     45   
          46  +
/* XmlBindingTraitSerializerGenerator.kt:116 */
   30     47   
pub fn ser_xml_int_enums_op_input(
   31     48   
    input: &crate::operation::xml_int_enums::XmlIntEnumsInput,
   32     49   
) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
          50  +
    /* XmlBindingTraitSerializerGenerator.kt:120 */
   33     51   
    let mut out = String::new();
          52  +
    /* XmlBindingTraitSerializerGenerator.kt:124 */
   34     53   
    {
          54  +
        /* XmlBindingTraitSerializerGenerator.kt:125 */
   35     55   
        let mut writer = ::aws_smithy_xml::encode::XmlWriter::new(&mut out);
   36     56   
        #[allow(unused_mut)]
   37     57   
        let mut root = writer.start_el("XmlIntEnumsRequest");
          58  +
        /* XmlBindingTraitSerializerGenerator.kt:440 */
   38     59   
        crate::protocol_serde::shape_xml_int_enums_input::ser_xml_int_enums_input_input_input(input, root)?
          60  +
        /* XmlBindingTraitSerializerGenerator.kt:124 */
   39     61   
    }
          62  +
    /* XmlBindingTraitSerializerGenerator.kt:137 */
   40     63   
    Ok(::aws_smithy_types::body::SdkBody::from(out))
          64  +
    /* XmlBindingTraitSerializerGenerator.kt:116 */
   41     65   
}
   42     66   
          67  +
/* RustType.kt:516 */
   43     68   
#[allow(unused_mut)]
          69  +
/* XmlBindingTraitParserGenerator.kt:189 */
   44     70   
pub fn de_xml_int_enums(
   45     71   
    inp: &[u8],
   46     72   
    mut builder: crate::operation::xml_int_enums::builders::XmlIntEnumsOutputBuilder,
   47     73   
) -> std::result::Result<crate::operation::xml_int_enums::builders::XmlIntEnumsOutputBuilder, ::aws_smithy_xml::decode::XmlDecodeError> {
          74  +
    /* XmlBindingTraitParserGenerator.kt:194 */
   48     75   
    let mut doc = ::aws_smithy_xml::decode::Document::try_from(inp)?;
   49     76   
   50     77   
    #[allow(unused_mut)]
   51     78   
    let mut decoder = doc.root_element()?;
   52     79   
    #[allow(unused_variables)]
   53     80   
    let start_el = decoder.start_el();
          81  +
    /* RestXmlParserGenerator.kt:36 */
   54     82   
    if !start_el.matches("XmlIntEnumsResponse") {
   55     83   
        return Err(::aws_smithy_xml::decode::XmlDecodeError::custom(format!(
   56     84   
            "encountered invalid XML root: expected XmlIntEnumsResponse but got {:?}. This is likely a bug in the SDK.",
   57     85   
            start_el
   58     86   
        )));
   59     87   
    }
          88  +
    /* XmlBindingTraitParserGenerator.kt:352 */
   60     89   
    while let Some(mut tag) = decoder.next_tag() {
          90  +
        /* XmlBindingTraitParserGenerator.kt:353 */
   61     91   
        match tag.start_el() {
   62         -
            s if s.matches("intEnumSet") /* intEnumSet aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnumSet */ =>  {
   63         -
                let var_1 =
   64         -
                    Some(
   65         -
                        crate::protocol_serde::shape_integer_enum_set::de_integer_enum_set(&mut tag)
   66         -
                        ?
   67         -
                    )
   68         -
                ;
   69         -
                builder = builder.set_int_enum_set(var_1);
   70         -
            }
          92  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("intEnumSet") /* intEnumSet aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnumSet */ =>  {
          93  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_1 =
          94  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
          95  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_integer_enum_set::de_integer_enum_set(&mut tag)
          96  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
          97  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
          98  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
          99  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_int_enum_set(var_1);
         100  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
   71    101   
            ,
   72         -
            s if s.matches("intEnum3") /* intEnum3 aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnum3 */ =>  {
   73         -
                let var_2 =
   74         -
                    Some(
   75         -
                         {
   76         -
                            <i32 as ::aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
   77         -
                                ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
   78         -
                            )
   79         -
                            .map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (intEnum: `aws.protocoltests.shared#IntegerEnum`)"))
   80         -
                        }
   81         -
                        ?
   82         -
                    )
   83         -
                ;
   84         -
                builder = builder.set_int_enum3(var_2);
   85         -
            }
         102  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("intEnum3") /* intEnum3 aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnum3 */ =>  {
         103  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_2 =
         104  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         105  +
                        /* XmlBindingTraitParserGenerator.kt:676 */ {
         106  +
                            /* XmlBindingTraitParserGenerator.kt:677 */<i32 as ::aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
         107  +
                                /* XmlBindingTraitParserGenerator.kt:377 */::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
         108  +
                            /* XmlBindingTraitParserGenerator.kt:677 */)
         109  +
                            /* XmlBindingTraitParserGenerator.kt:685 */.map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (intEnum: `aws.protocoltests.shared#IntegerEnum`)"))
         110  +
                        /* XmlBindingTraitParserGenerator.kt:676 */}
         111  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         112  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         113  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         114  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_int_enum3(var_2);
         115  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
   86    116   
            ,
   87         -
            s if s.matches("intEnum2") /* intEnum2 aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnum2 */ =>  {
   88         -
                let var_3 =
   89         -
                    Some(
   90         -
                         {
   91         -
                            <i32 as ::aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
   92         -
                                ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
   93         -
                            )
   94         -
                            .map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (intEnum: `aws.protocoltests.shared#IntegerEnum`)"))
   95         -
                        }
   96         -
                        ?
   97         -
                    )
   98         -
                ;
   99         -
                builder = builder.set_int_enum2(var_3);
  100         -
            }
         117  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("intEnum2") /* intEnum2 aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnum2 */ =>  {
         118  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_3 =
         119  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         120  +
                        /* XmlBindingTraitParserGenerator.kt:676 */ {
         121  +
                            /* XmlBindingTraitParserGenerator.kt:677 */<i32 as ::aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
         122  +
                                /* XmlBindingTraitParserGenerator.kt:377 */::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
         123  +
                            /* XmlBindingTraitParserGenerator.kt:677 */)
         124  +
                            /* XmlBindingTraitParserGenerator.kt:685 */.map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (intEnum: `aws.protocoltests.shared#IntegerEnum`)"))
         125  +
                        /* XmlBindingTraitParserGenerator.kt:676 */}
         126  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         127  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         128  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         129  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_int_enum2(var_3);
         130  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  101    131   
            ,
  102         -
            s if s.matches("intEnumList") /* intEnumList aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnumList */ =>  {
  103         -
                let var_4 =
  104         -
                    Some(
  105         -
                        crate::protocol_serde::shape_integer_enum_list::de_integer_enum_list(&mut tag)
  106         -
                        ?
  107         -
                    )
  108         -
                ;
  109         -
                builder = builder.set_int_enum_list(var_4);
  110         -
            }
         132  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("intEnumList") /* intEnumList aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnumList */ =>  {
         133  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_4 =
         134  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         135  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_integer_enum_list::de_integer_enum_list(&mut tag)
         136  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         137  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         138  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         139  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_int_enum_list(var_4);
         140  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  111    141   
            ,
  112         -
            s if s.matches("intEnumMap") /* intEnumMap aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnumMap */ =>  {
  113         -
                let var_5 =
  114         -
                    Some(
  115         -
                        crate::protocol_serde::shape_integer_enum_map::de_integer_enum_map(&mut tag)
  116         -
                        ?
  117         -
                    )
  118         -
                ;
  119         -
                builder = builder.set_int_enum_map(var_5);
  120         -
            }
         142  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("intEnumMap") /* intEnumMap aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnumMap */ =>  {
         143  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_5 =
         144  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         145  +
                        /* XmlBindingTraitParserGenerator.kt:600 */crate::protocol_serde::shape_integer_enum_map::de_integer_enum_map(&mut tag)
         146  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         147  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         148  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         149  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_int_enum_map(var_5);
         150  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  121    151   
            ,
  122         -
            s if s.matches("intEnum1") /* intEnum1 aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnum1 */ =>  {
  123         -
                let var_6 =
  124         -
                    Some(
  125         -
                         {
  126         -
                            <i32 as ::aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
  127         -
                                ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
  128         -
                            )
  129         -
                            .map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (intEnum: `aws.protocoltests.shared#IntegerEnum`)"))
  130         -
                        }
  131         -
                        ?
  132         -
                    )
  133         -
                ;
  134         -
                builder = builder.set_int_enum1(var_6);
  135         -
            }
         152  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("intEnum1") /* intEnum1 aws.protocoltests.restxml.synthetic#XmlIntEnumsOutput$intEnum1 */ =>  {
         153  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_6 =
         154  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         155  +
                        /* XmlBindingTraitParserGenerator.kt:676 */ {
         156  +
                            /* XmlBindingTraitParserGenerator.kt:677 */<i32 as ::aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
         157  +
                                /* XmlBindingTraitParserGenerator.kt:377 */::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
         158  +
                            /* XmlBindingTraitParserGenerator.kt:677 */)
         159  +
                            /* XmlBindingTraitParserGenerator.kt:685 */.map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (intEnum: `aws.protocoltests.shared#IntegerEnum`)"))
         160  +
                        /* XmlBindingTraitParserGenerator.kt:676 */}
         161  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         162  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         163  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         164  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_int_enum1(var_6);
         165  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  136    166   
            ,
  137         -
            _ => {}
  138         -
        }
         167  +
            /* XmlBindingTraitParserGenerator.kt:356 */_ => {}
         168  +
        /* XmlBindingTraitParserGenerator.kt:353 */}
         169  +
        /* XmlBindingTraitParserGenerator.kt:352 */
  139    170   
    }
         171  +
    /* XmlBindingTraitParserGenerator.kt:213 */
  140    172   
    Ok(builder)
         173  +
    /* XmlBindingTraitParserGenerator.kt:189 */
  141    174   
}

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/protocol_serde/shape_xml_int_enums_input.rs

@@ -1,1 +54,124 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* XmlBindingTraitSerializerGenerator.kt:427 */
    2      3   
pub fn ser_xml_int_enums_input_input_input(
    3      4   
    input: &crate::operation::xml_int_enums::XmlIntEnumsInput,
    4      5   
    writer: ::aws_smithy_xml::encode::ElWriter,
    5      6   
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
           7  +
    /* RustType.kt:516 */
    6      8   
    #[allow(unused_mut)]
           9  +
    /* XmlBindingTraitSerializerGenerator.kt:299 */
    7     10   
    let mut scope = writer.finish();
          11  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
    8     12   
    if let Some(var_1) = &input.int_enum1 {
          13  +
        /* XmlBindingTraitSerializerGenerator.kt:359 */
    9     14   
        let mut inner_writer = scope.start_el("intEnum1").finish();
   10         -
        inner_writer.data(::aws_smithy_types::primitive::Encoder::from(*var_1).encode());
          15  +
        /* XmlBindingTraitSerializerGenerator.kt:360 */
          16  +
        inner_writer.data(
          17  +
            /* XmlBindingTraitSerializerGenerator.kt:325 */
          18  +
            ::aws_smithy_types::primitive::Encoder::from(*var_1).encode(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          19  +
        );
          20  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   11     21   
    }
          22  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   12     23   
    if let Some(var_2) = &input.int_enum2 {
          24  +
        /* XmlBindingTraitSerializerGenerator.kt:359 */
   13     25   
        let mut inner_writer = scope.start_el("intEnum2").finish();
   14         -
        inner_writer.data(::aws_smithy_types::primitive::Encoder::from(*var_2).encode());
          26  +
        /* XmlBindingTraitSerializerGenerator.kt:360 */
          27  +
        inner_writer.data(
          28  +
            /* XmlBindingTraitSerializerGenerator.kt:325 */
          29  +
            ::aws_smithy_types::primitive::Encoder::from(*var_2).encode(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          30  +
        );
          31  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   15     32   
    }
          33  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   16     34   
    if let Some(var_3) = &input.int_enum3 {
          35  +
        /* XmlBindingTraitSerializerGenerator.kt:359 */
   17     36   
        let mut inner_writer = scope.start_el("intEnum3").finish();
   18         -
        inner_writer.data(::aws_smithy_types::primitive::Encoder::from(*var_3).encode());
          37  +
        /* XmlBindingTraitSerializerGenerator.kt:360 */
          38  +
        inner_writer.data(
          39  +
            /* XmlBindingTraitSerializerGenerator.kt:325 */
          40  +
            ::aws_smithy_types::primitive::Encoder::from(*var_3).encode(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          41  +
        );
          42  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   19     43   
    }
          44  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   20     45   
    if let Some(var_4) = &input.int_enum_list {
          46  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
   21     47   
        let mut inner_writer = scope.start_el("intEnumList").finish();
          48  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
   22     49   
        for list_item_5 in var_4 {
          50  +
            /* SerializerUtil.kt:42 */
   23     51   
            {
          52  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   24     53   
                let mut inner_writer = inner_writer.start_el("member").finish();
   25         -
                inner_writer.data(::aws_smithy_types::primitive::Encoder::from(*list_item_5).encode());
          54  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
          55  +
                inner_writer.data(
          56  +
                    /* XmlBindingTraitSerializerGenerator.kt:325 */
          57  +
                    ::aws_smithy_types::primitive::Encoder::from(*list_item_5).encode(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          58  +
                );
          59  +
                /* SerializerUtil.kt:42 */
   26     60   
            }
          61  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
   27     62   
        }
          63  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   28     64   
    }
          65  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   29     66   
    if let Some(var_6) = &input.int_enum_map {
          67  +
        /* XmlBindingTraitSerializerGenerator.kt:377 */
   30     68   
        let mut inner_writer = scope.start_el("intEnumMap").finish();
          69  +
        /* XmlBindingTraitSerializerGenerator.kt:512 */
   31     70   
        for (key_7, value_8) in var_6 {
          71  +
            /* XmlBindingTraitSerializerGenerator.kt:513 */
   32     72   
            let mut entry = inner_writer.start_el("entry").finish();
          73  +
            /* SerializerUtil.kt:42 */
   33     74   
            {
          75  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   34     76   
                let mut inner_writer = entry.start_el("key").finish();
   35         -
                inner_writer.data(key_7.as_str());
          77  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
          78  +
                inner_writer.data(
          79  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ key_7.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          80  +
                );
          81  +
                /* SerializerUtil.kt:42 */
   36     82   
            }
          83  +
            /* SerializerUtil.kt:42 */
   37     84   
            {
          85  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   38     86   
                let mut inner_writer = entry.start_el("value").finish();
   39         -
                inner_writer.data(::aws_smithy_types::primitive::Encoder::from(*value_8).encode());
          87  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
          88  +
                inner_writer.data(
          89  +
                    /* XmlBindingTraitSerializerGenerator.kt:325 */
          90  +
                    ::aws_smithy_types::primitive::Encoder::from(*value_8).encode(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          91  +
                );
          92  +
                /* SerializerUtil.kt:42 */
   40     93   
            }
          94  +
            /* XmlBindingTraitSerializerGenerator.kt:512 */
   41     95   
        }
          96  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   42     97   
    }
          98  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   43     99   
    if let Some(var_9) = &input.int_enum_set {
         100  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
   44    101   
        let mut inner_writer = scope.start_el("intEnumSet").finish();
         102  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
   45    103   
        for list_item_10 in var_9 {
         104  +
            /* SerializerUtil.kt:42 */
   46    105   
            {
         106  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   47    107   
                let mut inner_writer = inner_writer.start_el("member").finish();
   48         -
                inner_writer.data(::aws_smithy_types::primitive::Encoder::from(*list_item_10).encode());
         108  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
         109  +
                inner_writer.data(
         110  +
                    /* XmlBindingTraitSerializerGenerator.kt:325 */
         111  +
                    ::aws_smithy_types::primitive::Encoder::from(*list_item_10).encode(), /* XmlBindingTraitSerializerGenerator.kt:360 */
         112  +
                );
         113  +
                /* SerializerUtil.kt:42 */
   49    114   
            }
         115  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
   50    116   
        }
         117  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   51    118   
    }
         119  +
    /* XmlBindingTraitSerializerGenerator.kt:304 */
   52    120   
    scope.finish();
         121  +
    /* XmlBindingTraitSerializerGenerator.kt:437 */
   53    122   
    Ok(())
         123  +
    /* XmlBindingTraitSerializerGenerator.kt:427 */
   54    124   
}

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/protocol_serde/shape_xml_lists.rs

@@ -1,1 +263,296 @@
    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_xml_lists_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<crate::operation::xml_lists::XmlListsOutput, crate::operation::xml_lists::XmlListsError> {
          10  +
    /* RustType.kt:516 */
    8     11   
    #[allow(unused_mut)]
          12  +
    /* ProtocolParserGenerator.kt:106 */
    9     13   
    let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
   10     14   
        .map_err(crate::operation::xml_lists::XmlListsError::unhandled)?;
          15  +
    /* ProtocolParserGenerator.kt:120 */
   11     16   
    let generic = generic_builder.build();
          17  +
    /* ProtocolParserGenerator.kt:185 */
   12     18   
    Err(crate::operation::xml_lists::XmlListsError::generic(generic))
          19  +
    /* ProtocolParserGenerator.kt:99 */
   13     20   
}
   14     21   
          22  +
/* RustType.kt:516 */
   15     23   
#[allow(clippy::unnecessary_wraps)]
          24  +
/* ProtocolParserGenerator.kt:71 */
   16     25   
pub fn de_xml_lists_http_response(
   17     26   
    _response_status: u16,
   18     27   
    _response_headers: &::aws_smithy_runtime_api::http::Headers,
   19     28   
    _response_body: &[u8],
   20     29   
) -> std::result::Result<crate::operation::xml_lists::XmlListsOutput, crate::operation::xml_lists::XmlListsError> {
          30  +
    /* ProtocolParserGenerator.kt:77 */
   21     31   
    Ok({
          32  +
        /* RustType.kt:516 */
   22     33   
        #[allow(unused_mut)]
          34  +
        /* ProtocolParserGenerator.kt:240 */
   23     35   
        let mut output = crate::operation::xml_lists::builders::XmlListsOutputBuilder::default();
          36  +
        /* ProtocolParserGenerator.kt:247 */
   24     37   
        output = crate::protocol_serde::shape_xml_lists::de_xml_lists(_response_body, output)
   25     38   
            .map_err(crate::operation::xml_lists::XmlListsError::unhandled)?;
          39  +
        /* ClientBuilderInstantiator.kt:56 */
   26     40   
        output.build()
          41  +
        /* ProtocolParserGenerator.kt:77 */
   27     42   
    })
          43  +
    /* ProtocolParserGenerator.kt:71 */
   28     44   
}
   29     45   
          46  +
/* XmlBindingTraitSerializerGenerator.kt:116 */
   30     47   
pub fn ser_xml_lists_op_input(
   31     48   
    input: &crate::operation::xml_lists::XmlListsInput,
   32     49   
) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
          50  +
    /* XmlBindingTraitSerializerGenerator.kt:120 */
   33     51   
    let mut out = String::new();
          52  +
    /* XmlBindingTraitSerializerGenerator.kt:124 */
   34     53   
    {
          54  +
        /* XmlBindingTraitSerializerGenerator.kt:125 */
   35     55   
        let mut writer = ::aws_smithy_xml::encode::XmlWriter::new(&mut out);
   36     56   
        #[allow(unused_mut)]
   37     57   
        let mut root = writer.start_el("XmlListsRequest");
          58  +
        /* XmlBindingTraitSerializerGenerator.kt:440 */
   38     59   
        crate::protocol_serde::shape_xml_lists_input::ser_xml_lists_input_input_input(input, root)?
          60  +
        /* XmlBindingTraitSerializerGenerator.kt:124 */
   39     61   
    }
          62  +
    /* XmlBindingTraitSerializerGenerator.kt:137 */
   40     63   
    Ok(::aws_smithy_types::body::SdkBody::from(out))
          64  +
    /* XmlBindingTraitSerializerGenerator.kt:116 */
   41     65   
}
   42     66   
          67  +
/* RustType.kt:516 */
   43     68   
#[allow(unused_mut)]
          69  +
/* XmlBindingTraitParserGenerator.kt:189 */
   44     70   
pub fn de_xml_lists(
   45     71   
    inp: &[u8],
   46     72   
    mut builder: crate::operation::xml_lists::builders::XmlListsOutputBuilder,
   47     73   
) -> std::result::Result<crate::operation::xml_lists::builders::XmlListsOutputBuilder, ::aws_smithy_xml::decode::XmlDecodeError> {
          74  +
    /* XmlBindingTraitParserGenerator.kt:194 */
   48     75   
    let mut doc = ::aws_smithy_xml::decode::Document::try_from(inp)?;
   49     76   
   50     77   
    #[allow(unused_mut)]
   51     78   
    let mut decoder = doc.root_element()?;
   52     79   
    #[allow(unused_variables)]
   53     80   
    let start_el = decoder.start_el();
          81  +
    /* RestXmlParserGenerator.kt:36 */
   54     82   
    if !start_el.matches("XmlListsResponse") {
   55     83   
        return Err(::aws_smithy_xml::decode::XmlDecodeError::custom(format!(
   56     84   
            "encountered invalid XML root: expected XmlListsResponse but got {:?}. This is likely a bug in the SDK.",
   57     85   
            start_el
   58     86   
        )));
   59     87   
    }
          88  +
    /* XmlBindingTraitParserGenerator.kt:352 */
   60     89   
    while let Some(mut tag) = decoder.next_tag() {
          90  +
        /* XmlBindingTraitParserGenerator.kt:353 */
   61     91   
        match tag.start_el() {
   62         -
            s if s.matches("flattenedStructureList") /* flattenedStructureList aws.protocoltests.restxml.synthetic#XmlListsOutput$flattenedStructureList */ =>  {
   63         -
                let var_1 =
   64         -
                    Some(
   65         -
                        Result::<::std::vec::Vec::<crate::types::StructureListMember>, ::aws_smithy_xml::decode::XmlDecodeError>::Ok({
   66         -
                            let mut list_2 = builder.flattened_structure_list.take().unwrap_or_default();
   67         -
                            list_2.push(
   68         -
                                crate::protocol_serde::shape_structure_list_member::de_structure_list_member(&mut tag)
   69         -
                                ?
   70         -
                            );
   71         -
                            list_2
   72         -
                        })
   73         -
                        ?
   74         -
                    )
   75         -
                ;
   76         -
                builder = builder.set_flattened_structure_list(var_1);
   77         -
            }
          92  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("flattenedStructureList") /* flattenedStructureList aws.protocoltests.restxml.synthetic#XmlListsOutput$flattenedStructureList */ =>  {
          93  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_1 =
          94  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
          95  +
                        /* XmlBindingTraitParserGenerator.kt:570 */Result::<::std::vec::Vec::<crate::types::StructureListMember>, ::aws_smithy_xml::decode::XmlDecodeError>::Ok({
          96  +
                            /* XmlBindingTraitParserGenerator.kt:572 */let mut list_2 = builder.flattened_structure_list.take().unwrap_or_default();
          97  +
                            /* XmlBindingTraitParserGenerator.kt:573 */list_2.push(
          98  +
                                /* XmlBindingTraitParserGenerator.kt:536 */crate::protocol_serde::shape_structure_list_member::de_structure_list_member(&mut tag)
          99  +
                                /* XmlBindingTraitParserGenerator.kt:402 */?
         100  +
                            /* XmlBindingTraitParserGenerator.kt:573 */);
         101  +
                            /* XmlBindingTraitParserGenerator.kt:576 */list_2
         102  +
                        /* XmlBindingTraitParserGenerator.kt:570 */})
         103  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         104  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         105  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         106  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_flattened_structure_list(var_1);
         107  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
   78    108   
            ,
   79         -
            s if s.matches("stringSet") /* stringSet aws.protocoltests.restxml.synthetic#XmlListsOutput$stringSet */ =>  {
   80         -
                let var_3 =
   81         -
                    Some(
   82         -
                        crate::protocol_serde::shape_string_set::de_string_set(&mut tag)
   83         -
                        ?
   84         -
                    )
   85         -
                ;
   86         -
                builder = builder.set_string_set(var_3);
   87         -
            }
         109  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("stringSet") /* stringSet aws.protocoltests.restxml.synthetic#XmlListsOutput$stringSet */ =>  {
         110  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_3 =
         111  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         112  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_string_set::de_string_set(&mut tag)
         113  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         114  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         115  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         116  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_string_set(var_3);
         117  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
   88    118   
            ,
   89         -
            s if s.matches("integerList") /* integerList aws.protocoltests.restxml.synthetic#XmlListsOutput$integerList */ =>  {
   90         -
                let var_4 =
   91         -
                    Some(
   92         -
                        crate::protocol_serde::shape_integer_list::de_integer_list(&mut tag)
   93         -
                        ?
   94         -
                    )
   95         -
                ;
   96         -
                builder = builder.set_integer_list(var_4);
   97         -
            }
         119  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("integerList") /* integerList aws.protocoltests.restxml.synthetic#XmlListsOutput$integerList */ =>  {
         120  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_4 =
         121  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         122  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_integer_list::de_integer_list(&mut tag)
         123  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         124  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         125  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         126  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_integer_list(var_4);
         127  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
   98    128   
            ,
   99         -
            s if s.matches("myStructureList") /* structureList aws.protocoltests.restxml.synthetic#XmlListsOutput$structureList */ =>  {
  100         -
                let var_5 =
  101         -
                    Some(
  102         -
                        crate::protocol_serde::shape_structure_list::de_structure_list(&mut tag)
  103         -
                        ?
  104         -
                    )
  105         -
                ;
  106         -
                builder = builder.set_structure_list(var_5);
  107         -
            }
         129  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("myStructureList") /* structureList aws.protocoltests.restxml.synthetic#XmlListsOutput$structureList */ =>  {
         130  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_5 =
         131  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         132  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_structure_list::de_structure_list(&mut tag)
         133  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         134  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         135  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         136  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_structure_list(var_5);
         137  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  108    138   
            ,
  109         -
            s if s.matches("flattenedListWithMemberNamespace") /* flattenedListWithMemberNamespace aws.protocoltests.restxml.synthetic#XmlListsOutput$flattenedListWithMemberNamespace */ =>  {
  110         -
                let var_6 =
  111         -
                    Some(
  112         -
                        Result::<::std::vec::Vec::<::std::string::String>, ::aws_smithy_xml::decode::XmlDecodeError>::Ok({
  113         -
                            let mut list_7 = builder.flattened_list_with_member_namespace.take().unwrap_or_default();
  114         -
                            list_7.push(
  115         -
                                Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
  116         -
                                    ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
  117         -
                                    .into()
  118         -
                                )
  119         -
                                ?
  120         -
                            );
  121         -
                            list_7
  122         -
                        })
  123         -
                        ?
  124         -
                    )
  125         -
                ;
  126         -
                builder = builder.set_flattened_list_with_member_namespace(var_6);
  127         -
            }
         139  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("flattenedListWithMemberNamespace") /* flattenedListWithMemberNamespace aws.protocoltests.restxml.synthetic#XmlListsOutput$flattenedListWithMemberNamespace */ =>  {
         140  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_6 =
         141  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         142  +
                        /* XmlBindingTraitParserGenerator.kt:570 */Result::<::std::vec::Vec::<::std::string::String>, ::aws_smithy_xml::decode::XmlDecodeError>::Ok({
         143  +
                            /* XmlBindingTraitParserGenerator.kt:572 */let mut list_7 = builder.flattened_list_with_member_namespace.take().unwrap_or_default();
         144  +
                            /* XmlBindingTraitParserGenerator.kt:573 */list_7.push(
         145  +
                                /* XmlBindingTraitParserGenerator.kt:729 */Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
         146  +
                                    /* XmlBindingTraitParserGenerator.kt:377 */::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
         147  +
                                    /* XmlBindingTraitParserGenerator.kt:748 */.into()
         148  +
                                /* XmlBindingTraitParserGenerator.kt:729 */)
         149  +
                                /* XmlBindingTraitParserGenerator.kt:402 */?
         150  +
                            /* XmlBindingTraitParserGenerator.kt:573 */);
         151  +
                            /* XmlBindingTraitParserGenerator.kt:576 */list_7
         152  +
                        /* XmlBindingTraitParserGenerator.kt:570 */})
         153  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         154  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         155  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         156  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_flattened_list_with_member_namespace(var_6);
         157  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  128    158   
            ,
  129         -
            s if s.matches("intEnumList") /* intEnumList aws.protocoltests.restxml.synthetic#XmlListsOutput$intEnumList */ =>  {
  130         -
                let var_8 =
  131         -
                    Some(
  132         -
                        crate::protocol_serde::shape_integer_enum_list::de_integer_enum_list(&mut tag)
  133         -
                        ?
  134         -
                    )
  135         -
                ;
  136         -
                builder = builder.set_int_enum_list(var_8);
  137         -
            }
         159  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("intEnumList") /* intEnumList aws.protocoltests.restxml.synthetic#XmlListsOutput$intEnumList */ =>  {
         160  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_8 =
         161  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         162  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_integer_enum_list::de_integer_enum_list(&mut tag)
         163  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         164  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         165  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         166  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_int_enum_list(var_8);
         167  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  138    168   
            ,
  139         -
            s if s.matches("customName") /* flattenedList2 aws.protocoltests.restxml.synthetic#XmlListsOutput$flattenedList2 */ =>  {
  140         -
                let var_9 =
  141         -
                    Some(
  142         -
                        Result::<::std::vec::Vec::<::std::string::String>, ::aws_smithy_xml::decode::XmlDecodeError>::Ok({
  143         -
                            let mut list_10 = builder.flattened_list2.take().unwrap_or_default();
  144         -
                            list_10.push(
  145         -
                                Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
  146         -
                                    ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
  147         -
                                    .into()
  148         -
                                )
  149         -
                                ?
  150         -
                            );
  151         -
                            list_10
  152         -
                        })
  153         -
                        ?
  154         -
                    )
  155         -
                ;
  156         -
                builder = builder.set_flattened_list2(var_9);
  157         -
            }
         169  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("customName") /* flattenedList2 aws.protocoltests.restxml.synthetic#XmlListsOutput$flattenedList2 */ =>  {
         170  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_9 =
         171  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         172  +
                        /* XmlBindingTraitParserGenerator.kt:570 */Result::<::std::vec::Vec::<::std::string::String>, ::aws_smithy_xml::decode::XmlDecodeError>::Ok({
         173  +
                            /* XmlBindingTraitParserGenerator.kt:572 */let mut list_10 = builder.flattened_list2.take().unwrap_or_default();
         174  +
                            /* XmlBindingTraitParserGenerator.kt:573 */list_10.push(
         175  +
                                /* XmlBindingTraitParserGenerator.kt:729 */Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
         176  +
                                    /* XmlBindingTraitParserGenerator.kt:377 */::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
         177  +
                                    /* XmlBindingTraitParserGenerator.kt:748 */.into()
         178  +
                                /* XmlBindingTraitParserGenerator.kt:729 */)
         179  +
                                /* XmlBindingTraitParserGenerator.kt:402 */?
         180  +
                            /* XmlBindingTraitParserGenerator.kt:573 */);
         181  +
                            /* XmlBindingTraitParserGenerator.kt:576 */list_10
         182  +
                        /* XmlBindingTraitParserGenerator.kt:570 */})
         183  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         184  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         185  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         186  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_flattened_list2(var_9);
         187  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  158    188   
            ,
  159         -
            s if s.matches("flattenedListWithNamespace") /* flattenedListWithNamespace aws.protocoltests.restxml.synthetic#XmlListsOutput$flattenedListWithNamespace */ =>  {
  160         -
                let var_11 =
  161         -
                    Some(
  162         -
                        Result::<::std::vec::Vec::<::std::string::String>, ::aws_smithy_xml::decode::XmlDecodeError>::Ok({
  163         -
                            let mut list_12 = builder.flattened_list_with_namespace.take().unwrap_or_default();
  164         -
                            list_12.push(
  165         -
                                Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
  166         -
                                    ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
  167         -
                                    .into()
  168         -
                                )
  169         -
                                ?
  170         -
                            );
  171         -
                            list_12
  172         -
                        })
  173         -
                        ?
  174         -
                    )
  175         -
                ;
  176         -
                builder = builder.set_flattened_list_with_namespace(var_11);
  177         -
            }
         189  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("flattenedListWithNamespace") /* flattenedListWithNamespace aws.protocoltests.restxml.synthetic#XmlListsOutput$flattenedListWithNamespace */ =>  {
         190  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_11 =
         191  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         192  +
                        /* XmlBindingTraitParserGenerator.kt:570 */Result::<::std::vec::Vec::<::std::string::String>, ::aws_smithy_xml::decode::XmlDecodeError>::Ok({
         193  +
                            /* XmlBindingTraitParserGenerator.kt:572 */let mut list_12 = builder.flattened_list_with_namespace.take().unwrap_or_default();
         194  +
                            /* XmlBindingTraitParserGenerator.kt:573 */list_12.push(
         195  +
                                /* XmlBindingTraitParserGenerator.kt:729 */Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
         196  +
                                    /* XmlBindingTraitParserGenerator.kt:377 */::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
         197  +
                                    /* XmlBindingTraitParserGenerator.kt:748 */.into()
         198  +
                                /* XmlBindingTraitParserGenerator.kt:729 */)
         199  +
                                /* XmlBindingTraitParserGenerator.kt:402 */?
         200  +
                            /* XmlBindingTraitParserGenerator.kt:573 */);
         201  +
                            /* XmlBindingTraitParserGenerator.kt:576 */list_12
         202  +
                        /* XmlBindingTraitParserGenerator.kt:570 */})
         203  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         204  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         205  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         206  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_flattened_list_with_namespace(var_11);
         207  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  178    208   
            ,
  179         -
            s if s.matches("enumList") /* enumList aws.protocoltests.restxml.synthetic#XmlListsOutput$enumList */ =>  {
  180         -
                let var_13 =
  181         -
                    Some(
  182         -
                        crate::protocol_serde::shape_foo_enum_list::de_foo_enum_list(&mut tag)
  183         -
                        ?
  184         -
                    )
  185         -
                ;
  186         -
                builder = builder.set_enum_list(var_13);
  187         -
            }
         209  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("enumList") /* enumList aws.protocoltests.restxml.synthetic#XmlListsOutput$enumList */ =>  {
         210  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_13 =
         211  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         212  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_foo_enum_list::de_foo_enum_list(&mut tag)
         213  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         214  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         215  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         216  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_enum_list(var_13);
         217  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  188    218   
            ,
  189         -
            s if s.matches("timestampList") /* timestampList aws.protocoltests.restxml.synthetic#XmlListsOutput$timestampList */ =>  {
  190         -
                let var_14 =
  191         -
                    Some(
  192         -
                        crate::protocol_serde::shape_timestamp_list::de_timestamp_list(&mut tag)
  193         -
                        ?
  194         -
                    )
  195         -
                ;
  196         -
                builder = builder.set_timestamp_list(var_14);
  197         -
            }
         219  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("timestampList") /* timestampList aws.protocoltests.restxml.synthetic#XmlListsOutput$timestampList */ =>  {
         220  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_14 =
         221  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         222  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_timestamp_list::de_timestamp_list(&mut tag)
         223  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         224  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         225  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         226  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_timestamp_list(var_14);
         227  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  198    228   
            ,
  199         -
            s if s.matches("nestedStringList") /* nestedStringList aws.protocoltests.restxml.synthetic#XmlListsOutput$nestedStringList */ =>  {
  200         -
                let var_15 =
  201         -
                    Some(
  202         -
                        crate::protocol_serde::shape_nested_string_list::de_nested_string_list(&mut tag)
  203         -
                        ?
  204         -
                    )
  205         -
                ;
  206         -
                builder = builder.set_nested_string_list(var_15);
  207         -
            }
         229  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("nestedStringList") /* nestedStringList aws.protocoltests.restxml.synthetic#XmlListsOutput$nestedStringList */ =>  {
         230  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_15 =
         231  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         232  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_nested_string_list::de_nested_string_list(&mut tag)
         233  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         234  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         235  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         236  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_nested_string_list(var_15);
         237  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  208    238   
            ,
  209         -
            s if s.matches("stringList") /* stringList aws.protocoltests.restxml.synthetic#XmlListsOutput$stringList */ =>  {
  210         -
                let var_16 =
  211         -
                    Some(
  212         -
                        crate::protocol_serde::shape_string_list::de_string_list(&mut tag)
  213         -
                        ?
  214         -
                    )
  215         -
                ;
  216         -
                builder = builder.set_string_list(var_16);
  217         -
            }
         239  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("stringList") /* stringList aws.protocoltests.restxml.synthetic#XmlListsOutput$stringList */ =>  {
         240  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_16 =
         241  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         242  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_string_list::de_string_list(&mut tag)
         243  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         244  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         245  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         246  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_string_list(var_16);
         247  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  218    248   
            ,
  219         -
            s if s.matches("renamed") /* renamedListMembers aws.protocoltests.restxml.synthetic#XmlListsOutput$renamedListMembers */ =>  {
  220         -
                let var_17 =
  221         -
                    Some(
  222         -
                        crate::protocol_serde::shape_renamed_list_members::de_renamed_list_members(&mut tag)
  223         -
                        ?
  224         -
                    )
  225         -
                ;
  226         -
                builder = builder.set_renamed_list_members(var_17);
  227         -
            }
         249  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("renamed") /* renamedListMembers aws.protocoltests.restxml.synthetic#XmlListsOutput$renamedListMembers */ =>  {
         250  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_17 =
         251  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         252  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_renamed_list_members::de_renamed_list_members(&mut tag)
         253  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         254  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         255  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         256  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_renamed_list_members(var_17);
         257  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  228    258   
            ,
  229         -
            s if s.matches("booleanList") /* booleanList aws.protocoltests.restxml.synthetic#XmlListsOutput$booleanList */ =>  {
  230         -
                let var_18 =
  231         -
                    Some(
  232         -
                        crate::protocol_serde::shape_boolean_list::de_boolean_list(&mut tag)
  233         -
                        ?
  234         -
                    )
  235         -
                ;
  236         -
                builder = builder.set_boolean_list(var_18);
  237         -
            }
         259  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("booleanList") /* booleanList aws.protocoltests.restxml.synthetic#XmlListsOutput$booleanList */ =>  {
         260  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_18 =
         261  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         262  +
                        /* XmlBindingTraitParserGenerator.kt:562 */crate::protocol_serde::shape_boolean_list::de_boolean_list(&mut tag)
         263  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         264  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         265  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         266  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_boolean_list(var_18);
         267  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  238    268   
            ,
  239         -
            s if s.matches("flattenedList") /* flattenedList aws.protocoltests.restxml.synthetic#XmlListsOutput$flattenedList */ =>  {
  240         -
                let var_19 =
  241         -
                    Some(
  242         -
                        Result::<::std::vec::Vec::<::std::string::String>, ::aws_smithy_xml::decode::XmlDecodeError>::Ok({
  243         -
                            let mut list_20 = builder.flattened_list.take().unwrap_or_default();
  244         -
                            list_20.push(
  245         -
                                Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
  246         -
                                    ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
  247         -
                                    .into()
  248         -
                                )
  249         -
                                ?
  250         -
                            );
  251         -
                            list_20
  252         -
                        })
  253         -
                        ?
  254         -
                    )
  255         -
                ;
  256         -
                builder = builder.set_flattened_list(var_19);
  257         -
            }
         269  +
            /* XmlBindingTraitParserGenerator.kt:492 */s if s.matches("flattenedList") /* flattenedList aws.protocoltests.restxml.synthetic#XmlListsOutput$flattenedList */ =>  {
         270  +
                /* XmlBindingTraitParserGenerator.kt:329 */let var_19 =
         271  +
                    /* XmlBindingTraitParserGenerator.kt:372 */Some(
         272  +
                        /* XmlBindingTraitParserGenerator.kt:570 */Result::<::std::vec::Vec::<::std::string::String>, ::aws_smithy_xml::decode::XmlDecodeError>::Ok({
         273  +
                            /* XmlBindingTraitParserGenerator.kt:572 */let mut list_20 = builder.flattened_list.take().unwrap_or_default();
         274  +
                            /* XmlBindingTraitParserGenerator.kt:573 */list_20.push(
         275  +
                                /* XmlBindingTraitParserGenerator.kt:729 */Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
         276  +
                                    /* XmlBindingTraitParserGenerator.kt:377 */::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
         277  +
                                    /* XmlBindingTraitParserGenerator.kt:748 */.into()
         278  +
                                /* XmlBindingTraitParserGenerator.kt:729 */)
         279  +
                                /* XmlBindingTraitParserGenerator.kt:402 */?
         280  +
                            /* XmlBindingTraitParserGenerator.kt:573 */);
         281  +
                            /* XmlBindingTraitParserGenerator.kt:576 */list_20
         282  +
                        /* XmlBindingTraitParserGenerator.kt:570 */})
         283  +
                        /* XmlBindingTraitParserGenerator.kt:402 */?
         284  +
                    /* XmlBindingTraitParserGenerator.kt:372 */)
         285  +
                /* XmlBindingTraitParserGenerator.kt:329 */;
         286  +
                /* XmlBindingTraitParserGenerator.kt:336 */builder = builder.set_flattened_list(var_19);
         287  +
            /* XmlBindingTraitParserGenerator.kt:492 */}
  258    288   
            ,
  259         -
            _ => {}
  260         -
        }
         289  +
            /* XmlBindingTraitParserGenerator.kt:356 */_ => {}
         290  +
        /* XmlBindingTraitParserGenerator.kt:353 */}
         291  +
        /* XmlBindingTraitParserGenerator.kt:352 */
  261    292   
    }
         293  +
    /* XmlBindingTraitParserGenerator.kt:213 */
  262    294   
    Ok(builder)
         295  +
    /* XmlBindingTraitParserGenerator.kt:189 */
  263    296   
}

tmp-codegen-diff/codegen-client-test/rest_xml/rust-client-codegen/src/protocol_serde/shape_xml_lists_input.rs

@@ -1,1 +148,319 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* XmlBindingTraitSerializerGenerator.kt:427 */
    2      3   
pub fn ser_xml_lists_input_input_input(
    3      4   
    input: &crate::operation::xml_lists::XmlListsInput,
    4      5   
    writer: ::aws_smithy_xml::encode::ElWriter,
    5      6   
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
           7  +
    /* RustType.kt:516 */
    6      8   
    #[allow(unused_mut)]
           9  +
    /* XmlBindingTraitSerializerGenerator.kt:299 */
    7     10   
    let mut scope = writer.finish();
          11  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
    8     12   
    if let Some(var_1) = &input.boolean_list {
          13  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
    9     14   
        let mut inner_writer = scope.start_el("booleanList").finish();
          15  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
   10     16   
        for list_item_2 in var_1 {
          17  +
            /* SerializerUtil.kt:42 */
   11     18   
            {
          19  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   12     20   
                let mut inner_writer = inner_writer.start_el("member").finish();
   13         -
                inner_writer.data(::aws_smithy_types::primitive::Encoder::from(*list_item_2).encode());
          21  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
          22  +
                inner_writer.data(
          23  +
                    /* XmlBindingTraitSerializerGenerator.kt:325 */
          24  +
                    ::aws_smithy_types::primitive::Encoder::from(*list_item_2).encode(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          25  +
                );
          26  +
                /* SerializerUtil.kt:42 */
   14     27   
            }
          28  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
   15     29   
        }
          30  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   16     31   
    }
          32  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   17     33   
    if let Some(var_3) = &input.enum_list {
          34  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
   18     35   
        let mut inner_writer = scope.start_el("enumList").finish();
          36  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
   19     37   
        for list_item_4 in var_3 {
          38  +
            /* SerializerUtil.kt:42 */
   20     39   
            {
          40  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   21     41   
                let mut inner_writer = inner_writer.start_el("member").finish();
   22         -
                inner_writer.data(list_item_4.as_str());
          42  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
          43  +
                inner_writer.data(
          44  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ list_item_4.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          45  +
                );
          46  +
                /* SerializerUtil.kt:42 */
   23     47   
            }
          48  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
   24     49   
        }
          50  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   25     51   
    }
          52  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   26     53   
    if let Some(var_5) = &input.flattened_list {
          54  +
        /* XmlBindingTraitSerializerGenerator.kt:500 */
   27     55   
        for list_item_6 in var_5 {
          56  +
            /* SerializerUtil.kt:42 */
   28     57   
            {
          58  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   29     59   
                let mut inner_writer = scope.start_el("flattenedList").finish();
   30         -
                inner_writer.data(list_item_6.as_str());
          60  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
          61  +
                inner_writer.data(
          62  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ list_item_6.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          63  +
                );
          64  +
                /* SerializerUtil.kt:42 */
   31     65   
            }
          66  +
            /* XmlBindingTraitSerializerGenerator.kt:500 */
   32     67   
        }
          68  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   33     69   
    }
          70  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   34     71   
    if let Some(var_7) = &input.flattened_list2 {
          72  +
        /* XmlBindingTraitSerializerGenerator.kt:500 */
   35     73   
        for list_item_8 in var_7 {
          74  +
            /* SerializerUtil.kt:42 */
   36     75   
            {
          76  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   37     77   
                let mut inner_writer = scope.start_el("customName").finish();
   38         -
                inner_writer.data(list_item_8.as_str());
          78  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
          79  +
                inner_writer.data(
          80  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ list_item_8.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
          81  +
                );
          82  +
                /* SerializerUtil.kt:42 */
   39     83   
            }
          84  +
            /* XmlBindingTraitSerializerGenerator.kt:500 */
   40     85   
        }
          86  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   41     87   
    }
          88  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   42     89   
    if let Some(var_9) = &input.flattened_list_with_member_namespace {
          90  +
        /* XmlBindingTraitSerializerGenerator.kt:500 */
   43     91   
        for list_item_10 in var_9 {
          92  +
            /* SerializerUtil.kt:42 */
   44     93   
            {
          94  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   45     95   
                let mut inner_writer = scope
   46     96   
                    .start_el("flattenedListWithMemberNamespace")
   47     97   
                    .write_ns("https://xml-member.example.com", None)
   48     98   
                    .finish();
   49         -
                inner_writer.data(list_item_10.as_str());
          99  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
         100  +
                inner_writer.data(
         101  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ list_item_10.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
         102  +
                );
         103  +
                /* SerializerUtil.kt:42 */
   50    104   
            }
         105  +
            /* XmlBindingTraitSerializerGenerator.kt:500 */
   51    106   
        }
         107  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   52    108   
    }
         109  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   53    110   
    if let Some(var_11) = &input.flattened_list_with_namespace {
         111  +
        /* XmlBindingTraitSerializerGenerator.kt:500 */
   54    112   
        for list_item_12 in var_11 {
         113  +
            /* SerializerUtil.kt:42 */
   55    114   
            {
         115  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   56    116   
                let mut inner_writer = scope.start_el("flattenedListWithNamespace").finish();
   57         -
                inner_writer.data(list_item_12.as_str());
         117  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
         118  +
                inner_writer.data(
         119  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ list_item_12.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
         120  +
                );
         121  +
                /* SerializerUtil.kt:42 */
   58    122   
            }
         123  +
            /* XmlBindingTraitSerializerGenerator.kt:500 */
   59    124   
        }
         125  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   60    126   
    }
         127  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   61    128   
    if let Some(var_13) = &input.flattened_structure_list {
         129  +
        /* XmlBindingTraitSerializerGenerator.kt:500 */
   62    130   
        for list_item_14 in var_13 {
         131  +
            /* SerializerUtil.kt:42 */
   63    132   
            {
         133  +
                /* XmlBindingTraitSerializerGenerator.kt:399 */
   64    134   
                let inner_writer = scope.start_el("flattenedStructureList");
         135  +
                /* XmlBindingTraitSerializerGenerator.kt:440 */
   65    136   
                crate::protocol_serde::shape_structure_list_member::ser_structure_list_member(list_item_14, inner_writer)?
         137  +
                /* SerializerUtil.kt:42 */
   66    138   
            }
         139  +
            /* XmlBindingTraitSerializerGenerator.kt:500 */
   67    140   
        }
         141  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   68    142   
    }
         143  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   69    144   
    if let Some(var_15) = &input.int_enum_list {
         145  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
   70    146   
        let mut inner_writer = scope.start_el("intEnumList").finish();
         147  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
   71    148   
        for list_item_16 in var_15 {
         149  +
            /* SerializerUtil.kt:42 */
   72    150   
            {
         151  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   73    152   
                let mut inner_writer = inner_writer.start_el("member").finish();
   74         -
                inner_writer.data(::aws_smithy_types::primitive::Encoder::from(*list_item_16).encode());
         153  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
         154  +
                inner_writer.data(
         155  +
                    /* XmlBindingTraitSerializerGenerator.kt:325 */
         156  +
                    ::aws_smithy_types::primitive::Encoder::from(*list_item_16).encode(), /* XmlBindingTraitSerializerGenerator.kt:360 */
         157  +
                );
         158  +
                /* SerializerUtil.kt:42 */
   75    159   
            }
         160  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
   76    161   
        }
         162  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   77    163   
    }
         164  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   78    165   
    if let Some(var_17) = &input.integer_list {
         166  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
   79    167   
        let mut inner_writer = scope.start_el("integerList").finish();
         168  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
   80    169   
        for list_item_18 in var_17 {
         170  +
            /* SerializerUtil.kt:42 */
   81    171   
            {
         172  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
   82    173   
                let mut inner_writer = inner_writer.start_el("member").finish();
   83         -
                inner_writer.data(::aws_smithy_types::primitive::Encoder::from(*list_item_18).encode());
         174  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
         175  +
                inner_writer.data(
         176  +
                    /* XmlBindingTraitSerializerGenerator.kt:325 */
         177  +
                    ::aws_smithy_types::primitive::Encoder::from(*list_item_18).encode(), /* XmlBindingTraitSerializerGenerator.kt:360 */
         178  +
                );
         179  +
                /* SerializerUtil.kt:42 */
   84    180   
            }
         181  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
   85    182   
        }
         183  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
   86    184   
    }
         185  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
   87    186   
    if let Some(var_19) = &input.nested_string_list {
         187  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
   88    188   
        let mut inner_writer = scope.start_el("nestedStringList").finish();
         189  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
   89    190   
        for list_item_20 in var_19 {
         191  +
            /* SerializerUtil.kt:42 */
   90    192   
            {
         193  +
                /* XmlBindingTraitSerializerGenerator.kt:369 */
   91    194   
                let mut inner_writer = inner_writer.start_el("member").finish();
         195  +
                /* XmlBindingTraitSerializerGenerator.kt:489 */
   92    196   
                for list_item_21 in list_item_20 {
         197  +
                    /* SerializerUtil.kt:42 */
   93    198   
                    {
         199  +
                        /* XmlBindingTraitSerializerGenerator.kt:359 */
   94    200   
                        let mut inner_writer = inner_writer.start_el("member").finish();
   95         -
                        inner_writer.data(list_item_21.as_str());
         201  +
                        /* XmlBindingTraitSerializerGenerator.kt:360 */
         202  +
                        inner_writer.data(
         203  +
                            /* XmlBindingTraitSerializerGenerator.kt:321 */
         204  +
                            list_item_21.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
         205  +
                        );
         206  +
                        /* SerializerUtil.kt:42 */
   96    207   
                    }
         208  +
                    /* XmlBindingTraitSerializerGenerator.kt:489 */
   97    209   
                }
         210  +
                /* SerializerUtil.kt:42 */
   98    211   
            }
         212  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
   99    213   
        }
         214  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
  100    215   
    }
         216  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
  101    217   
    if let Some(var_22) = &input.renamed_list_members {
         218  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
  102    219   
        let mut inner_writer = scope.start_el("renamed").finish();
         220  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
  103    221   
        for list_item_23 in var_22 {
         222  +
            /* SerializerUtil.kt:42 */
  104    223   
            {
         224  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
  105    225   
                let mut inner_writer = inner_writer.start_el("item").finish();
  106         -
                inner_writer.data(list_item_23.as_str());
         226  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
         227  +
                inner_writer.data(
         228  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ list_item_23.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
         229  +
                );
         230  +
                /* SerializerUtil.kt:42 */
  107    231   
            }
         232  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
  108    233   
        }
         234  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
  109    235   
    }
         236  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
  110    237   
    if let Some(var_24) = &input.string_list {
         238  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
  111    239   
        let mut inner_writer = scope.start_el("stringList").finish();
         240  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
  112    241   
        for list_item_25 in var_24 {
         242  +
            /* SerializerUtil.kt:42 */
  113    243   
            {
         244  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
  114    245   
                let mut inner_writer = inner_writer.start_el("member").finish();
  115         -
                inner_writer.data(list_item_25.as_str());
         246  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
         247  +
                inner_writer.data(
         248  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ list_item_25.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
         249  +
                );
         250  +
                /* SerializerUtil.kt:42 */
  116    251   
            }
         252  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
  117    253   
        }
         254  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
  118    255   
    }
         256  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
  119    257   
    if let Some(var_26) = &input.string_set {
         258  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
  120    259   
        let mut inner_writer = scope.start_el("stringSet").finish();
         260  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
  121    261   
        for list_item_27 in var_26 {
         262  +
            /* SerializerUtil.kt:42 */
  122    263   
            {
         264  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
  123    265   
                let mut inner_writer = inner_writer.start_el("member").finish();
  124         -
                inner_writer.data(list_item_27.as_str());
         266  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
         267  +
                inner_writer.data(
         268  +
                    /* XmlBindingTraitSerializerGenerator.kt:321 */ list_item_27.as_str(), /* XmlBindingTraitSerializerGenerator.kt:360 */
         269  +
                );
         270  +
                /* SerializerUtil.kt:42 */
  125    271   
            }
         272  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
  126    273   
        }
         274  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
  127    275   
    }
         276  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
  128    277   
    if let Some(var_28) = &input.structure_list {
         278  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
  129    279   
        let mut inner_writer = scope.start_el("myStructureList").finish();
         280  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
  130    281   
        for list_item_29 in var_28 {
         282  +
            /* SerializerUtil.kt:42 */
  131    283   
            {
         284  +
                /* XmlBindingTraitSerializerGenerator.kt:399 */
  132    285   
                let inner_writer = inner_writer.start_el("item");
         286  +
                /* XmlBindingTraitSerializerGenerator.kt:440 */
  133    287   
                crate::protocol_serde::shape_structure_list_member::ser_structure_list_member(list_item_29, inner_writer)?
         288  +
                /* SerializerUtil.kt:42 */
  134    289   
            }
         290  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
  135    291   
        }
         292  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
  136    293   
    }
         294  +
    /* XmlBindingTraitSerializerGenerator.kt:555 */
  137    295   
    if let Some(var_30) = &input.timestamp_list {
         296  +
        /* XmlBindingTraitSerializerGenerator.kt:369 */
  138    297   
        let mut inner_writer = scope.start_el("timestampList").finish();
         298  +
        /* XmlBindingTraitSerializerGenerator.kt:489 */
  139    299   
        for list_item_31 in var_30 {
         300  +
            /* SerializerUtil.kt:42 */
  140    301   
            {
         302  +
                /* XmlBindingTraitSerializerGenerator.kt:359 */
  141    303   
                let mut inner_writer = inner_writer.start_el("member").finish();
  142         -
                inner_writer.data(list_item_31.fmt(::aws_smithy_types::date_time::Format::DateTimeWithOffset)?.as_ref());
         304  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */
         305  +
                inner_writer.data(
         306  +
                    /* XmlBindingTraitSerializerGenerator.kt:340 */list_item_31.fmt(::aws_smithy_types::date_time::Format::DateTimeWithOffset)?.as_ref()
         307  +
                /* XmlBindingTraitSerializerGenerator.kt:360 */);
         308  +
                /* SerializerUtil.kt:42 */
  143    309   
            }
         310  +
            /* XmlBindingTraitSerializerGenerator.kt:489 */
  144    311   
        }
         312  +
        /* XmlBindingTraitSerializerGenerator.kt:555 */
  145    313   
    }
         314  +
    /* XmlBindingTraitSerializerGenerator.kt:304 */
  146    315   
    scope.finish();
         316  +
    /* XmlBindingTraitSerializerGenerator.kt:437 */
  147    317   
    Ok(())
         318  +
    /* XmlBindingTraitSerializerGenerator.kt:427 */
  148    319   
}