Server Test

Server Test

rev. dfb5149b65b7bcc09edd15b8e071ad43b5ac5943 (ignoring whitespace)

Files changed:

tmp-codegen-diff/codegen-server-test/rpcv2Cbor/rust-server-codegen/src/operation.rs

@@ -1,1 +31,32 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
    2      3   
static CONTENT_TYPE_FLOAT16: std::sync::LazyLock<::mime::Mime> = std::sync::LazyLock::new(|| {
    3      4   
    "application/cbor"
    4      5   
        .parse::<::mime::Mime>()
    5      6   
        .expect("BUG: MIME parsing failed, content_type is not valid")
    6      7   
});
    7      8   
::pin_project_lite::pin_project! {
    8      9   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
    9     10   
    /// [`Float16Input`](crate::input::Float16Input) using modelled bindings.
   10     11   
    pub struct Float16InputFuture {
   11     12   
        inner: std::pin::Pin<Box<dyn std::future::Future<Output = Result<crate::input::Float16Input, ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError>> + Send>>
@@ -42,43 +117,120 @@
   62     63   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
   63     64   
                    e,
   64     65   
                )
   65     66   
            },
   66     67   
        );
   67     68   
        Float16InputFuture {
   68     69   
            inner: Box::pin(fut),
   69     70   
        }
   70     71   
    }
   71     72   
}
          73  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
   72     74   
impl
   73     75   
    ::aws_smithy_http_server::response::IntoResponse<
   74     76   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
   75     77   
    > for crate::output::Float16Output
   76     78   
{
   77     79   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
   78     80   
        match crate::protocol_serde::shape_float16::ser_float16_http_response(self) {
   79     81   
            Ok(response) => response,
   80     82   
            Err(e) => {
   81     83   
                ::tracing::error!(error = %e, "failed to serialize response");
   82     84   
                ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
   83     85   
            }
   84     86   
        }
   85     87   
    }
   86     88   
}
   87     89   
          90  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
   88     91   
static CONTENT_TYPE_SPARSENULLSOPERATION: std::sync::LazyLock<::mime::Mime> =
   89     92   
    std::sync::LazyLock::new(|| {
   90     93   
        "application/cbor"
   91     94   
            .parse::<::mime::Mime>()
   92     95   
            .expect("BUG: MIME parsing failed, content_type is not valid")
   93     96   
    });
   94     97   
::pin_project_lite::pin_project! {
   95     98   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
   96     99   
    /// [`SparseNullsOperationInput`](crate::input::SparseNullsOperationInput) using modelled bindings.
   97    100   
    pub struct SparseNullsOperationInputFuture {
@@ -129,132 +206,213 @@
  149    152   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
  150    153   
                    e,
  151    154   
                )
  152    155   
            },
  153    156   
        );
  154    157   
        SparseNullsOperationInputFuture {
  155    158   
            inner: Box::pin(fut),
  156    159   
        }
  157    160   
    }
  158    161   
}
         162  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
  159    163   
impl
  160    164   
    ::aws_smithy_http_server::response::IntoResponse<
  161    165   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
  162    166   
    > for crate::output::SparseNullsOperationOutput
  163    167   
{
  164    168   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
  165    169   
        match crate::protocol_serde::shape_sparse_nulls_operation::ser_sparse_nulls_operation_http_response(self) {
  166    170   
                        Ok(response) => response,
  167    171   
                        Err(e) => {
  168    172   
                            ::tracing::error!(error = %e, "failed to serialize response");
  169    173   
                            ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
  170    174   
                        }
  171    175   
                    }
  172    176   
    }
  173    177   
}
  174    178   
         179  +
/* RustType.kt:516 */
  175    180   
#[allow(unreachable_code, unused_variables)]
         181  +
/* RustType.kt:516 */
  176    182   
#[cfg(test)]
         183  +
/* ProtocolTestGenerator.kt:98 */
  177    184   
mod sparse_nulls_operation_test {
  178    185   
  179    186   
    /// Serializes null values in maps
  180    187   
    /// Test ID: RpcV2CborSparseMapsSerializeNullValues
  181    188   
    #[::tokio::test]
  182    189   
    #[::tracing_test::traced_test]
  183    190   
    async fn rpc_v2_cbor_sparse_maps_serialize_null_values_request() {
  184    191   
        #[allow(unused_mut)]
  185    192   
        let mut http_request = http::Request::builder()
  186    193   
            .uri("/service/RpcV2Protocol/operation/SparseNullsOperation")
@@ -330,337 +391,401 @@
  350    357   
        ));
  351    358   
        let body = ::hyper::body::to_bytes(http_response.into_body())
  352    359   
            .await
  353    360   
            .expect("unable to extract body to bytes");
  354    361   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  355    362   
            &body,
  356    363   
            "v3BzcGFyc2VTdHJpbmdMaXN0n/b//w==",
  357    364   
            ::aws_smithy_protocol_test::MediaType::from("application/cbor"),
  358    365   
        ));
  359    366   
    }
         367  +
         368  +
    /* ProtocolTestGenerator.kt:98 */
  360    369   
}
  361    370   
         371  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
  362    372   
static CONTENT_TYPE_OPERATIONWITHDEFAULTS: std::sync::LazyLock<::mime::Mime> =
  363    373   
    std::sync::LazyLock::new(|| {
  364    374   
        "application/cbor"
  365    375   
            .parse::<::mime::Mime>()
  366    376   
            .expect("BUG: MIME parsing failed, content_type is not valid")
  367    377   
    });
  368    378   
::pin_project_lite::pin_project! {
  369    379   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
  370    380   
    /// [`OperationWithDefaultsInput`](crate::input::OperationWithDefaultsInput) using modelled bindings.
  371    381   
    pub struct OperationWithDefaultsInputFuture {
@@ -403,413 +498,513 @@
  423    433   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
  424    434   
                    e,
  425    435   
                )
  426    436   
            },
  427    437   
        );
  428    438   
        OperationWithDefaultsInputFuture {
  429    439   
            inner: Box::pin(fut),
  430    440   
        }
  431    441   
    }
  432    442   
}
         443  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
  433    444   
impl
  434    445   
    ::aws_smithy_http_server::response::IntoResponse<
  435    446   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
  436    447   
    > for crate::output::OperationWithDefaultsOutput
  437    448   
{
  438    449   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
  439    450   
        match crate::protocol_serde::shape_operation_with_defaults::ser_operation_with_defaults_http_response(self) {
  440    451   
                        Ok(response) => response,
  441    452   
                        Err(e) => {
  442    453   
                            ::tracing::error!(error = %e, "failed to serialize response");
  443    454   
                            ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
  444    455   
                        }
  445    456   
                    }
  446    457   
    }
  447    458   
}
         459  +
/* ServerHttpBoundProtocolGenerator.kt:350 */
  448    460   
impl
  449    461   
    ::aws_smithy_http_server::response::IntoResponse<
  450    462   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
  451    463   
    > for crate::error::OperationWithDefaultsError
  452    464   
{
  453    465   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
  454    466   
        match crate::protocol_serde::shape_operation_with_defaults::ser_operation_with_defaults_http_error(&self) {
  455    467   
            Ok(mut response) => {
  456    468   
                response.extensions_mut().insert(::aws_smithy_http_server::extension::ModeledErrorExtension::new(self.name()));
  457    469   
                response
  458    470   
            },
  459    471   
            Err(e) => {
  460    472   
                ::tracing::error!(error = %e, "failed to serialize response");
  461    473   
                ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
  462    474   
            }
  463    475   
        }
  464    476   
    }
  465    477   
}
  466    478   
         479  +
/* RustType.kt:516 */
  467    480   
#[allow(unreachable_code, unused_variables)]
         481  +
/* RustType.kt:516 */
  468    482   
#[cfg(test)]
         483  +
/* ProtocolTestGenerator.kt:98 */
  469    484   
mod operation_with_defaults_test {
  470    485   
  471    486   
    /// Server populates default values when missing in request body.
  472    487   
    /// Test ID: RpcV2CborServerPopulatesDefaultsWhenMissingInRequestBody
  473    488   
    #[::tokio::test]
  474    489   
    #[::tracing_test::traced_test]
  475    490   
    #[should_panic]
  476    491   
    async fn rpc_v2_cbor_server_populates_defaults_when_missing_in_request_body_request() {
  477    492   
        #[allow(unused_mut)]
  478    493   
        let mut http_request = http::Request::builder()
@@ -605,620 +666,684 @@
  625    640   
            http_response.headers(),
  626    641   
            expected_headers,
  627    642   
        ));
  628    643   
        let body = ::hyper::body::to_bytes(http_response.into_body())
  629    644   
            .await
  630    645   
            .expect("unable to extract body to bytes");
  631    646   
        ::aws_smithy_protocol_test::assert_ok(
  632    647   
        ::aws_smithy_protocol_test::validate_body(&body, "v21kZWZhdWx0U3RyaW5nYmhpbmRlZmF1bHRCb29sZWFu9WtkZWZhdWx0TGlzdIBwZGVmYXVsdFRpbWVzdGFtcMH7AAAAAAAAAABrZGVmYXVsdEJsb2JDYWJja2RlZmF1bHRCeXRlAWxkZWZhdWx0U2hvcnQBbmRlZmF1bHRJbnRlZ2VyCmtkZWZhdWx0TG9uZxhkbGRlZmF1bHRGbG9hdPo/gAAAbWRlZmF1bHREb3VibGX7P/AAAAAAAABqZGVmYXVsdE1hcKBrZGVmYXVsdEVudW1jRk9PbmRlZmF1bHRJbnRFbnVtAWtlbXB0eVN0cmluZ2BsZmFsc2VCb29sZWFu9GllbXB0eUJsb2JAaHplcm9CeXRlAGl6ZXJvU2hvcnQAa3plcm9JbnRlZ2VyAGh6ZXJvTG9uZwBpemVyb0Zsb2F0+gAAAABqemVyb0RvdWJsZfsAAAAAAAAAAP8=", ::aws_smithy_protocol_test::MediaType::from("application/cbor"))
  633    648   
        );
  634    649   
    }
         650  +
         651  +
    /* ProtocolTestGenerator.kt:98 */
  635    652   
}
  636    653   
         654  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
  637    655   
static CONTENT_TYPE_FRACTIONALSECONDS: std::sync::LazyLock<::mime::Mime> =
  638    656   
    std::sync::LazyLock::new(|| {
  639    657   
        "application/cbor"
  640    658   
            .parse::<::mime::Mime>()
  641    659   
            .expect("BUG: MIME parsing failed, content_type is not valid")
  642    660   
    });
  643    661   
::pin_project_lite::pin_project! {
  644    662   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
  645    663   
    /// [`FractionalSecondsInput`](crate::input::FractionalSecondsInput) using modelled bindings.
  646    664   
    pub struct FractionalSecondsInputFuture {
@@ -680,698 +757,777 @@
  700    718   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
  701    719   
                    e,
  702    720   
                )
  703    721   
            },
  704    722   
        );
  705    723   
        FractionalSecondsInputFuture {
  706    724   
            inner: Box::pin(fut),
  707    725   
        }
  708    726   
    }
  709    727   
}
         728  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
  710    729   
impl
  711    730   
    ::aws_smithy_http_server::response::IntoResponse<
  712    731   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
  713    732   
    > for crate::output::FractionalSecondsOutput
  714    733   
{
  715    734   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
  716    735   
        match crate::protocol_serde::shape_fractional_seconds::ser_fractional_seconds_http_response(
  717    736   
            self,
  718    737   
        ) {
  719    738   
            Ok(response) => response,
  720    739   
            Err(e) => {
  721    740   
                ::tracing::error!(error = %e, "failed to serialize response");
  722    741   
                ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
  723    742   
            }
  724    743   
        }
  725    744   
    }
  726    745   
}
  727    746   
         747  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
  728    748   
static CONTENT_TYPE_GREETINGWITHERRORS: std::sync::LazyLock<::mime::Mime> =
  729    749   
    std::sync::LazyLock::new(|| {
  730    750   
        "application/cbor"
  731    751   
            .parse::<::mime::Mime>()
  732    752   
            .expect("BUG: MIME parsing failed, content_type is not valid")
  733    753   
    });
  734    754   
::pin_project_lite::pin_project! {
  735    755   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
  736    756   
    /// [`GreetingWithErrorsInput`](crate::input::GreetingWithErrorsInput) using modelled bindings.
  737    757   
    pub struct GreetingWithErrorsInputFuture {
@@ -771,791 +870,895 @@
  791    811   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
  792    812   
                    e,
  793    813   
                )
  794    814   
            },
  795    815   
        );
  796    816   
        GreetingWithErrorsInputFuture {
  797    817   
            inner: Box::pin(fut),
  798    818   
        }
  799    819   
    }
  800    820   
}
         821  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
  801    822   
impl
  802    823   
    ::aws_smithy_http_server::response::IntoResponse<
  803    824   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
  804    825   
    > for crate::output::GreetingWithErrorsOutput
  805    826   
{
  806    827   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
  807    828   
        match crate::protocol_serde::shape_greeting_with_errors::ser_greeting_with_errors_http_response(self) {
  808    829   
                        Ok(response) => response,
  809    830   
                        Err(e) => {
  810    831   
                            ::tracing::error!(error = %e, "failed to serialize response");
  811    832   
                            ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
  812    833   
                        }
  813    834   
                    }
  814    835   
    }
  815    836   
}
         837  +
/* ServerHttpBoundProtocolGenerator.kt:350 */
  816    838   
impl
  817    839   
    ::aws_smithy_http_server::response::IntoResponse<
  818    840   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
  819    841   
    > for crate::error::GreetingWithErrorsError
  820    842   
{
  821    843   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
  822    844   
        match crate::protocol_serde::shape_greeting_with_errors::ser_greeting_with_errors_http_error(
  823    845   
            &self,
  824    846   
        ) {
  825    847   
            Ok(mut response) => {
  826    848   
                response.extensions_mut().insert(
  827    849   
                    ::aws_smithy_http_server::extension::ModeledErrorExtension::new(self.name()),
  828    850   
                );
  829    851   
                response
  830    852   
            }
  831    853   
            Err(e) => {
  832    854   
                ::tracing::error!(error = %e, "failed to serialize response");
  833    855   
                ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
  834    856   
            }
  835    857   
        }
  836    858   
    }
  837    859   
}
  838    860   
         861  +
/* RustType.kt:516 */
  839    862   
#[allow(unreachable_code, unused_variables)]
         863  +
/* RustType.kt:516 */
  840    864   
#[cfg(test)]
         865  +
/* ProtocolTestGenerator.kt:98 */
  841    866   
mod greeting_with_errors_test {
  842    867   
  843    868   
    /// Parses simple RpcV2 Cbor errors
  844    869   
    /// Test ID: RpcV2CborInvalidGreetingError
  845    870   
    #[::tokio::test]
  846    871   
    #[::tracing_test::traced_test]
  847    872   
    async fn rpc_v2_cbor_invalid_greeting_error_response() {
  848    873   
        let output = crate::error::InvalidGreeting {
  849    874   
            message: ::std::option::Option::Some("Hi".to_owned()),
  850    875   
        };
@@ -909,934 +970,998 @@
  929    954   
        ));
  930    955   
        let body = ::hyper::body::to_bytes(http_response.into_body())
  931    956   
            .await
  932    957   
            .expect("unable to extract body to bytes");
  933    958   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
  934    959   
            &body,
  935    960   
            "v2ZfX3R5cGV4K3NtaXRoeS5wcm90b2NvbHRlc3RzLnJwY3YyQ2JvciNDb21wbGV4RXJyb3L/",
  936    961   
            ::aws_smithy_protocol_test::MediaType::from("application/cbor"),
  937    962   
        ));
  938    963   
    }
         964  +
         965  +
    /* ProtocolTestGenerator.kt:98 */
  939    966   
}
  940    967   
         968  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
  941    969   
static CONTENT_TYPE_RECURSIVESHAPES: std::sync::LazyLock<::mime::Mime> =
  942    970   
    std::sync::LazyLock::new(|| {
  943    971   
        "application/cbor"
  944    972   
            .parse::<::mime::Mime>()
  945    973   
            .expect("BUG: MIME parsing failed, content_type is not valid")
  946    974   
    });
  947    975   
::pin_project_lite::pin_project! {
  948    976   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
  949    977   
    /// [`RecursiveShapesInput`](crate::input::RecursiveShapesInput) using modelled bindings.
  950    978   
    pub struct RecursiveShapesInputFuture {
@@ -982,1010 +1061,1093 @@
 1002   1030   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
 1003   1031   
                    e,
 1004   1032   
                )
 1005   1033   
            },
 1006   1034   
        );
 1007   1035   
        RecursiveShapesInputFuture {
 1008   1036   
            inner: Box::pin(fut),
 1009   1037   
        }
 1010   1038   
    }
 1011   1039   
}
        1040  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
 1012   1041   
impl
 1013   1042   
    ::aws_smithy_http_server::response::IntoResponse<
 1014   1043   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 1015   1044   
    > for crate::output::RecursiveShapesOutput
 1016   1045   
{
 1017   1046   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
 1018   1047   
        match crate::protocol_serde::shape_recursive_shapes::ser_recursive_shapes_http_response(
 1019   1048   
            self,
 1020   1049   
        ) {
 1021   1050   
            Ok(response) => response,
 1022   1051   
            Err(e) => {
 1023   1052   
                ::tracing::error!(error = %e, "failed to serialize response");
 1024   1053   
                ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
 1025   1054   
            }
 1026   1055   
        }
 1027   1056   
    }
 1028   1057   
}
 1029   1058   
        1059  +
/* RustType.kt:516 */
 1030   1060   
#[allow(unreachable_code, unused_variables)]
        1061  +
/* RustType.kt:516 */
 1031   1062   
#[cfg(test)]
        1063  +
/* ProtocolTestGenerator.kt:98 */
 1032   1064   
mod recursive_shapes_test {
 1033   1065   
 1034   1066   
    /// Serializes recursive structures
 1035   1067   
    /// Test ID: RpcV2CborRecursiveShapes
 1036   1068   
    #[::tokio::test]
 1037   1069   
    #[::tracing_test::traced_test]
 1038   1070   
    async fn rpc_v2_cbor_recursive_shapes_request() {
 1039   1071   
        #[allow(unused_mut)]
 1040   1072   
                    let mut http_request = http::Request::builder()
 1041   1073   
                        .uri("/service/RpcV2Protocol/operation/RecursiveShapes")
@@ -1153,1185 +1214,1249 @@
 1173   1205   
            http_response.headers(),
 1174   1206   
            expected_headers,
 1175   1207   
        ));
 1176   1208   
        let body = ::hyper::body::to_bytes(http_response.into_body())
 1177   1209   
            .await
 1178   1210   
            .expect("unable to extract body to bytes");
 1179   1211   
        ::aws_smithy_protocol_test::assert_ok(
 1180   1212   
        ::aws_smithy_protocol_test::validate_body(&body, "v2ZuZXN0ZWS/Y2Zvb2RGb28xZm5lc3RlZL9jYmFyZEJhcjFvcmVjdXJzaXZlTWVtYmVyv2Nmb29kRm9vMmZuZXN0ZWS/Y2JhcmRCYXIy//////8=", ::aws_smithy_protocol_test::MediaType::from("application/cbor"))
 1181   1213   
        );
 1182   1214   
    }
        1215  +
        1216  +
    /* ProtocolTestGenerator.kt:98 */
 1183   1217   
}
 1184   1218   
        1219  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
 1185   1220   
static CONTENT_TYPE_RPCV2CBORSPARSEMAPS: std::sync::LazyLock<::mime::Mime> =
 1186   1221   
    std::sync::LazyLock::new(|| {
 1187   1222   
        "application/cbor"
 1188   1223   
            .parse::<::mime::Mime>()
 1189   1224   
            .expect("BUG: MIME parsing failed, content_type is not valid")
 1190   1225   
    });
 1191   1226   
::pin_project_lite::pin_project! {
 1192   1227   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
 1193   1228   
    /// [`RpcV2CborSparseMapsInput`](crate::input::RpcV2CborSparseMapsInput) using modelled bindings.
 1194   1229   
    pub struct RpcV2CborSparseMapsInputFuture {
@@ -1226,1261 +1321,1361 @@
 1246   1281   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
 1247   1282   
                    e,
 1248   1283   
                )
 1249   1284   
            },
 1250   1285   
        );
 1251   1286   
        RpcV2CborSparseMapsInputFuture {
 1252   1287   
            inner: Box::pin(fut),
 1253   1288   
        }
 1254   1289   
    }
 1255   1290   
}
        1291  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
 1256   1292   
impl
 1257   1293   
    ::aws_smithy_http_server::response::IntoResponse<
 1258   1294   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 1259   1295   
    > for crate::output::RpcV2CborSparseMapsOutput
 1260   1296   
{
 1261   1297   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
 1262   1298   
        match crate::protocol_serde::shape_rpc_v2_cbor_sparse_maps::ser_rpc_v2_cbor_sparse_maps_http_response(self) {
 1263   1299   
                        Ok(response) => response,
 1264   1300   
                        Err(e) => {
 1265   1301   
                            ::tracing::error!(error = %e, "failed to serialize response");
 1266   1302   
                            ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
 1267   1303   
                        }
 1268   1304   
                    }
 1269   1305   
    }
 1270   1306   
}
        1307  +
/* ServerHttpBoundProtocolGenerator.kt:350 */
 1271   1308   
impl
 1272   1309   
    ::aws_smithy_http_server::response::IntoResponse<
 1273   1310   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 1274   1311   
    > for crate::error::RpcV2CborSparseMapsError
 1275   1312   
{
 1276   1313   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
 1277   1314   
        match crate::protocol_serde::shape_rpc_v2_cbor_sparse_maps::ser_rpc_v2_cbor_sparse_maps_http_error(&self) {
 1278   1315   
            Ok(mut response) => {
 1279   1316   
                response.extensions_mut().insert(::aws_smithy_http_server::extension::ModeledErrorExtension::new(self.name()));
 1280   1317   
                response
 1281   1318   
            },
 1282   1319   
            Err(e) => {
 1283   1320   
                ::tracing::error!(error = %e, "failed to serialize response");
 1284   1321   
                ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
 1285   1322   
            }
 1286   1323   
        }
 1287   1324   
    }
 1288   1325   
}
 1289   1326   
        1327  +
/* RustType.kt:516 */
 1290   1328   
#[allow(unreachable_code, unused_variables)]
        1329  +
/* RustType.kt:516 */
 1291   1330   
#[cfg(test)]
        1331  +
/* ProtocolTestGenerator.kt:98 */
 1292   1332   
mod rpc_v2_cbor_sparse_maps_test {
 1293   1333   
 1294   1334   
    /// Serializes sparse maps
 1295   1335   
    /// Test ID: RpcV2CborSparseMaps
 1296   1336   
    #[::tokio::test]
 1297   1337   
    #[::tracing_test::traced_test]
 1298   1338   
    async fn rpc_v2_cbor_sparse_maps_request() {
 1299   1339   
        #[allow(unused_mut)]
 1300   1340   
        let mut http_request = http::Request::builder()
 1301   1341   
            .uri("/service/RpcV2Protocol/operation/RpcV2CborSparseMaps")
@@ -1882,1922 +1943,1986 @@
 1902   1942   
        ));
 1903   1943   
        let body = ::hyper::body::to_bytes(http_response.into_body())
 1904   1944   
            .await
 1905   1945   
            .expect("unable to extract body to bytes");
 1906   1946   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
 1907   1947   
            &body,
 1908   1948   
            "v29zcGFyc2VOdW1iZXJNYXC/YXgA/3BzcGFyc2VCb29sZWFuTWFwv2F49P//",
 1909   1949   
            ::aws_smithy_protocol_test::MediaType::from("application/cbor"),
 1910   1950   
        ));
 1911   1951   
    }
        1952  +
        1953  +
    /* ProtocolTestGenerator.kt:98 */
 1912   1954   
}
 1913   1955   
        1956  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
 1914   1957   
static CONTENT_TYPE_RPCV2CBORDENSEMAPS: std::sync::LazyLock<::mime::Mime> =
 1915   1958   
    std::sync::LazyLock::new(|| {
 1916   1959   
        "application/cbor"
 1917   1960   
            .parse::<::mime::Mime>()
 1918   1961   
            .expect("BUG: MIME parsing failed, content_type is not valid")
 1919   1962   
    });
 1920   1963   
::pin_project_lite::pin_project! {
 1921   1964   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
 1922   1965   
    /// [`RpcV2CborDenseMapsInput`](crate::input::RpcV2CborDenseMapsInput) using modelled bindings.
 1923   1966   
    pub struct RpcV2CborDenseMapsInputFuture {
@@ -1955,1998 +2050,2098 @@
 1975   2018   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
 1976   2019   
                    e,
 1977   2020   
                )
 1978   2021   
            },
 1979   2022   
        );
 1980   2023   
        RpcV2CborDenseMapsInputFuture {
 1981   2024   
            inner: Box::pin(fut),
 1982   2025   
        }
 1983   2026   
    }
 1984   2027   
}
        2028  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
 1985   2029   
impl
 1986   2030   
    ::aws_smithy_http_server::response::IntoResponse<
 1987   2031   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 1988   2032   
    > for crate::output::RpcV2CborDenseMapsOutput
 1989   2033   
{
 1990   2034   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
 1991   2035   
        match crate::protocol_serde::shape_rpc_v2_cbor_dense_maps::ser_rpc_v2_cbor_dense_maps_http_response(self) {
 1992   2036   
                        Ok(response) => response,
 1993   2037   
                        Err(e) => {
 1994   2038   
                            ::tracing::error!(error = %e, "failed to serialize response");
 1995   2039   
                            ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
 1996   2040   
                        }
 1997   2041   
                    }
 1998   2042   
    }
 1999   2043   
}
        2044  +
/* ServerHttpBoundProtocolGenerator.kt:350 */
 2000   2045   
impl
 2001   2046   
    ::aws_smithy_http_server::response::IntoResponse<
 2002   2047   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 2003   2048   
    > for crate::error::RpcV2CborDenseMapsError
 2004   2049   
{
 2005   2050   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
 2006   2051   
        match crate::protocol_serde::shape_rpc_v2_cbor_dense_maps::ser_rpc_v2_cbor_dense_maps_http_error(&self) {
 2007   2052   
            Ok(mut response) => {
 2008   2053   
                response.extensions_mut().insert(::aws_smithy_http_server::extension::ModeledErrorExtension::new(self.name()));
 2009   2054   
                response
 2010   2055   
            },
 2011   2056   
            Err(e) => {
 2012   2057   
                ::tracing::error!(error = %e, "failed to serialize response");
 2013   2058   
                ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
 2014   2059   
            }
 2015   2060   
        }
 2016   2061   
    }
 2017   2062   
}
 2018   2063   
        2064  +
/* RustType.kt:516 */
 2019   2065   
#[allow(unreachable_code, unused_variables)]
        2066  +
/* RustType.kt:516 */
 2020   2067   
#[cfg(test)]
        2068  +
/* ProtocolTestGenerator.kt:98 */
 2021   2069   
mod rpc_v2_cbor_dense_maps_test {
 2022   2070   
 2023   2071   
    /// Serializes maps
 2024   2072   
    /// Test ID: RpcV2CborMaps
 2025   2073   
    #[::tokio::test]
 2026   2074   
    #[::tracing_test::traced_test]
 2027   2075   
    async fn rpc_v2_cbor_maps_request() {
 2028   2076   
        #[allow(unused_mut)]
 2029   2077   
        let mut http_request = http::Request::builder()
 2030   2078   
            .uri("/service/RpcV2Protocol/operation/RpcV2CborDenseMaps")
@@ -2349,2397 +2410,2461 @@
 2369   2417   
        ));
 2370   2418   
        let body = ::hyper::body::to_bytes(http_response.into_body())
 2371   2419   
            .await
 2372   2420   
            .expect("unable to extract body to bytes");
 2373   2421   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
 2374   2422   
            &body,
 2375   2423   
            "oWtkZW5zZVNldE1hcKJheIBheYJhYWFi",
 2376   2424   
            ::aws_smithy_protocol_test::MediaType::from("application/cbor"),
 2377   2425   
        ));
 2378   2426   
    }
        2427  +
        2428  +
    /* ProtocolTestGenerator.kt:98 */
 2379   2429   
}
 2380   2430   
        2431  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
 2381   2432   
static CONTENT_TYPE_RPCV2CBORLISTS: std::sync::LazyLock<::mime::Mime> =
 2382   2433   
    std::sync::LazyLock::new(|| {
 2383   2434   
        "application/cbor"
 2384   2435   
            .parse::<::mime::Mime>()
 2385   2436   
            .expect("BUG: MIME parsing failed, content_type is not valid")
 2386   2437   
    });
 2387   2438   
::pin_project_lite::pin_project! {
 2388   2439   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
 2389   2440   
    /// [`RpcV2CborListsInput`](crate::input::RpcV2CborListsInput) using modelled bindings.
 2390   2441   
    pub struct RpcV2CborListsInputFuture {
@@ -2424,2475 +2525,2581 @@
 2444   2495   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
 2445   2496   
                    e,
 2446   2497   
                )
 2447   2498   
            },
 2448   2499   
        );
 2449   2500   
        RpcV2CborListsInputFuture {
 2450   2501   
            inner: Box::pin(fut),
 2451   2502   
        }
 2452   2503   
    }
 2453   2504   
}
        2505  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
 2454   2506   
impl
 2455   2507   
    ::aws_smithy_http_server::response::IntoResponse<
 2456   2508   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 2457   2509   
    > for crate::output::RpcV2CborListsOutput
 2458   2510   
{
 2459   2511   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
 2460   2512   
        match crate::protocol_serde::shape_rpc_v2_cbor_lists::ser_rpc_v2_cbor_lists_http_response(
 2461   2513   
            self,
 2462   2514   
        ) {
 2463   2515   
            Ok(response) => response,
 2464   2516   
            Err(e) => {
 2465   2517   
                ::tracing::error!(error = %e, "failed to serialize response");
 2466   2518   
                ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
 2467   2519   
            }
 2468   2520   
        }
 2469   2521   
    }
 2470   2522   
}
        2523  +
/* ServerHttpBoundProtocolGenerator.kt:350 */
 2471   2524   
impl
 2472   2525   
    ::aws_smithy_http_server::response::IntoResponse<
 2473   2526   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 2474   2527   
    > for crate::error::RpcV2CborListsError
 2475   2528   
{
 2476   2529   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
 2477   2530   
        match crate::protocol_serde::shape_rpc_v2_cbor_lists::ser_rpc_v2_cbor_lists_http_error(
 2478   2531   
            &self,
 2479   2532   
        ) {
 2480   2533   
            Ok(mut response) => {
 2481   2534   
                response.extensions_mut().insert(
 2482   2535   
                    ::aws_smithy_http_server::extension::ModeledErrorExtension::new(self.name()),
 2483   2536   
                );
 2484   2537   
                response
 2485   2538   
            }
 2486   2539   
            Err(e) => {
 2487   2540   
                ::tracing::error!(error = %e, "failed to serialize response");
 2488   2541   
                ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
 2489   2542   
            }
 2490   2543   
        }
 2491   2544   
    }
 2492   2545   
}
 2493   2546   
        2547  +
/* RustType.kt:516 */
 2494   2548   
#[allow(unreachable_code, unused_variables)]
        2549  +
/* RustType.kt:516 */
 2495   2550   
#[cfg(test)]
        2551  +
/* ProtocolTestGenerator.kt:98 */
 2496   2552   
mod rpc_v2_cbor_lists_test {
 2497   2553   
 2498   2554   
    /// Serializes RpcV2 Cbor lists
 2499   2555   
    /// Test ID: RpcV2CborLists
 2500   2556   
    #[::tokio::test]
 2501   2557   
    #[::tracing_test::traced_test]
 2502   2558   
    async fn rpc_v2_cbor_lists_request() {
 2503   2559   
        #[allow(unused_mut)]
 2504   2560   
                    let mut http_request = http::Request::builder()
 2505   2561   
                        .uri("/service/RpcV2Protocol/operation/RpcV2CborLists")
@@ -2961,3017 +3022,3081 @@
 2981   3037   
        ));
 2982   3038   
        let body = ::hyper::body::to_bytes(http_response.into_body())
 2983   3039   
            .await
 2984   3040   
            .expect("unable to extract body to bytes");
 2985   3041   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
 2986   3042   
            &body,
 2987   3043   
            "v2pzdHJpbmdMaXN0n///",
 2988   3044   
            ::aws_smithy_protocol_test::MediaType::from("application/cbor"),
 2989   3045   
        ));
 2990   3046   
    }
        3047  +
        3048  +
    /* ProtocolTestGenerator.kt:98 */
 2991   3049   
}
 2992   3050   
        3051  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
 2993   3052   
static CONTENT_TYPE_SIMPLESCALARPROPERTIES: std::sync::LazyLock<::mime::Mime> =
 2994   3053   
    std::sync::LazyLock::new(|| {
 2995   3054   
        "application/cbor"
 2996   3055   
            .parse::<::mime::Mime>()
 2997   3056   
            .expect("BUG: MIME parsing failed, content_type is not valid")
 2998   3057   
    });
 2999   3058   
::pin_project_lite::pin_project! {
 3000   3059   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
 3001   3060   
    /// [`SimpleScalarPropertiesInput`](crate::input::SimpleScalarPropertiesInput) using modelled bindings.
 3002   3061   
    pub struct SimpleScalarPropertiesInputFuture {
@@ -3034,3093 +3111,3174 @@
 3054   3113   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
 3055   3114   
                    e,
 3056   3115   
                )
 3057   3116   
            },
 3058   3117   
        );
 3059   3118   
        SimpleScalarPropertiesInputFuture {
 3060   3119   
            inner: Box::pin(fut),
 3061   3120   
        }
 3062   3121   
    }
 3063   3122   
}
        3123  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
 3064   3124   
impl
 3065   3125   
    ::aws_smithy_http_server::response::IntoResponse<
 3066   3126   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 3067   3127   
    > for crate::output::SimpleScalarPropertiesOutput
 3068   3128   
{
 3069   3129   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
 3070   3130   
        match crate::protocol_serde::shape_simple_scalar_properties::ser_simple_scalar_properties_http_response(self) {
 3071   3131   
                        Ok(response) => response,
 3072   3132   
                        Err(e) => {
 3073   3133   
                            ::tracing::error!(error = %e, "failed to serialize response");
 3074   3134   
                            ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
 3075   3135   
                        }
 3076   3136   
                    }
 3077   3137   
    }
 3078   3138   
}
 3079   3139   
        3140  +
/* RustType.kt:516 */
 3080   3141   
#[allow(unreachable_code, unused_variables)]
        3142  +
/* RustType.kt:516 */
 3081   3143   
#[cfg(test)]
        3144  +
/* ProtocolTestGenerator.kt:98 */
 3082   3145   
mod simple_scalar_properties_test {
 3083   3146   
 3084   3147   
    /// Serializes simple scalar properties
 3085   3148   
    /// Test ID: RpcV2CborSimpleScalarProperties
 3086   3149   
    #[::tokio::test]
 3087   3150   
    #[::tracing_test::traced_test]
 3088   3151   
    async fn rpc_v2_cbor_simple_scalar_properties_request() {
 3089   3152   
        #[allow(unused_mut)]
 3090   3153   
                    let mut http_request = http::Request::builder()
 3091   3154   
                        .uri("/service/RpcV2Protocol/operation/SimpleScalarProperties")
@@ -4657,4720 +4718,4784 @@
 4677   4740   
        ));
 4678   4741   
        let body = ::hyper::body::to_bytes(http_response.into_body())
 4679   4742   
            .await
 4680   4743   
            .expect("unable to extract body to bytes");
 4681   4744   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
 4682   4745   
            &body,
 4683   4746   
            "v2tkb3VibGVWYWx1Zfv/8AAAAAAAAGpmbG9hdFZhbHVl+v+AAAD/",
 4684   4747   
            ::aws_smithy_protocol_test::MediaType::from("application/cbor"),
 4685   4748   
        ));
 4686   4749   
    }
        4750  +
        4751  +
    /* ProtocolTestGenerator.kt:98 */
 4687   4752   
}
 4688   4753   
        4754  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
 4689   4755   
static CONTENT_TYPE_OPTIONALINPUTOUTPUT: std::sync::LazyLock<::mime::Mime> =
 4690   4756   
    std::sync::LazyLock::new(|| {
 4691   4757   
        "application/cbor"
 4692   4758   
            .parse::<::mime::Mime>()
 4693   4759   
            .expect("BUG: MIME parsing failed, content_type is not valid")
 4694   4760   
    });
 4695   4761   
::pin_project_lite::pin_project! {
 4696   4762   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
 4697   4763   
    /// [`OptionalInputOutputInput`](crate::input::OptionalInputOutputInput) using modelled bindings.
 4698   4764   
    pub struct OptionalInputOutputInputFuture {
@@ -4730,4796 +4807,4877 @@
 4750   4816   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
 4751   4817   
                    e,
 4752   4818   
                )
 4753   4819   
            },
 4754   4820   
        );
 4755   4821   
        OptionalInputOutputInputFuture {
 4756   4822   
            inner: Box::pin(fut),
 4757   4823   
        }
 4758   4824   
    }
 4759   4825   
}
        4826  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
 4760   4827   
impl
 4761   4828   
    ::aws_smithy_http_server::response::IntoResponse<
 4762   4829   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 4763   4830   
    > for crate::output::OptionalInputOutputOutput
 4764   4831   
{
 4765   4832   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
 4766   4833   
        match crate::protocol_serde::shape_optional_input_output::ser_optional_input_output_http_response(self) {
 4767   4834   
                        Ok(response) => response,
 4768   4835   
                        Err(e) => {
 4769   4836   
                            ::tracing::error!(error = %e, "failed to serialize response");
 4770   4837   
                            ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
 4771   4838   
                        }
 4772   4839   
                    }
 4773   4840   
    }
 4774   4841   
}
 4775   4842   
        4843  +
/* RustType.kt:516 */
 4776   4844   
#[allow(unreachable_code, unused_variables)]
        4845  +
/* RustType.kt:516 */
 4777   4846   
#[cfg(test)]
        4847  +
/* ProtocolTestGenerator.kt:98 */
 4778   4848   
mod optional_input_output_test {
 4779   4849   
 4780   4850   
    /// When input is empty we write CBOR equivalent of {}
 4781   4851   
    /// Test ID: optional_input
 4782   4852   
    #[::tokio::test]
 4783   4853   
    #[::tracing_test::traced_test]
 4784   4854   
    async fn optional_input_request() {
 4785   4855   
        #[allow(unused_mut)]
 4786   4856   
        let mut http_request = http::Request::builder()
 4787   4857   
            .uri("/service/RpcV2Protocol/operation/OptionalInputOutput")
@@ -4832,4902 +4893,4966 @@
 4852   4922   
        ));
 4853   4923   
        let body = ::hyper::body::to_bytes(http_response.into_body())
 4854   4924   
            .await
 4855   4925   
            .expect("unable to extract body to bytes");
 4856   4926   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
 4857   4927   
            &body,
 4858   4928   
            "v/8=",
 4859   4929   
            ::aws_smithy_protocol_test::MediaType::from("application/cbor"),
 4860   4930   
        ));
 4861   4931   
    }
        4932  +
        4933  +
    /* ProtocolTestGenerator.kt:98 */
 4862   4934   
}
 4863   4935   
        4936  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
 4864   4937   
static CONTENT_TYPE_EMPTYINPUTOUTPUT: std::sync::LazyLock<::mime::Mime> =
 4865   4938   
    std::sync::LazyLock::new(|| {
 4866   4939   
        "application/cbor"
 4867   4940   
            .parse::<::mime::Mime>()
 4868   4941   
            .expect("BUG: MIME parsing failed, content_type is not valid")
 4869   4942   
    });
 4870   4943   
::pin_project_lite::pin_project! {
 4871   4944   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
 4872   4945   
    /// [`EmptyInputOutputInput`](crate::input::EmptyInputOutputInput) using modelled bindings.
 4873   4946   
    pub struct EmptyInputOutputInputFuture {
@@ -4907,4980 +4986,5063 @@
 4927   5000   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
 4928   5001   
                    e,
 4929   5002   
                )
 4930   5003   
            },
 4931   5004   
        );
 4932   5005   
        EmptyInputOutputInputFuture {
 4933   5006   
            inner: Box::pin(fut),
 4934   5007   
        }
 4935   5008   
    }
 4936   5009   
}
        5010  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
 4937   5011   
impl
 4938   5012   
    ::aws_smithy_http_server::response::IntoResponse<
 4939   5013   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 4940   5014   
    > for crate::output::EmptyInputOutputOutput
 4941   5015   
{
 4942   5016   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
 4943   5017   
        match crate::protocol_serde::shape_empty_input_output::ser_empty_input_output_http_response(
 4944   5018   
            self,
 4945   5019   
        ) {
 4946   5020   
            Ok(response) => response,
 4947   5021   
            Err(e) => {
 4948   5022   
                ::tracing::error!(error = %e, "failed to serialize response");
 4949   5023   
                ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
 4950   5024   
            }
 4951   5025   
        }
 4952   5026   
    }
 4953   5027   
}
 4954   5028   
        5029  +
/* RustType.kt:516 */
 4955   5030   
#[allow(unreachable_code, unused_variables)]
        5031  +
/* RustType.kt:516 */
 4956   5032   
#[cfg(test)]
        5033  +
/* ProtocolTestGenerator.kt:98 */
 4957   5034   
mod empty_input_output_test {
 4958   5035   
 4959   5036   
    /// When Input structure is empty we write CBOR equivalent of {}
 4960   5037   
    /// Test ID: empty_input
 4961   5038   
    #[::tokio::test]
 4962   5039   
    #[::tracing_test::traced_test]
 4963   5040   
    async fn empty_input_request() {
 4964   5041   
        #[allow(unused_mut)]
 4965   5042   
        let mut http_request = http::Request::builder()
 4966   5043   
            .uri("/service/RpcV2Protocol/operation/EmptyInputOutput")
@@ -5100,5177 +5239,5323 @@
 5120   5197   
        ));
 5121   5198   
        let body = ::hyper::body::to_bytes(http_response.into_body())
 5122   5199   
            .await
 5123   5200   
            .expect("unable to extract body to bytes");
 5124   5201   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::validate_body(
 5125   5202   
            &body,
 5126   5203   
            "v/8=",
 5127   5204   
            ::aws_smithy_protocol_test::MediaType::from("application/cbor"),
 5128   5205   
        ));
 5129   5206   
    }
        5207  +
        5208  +
    /* ProtocolTestGenerator.kt:98 */
 5130   5209   
}
 5131   5210   
        5211  +
/* ServerHttpBoundProtocolGenerator.kt:266 */
 5132   5212   
::pin_project_lite::pin_project! {
 5133   5213   
    /// A [`Future`](std::future::Future) aggregating the body bytes of a [`Request`] and constructing the
 5134   5214   
    /// [`NoInputOutputInput`](crate::input::NoInputOutputInput) using modelled bindings.
 5135   5215   
    pub struct NoInputOutputInputFuture {
 5136   5216   
        inner: std::pin::Pin<Box<dyn std::future::Future<Output = Result<crate::input::NoInputOutputInput, ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError>> + Send>>
 5137   5217   
    }
 5138   5218   
}
 5139   5219   
 5140   5220   
impl std::future::Future for NoInputOutputInputFuture {
 5141   5221   
    type Output = Result<
 5142   5222   
        crate::input::NoInputOutputInput,
 5143   5223   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError,
 5144   5224   
    >;
 5145   5225   
 5146   5226   
    fn poll(
 5147   5227   
        self: std::pin::Pin<&mut Self>,
 5148   5228   
        cx: &mut std::task::Context<'_>,
 5149   5229   
    ) -> std::task::Poll<Self::Output> {
 5150   5230   
        let this = self.project();
 5151   5231   
        this.inner.as_mut().poll(cx)
 5152   5232   
    }
 5153   5233   
}
 5154   5234   
 5155   5235   
impl<B>
 5156   5236   
    ::aws_smithy_http_server::request::FromRequest<
 5157   5237   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 5158   5238   
        B,
 5159   5239   
    > for crate::input::NoInputOutputInput
 5160   5240   
where
 5161   5241   
    B: ::aws_smithy_http_server::body::HttpBody + Send,
 5162   5242   
    B: 'static,
 5163   5243   
 5164   5244   
    B::Data: Send,
 5165   5245   
    ::aws_smithy_http_server::protocol::rpc_v2_cbor::rejection::RequestRejection:
 5166   5246   
        From<<B as ::aws_smithy_http_server::body::HttpBody>::Error>,
 5167   5247   
{
 5168   5248   
    type Rejection = ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError;
 5169   5249   
    type Future = NoInputOutputInputFuture;
 5170   5250   
 5171   5251   
    fn from_request(request: ::http::Request<B>) -> Self::Future {
 5172   5252   
        let fut = async move {
 5173   5253   
            crate::protocol_serde::shape_no_input_output::de_no_input_output_http_request(request)
 5174   5254   
                .await
 5175   5255   
                .map_err(Into::into)
 5176   5256   
        };
 5177   5257   
        use ::futures_util::future::TryFutureExt;
 5178   5258   
        let fut = fut.map_err(
 5179   5259   
            |e: ::aws_smithy_http_server::protocol::rpc_v2_cbor::rejection::RequestRejection| {
 5180   5260   
                ::tracing::debug!(error = %e, "failed to deserialize request");
 5181   5261   
                ::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(
 5182   5262   
                    e,
 5183   5263   
                )
 5184   5264   
            },
 5185   5265   
        );
 5186   5266   
        NoInputOutputInputFuture {
 5187   5267   
            inner: Box::pin(fut),
 5188   5268   
        }
 5189   5269   
    }
 5190   5270   
}
        5271  +
/* ServerHttpBoundProtocolGenerator.kt:329 */
 5191   5272   
impl
 5192   5273   
    ::aws_smithy_http_server::response::IntoResponse<
 5193   5274   
        ::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor,
 5194   5275   
    > for crate::output::NoInputOutputOutput
 5195   5276   
{
 5196   5277   
    fn into_response(self) -> ::aws_smithy_http_server::response::Response {
 5197   5278   
        match crate::protocol_serde::shape_no_input_output::ser_no_input_output_http_response(self)
 5198   5279   
        {
 5199   5280   
            Ok(response) => response,
 5200   5281   
            Err(e) => {
 5201   5282   
                ::tracing::error!(error = %e, "failed to serialize response");
 5202   5283   
                ::aws_smithy_http_server::response::IntoResponse::<::aws_smithy_http_server::protocol::rpc_v2_cbor::RpcV2Cbor>::into_response(::aws_smithy_http_server::protocol::rpc_v2_cbor::runtime_error::RuntimeError::from(e))
 5203   5284   
            }
 5204   5285   
        }
 5205   5286   
    }
 5206   5287   
}
 5207   5288   
        5289  +
/* RustType.kt:516 */
 5208   5290   
#[allow(unreachable_code, unused_variables)]
        5291  +
/* RustType.kt:516 */
 5209   5292   
#[cfg(test)]
        5293  +
/* ProtocolTestGenerator.kt:98 */
 5210   5294   
mod no_input_output_test {
 5211   5295   
 5212   5296   
    /// Body is empty and no Content-Type header if no input
 5213   5297   
    /// Test ID: no_input
 5214   5298   
    #[::tokio::test]
 5215   5299   
    #[::tracing_test::traced_test]
 5216   5300   
    async fn no_input_request() {
 5217   5301   
        #[allow(unused_mut)]
 5218   5302   
        let mut http_request = http::Request::builder()
 5219   5303   
            .uri("/service/RpcV2Protocol/operation/NoInputOutput")
@@ -5351,5435 +5381,5467 @@
 5371   5455   
        ::aws_smithy_protocol_test::assert_ok(::aws_smithy_protocol_test::forbid_headers(
 5372   5456   
            http_response.headers(),
 5373   5457   
            forbidden_headers,
 5374   5458   
        ));
 5375   5459   
        let body = ::hyper::body::to_bytes(http_response.into_body())
 5376   5460   
            .await
 5377   5461   
            .expect("unable to extract body to bytes");
 5378   5462   
        // No body.
 5379   5463   
        ::pretty_assertions::assert_eq!(&body, &bytes::Bytes::new());
 5380   5464   
    }
        5465  +
        5466  +
    /* ProtocolTestGenerator.kt:98 */
 5381   5467   
}

tmp-codegen-diff/codegen-server-test/rpcv2Cbor/rust-server-codegen/src/operation_shape.rs

@@ -1,1 +0,415 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* ServerOperationGenerator.kt:48 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
                       /* ServerOperationGenerator.kt:55 */
    3      5   
pub struct Float16;
    4      6   
    5      7   
impl ::aws_smithy_http_server::operation::OperationShape for Float16 {
    6      8   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
    7      9   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
    8     10   
            "smithy.protocoltests.rpcv2Cbor#Float16",
    9     11   
            "smithy.protocoltests.rpcv2Cbor",
   10     12   
            "Float16",
   11     13   
        );
   12     14   
   13     15   
    type Input = crate::input::Float16Input;
   14     16   
    type Output = crate::output::Float16Output;
   15     17   
    type Error = std::convert::Infallible;
   16     18   
}
   17     19   
   18     20   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for Float16 {
   19     21   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
   20     22   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
   21     23   
   22     24   
    fn request_fmt() -> Self::RequestFmt {
   23     25   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
   24     26   
    }
   25     27   
   26     28   
    fn response_fmt() -> Self::ResponseFmt {
   27     29   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
   28     30   
    }
   29     31   
}
          32  +
/* ServerOperationGenerator.kt:88 */
   30     33   
          34  +
/* ServerOperationGenerator.kt:48 */
   31     35   
#[allow(missing_docs)] // documentation missing in model
          36  +
                       /* ServerOperationGenerator.kt:55 */
   32     37   
pub struct SparseNullsOperation;
   33     38   
   34     39   
impl ::aws_smithy_http_server::operation::OperationShape for SparseNullsOperation {
   35     40   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
   36     41   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
   37     42   
            "smithy.protocoltests.rpcv2Cbor#SparseNullsOperation",
   38     43   
            "smithy.protocoltests.rpcv2Cbor",
   39     44   
            "SparseNullsOperation",
   40     45   
        );
   41     46   
   42     47   
    type Input = crate::input::SparseNullsOperationInput;
   43     48   
    type Output = crate::output::SparseNullsOperationOutput;
   44     49   
    type Error = std::convert::Infallible;
   45     50   
}
   46     51   
   47     52   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for SparseNullsOperation {
   48     53   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
   49     54   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
   50     55   
   51     56   
    fn request_fmt() -> Self::RequestFmt {
   52     57   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
   53     58   
    }
   54     59   
   55     60   
    fn response_fmt() -> Self::ResponseFmt {
   56     61   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
   57     62   
    }
   58     63   
}
          64  +
/* ServerOperationGenerator.kt:88 */
   59     65   
          66  +
/* ServerOperationGenerator.kt:48 */
   60     67   
#[allow(missing_docs)] // documentation missing in model
          68  +
                       /* ServerOperationGenerator.kt:55 */
   61     69   
pub struct OperationWithDefaults;
   62     70   
   63     71   
impl ::aws_smithy_http_server::operation::OperationShape for OperationWithDefaults {
   64     72   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
   65     73   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
   66     74   
            "smithy.protocoltests.rpcv2Cbor#OperationWithDefaults",
   67     75   
            "smithy.protocoltests.rpcv2Cbor",
   68     76   
            "OperationWithDefaults",
   69     77   
        );
   70     78   
   71     79   
    type Input = crate::input::OperationWithDefaultsInput;
   72     80   
    type Output = crate::output::OperationWithDefaultsOutput;
   73     81   
    type Error = crate::error::OperationWithDefaultsError;
   74     82   
}
   75     83   
   76     84   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for OperationWithDefaults {
   77     85   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
   78     86   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
   79     87   
   80     88   
    fn request_fmt() -> Self::RequestFmt {
   81     89   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
   82     90   
    }
   83     91   
   84     92   
    fn response_fmt() -> Self::ResponseFmt {
   85     93   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
   86     94   
    }
   87     95   
}
          96  +
/* ServerOperationGenerator.kt:88 */
   88     97   
          98  +
/* ServerOperationGenerator.kt:48 */
   89     99   
#[allow(missing_docs)] // documentation missing in model
         100  +
                       /* ServerOperationGenerator.kt:55 */
   90    101   
pub struct FractionalSeconds;
   91    102   
   92    103   
impl ::aws_smithy_http_server::operation::OperationShape for FractionalSeconds {
   93    104   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
   94    105   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
   95    106   
            "smithy.protocoltests.rpcv2Cbor#FractionalSeconds",
   96    107   
            "smithy.protocoltests.rpcv2Cbor",
   97    108   
            "FractionalSeconds",
   98    109   
        );
   99    110   
  100    111   
    type Input = crate::input::FractionalSecondsInput;
  101    112   
    type Output = crate::output::FractionalSecondsOutput;
  102    113   
    type Error = std::convert::Infallible;
  103    114   
}
  104    115   
  105    116   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for FractionalSeconds {
  106    117   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  107    118   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  108    119   
  109    120   
    fn request_fmt() -> Self::RequestFmt {
  110    121   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
  111    122   
    }
  112    123   
  113    124   
    fn response_fmt() -> Self::ResponseFmt {
  114    125   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  115    126   
    }
  116    127   
}
         128  +
/* ServerOperationGenerator.kt:88 */
  117    129   
  118         -
/// This operation has three possible return values: 1. A successful response in the form of GreetingWithErrorsOutput 2. An InvalidGreeting error. 3. A ComplexError error. Implementations must be able to successfully take a response and properly deserialize successful and error responses.
         130  +
/// /* ServerOperationGenerator.kt:48 */This operation has three possible return values: 1. A successful response in the form of GreetingWithErrorsOutput 2. An InvalidGreeting error. 3. A ComplexError error. Implementations must be able to successfully take a response and properly deserialize successful and error responses.
         131  +
/* ServerOperationGenerator.kt:55 */
  119    132   
pub struct GreetingWithErrors;
  120    133   
  121    134   
impl ::aws_smithy_http_server::operation::OperationShape for GreetingWithErrors {
  122    135   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
  123    136   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
  124    137   
            "smithy.protocoltests.rpcv2Cbor#GreetingWithErrors",
  125    138   
            "smithy.protocoltests.rpcv2Cbor",
  126    139   
            "GreetingWithErrors",
  127    140   
        );
  128    141   
  129    142   
    type Input = crate::input::GreetingWithErrorsInput;
  130    143   
    type Output = crate::output::GreetingWithErrorsOutput;
  131    144   
    type Error = crate::error::GreetingWithErrorsError;
  132    145   
}
  133    146   
  134    147   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for GreetingWithErrors {
  135    148   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  136    149   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  137    150   
  138    151   
    fn request_fmt() -> Self::RequestFmt {
  139    152   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
  140    153   
    }
  141    154   
  142    155   
    fn response_fmt() -> Self::ResponseFmt {
  143    156   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  144    157   
    }
  145    158   
}
         159  +
/* ServerOperationGenerator.kt:88 */
  146    160   
         161  +
/* ServerOperationGenerator.kt:48 */
  147    162   
#[allow(missing_docs)] // documentation missing in model
         163  +
                       /* ServerOperationGenerator.kt:55 */
  148    164   
pub struct RecursiveShapes;
  149    165   
  150    166   
impl ::aws_smithy_http_server::operation::OperationShape for RecursiveShapes {
  151    167   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
  152    168   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
  153    169   
            "smithy.protocoltests.rpcv2Cbor#RecursiveShapes",
  154    170   
            "smithy.protocoltests.rpcv2Cbor",
  155    171   
            "RecursiveShapes",
  156    172   
        );
  157    173   
  158    174   
    type Input = crate::input::RecursiveShapesInput;
  159    175   
    type Output = crate::output::RecursiveShapesOutput;
  160    176   
    type Error = std::convert::Infallible;
  161    177   
}
  162    178   
  163    179   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for RecursiveShapes {
  164    180   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  165    181   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  166    182   
  167    183   
    fn request_fmt() -> Self::RequestFmt {
  168    184   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
  169    185   
    }
  170    186   
  171    187   
    fn response_fmt() -> Self::ResponseFmt {
  172    188   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  173    189   
    }
  174    190   
}
         191  +
/* ServerOperationGenerator.kt:88 */
  175    192   
         193  +
/* ServerOperationGenerator.kt:48 */
  176    194   
#[allow(missing_docs)] // documentation missing in model
         195  +
                       /* ServerOperationGenerator.kt:55 */
  177    196   
pub struct RpcV2CborSparseMaps;
  178    197   
  179    198   
impl ::aws_smithy_http_server::operation::OperationShape for RpcV2CborSparseMaps {
  180    199   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
  181    200   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
  182    201   
            "smithy.protocoltests.rpcv2Cbor#RpcV2CborSparseMaps",
  183    202   
            "smithy.protocoltests.rpcv2Cbor",
  184    203   
            "RpcV2CborSparseMaps",
  185    204   
        );
  186    205   
  187    206   
    type Input = crate::input::RpcV2CborSparseMapsInput;
  188    207   
    type Output = crate::output::RpcV2CborSparseMapsOutput;
  189    208   
    type Error = crate::error::RpcV2CborSparseMapsError;
  190    209   
}
  191    210   
  192    211   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for RpcV2CborSparseMaps {
  193    212   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  194    213   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  195    214   
  196    215   
    fn request_fmt() -> Self::RequestFmt {
  197    216   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
  198    217   
    }
  199    218   
  200    219   
    fn response_fmt() -> Self::ResponseFmt {
  201    220   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  202    221   
    }
  203    222   
}
         223  +
/* ServerOperationGenerator.kt:88 */
  204    224   
  205         -
/// The example tests basic map serialization.
         225  +
/// /* ServerOperationGenerator.kt:48 */The example tests basic map serialization.
         226  +
/* ServerOperationGenerator.kt:55 */
  206    227   
pub struct RpcV2CborDenseMaps;
  207    228   
  208    229   
impl ::aws_smithy_http_server::operation::OperationShape for RpcV2CborDenseMaps {
  209    230   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
  210    231   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
  211    232   
            "smithy.protocoltests.rpcv2Cbor#RpcV2CborDenseMaps",
  212    233   
            "smithy.protocoltests.rpcv2Cbor",
  213    234   
            "RpcV2CborDenseMaps",
  214    235   
        );
  215    236   
  216    237   
    type Input = crate::input::RpcV2CborDenseMapsInput;
  217    238   
    type Output = crate::output::RpcV2CborDenseMapsOutput;
  218    239   
    type Error = crate::error::RpcV2CborDenseMapsError;
  219    240   
}
  220    241   
  221    242   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for RpcV2CborDenseMaps {
  222    243   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  223    244   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  224    245   
  225    246   
    fn request_fmt() -> Self::RequestFmt {
  226    247   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
  227    248   
    }
  228    249   
  229    250   
    fn response_fmt() -> Self::ResponseFmt {
  230    251   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  231    252   
    }
  232    253   
}
         254  +
/* ServerOperationGenerator.kt:88 */
  233    255   
  234         -
/// This test case serializes JSON lists for the following cases for both input and output: 1. Normal lists. 2. Normal sets. 3. Lists of lists. 4. Lists of structures.
         256  +
/// /* ServerOperationGenerator.kt:48 */This test case serializes JSON lists for the following cases for both input and output: 1. Normal lists. 2. Normal sets. 3. Lists of lists. 4. Lists of structures.
         257  +
/* ServerOperationGenerator.kt:55 */
  235    258   
pub struct RpcV2CborLists;
  236    259   
  237    260   
impl ::aws_smithy_http_server::operation::OperationShape for RpcV2CborLists {
  238    261   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
  239    262   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
  240    263   
            "smithy.protocoltests.rpcv2Cbor#RpcV2CborLists",
  241    264   
            "smithy.protocoltests.rpcv2Cbor",
  242    265   
            "RpcV2CborLists",
  243    266   
        );
  244    267   
  245    268   
    type Input = crate::input::RpcV2CborListsInput;
  246    269   
    type Output = crate::output::RpcV2CborListsOutput;
  247    270   
    type Error = crate::error::RpcV2CborListsError;
  248    271   
}
  249    272   
  250    273   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for RpcV2CborLists {
  251    274   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  252    275   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  253    276   
  254    277   
    fn request_fmt() -> Self::RequestFmt {
  255    278   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
  256    279   
    }
  257    280   
  258    281   
    fn response_fmt() -> Self::ResponseFmt {
  259    282   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  260    283   
    }
  261    284   
}
         285  +
/* ServerOperationGenerator.kt:88 */
  262    286   
         287  +
/* ServerOperationGenerator.kt:48 */
  263    288   
#[allow(missing_docs)] // documentation missing in model
         289  +
                       /* ServerOperationGenerator.kt:55 */
  264    290   
pub struct SimpleScalarProperties;
  265    291   
  266    292   
impl ::aws_smithy_http_server::operation::OperationShape for SimpleScalarProperties {
  267    293   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
  268    294   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
  269    295   
            "smithy.protocoltests.rpcv2Cbor#SimpleScalarProperties",
  270    296   
            "smithy.protocoltests.rpcv2Cbor",
  271    297   
            "SimpleScalarProperties",
  272    298   
        );
  273    299   
  274    300   
    type Input = crate::input::SimpleScalarPropertiesInput;
  275    301   
    type Output = crate::output::SimpleScalarPropertiesOutput;
  276    302   
    type Error = std::convert::Infallible;
  277    303   
}
  278    304   
  279    305   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity
  280    306   
    for SimpleScalarProperties
  281    307   
{
  282    308   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  283    309   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  284    310   
  285    311   
    fn request_fmt() -> Self::RequestFmt {
  286    312   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
  287    313   
    }
  288    314   
  289    315   
    fn response_fmt() -> Self::ResponseFmt {
  290    316   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  291    317   
    }
  292    318   
}
         319  +
/* ServerOperationGenerator.kt:88 */
  293    320   
         321  +
/* ServerOperationGenerator.kt:48 */
  294    322   
#[allow(missing_docs)] // documentation missing in model
         323  +
                       /* ServerOperationGenerator.kt:55 */
  295    324   
pub struct OptionalInputOutput;
  296    325   
  297    326   
impl ::aws_smithy_http_server::operation::OperationShape for OptionalInputOutput {
  298    327   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
  299    328   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
  300    329   
            "smithy.protocoltests.rpcv2Cbor#OptionalInputOutput",
  301    330   
            "smithy.protocoltests.rpcv2Cbor",
  302    331   
            "OptionalInputOutput",
  303    332   
        );
  304    333   
  305    334   
    type Input = crate::input::OptionalInputOutputInput;
  306    335   
    type Output = crate::output::OptionalInputOutputOutput;
  307    336   
    type Error = std::convert::Infallible;
  308    337   
}
  309    338   
  310    339   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for OptionalInputOutput {
  311    340   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  312    341   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  313    342   
  314    343   
    fn request_fmt() -> Self::RequestFmt {
  315    344   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
  316    345   
    }
  317    346   
  318    347   
    fn response_fmt() -> Self::ResponseFmt {
  319    348   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  320    349   
    }
  321    350   
}
         351  +
/* ServerOperationGenerator.kt:88 */
  322    352   
         353  +
/* ServerOperationGenerator.kt:48 */
  323    354   
#[allow(missing_docs)] // documentation missing in model
         355  +
                       /* ServerOperationGenerator.kt:55 */
  324    356   
pub struct EmptyInputOutput;
  325    357   
  326    358   
impl ::aws_smithy_http_server::operation::OperationShape for EmptyInputOutput {
  327    359   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
  328    360   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
  329    361   
            "smithy.protocoltests.rpcv2Cbor#EmptyInputOutput",
  330    362   
            "smithy.protocoltests.rpcv2Cbor",
  331    363   
            "EmptyInputOutput",
  332    364   
        );
  333    365   
  334    366   
    type Input = crate::input::EmptyInputOutputInput;
  335    367   
    type Output = crate::output::EmptyInputOutputOutput;
  336    368   
    type Error = std::convert::Infallible;
  337    369   
}
  338    370   
  339    371   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for EmptyInputOutput {
  340    372   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  341    373   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  342    374   
  343    375   
    fn request_fmt() -> Self::RequestFmt {
  344    376   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
  345    377   
    }
  346    378   
  347    379   
    fn response_fmt() -> Self::ResponseFmt {
  348    380   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  349    381   
    }
  350    382   
}
         383  +
/* ServerOperationGenerator.kt:88 */
  351    384   
         385  +
/* ServerOperationGenerator.kt:48 */
  352    386   
#[allow(missing_docs)] // documentation missing in model
         387  +
                       /* ServerOperationGenerator.kt:55 */
  353    388   
pub struct NoInputOutput;
  354    389   
  355    390   
impl ::aws_smithy_http_server::operation::OperationShape for NoInputOutput {
  356    391   
    const ID: ::aws_smithy_http_server::shape_id::ShapeId =
  357    392   
        ::aws_smithy_http_server::shape_id::ShapeId::new(
  358    393   
            "smithy.protocoltests.rpcv2Cbor#NoInputOutput",
  359    394   
            "smithy.protocoltests.rpcv2Cbor",
  360    395   
            "NoInputOutput",
  361    396   
        );
  362    397   
  363    398   
    type Input = crate::input::NoInputOutputInput;
  364    399   
    type Output = crate::output::NoInputOutputOutput;
  365    400   
    type Error = std::convert::Infallible;
  366    401   
}
  367    402   
  368    403   
impl ::aws_smithy_http_server::instrumentation::sensitivity::Sensitivity for NoInputOutput {
  369    404   
    type RequestFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  370    405   
    type ResponseFmt = ::aws_smithy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  371    406   
  372    407   
    fn request_fmt() -> Self::RequestFmt {
  373    408   
        ::aws_smithy_http_server::instrumentation::sensitivity::RequestFmt::new()
  374    409   
    }
  375    410   
  376    411   
    fn response_fmt() -> Self::ResponseFmt {
  377    412   
        ::aws_smithy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  378    413   
    }
  379    414   
}
         415  +
/* ServerOperationGenerator.kt:88 */

tmp-codegen-diff/codegen-server-test/rpcv2Cbor/rust-server-codegen/src/output.rs

@@ -1,1 +1506,2684 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    4         -
pub struct Float16Output {
           6  +
pub /* StructureGenerator.kt:201 */ struct Float16Output {
           7  +
    /* StructureGenerator.kt:231 */
    5      8   
    #[allow(missing_docs)] // documentation missing in model
    6      9   
    pub value: ::std::option::Option<f64>,
          10  +
    /* StructureGenerator.kt:201 */
    7     11   
}
          12  +
/* StructureGenerator.kt:135 */
    8     13   
impl Float16Output {
          14  +
    /* StructureGenerator.kt:231 */
    9     15   
    #[allow(missing_docs)] // documentation missing in model
          16  +
                           /* StructureGenerator.kt:166 */
   10     17   
    pub fn value(&self) -> ::std::option::Option<f64> {
          18  +
        /* StructureGenerator.kt:168 */
   11     19   
        self.value
          20  +
        /* StructureGenerator.kt:166 */
   12     21   
    }
          22  +
    /* StructureGenerator.kt:135 */
   13     23   
}
          24  +
/* ServerCodegenVisitor.kt:345 */
   14     25   
impl Float16Output {
   15         -
    /// Creates a new builder-style object to manufacture [`Float16Output`](crate::output::Float16Output).
          26  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`Float16Output`](crate::output::Float16Output).
          27  +
    /* ServerBuilderGenerator.kt:295 */
   16     28   
    pub fn builder() -> crate::output::float16_output::Builder {
          29  +
        /* ServerBuilderGenerator.kt:296 */
   17     30   
        crate::output::float16_output::Builder::default()
          31  +
        /* ServerBuilderGenerator.kt:295 */
   18     32   
    }
          33  +
    /* ServerCodegenVisitor.kt:345 */
   19     34   
}
   20     35   
          36  +
/* StructureGenerator.kt:197 */
   21     37   
#[allow(missing_docs)] // documentation missing in model
          38  +
/* RustType.kt:516 */
   22     39   
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
   23         -
pub struct SparseNullsOperationOutput {
          40  +
pub /* StructureGenerator.kt:201 */ struct SparseNullsOperationOutput {
          41  +
    /* StructureGenerator.kt:231 */
   24     42   
    #[allow(missing_docs)] // documentation missing in model
   25     43   
    pub sparse_string_list:
   26     44   
        ::std::option::Option<::std::vec::Vec<::std::option::Option<::std::string::String>>>,
          45  +
    /* StructureGenerator.kt:231 */
   27     46   
    #[allow(missing_docs)] // documentation missing in model
   28     47   
    pub sparse_string_map: ::std::option::Option<
   29     48   
        ::std::collections::HashMap<
   30     49   
            ::std::string::String,
   31     50   
            ::std::option::Option<::std::string::String>,
   32     51   
        >,
   33     52   
    >,
          53  +
    /* StructureGenerator.kt:201 */
   34     54   
}
          55  +
/* StructureGenerator.kt:135 */
   35     56   
impl SparseNullsOperationOutput {
          57  +
    /* StructureGenerator.kt:231 */
   36     58   
    #[allow(missing_docs)] // documentation missing in model
          59  +
                           /* StructureGenerator.kt:166 */
   37     60   
    pub fn sparse_string_list(
   38     61   
        &self,
   39     62   
    ) -> ::std::option::Option<&[::std::option::Option<::std::string::String>]> {
          63  +
        /* StructureGenerator.kt:169 */
   40     64   
        self.sparse_string_list.as_deref()
          65  +
        /* StructureGenerator.kt:166 */
   41     66   
    }
          67  +
    /* StructureGenerator.kt:231 */
   42     68   
    #[allow(missing_docs)] // documentation missing in model
          69  +
                           /* StructureGenerator.kt:166 */
   43     70   
    pub fn sparse_string_map(
   44     71   
        &self,
   45     72   
    ) -> ::std::option::Option<
   46     73   
        &::std::collections::HashMap<
   47     74   
            ::std::string::String,
   48     75   
            ::std::option::Option<::std::string::String>,
   49     76   
        >,
   50     77   
    > {
          78  +
        /* StructureGenerator.kt:170 */
   51     79   
        self.sparse_string_map.as_ref()
          80  +
        /* StructureGenerator.kt:166 */
   52     81   
    }
          82  +
    /* StructureGenerator.kt:135 */
   53     83   
}
          84  +
/* ServerCodegenVisitor.kt:345 */
   54     85   
impl SparseNullsOperationOutput {
   55         -
    /// Creates a new builder-style object to manufacture [`SparseNullsOperationOutput`](crate::output::SparseNullsOperationOutput).
          86  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`SparseNullsOperationOutput`](crate::output::SparseNullsOperationOutput).
          87  +
    /* ServerBuilderGenerator.kt:295 */
   56     88   
    pub fn builder() -> crate::output::sparse_nulls_operation_output::Builder {
          89  +
        /* ServerBuilderGenerator.kt:296 */
   57     90   
        crate::output::sparse_nulls_operation_output::Builder::default()
          91  +
        /* ServerBuilderGenerator.kt:295 */
   58     92   
    }
          93  +
    /* ServerCodegenVisitor.kt:345 */
   59     94   
}
   60     95   
          96  +
/* StructureGenerator.kt:197 */
   61     97   
#[allow(missing_docs)] // documentation missing in model
          98  +
/* RustType.kt:516 */
   62     99   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
   63         -
pub struct OperationWithDefaultsOutput {
         100  +
pub /* StructureGenerator.kt:201 */ struct OperationWithDefaultsOutput {
         101  +
    /* StructureGenerator.kt:231 */
   64    102   
    #[allow(missing_docs)] // documentation missing in model
   65    103   
    pub default_string: ::std::string::String,
         104  +
    /* StructureGenerator.kt:231 */
   66    105   
    #[allow(missing_docs)] // documentation missing in model
   67    106   
    pub default_boolean: bool,
         107  +
    /* StructureGenerator.kt:231 */
   68    108   
    #[allow(missing_docs)] // documentation missing in model
   69    109   
    pub default_list: ::std::vec::Vec<::std::string::String>,
         110  +
    /* StructureGenerator.kt:231 */
   70    111   
    #[allow(missing_docs)] // documentation missing in model
   71    112   
    pub default_timestamp: ::aws_smithy_types::DateTime,
         113  +
    /* StructureGenerator.kt:231 */
   72    114   
    #[allow(missing_docs)] // documentation missing in model
   73    115   
    pub default_blob: ::aws_smithy_types::Blob,
         116  +
    /* StructureGenerator.kt:231 */
   74    117   
    #[allow(missing_docs)] // documentation missing in model
   75    118   
    pub default_byte: i8,
         119  +
    /* StructureGenerator.kt:231 */
   76    120   
    #[allow(missing_docs)] // documentation missing in model
   77    121   
    pub default_short: i16,
         122  +
    /* StructureGenerator.kt:231 */
   78    123   
    #[allow(missing_docs)] // documentation missing in model
   79    124   
    pub default_integer: i32,
         125  +
    /* StructureGenerator.kt:231 */
   80    126   
    #[allow(missing_docs)] // documentation missing in model
   81    127   
    pub default_long: i64,
         128  +
    /* StructureGenerator.kt:231 */
   82    129   
    #[allow(missing_docs)] // documentation missing in model
   83    130   
    pub default_float: f32,
         131  +
    /* StructureGenerator.kt:231 */
   84    132   
    #[allow(missing_docs)] // documentation missing in model
   85    133   
    pub default_double: f64,
         134  +
    /* StructureGenerator.kt:231 */
   86    135   
    #[allow(missing_docs)] // documentation missing in model
   87    136   
    pub default_map: ::std::collections::HashMap<::std::string::String, ::std::string::String>,
         137  +
    /* StructureGenerator.kt:231 */
   88    138   
    #[allow(missing_docs)] // documentation missing in model
   89    139   
    pub default_enum: crate::model::TestEnum,
         140  +
    /* StructureGenerator.kt:231 */
   90    141   
    #[allow(missing_docs)] // documentation missing in model
   91    142   
    pub default_int_enum: i32,
         143  +
    /* StructureGenerator.kt:231 */
   92    144   
    #[allow(missing_docs)] // documentation missing in model
   93    145   
    pub empty_string: ::std::string::String,
         146  +
    /* StructureGenerator.kt:231 */
   94    147   
    #[allow(missing_docs)] // documentation missing in model
   95    148   
    pub false_boolean: bool,
         149  +
    /* StructureGenerator.kt:231 */
   96    150   
    #[allow(missing_docs)] // documentation missing in model
   97    151   
    pub empty_blob: ::aws_smithy_types::Blob,
         152  +
    /* StructureGenerator.kt:231 */
   98    153   
    #[allow(missing_docs)] // documentation missing in model
   99    154   
    pub zero_byte: i8,
         155  +
    /* StructureGenerator.kt:231 */
  100    156   
    #[allow(missing_docs)] // documentation missing in model
  101    157   
    pub zero_short: i16,
         158  +
    /* StructureGenerator.kt:231 */
  102    159   
    #[allow(missing_docs)] // documentation missing in model
  103    160   
    pub zero_integer: i32,
         161  +
    /* StructureGenerator.kt:231 */
  104    162   
    #[allow(missing_docs)] // documentation missing in model
  105    163   
    pub zero_long: i64,
         164  +
    /* StructureGenerator.kt:231 */
  106    165   
    #[allow(missing_docs)] // documentation missing in model
  107    166   
    pub zero_float: f32,
         167  +
    /* StructureGenerator.kt:231 */
  108    168   
    #[allow(missing_docs)] // documentation missing in model
  109    169   
    pub zero_double: f64,
         170  +
    /* StructureGenerator.kt:201 */
  110    171   
}
         172  +
/* StructureGenerator.kt:135 */
  111    173   
impl OperationWithDefaultsOutput {
         174  +
    /* StructureGenerator.kt:231 */
  112    175   
    #[allow(missing_docs)] // documentation missing in model
         176  +
                           /* StructureGenerator.kt:166 */
  113    177   
    pub fn default_string(&self) -> &str {
         178  +
        /* StructureGenerator.kt:171 */
  114    179   
        use std::ops::Deref;
  115    180   
        self.default_string.deref()
         181  +
        /* StructureGenerator.kt:166 */
  116    182   
    }
         183  +
    /* StructureGenerator.kt:231 */
  117    184   
    #[allow(missing_docs)] // documentation missing in model
         185  +
                           /* StructureGenerator.kt:166 */
  118    186   
    pub fn default_boolean(&self) -> bool {
         187  +
        /* StructureGenerator.kt:168 */
  119    188   
        self.default_boolean
         189  +
        /* StructureGenerator.kt:166 */
  120    190   
    }
         191  +
    /* StructureGenerator.kt:231 */
  121    192   
    #[allow(missing_docs)] // documentation missing in model
         193  +
                           /* StructureGenerator.kt:166 */
  122    194   
    pub fn default_list(&self) -> &[::std::string::String] {
         195  +
        /* StructureGenerator.kt:171 */
  123    196   
        use std::ops::Deref;
  124    197   
        self.default_list.deref()
         198  +
        /* StructureGenerator.kt:166 */
  125    199   
    }
         200  +
    /* StructureGenerator.kt:231 */
  126    201   
    #[allow(missing_docs)] // documentation missing in model
         202  +
                           /* StructureGenerator.kt:166 */
  127    203   
    pub fn default_timestamp(&self) -> &::aws_smithy_types::DateTime {
         204  +
        /* StructureGenerator.kt:172 */
  128    205   
        &self.default_timestamp
         206  +
        /* StructureGenerator.kt:166 */
  129    207   
    }
         208  +
    /* StructureGenerator.kt:231 */
  130    209   
    #[allow(missing_docs)] // documentation missing in model
         210  +
                           /* StructureGenerator.kt:166 */
  131    211   
    pub fn default_blob(&self) -> &::aws_smithy_types::Blob {
         212  +
        /* StructureGenerator.kt:172 */
  132    213   
        &self.default_blob
         214  +
        /* StructureGenerator.kt:166 */
  133    215   
    }
         216  +
    /* StructureGenerator.kt:231 */
  134    217   
    #[allow(missing_docs)] // documentation missing in model
         218  +
                           /* StructureGenerator.kt:166 */
  135    219   
    pub fn default_byte(&self) -> i8 {
         220  +
        /* StructureGenerator.kt:168 */
  136    221   
        self.default_byte
         222  +
        /* StructureGenerator.kt:166 */
  137    223   
    }
         224  +
    /* StructureGenerator.kt:231 */
  138    225   
    #[allow(missing_docs)] // documentation missing in model
         226  +
                           /* StructureGenerator.kt:166 */
  139    227   
    pub fn default_short(&self) -> i16 {
         228  +
        /* StructureGenerator.kt:168 */
  140    229   
        self.default_short
         230  +
        /* StructureGenerator.kt:166 */
  141    231   
    }
         232  +
    /* StructureGenerator.kt:231 */
  142    233   
    #[allow(missing_docs)] // documentation missing in model
         234  +
                           /* StructureGenerator.kt:166 */
  143    235   
    pub fn default_integer(&self) -> i32 {
         236  +
        /* StructureGenerator.kt:168 */
  144    237   
        self.default_integer
         238  +
        /* StructureGenerator.kt:166 */
  145    239   
    }
         240  +
    /* StructureGenerator.kt:231 */
  146    241   
    #[allow(missing_docs)] // documentation missing in model
         242  +
                           /* StructureGenerator.kt:166 */
  147    243   
    pub fn default_long(&self) -> i64 {
         244  +
        /* StructureGenerator.kt:168 */
  148    245   
        self.default_long
         246  +
        /* StructureGenerator.kt:166 */
  149    247   
    }
         248  +
    /* StructureGenerator.kt:231 */
  150    249   
    #[allow(missing_docs)] // documentation missing in model
         250  +
                           /* StructureGenerator.kt:166 */
  151    251   
    pub fn default_float(&self) -> f32 {
         252  +
        /* StructureGenerator.kt:168 */
  152    253   
        self.default_float
         254  +
        /* StructureGenerator.kt:166 */
  153    255   
    }
         256  +
    /* StructureGenerator.kt:231 */
  154    257   
    #[allow(missing_docs)] // documentation missing in model
         258  +
                           /* StructureGenerator.kt:166 */
  155    259   
    pub fn default_double(&self) -> f64 {
         260  +
        /* StructureGenerator.kt:168 */
  156    261   
        self.default_double
         262  +
        /* StructureGenerator.kt:166 */
  157    263   
    }
         264  +
    /* StructureGenerator.kt:231 */
  158    265   
    #[allow(missing_docs)] // documentation missing in model
         266  +
                           /* StructureGenerator.kt:166 */
  159    267   
    pub fn default_map(
  160    268   
        &self,
  161    269   
    ) -> &::std::collections::HashMap<::std::string::String, ::std::string::String> {
         270  +
        /* StructureGenerator.kt:172 */
  162    271   
        &self.default_map
         272  +
        /* StructureGenerator.kt:166 */
  163    273   
    }
         274  +
    /* StructureGenerator.kt:231 */
  164    275   
    #[allow(missing_docs)] // documentation missing in model
         276  +
                           /* StructureGenerator.kt:166 */
  165    277   
    pub fn default_enum(&self) -> &crate::model::TestEnum {
         278  +
        /* StructureGenerator.kt:172 */
  166    279   
        &self.default_enum
         280  +
        /* StructureGenerator.kt:166 */
  167    281   
    }
         282  +
    /* StructureGenerator.kt:231 */
  168    283   
    #[allow(missing_docs)] // documentation missing in model
         284  +
                           /* StructureGenerator.kt:166 */
  169    285   
    pub fn default_int_enum(&self) -> i32 {
         286  +
        /* StructureGenerator.kt:168 */
  170    287   
        self.default_int_enum
         288  +
        /* StructureGenerator.kt:166 */
  171    289   
    }
         290  +
    /* StructureGenerator.kt:231 */
  172    291   
    #[allow(missing_docs)] // documentation missing in model
         292  +
                           /* StructureGenerator.kt:166 */
  173    293   
    pub fn empty_string(&self) -> &str {
         294  +
        /* StructureGenerator.kt:171 */
  174    295   
        use std::ops::Deref;
  175    296   
        self.empty_string.deref()
         297  +
        /* StructureGenerator.kt:166 */
  176    298   
    }
         299  +
    /* StructureGenerator.kt:231 */
  177    300   
    #[allow(missing_docs)] // documentation missing in model
         301  +
                           /* StructureGenerator.kt:166 */
  178    302   
    pub fn false_boolean(&self) -> bool {
         303  +
        /* StructureGenerator.kt:168 */
  179    304   
        self.false_boolean
         305  +
        /* StructureGenerator.kt:166 */
  180    306   
    }
         307  +
    /* StructureGenerator.kt:231 */
  181    308   
    #[allow(missing_docs)] // documentation missing in model
         309  +
                           /* StructureGenerator.kt:166 */
  182    310   
    pub fn empty_blob(&self) -> &::aws_smithy_types::Blob {
         311  +
        /* StructureGenerator.kt:172 */
  183    312   
        &self.empty_blob
         313  +
        /* StructureGenerator.kt:166 */
  184    314   
    }
         315  +
    /* StructureGenerator.kt:231 */
  185    316   
    #[allow(missing_docs)] // documentation missing in model
         317  +
                           /* StructureGenerator.kt:166 */
  186    318   
    pub fn zero_byte(&self) -> i8 {
         319  +
        /* StructureGenerator.kt:168 */
  187    320   
        self.zero_byte
         321  +
        /* StructureGenerator.kt:166 */
  188    322   
    }
         323  +
    /* StructureGenerator.kt:231 */
  189    324   
    #[allow(missing_docs)] // documentation missing in model
         325  +
                           /* StructureGenerator.kt:166 */
  190    326   
    pub fn zero_short(&self) -> i16 {
         327  +
        /* StructureGenerator.kt:168 */
  191    328   
        self.zero_short
         329  +
        /* StructureGenerator.kt:166 */
  192    330   
    }
         331  +
    /* StructureGenerator.kt:231 */
  193    332   
    #[allow(missing_docs)] // documentation missing in model
         333  +
                           /* StructureGenerator.kt:166 */
  194    334   
    pub fn zero_integer(&self) -> i32 {
         335  +
        /* StructureGenerator.kt:168 */
  195    336   
        self.zero_integer
         337  +
        /* StructureGenerator.kt:166 */
  196    338   
    }
         339  +
    /* StructureGenerator.kt:231 */
  197    340   
    #[allow(missing_docs)] // documentation missing in model
         341  +
                           /* StructureGenerator.kt:166 */
  198    342   
    pub fn zero_long(&self) -> i64 {
         343  +
        /* StructureGenerator.kt:168 */
  199    344   
        self.zero_long
         345  +
        /* StructureGenerator.kt:166 */
  200    346   
    }
         347  +
    /* StructureGenerator.kt:231 */
  201    348   
    #[allow(missing_docs)] // documentation missing in model
         349  +
                           /* StructureGenerator.kt:166 */
  202    350   
    pub fn zero_float(&self) -> f32 {
         351  +
        /* StructureGenerator.kt:168 */
  203    352   
        self.zero_float
         353  +
        /* StructureGenerator.kt:166 */
  204    354   
    }
         355  +
    /* StructureGenerator.kt:231 */
  205    356   
    #[allow(missing_docs)] // documentation missing in model
         357  +
                           /* StructureGenerator.kt:166 */
  206    358   
    pub fn zero_double(&self) -> f64 {
         359  +
        /* StructureGenerator.kt:168 */
  207    360   
        self.zero_double
         361  +
        /* StructureGenerator.kt:166 */
  208    362   
    }
         363  +
    /* StructureGenerator.kt:135 */
  209    364   
}
         365  +
/* ServerCodegenVisitor.kt:345 */
  210    366   
impl OperationWithDefaultsOutput {
  211         -
    /// Creates a new builder-style object to manufacture [`OperationWithDefaultsOutput`](crate::output::OperationWithDefaultsOutput).
         367  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OperationWithDefaultsOutput`](crate::output::OperationWithDefaultsOutput).
         368  +
    /* ServerBuilderGenerator.kt:295 */
  212    369   
    pub fn builder() -> crate::output::operation_with_defaults_output::Builder {
         370  +
        /* ServerBuilderGenerator.kt:296 */
  213    371   
        crate::output::operation_with_defaults_output::Builder::default()
         372  +
        /* ServerBuilderGenerator.kt:295 */
  214    373   
    }
         374  +
    /* ServerCodegenVisitor.kt:345 */
  215    375   
}
  216    376   
         377  +
/* StructureGenerator.kt:197 */
  217    378   
#[allow(missing_docs)] // documentation missing in model
         379  +
/* RustType.kt:516 */
  218    380   
#[derive(
  219    381   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  220    382   
)]
  221         -
pub struct FractionalSecondsOutput {
         383  +
pub /* StructureGenerator.kt:201 */ struct FractionalSecondsOutput {
         384  +
    /* StructureGenerator.kt:231 */
  222    385   
    #[allow(missing_docs)] // documentation missing in model
  223    386   
    pub datetime: ::std::option::Option<::aws_smithy_types::DateTime>,
         387  +
    /* StructureGenerator.kt:201 */
  224    388   
}
         389  +
/* StructureGenerator.kt:135 */
  225    390   
impl FractionalSecondsOutput {
         391  +
    /* StructureGenerator.kt:231 */
  226    392   
    #[allow(missing_docs)] // documentation missing in model
         393  +
                           /* StructureGenerator.kt:166 */
  227    394   
    pub fn datetime(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
         395  +
        /* StructureGenerator.kt:170 */
  228    396   
        self.datetime.as_ref()
         397  +
        /* StructureGenerator.kt:166 */
  229    398   
    }
         399  +
    /* StructureGenerator.kt:135 */
  230    400   
}
         401  +
/* ServerCodegenVisitor.kt:345 */
  231    402   
impl FractionalSecondsOutput {
  232         -
    /// Creates a new builder-style object to manufacture [`FractionalSecondsOutput`](crate::output::FractionalSecondsOutput).
         403  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`FractionalSecondsOutput`](crate::output::FractionalSecondsOutput).
         404  +
    /* ServerBuilderGenerator.kt:295 */
  233    405   
    pub fn builder() -> crate::output::fractional_seconds_output::Builder {
         406  +
        /* ServerBuilderGenerator.kt:296 */
  234    407   
        crate::output::fractional_seconds_output::Builder::default()
         408  +
        /* ServerBuilderGenerator.kt:295 */
  235    409   
    }
         410  +
    /* ServerCodegenVisitor.kt:345 */
  236    411   
}
  237    412   
         413  +
/* StructureGenerator.kt:197 */
  238    414   
#[allow(missing_docs)] // documentation missing in model
         415  +
/* RustType.kt:516 */
  239    416   
#[derive(
  240    417   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  241    418   
)]
  242         -
pub struct GreetingWithErrorsOutput {
         419  +
pub /* StructureGenerator.kt:201 */ struct GreetingWithErrorsOutput {
         420  +
    /* StructureGenerator.kt:231 */
  243    421   
    #[allow(missing_docs)] // documentation missing in model
  244    422   
    pub greeting: ::std::option::Option<::std::string::String>,
         423  +
    /* StructureGenerator.kt:201 */
  245    424   
}
         425  +
/* StructureGenerator.kt:135 */
  246    426   
impl GreetingWithErrorsOutput {
         427  +
    /* StructureGenerator.kt:231 */
  247    428   
    #[allow(missing_docs)] // documentation missing in model
         429  +
                           /* StructureGenerator.kt:166 */
  248    430   
    pub fn greeting(&self) -> ::std::option::Option<&str> {
         431  +
        /* StructureGenerator.kt:169 */
  249    432   
        self.greeting.as_deref()
         433  +
        /* StructureGenerator.kt:166 */
  250    434   
    }
         435  +
    /* StructureGenerator.kt:135 */
  251    436   
}
         437  +
/* ServerCodegenVisitor.kt:345 */
  252    438   
impl GreetingWithErrorsOutput {
  253         -
    /// Creates a new builder-style object to manufacture [`GreetingWithErrorsOutput`](crate::output::GreetingWithErrorsOutput).
         439  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`GreetingWithErrorsOutput`](crate::output::GreetingWithErrorsOutput).
         440  +
    /* ServerBuilderGenerator.kt:295 */
  254    441   
    pub fn builder() -> crate::output::greeting_with_errors_output::Builder {
         442  +
        /* ServerBuilderGenerator.kt:296 */
  255    443   
        crate::output::greeting_with_errors_output::Builder::default()
         444  +
        /* ServerBuilderGenerator.kt:295 */
  256    445   
    }
         446  +
    /* ServerCodegenVisitor.kt:345 */
  257    447   
}
  258    448   
         449  +
/* StructureGenerator.kt:197 */
  259    450   
#[allow(missing_docs)] // documentation missing in model
         451  +
/* RustType.kt:516 */
  260    452   
#[derive(
  261    453   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  262    454   
)]
  263         -
pub struct RecursiveShapesOutput {
         455  +
pub /* StructureGenerator.kt:201 */ struct RecursiveShapesOutput {
         456  +
    /* StructureGenerator.kt:231 */
  264    457   
    #[allow(missing_docs)] // documentation missing in model
  265    458   
    pub nested: ::std::option::Option<crate::model::RecursiveShapesInputOutputNested1>,
         459  +
    /* StructureGenerator.kt:201 */
  266    460   
}
         461  +
/* StructureGenerator.kt:135 */
  267    462   
impl RecursiveShapesOutput {
         463  +
    /* StructureGenerator.kt:231 */
  268    464   
    #[allow(missing_docs)] // documentation missing in model
         465  +
                           /* StructureGenerator.kt:166 */
  269    466   
    pub fn nested(
  270    467   
        &self,
  271    468   
    ) -> ::std::option::Option<&crate::model::RecursiveShapesInputOutputNested1> {
         469  +
        /* StructureGenerator.kt:170 */
  272    470   
        self.nested.as_ref()
         471  +
        /* StructureGenerator.kt:166 */
  273    472   
    }
         473  +
    /* StructureGenerator.kt:135 */
  274    474   
}
         475  +
/* ServerCodegenVisitor.kt:345 */
  275    476   
impl RecursiveShapesOutput {
  276         -
    /// Creates a new builder-style object to manufacture [`RecursiveShapesOutput`](crate::output::RecursiveShapesOutput).
         477  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`RecursiveShapesOutput`](crate::output::RecursiveShapesOutput).
         478  +
    /* ServerBuilderGenerator.kt:295 */
  277    479   
    pub fn builder() -> crate::output::recursive_shapes_output::Builder {
         480  +
        /* ServerBuilderGenerator.kt:296 */
  278    481   
        crate::output::recursive_shapes_output::Builder::default()
         482  +
        /* ServerBuilderGenerator.kt:295 */
  279    483   
    }
         484  +
    /* ServerCodegenVisitor.kt:345 */
  280    485   
}
  281    486   
         487  +
/* StructureGenerator.kt:197 */
  282    488   
#[allow(missing_docs)] // documentation missing in model
         489  +
/* RustType.kt:516 */
  283    490   
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
  284         -
pub struct RpcV2CborSparseMapsOutput {
         491  +
pub /* StructureGenerator.kt:201 */ struct RpcV2CborSparseMapsOutput {
         492  +
    /* StructureGenerator.kt:231 */
  285    493   
    #[allow(missing_docs)] // documentation missing in model
  286    494   
    pub sparse_struct_map: ::std::option::Option<
  287    495   
        ::std::collections::HashMap<
  288    496   
            ::std::string::String,
  289    497   
            ::std::option::Option<crate::model::GreetingStruct>,
  290    498   
        >,
  291    499   
    >,
         500  +
    /* StructureGenerator.kt:231 */
  292    501   
    #[allow(missing_docs)] // documentation missing in model
  293    502   
    pub sparse_number_map: ::std::option::Option<
  294    503   
        ::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
  295    504   
    >,
         505  +
    /* StructureGenerator.kt:231 */
  296    506   
    #[allow(missing_docs)] // documentation missing in model
  297    507   
    pub sparse_boolean_map: ::std::option::Option<
  298    508   
        ::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
  299    509   
    >,
         510  +
    /* StructureGenerator.kt:231 */
  300    511   
    #[allow(missing_docs)] // documentation missing in model
  301    512   
    pub sparse_string_map: ::std::option::Option<
  302    513   
        ::std::collections::HashMap<
  303    514   
            ::std::string::String,
  304    515   
            ::std::option::Option<::std::string::String>,
  305    516   
        >,
  306    517   
    >,
         518  +
    /* StructureGenerator.kt:231 */
  307    519   
    #[allow(missing_docs)] // documentation missing in model
  308    520   
    pub sparse_set_map: ::std::option::Option<
  309    521   
        ::std::collections::HashMap<
  310    522   
            ::std::string::String,
  311    523   
            ::std::option::Option<crate::model::StringSet>,
  312    524   
        >,
  313    525   
    >,
         526  +
    /* StructureGenerator.kt:201 */
  314    527   
}
         528  +
/* StructureGenerator.kt:135 */
  315    529   
impl RpcV2CborSparseMapsOutput {
         530  +
    /* StructureGenerator.kt:231 */
  316    531   
    #[allow(missing_docs)] // documentation missing in model
         532  +
                           /* StructureGenerator.kt:166 */
  317    533   
    pub fn sparse_struct_map(
  318    534   
        &self,
  319    535   
    ) -> ::std::option::Option<
  320    536   
        &::std::collections::HashMap<
  321    537   
            ::std::string::String,
  322    538   
            ::std::option::Option<crate::model::GreetingStruct>,
  323    539   
        >,
  324    540   
    > {
         541  +
        /* StructureGenerator.kt:170 */
  325    542   
        self.sparse_struct_map.as_ref()
         543  +
        /* StructureGenerator.kt:166 */
  326    544   
    }
         545  +
    /* StructureGenerator.kt:231 */
  327    546   
    #[allow(missing_docs)] // documentation missing in model
         547  +
                           /* StructureGenerator.kt:166 */
  328    548   
    pub fn sparse_number_map(
  329    549   
        &self,
  330    550   
    ) -> ::std::option::Option<
  331    551   
        &::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
  332    552   
    > {
         553  +
        /* StructureGenerator.kt:170 */
  333    554   
        self.sparse_number_map.as_ref()
         555  +
        /* StructureGenerator.kt:166 */
  334    556   
    }
         557  +
    /* StructureGenerator.kt:231 */
  335    558   
    #[allow(missing_docs)] // documentation missing in model
         559  +
                           /* StructureGenerator.kt:166 */
  336    560   
    pub fn sparse_boolean_map(
  337    561   
        &self,
  338    562   
    ) -> ::std::option::Option<
  339    563   
        &::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
  340    564   
    > {
         565  +
        /* StructureGenerator.kt:170 */
  341    566   
        self.sparse_boolean_map.as_ref()
         567  +
        /* StructureGenerator.kt:166 */
  342    568   
    }
         569  +
    /* StructureGenerator.kt:231 */
  343    570   
    #[allow(missing_docs)] // documentation missing in model
         571  +
                           /* StructureGenerator.kt:166 */
  344    572   
    pub fn sparse_string_map(
  345    573   
        &self,
  346    574   
    ) -> ::std::option::Option<
  347    575   
        &::std::collections::HashMap<
  348    576   
            ::std::string::String,
  349    577   
            ::std::option::Option<::std::string::String>,
  350    578   
        >,
  351    579   
    > {
         580  +
        /* StructureGenerator.kt:170 */
  352    581   
        self.sparse_string_map.as_ref()
         582  +
        /* StructureGenerator.kt:166 */
  353    583   
    }
         584  +
    /* StructureGenerator.kt:231 */
  354    585   
    #[allow(missing_docs)] // documentation missing in model
         586  +
                           /* StructureGenerator.kt:166 */
  355    587   
    pub fn sparse_set_map(
  356    588   
        &self,
  357    589   
    ) -> ::std::option::Option<
  358    590   
        &::std::collections::HashMap<
  359    591   
            ::std::string::String,
  360    592   
            ::std::option::Option<crate::model::StringSet>,
  361    593   
        >,
  362    594   
    > {
         595  +
        /* StructureGenerator.kt:170 */
  363    596   
        self.sparse_set_map.as_ref()
         597  +
        /* StructureGenerator.kt:166 */
  364    598   
    }
         599  +
    /* StructureGenerator.kt:135 */
  365    600   
}
         601  +
/* ServerCodegenVisitor.kt:345 */
  366    602   
impl RpcV2CborSparseMapsOutput {
  367         -
    /// Creates a new builder-style object to manufacture [`RpcV2CborSparseMapsOutput`](crate::output::RpcV2CborSparseMapsOutput).
         603  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`RpcV2CborSparseMapsOutput`](crate::output::RpcV2CborSparseMapsOutput).
         604  +
    /* ServerBuilderGenerator.kt:295 */
  368    605   
    pub fn builder() -> crate::output::rpc_v2_cbor_sparse_maps_output::Builder {
         606  +
        /* ServerBuilderGenerator.kt:296 */
  369    607   
        crate::output::rpc_v2_cbor_sparse_maps_output::Builder::default()
         608  +
        /* ServerBuilderGenerator.kt:295 */
  370    609   
    }
         610  +
    /* ServerCodegenVisitor.kt:345 */
  371    611   
}
  372    612   
         613  +
/* StructureGenerator.kt:197 */
  373    614   
#[allow(missing_docs)] // documentation missing in model
         615  +
/* RustType.kt:516 */
  374    616   
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
  375         -
pub struct RpcV2CborDenseMapsOutput {
         617  +
pub /* StructureGenerator.kt:201 */ struct RpcV2CborDenseMapsOutput {
         618  +
    /* StructureGenerator.kt:231 */
  376    619   
    #[allow(missing_docs)] // documentation missing in model
  377    620   
    pub dense_struct_map: ::std::option::Option<
  378    621   
        ::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
  379    622   
    >,
         623  +
    /* StructureGenerator.kt:231 */
  380    624   
    #[allow(missing_docs)] // documentation missing in model
  381    625   
    pub dense_number_map:
  382    626   
        ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
         627  +
    /* StructureGenerator.kt:231 */
  383    628   
    #[allow(missing_docs)] // documentation missing in model
  384    629   
    pub dense_boolean_map:
  385    630   
        ::std::option::Option<::std::collections::HashMap<::std::string::String, bool>>,
         631  +
    /* StructureGenerator.kt:231 */
  386    632   
    #[allow(missing_docs)] // documentation missing in model
  387    633   
    pub dense_string_map: ::std::option::Option<
  388    634   
        ::std::collections::HashMap<::std::string::String, ::std::string::String>,
  389    635   
    >,
         636  +
    /* StructureGenerator.kt:231 */
  390    637   
    #[allow(missing_docs)] // documentation missing in model
  391    638   
    pub dense_set_map: ::std::option::Option<
  392    639   
        ::std::collections::HashMap<::std::string::String, crate::model::StringSet>,
  393    640   
    >,
         641  +
    /* StructureGenerator.kt:201 */
  394    642   
}
         643  +
/* StructureGenerator.kt:135 */
  395    644   
impl RpcV2CborDenseMapsOutput {
         645  +
    /* StructureGenerator.kt:231 */
  396    646   
    #[allow(missing_docs)] // documentation missing in model
         647  +
                           /* StructureGenerator.kt:166 */
  397    648   
    pub fn dense_struct_map(
  398    649   
        &self,
  399    650   
    ) -> ::std::option::Option<
  400    651   
        &::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
  401    652   
    > {
         653  +
        /* StructureGenerator.kt:170 */
  402    654   
        self.dense_struct_map.as_ref()
         655  +
        /* StructureGenerator.kt:166 */
  403    656   
    }
         657  +
    /* StructureGenerator.kt:231 */
  404    658   
    #[allow(missing_docs)] // documentation missing in model
         659  +
                           /* StructureGenerator.kt:166 */
  405    660   
    pub fn dense_number_map(
  406    661   
        &self,
  407    662   
    ) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, i32>> {
         663  +
        /* StructureGenerator.kt:170 */
  408    664   
        self.dense_number_map.as_ref()
         665  +
        /* StructureGenerator.kt:166 */
  409    666   
    }
         667  +
    /* StructureGenerator.kt:231 */
  410    668   
    #[allow(missing_docs)] // documentation missing in model
         669  +
                           /* StructureGenerator.kt:166 */
  411    670   
    pub fn dense_boolean_map(
  412    671   
        &self,
  413    672   
    ) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, bool>> {
         673  +
        /* StructureGenerator.kt:170 */
  414    674   
        self.dense_boolean_map.as_ref()
         675  +
        /* StructureGenerator.kt:166 */
  415    676   
    }
         677  +
    /* StructureGenerator.kt:231 */
  416    678   
    #[allow(missing_docs)] // documentation missing in model
         679  +
                           /* StructureGenerator.kt:166 */
  417    680   
    pub fn dense_string_map(
  418    681   
        &self,
  419    682   
    ) -> ::std::option::Option<
  420    683   
        &::std::collections::HashMap<::std::string::String, ::std::string::String>,
  421    684   
    > {
         685  +
        /* StructureGenerator.kt:170 */
  422    686   
        self.dense_string_map.as_ref()
         687  +
        /* StructureGenerator.kt:166 */
  423    688   
    }
         689  +
    /* StructureGenerator.kt:231 */
  424    690   
    #[allow(missing_docs)] // documentation missing in model
         691  +
                           /* StructureGenerator.kt:166 */
  425    692   
    pub fn dense_set_map(
  426    693   
        &self,
  427    694   
    ) -> ::std::option::Option<
  428    695   
        &::std::collections::HashMap<::std::string::String, crate::model::StringSet>,
  429    696   
    > {
         697  +
        /* StructureGenerator.kt:170 */
  430    698   
        self.dense_set_map.as_ref()
         699  +
        /* StructureGenerator.kt:166 */
  431    700   
    }
         701  +
    /* StructureGenerator.kt:135 */
  432    702   
}
         703  +
/* ServerCodegenVisitor.kt:345 */
  433    704   
impl RpcV2CborDenseMapsOutput {
  434         -
    /// Creates a new builder-style object to manufacture [`RpcV2CborDenseMapsOutput`](crate::output::RpcV2CborDenseMapsOutput).
         705  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`RpcV2CborDenseMapsOutput`](crate::output::RpcV2CborDenseMapsOutput).
         706  +
    /* ServerBuilderGenerator.kt:295 */
  435    707   
    pub fn builder() -> crate::output::rpc_v2_cbor_dense_maps_output::Builder {
         708  +
        /* ServerBuilderGenerator.kt:296 */
  436    709   
        crate::output::rpc_v2_cbor_dense_maps_output::Builder::default()
         710  +
        /* ServerBuilderGenerator.kt:295 */
  437    711   
    }
         712  +
    /* ServerCodegenVisitor.kt:345 */
  438    713   
}
  439    714   
         715  +
/* StructureGenerator.kt:197 */
  440    716   
#[allow(missing_docs)] // documentation missing in model
         717  +
/* RustType.kt:516 */
  441    718   
#[derive(
  442    719   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  443    720   
)]
  444         -
pub struct RpcV2CborListsOutput {
         721  +
pub /* StructureGenerator.kt:201 */ struct RpcV2CborListsOutput {
         722  +
    /* StructureGenerator.kt:231 */
  445    723   
    #[allow(missing_docs)] // documentation missing in model
  446    724   
    pub string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
         725  +
    /* StructureGenerator.kt:231 */
  447    726   
    #[allow(missing_docs)] // documentation missing in model
  448    727   
    pub string_set: ::std::option::Option<crate::model::StringSet>,
         728  +
    /* StructureGenerator.kt:231 */
  449    729   
    #[allow(missing_docs)] // documentation missing in model
  450    730   
    pub integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
         731  +
    /* StructureGenerator.kt:231 */
  451    732   
    #[allow(missing_docs)] // documentation missing in model
  452    733   
    pub boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
         734  +
    /* StructureGenerator.kt:231 */
  453    735   
    #[allow(missing_docs)] // documentation missing in model
  454    736   
    pub timestamp_list: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
         737  +
    /* StructureGenerator.kt:231 */
  455    738   
    #[allow(missing_docs)] // documentation missing in model
  456    739   
    pub enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
         740  +
    /* StructureGenerator.kt:231 */
  457    741   
    #[allow(missing_docs)] // documentation missing in model
  458    742   
    pub int_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
  459         -
    /// A list of lists of strings.
         743  +
    /// /* StructureGenerator.kt:231 */A list of lists of strings.
  460    744   
    pub nested_string_list:
  461    745   
        ::std::option::Option<::std::vec::Vec<::std::vec::Vec<::std::string::String>>>,
         746  +
    /* StructureGenerator.kt:231 */
  462    747   
    #[allow(missing_docs)] // documentation missing in model
  463    748   
    pub structure_list: ::std::option::Option<::std::vec::Vec<crate::model::StructureListMember>>,
         749  +
    /* StructureGenerator.kt:231 */
  464    750   
    #[allow(missing_docs)] // documentation missing in model
  465    751   
    pub blob_list: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::Blob>>,
         752  +
    /* StructureGenerator.kt:201 */
  466    753   
}
         754  +
/* StructureGenerator.kt:135 */
  467    755   
impl RpcV2CborListsOutput {
         756  +
    /* StructureGenerator.kt:231 */
  468    757   
    #[allow(missing_docs)] // documentation missing in model
         758  +
                           /* StructureGenerator.kt:166 */
  469    759   
    pub fn string_list(&self) -> ::std::option::Option<&[::std::string::String]> {
         760  +
        /* StructureGenerator.kt:169 */
  470    761   
        self.string_list.as_deref()
         762  +
        /* StructureGenerator.kt:166 */
  471    763   
    }
         764  +
    /* StructureGenerator.kt:231 */
  472    765   
    #[allow(missing_docs)] // documentation missing in model
         766  +
                           /* StructureGenerator.kt:166 */
  473    767   
    pub fn string_set(&self) -> ::std::option::Option<&crate::model::StringSet> {
         768  +
        /* StructureGenerator.kt:170 */
  474    769   
        self.string_set.as_ref()
         770  +
        /* StructureGenerator.kt:166 */
  475    771   
    }
         772  +
    /* StructureGenerator.kt:231 */
  476    773   
    #[allow(missing_docs)] // documentation missing in model
         774  +
                           /* StructureGenerator.kt:166 */
  477    775   
    pub fn integer_list(&self) -> ::std::option::Option<&[i32]> {
         776  +
        /* StructureGenerator.kt:169 */
  478    777   
        self.integer_list.as_deref()
         778  +
        /* StructureGenerator.kt:166 */
  479    779   
    }
         780  +
    /* StructureGenerator.kt:231 */
  480    781   
    #[allow(missing_docs)] // documentation missing in model
         782  +
                           /* StructureGenerator.kt:166 */
  481    783   
    pub fn boolean_list(&self) -> ::std::option::Option<&[bool]> {
         784  +
        /* StructureGenerator.kt:169 */
  482    785   
        self.boolean_list.as_deref()
         786  +
        /* StructureGenerator.kt:166 */
  483    787   
    }
         788  +
    /* StructureGenerator.kt:231 */
  484    789   
    #[allow(missing_docs)] // documentation missing in model
         790  +
                           /* StructureGenerator.kt:166 */
  485    791   
    pub fn timestamp_list(&self) -> ::std::option::Option<&[::aws_smithy_types::DateTime]> {
         792  +
        /* StructureGenerator.kt:169 */
  486    793   
        self.timestamp_list.as_deref()
         794  +
        /* StructureGenerator.kt:166 */
  487    795   
    }
         796  +
    /* StructureGenerator.kt:231 */
  488    797   
    #[allow(missing_docs)] // documentation missing in model
         798  +
                           /* StructureGenerator.kt:166 */
  489    799   
    pub fn enum_list(&self) -> ::std::option::Option<&[crate::model::FooEnum]> {
         800  +
        /* StructureGenerator.kt:169 */
  490    801   
        self.enum_list.as_deref()
         802  +
        /* StructureGenerator.kt:166 */
  491    803   
    }
         804  +
    /* StructureGenerator.kt:231 */
  492    805   
    #[allow(missing_docs)] // documentation missing in model
         806  +
                           /* StructureGenerator.kt:166 */
  493    807   
    pub fn int_enum_list(&self) -> ::std::option::Option<&[i32]> {
         808  +
        /* StructureGenerator.kt:169 */
  494    809   
        self.int_enum_list.as_deref()
         810  +
        /* StructureGenerator.kt:166 */
  495    811   
    }
  496         -
    /// A list of lists of strings.
         812  +
    /// /* StructureGenerator.kt:231 */A list of lists of strings.
         813  +
    /* StructureGenerator.kt:166 */
  497    814   
    pub fn nested_string_list(
  498    815   
        &self,
  499    816   
    ) -> ::std::option::Option<&[::std::vec::Vec<::std::string::String>]> {
         817  +
        /* StructureGenerator.kt:169 */
  500    818   
        self.nested_string_list.as_deref()
         819  +
        /* StructureGenerator.kt:166 */
  501    820   
    }
         821  +
    /* StructureGenerator.kt:231 */
  502    822   
    #[allow(missing_docs)] // documentation missing in model
         823  +
                           /* StructureGenerator.kt:166 */
  503    824   
    pub fn structure_list(&self) -> ::std::option::Option<&[crate::model::StructureListMember]> {
         825  +
        /* StructureGenerator.kt:169 */
  504    826   
        self.structure_list.as_deref()
         827  +
        /* StructureGenerator.kt:166 */
  505    828   
    }
         829  +
    /* StructureGenerator.kt:231 */
  506    830   
    #[allow(missing_docs)] // documentation missing in model
         831  +
                           /* StructureGenerator.kt:166 */
  507    832   
    pub fn blob_list(&self) -> ::std::option::Option<&[::aws_smithy_types::Blob]> {
         833  +
        /* StructureGenerator.kt:169 */
  508    834   
        self.blob_list.as_deref()
         835  +
        /* StructureGenerator.kt:166 */
  509    836   
    }
         837  +
    /* StructureGenerator.kt:135 */
  510    838   
}
         839  +
/* ServerCodegenVisitor.kt:345 */
  511    840   
impl RpcV2CborListsOutput {
  512         -
    /// Creates a new builder-style object to manufacture [`RpcV2CborListsOutput`](crate::output::RpcV2CborListsOutput).
         841  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`RpcV2CborListsOutput`](crate::output::RpcV2CborListsOutput).
         842  +
    /* ServerBuilderGenerator.kt:295 */
  513    843   
    pub fn builder() -> crate::output::rpc_v2_cbor_lists_output::Builder {
         844  +
        /* ServerBuilderGenerator.kt:296 */
  514    845   
        crate::output::rpc_v2_cbor_lists_output::Builder::default()
         846  +
        /* ServerBuilderGenerator.kt:295 */
  515    847   
    }
         848  +
    /* ServerCodegenVisitor.kt:345 */
  516    849   
}
  517    850   
         851  +
/* StructureGenerator.kt:197 */
  518    852   
#[allow(missing_docs)] // documentation missing in model
         853  +
/* RustType.kt:516 */
  519    854   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
  520         -
pub struct SimpleScalarPropertiesOutput {
         855  +
pub /* StructureGenerator.kt:201 */ struct SimpleScalarPropertiesOutput {
         856  +
    /* StructureGenerator.kt:231 */
  521    857   
    #[allow(missing_docs)] // documentation missing in model
  522    858   
    pub true_boolean_value: ::std::option::Option<bool>,
         859  +
    /* StructureGenerator.kt:231 */
  523    860   
    #[allow(missing_docs)] // documentation missing in model
  524    861   
    pub false_boolean_value: ::std::option::Option<bool>,
         862  +
    /* StructureGenerator.kt:231 */
  525    863   
    #[allow(missing_docs)] // documentation missing in model
  526    864   
    pub byte_value: ::std::option::Option<i8>,
         865  +
    /* StructureGenerator.kt:231 */
  527    866   
    #[allow(missing_docs)] // documentation missing in model
  528    867   
    pub double_value: ::std::option::Option<f64>,
         868  +
    /* StructureGenerator.kt:231 */
  529    869   
    #[allow(missing_docs)] // documentation missing in model
  530    870   
    pub float_value: ::std::option::Option<f32>,
         871  +
    /* StructureGenerator.kt:231 */
  531    872   
    #[allow(missing_docs)] // documentation missing in model
  532    873   
    pub integer_value: ::std::option::Option<i32>,
         874  +
    /* StructureGenerator.kt:231 */
  533    875   
    #[allow(missing_docs)] // documentation missing in model
  534    876   
    pub long_value: ::std::option::Option<i64>,
         877  +
    /* StructureGenerator.kt:231 */
  535    878   
    #[allow(missing_docs)] // documentation missing in model
  536    879   
    pub short_value: ::std::option::Option<i16>,
         880  +
    /* StructureGenerator.kt:231 */
  537    881   
    #[allow(missing_docs)] // documentation missing in model
  538    882   
    pub string_value: ::std::option::Option<::std::string::String>,
         883  +
    /* StructureGenerator.kt:231 */
  539    884   
    #[allow(missing_docs)] // documentation missing in model
  540    885   
    pub blob_value: ::std::option::Option<::aws_smithy_types::Blob>,
         886  +
    /* StructureGenerator.kt:201 */
  541    887   
}
         888  +
/* StructureGenerator.kt:135 */
  542    889   
impl SimpleScalarPropertiesOutput {
         890  +
    /* StructureGenerator.kt:231 */
  543    891   
    #[allow(missing_docs)] // documentation missing in model
         892  +
                           /* StructureGenerator.kt:166 */
  544    893   
    pub fn true_boolean_value(&self) -> ::std::option::Option<bool> {
         894  +
        /* StructureGenerator.kt:168 */
  545    895   
        self.true_boolean_value
         896  +
        /* StructureGenerator.kt:166 */
  546    897   
    }
         898  +
    /* StructureGenerator.kt:231 */
  547    899   
    #[allow(missing_docs)] // documentation missing in model
         900  +
                           /* StructureGenerator.kt:166 */
  548    901   
    pub fn false_boolean_value(&self) -> ::std::option::Option<bool> {
         902  +
        /* StructureGenerator.kt:168 */
  549    903   
        self.false_boolean_value
         904  +
        /* StructureGenerator.kt:166 */
  550    905   
    }
         906  +
    /* StructureGenerator.kt:231 */
  551    907   
    #[allow(missing_docs)] // documentation missing in model
         908  +
                           /* StructureGenerator.kt:166 */
  552    909   
    pub fn byte_value(&self) -> ::std::option::Option<i8> {
         910  +
        /* StructureGenerator.kt:168 */
  553    911   
        self.byte_value
         912  +
        /* StructureGenerator.kt:166 */
  554    913   
    }
         914  +
    /* StructureGenerator.kt:231 */
  555    915   
    #[allow(missing_docs)] // documentation missing in model
         916  +
                           /* StructureGenerator.kt:166 */
  556    917   
    pub fn double_value(&self) -> ::std::option::Option<f64> {
         918  +
        /* StructureGenerator.kt:168 */
  557    919   
        self.double_value
         920  +
        /* StructureGenerator.kt:166 */
  558    921   
    }
         922  +
    /* StructureGenerator.kt:231 */
  559    923   
    #[allow(missing_docs)] // documentation missing in model
         924  +
                           /* StructureGenerator.kt:166 */
  560    925   
    pub fn float_value(&self) -> ::std::option::Option<f32> {
         926  +
        /* StructureGenerator.kt:168 */
  561    927   
        self.float_value
         928  +
        /* StructureGenerator.kt:166 */
  562    929   
    }
         930  +
    /* StructureGenerator.kt:231 */
  563    931   
    #[allow(missing_docs)] // documentation missing in model
         932  +
                           /* StructureGenerator.kt:166 */
  564    933   
    pub fn integer_value(&self) -> ::std::option::Option<i32> {
         934  +
        /* StructureGenerator.kt:168 */
  565    935   
        self.integer_value
         936  +
        /* StructureGenerator.kt:166 */
  566    937   
    }
         938  +
    /* StructureGenerator.kt:231 */
  567    939   
    #[allow(missing_docs)] // documentation missing in model
         940  +
                           /* StructureGenerator.kt:166 */
  568    941   
    pub fn long_value(&self) -> ::std::option::Option<i64> {
         942  +
        /* StructureGenerator.kt:168 */
  569    943   
        self.long_value
         944  +
        /* StructureGenerator.kt:166 */
  570    945   
    }
         946  +
    /* StructureGenerator.kt:231 */
  571    947   
    #[allow(missing_docs)] // documentation missing in model
         948  +
                           /* StructureGenerator.kt:166 */
  572    949   
    pub fn short_value(&self) -> ::std::option::Option<i16> {
         950  +
        /* StructureGenerator.kt:168 */
  573    951   
        self.short_value
         952  +
        /* StructureGenerator.kt:166 */
  574    953   
    }
         954  +
    /* StructureGenerator.kt:231 */
  575    955   
    #[allow(missing_docs)] // documentation missing in model
         956  +
                           /* StructureGenerator.kt:166 */
  576    957   
    pub fn string_value(&self) -> ::std::option::Option<&str> {
         958  +
        /* StructureGenerator.kt:169 */
  577    959   
        self.string_value.as_deref()
         960  +
        /* StructureGenerator.kt:166 */
  578    961   
    }
         962  +
    /* StructureGenerator.kt:231 */
  579    963   
    #[allow(missing_docs)] // documentation missing in model
         964  +
                           /* StructureGenerator.kt:166 */
  580    965   
    pub fn blob_value(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
         966  +
        /* StructureGenerator.kt:170 */
  581    967   
        self.blob_value.as_ref()
         968  +
        /* StructureGenerator.kt:166 */
  582    969   
    }
         970  +
    /* StructureGenerator.kt:135 */
  583    971   
}
         972  +
/* ServerCodegenVisitor.kt:345 */
  584    973   
impl SimpleScalarPropertiesOutput {
  585         -
    /// Creates a new builder-style object to manufacture [`SimpleScalarPropertiesOutput`](crate::output::SimpleScalarPropertiesOutput).
         974  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`SimpleScalarPropertiesOutput`](crate::output::SimpleScalarPropertiesOutput).
         975  +
    /* ServerBuilderGenerator.kt:295 */
  586    976   
    pub fn builder() -> crate::output::simple_scalar_properties_output::Builder {
         977  +
        /* ServerBuilderGenerator.kt:296 */
  587    978   
        crate::output::simple_scalar_properties_output::Builder::default()
         979  +
        /* ServerBuilderGenerator.kt:295 */
  588    980   
    }
         981  +
    /* ServerCodegenVisitor.kt:345 */
  589    982   
}
  590    983   
         984  +
/* StructureGenerator.kt:197 */
  591    985   
#[allow(missing_docs)] // documentation missing in model
         986  +
/* RustType.kt:516 */
  592    987   
#[derive(
  593    988   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  594    989   
)]
  595         -
pub struct OptionalInputOutputOutput {
         990  +
pub /* StructureGenerator.kt:201 */ struct OptionalInputOutputOutput {
         991  +
    /* StructureGenerator.kt:231 */
  596    992   
    #[allow(missing_docs)] // documentation missing in model
  597    993   
    pub value: ::std::option::Option<::std::string::String>,
         994  +
    /* StructureGenerator.kt:201 */
  598    995   
}
         996  +
/* StructureGenerator.kt:135 */
  599    997   
impl OptionalInputOutputOutput {
         998  +
    /* StructureGenerator.kt:231 */
  600    999   
    #[allow(missing_docs)] // documentation missing in model
        1000  +
                           /* StructureGenerator.kt:166 */
  601   1001   
    pub fn value(&self) -> ::std::option::Option<&str> {
        1002  +
        /* StructureGenerator.kt:169 */
  602   1003   
        self.value.as_deref()
        1004  +
        /* StructureGenerator.kt:166 */
  603   1005   
    }
        1006  +
    /* StructureGenerator.kt:135 */
  604   1007   
}
        1008  +
/* ServerCodegenVisitor.kt:345 */
  605   1009   
impl OptionalInputOutputOutput {
  606         -
    /// Creates a new builder-style object to manufacture [`OptionalInputOutputOutput`](crate::output::OptionalInputOutputOutput).
        1010  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OptionalInputOutputOutput`](crate::output::OptionalInputOutputOutput).
        1011  +
    /* ServerBuilderGenerator.kt:295 */
  607   1012   
    pub fn builder() -> crate::output::optional_input_output_output::Builder {
        1013  +
        /* ServerBuilderGenerator.kt:296 */
  608   1014   
        crate::output::optional_input_output_output::Builder::default()
        1015  +
        /* ServerBuilderGenerator.kt:295 */
  609   1016   
    }
        1017  +
    /* ServerCodegenVisitor.kt:345 */
  610   1018   
}
  611   1019   
        1020  +
/* StructureGenerator.kt:197 */
  612   1021   
#[allow(missing_docs)] // documentation missing in model
        1022  +
/* RustType.kt:516 */
  613   1023   
#[derive(
  614   1024   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  615   1025   
)]
  616         -
pub struct EmptyInputOutputOutput {}
        1026  +
pub /* StructureGenerator.kt:201 */ struct EmptyInputOutputOutput {/* StructureGenerator.kt:201 */}
        1027  +
/* ServerCodegenVisitor.kt:345 */
  617   1028   
impl EmptyInputOutputOutput {
  618         -
    /// Creates a new builder-style object to manufacture [`EmptyInputOutputOutput`](crate::output::EmptyInputOutputOutput).
        1029  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`EmptyInputOutputOutput`](crate::output::EmptyInputOutputOutput).
        1030  +
    /* ServerBuilderGenerator.kt:295 */
  619   1031   
    pub fn builder() -> crate::output::empty_input_output_output::Builder {
        1032  +
        /* ServerBuilderGenerator.kt:296 */
  620   1033   
        crate::output::empty_input_output_output::Builder::default()
        1034  +
        /* ServerBuilderGenerator.kt:295 */
  621   1035   
    }
        1036  +
    /* ServerCodegenVisitor.kt:345 */
  622   1037   
}
  623   1038   
        1039  +
/* StructureGenerator.kt:197 */
  624   1040   
#[allow(missing_docs)] // documentation missing in model
        1041  +
/* RustType.kt:516 */
  625   1042   
#[derive(
  626   1043   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  627   1044   
)]
  628         -
pub struct NoInputOutputOutput {}
        1045  +
pub /* StructureGenerator.kt:201 */ struct NoInputOutputOutput {/* StructureGenerator.kt:201 */}
        1046  +
/* ServerCodegenVisitor.kt:345 */
  629   1047   
impl NoInputOutputOutput {
  630         -
    /// Creates a new builder-style object to manufacture [`NoInputOutputOutput`](crate::output::NoInputOutputOutput).
        1048  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`NoInputOutputOutput`](crate::output::NoInputOutputOutput).
        1049  +
    /* ServerBuilderGenerator.kt:295 */
  631   1050   
    pub fn builder() -> crate::output::no_input_output_output::Builder {
        1051  +
        /* ServerBuilderGenerator.kt:296 */
  632   1052   
        crate::output::no_input_output_output::Builder::default()
        1053  +
        /* ServerBuilderGenerator.kt:295 */
  633   1054   
    }
        1055  +
    /* ServerCodegenVisitor.kt:345 */
  634   1056   
}
  635         -
/// See [`Float16Output`](crate::output::Float16Output).
        1057  +
/// /* ServerBuilderGenerator.kt:171 */See [`Float16Output`](crate::output::Float16Output).
  636   1058   
pub mod float16_output {
  637   1059   
        1060  +
    /* ServerBuilderGenerator.kt:461 */
  638   1061   
    impl ::std::convert::From<Builder> for crate::output::Float16Output {
  639   1062   
        fn from(builder: Builder) -> Self {
  640   1063   
            builder.build()
  641   1064   
        }
  642   1065   
    }
  643         -
    /// A builder for [`Float16Output`](crate::output::Float16Output).
        1066  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`Float16Output`](crate::output::Float16Output).
        1067  +
    /* RustType.kt:516 */
  644   1068   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        1069  +
    /* ServerBuilderGenerator.kt:211 */
  645   1070   
    pub struct Builder {
        1071  +
        /* ServerBuilderGenerator.kt:308 */
  646   1072   
        pub(crate) value: ::std::option::Option<f64>,
        1073  +
        /* ServerBuilderGenerator.kt:211 */
  647   1074   
    }
        1075  +
    /* ServerBuilderGenerator.kt:215 */
  648   1076   
    impl Builder {
        1077  +
        /* ServerBuilderGenerator.kt:331 */
  649   1078   
        #[allow(missing_docs)] // documentation missing in model
        1079  +
                               /* ServerBuilderGenerator.kt:343 */
  650   1080   
        pub fn value(mut self, input: ::std::option::Option<f64>) -> Self {
  651         -
            self.value = input;
        1081  +
            /* ServerBuilderGenerator.kt:344 */
        1082  +
            self.value =
        1083  +
                /* ServerBuilderGenerator.kt:376 */input
        1084  +
            /* ServerBuilderGenerator.kt:344 */;
  652   1085   
            self
        1086  +
            /* ServerBuilderGenerator.kt:343 */
  653   1087   
        }
  654         -
        /// Consumes the builder and constructs a [`Float16Output`](crate::output::Float16Output).
        1088  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`Float16Output`](crate::output::Float16Output).
        1089  +
        /* ServerBuilderGenerator.kt:271 */
  655   1090   
        pub fn build(self) -> crate::output::Float16Output {
  656   1091   
            self.build_enforcing_all_constraints()
  657   1092   
        }
        1093  +
        /* ServerBuilderGenerator.kt:283 */
  658   1094   
        fn build_enforcing_all_constraints(self) -> crate::output::Float16Output {
  659         -
            crate::output::Float16Output { value: self.value }
        1095  +
            /* ServerBuilderGenerator.kt:542 */
        1096  +
            crate::output::Float16Output {
        1097  +
                /* ServerBuilderGenerator.kt:546 */
        1098  +
                value: self.value,
        1099  +
                /* ServerBuilderGenerator.kt:542 */
  660   1100   
            }
        1101  +
            /* ServerBuilderGenerator.kt:283 */
  661   1102   
        }
        1103  +
        /* ServerBuilderGenerator.kt:215 */
        1104  +
    }
        1105  +
        1106  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
  662   1107   
}
  663         -
/// See [`SparseNullsOperationOutput`](crate::output::SparseNullsOperationOutput).
        1108  +
/// /* ServerBuilderGenerator.kt:171 */See [`SparseNullsOperationOutput`](crate::output::SparseNullsOperationOutput).
  664   1109   
pub mod sparse_nulls_operation_output {
  665   1110   
        1111  +
    /* ServerBuilderGenerator.kt:461 */
  666   1112   
    impl ::std::convert::From<Builder> for crate::output::SparseNullsOperationOutput {
  667   1113   
        fn from(builder: Builder) -> Self {
  668   1114   
            builder.build()
  669   1115   
        }
  670   1116   
    }
  671         -
    /// A builder for [`SparseNullsOperationOutput`](crate::output::SparseNullsOperationOutput).
        1117  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`SparseNullsOperationOutput`](crate::output::SparseNullsOperationOutput).
        1118  +
    /* RustType.kt:516 */
  672   1119   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        1120  +
    /* ServerBuilderGenerator.kt:211 */
  673   1121   
    pub struct Builder {
        1122  +
        /* ServerBuilderGenerator.kt:308 */
  674   1123   
        pub(crate) sparse_string_list:
  675   1124   
            ::std::option::Option<::std::vec::Vec<::std::option::Option<::std::string::String>>>,
        1125  +
        /* ServerBuilderGenerator.kt:308 */
  676   1126   
        pub(crate) sparse_string_map: ::std::option::Option<
  677   1127   
            ::std::collections::HashMap<
  678   1128   
                ::std::string::String,
  679   1129   
                ::std::option::Option<::std::string::String>,
  680   1130   
            >,
  681   1131   
        >,
        1132  +
        /* ServerBuilderGenerator.kt:211 */
  682   1133   
    }
        1134  +
    /* ServerBuilderGenerator.kt:215 */
  683   1135   
    impl Builder {
        1136  +
        /* ServerBuilderGenerator.kt:331 */
  684   1137   
        #[allow(missing_docs)] // documentation missing in model
        1138  +
                               /* ServerBuilderGenerator.kt:343 */
  685   1139   
        pub fn sparse_string_list(
  686   1140   
            mut self,
  687   1141   
            input: ::std::option::Option<
  688   1142   
                ::std::vec::Vec<::std::option::Option<::std::string::String>>,
  689   1143   
            >,
  690   1144   
        ) -> Self {
  691         -
            self.sparse_string_list = input;
        1145  +
            /* ServerBuilderGenerator.kt:344 */
        1146  +
            self.sparse_string_list =
        1147  +
                /* ServerBuilderGenerator.kt:376 */input
        1148  +
            /* ServerBuilderGenerator.kt:344 */;
  692   1149   
            self
        1150  +
            /* ServerBuilderGenerator.kt:343 */
  693   1151   
        }
        1152  +
        /* ServerBuilderGenerator.kt:331 */
  694   1153   
        #[allow(missing_docs)] // documentation missing in model
        1154  +
                               /* ServerBuilderGenerator.kt:343 */
  695   1155   
        pub fn sparse_string_map(
  696   1156   
            mut self,
  697   1157   
            input: ::std::option::Option<
  698   1158   
                ::std::collections::HashMap<
  699   1159   
                    ::std::string::String,
  700   1160   
                    ::std::option::Option<::std::string::String>,
  701   1161   
                >,
  702   1162   
            >,
  703   1163   
        ) -> Self {
  704         -
            self.sparse_string_map = input;
        1164  +
            /* ServerBuilderGenerator.kt:344 */
        1165  +
            self.sparse_string_map =
        1166  +
                /* ServerBuilderGenerator.kt:376 */input
        1167  +
            /* ServerBuilderGenerator.kt:344 */;
  705   1168   
            self
        1169  +
            /* ServerBuilderGenerator.kt:343 */
  706   1170   
        }
  707         -
        /// Consumes the builder and constructs a [`SparseNullsOperationOutput`](crate::output::SparseNullsOperationOutput).
        1171  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`SparseNullsOperationOutput`](crate::output::SparseNullsOperationOutput).
        1172  +
        /* ServerBuilderGenerator.kt:271 */
  708   1173   
        pub fn build(self) -> crate::output::SparseNullsOperationOutput {
  709   1174   
            self.build_enforcing_all_constraints()
  710   1175   
        }
        1176  +
        /* ServerBuilderGenerator.kt:283 */
  711   1177   
        fn build_enforcing_all_constraints(self) -> crate::output::SparseNullsOperationOutput {
        1178  +
            /* ServerBuilderGenerator.kt:542 */
  712   1179   
            crate::output::SparseNullsOperationOutput {
        1180  +
                /* ServerBuilderGenerator.kt:546 */
  713   1181   
                sparse_string_list: self.sparse_string_list,
        1182  +
                /* ServerBuilderGenerator.kt:546 */
  714   1183   
                sparse_string_map: self.sparse_string_map,
        1184  +
                /* ServerBuilderGenerator.kt:542 */
  715   1185   
            }
        1186  +
            /* ServerBuilderGenerator.kt:283 */
  716   1187   
        }
        1188  +
        /* ServerBuilderGenerator.kt:215 */
  717   1189   
    }
        1190  +
        1191  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
  718   1192   
}
  719         -
/// See [`OperationWithDefaultsOutput`](crate::output::OperationWithDefaultsOutput).
        1193  +
/// /* ServerBuilderGenerator.kt:171 */See [`OperationWithDefaultsOutput`](crate::output::OperationWithDefaultsOutput).
  720   1194   
pub mod operation_with_defaults_output {
  721   1195   
        1196  +
    /* ServerBuilderGenerator.kt:461 */
  722   1197   
    impl ::std::convert::From<Builder> for crate::output::OperationWithDefaultsOutput {
  723   1198   
        fn from(builder: Builder) -> Self {
  724   1199   
            builder.build()
  725   1200   
        }
  726   1201   
    }
  727         -
    /// A builder for [`OperationWithDefaultsOutput`](crate::output::OperationWithDefaultsOutput).
        1202  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OperationWithDefaultsOutput`](crate::output::OperationWithDefaultsOutput).
        1203  +
    /* RustType.kt:516 */
  728   1204   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        1205  +
    /* ServerBuilderGenerator.kt:211 */
  729   1206   
    pub struct Builder {
        1207  +
        /* ServerBuilderGenerator.kt:308 */
  730   1208   
        pub(crate) default_string: ::std::option::Option<::std::string::String>,
        1209  +
        /* ServerBuilderGenerator.kt:308 */
  731   1210   
        pub(crate) default_boolean: ::std::option::Option<bool>,
        1211  +
        /* ServerBuilderGenerator.kt:308 */
  732   1212   
        pub(crate) default_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        1213  +
        /* ServerBuilderGenerator.kt:308 */
  733   1214   
        pub(crate) default_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
        1215  +
        /* ServerBuilderGenerator.kt:308 */
  734   1216   
        pub(crate) default_blob: ::std::option::Option<::aws_smithy_types::Blob>,
        1217  +
        /* ServerBuilderGenerator.kt:308 */
  735   1218   
        pub(crate) default_byte: ::std::option::Option<i8>,
        1219  +
        /* ServerBuilderGenerator.kt:308 */
  736   1220   
        pub(crate) default_short: ::std::option::Option<i16>,
        1221  +
        /* ServerBuilderGenerator.kt:308 */
  737   1222   
        pub(crate) default_integer: ::std::option::Option<i32>,
        1223  +
        /* ServerBuilderGenerator.kt:308 */
  738   1224   
        pub(crate) default_long: ::std::option::Option<i64>,
        1225  +
        /* ServerBuilderGenerator.kt:308 */
  739   1226   
        pub(crate) default_float: ::std::option::Option<f32>,
        1227  +
        /* ServerBuilderGenerator.kt:308 */
  740   1228   
        pub(crate) default_double: ::std::option::Option<f64>,
        1229  +
        /* ServerBuilderGenerator.kt:308 */
  741   1230   
        pub(crate) default_map: ::std::option::Option<
  742   1231   
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
  743   1232   
        >,
        1233  +
        /* ServerBuilderGenerator.kt:308 */
  744   1234   
        pub(crate) default_enum: ::std::option::Option<crate::model::TestEnum>,
        1235  +
        /* ServerBuilderGenerator.kt:308 */
  745   1236   
        pub(crate) default_int_enum: ::std::option::Option<i32>,
        1237  +
        /* ServerBuilderGenerator.kt:308 */
  746   1238   
        pub(crate) empty_string: ::std::option::Option<::std::string::String>,
        1239  +
        /* ServerBuilderGenerator.kt:308 */
  747   1240   
        pub(crate) false_boolean: ::std::option::Option<bool>,
        1241  +
        /* ServerBuilderGenerator.kt:308 */
  748   1242   
        pub(crate) empty_blob: ::std::option::Option<::aws_smithy_types::Blob>,
  749         -
        pub(crate) zero_byte: ::std::option::Option<i8>,
        1243  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) zero_byte: ::std::option::Option<i8>,
        1244  +
        /* ServerBuilderGenerator.kt:308 */
  750   1245   
        pub(crate) zero_short: ::std::option::Option<i16>,
        1246  +
        /* ServerBuilderGenerator.kt:308 */
  751   1247   
        pub(crate) zero_integer: ::std::option::Option<i32>,
  752         -
        pub(crate) zero_long: ::std::option::Option<i64>,
        1248  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) zero_long: ::std::option::Option<i64>,
        1249  +
        /* ServerBuilderGenerator.kt:308 */
  753   1250   
        pub(crate) zero_float: ::std::option::Option<f32>,
        1251  +
        /* ServerBuilderGenerator.kt:308 */
  754   1252   
        pub(crate) zero_double: ::std::option::Option<f64>,
        1253  +
        /* ServerBuilderGenerator.kt:211 */
  755   1254   
    }
        1255  +
    /* ServerBuilderGenerator.kt:215 */
  756   1256   
    impl Builder {
        1257  +
        /* ServerBuilderGenerator.kt:331 */
  757   1258   
        #[allow(missing_docs)] // documentation missing in model
        1259  +
                               /* ServerBuilderGenerator.kt:343 */
  758   1260   
        pub fn default_string(mut self, input: ::std::string::String) -> Self {
  759         -
            self.default_string = Some(input);
        1261  +
            /* ServerBuilderGenerator.kt:344 */
        1262  +
            self.default_string =
        1263  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1264  +
                    /* ServerBuilderGenerator.kt:376 */input
        1265  +
                /* ServerBuilderGenerator.kt:345 */)
        1266  +
            /* ServerBuilderGenerator.kt:344 */;
  760   1267   
            self
        1268  +
            /* ServerBuilderGenerator.kt:343 */
  761   1269   
        }
        1270  +
        /* ServerBuilderGenerator.kt:331 */
  762   1271   
        #[allow(missing_docs)] // documentation missing in model
        1272  +
                               /* ServerBuilderGenerator.kt:343 */
  763   1273   
        pub fn default_boolean(mut self, input: bool) -> Self {
  764         -
            self.default_boolean = Some(input);
        1274  +
            /* ServerBuilderGenerator.kt:344 */
        1275  +
            self.default_boolean =
        1276  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1277  +
                    /* ServerBuilderGenerator.kt:376 */input
        1278  +
                /* ServerBuilderGenerator.kt:345 */)
        1279  +
            /* ServerBuilderGenerator.kt:344 */;
  765   1280   
            self
        1281  +
            /* ServerBuilderGenerator.kt:343 */
  766   1282   
        }
        1283  +
        /* ServerBuilderGenerator.kt:331 */
  767   1284   
        #[allow(missing_docs)] // documentation missing in model
        1285  +
                               /* ServerBuilderGenerator.kt:343 */
  768   1286   
        pub fn default_list(mut self, input: ::std::vec::Vec<::std::string::String>) -> Self {
  769         -
            self.default_list = Some(input);
        1287  +
            /* ServerBuilderGenerator.kt:344 */
        1288  +
            self.default_list =
        1289  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1290  +
                    /* ServerBuilderGenerator.kt:376 */input
        1291  +
                /* ServerBuilderGenerator.kt:345 */)
        1292  +
            /* ServerBuilderGenerator.kt:344 */;
  770   1293   
            self
        1294  +
            /* ServerBuilderGenerator.kt:343 */
  771   1295   
        }
        1296  +
        /* ServerBuilderGenerator.kt:331 */
  772   1297   
        #[allow(missing_docs)] // documentation missing in model
        1298  +
                               /* ServerBuilderGenerator.kt:343 */
  773   1299   
        pub fn default_timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
  774         -
            self.default_timestamp = Some(input);
        1300  +
            /* ServerBuilderGenerator.kt:344 */
        1301  +
            self.default_timestamp =
        1302  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1303  +
                    /* ServerBuilderGenerator.kt:376 */input
        1304  +
                /* ServerBuilderGenerator.kt:345 */)
        1305  +
            /* ServerBuilderGenerator.kt:344 */;
  775   1306   
            self
        1307  +
            /* ServerBuilderGenerator.kt:343 */
  776   1308   
        }
        1309  +
        /* ServerBuilderGenerator.kt:331 */
  777   1310   
        #[allow(missing_docs)] // documentation missing in model
        1311  +
                               /* ServerBuilderGenerator.kt:343 */
  778   1312   
        pub fn default_blob(mut self, input: ::aws_smithy_types::Blob) -> Self {
  779         -
            self.default_blob = Some(input);
        1313  +
            /* ServerBuilderGenerator.kt:344 */
        1314  +
            self.default_blob =
        1315  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1316  +
                    /* ServerBuilderGenerator.kt:376 */input
        1317  +
                /* ServerBuilderGenerator.kt:345 */)
        1318  +
            /* ServerBuilderGenerator.kt:344 */;
  780   1319   
            self
        1320  +
            /* ServerBuilderGenerator.kt:343 */
  781   1321   
        }
        1322  +
        /* ServerBuilderGenerator.kt:331 */
  782   1323   
        #[allow(missing_docs)] // documentation missing in model
        1324  +
                               /* ServerBuilderGenerator.kt:343 */
  783   1325   
        pub fn default_byte(mut self, input: i8) -> Self {
  784         -
            self.default_byte = Some(input);
        1326  +
            /* ServerBuilderGenerator.kt:344 */
        1327  +
            self.default_byte =
        1328  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1329  +
                    /* ServerBuilderGenerator.kt:376 */input
        1330  +
                /* ServerBuilderGenerator.kt:345 */)
        1331  +
            /* ServerBuilderGenerator.kt:344 */;
  785   1332   
            self
        1333  +
            /* ServerBuilderGenerator.kt:343 */
  786   1334   
        }
        1335  +
        /* ServerBuilderGenerator.kt:331 */
  787   1336   
        #[allow(missing_docs)] // documentation missing in model
        1337  +
                               /* ServerBuilderGenerator.kt:343 */
  788   1338   
        pub fn default_short(mut self, input: i16) -> Self {
  789         -
            self.default_short = Some(input);
        1339  +
            /* ServerBuilderGenerator.kt:344 */
        1340  +
            self.default_short =
        1341  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1342  +
                    /* ServerBuilderGenerator.kt:376 */input
        1343  +
                /* ServerBuilderGenerator.kt:345 */)
        1344  +
            /* ServerBuilderGenerator.kt:344 */;
  790   1345   
            self
        1346  +
            /* ServerBuilderGenerator.kt:343 */
  791   1347   
        }
        1348  +
        /* ServerBuilderGenerator.kt:331 */
  792   1349   
        #[allow(missing_docs)] // documentation missing in model
        1350  +
                               /* ServerBuilderGenerator.kt:343 */
  793   1351   
        pub fn default_integer(mut self, input: i32) -> Self {
  794         -
            self.default_integer = Some(input);
        1352  +
            /* ServerBuilderGenerator.kt:344 */
        1353  +
            self.default_integer =
        1354  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1355  +
                    /* ServerBuilderGenerator.kt:376 */input
        1356  +
                /* ServerBuilderGenerator.kt:345 */)
        1357  +
            /* ServerBuilderGenerator.kt:344 */;
  795   1358   
            self
        1359  +
            /* ServerBuilderGenerator.kt:343 */
  796   1360   
        }
        1361  +
        /* ServerBuilderGenerator.kt:331 */
  797   1362   
        #[allow(missing_docs)] // documentation missing in model
        1363  +
                               /* ServerBuilderGenerator.kt:343 */
  798   1364   
        pub fn default_long(mut self, input: i64) -> Self {
  799         -
            self.default_long = Some(input);
        1365  +
            /* ServerBuilderGenerator.kt:344 */
        1366  +
            self.default_long =
        1367  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1368  +
                    /* ServerBuilderGenerator.kt:376 */input
        1369  +
                /* ServerBuilderGenerator.kt:345 */)
        1370  +
            /* ServerBuilderGenerator.kt:344 */;
  800   1371   
            self
        1372  +
            /* ServerBuilderGenerator.kt:343 */
  801   1373   
        }
        1374  +
        /* ServerBuilderGenerator.kt:331 */
  802   1375   
        #[allow(missing_docs)] // documentation missing in model
        1376  +
                               /* ServerBuilderGenerator.kt:343 */
  803   1377   
        pub fn default_float(mut self, input: f32) -> Self {
  804         -
            self.default_float = Some(input);
        1378  +
            /* ServerBuilderGenerator.kt:344 */
        1379  +
            self.default_float =
        1380  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1381  +
                    /* ServerBuilderGenerator.kt:376 */input
        1382  +
                /* ServerBuilderGenerator.kt:345 */)
        1383  +
            /* ServerBuilderGenerator.kt:344 */;
  805   1384   
            self
        1385  +
            /* ServerBuilderGenerator.kt:343 */
  806   1386   
        }
        1387  +
        /* ServerBuilderGenerator.kt:331 */
  807   1388   
        #[allow(missing_docs)] // documentation missing in model
        1389  +
                               /* ServerBuilderGenerator.kt:343 */
  808   1390   
        pub fn default_double(mut self, input: f64) -> Self {
  809         -
            self.default_double = Some(input);
        1391  +
            /* ServerBuilderGenerator.kt:344 */
        1392  +
            self.default_double =
        1393  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1394  +
                    /* ServerBuilderGenerator.kt:376 */input
        1395  +
                /* ServerBuilderGenerator.kt:345 */)
        1396  +
            /* ServerBuilderGenerator.kt:344 */;
  810   1397   
            self
        1398  +
            /* ServerBuilderGenerator.kt:343 */
  811   1399   
        }
        1400  +
        /* ServerBuilderGenerator.kt:331 */
  812   1401   
        #[allow(missing_docs)] // documentation missing in model
        1402  +
                               /* ServerBuilderGenerator.kt:343 */
  813   1403   
        pub fn default_map(
  814   1404   
            mut self,
  815   1405   
            input: ::std::collections::HashMap<::std::string::String, ::std::string::String>,
  816   1406   
        ) -> Self {
  817         -
            self.default_map = Some(input);
        1407  +
            /* ServerBuilderGenerator.kt:344 */
        1408  +
            self.default_map =
        1409  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1410  +
                    /* ServerBuilderGenerator.kt:376 */input
        1411  +
                /* ServerBuilderGenerator.kt:345 */)
        1412  +
            /* ServerBuilderGenerator.kt:344 */;
  818   1413   
            self
        1414  +
            /* ServerBuilderGenerator.kt:343 */
  819   1415   
        }
        1416  +
        /* ServerBuilderGenerator.kt:331 */
  820   1417   
        #[allow(missing_docs)] // documentation missing in model
        1418  +
                               /* ServerBuilderGenerator.kt:343 */
  821   1419   
        pub fn default_enum(mut self, input: crate::model::TestEnum) -> Self {
  822         -
            self.default_enum = Some(input);
        1420  +
            /* ServerBuilderGenerator.kt:344 */
        1421  +
            self.default_enum =
        1422  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1423  +
                    /* ServerBuilderGenerator.kt:376 */input
        1424  +
                /* ServerBuilderGenerator.kt:345 */)
        1425  +
            /* ServerBuilderGenerator.kt:344 */;
  823   1426   
            self
        1427  +
            /* ServerBuilderGenerator.kt:343 */
  824   1428   
        }
        1429  +
        /* ServerBuilderGenerator.kt:331 */
  825   1430   
        #[allow(missing_docs)] // documentation missing in model
        1431  +
                               /* ServerBuilderGenerator.kt:343 */
  826   1432   
        pub fn default_int_enum(mut self, input: i32) -> Self {
  827         -
            self.default_int_enum = Some(input);
        1433  +
            /* ServerBuilderGenerator.kt:344 */
        1434  +
            self.default_int_enum =
        1435  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1436  +
                    /* ServerBuilderGenerator.kt:376 */input
        1437  +
                /* ServerBuilderGenerator.kt:345 */)
        1438  +
            /* ServerBuilderGenerator.kt:344 */;
  828   1439   
            self
        1440  +
            /* ServerBuilderGenerator.kt:343 */
  829   1441   
        }
        1442  +
        /* ServerBuilderGenerator.kt:331 */
  830   1443   
        #[allow(missing_docs)] // documentation missing in model
        1444  +
                               /* ServerBuilderGenerator.kt:343 */
  831   1445   
        pub fn empty_string(mut self, input: ::std::string::String) -> Self {
  832         -
            self.empty_string = Some(input);
        1446  +
            /* ServerBuilderGenerator.kt:344 */
        1447  +
            self.empty_string =
        1448  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1449  +
                    /* ServerBuilderGenerator.kt:376 */input
        1450  +
                /* ServerBuilderGenerator.kt:345 */)
        1451  +
            /* ServerBuilderGenerator.kt:344 */;
  833   1452   
            self
        1453  +
            /* ServerBuilderGenerator.kt:343 */
  834   1454   
        }
        1455  +
        /* ServerBuilderGenerator.kt:331 */
  835   1456   
        #[allow(missing_docs)] // documentation missing in model
        1457  +
                               /* ServerBuilderGenerator.kt:343 */
  836   1458   
        pub fn false_boolean(mut self, input: bool) -> Self {
  837         -
            self.false_boolean = Some(input);
        1459  +
            /* ServerBuilderGenerator.kt:344 */
        1460  +
            self.false_boolean =
        1461  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1462  +
                    /* ServerBuilderGenerator.kt:376 */input
        1463  +
                /* ServerBuilderGenerator.kt:345 */)
        1464  +
            /* ServerBuilderGenerator.kt:344 */;
  838   1465   
            self
        1466  +
            /* ServerBuilderGenerator.kt:343 */
  839   1467   
        }
        1468  +
        /* ServerBuilderGenerator.kt:331 */
  840   1469   
        #[allow(missing_docs)] // documentation missing in model
        1470  +
                               /* ServerBuilderGenerator.kt:343 */
  841   1471   
        pub fn empty_blob(mut self, input: ::aws_smithy_types::Blob) -> Self {
  842         -
            self.empty_blob = Some(input);
        1472  +
            /* ServerBuilderGenerator.kt:344 */
        1473  +
            self.empty_blob =
        1474  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1475  +
                    /* ServerBuilderGenerator.kt:376 */input
        1476  +
                /* ServerBuilderGenerator.kt:345 */)
        1477  +
            /* ServerBuilderGenerator.kt:344 */;
  843   1478   
            self
        1479  +
            /* ServerBuilderGenerator.kt:343 */
  844   1480   
        }
        1481  +
        /* ServerBuilderGenerator.kt:331 */
  845   1482   
        #[allow(missing_docs)] // documentation missing in model
        1483  +
                               /* ServerBuilderGenerator.kt:343 */
  846   1484   
        pub fn zero_byte(mut self, input: i8) -> Self {
  847         -
            self.zero_byte = Some(input);
        1485  +
            /* ServerBuilderGenerator.kt:344 */
        1486  +
            self.zero_byte =
        1487  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1488  +
                    /* ServerBuilderGenerator.kt:376 */input
        1489  +
                /* ServerBuilderGenerator.kt:345 */)
        1490  +
            /* ServerBuilderGenerator.kt:344 */;
  848   1491   
            self
        1492  +
            /* ServerBuilderGenerator.kt:343 */
  849   1493   
        }
        1494  +
        /* ServerBuilderGenerator.kt:331 */
  850   1495   
        #[allow(missing_docs)] // documentation missing in model
        1496  +
                               /* ServerBuilderGenerator.kt:343 */
  851   1497   
        pub fn zero_short(mut self, input: i16) -> Self {
  852         -
            self.zero_short = Some(input);
        1498  +
            /* ServerBuilderGenerator.kt:344 */
        1499  +
            self.zero_short =
        1500  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1501  +
                    /* ServerBuilderGenerator.kt:376 */input
        1502  +
                /* ServerBuilderGenerator.kt:345 */)
        1503  +
            /* ServerBuilderGenerator.kt:344 */;
  853   1504   
            self
        1505  +
            /* ServerBuilderGenerator.kt:343 */
  854   1506   
        }
        1507  +
        /* ServerBuilderGenerator.kt:331 */
  855   1508   
        #[allow(missing_docs)] // documentation missing in model
        1509  +
                               /* ServerBuilderGenerator.kt:343 */
  856   1510   
        pub fn zero_integer(mut self, input: i32) -> Self {
  857         -
            self.zero_integer = Some(input);
        1511  +
            /* ServerBuilderGenerator.kt:344 */
        1512  +
            self.zero_integer =
        1513  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1514  +
                    /* ServerBuilderGenerator.kt:376 */input
        1515  +
                /* ServerBuilderGenerator.kt:345 */)
        1516  +
            /* ServerBuilderGenerator.kt:344 */;
  858   1517   
            self
        1518  +
            /* ServerBuilderGenerator.kt:343 */
  859   1519   
        }
        1520  +
        /* ServerBuilderGenerator.kt:331 */
  860   1521   
        #[allow(missing_docs)] // documentation missing in model
        1522  +
                               /* ServerBuilderGenerator.kt:343 */
  861   1523   
        pub fn zero_long(mut self, input: i64) -> Self {
  862         -
            self.zero_long = Some(input);
        1524  +
            /* ServerBuilderGenerator.kt:344 */
        1525  +
            self.zero_long =
        1526  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1527  +
                    /* ServerBuilderGenerator.kt:376 */input
        1528  +
                /* ServerBuilderGenerator.kt:345 */)
        1529  +
            /* ServerBuilderGenerator.kt:344 */;
  863   1530   
            self
        1531  +
            /* ServerBuilderGenerator.kt:343 */
  864   1532   
        }
        1533  +
        /* ServerBuilderGenerator.kt:331 */
  865   1534   
        #[allow(missing_docs)] // documentation missing in model
        1535  +
                               /* ServerBuilderGenerator.kt:343 */
  866   1536   
        pub fn zero_float(mut self, input: f32) -> Self {
  867         -
            self.zero_float = Some(input);
        1537  +
            /* ServerBuilderGenerator.kt:344 */
        1538  +
            self.zero_float =
        1539  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1540  +
                    /* ServerBuilderGenerator.kt:376 */input
        1541  +
                /* ServerBuilderGenerator.kt:345 */)
        1542  +
            /* ServerBuilderGenerator.kt:344 */;
  868   1543   
            self
        1544  +
            /* ServerBuilderGenerator.kt:343 */
  869   1545   
        }
        1546  +
        /* ServerBuilderGenerator.kt:331 */
  870   1547   
        #[allow(missing_docs)] // documentation missing in model
        1548  +
                               /* ServerBuilderGenerator.kt:343 */
  871   1549   
        pub fn zero_double(mut self, input: f64) -> Self {
  872         -
            self.zero_double = Some(input);
        1550  +
            /* ServerBuilderGenerator.kt:344 */
        1551  +
            self.zero_double =
        1552  +
                /* ServerBuilderGenerator.kt:345 */Some(
        1553  +
                    /* ServerBuilderGenerator.kt:376 */input
        1554  +
                /* ServerBuilderGenerator.kt:345 */)
        1555  +
            /* ServerBuilderGenerator.kt:344 */;
  873   1556   
            self
        1557  +
            /* ServerBuilderGenerator.kt:343 */
  874   1558   
        }
  875         -
        /// Consumes the builder and constructs a [`OperationWithDefaultsOutput`](crate::output::OperationWithDefaultsOutput).
        1559  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OperationWithDefaultsOutput`](crate::output::OperationWithDefaultsOutput).
        1560  +
        /* ServerBuilderGenerator.kt:271 */
  876   1561   
        pub fn build(self) -> crate::output::OperationWithDefaultsOutput {
  877   1562   
            self.build_enforcing_all_constraints()
  878   1563   
        }
        1564  +
        /* ServerBuilderGenerator.kt:283 */
  879   1565   
        fn build_enforcing_all_constraints(self) -> crate::output::OperationWithDefaultsOutput {
        1566  +
            /* ServerBuilderGenerator.kt:542 */
  880   1567   
            crate::output::OperationWithDefaultsOutput {
  881         -
                default_string: self.default_string.unwrap_or_else(
        1568  +
                /* ServerBuilderGenerator.kt:546 */
        1569  +
                default_string: self
        1570  +
                    .default_string
        1571  +
                    /* ServerBuilderGeneratorCommon.kt:139 */
        1572  +
                    .unwrap_or_else(
  882   1573   
                        #[allow(clippy::redundant_closure)]
  883   1574   
                        || String::from("hi"),
  884   1575   
                    ),
  885         -
                default_boolean: self.default_boolean.unwrap_or(true),
  886         -
                default_list: self.default_list.unwrap_or_else(
  887         -
                    #[allow(clippy::redundant_closure)]
  888         -
                    || ::std::vec::Vec::new(),
  889         -
                ),
  890         -
                default_timestamp: self.default_timestamp.unwrap_or_else(
        1576  +
                /* ServerBuilderGenerator.kt:546 */
        1577  +
                default_boolean: self
        1578  +
                    .default_boolean
        1579  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1580  +
                    .unwrap_or(true),
        1581  +
                /* ServerBuilderGenerator.kt:546 */
        1582  +
                default_list: self
        1583  +
                    .default_list
        1584  +
                    /* ServerBuilderGeneratorCommon.kt:100 */
        1585  +
                    .unwrap_or_default(),
        1586  +
                /* ServerBuilderGenerator.kt:546 */
        1587  +
                default_timestamp: self
        1588  +
                    .default_timestamp
        1589  +
                    /* ServerBuilderGeneratorCommon.kt:139 */
        1590  +
                    .unwrap_or_else(
  891   1591   
                        #[allow(clippy::redundant_closure)]
  892   1592   
                        || ::aws_smithy_types::DateTime::from_fractional_secs(0, 0_f64),
  893   1593   
                    ),
  894         -
                default_blob: self.default_blob.unwrap_or_else(
        1594  +
                /* ServerBuilderGenerator.kt:546 */
        1595  +
                default_blob: self
        1596  +
                    .default_blob
        1597  +
                    /* ServerBuilderGeneratorCommon.kt:139 */
        1598  +
                    .unwrap_or_else(
  895   1599   
                        #[allow(clippy::redundant_closure)]
  896   1600   
                        || ::aws_smithy_types::Blob::new("abc"),
  897   1601   
                    ),
  898         -
                default_byte: self.default_byte.unwrap_or(1i8),
  899         -
                default_short: self.default_short.unwrap_or(1i16),
  900         -
                default_integer: self.default_integer.unwrap_or(10i32),
  901         -
                default_long: self.default_long.unwrap_or(100i64),
  902         -
                default_float: self.default_float.unwrap_or(1.0f32),
  903         -
                default_double: self.default_double.unwrap_or(1.0f64),
  904         -
                default_map: self.default_map.unwrap_or_else(
  905         -
                    #[allow(clippy::redundant_closure)]
  906         -
                    || ::std::collections::HashMap::new(),
  907         -
                ),
  908         -
                default_enum: self.default_enum.unwrap_or(
        1602  +
                /* ServerBuilderGenerator.kt:546 */
        1603  +
                default_byte: self
        1604  +
                    .default_byte
        1605  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1606  +
                    .unwrap_or(1i8),
        1607  +
                /* ServerBuilderGenerator.kt:546 */
        1608  +
                default_short: self
        1609  +
                    .default_short
        1610  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1611  +
                    .unwrap_or(1i16),
        1612  +
                /* ServerBuilderGenerator.kt:546 */
        1613  +
                default_integer: self
        1614  +
                    .default_integer
        1615  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1616  +
                    .unwrap_or(10i32),
        1617  +
                /* ServerBuilderGenerator.kt:546 */
        1618  +
                default_long: self
        1619  +
                    .default_long
        1620  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1621  +
                    .unwrap_or(100i64),
        1622  +
                /* ServerBuilderGenerator.kt:546 */
        1623  +
                default_float: self
        1624  +
                    .default_float
        1625  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1626  +
                    .unwrap_or(1.0f32),
        1627  +
                /* ServerBuilderGenerator.kt:546 */
        1628  +
                default_double: self
        1629  +
                    .default_double
        1630  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1631  +
                    .unwrap_or(1.0f64),
        1632  +
                /* ServerBuilderGenerator.kt:546 */
        1633  +
                default_map: self
        1634  +
                    .default_map
        1635  +
                    /* ServerBuilderGeneratorCommon.kt:100 */
        1636  +
                    .unwrap_or_default(),
        1637  +
                /* ServerBuilderGenerator.kt:546 */
        1638  +
                default_enum: self
        1639  +
                    .default_enum
        1640  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1641  +
                    .unwrap_or(
  909   1642   
                        "FOO"
  910   1643   
                            .parse::<crate::model::TestEnum>()
  911   1644   
                            .expect("static value validated to member"),
  912   1645   
                    ),
  913         -
                default_int_enum: self.default_int_enum.unwrap_or(1i32),
  914         -
                empty_string: self.empty_string.unwrap_or_else(
        1646  +
                /* ServerBuilderGenerator.kt:546 */
        1647  +
                default_int_enum: self
        1648  +
                    .default_int_enum
        1649  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1650  +
                    .unwrap_or(1i32),
        1651  +
                /* ServerBuilderGenerator.kt:546 */
        1652  +
                empty_string: self
        1653  +
                    .empty_string
        1654  +
                    /* ServerBuilderGeneratorCommon.kt:139 */
        1655  +
                    .unwrap_or_else(
  915   1656   
                        #[allow(clippy::redundant_closure)]
  916   1657   
                        || String::from(""),
  917   1658   
                    ),
  918         -
                false_boolean: self.false_boolean.unwrap_or(false),
  919         -
                empty_blob: self.empty_blob.unwrap_or_else(
        1659  +
                /* ServerBuilderGenerator.kt:546 */
        1660  +
                false_boolean: self
        1661  +
                    .false_boolean
        1662  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1663  +
                    .unwrap_or(false),
        1664  +
                /* ServerBuilderGenerator.kt:546 */
        1665  +
                empty_blob: self
        1666  +
                    .empty_blob
        1667  +
                    /* ServerBuilderGeneratorCommon.kt:139 */
        1668  +
                    .unwrap_or_else(
  920   1669   
                        #[allow(clippy::redundant_closure)]
  921   1670   
                        || ::aws_smithy_types::Blob::new(""),
  922   1671   
                    ),
  923         -
                zero_byte: self.zero_byte.unwrap_or(0i8),
  924         -
                zero_short: self.zero_short.unwrap_or(0i16),
  925         -
                zero_integer: self.zero_integer.unwrap_or(0i32),
  926         -
                zero_long: self.zero_long.unwrap_or(0i64),
  927         -
                zero_float: self.zero_float.unwrap_or(0.0f32),
  928         -
                zero_double: self.zero_double.unwrap_or(0.0f64),
  929         -
            }
  930         -
        }
        1672  +
                /* ServerBuilderGenerator.kt:546 */
        1673  +
                zero_byte: self
        1674  +
                    .zero_byte
        1675  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1676  +
                    .unwrap_or(0i8),
        1677  +
                /* ServerBuilderGenerator.kt:546 */
        1678  +
                zero_short: self
        1679  +
                    .zero_short
        1680  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1681  +
                    .unwrap_or(0i16),
        1682  +
                /* ServerBuilderGenerator.kt:546 */
        1683  +
                zero_integer: self
        1684  +
                    .zero_integer
        1685  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1686  +
                    .unwrap_or(0i32),
        1687  +
                /* ServerBuilderGenerator.kt:546 */
        1688  +
                zero_long: self
        1689  +
                    .zero_long
        1690  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1691  +
                    .unwrap_or(0i64),
        1692  +
                /* ServerBuilderGenerator.kt:546 */
        1693  +
                zero_float: self
        1694  +
                    .zero_float
        1695  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1696  +
                    .unwrap_or(0.0f32),
        1697  +
                /* ServerBuilderGenerator.kt:546 */
        1698  +
                zero_double: self
        1699  +
                    .zero_double
        1700  +
                    /* ServerBuilderGeneratorCommon.kt:135 */
        1701  +
                    .unwrap_or(0.0f64),
        1702  +
                /* ServerBuilderGenerator.kt:542 */
        1703  +
            }
        1704  +
            /* ServerBuilderGenerator.kt:283 */
        1705  +
        }
        1706  +
        /* ServerBuilderGenerator.kt:215 */
  931   1707   
    }
        1708  +
        1709  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
  932   1710   
}
  933         -
/// See [`FractionalSecondsOutput`](crate::output::FractionalSecondsOutput).
        1711  +
/// /* ServerBuilderGenerator.kt:171 */See [`FractionalSecondsOutput`](crate::output::FractionalSecondsOutput).
  934   1712   
pub mod fractional_seconds_output {
  935   1713   
        1714  +
    /* ServerBuilderGenerator.kt:461 */
  936   1715   
    impl ::std::convert::From<Builder> for crate::output::FractionalSecondsOutput {
  937   1716   
        fn from(builder: Builder) -> Self {
  938   1717   
            builder.build()
  939   1718   
        }
  940   1719   
    }
  941         -
    /// A builder for [`FractionalSecondsOutput`](crate::output::FractionalSecondsOutput).
        1720  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`FractionalSecondsOutput`](crate::output::FractionalSecondsOutput).
        1721  +
    /* RustType.kt:516 */
  942   1722   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        1723  +
    /* ServerBuilderGenerator.kt:211 */
  943   1724   
    pub struct Builder {
        1725  +
        /* ServerBuilderGenerator.kt:308 */
  944   1726   
        pub(crate) datetime: ::std::option::Option<::aws_smithy_types::DateTime>,
        1727  +
        /* ServerBuilderGenerator.kt:211 */
  945   1728   
    }
        1729  +
    /* ServerBuilderGenerator.kt:215 */
  946   1730   
    impl Builder {
        1731  +
        /* ServerBuilderGenerator.kt:331 */
  947   1732   
        #[allow(missing_docs)] // documentation missing in model
        1733  +
                               /* ServerBuilderGenerator.kt:343 */
  948   1734   
        pub fn datetime(
  949   1735   
            mut self,
  950   1736   
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
  951   1737   
        ) -> Self {
  952         -
            self.datetime = input;
        1738  +
            /* ServerBuilderGenerator.kt:344 */
        1739  +
            self.datetime =
        1740  +
                /* ServerBuilderGenerator.kt:376 */input
        1741  +
            /* ServerBuilderGenerator.kt:344 */;
  953   1742   
            self
        1743  +
            /* ServerBuilderGenerator.kt:343 */
  954   1744   
        }
  955         -
        /// Consumes the builder and constructs a [`FractionalSecondsOutput`](crate::output::FractionalSecondsOutput).
        1745  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`FractionalSecondsOutput`](crate::output::FractionalSecondsOutput).
        1746  +
        /* ServerBuilderGenerator.kt:271 */
  956   1747   
        pub fn build(self) -> crate::output::FractionalSecondsOutput {
  957   1748   
            self.build_enforcing_all_constraints()
  958   1749   
        }
        1750  +
        /* ServerBuilderGenerator.kt:283 */
  959   1751   
        fn build_enforcing_all_constraints(self) -> crate::output::FractionalSecondsOutput {
        1752  +
            /* ServerBuilderGenerator.kt:542 */
  960   1753   
            crate::output::FractionalSecondsOutput {
        1754  +
                /* ServerBuilderGenerator.kt:546 */
  961   1755   
                datetime: self.datetime,
        1756  +
                /* ServerBuilderGenerator.kt:542 */
  962   1757   
            }
        1758  +
            /* ServerBuilderGenerator.kt:283 */
  963   1759   
        }
        1760  +
        /* ServerBuilderGenerator.kt:215 */
  964   1761   
    }
        1762  +
        1763  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
  965   1764   
}
  966         -
/// See [`GreetingWithErrorsOutput`](crate::output::GreetingWithErrorsOutput).
        1765  +
/// /* ServerBuilderGenerator.kt:171 */See [`GreetingWithErrorsOutput`](crate::output::GreetingWithErrorsOutput).
  967   1766   
pub mod greeting_with_errors_output {
  968   1767   
        1768  +
    /* ServerBuilderGenerator.kt:461 */
  969   1769   
    impl ::std::convert::From<Builder> for crate::output::GreetingWithErrorsOutput {
  970   1770   
        fn from(builder: Builder) -> Self {
  971   1771   
            builder.build()
  972   1772   
        }
  973   1773   
    }
  974         -
    /// A builder for [`GreetingWithErrorsOutput`](crate::output::GreetingWithErrorsOutput).
        1774  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`GreetingWithErrorsOutput`](crate::output::GreetingWithErrorsOutput).
        1775  +
    /* RustType.kt:516 */
  975   1776   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        1777  +
    /* ServerBuilderGenerator.kt:211 */
  976   1778   
    pub struct Builder {
        1779  +
        /* ServerBuilderGenerator.kt:308 */
  977   1780   
        pub(crate) greeting: ::std::option::Option<::std::string::String>,
        1781  +
        /* ServerBuilderGenerator.kt:211 */
  978   1782   
    }
        1783  +
    /* ServerBuilderGenerator.kt:215 */
  979   1784   
    impl Builder {
        1785  +
        /* ServerBuilderGenerator.kt:331 */
  980   1786   
        #[allow(missing_docs)] // documentation missing in model
        1787  +
                               /* ServerBuilderGenerator.kt:343 */
  981   1788   
        pub fn greeting(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
  982         -
            self.greeting = input;
        1789  +
            /* ServerBuilderGenerator.kt:344 */
        1790  +
            self.greeting =
        1791  +
                /* ServerBuilderGenerator.kt:376 */input
        1792  +
            /* ServerBuilderGenerator.kt:344 */;
  983   1793   
            self
        1794  +
            /* ServerBuilderGenerator.kt:343 */
  984   1795   
        }
  985         -
        /// Consumes the builder and constructs a [`GreetingWithErrorsOutput`](crate::output::GreetingWithErrorsOutput).
        1796  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`GreetingWithErrorsOutput`](crate::output::GreetingWithErrorsOutput).
        1797  +
        /* ServerBuilderGenerator.kt:271 */
  986   1798   
        pub fn build(self) -> crate::output::GreetingWithErrorsOutput {
  987   1799   
            self.build_enforcing_all_constraints()
  988   1800   
        }
        1801  +
        /* ServerBuilderGenerator.kt:283 */
  989   1802   
        fn build_enforcing_all_constraints(self) -> crate::output::GreetingWithErrorsOutput {
        1803  +
            /* ServerBuilderGenerator.kt:542 */
  990   1804   
            crate::output::GreetingWithErrorsOutput {
        1805  +
                /* ServerBuilderGenerator.kt:546 */
  991   1806   
                greeting: self.greeting,
        1807  +
                /* ServerBuilderGenerator.kt:542 */
  992   1808   
            }
        1809  +
            /* ServerBuilderGenerator.kt:283 */
  993   1810   
        }
        1811  +
        /* ServerBuilderGenerator.kt:215 */
  994   1812   
    }
        1813  +
        1814  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
  995   1815   
}
  996         -
/// See [`RecursiveShapesOutput`](crate::output::RecursiveShapesOutput).
        1816  +
/// /* ServerBuilderGenerator.kt:171 */See [`RecursiveShapesOutput`](crate::output::RecursiveShapesOutput).
  997   1817   
pub mod recursive_shapes_output {
  998   1818   
        1819  +
    /* ServerBuilderGenerator.kt:461 */
  999   1820   
    impl ::std::convert::From<Builder> for crate::output::RecursiveShapesOutput {
 1000   1821   
        fn from(builder: Builder) -> Self {
 1001   1822   
            builder.build()
 1002   1823   
        }
 1003   1824   
    }
 1004         -
    /// A builder for [`RecursiveShapesOutput`](crate::output::RecursiveShapesOutput).
        1825  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`RecursiveShapesOutput`](crate::output::RecursiveShapesOutput).
        1826  +
    /* RustType.kt:516 */
 1005   1827   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        1828  +
    /* ServerBuilderGenerator.kt:211 */
 1006   1829   
    pub struct Builder {
        1830  +
        /* ServerBuilderGenerator.kt:308 */
 1007   1831   
        pub(crate) nested: ::std::option::Option<crate::model::RecursiveShapesInputOutputNested1>,
        1832  +
        /* ServerBuilderGenerator.kt:211 */
 1008   1833   
    }
        1834  +
    /* ServerBuilderGenerator.kt:215 */
 1009   1835   
    impl Builder {
        1836  +
        /* ServerBuilderGenerator.kt:331 */
 1010   1837   
        #[allow(missing_docs)] // documentation missing in model
        1838  +
                               /* ServerBuilderGenerator.kt:343 */
 1011   1839   
        pub fn nested(
 1012   1840   
            mut self,
 1013   1841   
            input: ::std::option::Option<crate::model::RecursiveShapesInputOutputNested1>,
 1014   1842   
        ) -> Self {
 1015         -
            self.nested = input;
        1843  +
            /* ServerBuilderGenerator.kt:344 */
        1844  +
            self.nested =
        1845  +
                /* ServerBuilderGenerator.kt:376 */input
        1846  +
            /* ServerBuilderGenerator.kt:344 */;
 1016   1847   
            self
        1848  +
            /* ServerBuilderGenerator.kt:343 */
 1017   1849   
        }
 1018         -
        /// Consumes the builder and constructs a [`RecursiveShapesOutput`](crate::output::RecursiveShapesOutput).
        1850  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`RecursiveShapesOutput`](crate::output::RecursiveShapesOutput).
        1851  +
        /* ServerBuilderGenerator.kt:271 */
 1019   1852   
        pub fn build(self) -> crate::output::RecursiveShapesOutput {
 1020   1853   
            self.build_enforcing_all_constraints()
 1021   1854   
        }
        1855  +
        /* ServerBuilderGenerator.kt:283 */
 1022   1856   
        fn build_enforcing_all_constraints(self) -> crate::output::RecursiveShapesOutput {
        1857  +
            /* ServerBuilderGenerator.kt:542 */
 1023   1858   
            crate::output::RecursiveShapesOutput {
        1859  +
                /* ServerBuilderGenerator.kt:546 */
 1024   1860   
                nested: self.nested,
        1861  +
                /* ServerBuilderGenerator.kt:542 */
 1025   1862   
            }
        1863  +
            /* ServerBuilderGenerator.kt:283 */
 1026   1864   
        }
        1865  +
        /* ServerBuilderGenerator.kt:215 */
 1027   1866   
    }
        1867  +
        1868  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 1028   1869   
}
 1029         -
/// See [`RpcV2CborSparseMapsOutput`](crate::output::RpcV2CborSparseMapsOutput).
        1870  +
/// /* ServerBuilderGenerator.kt:171 */See [`RpcV2CborSparseMapsOutput`](crate::output::RpcV2CborSparseMapsOutput).
 1030   1871   
pub mod rpc_v2_cbor_sparse_maps_output {
 1031   1872   
        1873  +
    /* ServerBuilderGenerator.kt:461 */
 1032   1874   
    impl ::std::convert::From<Builder> for crate::output::RpcV2CborSparseMapsOutput {
 1033   1875   
        fn from(builder: Builder) -> Self {
 1034   1876   
            builder.build()
 1035   1877   
        }
 1036   1878   
    }
 1037         -
    /// A builder for [`RpcV2CborSparseMapsOutput`](crate::output::RpcV2CborSparseMapsOutput).
        1879  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`RpcV2CborSparseMapsOutput`](crate::output::RpcV2CborSparseMapsOutput).
        1880  +
    /* RustType.kt:516 */
 1038   1881   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        1882  +
    /* ServerBuilderGenerator.kt:211 */
 1039   1883   
    pub struct Builder {
        1884  +
        /* ServerBuilderGenerator.kt:308 */
 1040   1885   
        pub(crate) sparse_struct_map: ::std::option::Option<
 1041   1886   
            ::std::collections::HashMap<
 1042   1887   
                ::std::string::String,
 1043   1888   
                ::std::option::Option<crate::model::GreetingStruct>,
 1044   1889   
            >,
 1045   1890   
        >,
        1891  +
        /* ServerBuilderGenerator.kt:308 */
 1046   1892   
        pub(crate) sparse_number_map: ::std::option::Option<
 1047   1893   
            ::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
 1048   1894   
        >,
        1895  +
        /* ServerBuilderGenerator.kt:308 */
 1049   1896   
        pub(crate) sparse_boolean_map: ::std::option::Option<
 1050   1897   
            ::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
 1051   1898   
        >,
        1899  +
        /* ServerBuilderGenerator.kt:308 */
 1052   1900   
        pub(crate) sparse_string_map: ::std::option::Option<
 1053   1901   
            ::std::collections::HashMap<
 1054   1902   
                ::std::string::String,
 1055   1903   
                ::std::option::Option<::std::string::String>,
 1056   1904   
            >,
 1057   1905   
        >,
        1906  +
        /* ServerBuilderGenerator.kt:308 */
 1058   1907   
        pub(crate) sparse_set_map: ::std::option::Option<
 1059   1908   
            ::std::collections::HashMap<
 1060   1909   
                ::std::string::String,
 1061   1910   
                ::std::option::Option<crate::model::StringSet>,
 1062   1911   
            >,
 1063   1912   
        >,
        1913  +
        /* ServerBuilderGenerator.kt:211 */
 1064   1914   
    }
        1915  +
    /* ServerBuilderGenerator.kt:215 */
 1065   1916   
    impl Builder {
        1917  +
        /* ServerBuilderGenerator.kt:331 */
 1066   1918   
        #[allow(missing_docs)] // documentation missing in model
        1919  +
                               /* ServerBuilderGenerator.kt:343 */
 1067   1920   
        pub fn sparse_struct_map(
 1068   1921   
            mut self,
 1069   1922   
            input: ::std::option::Option<
 1070   1923   
                ::std::collections::HashMap<
 1071   1924   
                    ::std::string::String,
 1072   1925   
                    ::std::option::Option<crate::model::GreetingStruct>,
 1073   1926   
                >,
 1074   1927   
            >,
 1075   1928   
        ) -> Self {
 1076         -
            self.sparse_struct_map = input;
        1929  +
            /* ServerBuilderGenerator.kt:344 */
        1930  +
            self.sparse_struct_map =
        1931  +
                /* ServerBuilderGenerator.kt:376 */input
        1932  +
            /* ServerBuilderGenerator.kt:344 */;
 1077   1933   
            self
        1934  +
            /* ServerBuilderGenerator.kt:343 */
 1078   1935   
        }
        1936  +
        /* ServerBuilderGenerator.kt:331 */
 1079   1937   
        #[allow(missing_docs)] // documentation missing in model
        1938  +
                               /* ServerBuilderGenerator.kt:343 */
 1080   1939   
        pub fn sparse_number_map(
 1081   1940   
            mut self,
 1082   1941   
            input: ::std::option::Option<
 1083   1942   
                ::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
 1084   1943   
            >,
 1085   1944   
        ) -> Self {
 1086         -
            self.sparse_number_map = input;
        1945  +
            /* ServerBuilderGenerator.kt:344 */
        1946  +
            self.sparse_number_map =
        1947  +
                /* ServerBuilderGenerator.kt:376 */input
        1948  +
            /* ServerBuilderGenerator.kt:344 */;
 1087   1949   
            self
        1950  +
            /* ServerBuilderGenerator.kt:343 */
 1088   1951   
        }
        1952  +
        /* ServerBuilderGenerator.kt:331 */
 1089   1953   
        #[allow(missing_docs)] // documentation missing in model
        1954  +
                               /* ServerBuilderGenerator.kt:343 */
 1090   1955   
        pub fn sparse_boolean_map(
 1091   1956   
            mut self,
 1092   1957   
            input: ::std::option::Option<
 1093   1958   
                ::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
 1094   1959   
            >,
 1095   1960   
        ) -> Self {
 1096         -
            self.sparse_boolean_map = input;
        1961  +
            /* ServerBuilderGenerator.kt:344 */
        1962  +
            self.sparse_boolean_map =
        1963  +
                /* ServerBuilderGenerator.kt:376 */input
        1964  +
            /* ServerBuilderGenerator.kt:344 */;
 1097   1965   
            self
        1966  +
            /* ServerBuilderGenerator.kt:343 */
 1098   1967   
        }
        1968  +
        /* ServerBuilderGenerator.kt:331 */
 1099   1969   
        #[allow(missing_docs)] // documentation missing in model
        1970  +
                               /* ServerBuilderGenerator.kt:343 */
 1100   1971   
        pub fn sparse_string_map(
 1101   1972   
            mut self,
 1102   1973   
            input: ::std::option::Option<
 1103   1974   
                ::std::collections::HashMap<
 1104   1975   
                    ::std::string::String,
 1105   1976   
                    ::std::option::Option<::std::string::String>,
 1106   1977   
                >,
 1107   1978   
            >,
 1108   1979   
        ) -> Self {
 1109         -
            self.sparse_string_map = input;
        1980  +
            /* ServerBuilderGenerator.kt:344 */
        1981  +
            self.sparse_string_map =
        1982  +
                /* ServerBuilderGenerator.kt:376 */input
        1983  +
            /* ServerBuilderGenerator.kt:344 */;
 1110   1984   
            self
        1985  +
            /* ServerBuilderGenerator.kt:343 */
 1111   1986   
        }
        1987  +
        /* ServerBuilderGenerator.kt:331 */
 1112   1988   
        #[allow(missing_docs)] // documentation missing in model
        1989  +
                               /* ServerBuilderGenerator.kt:343 */
 1113   1990   
        pub fn sparse_set_map(
 1114   1991   
            mut self,
 1115   1992   
            input: ::std::option::Option<
 1116   1993   
                ::std::collections::HashMap<
 1117   1994   
                    ::std::string::String,
 1118   1995   
                    ::std::option::Option<crate::model::StringSet>,
 1119   1996   
                >,
 1120   1997   
            >,
 1121   1998   
        ) -> Self {
 1122         -
            self.sparse_set_map = input;
        1999  +
            /* ServerBuilderGenerator.kt:344 */
        2000  +
            self.sparse_set_map =
        2001  +
                /* ServerBuilderGenerator.kt:376 */input
        2002  +
            /* ServerBuilderGenerator.kt:344 */;
 1123   2003   
            self
        2004  +
            /* ServerBuilderGenerator.kt:343 */
 1124   2005   
        }
 1125         -
        /// Consumes the builder and constructs a [`RpcV2CborSparseMapsOutput`](crate::output::RpcV2CborSparseMapsOutput).
        2006  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`RpcV2CborSparseMapsOutput`](crate::output::RpcV2CborSparseMapsOutput).
        2007  +
        /* ServerBuilderGenerator.kt:271 */
 1126   2008   
        pub fn build(self) -> crate::output::RpcV2CborSparseMapsOutput {
 1127   2009   
            self.build_enforcing_all_constraints()
 1128   2010   
        }
        2011  +
        /* ServerBuilderGenerator.kt:283 */
 1129   2012   
        fn build_enforcing_all_constraints(self) -> crate::output::RpcV2CborSparseMapsOutput {
        2013  +
            /* ServerBuilderGenerator.kt:542 */
 1130   2014   
            crate::output::RpcV2CborSparseMapsOutput {
        2015  +
                /* ServerBuilderGenerator.kt:546 */
 1131   2016   
                sparse_struct_map: self.sparse_struct_map,
        2017  +
                /* ServerBuilderGenerator.kt:546 */
 1132   2018   
                sparse_number_map: self.sparse_number_map,
        2019  +
                /* ServerBuilderGenerator.kt:546 */
 1133   2020   
                sparse_boolean_map: self.sparse_boolean_map,
        2021  +
                /* ServerBuilderGenerator.kt:546 */
 1134   2022   
                sparse_string_map: self.sparse_string_map,
        2023  +
                /* ServerBuilderGenerator.kt:546 */
 1135   2024   
                sparse_set_map: self.sparse_set_map,
        2025  +
                /* ServerBuilderGenerator.kt:542 */
 1136   2026   
            }
        2027  +
            /* ServerBuilderGenerator.kt:283 */
 1137   2028   
        }
        2029  +
        /* ServerBuilderGenerator.kt:215 */
 1138   2030   
    }
        2031  +
        2032  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 1139   2033   
}
 1140         -
/// See [`RpcV2CborDenseMapsOutput`](crate::output::RpcV2CborDenseMapsOutput).
        2034  +
/// /* ServerBuilderGenerator.kt:171 */See [`RpcV2CborDenseMapsOutput`](crate::output::RpcV2CborDenseMapsOutput).
 1141   2035   
pub mod rpc_v2_cbor_dense_maps_output {
 1142   2036   
        2037  +
    /* ServerBuilderGenerator.kt:461 */
 1143   2038   
    impl ::std::convert::From<Builder> for crate::output::RpcV2CborDenseMapsOutput {
 1144   2039   
        fn from(builder: Builder) -> Self {
 1145   2040   
            builder.build()
 1146   2041   
        }
 1147   2042   
    }
 1148         -
    /// A builder for [`RpcV2CborDenseMapsOutput`](crate::output::RpcV2CborDenseMapsOutput).
        2043  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`RpcV2CborDenseMapsOutput`](crate::output::RpcV2CborDenseMapsOutput).
        2044  +
    /* RustType.kt:516 */
 1149   2045   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        2046  +
    /* ServerBuilderGenerator.kt:211 */
 1150   2047   
    pub struct Builder {
        2048  +
        /* ServerBuilderGenerator.kt:308 */
 1151   2049   
        pub(crate) dense_struct_map: ::std::option::Option<
 1152   2050   
            ::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
 1153   2051   
        >,
        2052  +
        /* ServerBuilderGenerator.kt:308 */
 1154   2053   
        pub(crate) dense_number_map:
 1155   2054   
            ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
        2055  +
        /* ServerBuilderGenerator.kt:308 */
 1156   2056   
        pub(crate) dense_boolean_map:
 1157   2057   
            ::std::option::Option<::std::collections::HashMap<::std::string::String, bool>>,
        2058  +
        /* ServerBuilderGenerator.kt:308 */
 1158   2059   
        pub(crate) dense_string_map: ::std::option::Option<
 1159   2060   
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
 1160   2061   
        >,
        2062  +
        /* ServerBuilderGenerator.kt:308 */
 1161   2063   
        pub(crate) dense_set_map: ::std::option::Option<
 1162   2064   
            ::std::collections::HashMap<::std::string::String, crate::model::StringSet>,
 1163   2065   
        >,
        2066  +
        /* ServerBuilderGenerator.kt:211 */
 1164   2067   
    }
        2068  +
    /* ServerBuilderGenerator.kt:215 */
 1165   2069   
    impl Builder {
        2070  +
        /* ServerBuilderGenerator.kt:331 */
 1166   2071   
        #[allow(missing_docs)] // documentation missing in model
        2072  +
                               /* ServerBuilderGenerator.kt:343 */
 1167   2073   
        pub fn dense_struct_map(
 1168   2074   
            mut self,
 1169   2075   
            input: ::std::option::Option<
 1170   2076   
                ::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
 1171   2077   
            >,
 1172   2078   
        ) -> Self {
 1173         -
            self.dense_struct_map = input;
        2079  +
            /* ServerBuilderGenerator.kt:344 */
        2080  +
            self.dense_struct_map =
        2081  +
                /* ServerBuilderGenerator.kt:376 */input
        2082  +
            /* ServerBuilderGenerator.kt:344 */;
 1174   2083   
            self
        2084  +
            /* ServerBuilderGenerator.kt:343 */
 1175   2085   
        }
        2086  +
        /* ServerBuilderGenerator.kt:331 */
 1176   2087   
        #[allow(missing_docs)] // documentation missing in model
        2088  +
                               /* ServerBuilderGenerator.kt:343 */
 1177   2089   
        pub fn dense_number_map(
 1178   2090   
            mut self,
 1179   2091   
            input: ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
 1180   2092   
        ) -> Self {
 1181         -
            self.dense_number_map = input;
        2093  +
            /* ServerBuilderGenerator.kt:344 */
        2094  +
            self.dense_number_map =
        2095  +
                /* ServerBuilderGenerator.kt:376 */input
        2096  +
            /* ServerBuilderGenerator.kt:344 */;
 1182   2097   
            self
        2098  +
            /* ServerBuilderGenerator.kt:343 */
 1183   2099   
        }
        2100  +
        /* ServerBuilderGenerator.kt:331 */
 1184   2101   
        #[allow(missing_docs)] // documentation missing in model
        2102  +
                               /* ServerBuilderGenerator.kt:343 */
 1185   2103   
        pub fn dense_boolean_map(
 1186   2104   
            mut self,
 1187   2105   
            input: ::std::option::Option<::std::collections::HashMap<::std::string::String, bool>>,
 1188   2106   
        ) -> Self {
 1189         -
            self.dense_boolean_map = input;
        2107  +
            /* ServerBuilderGenerator.kt:344 */
        2108  +
            self.dense_boolean_map =
        2109  +
                /* ServerBuilderGenerator.kt:376 */input
        2110  +
            /* ServerBuilderGenerator.kt:344 */;
 1190   2111   
            self
        2112  +
            /* ServerBuilderGenerator.kt:343 */
 1191   2113   
        }
        2114  +
        /* ServerBuilderGenerator.kt:331 */
 1192   2115   
        #[allow(missing_docs)] // documentation missing in model
        2116  +
                               /* ServerBuilderGenerator.kt:343 */
 1193   2117   
        pub fn dense_string_map(
 1194   2118   
            mut self,
 1195   2119   
            input: ::std::option::Option<
 1196   2120   
                ::std::collections::HashMap<::std::string::String, ::std::string::String>,
 1197   2121   
            >,
 1198   2122   
        ) -> Self {
 1199         -
            self.dense_string_map = input;
        2123  +
            /* ServerBuilderGenerator.kt:344 */
        2124  +
            self.dense_string_map =
        2125  +
                /* ServerBuilderGenerator.kt:376 */input
        2126  +
            /* ServerBuilderGenerator.kt:344 */;
 1200   2127   
            self
        2128  +
            /* ServerBuilderGenerator.kt:343 */
 1201   2129   
        }
        2130  +
        /* ServerBuilderGenerator.kt:331 */
 1202   2131   
        #[allow(missing_docs)] // documentation missing in model
        2132  +
                               /* ServerBuilderGenerator.kt:343 */
 1203   2133   
        pub fn dense_set_map(
 1204   2134   
            mut self,
 1205   2135   
            input: ::std::option::Option<
 1206   2136   
                ::std::collections::HashMap<::std::string::String, crate::model::StringSet>,
 1207   2137   
            >,
 1208   2138   
        ) -> Self {
 1209         -
            self.dense_set_map = input;
        2139  +
            /* ServerBuilderGenerator.kt:344 */
        2140  +
            self.dense_set_map =
        2141  +
                /* ServerBuilderGenerator.kt:376 */input
        2142  +
            /* ServerBuilderGenerator.kt:344 */;
 1210   2143   
            self
        2144  +
            /* ServerBuilderGenerator.kt:343 */
 1211   2145   
        }
 1212         -
        /// Consumes the builder and constructs a [`RpcV2CborDenseMapsOutput`](crate::output::RpcV2CborDenseMapsOutput).
        2146  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`RpcV2CborDenseMapsOutput`](crate::output::RpcV2CborDenseMapsOutput).
        2147  +
        /* ServerBuilderGenerator.kt:271 */
 1213   2148   
        pub fn build(self) -> crate::output::RpcV2CborDenseMapsOutput {
 1214   2149   
            self.build_enforcing_all_constraints()
 1215   2150   
        }
        2151  +
        /* ServerBuilderGenerator.kt:283 */
 1216   2152   
        fn build_enforcing_all_constraints(self) -> crate::output::RpcV2CborDenseMapsOutput {
        2153  +
            /* ServerBuilderGenerator.kt:542 */
 1217   2154   
            crate::output::RpcV2CborDenseMapsOutput {
        2155  +
                /* ServerBuilderGenerator.kt:546 */
 1218   2156   
                dense_struct_map: self.dense_struct_map,
        2157  +
                /* ServerBuilderGenerator.kt:546 */
 1219   2158   
                dense_number_map: self.dense_number_map,
        2159  +
                /* ServerBuilderGenerator.kt:546 */
 1220   2160   
                dense_boolean_map: self.dense_boolean_map,
        2161  +
                /* ServerBuilderGenerator.kt:546 */
 1221   2162   
                dense_string_map: self.dense_string_map,
        2163  +
                /* ServerBuilderGenerator.kt:546 */
 1222   2164   
                dense_set_map: self.dense_set_map,
        2165  +
                /* ServerBuilderGenerator.kt:542 */
 1223   2166   
            }
        2167  +
            /* ServerBuilderGenerator.kt:283 */
 1224   2168   
        }
        2169  +
        /* ServerBuilderGenerator.kt:215 */
 1225   2170   
    }
        2171  +
        2172  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 1226   2173   
}
 1227         -
/// See [`RpcV2CborListsOutput`](crate::output::RpcV2CborListsOutput).
        2174  +
/// /* ServerBuilderGenerator.kt:171 */See [`RpcV2CborListsOutput`](crate::output::RpcV2CborListsOutput).
 1228   2175   
pub mod rpc_v2_cbor_lists_output {
 1229   2176   
        2177  +
    /* ServerBuilderGenerator.kt:461 */
 1230   2178   
    impl ::std::convert::From<Builder> for crate::output::RpcV2CborListsOutput {
 1231   2179   
        fn from(builder: Builder) -> Self {
 1232   2180   
            builder.build()
 1233   2181   
        }
 1234   2182   
    }
 1235         -
    /// A builder for [`RpcV2CborListsOutput`](crate::output::RpcV2CborListsOutput).
        2183  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`RpcV2CborListsOutput`](crate::output::RpcV2CborListsOutput).
        2184  +
    /* RustType.kt:516 */
 1236   2185   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        2186  +
    /* ServerBuilderGenerator.kt:211 */
 1237   2187   
    pub struct Builder {
        2188  +
        /* ServerBuilderGenerator.kt:308 */
 1238   2189   
        pub(crate) string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        2190  +
        /* ServerBuilderGenerator.kt:308 */
 1239   2191   
        pub(crate) string_set: ::std::option::Option<crate::model::StringSet>,
        2192  +
        /* ServerBuilderGenerator.kt:308 */
 1240   2193   
        pub(crate) integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
        2194  +
        /* ServerBuilderGenerator.kt:308 */
 1241   2195   
        pub(crate) boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
        2196  +
        /* ServerBuilderGenerator.kt:308 */
 1242   2197   
        pub(crate) timestamp_list:
 1243   2198   
            ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
        2199  +
        /* ServerBuilderGenerator.kt:308 */
 1244   2200   
        pub(crate) enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
        2201  +
        /* ServerBuilderGenerator.kt:308 */
 1245   2202   
        pub(crate) int_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
        2203  +
        /* ServerBuilderGenerator.kt:308 */
 1246   2204   
        pub(crate) nested_string_list:
 1247   2205   
            ::std::option::Option<::std::vec::Vec<::std::vec::Vec<::std::string::String>>>,
        2206  +
        /* ServerBuilderGenerator.kt:308 */
 1248   2207   
        pub(crate) structure_list:
 1249   2208   
            ::std::option::Option<::std::vec::Vec<crate::model::StructureListMember>>,
        2209  +
        /* ServerBuilderGenerator.kt:308 */
 1250   2210   
        pub(crate) blob_list: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::Blob>>,
        2211  +
        /* ServerBuilderGenerator.kt:211 */
 1251   2212   
    }
        2213  +
    /* ServerBuilderGenerator.kt:215 */
 1252   2214   
    impl Builder {
        2215  +
        /* ServerBuilderGenerator.kt:331 */
 1253   2216   
        #[allow(missing_docs)] // documentation missing in model
        2217  +
                               /* ServerBuilderGenerator.kt:343 */
 1254   2218   
        pub fn string_list(
 1255   2219   
            mut self,
 1256   2220   
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
 1257   2221   
        ) -> Self {
 1258         -
            self.string_list = input;
        2222  +
            /* ServerBuilderGenerator.kt:344 */
        2223  +
            self.string_list =
        2224  +
                /* ServerBuilderGenerator.kt:376 */input
        2225  +
            /* ServerBuilderGenerator.kt:344 */;
 1259   2226   
            self
        2227  +
            /* ServerBuilderGenerator.kt:343 */
 1260   2228   
        }
        2229  +
        /* ServerBuilderGenerator.kt:331 */
 1261   2230   
        #[allow(missing_docs)] // documentation missing in model
        2231  +
                               /* ServerBuilderGenerator.kt:343 */
 1262   2232   
        pub fn string_set(mut self, input: ::std::option::Option<crate::model::StringSet>) -> Self {
 1263         -
            self.string_set = input;
        2233  +
            /* ServerBuilderGenerator.kt:344 */
        2234  +
            self.string_set =
        2235  +
                /* ServerBuilderGenerator.kt:376 */input
        2236  +
            /* ServerBuilderGenerator.kt:344 */;
 1264   2237   
            self
        2238  +
            /* ServerBuilderGenerator.kt:343 */
 1265   2239   
        }
        2240  +
        /* ServerBuilderGenerator.kt:331 */
 1266   2241   
        #[allow(missing_docs)] // documentation missing in model
        2242  +
                               /* ServerBuilderGenerator.kt:343 */
 1267   2243   
        pub fn integer_list(mut self, input: ::std::option::Option<::std::vec::Vec<i32>>) -> Self {
 1268         -
            self.integer_list = input;
        2244  +
            /* ServerBuilderGenerator.kt:344 */
        2245  +
            self.integer_list =
        2246  +
                /* ServerBuilderGenerator.kt:376 */input
        2247  +
            /* ServerBuilderGenerator.kt:344 */;
 1269   2248   
            self
        2249  +
            /* ServerBuilderGenerator.kt:343 */
 1270   2250   
        }
        2251  +
        /* ServerBuilderGenerator.kt:331 */
 1271   2252   
        #[allow(missing_docs)] // documentation missing in model
        2253  +
                               /* ServerBuilderGenerator.kt:343 */
 1272   2254   
        pub fn boolean_list(mut self, input: ::std::option::Option<::std::vec::Vec<bool>>) -> Self {
 1273         -
            self.boolean_list = input;
        2255  +
            /* ServerBuilderGenerator.kt:344 */
        2256  +
            self.boolean_list =
        2257  +
                /* ServerBuilderGenerator.kt:376 */input
        2258  +
            /* ServerBuilderGenerator.kt:344 */;
 1274   2259   
            self
        2260  +
            /* ServerBuilderGenerator.kt:343 */
 1275   2261   
        }
        2262  +
        /* ServerBuilderGenerator.kt:331 */
 1276   2263   
        #[allow(missing_docs)] // documentation missing in model
        2264  +
                               /* ServerBuilderGenerator.kt:343 */
 1277   2265   
        pub fn timestamp_list(
 1278   2266   
            mut self,
 1279   2267   
            input: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
 1280   2268   
        ) -> Self {
 1281         -
            self.timestamp_list = input;
        2269  +
            /* ServerBuilderGenerator.kt:344 */
        2270  +
            self.timestamp_list =
        2271  +
                /* ServerBuilderGenerator.kt:376 */input
        2272  +
            /* ServerBuilderGenerator.kt:344 */;
 1282   2273   
            self
        2274  +
            /* ServerBuilderGenerator.kt:343 */
 1283   2275   
        }
        2276  +
        /* ServerBuilderGenerator.kt:331 */
 1284   2277   
        #[allow(missing_docs)] // documentation missing in model
        2278  +
                               /* ServerBuilderGenerator.kt:343 */
 1285   2279   
        pub fn enum_list(
 1286   2280   
            mut self,
 1287   2281   
            input: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
 1288   2282   
        ) -> Self {
 1289         -
            self.enum_list = input;
        2283  +
            /* ServerBuilderGenerator.kt:344 */
        2284  +
            self.enum_list =
        2285  +
                /* ServerBuilderGenerator.kt:376 */input
        2286  +
            /* ServerBuilderGenerator.kt:344 */;
 1290   2287   
            self
        2288  +
            /* ServerBuilderGenerator.kt:343 */
 1291   2289   
        }
        2290  +
        /* ServerBuilderGenerator.kt:331 */
 1292   2291   
        #[allow(missing_docs)] // documentation missing in model
        2292  +
                               /* ServerBuilderGenerator.kt:343 */
 1293   2293   
        pub fn int_enum_list(mut self, input: ::std::option::Option<::std::vec::Vec<i32>>) -> Self {
 1294         -
            self.int_enum_list = input;
        2294  +
            /* ServerBuilderGenerator.kt:344 */
        2295  +
            self.int_enum_list =
        2296  +
                /* ServerBuilderGenerator.kt:376 */input
        2297  +
            /* ServerBuilderGenerator.kt:344 */;
 1295   2298   
            self
        2299  +
            /* ServerBuilderGenerator.kt:343 */
 1296   2300   
        }
 1297         -
        /// A list of lists of strings.
        2301  +
        /// /* ServerBuilderGenerator.kt:331 */A list of lists of strings.
        2302  +
        /* ServerBuilderGenerator.kt:343 */
 1298   2303   
        pub fn nested_string_list(
 1299   2304   
            mut self,
 1300   2305   
            input: ::std::option::Option<::std::vec::Vec<::std::vec::Vec<::std::string::String>>>,
 1301   2306   
        ) -> Self {
 1302         -
            self.nested_string_list = input;
        2307  +
            /* ServerBuilderGenerator.kt:344 */
        2308  +
            self.nested_string_list =
        2309  +
                /* ServerBuilderGenerator.kt:376 */input
        2310  +
            /* ServerBuilderGenerator.kt:344 */;
 1303   2311   
            self
        2312  +
            /* ServerBuilderGenerator.kt:343 */
 1304   2313   
        }
        2314  +
        /* ServerBuilderGenerator.kt:331 */
 1305   2315   
        #[allow(missing_docs)] // documentation missing in model
        2316  +
                               /* ServerBuilderGenerator.kt:343 */
 1306   2317   
        pub fn structure_list(
 1307   2318   
            mut self,
 1308   2319   
            input: ::std::option::Option<::std::vec::Vec<crate::model::StructureListMember>>,
 1309   2320   
        ) -> Self {
 1310         -
            self.structure_list = input;
        2321  +
            /* ServerBuilderGenerator.kt:344 */
        2322  +
            self.structure_list =
        2323  +
                /* ServerBuilderGenerator.kt:376 */input
        2324  +
            /* ServerBuilderGenerator.kt:344 */;
 1311   2325   
            self
        2326  +
            /* ServerBuilderGenerator.kt:343 */
 1312   2327   
        }
        2328  +
        /* ServerBuilderGenerator.kt:331 */
 1313   2329   
        #[allow(missing_docs)] // documentation missing in model
        2330  +
                               /* ServerBuilderGenerator.kt:343 */
 1314   2331   
        pub fn blob_list(
 1315   2332   
            mut self,
 1316   2333   
            input: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::Blob>>,
 1317   2334   
        ) -> Self {
 1318         -
            self.blob_list = input;
        2335  +
            /* ServerBuilderGenerator.kt:344 */
        2336  +
            self.blob_list =
        2337  +
                /* ServerBuilderGenerator.kt:376 */input
        2338  +
            /* ServerBuilderGenerator.kt:344 */;
 1319   2339   
            self
        2340  +
            /* ServerBuilderGenerator.kt:343 */
 1320   2341   
        }
 1321         -
        /// Consumes the builder and constructs a [`RpcV2CborListsOutput`](crate::output::RpcV2CborListsOutput).
        2342  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`RpcV2CborListsOutput`](crate::output::RpcV2CborListsOutput).
        2343  +
        /* ServerBuilderGenerator.kt:271 */
 1322   2344   
        pub fn build(self) -> crate::output::RpcV2CborListsOutput {
 1323   2345   
            self.build_enforcing_all_constraints()
 1324   2346   
        }
        2347  +
        /* ServerBuilderGenerator.kt:283 */
 1325   2348   
        fn build_enforcing_all_constraints(self) -> crate::output::RpcV2CborListsOutput {
        2349  +
            /* ServerBuilderGenerator.kt:542 */
 1326   2350   
            crate::output::RpcV2CborListsOutput {
        2351  +
                /* ServerBuilderGenerator.kt:546 */
 1327   2352   
                string_list: self.string_list,
        2353  +
                /* ServerBuilderGenerator.kt:546 */
 1328   2354   
                string_set: self.string_set,
        2355  +
                /* ServerBuilderGenerator.kt:546 */
 1329   2356   
                integer_list: self.integer_list,
        2357  +
                /* ServerBuilderGenerator.kt:546 */
 1330   2358   
                boolean_list: self.boolean_list,
        2359  +
                /* ServerBuilderGenerator.kt:546 */
 1331   2360   
                timestamp_list: self.timestamp_list,
        2361  +
                /* ServerBuilderGenerator.kt:546 */
 1332   2362   
                enum_list: self.enum_list,
        2363  +
                /* ServerBuilderGenerator.kt:546 */
 1333   2364   
                int_enum_list: self.int_enum_list,
        2365  +
                /* ServerBuilderGenerator.kt:546 */
 1334   2366   
                nested_string_list: self.nested_string_list,
        2367  +
                /* ServerBuilderGenerator.kt:546 */
 1335   2368   
                structure_list: self.structure_list,
        2369  +
                /* ServerBuilderGenerator.kt:546 */
 1336   2370   
                blob_list: self.blob_list,
        2371  +
                /* ServerBuilderGenerator.kt:542 */
 1337   2372   
            }
        2373  +
            /* ServerBuilderGenerator.kt:283 */
 1338   2374   
        }
        2375  +
        /* ServerBuilderGenerator.kt:215 */
 1339   2376   
    }
        2377  +
        2378  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 1340   2379   
}
 1341         -
/// See [`SimpleScalarPropertiesOutput`](crate::output::SimpleScalarPropertiesOutput).
        2380  +
/// /* ServerBuilderGenerator.kt:171 */See [`SimpleScalarPropertiesOutput`](crate::output::SimpleScalarPropertiesOutput).
 1342   2381   
pub mod simple_scalar_properties_output {
 1343   2382   
        2383  +
    /* ServerBuilderGenerator.kt:461 */
 1344   2384   
    impl ::std::convert::From<Builder> for crate::output::SimpleScalarPropertiesOutput {
 1345   2385   
        fn from(builder: Builder) -> Self {
 1346   2386   
            builder.build()
 1347   2387   
        }
 1348   2388   
    }
 1349         -
    /// A builder for [`SimpleScalarPropertiesOutput`](crate::output::SimpleScalarPropertiesOutput).
        2389  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`SimpleScalarPropertiesOutput`](crate::output::SimpleScalarPropertiesOutput).
        2390  +
    /* RustType.kt:516 */
 1350   2391   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        2392  +
    /* ServerBuilderGenerator.kt:211 */
 1351   2393   
    pub struct Builder {
        2394  +
        /* ServerBuilderGenerator.kt:308 */
 1352   2395   
        pub(crate) true_boolean_value: ::std::option::Option<bool>,
        2396  +
        /* ServerBuilderGenerator.kt:308 */
 1353   2397   
        pub(crate) false_boolean_value: ::std::option::Option<bool>,
 1354         -
        pub(crate) byte_value: ::std::option::Option<i8>,
        2398  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) byte_value: ::std::option::Option<i8>,
        2399  +
        /* ServerBuilderGenerator.kt:308 */
 1355   2400   
        pub(crate) double_value: ::std::option::Option<f64>,
        2401  +
        /* ServerBuilderGenerator.kt:308 */
 1356   2402   
        pub(crate) float_value: ::std::option::Option<f32>,
        2403  +
        /* ServerBuilderGenerator.kt:308 */
 1357   2404   
        pub(crate) integer_value: ::std::option::Option<i32>,
        2405  +
        /* ServerBuilderGenerator.kt:308 */
 1358   2406   
        pub(crate) long_value: ::std::option::Option<i64>,
        2407  +
        /* ServerBuilderGenerator.kt:308 */
 1359   2408   
        pub(crate) short_value: ::std::option::Option<i16>,
        2409  +
        /* ServerBuilderGenerator.kt:308 */
 1360   2410   
        pub(crate) string_value: ::std::option::Option<::std::string::String>,
        2411  +
        /* ServerBuilderGenerator.kt:308 */
 1361   2412   
        pub(crate) blob_value: ::std::option::Option<::aws_smithy_types::Blob>,
        2413  +
        /* ServerBuilderGenerator.kt:211 */
 1362   2414   
    }
        2415  +
    /* ServerBuilderGenerator.kt:215 */
 1363   2416   
    impl Builder {
        2417  +
        /* ServerBuilderGenerator.kt:331 */
 1364   2418   
        #[allow(missing_docs)] // documentation missing in model
        2419  +
                               /* ServerBuilderGenerator.kt:343 */
 1365   2420   
        pub fn true_boolean_value(mut self, input: ::std::option::Option<bool>) -> Self {
 1366         -
            self.true_boolean_value = input;
        2421  +
            /* ServerBuilderGenerator.kt:344 */
        2422  +
            self.true_boolean_value =
        2423  +
                /* ServerBuilderGenerator.kt:376 */input
        2424  +
            /* ServerBuilderGenerator.kt:344 */;
 1367   2425   
            self
        2426  +
            /* ServerBuilderGenerator.kt:343 */
 1368   2427   
        }
        2428  +
        /* ServerBuilderGenerator.kt:331 */
 1369   2429   
        #[allow(missing_docs)] // documentation missing in model
        2430  +
                               /* ServerBuilderGenerator.kt:343 */
 1370   2431   
        pub fn false_boolean_value(mut self, input: ::std::option::Option<bool>) -> Self {
 1371         -
            self.false_boolean_value = input;
        2432  +
            /* ServerBuilderGenerator.kt:344 */
        2433  +
            self.false_boolean_value =
        2434  +
                /* ServerBuilderGenerator.kt:376 */input
        2435  +
            /* ServerBuilderGenerator.kt:344 */;
 1372   2436   
            self
        2437  +
            /* ServerBuilderGenerator.kt:343 */
 1373   2438   
        }
        2439  +
        /* ServerBuilderGenerator.kt:331 */
 1374   2440   
        #[allow(missing_docs)] // documentation missing in model
        2441  +
                               /* ServerBuilderGenerator.kt:343 */
 1375   2442   
        pub fn byte_value(mut self, input: ::std::option::Option<i8>) -> Self {
 1376         -
            self.byte_value = input;
        2443  +
            /* ServerBuilderGenerator.kt:344 */
        2444  +
            self.byte_value =
        2445  +
                /* ServerBuilderGenerator.kt:376 */input
        2446  +
            /* ServerBuilderGenerator.kt:344 */;
 1377   2447   
            self
        2448  +
            /* ServerBuilderGenerator.kt:343 */
 1378   2449   
        }
        2450  +
        /* ServerBuilderGenerator.kt:331 */
 1379   2451   
        #[allow(missing_docs)] // documentation missing in model
        2452  +
                               /* ServerBuilderGenerator.kt:343 */
 1380   2453   
        pub fn double_value(mut self, input: ::std::option::Option<f64>) -> Self {
 1381         -
            self.double_value = input;
        2454  +
            /* ServerBuilderGenerator.kt:344 */
        2455  +
            self.double_value =
        2456  +
                /* ServerBuilderGenerator.kt:376 */input
        2457  +
            /* ServerBuilderGenerator.kt:344 */;
 1382   2458   
            self
        2459  +
            /* ServerBuilderGenerator.kt:343 */
 1383   2460   
        }
        2461  +
        /* ServerBuilderGenerator.kt:331 */
 1384   2462   
        #[allow(missing_docs)] // documentation missing in model
        2463  +
                               /* ServerBuilderGenerator.kt:343 */
 1385   2464   
        pub fn float_value(mut self, input: ::std::option::Option<f32>) -> Self {
 1386         -
            self.float_value = input;
        2465  +
            /* ServerBuilderGenerator.kt:344 */
        2466  +
            self.float_value =
        2467  +
                /* ServerBuilderGenerator.kt:376 */input
        2468  +
            /* ServerBuilderGenerator.kt:344 */;
 1387   2469   
            self
        2470  +
            /* ServerBuilderGenerator.kt:343 */
 1388   2471   
        }
        2472  +
        /* ServerBuilderGenerator.kt:331 */
 1389   2473   
        #[allow(missing_docs)] // documentation missing in model
        2474  +
                               /* ServerBuilderGenerator.kt:343 */
 1390   2475   
        pub fn integer_value(mut self, input: ::std::option::Option<i32>) -> Self {
 1391         -
            self.integer_value = input;
        2476  +
            /* ServerBuilderGenerator.kt:344 */
        2477  +
            self.integer_value =
        2478  +
                /* ServerBuilderGenerator.kt:376 */input
        2479  +
            /* ServerBuilderGenerator.kt:344 */;
 1392   2480   
            self
        2481  +
            /* ServerBuilderGenerator.kt:343 */
 1393   2482   
        }
        2483  +
        /* ServerBuilderGenerator.kt:331 */
 1394   2484   
        #[allow(missing_docs)] // documentation missing in model
        2485  +
                               /* ServerBuilderGenerator.kt:343 */
 1395   2486   
        pub fn long_value(mut self, input: ::std::option::Option<i64>) -> Self {
 1396         -
            self.long_value = input;
        2487  +
            /* ServerBuilderGenerator.kt:344 */
        2488  +
            self.long_value =
        2489  +
                /* ServerBuilderGenerator.kt:376 */input
        2490  +
            /* ServerBuilderGenerator.kt:344 */;
 1397   2491   
            self
        2492  +
            /* ServerBuilderGenerator.kt:343 */
 1398   2493   
        }
        2494  +
        /* ServerBuilderGenerator.kt:331 */
 1399   2495   
        #[allow(missing_docs)] // documentation missing in model
        2496  +
                               /* ServerBuilderGenerator.kt:343 */
 1400   2497   
        pub fn short_value(mut self, input: ::std::option::Option<i16>) -> Self {
 1401         -
            self.short_value = input;
        2498  +
            /* ServerBuilderGenerator.kt:344 */
        2499  +
            self.short_value =
        2500  +
                /* ServerBuilderGenerator.kt:376 */input
        2501  +
            /* ServerBuilderGenerator.kt:344 */;
 1402   2502   
            self
        2503  +
            /* ServerBuilderGenerator.kt:343 */
 1403   2504   
        }
        2505  +
        /* ServerBuilderGenerator.kt:331 */
 1404   2506   
        #[allow(missing_docs)] // documentation missing in model
        2507  +
                               /* ServerBuilderGenerator.kt:343 */
 1405   2508   
        pub fn string_value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 1406         -
            self.string_value = input;
        2509  +
            /* ServerBuilderGenerator.kt:344 */
        2510  +
            self.string_value =
        2511  +
                /* ServerBuilderGenerator.kt:376 */input
        2512  +
            /* ServerBuilderGenerator.kt:344 */;
 1407   2513   
            self
        2514  +
            /* ServerBuilderGenerator.kt:343 */
 1408   2515   
        }
        2516  +
        /* ServerBuilderGenerator.kt:331 */
 1409   2517   
        #[allow(missing_docs)] // documentation missing in model
        2518  +
                               /* ServerBuilderGenerator.kt:343 */
 1410   2519   
        pub fn blob_value(
 1411   2520   
            mut self,
 1412   2521   
            input: ::std::option::Option<::aws_smithy_types::Blob>,
 1413   2522   
        ) -> Self {
 1414         -
            self.blob_value = input;
        2523  +
            /* ServerBuilderGenerator.kt:344 */
        2524  +
            self.blob_value =
        2525  +
                /* ServerBuilderGenerator.kt:376 */input
        2526  +
            /* ServerBuilderGenerator.kt:344 */;
 1415   2527   
            self
        2528  +
            /* ServerBuilderGenerator.kt:343 */
 1416   2529   
        }
 1417         -
        /// Consumes the builder and constructs a [`SimpleScalarPropertiesOutput`](crate::output::SimpleScalarPropertiesOutput).
        2530  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`SimpleScalarPropertiesOutput`](crate::output::SimpleScalarPropertiesOutput).
        2531  +
        /* ServerBuilderGenerator.kt:271 */
 1418   2532   
        pub fn build(self) -> crate::output::SimpleScalarPropertiesOutput {
 1419   2533   
            self.build_enforcing_all_constraints()
 1420   2534   
        }
        2535  +
        /* ServerBuilderGenerator.kt:283 */
 1421   2536   
        fn build_enforcing_all_constraints(self) -> crate::output::SimpleScalarPropertiesOutput {
        2537  +
            /* ServerBuilderGenerator.kt:542 */
 1422   2538   
            crate::output::SimpleScalarPropertiesOutput {
        2539  +
                /* ServerBuilderGenerator.kt:546 */
 1423   2540   
                true_boolean_value: self.true_boolean_value,
        2541  +
                /* ServerBuilderGenerator.kt:546 */
 1424   2542   
                false_boolean_value: self.false_boolean_value,
        2543  +
                /* ServerBuilderGenerator.kt:546 */
 1425   2544   
                byte_value: self.byte_value,
        2545  +
                /* ServerBuilderGenerator.kt:546 */
 1426   2546   
                double_value: self.double_value,
        2547  +
                /* ServerBuilderGenerator.kt:546 */
 1427   2548   
                float_value: self.float_value,
        2549  +
                /* ServerBuilderGenerator.kt:546 */
 1428   2550   
                integer_value: self.integer_value,
        2551  +
                /* ServerBuilderGenerator.kt:546 */
 1429   2552   
                long_value: self.long_value,
        2553  +
                /* ServerBuilderGenerator.kt:546 */
 1430   2554   
                short_value: self.short_value,
        2555  +
                /* ServerBuilderGenerator.kt:546 */
 1431   2556   
                string_value: self.string_value,
        2557  +
                /* ServerBuilderGenerator.kt:546 */
 1432   2558   
                blob_value: self.blob_value,
        2559  +
                /* ServerBuilderGenerator.kt:542 */
 1433   2560   
            }
        2561  +
            /* ServerBuilderGenerator.kt:283 */
 1434   2562   
        }
        2563  +
        /* ServerBuilderGenerator.kt:215 */
 1435   2564   
    }
        2565  +
        2566  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 1436   2567   
}
 1437         -
/// See [`OptionalInputOutputOutput`](crate::output::OptionalInputOutputOutput).
        2568  +
/// /* ServerBuilderGenerator.kt:171 */See [`OptionalInputOutputOutput`](crate::output::OptionalInputOutputOutput).
 1438   2569   
pub mod optional_input_output_output {
 1439   2570   
        2571  +
    /* ServerBuilderGenerator.kt:461 */
 1440   2572   
    impl ::std::convert::From<Builder> for crate::output::OptionalInputOutputOutput {
 1441   2573   
        fn from(builder: Builder) -> Self {
 1442   2574   
            builder.build()
 1443   2575   
        }
 1444   2576   
    }
 1445         -
    /// A builder for [`OptionalInputOutputOutput`](crate::output::OptionalInputOutputOutput).
        2577  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OptionalInputOutputOutput`](crate::output::OptionalInputOutputOutput).
        2578  +
    /* RustType.kt:516 */
 1446   2579   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        2580  +
    /* ServerBuilderGenerator.kt:211 */
 1447   2581   
    pub struct Builder {
        2582  +
        /* ServerBuilderGenerator.kt:308 */
 1448   2583   
        pub(crate) value: ::std::option::Option<::std::string::String>,
        2584  +
        /* ServerBuilderGenerator.kt:211 */
 1449   2585   
    }
        2586  +
    /* ServerBuilderGenerator.kt:215 */
 1450   2587   
    impl Builder {
        2588  +
        /* ServerBuilderGenerator.kt:331 */
 1451   2589   
        #[allow(missing_docs)] // documentation missing in model
        2590  +
                               /* ServerBuilderGenerator.kt:343 */
 1452   2591   
        pub fn value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 1453         -
            self.value = input;
        2592  +
            /* ServerBuilderGenerator.kt:344 */
        2593  +
            self.value =
        2594  +
                /* ServerBuilderGenerator.kt:376 */input
        2595  +
            /* ServerBuilderGenerator.kt:344 */;
 1454   2596   
            self
        2597  +
            /* ServerBuilderGenerator.kt:343 */
 1455   2598   
        }
 1456         -
        /// Consumes the builder and constructs a [`OptionalInputOutputOutput`](crate::output::OptionalInputOutputOutput).
        2599  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OptionalInputOutputOutput`](crate::output::OptionalInputOutputOutput).
        2600  +
        /* ServerBuilderGenerator.kt:271 */
 1457   2601   
        pub fn build(self) -> crate::output::OptionalInputOutputOutput {
 1458   2602   
            self.build_enforcing_all_constraints()
 1459   2603   
        }
        2604  +
        /* ServerBuilderGenerator.kt:283 */
 1460   2605   
        fn build_enforcing_all_constraints(self) -> crate::output::OptionalInputOutputOutput {
 1461         -
            crate::output::OptionalInputOutputOutput { value: self.value }
        2606  +
            /* ServerBuilderGenerator.kt:542 */
        2607  +
            crate::output::OptionalInputOutputOutput {
        2608  +
                /* ServerBuilderGenerator.kt:546 */
        2609  +
                value: self.value,
        2610  +
                /* ServerBuilderGenerator.kt:542 */
        2611  +
            }
        2612  +
            /* ServerBuilderGenerator.kt:283 */
 1462   2613   
        }
        2614  +
        /* ServerBuilderGenerator.kt:215 */
 1463   2615   
    }
        2616  +
        2617  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 1464   2618   
}
 1465         -
/// See [`EmptyInputOutputOutput`](crate::output::EmptyInputOutputOutput).
        2619  +
/// /* ServerBuilderGenerator.kt:171 */See [`EmptyInputOutputOutput`](crate::output::EmptyInputOutputOutput).
 1466   2620   
pub mod empty_input_output_output {
 1467   2621   
        2622  +
    /* ServerBuilderGenerator.kt:461 */
 1468   2623   
    impl ::std::convert::From<Builder> for crate::output::EmptyInputOutputOutput {
 1469   2624   
        fn from(builder: Builder) -> Self {
 1470   2625   
            builder.build()
 1471   2626   
        }
 1472   2627   
    }
 1473         -
    /// A builder for [`EmptyInputOutputOutput`](crate::output::EmptyInputOutputOutput).
        2628  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`EmptyInputOutputOutput`](crate::output::EmptyInputOutputOutput).
        2629  +
    /* RustType.kt:516 */
 1474   2630   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 1475         -
    pub struct Builder {}
        2631  +
    /* ServerBuilderGenerator.kt:211 */
        2632  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
        2633  +
    /* ServerBuilderGenerator.kt:215 */
 1476   2634   
    impl Builder {
 1477         -
        /// Consumes the builder and constructs a [`EmptyInputOutputOutput`](crate::output::EmptyInputOutputOutput).
        2635  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`EmptyInputOutputOutput`](crate::output::EmptyInputOutputOutput).
        2636  +
        /* ServerBuilderGenerator.kt:271 */
 1478   2637   
        pub fn build(self) -> crate::output::EmptyInputOutputOutput {
 1479   2638   
            self.build_enforcing_all_constraints()
 1480   2639   
        }
        2640  +
        /* ServerBuilderGenerator.kt:283 */
 1481   2641   
        fn build_enforcing_all_constraints(self) -> crate::output::EmptyInputOutputOutput {
 1482         -
            crate::output::EmptyInputOutputOutput {}
        2642  +
            /* ServerBuilderGenerator.kt:542 */
        2643  +
            crate::output::EmptyInputOutputOutput {
        2644  +
            /* ServerBuilderGenerator.kt:542 */}
        2645  +
            /* ServerBuilderGenerator.kt:283 */
 1483   2646   
        }
        2647  +
        /* ServerBuilderGenerator.kt:215 */
 1484   2648   
    }
        2649  +
        2650  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 1485   2651   
}
 1486         -
/// See [`NoInputOutputOutput`](crate::output::NoInputOutputOutput).
        2652  +
/// /* ServerBuilderGenerator.kt:171 */See [`NoInputOutputOutput`](crate::output::NoInputOutputOutput).
 1487   2653   
pub mod no_input_output_output {
 1488   2654   
        2655  +
    /* ServerBuilderGenerator.kt:461 */
 1489   2656   
    impl ::std::convert::From<Builder> for crate::output::NoInputOutputOutput {
 1490   2657   
        fn from(builder: Builder) -> Self {
 1491   2658   
            builder.build()
 1492   2659   
        }
 1493   2660   
    }
 1494         -
    /// A builder for [`NoInputOutputOutput`](crate::output::NoInputOutputOutput).
        2661  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`NoInputOutputOutput`](crate::output::NoInputOutputOutput).
        2662  +
    /* RustType.kt:516 */
 1495   2663   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 1496         -
    pub struct Builder {}
        2664  +
    /* ServerBuilderGenerator.kt:211 */
        2665  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
        2666  +
    /* ServerBuilderGenerator.kt:215 */
 1497   2667   
    impl Builder {
 1498         -
        /// Consumes the builder and constructs a [`NoInputOutputOutput`](crate::output::NoInputOutputOutput).
        2668  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`NoInputOutputOutput`](crate::output::NoInputOutputOutput).
        2669  +
        /* ServerBuilderGenerator.kt:271 */
 1499   2670   
        pub fn build(self) -> crate::output::NoInputOutputOutput {
 1500   2671   
            self.build_enforcing_all_constraints()
 1501   2672   
        }
        2673  +
        /* ServerBuilderGenerator.kt:283 */
 1502   2674   
        fn build_enforcing_all_constraints(self) -> crate::output::NoInputOutputOutput {
 1503         -
            crate::output::NoInputOutputOutput {}
        2675  +
            /* ServerBuilderGenerator.kt:542 */
        2676  +
            crate::output::NoInputOutputOutput {
        2677  +
            /* ServerBuilderGenerator.kt:542 */}
        2678  +
            /* ServerBuilderGenerator.kt:283 */
 1504   2679   
        }
        2680  +
        /* ServerBuilderGenerator.kt:215 */
 1505   2681   
    }
        2682  +
        2683  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 1506   2684   
}