Server Test

Server Test

rev. d838bf488731ae5e751cce0fe13f339a5b9be858 (ignoring whitespace)

Files changed:

tmp-codegen-diff/codegen-server-test/rest_json/rust-server-codegen/src/event_stream_serde.rs

@@ -0,1 +0,627 @@
           1  +
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* EventStreamErrorMarshallerGenerator.kt:79 */
           3  +
#[non_exhaustive]
           4  +
#[derive(Debug)]
           5  +
pub struct EventStreamErrorMarshaller;
           6  +
           7  +
impl EventStreamErrorMarshaller {
           8  +
    pub fn new() -> Self {
           9  +
        EventStreamErrorMarshaller
          10  +
    }
          11  +
}
          12  +
/* EventStreamErrorMarshallerGenerator.kt:93 */
          13  +
impl ::aws_smithy_eventstream::frame::MarshallMessage for EventStreamErrorMarshaller {
          14  +
    /* EventStreamErrorMarshallerGenerator.kt:97 */
          15  +
    type Input = crate::error::EventStreamError;
          16  +
    /* EventStreamErrorMarshallerGenerator.kt:99 */
          17  +
    fn marshall(
          18  +
        &self,
          19  +
        _input: Self::Input,
          20  +
    ) -> std::result::Result<
          21  +
        ::aws_smithy_types::event_stream::Message,
          22  +
        ::aws_smithy_eventstream::error::Error,
          23  +
    > {
          24  +
        /* EventStreamErrorMarshallerGenerator.kt:103 */
          25  +
        let mut headers = Vec::new();
          26  +
        /* EventStreamMarshallerGenerator.kt:343 */
          27  +
        headers.push(::aws_smithy_types::event_stream::Header::new(
          28  +
            ":message-type",
          29  +
            ::aws_smithy_types::event_stream::HeaderValue::String("exception".into()),
          30  +
        ));
          31  +
        /* EventStreamErrorMarshallerGenerator.kt:108 */
          32  +
        let payload = match _input {
          33  +
            /* EventStreamErrorMarshallerGenerator.kt:113 */crate::error::EventStreamError::ErrorEvent(inner) =>  {
          34  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":exception-type", ::aws_smithy_types::event_stream::HeaderValue::String("error".into())));
          35  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":content-type", ::aws_smithy_types::event_stream::HeaderValue::String("application/json".into())));
          36  +
                /* EventStreamMarshallerGenerator.kt:304 */crate::protocol_serde::shape_error_event::ser_error_event_error(&inner)
          37  +
                                            .map_err(|err| ::aws_smithy_eventstream::error::Error::marshalling(format!("{err}")))?
          38  +
            /* EventStreamErrorMarshallerGenerator.kt:113 */}
          39  +
        /* EventStreamErrorMarshallerGenerator.kt:108 */}
          40  +
        /* EventStreamErrorMarshallerGenerator.kt:131 */;
          41  +
        Ok(::aws_smithy_types::event_stream::Message::new_from_parts(
          42  +
            headers, payload,
          43  +
        ))
          44  +
        /* EventStreamErrorMarshallerGenerator.kt:99 */
          45  +
    }
          46  +
    /* EventStreamErrorMarshallerGenerator.kt:93 */
          47  +
}
          48  +
          49  +
/* EventStreamMarshallerGenerator.kt:135 */
          50  +
#[non_exhaustive]
          51  +
#[derive(Debug)]
          52  +
pub struct EventStreamMarshaller;
          53  +
          54  +
impl EventStreamMarshaller {
          55  +
    pub fn new() -> Self {
          56  +
        EventStreamMarshaller
          57  +
    }
          58  +
}
          59  +
/* EventStreamMarshallerGenerator.kt:149 */
          60  +
impl ::aws_smithy_eventstream::frame::MarshallMessage for EventStreamMarshaller {
          61  +
    /* EventStreamMarshallerGenerator.kt:153 */
          62  +
    type Input = crate::model::EventStream;
          63  +
    /* EventStreamMarshallerGenerator.kt:155 */
          64  +
    fn marshall(
          65  +
        &self,
          66  +
        input: Self::Input,
          67  +
    ) -> std::result::Result<
          68  +
        ::aws_smithy_types::event_stream::Message,
          69  +
        ::aws_smithy_eventstream::error::Error,
          70  +
    > {
          71  +
        /* EventStreamMarshallerGenerator.kt:159 */
          72  +
        let mut headers = Vec::new();
          73  +
        /* EventStreamMarshallerGenerator.kt:343 */
          74  +
        headers.push(::aws_smithy_types::event_stream::Header::new(
          75  +
            ":message-type",
          76  +
            ::aws_smithy_types::event_stream::HeaderValue::String("event".into()),
          77  +
        ));
          78  +
        /* EventStreamMarshallerGenerator.kt:161 */
          79  +
        let payload = match input {
          80  +
            /* EventStreamMarshallerGenerator.kt:172 */Self::Input::Headers(inner) =>  {
          81  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":event-type", ::aws_smithy_types::event_stream::HeaderValue::String("headers".into())));
          82  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(value) = inner.boolean_header {
          83  +
                    /* EventStreamMarshallerGenerator.kt:245 */headers.push(
          84  +
                        /* EventStreamMarshallerGenerator.kt:246 */::aws_smithy_types::event_stream::Header::new("booleanHeader", ::aws_smithy_types::event_stream::HeaderValue::Bool(value))
          85  +
                    /* EventStreamMarshallerGenerator.kt:245 */);
          86  +
                /* EventStreamMarshallerGenerator.kt:326 */}
          87  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(value) = inner.byte_header {
          88  +
                    /* EventStreamMarshallerGenerator.kt:245 */headers.push(
          89  +
                        /* EventStreamMarshallerGenerator.kt:246 */::aws_smithy_types::event_stream::Header::new("byteHeader", ::aws_smithy_types::event_stream::HeaderValue::Byte(value))
          90  +
                    /* EventStreamMarshallerGenerator.kt:245 */);
          91  +
                /* EventStreamMarshallerGenerator.kt:326 */}
          92  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(value) = inner.short_header {
          93  +
                    /* EventStreamMarshallerGenerator.kt:245 */headers.push(
          94  +
                        /* EventStreamMarshallerGenerator.kt:246 */::aws_smithy_types::event_stream::Header::new("shortHeader", ::aws_smithy_types::event_stream::HeaderValue::Int16(value))
          95  +
                    /* EventStreamMarshallerGenerator.kt:245 */);
          96  +
                /* EventStreamMarshallerGenerator.kt:326 */}
          97  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(value) = inner.int_header {
          98  +
                    /* EventStreamMarshallerGenerator.kt:245 */headers.push(
          99  +
                        /* EventStreamMarshallerGenerator.kt:246 */::aws_smithy_types::event_stream::Header::new("intHeader", ::aws_smithy_types::event_stream::HeaderValue::Int32(value))
         100  +
                    /* EventStreamMarshallerGenerator.kt:245 */);
         101  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         102  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(value) = inner.long_header {
         103  +
                    /* EventStreamMarshallerGenerator.kt:245 */headers.push(
         104  +
                        /* EventStreamMarshallerGenerator.kt:246 */::aws_smithy_types::event_stream::Header::new("longHeader", ::aws_smithy_types::event_stream::HeaderValue::Int64(value))
         105  +
                    /* EventStreamMarshallerGenerator.kt:245 */);
         106  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         107  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(value) = inner.blob_header {
         108  +
                    /* EventStreamMarshallerGenerator.kt:245 */headers.push(
         109  +
                        /* EventStreamMarshallerGenerator.kt:246 */::aws_smithy_types::event_stream::Header::new("blobHeader", ::aws_smithy_types::event_stream::HeaderValue::ByteArray(value.into_inner().into()))
         110  +
                    /* EventStreamMarshallerGenerator.kt:245 */);
         111  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         112  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(value) = inner.string_header {
         113  +
                    /* EventStreamMarshallerGenerator.kt:245 */headers.push(
         114  +
                        /* EventStreamMarshallerGenerator.kt:246 */::aws_smithy_types::event_stream::Header::new("stringHeader", ::aws_smithy_types::event_stream::HeaderValue::String(value.into()))
         115  +
                    /* EventStreamMarshallerGenerator.kt:245 */);
         116  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         117  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(value) = inner.timestamp_header {
         118  +
                    /* EventStreamMarshallerGenerator.kt:245 */headers.push(
         119  +
                        /* EventStreamMarshallerGenerator.kt:246 */::aws_smithy_types::event_stream::Header::new("timestampHeader", ::aws_smithy_types::event_stream::HeaderValue::Timestamp(value.into()))
         120  +
                    /* EventStreamMarshallerGenerator.kt:245 */);
         121  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         122  +
                /* EventStreamMarshallerGenerator.kt:222 */Vec::new()
         123  +
            /* EventStreamMarshallerGenerator.kt:172 */}
         124  +
            /* EventStreamMarshallerGenerator.kt:172 */Self::Input::BlobPayload(inner) =>  {
         125  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":event-type", ::aws_smithy_types::event_stream::HeaderValue::String("blobPayload".into())));
         126  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":content-type", ::aws_smithy_types::event_stream::HeaderValue::String("application/octet-stream".into())));
         127  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(inner_payload) = inner.payload {
         128  +
                    /* EventStreamMarshallerGenerator.kt:293 */inner_payload.into_inner()
         129  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         130  +
                /* EventStreamMarshallerGenerator.kt:330 */ else  {
         131  +
                    /* EventStreamMarshallerGenerator.kt:294 */Vec::new()
         132  +
                /* EventStreamMarshallerGenerator.kt:330 */}
         133  +
            /* EventStreamMarshallerGenerator.kt:172 */}
         134  +
            /* EventStreamMarshallerGenerator.kt:172 */Self::Input::StringPayload(inner) =>  {
         135  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":event-type", ::aws_smithy_types::event_stream::HeaderValue::String("stringPayload".into())));
         136  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":content-type", ::aws_smithy_types::event_stream::HeaderValue::String("text/plain".into())));
         137  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(inner_payload) = inner.payload {
         138  +
                    /* EventStreamMarshallerGenerator.kt:293 */inner_payload.into_bytes()
         139  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         140  +
                /* EventStreamMarshallerGenerator.kt:330 */ else  {
         141  +
                    /* EventStreamMarshallerGenerator.kt:294 */Vec::new()
         142  +
                /* EventStreamMarshallerGenerator.kt:330 */}
         143  +
            /* EventStreamMarshallerGenerator.kt:172 */}
         144  +
            /* EventStreamMarshallerGenerator.kt:172 */Self::Input::StructurePayload(inner) =>  {
         145  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":event-type", ::aws_smithy_types::event_stream::HeaderValue::String("structurePayload".into())));
         146  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":content-type", ::aws_smithy_types::event_stream::HeaderValue::String("application/json".into())));
         147  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(inner_payload) = inner.payload {
         148  +
                    /* EventStreamMarshallerGenerator.kt:304 */crate::protocol_serde::shape_structure_payload_event::ser_payload_payload(&inner_payload)
         149  +
                                                .map_err(|err| ::aws_smithy_eventstream::error::Error::marshalling(format!("{err}")))?
         150  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         151  +
                /* EventStreamMarshallerGenerator.kt:330 */ else  {
         152  +
                    /* EventStreamMarshallerGenerator.kt:313 */unimplemented!("TODO(EventStream): Figure out what to do when there's no payload")
         153  +
                /* EventStreamMarshallerGenerator.kt:330 */}
         154  +
            /* EventStreamMarshallerGenerator.kt:172 */}
         155  +
            /* EventStreamMarshallerGenerator.kt:172 */Self::Input::UnionPayload(inner) =>  {
         156  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":event-type", ::aws_smithy_types::event_stream::HeaderValue::String("unionPayload".into())));
         157  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":content-type", ::aws_smithy_types::event_stream::HeaderValue::String("application/json".into())));
         158  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(inner_payload) = inner.payload {
         159  +
                    /* EventStreamMarshallerGenerator.kt:304 */crate::protocol_serde::shape_union_payload_event::ser_payload_payload(&inner_payload)
         160  +
                                                .map_err(|err| ::aws_smithy_eventstream::error::Error::marshalling(format!("{err}")))?
         161  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         162  +
                /* EventStreamMarshallerGenerator.kt:330 */ else  {
         163  +
                    /* EventStreamMarshallerGenerator.kt:313 */unimplemented!("TODO(EventStream): Figure out what to do when there's no payload")
         164  +
                /* EventStreamMarshallerGenerator.kt:330 */}
         165  +
            /* EventStreamMarshallerGenerator.kt:172 */}
         166  +
            /* EventStreamMarshallerGenerator.kt:172 */Self::Input::HeadersAndExplicitPayload(inner) =>  {
         167  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":event-type", ::aws_smithy_types::event_stream::HeaderValue::String("headersAndExplicitPayload".into())));
         168  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(value) = inner.header {
         169  +
                    /* EventStreamMarshallerGenerator.kt:245 */headers.push(
         170  +
                        /* EventStreamMarshallerGenerator.kt:246 */::aws_smithy_types::event_stream::Header::new("header", ::aws_smithy_types::event_stream::HeaderValue::String(value.into()))
         171  +
                    /* EventStreamMarshallerGenerator.kt:245 */);
         172  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         173  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":content-type", ::aws_smithy_types::event_stream::HeaderValue::String("application/json".into())));
         174  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(inner_payload) = inner.payload {
         175  +
                    /* EventStreamMarshallerGenerator.kt:304 */crate::protocol_serde::shape_headers_and_explicit_payload_event::ser_payload_payload(&inner_payload)
         176  +
                                                .map_err(|err| ::aws_smithy_eventstream::error::Error::marshalling(format!("{err}")))?
         177  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         178  +
                /* EventStreamMarshallerGenerator.kt:330 */ else  {
         179  +
                    /* EventStreamMarshallerGenerator.kt:313 */unimplemented!("TODO(EventStream): Figure out what to do when there's no payload")
         180  +
                /* EventStreamMarshallerGenerator.kt:330 */}
         181  +
            /* EventStreamMarshallerGenerator.kt:172 */}
         182  +
            /* EventStreamMarshallerGenerator.kt:172 */Self::Input::HeadersAndImplicitPayload(inner) =>  {
         183  +
                /* EventStreamMarshallerGenerator.kt:343 */headers.push(::aws_smithy_types::event_stream::Header::new(":event-type", ::aws_smithy_types::event_stream::HeaderValue::String("headersAndImplicitPayload".into())));
         184  +
                /* EventStreamMarshallerGenerator.kt:326 */if let Some(value) = inner.header {
         185  +
                    /* EventStreamMarshallerGenerator.kt:245 */headers.push(
         186  +
                        /* EventStreamMarshallerGenerator.kt:246 */::aws_smithy_types::event_stream::Header::new("header", ::aws_smithy_types::event_stream::HeaderValue::String(value.into()))
         187  +
                    /* EventStreamMarshallerGenerator.kt:245 */);
         188  +
                /* EventStreamMarshallerGenerator.kt:326 */}
         189  +
                /* EventStreamMarshallerGenerator.kt:222 */Vec::new()
         190  +
            /* EventStreamMarshallerGenerator.kt:172 */}
         191  +
        /* EventStreamMarshallerGenerator.kt:161 */}
         192  +
        /* EventStreamMarshallerGenerator.kt:189 */;
         193  +
        Ok(::aws_smithy_types::event_stream::Message::new_from_parts(
         194  +
            headers, payload,
         195  +
        ))
         196  +
        /* EventStreamMarshallerGenerator.kt:155 */
         197  +
    }
         198  +
    /* EventStreamMarshallerGenerator.kt:149 */
         199  +
}
         200  +
         201  +
/* EventStreamUnmarshallerGenerator.kt:99 */
         202  +
#[non_exhaustive]
         203  +
#[derive(Debug)]
         204  +
pub struct EventStreamUnmarshaller;
         205  +
         206  +
impl EventStreamUnmarshaller {
         207  +
    pub fn new() -> Self {
         208  +
        EventStreamUnmarshaller
         209  +
    }
         210  +
}
         211  +
/* EventStreamUnmarshallerGenerator.kt:113 */
         212  +
impl ::aws_smithy_eventstream::frame::UnmarshallMessage for EventStreamUnmarshaller {
         213  +
    /* EventStreamUnmarshallerGenerator.kt:117 */
         214  +
    type Output = crate::model::EventStream;
         215  +
    /* EventStreamUnmarshallerGenerator.kt:118 */
         216  +
    type Error = crate::error::EventStreamError;
         217  +
    /* EventStreamUnmarshallerGenerator.kt:120 */
         218  +
    fn unmarshall(
         219  +
        &self,
         220  +
        message: &::aws_smithy_types::event_stream::Message,
         221  +
    ) -> std::result::Result<
         222  +
        ::aws_smithy_eventstream::frame::UnmarshalledMessage<Self::Output, Self::Error>,
         223  +
        ::aws_smithy_eventstream::error::Error,
         224  +
    > {
         225  +
        /* EventStreamUnmarshallerGenerator.kt:129 */
         226  +
        let response_headers = ::aws_smithy_eventstream::smithy::parse_response_headers(message)?;
         227  +
        /* EventStreamUnmarshallerGenerator.kt:130 */
         228  +
        match response_headers.message_type.as_str() {
         229  +
            /* EventStreamUnmarshallerGenerator.kt:131 */
         230  +
            "event" => {
         231  +
                /* EventStreamUnmarshallerGenerator.kt:156 */
         232  +
                match response_headers.smithy_type.as_str() {
         233  +
                    /* EventStreamUnmarshallerGenerator.kt:159 */
         234  +
                    "headers" => {
         235  +
                        /* EventStreamUnmarshallerGenerator.kt:222 */
         236  +
                        let mut builder = crate::model::headers_event::Builder::default();
         237  +
                        /* EventStreamUnmarshallerGenerator.kt:229 */
         238  +
                        for header in message.headers() {
         239  +
                            /* EventStreamUnmarshallerGenerator.kt:230 */
         240  +
                            match header.name().as_str() {
         241  +
                                /* EventStreamUnmarshallerGenerator.kt:232 */
         242  +
                                "booleanHeader" => {
         243  +
                                    /* EventStreamUnmarshallerGenerator.kt:276 */
         244  +
                                    builder =
         245  +
                                        builder.set_boolean_header(
         246  +
                                            /* EventStreamUnmarshallerGenerator.kt:277 */
         247  +
                                            Some(
         248  +
                                                /* EventStreamUnmarshallerGenerator.kt:279 */
         249  +
                                                ::aws_smithy_eventstream::smithy::expect_bool(
         250  +
                                                    header,
         251  +
                                                )?, /* EventStreamUnmarshallerGenerator.kt:277 */
         252  +
                                            ), /* EventStreamUnmarshallerGenerator.kt:276 */
         253  +
                                        );
         254  +
                                    /* EventStreamUnmarshallerGenerator.kt:232 */
         255  +
                                }
         256  +
                                /* EventStreamUnmarshallerGenerator.kt:232 */
         257  +
                                "byteHeader" => {
         258  +
                                    /* EventStreamUnmarshallerGenerator.kt:276 */
         259  +
                                    builder =
         260  +
                                        builder.set_byte_header(
         261  +
                                            /* EventStreamUnmarshallerGenerator.kt:277 */
         262  +
                                            Some(
         263  +
                                                /* EventStreamUnmarshallerGenerator.kt:280 */
         264  +
                                                ::aws_smithy_eventstream::smithy::expect_byte(
         265  +
                                                    header,
         266  +
                                                )?, /* EventStreamUnmarshallerGenerator.kt:277 */
         267  +
                                            ), /* EventStreamUnmarshallerGenerator.kt:276 */
         268  +
                                        );
         269  +
                                    /* EventStreamUnmarshallerGenerator.kt:232 */
         270  +
                                }
         271  +
                                /* EventStreamUnmarshallerGenerator.kt:232 */
         272  +
                                "shortHeader" => {
         273  +
                                    /* EventStreamUnmarshallerGenerator.kt:276 */
         274  +
                                    builder =
         275  +
                                        builder.set_short_header(
         276  +
                                            /* EventStreamUnmarshallerGenerator.kt:277 */
         277  +
                                            Some(
         278  +
                                                /* EventStreamUnmarshallerGenerator.kt:281 */
         279  +
                                                ::aws_smithy_eventstream::smithy::expect_int16(
         280  +
                                                    header,
         281  +
                                                )?, /* EventStreamUnmarshallerGenerator.kt:277 */
         282  +
                                            ), /* EventStreamUnmarshallerGenerator.kt:276 */
         283  +
                                        );
         284  +
                                    /* EventStreamUnmarshallerGenerator.kt:232 */
         285  +
                                }
         286  +
                                /* EventStreamUnmarshallerGenerator.kt:232 */
         287  +
                                "intHeader" => {
         288  +
                                    /* EventStreamUnmarshallerGenerator.kt:276 */
         289  +
                                    builder =
         290  +
                                        builder.set_int_header(
         291  +
                                            /* EventStreamUnmarshallerGenerator.kt:277 */
         292  +
                                            Some(
         293  +
                                                /* EventStreamUnmarshallerGenerator.kt:282 */
         294  +
                                                ::aws_smithy_eventstream::smithy::expect_int32(
         295  +
                                                    header,
         296  +
                                                )?, /* EventStreamUnmarshallerGenerator.kt:277 */
         297  +
                                            ), /* EventStreamUnmarshallerGenerator.kt:276 */
         298  +
                                        );
         299  +
                                    /* EventStreamUnmarshallerGenerator.kt:232 */
         300  +
                                }
         301  +
                                /* EventStreamUnmarshallerGenerator.kt:232 */
         302  +
                                "longHeader" => {
         303  +
                                    /* EventStreamUnmarshallerGenerator.kt:276 */
         304  +
                                    builder =
         305  +
                                        builder.set_long_header(
         306  +
                                            /* EventStreamUnmarshallerGenerator.kt:277 */
         307  +
                                            Some(
         308  +
                                                /* EventStreamUnmarshallerGenerator.kt:283 */
         309  +
                                                ::aws_smithy_eventstream::smithy::expect_int64(
         310  +
                                                    header,
         311  +
                                                )?, /* EventStreamUnmarshallerGenerator.kt:277 */
         312  +
                                            ), /* EventStreamUnmarshallerGenerator.kt:276 */
         313  +
                                        );
         314  +
                                    /* EventStreamUnmarshallerGenerator.kt:232 */
         315  +
                                }
         316  +
                                /* EventStreamUnmarshallerGenerator.kt:232 */
         317  +
                                "blobHeader" => {
         318  +
                                    /* EventStreamUnmarshallerGenerator.kt:276 */
         319  +
                                    builder = builder.set_blob_header(
         320  +
                                        /* EventStreamUnmarshallerGenerator.kt:277 */
         321  +
                                        Some(
         322  +
                                            /* EventStreamUnmarshallerGenerator.kt:284 */
         323  +
                                            ::aws_smithy_eventstream::smithy::expect_byte_array(
         324  +
                                                header,
         325  +
                                            )?, /* EventStreamUnmarshallerGenerator.kt:277 */
         326  +
                                        ), /* EventStreamUnmarshallerGenerator.kt:276 */
         327  +
                                    );
         328  +
                                    /* EventStreamUnmarshallerGenerator.kt:232 */
         329  +
                                }
         330  +
                                /* EventStreamUnmarshallerGenerator.kt:232 */
         331  +
                                "stringHeader" => {
         332  +
                                    /* EventStreamUnmarshallerGenerator.kt:276 */
         333  +
                                    builder = builder.set_string_header(
         334  +
                                        /* EventStreamUnmarshallerGenerator.kt:277 */
         335  +
                                        Some(
         336  +
                                            /* EventStreamUnmarshallerGenerator.kt:286 */
         337  +
                                            ::aws_smithy_eventstream::smithy::expect_string(
         338  +
                                                header,
         339  +
                                            )?, /* EventStreamUnmarshallerGenerator.kt:277 */
         340  +
                                        ), /* EventStreamUnmarshallerGenerator.kt:276 */
         341  +
                                    );
         342  +
                                    /* EventStreamUnmarshallerGenerator.kt:232 */
         343  +
                                }
         344  +
                                /* EventStreamUnmarshallerGenerator.kt:232 */
         345  +
                                "timestampHeader" => {
         346  +
                                    /* EventStreamUnmarshallerGenerator.kt:276 */
         347  +
                                    builder = builder.set_timestamp_header(
         348  +
                                        /* EventStreamUnmarshallerGenerator.kt:277 */
         349  +
                                        Some(
         350  +
                                            /* EventStreamUnmarshallerGenerator.kt:287 */
         351  +
                                            ::aws_smithy_eventstream::smithy::expect_timestamp(
         352  +
                                                header,
         353  +
                                            )?, /* EventStreamUnmarshallerGenerator.kt:277 */
         354  +
                                        ), /* EventStreamUnmarshallerGenerator.kt:276 */
         355  +
                                    );
         356  +
                                    /* EventStreamUnmarshallerGenerator.kt:232 */
         357  +
                                }
         358  +
                                /* EventStreamUnmarshallerGenerator.kt:236 */// Event stream protocol headers start with ':'
         359  +
                                /* EventStreamUnmarshallerGenerator.kt:237 */
         360  +
                                name => {
         361  +
                                    if !name.starts_with(':') {
         362  +
                                        /* EventStreamUnmarshallerGenerator.kt:238 */
         363  +
                                        ::tracing::trace!(
         364  +
                                            "Unrecognized event stream message header: {}",
         365  +
                                            name
         366  +
                                        );
         367  +
                                        /* EventStreamUnmarshallerGenerator.kt:237 */
         368  +
                                    }
         369  +
                                } /* EventStreamUnmarshallerGenerator.kt:230 */
         370  +
                            }
         371  +
                            /* EventStreamUnmarshallerGenerator.kt:229 */
         372  +
                        }
         373  +
                        /* EventStreamUnmarshallerGenerator.kt:266 */
         374  +
                        Ok(::aws_smithy_eventstream::frame::UnmarshalledMessage::Event(
         375  +
                            crate::model::EventStream::Headers(builder.build()),
         376  +
                        ))
         377  +
                        /* EventStreamUnmarshallerGenerator.kt:159 */
         378  +
                    }
         379  +
                    /* EventStreamUnmarshallerGenerator.kt:159 */
         380  +
                    "blobPayload" => {
         381  +
                        /* EventStreamUnmarshallerGenerator.kt:222 */
         382  +
                        let mut builder = crate::model::blob_payload_event::Builder::default();
         383  +
                        /* EventStreamUnmarshallerGenerator.kt:297 */
         384  +
                        let content_type = response_headers.content_type().unwrap_or_default();
         385  +
                        if content_type != "application/octet-stream" {
         386  +
                            return Err(::aws_smithy_eventstream::error::Error::unmarshalling(format!(
         387  +
                                                "expected :content-type to be 'application/octet-stream', but was '{content_type}'"
         388  +
                                            )));
         389  +
                        }
         390  +
                        /* EventStreamUnmarshallerGenerator.kt:309 */
         391  +
                        builder = builder.set_payload(
         392  +
                            /* EventStreamUnmarshallerGenerator.kt:310 */Some(
         393  +
                                /* EventStreamUnmarshallerGenerator.kt:313 */::aws_smithy_types::Blob::new(message.payload().as_ref())
         394  +
                            /* EventStreamUnmarshallerGenerator.kt:310 */)
         395  +
                        /* EventStreamUnmarshallerGenerator.kt:309 */);
         396  +
                        /* EventStreamUnmarshallerGenerator.kt:266 */
         397  +
                        Ok(::aws_smithy_eventstream::frame::UnmarshalledMessage::Event(
         398  +
                            crate::model::EventStream::BlobPayload(builder.build()),
         399  +
                        ))
         400  +
                        /* EventStreamUnmarshallerGenerator.kt:159 */
         401  +
                    }
         402  +
                    /* EventStreamUnmarshallerGenerator.kt:159 */
         403  +
                    "stringPayload" => {
         404  +
                        /* EventStreamUnmarshallerGenerator.kt:222 */
         405  +
                        let mut builder = crate::model::string_payload_event::Builder::default();
         406  +
                        /* EventStreamUnmarshallerGenerator.kt:297 */
         407  +
                        let content_type = response_headers.content_type().unwrap_or_default();
         408  +
                        if content_type != "text/plain" {
         409  +
                            return Err(::aws_smithy_eventstream::error::Error::unmarshalling(format!(
         410  +
                                                "expected :content-type to be 'text/plain', but was '{content_type}'"
         411  +
                                            )));
         412  +
                        }
         413  +
                        /* EventStreamUnmarshallerGenerator.kt:309 */
         414  +
                        builder = builder.set_payload(
         415  +
                            /* EventStreamUnmarshallerGenerator.kt:310 */
         416  +
                            Some(
         417  +
                                /* EventStreamUnmarshallerGenerator.kt:317 */
         418  +
                                ::std::str::from_utf8(message.payload())
         419  +
                                    .map_err(|_| {
         420  +
                                        ::aws_smithy_eventstream::error::Error::unmarshalling(
         421  +
                                            "message payload is not valid UTF-8",
         422  +
                                        )
         423  +
                                    })?
         424  +
                                    .to_owned(), /* EventStreamUnmarshallerGenerator.kt:310 */
         425  +
                            ), /* EventStreamUnmarshallerGenerator.kt:309 */
         426  +
                        );
         427  +
                        /* EventStreamUnmarshallerGenerator.kt:266 */
         428  +
                        Ok(::aws_smithy_eventstream::frame::UnmarshalledMessage::Event(
         429  +
                            crate::model::EventStream::StringPayload(builder.build()),
         430  +
                        ))
         431  +
                        /* EventStreamUnmarshallerGenerator.kt:159 */
         432  +
                    }
         433  +
                    /* EventStreamUnmarshallerGenerator.kt:159 */
         434  +
                    "structurePayload" => {
         435  +
                        /* EventStreamUnmarshallerGenerator.kt:222 */
         436  +
                        let mut builder = crate::model::structure_payload_event::Builder::default();
         437  +
                        /* EventStreamUnmarshallerGenerator.kt:309 */
         438  +
                        builder = builder.set_payload(
         439  +
                            /* EventStreamUnmarshallerGenerator.kt:310 */Some(
         440  +
                                /* EventStreamUnmarshallerGenerator.kt:338 */crate::protocol_serde::shape_payload_structure::de_payload_structure_payload(&message.payload()[..])
         441  +
                                                .map_err(|err| {
         442  +
                                                    ::aws_smithy_eventstream::error::Error::unmarshalling(format!("failed to unmarshall payload: {err}"))
         443  +
                                                })?
         444  +
                            /* EventStreamUnmarshallerGenerator.kt:310 */)
         445  +
                        /* EventStreamUnmarshallerGenerator.kt:309 */);
         446  +
                        /* EventStreamUnmarshallerGenerator.kt:266 */
         447  +
                        Ok(::aws_smithy_eventstream::frame::UnmarshalledMessage::Event(
         448  +
                            crate::model::EventStream::StructurePayload(builder.build()),
         449  +
                        ))
         450  +
                        /* EventStreamUnmarshallerGenerator.kt:159 */
         451  +
                    }
         452  +
                    /* EventStreamUnmarshallerGenerator.kt:159 */
         453  +
                    "unionPayload" => {
         454  +
                        /* EventStreamUnmarshallerGenerator.kt:222 */
         455  +
                        let mut builder = crate::model::union_payload_event::Builder::default();
         456  +
                        /* EventStreamUnmarshallerGenerator.kt:309 */
         457  +
                        builder = builder.set_payload(
         458  +
                            /* EventStreamUnmarshallerGenerator.kt:310 */Some(
         459  +
                                /* EventStreamUnmarshallerGenerator.kt:338 */crate::protocol_serde::shape_payload_union::de_payload_union_payload(&message.payload()[..])
         460  +
                                                .map_err(|err| {
         461  +
                                                    ::aws_smithy_eventstream::error::Error::unmarshalling(format!("failed to unmarshall payload: {err}"))
         462  +
                                                })?
         463  +
                            /* EventStreamUnmarshallerGenerator.kt:310 */)
         464  +
                        /* EventStreamUnmarshallerGenerator.kt:309 */);
         465  +
                        /* EventStreamUnmarshallerGenerator.kt:266 */
         466  +
                        Ok(::aws_smithy_eventstream::frame::UnmarshalledMessage::Event(
         467  +
                            crate::model::EventStream::UnionPayload(builder.build()),
         468  +
                        ))
         469  +
                        /* EventStreamUnmarshallerGenerator.kt:159 */
         470  +
                    }
         471  +
                    /* EventStreamUnmarshallerGenerator.kt:159 */
         472  +
                    "headersAndExplicitPayload" => {
         473  +
                        /* EventStreamUnmarshallerGenerator.kt:222 */
         474  +
                        let mut builder =
         475  +
                            crate::model::headers_and_explicit_payload_event::Builder::default();
         476  +
                        /* EventStreamUnmarshallerGenerator.kt:309 */
         477  +
                        builder = builder.set_payload(
         478  +
                            /* EventStreamUnmarshallerGenerator.kt:310 */Some(
         479  +
                                /* EventStreamUnmarshallerGenerator.kt:338 */crate::protocol_serde::shape_payload_structure::de_payload_structure_payload(&message.payload()[..])
         480  +
                                                .map_err(|err| {
         481  +
                                                    ::aws_smithy_eventstream::error::Error::unmarshalling(format!("failed to unmarshall payload: {err}"))
         482  +
                                                })?
         483  +
                            /* EventStreamUnmarshallerGenerator.kt:310 */)
         484  +
                        /* EventStreamUnmarshallerGenerator.kt:309 */);
         485  +
                        /* EventStreamUnmarshallerGenerator.kt:229 */
         486  +
                        for header in message.headers() {
         487  +
                            /* EventStreamUnmarshallerGenerator.kt:230 */
         488  +
                            match header.name().as_str() {
         489  +
                                /* EventStreamUnmarshallerGenerator.kt:232 */
         490  +
                                "header" => {
         491  +
                                    /* EventStreamUnmarshallerGenerator.kt:276 */
         492  +
                                    builder = builder.set_header(
         493  +
                                        /* EventStreamUnmarshallerGenerator.kt:277 */
         494  +
                                        Some(
         495  +
                                            /* EventStreamUnmarshallerGenerator.kt:286 */
         496  +
                                            ::aws_smithy_eventstream::smithy::expect_string(
         497  +
                                                header,
         498  +
                                            )?, /* EventStreamUnmarshallerGenerator.kt:277 */
         499  +
                                        ), /* EventStreamUnmarshallerGenerator.kt:276 */
         500  +
                                    );
         501  +
                                    /* EventStreamUnmarshallerGenerator.kt:232 */
         502  +
                                }
         503  +
                                /* EventStreamUnmarshallerGenerator.kt:236 */// Event stream protocol headers start with ':'
         504  +
                                /* EventStreamUnmarshallerGenerator.kt:237 */
         505  +
                                name => {
         506  +
                                    if !name.starts_with(':') {
         507  +
                                        /* EventStreamUnmarshallerGenerator.kt:238 */
         508  +
                                        ::tracing::trace!(
         509  +
                                            "Unrecognized event stream message header: {}",
         510  +
                                            name
         511  +
                                        );
         512  +
                                        /* EventStreamUnmarshallerGenerator.kt:237 */
         513  +
                                    }
         514  +
                                } /* EventStreamUnmarshallerGenerator.kt:230 */
         515  +
                            }
         516  +
                            /* EventStreamUnmarshallerGenerator.kt:229 */
         517  +
                        }
         518  +
                        /* EventStreamUnmarshallerGenerator.kt:266 */
         519  +
                        Ok(::aws_smithy_eventstream::frame::UnmarshalledMessage::Event(
         520  +
                            crate::model::EventStream::HeadersAndExplicitPayload(builder.build()),
         521  +
                        ))
         522  +
                        /* EventStreamUnmarshallerGenerator.kt:159 */
         523  +
                    }
         524  +
                    /* EventStreamUnmarshallerGenerator.kt:159 */
         525  +
                    "headersAndImplicitPayload" => {
         526  +
                        /* EventStreamUnmarshallerGenerator.kt:222 */
         527  +
                        let mut builder =
         528  +
                            crate::model::headers_and_implicit_payload_event::Builder::default();
         529  +
                        /* EventStreamUnmarshallerGenerator.kt:229 */
         530  +
                        for header in message.headers() {
         531  +
                            /* EventStreamUnmarshallerGenerator.kt:230 */
         532  +
                            match header.name().as_str() {
         533  +
                                /* EventStreamUnmarshallerGenerator.kt:232 */
         534  +
                                "header" => {
         535  +
                                    /* EventStreamUnmarshallerGenerator.kt:276 */
         536  +
                                    builder = builder.set_header(
         537  +
                                        /* EventStreamUnmarshallerGenerator.kt:277 */
         538  +
                                        Some(
         539  +
                                            /* EventStreamUnmarshallerGenerator.kt:286 */
         540  +
                                            ::aws_smithy_eventstream::smithy::expect_string(
         541  +
                                                header,
         542  +
                                            )?, /* EventStreamUnmarshallerGenerator.kt:277 */
         543  +
                                        ), /* EventStreamUnmarshallerGenerator.kt:276 */
         544  +
                                    );
         545  +
                                    /* EventStreamUnmarshallerGenerator.kt:232 */
         546  +
                                }
         547  +
                                /* EventStreamUnmarshallerGenerator.kt:236 */// Event stream protocol headers start with ':'
         548  +
                                /* EventStreamUnmarshallerGenerator.kt:237 */
         549  +
                                name => {
         550  +
                                    if !name.starts_with(':') {
         551  +
                                        /* EventStreamUnmarshallerGenerator.kt:238 */
         552  +
                                        ::tracing::trace!(
         553  +
                                            "Unrecognized event stream message header: {}",
         554  +
                                            name
         555  +
                                        );
         556  +
                                        /* EventStreamUnmarshallerGenerator.kt:237 */
         557  +
                                    }
         558  +
                                } /* EventStreamUnmarshallerGenerator.kt:230 */
         559  +
                            }
         560  +
                            /* EventStreamUnmarshallerGenerator.kt:229 */
         561  +
                        }
         562  +
                        /* EventStreamUnmarshallerGenerator.kt:256 */
         563  +
                        builder = crate::protocol_serde::shape_headers_and_implicit_payload_event::de_headers_and_implicit_payload_event_json_err(&message.payload()[..], builder)
         564  +
                                                        .map_err(|err| ::aws_smithy_eventstream::error::Error::unmarshalling(format!("failed to unmarshall: {err}")))?;
         565  +
                        /* EventStreamUnmarshallerGenerator.kt:266 */
         566  +
                        Ok(::aws_smithy_eventstream::frame::UnmarshalledMessage::Event(
         567  +
                            crate::model::EventStream::HeadersAndImplicitPayload(builder.build()),
         568  +
                        ))
         569  +
                        /* EventStreamUnmarshallerGenerator.kt:159 */
         570  +
                    }
         571  +
                    /* EventStreamUnmarshallerGenerator.kt:163 */
         572  +
                    _unknown_variant => {
         573  +
                        /* EventStreamUnmarshallerGenerator.kt:173 */
         574  +
                        return Err(::aws_smithy_eventstream::error::Error::unmarshalling(
         575  +
                            format!("unrecognized :event-type: {_unknown_variant}"),
         576  +
                        ));
         577  +
                        /* EventStreamUnmarshallerGenerator.kt:163 */
         578  +
                    } /* EventStreamUnmarshallerGenerator.kt:156 */
         579  +
                }
         580  +
                /* EventStreamUnmarshallerGenerator.kt:131 */
         581  +
            }
         582  +
            /* EventStreamUnmarshallerGenerator.kt:134 */
         583  +
            "exception" => {
         584  +
                /* EventStreamUnmarshallerGenerator.kt:377 */
         585  +
                if response_headers.smithy_type.as_str() ==
         586  +
                /* EventStreamUnmarshallerGenerator.kt:379 */"error"
         587  +
                {
         588  +
                    /* EventStreamUnmarshallerGenerator.kt:427 */
         589  +
                    let mut builder = crate::error::error_event::Builder::default();
         590  +
                    /* EventStreamUnmarshallerGenerator.kt:429 */
         591  +
                    builder = crate::protocol_serde::shape_error_event::de_error_event_json_err(
         592  +
                        &message.payload()[..],
         593  +
                        builder,
         594  +
                    )
         595  +
                    .map_err(|err| {
         596  +
                        ::aws_smithy_eventstream::error::Error::unmarshalling(format!(
         597  +
                            "failed to unmarshall error: {err}"
         598  +
                        ))
         599  +
                    })?;
         600  +
                    /* EventStreamUnmarshallerGenerator.kt:440 */
         601  +
                    return Ok(::aws_smithy_eventstream::frame::UnmarshalledMessage::Error(
         602  +
                        crate::error::EventStreamError::ErrorEvent(builder.build()),
         603  +
                    ));
         604  +
                    /* EventStreamUnmarshallerGenerator.kt:379 */
         605  +
                }
         606  +
                /* EventStreamUnmarshallerGenerator.kt:466 */
         607  +
                return Err(aws_smithy_eventstream::error::Error::unmarshalling(
         608  +
                    format!(
         609  +
                        "unrecognized exception: {}",
         610  +
                        response_headers.smithy_type.as_str()
         611  +
                    ),
         612  +
                ));
         613  +
                /* EventStreamUnmarshallerGenerator.kt:134 */
         614  +
            }
         615  +
            /* EventStreamUnmarshallerGenerator.kt:137 */
         616  +
            value => {
         617  +
                /* EventStreamUnmarshallerGenerator.kt:138 */
         618  +
                return Err(::aws_smithy_eventstream::error::Error::unmarshalling(
         619  +
                    format!("unrecognized :message-type: {value}"),
         620  +
                ));
         621  +
                /* EventStreamUnmarshallerGenerator.kt:137 */
         622  +
            } /* EventStreamUnmarshallerGenerator.kt:130 */
         623  +
        }
         624  +
        /* EventStreamUnmarshallerGenerator.kt:120 */
         625  +
    }
         626  +
    /* EventStreamUnmarshallerGenerator.kt:113 */
         627  +
}

tmp-codegen-diff/codegen-server-test/rest_json/rust-server-codegen/src/input.rs

@@ -1,1 +2927,2683 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
/* StructureGenerator.kt:197 */
    3         -
#[allow(missing_docs)] // documentation missing in model
    4         -
/* RustType.kt:534 */
    5         -
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    6         -
pub /* StructureGenerator.kt:201 */ struct OperationWithNestedStructureInput {
    7         -
    /* StructureGenerator.kt:231 */
    8         -
    #[allow(missing_docs)] // documentation missing in model
    9         -
    pub top_level: crate::model::TopLevel,
   10         -
    /* StructureGenerator.kt:201 */
   11         -
}
   12         -
/* StructureGenerator.kt:135 */
   13         -
impl OperationWithNestedStructureInput {
   14         -
    /* StructureGenerator.kt:231 */
   15         -
    #[allow(missing_docs)] // documentation missing in model
   16         -
                           /* StructureGenerator.kt:166 */
   17         -
    pub fn top_level(&self) -> &crate::model::TopLevel {
   18         -
        /* StructureGenerator.kt:172 */
   19         -
        &self.top_level
   20         -
        /* StructureGenerator.kt:166 */
   21         -
    }
   22         -
    /* StructureGenerator.kt:135 */
   23         -
}
   24         -
/* ServerCodegenVisitor.kt:356 */
   25         -
impl OperationWithNestedStructureInput {
   26         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OperationWithNestedStructureInput`](crate::input::OperationWithNestedStructureInput).
   27         -
    /* ServerBuilderGenerator.kt:295 */
   28         -
    pub fn builder() -> crate::input::operation_with_nested_structure_input::Builder {
   29         -
        /* ServerBuilderGenerator.kt:296 */
   30         -
        crate::input::operation_with_nested_structure_input::Builder::default()
   31         -
        /* ServerBuilderGenerator.kt:295 */
   32         -
    }
   33         -
    /* ServerCodegenVisitor.kt:356 */
   34         -
}
   35         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
   36         -
impl crate::constrained::Constrained for crate::input::OperationWithNestedStructureInput {
   37         -
    type Unconstrained = crate::input::operation_with_nested_structure_input::Builder;
   38         -
}
   39         -
   40         -
/* StructureGenerator.kt:197 */
   41         -
#[allow(missing_docs)] // documentation missing in model
   42         -
/* RustType.kt:534 */
   43         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
   44         -
pub /* StructureGenerator.kt:201 */ struct OperationWithDefaultsInput {
   45         -
    /* StructureGenerator.kt:231 */
   46         -
    #[allow(missing_docs)] // documentation missing in model
   47         -
    pub defaults: ::std::option::Option<crate::model::Defaults>,
   48         -
    /* StructureGenerator.kt:231 */
   49         -
    #[allow(missing_docs)] // documentation missing in model
   50         -
    pub client_optional_defaults: ::std::option::Option<crate::model::ClientOptionalDefaults>,
   51         -
    /* StructureGenerator.kt:231 */
   52         -
    #[allow(missing_docs)] // documentation missing in model
   53         -
    pub top_level_default: ::std::string::String,
   54         -
    /* StructureGenerator.kt:231 */
   55         -
    #[allow(missing_docs)] // documentation missing in model
   56         -
    pub other_top_level_default: i32,
   57         -
    /* StructureGenerator.kt:201 */
   58         -
}
   59         -
/* StructureGenerator.kt:135 */
   60         -
impl OperationWithDefaultsInput {
   61         -
    /* StructureGenerator.kt:231 */
   62         -
    #[allow(missing_docs)] // documentation missing in model
   63         -
                           /* StructureGenerator.kt:166 */
   64         -
    pub fn defaults(&self) -> ::std::option::Option<&crate::model::Defaults> {
   65         -
        /* StructureGenerator.kt:170 */
   66         -
        self.defaults.as_ref()
   67         -
        /* StructureGenerator.kt:166 */
   68         -
    }
   69         -
    /* StructureGenerator.kt:231 */
   70         -
    #[allow(missing_docs)] // documentation missing in model
   71         -
                           /* StructureGenerator.kt:166 */
   72         -
    pub fn client_optional_defaults(
   73         -
        &self,
   74         -
    ) -> ::std::option::Option<&crate::model::ClientOptionalDefaults> {
   75         -
        /* StructureGenerator.kt:170 */
   76         -
        self.client_optional_defaults.as_ref()
   77         -
        /* StructureGenerator.kt:166 */
   78         -
    }
   79         -
    /* StructureGenerator.kt:231 */
   80         -
    #[allow(missing_docs)] // documentation missing in model
   81         -
                           /* StructureGenerator.kt:166 */
   82         -
    pub fn top_level_default(&self) -> &str {
   83         -
        /* StructureGenerator.kt:171 */
   84         -
        use std::ops::Deref;
   85         -
        self.top_level_default.deref()
   86         -
        /* StructureGenerator.kt:166 */
   87         -
    }
   88         -
    /* StructureGenerator.kt:231 */
   89         -
    #[allow(missing_docs)] // documentation missing in model
   90         -
                           /* StructureGenerator.kt:166 */
   91         -
    pub fn other_top_level_default(&self) -> i32 {
   92         -
        /* StructureGenerator.kt:168 */
   93         -
        self.other_top_level_default
   94         -
        /* StructureGenerator.kt:166 */
   95         -
    }
   96         -
    /* StructureGenerator.kt:135 */
   97         -
}
   98         -
/* ServerCodegenVisitor.kt:356 */
   99         -
impl OperationWithDefaultsInput {
  100         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OperationWithDefaultsInput`](crate::input::OperationWithDefaultsInput).
  101         -
    /* ServerBuilderGenerator.kt:295 */
  102         -
    pub fn builder() -> crate::input::operation_with_defaults_input::Builder {
  103         -
        /* ServerBuilderGenerator.kt:296 */
  104         -
        crate::input::operation_with_defaults_input::Builder::default()
  105         -
        /* ServerBuilderGenerator.kt:295 */
  106         -
    }
  107         -
    /* ServerCodegenVisitor.kt:356 */
  108         -
}
  109         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  110         -
impl crate::constrained::Constrained for crate::input::OperationWithDefaultsInput {
  111         -
    type Unconstrained = crate::input::operation_with_defaults_input::Builder;
  112         -
}
  113         -
  114         -
/* StructureGenerator.kt:197 */
  115         -
#[allow(missing_docs)] // documentation missing in model
  116         -
/* RustType.kt:534 */
  117         -
#[derive(
  118         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  119         -
)]
  120         -
pub /* StructureGenerator.kt:201 */ struct ContentTypeParametersInput {
  121         -
    /* StructureGenerator.kt:231 */
  122         -
    #[allow(missing_docs)] // documentation missing in model
  123         -
    pub value: ::std::option::Option<i32>,
  124         -
    /* StructureGenerator.kt:201 */
  125         -
}
  126         -
/* StructureGenerator.kt:135 */
  127         -
impl ContentTypeParametersInput {
  128         -
    /* StructureGenerator.kt:231 */
  129         -
    #[allow(missing_docs)] // documentation missing in model
  130         -
                           /* StructureGenerator.kt:166 */
  131         -
    pub fn value(&self) -> ::std::option::Option<i32> {
  132         -
        /* StructureGenerator.kt:168 */
  133         -
        self.value
  134         -
        /* StructureGenerator.kt:166 */
  135         -
    }
  136         -
    /* StructureGenerator.kt:135 */
  137         -
}
  138         -
/* ServerCodegenVisitor.kt:356 */
  139         -
impl ContentTypeParametersInput {
  140         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`ContentTypeParametersInput`](crate::input::ContentTypeParametersInput).
  141         -
    /* ServerBuilderGenerator.kt:295 */
  142         -
    pub fn builder() -> crate::input::content_type_parameters_input::Builder {
  143         -
        /* ServerBuilderGenerator.kt:296 */
  144         -
        crate::input::content_type_parameters_input::Builder::default()
  145         -
        /* ServerBuilderGenerator.kt:295 */
  146         -
    }
  147         -
    /* ServerCodegenVisitor.kt:356 */
  148         -
}
  149         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  150         -
impl crate::constrained::Constrained for crate::input::ContentTypeParametersInput {
  151         -
    type Unconstrained = crate::input::content_type_parameters_input::Builder;
  152         -
}
  153         -
  154      2   
/* StructureGenerator.kt:197 */
  155      3   
#[allow(missing_docs)] // documentation missing in model
  156      4   
/* RustType.kt:534 */
  157      5   
#[derive(
  158      6   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  159      7   
)]
  160         -
pub /* StructureGenerator.kt:201 */ struct PutWithContentEncodingInput {
  161         -
    /* StructureGenerator.kt:231 */
  162         -
    #[allow(missing_docs)] // documentation missing in model
  163         -
    pub encoding: ::std::option::Option<::std::string::String>,
  164         -
    /* StructureGenerator.kt:231 */
  165         -
    #[allow(missing_docs)] // documentation missing in model
  166         -
    pub data: ::std::option::Option<::std::string::String>,
  167         -
    /* StructureGenerator.kt:201 */
  168         -
}
  169         -
/* StructureGenerator.kt:135 */
  170         -
impl PutWithContentEncodingInput {
  171         -
    /* StructureGenerator.kt:231 */
  172         -
    #[allow(missing_docs)] // documentation missing in model
  173         -
                           /* StructureGenerator.kt:166 */
  174         -
    pub fn encoding(&self) -> ::std::option::Option<&str> {
  175         -
        /* StructureGenerator.kt:169 */
  176         -
        self.encoding.as_deref()
  177         -
        /* StructureGenerator.kt:166 */
  178         -
    }
  179         -
    /* StructureGenerator.kt:231 */
  180         -
    #[allow(missing_docs)] // documentation missing in model
  181         -
                           /* StructureGenerator.kt:166 */
  182         -
    pub fn data(&self) -> ::std::option::Option<&str> {
  183         -
        /* StructureGenerator.kt:169 */
  184         -
        self.data.as_deref()
  185         -
        /* StructureGenerator.kt:166 */
  186         -
    }
  187         -
    /* StructureGenerator.kt:135 */
  188         -
}
           8  +
pub /* StructureGenerator.kt:201 */ struct NoInputAndNoOutputInput {/* StructureGenerator.kt:201 */}
  189      9   
/* ServerCodegenVisitor.kt:356 */
  190         -
impl PutWithContentEncodingInput {
  191         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`PutWithContentEncodingInput`](crate::input::PutWithContentEncodingInput).
          10  +
impl NoInputAndNoOutputInput {
          11  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`NoInputAndNoOutputInput`](crate::input::NoInputAndNoOutputInput).
  192     12   
    /* ServerBuilderGenerator.kt:295 */
  193         -
    pub fn builder() -> crate::input::put_with_content_encoding_input::Builder {
          13  +
    pub fn builder() -> crate::input::no_input_and_no_output_input::Builder {
  194     14   
        /* ServerBuilderGenerator.kt:296 */
  195         -
        crate::input::put_with_content_encoding_input::Builder::default()
          15  +
        crate::input::no_input_and_no_output_input::Builder::default()
  196     16   
        /* ServerBuilderGenerator.kt:295 */
  197     17   
    }
  198     18   
    /* ServerCodegenVisitor.kt:356 */
  199     19   
}
  200     20   
/* ServerStructureConstrainedTraitImpl.kt:21 */
  201         -
impl crate::constrained::Constrained for crate::input::PutWithContentEncodingInput {
  202         -
    type Unconstrained = crate::input::put_with_content_encoding_input::Builder;
          21  +
impl crate::constrained::Constrained for crate::input::NoInputAndNoOutputInput {
          22  +
    type Unconstrained = crate::input::no_input_and_no_output_input::Builder;
  203     23   
}
  204     24   
  205     25   
/* StructureGenerator.kt:197 */
  206     26   
#[allow(missing_docs)] // documentation missing in model
  207     27   
/* RustType.kt:534 */
  208     28   
#[derive(
  209     29   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  210     30   
)]
  211         -
pub /* StructureGenerator.kt:201 */ struct FractionalSecondsInput {/* StructureGenerator.kt:201 */}
          31  +
pub /* StructureGenerator.kt:201 */ struct NoInputAndOutputInput {/* StructureGenerator.kt:201 */}
  212     32   
/* ServerCodegenVisitor.kt:356 */
  213         -
impl FractionalSecondsInput {
  214         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`FractionalSecondsInput`](crate::input::FractionalSecondsInput).
          33  +
impl NoInputAndOutputInput {
          34  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`NoInputAndOutputInput`](crate::input::NoInputAndOutputInput).
  215     35   
    /* ServerBuilderGenerator.kt:295 */
  216         -
    pub fn builder() -> crate::input::fractional_seconds_input::Builder {
          36  +
    pub fn builder() -> crate::input::no_input_and_output_input::Builder {
  217     37   
        /* ServerBuilderGenerator.kt:296 */
  218         -
        crate::input::fractional_seconds_input::Builder::default()
          38  +
        crate::input::no_input_and_output_input::Builder::default()
  219     39   
        /* ServerBuilderGenerator.kt:295 */
  220     40   
    }
  221     41   
    /* ServerCodegenVisitor.kt:356 */
  222     42   
}
  223     43   
/* ServerStructureConstrainedTraitImpl.kt:21 */
  224         -
impl crate::constrained::Constrained for crate::input::FractionalSecondsInput {
  225         -
    type Unconstrained = crate::input::fractional_seconds_input::Builder;
          44  +
impl crate::constrained::Constrained for crate::input::NoInputAndOutputInput {
          45  +
    type Unconstrained = crate::input::no_input_and_output_input::Builder;
  226     46   
}
  227     47   
  228     48   
/* StructureGenerator.kt:197 */
  229     49   
#[allow(missing_docs)] // documentation missing in model
  230     50   
/* RustType.kt:534 */
  231     51   
#[derive(
  232     52   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  233     53   
)]
  234         -
pub /* StructureGenerator.kt:201 */ struct DatetimeOffsetsInput {/* StructureGenerator.kt:201 */}
          54  +
pub /* StructureGenerator.kt:201 */ struct EmptyInputAndEmptyOutputInput {/* StructureGenerator.kt:201 */}
  235     55   
/* ServerCodegenVisitor.kt:356 */
  236         -
impl DatetimeOffsetsInput {
  237         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`DatetimeOffsetsInput`](crate::input::DatetimeOffsetsInput).
          56  +
impl EmptyInputAndEmptyOutputInput {
          57  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`EmptyInputAndEmptyOutputInput`](crate::input::EmptyInputAndEmptyOutputInput).
  238     58   
    /* ServerBuilderGenerator.kt:295 */
  239         -
    pub fn builder() -> crate::input::datetime_offsets_input::Builder {
          59  +
    pub fn builder() -> crate::input::empty_input_and_empty_output_input::Builder {
  240     60   
        /* ServerBuilderGenerator.kt:296 */
  241         -
        crate::input::datetime_offsets_input::Builder::default()
          61  +
        crate::input::empty_input_and_empty_output_input::Builder::default()
  242     62   
        /* ServerBuilderGenerator.kt:295 */
  243     63   
    }
  244     64   
    /* ServerCodegenVisitor.kt:356 */
  245     65   
}
  246     66   
/* ServerStructureConstrainedTraitImpl.kt:21 */
  247         -
impl crate::constrained::Constrained for crate::input::DatetimeOffsetsInput {
  248         -
    type Unconstrained = crate::input::datetime_offsets_input::Builder;
          67  +
impl crate::constrained::Constrained for crate::input::EmptyInputAndEmptyOutputInput {
          68  +
    type Unconstrained = crate::input::empty_input_and_empty_output_input::Builder;
  249     69   
}
  250     70   
  251     71   
/* StructureGenerator.kt:197 */
  252     72   
#[allow(missing_docs)] // documentation missing in model
  253     73   
/* RustType.kt:534 */
  254     74   
#[derive(
  255     75   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  256     76   
)]
  257         -
pub /* StructureGenerator.kt:201 */ struct TestPostNoInputNoPayloadInput {/* StructureGenerator.kt:201 */}
          77  +
pub /* StructureGenerator.kt:201 */ struct UnitInputAndOutputInput {/* StructureGenerator.kt:201 */}
  258     78   
/* ServerCodegenVisitor.kt:356 */
  259         -
impl TestPostNoInputNoPayloadInput {
  260         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestPostNoInputNoPayloadInput`](crate::input::TestPostNoInputNoPayloadInput).
          79  +
impl UnitInputAndOutputInput {
          80  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`UnitInputAndOutputInput`](crate::input::UnitInputAndOutputInput).
  261     81   
    /* ServerBuilderGenerator.kt:295 */
  262         -
    pub fn builder() -> crate::input::test_post_no_input_no_payload_input::Builder {
          82  +
    pub fn builder() -> crate::input::unit_input_and_output_input::Builder {
  263     83   
        /* ServerBuilderGenerator.kt:296 */
  264         -
        crate::input::test_post_no_input_no_payload_input::Builder::default()
          84  +
        crate::input::unit_input_and_output_input::Builder::default()
  265     85   
        /* ServerBuilderGenerator.kt:295 */
  266     86   
    }
  267     87   
    /* ServerCodegenVisitor.kt:356 */
  268     88   
}
  269     89   
/* ServerStructureConstrainedTraitImpl.kt:21 */
  270         -
impl crate::constrained::Constrained for crate::input::TestPostNoInputNoPayloadInput {
  271         -
    type Unconstrained = crate::input::test_post_no_input_no_payload_input::Builder;
          90  +
impl crate::constrained::Constrained for crate::input::UnitInputAndOutputInput {
          91  +
    type Unconstrained = crate::input::unit_input_and_output_input::Builder;
  272     92   
}
  273     93   
  274     94   
/* StructureGenerator.kt:197 */
  275     95   
#[allow(missing_docs)] // documentation missing in model
  276     96   
/* RustType.kt:534 */
  277         -
#[derive(
  278         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  279         -
)]
  280         -
pub /* StructureGenerator.kt:201 */ struct TestGetNoInputNoPayloadInput {/* StructureGenerator.kt:201 */}
  281         -
/* ServerCodegenVisitor.kt:356 */
  282         -
impl TestGetNoInputNoPayloadInput {
  283         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestGetNoInputNoPayloadInput`](crate::input::TestGetNoInputNoPayloadInput).
  284         -
    /* ServerBuilderGenerator.kt:295 */
  285         -
    pub fn builder() -> crate::input::test_get_no_input_no_payload_input::Builder {
  286         -
        /* ServerBuilderGenerator.kt:296 */
  287         -
        crate::input::test_get_no_input_no_payload_input::Builder::default()
  288         -
        /* ServerBuilderGenerator.kt:295 */
  289         -
    }
  290         -
    /* ServerCodegenVisitor.kt:356 */
  291         -
}
  292         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  293         -
impl crate::constrained::Constrained for crate::input::TestGetNoInputNoPayloadInput {
  294         -
    type Unconstrained = crate::input::test_get_no_input_no_payload_input::Builder;
  295         -
}
  296         -
  297         -
/* StructureGenerator.kt:197 */
  298         -
#[allow(missing_docs)] // documentation missing in model
  299         -
/* RustType.kt:534 */
  300         -
#[derive(
  301         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  302         -
)]
  303         -
pub /* StructureGenerator.kt:201 */ struct TestPostNoPayloadInput {
          97  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
          98  +
pub /* StructureGenerator.kt:201 */ struct InputAndOutputWithHeadersInput {
  304     99   
    /* StructureGenerator.kt:231 */
  305    100   
    #[allow(missing_docs)] // documentation missing in model
  306         -
    pub test_id: ::std::option::Option<::std::string::String>,
  307         -
    /* StructureGenerator.kt:201 */
  308         -
}
  309         -
/* StructureGenerator.kt:135 */
  310         -
impl TestPostNoPayloadInput {
         101  +
    pub header_string: ::std::option::Option<::std::string::String>,
  311    102   
    /* StructureGenerator.kt:231 */
  312    103   
    #[allow(missing_docs)] // documentation missing in model
  313         -
                           /* StructureGenerator.kt:166 */
  314         -
    pub fn test_id(&self) -> ::std::option::Option<&str> {
  315         -
        /* StructureGenerator.kt:169 */
  316         -
        self.test_id.as_deref()
  317         -
        /* StructureGenerator.kt:166 */
  318         -
    }
  319         -
    /* StructureGenerator.kt:135 */
  320         -
}
  321         -
/* ServerCodegenVisitor.kt:356 */
  322         -
impl TestPostNoPayloadInput {
  323         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestPostNoPayloadInput`](crate::input::TestPostNoPayloadInput).
  324         -
    /* ServerBuilderGenerator.kt:295 */
  325         -
    pub fn builder() -> crate::input::test_post_no_payload_input::Builder {
  326         -
        /* ServerBuilderGenerator.kt:296 */
  327         -
        crate::input::test_post_no_payload_input::Builder::default()
  328         -
        /* ServerBuilderGenerator.kt:295 */
  329         -
    }
  330         -
    /* ServerCodegenVisitor.kt:356 */
  331         -
}
  332         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  333         -
impl crate::constrained::Constrained for crate::input::TestPostNoPayloadInput {
  334         -
    type Unconstrained = crate::input::test_post_no_payload_input::Builder;
  335         -
}
  336         -
  337         -
/* StructureGenerator.kt:197 */
  338         -
#[allow(missing_docs)] // documentation missing in model
  339         -
/* RustType.kt:534 */
  340         -
#[derive(
  341         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  342         -
)]
  343         -
pub /* StructureGenerator.kt:201 */ struct TestGetNoPayloadInput {
         104  +
    pub header_byte: ::std::option::Option<i8>,
  344    105   
    /* StructureGenerator.kt:231 */
  345    106   
    #[allow(missing_docs)] // documentation missing in model
  346         -
    pub test_id: ::std::option::Option<::std::string::String>,
  347         -
    /* StructureGenerator.kt:201 */
  348         -
}
  349         -
/* StructureGenerator.kt:135 */
  350         -
impl TestGetNoPayloadInput {
         107  +
    pub header_short: ::std::option::Option<i16>,
  351    108   
    /* StructureGenerator.kt:231 */
  352    109   
    #[allow(missing_docs)] // documentation missing in model
  353         -
                           /* StructureGenerator.kt:166 */
  354         -
    pub fn test_id(&self) -> ::std::option::Option<&str> {
  355         -
        /* StructureGenerator.kt:169 */
  356         -
        self.test_id.as_deref()
  357         -
        /* StructureGenerator.kt:166 */
  358         -
    }
  359         -
    /* StructureGenerator.kt:135 */
  360         -
}
  361         -
/* ServerCodegenVisitor.kt:356 */
  362         -
impl TestGetNoPayloadInput {
  363         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestGetNoPayloadInput`](crate::input::TestGetNoPayloadInput).
  364         -
    /* ServerBuilderGenerator.kt:295 */
  365         -
    pub fn builder() -> crate::input::test_get_no_payload_input::Builder {
  366         -
        /* ServerBuilderGenerator.kt:296 */
  367         -
        crate::input::test_get_no_payload_input::Builder::default()
  368         -
        /* ServerBuilderGenerator.kt:295 */
  369         -
    }
  370         -
    /* ServerCodegenVisitor.kt:356 */
  371         -
}
  372         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  373         -
impl crate::constrained::Constrained for crate::input::TestGetNoPayloadInput {
  374         -
    type Unconstrained = crate::input::test_get_no_payload_input::Builder;
  375         -
}
  376         -
  377         -
/* StructureGenerator.kt:197 */
  378         -
#[allow(missing_docs)] // documentation missing in model
  379         -
/* RustType.kt:534 */
  380         -
#[derive(
  381         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  382         -
)]
  383         -
pub /* StructureGenerator.kt:201 */ struct TestPayloadBlobInput {
         110  +
    pub header_integer: ::std::option::Option<i32>,
  384    111   
    /* StructureGenerator.kt:231 */
  385    112   
    #[allow(missing_docs)] // documentation missing in model
  386         -
    pub content_type: ::std::option::Option<::std::string::String>,
         113  +
    pub header_long: ::std::option::Option<i64>,
  387    114   
    /* StructureGenerator.kt:231 */
  388    115   
    #[allow(missing_docs)] // documentation missing in model
  389         -
    pub data: ::std::option::Option<::aws_smithy_types::Blob>,
         116  +
    pub header_float: ::std::option::Option<f32>,
         117  +
    /* StructureGenerator.kt:231 */
         118  +
    #[allow(missing_docs)] // documentation missing in model
         119  +
    pub header_double: ::std::option::Option<f64>,
         120  +
    /* StructureGenerator.kt:231 */
         121  +
    #[allow(missing_docs)] // documentation missing in model
         122  +
    pub header_true_bool: ::std::option::Option<bool>,
         123  +
    /* StructureGenerator.kt:231 */
         124  +
    #[allow(missing_docs)] // documentation missing in model
         125  +
    pub header_false_bool: ::std::option::Option<bool>,
         126  +
    /* StructureGenerator.kt:231 */
         127  +
    #[allow(missing_docs)] // documentation missing in model
         128  +
    pub header_string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
         129  +
    /* StructureGenerator.kt:231 */
         130  +
    #[allow(missing_docs)] // documentation missing in model
         131  +
    pub header_string_set: ::std::option::Option<crate::model::StringSet>,
         132  +
    /* StructureGenerator.kt:231 */
         133  +
    #[allow(missing_docs)] // documentation missing in model
         134  +
    pub header_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
         135  +
    /* StructureGenerator.kt:231 */
         136  +
    #[allow(missing_docs)] // documentation missing in model
         137  +
    pub header_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
         138  +
    /* StructureGenerator.kt:231 */
         139  +
    #[allow(missing_docs)] // documentation missing in model
         140  +
    pub header_timestamp_list: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
         141  +
    /* StructureGenerator.kt:231 */
         142  +
    #[allow(missing_docs)] // documentation missing in model
         143  +
    pub header_enum: ::std::option::Option<crate::model::FooEnum>,
         144  +
    /* StructureGenerator.kt:231 */
         145  +
    #[allow(missing_docs)] // documentation missing in model
         146  +
    pub header_enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
         147  +
    /* StructureGenerator.kt:231 */
         148  +
    #[allow(missing_docs)] // documentation missing in model
         149  +
    pub header_integer_enum: ::std::option::Option<i32>,
         150  +
    /* StructureGenerator.kt:231 */
         151  +
    #[allow(missing_docs)] // documentation missing in model
         152  +
    pub header_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
  390    153   
    /* StructureGenerator.kt:201 */
  391    154   
}
  392    155   
/* StructureGenerator.kt:135 */
  393         -
impl TestPayloadBlobInput {
         156  +
impl InputAndOutputWithHeadersInput {
  394    157   
    /* StructureGenerator.kt:231 */
  395    158   
    #[allow(missing_docs)] // documentation missing in model
  396    159   
                           /* StructureGenerator.kt:166 */
  397         -
    pub fn content_type(&self) -> ::std::option::Option<&str> {
         160  +
    pub fn header_string(&self) -> ::std::option::Option<&str> {
  398    161   
        /* StructureGenerator.kt:169 */
  399         -
        self.content_type.as_deref()
         162  +
        self.header_string.as_deref()
  400    163   
        /* StructureGenerator.kt:166 */
  401    164   
    }
  402    165   
    /* StructureGenerator.kt:231 */
  403    166   
    #[allow(missing_docs)] // documentation missing in model
  404    167   
                           /* StructureGenerator.kt:166 */
  405         -
    pub fn data(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
  406         -
        /* StructureGenerator.kt:170 */
  407         -
        self.data.as_ref()
         168  +
    pub fn header_byte(&self) -> ::std::option::Option<i8> {
         169  +
        /* StructureGenerator.kt:168 */
         170  +
        self.header_byte
  408    171   
        /* StructureGenerator.kt:166 */
  409    172   
    }
  410         -
    /* StructureGenerator.kt:135 */
  411         -
}
  412         -
/* ServerCodegenVisitor.kt:356 */
  413         -
impl TestPayloadBlobInput {
  414         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestPayloadBlobInput`](crate::input::TestPayloadBlobInput).
  415         -
    /* ServerBuilderGenerator.kt:295 */
  416         -
    pub fn builder() -> crate::input::test_payload_blob_input::Builder {
  417         -
        /* ServerBuilderGenerator.kt:296 */
  418         -
        crate::input::test_payload_blob_input::Builder::default()
  419         -
        /* ServerBuilderGenerator.kt:295 */
  420         -
    }
  421         -
    /* ServerCodegenVisitor.kt:356 */
  422         -
}
  423         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  424         -
impl crate::constrained::Constrained for crate::input::TestPayloadBlobInput {
  425         -
    type Unconstrained = crate::input::test_payload_blob_input::Builder;
  426         -
}
  427         -
  428         -
/* StructureGenerator.kt:197 */
  429         -
#[allow(missing_docs)] // documentation missing in model
  430         -
/* RustType.kt:534 */
  431         -
#[derive(
  432         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  433         -
)]
  434         -
pub /* StructureGenerator.kt:201 */ struct TestPayloadStructureInput {
  435    173   
    /* StructureGenerator.kt:231 */
  436    174   
    #[allow(missing_docs)] // documentation missing in model
  437         -
    pub test_id: ::std::option::Option<::std::string::String>,
         175  +
                           /* StructureGenerator.kt:166 */
         176  +
    pub fn header_short(&self) -> ::std::option::Option<i16> {
         177  +
        /* StructureGenerator.kt:168 */
         178  +
        self.header_short
         179  +
        /* StructureGenerator.kt:166 */
         180  +
    }
  438    181   
    /* StructureGenerator.kt:231 */
  439    182   
    #[allow(missing_docs)] // documentation missing in model
  440         -
    pub payload_config: ::std::option::Option<crate::model::PayloadConfig>,
  441         -
    /* StructureGenerator.kt:201 */
  442         -
}
  443         -
/* StructureGenerator.kt:135 */
  444         -
impl TestPayloadStructureInput {
         183  +
                           /* StructureGenerator.kt:166 */
         184  +
    pub fn header_integer(&self) -> ::std::option::Option<i32> {
         185  +
        /* StructureGenerator.kt:168 */
         186  +
        self.header_integer
         187  +
        /* StructureGenerator.kt:166 */
         188  +
    }
  445    189   
    /* StructureGenerator.kt:231 */
  446    190   
    #[allow(missing_docs)] // documentation missing in model
  447    191   
                           /* StructureGenerator.kt:166 */
  448         -
    pub fn test_id(&self) -> ::std::option::Option<&str> {
  449         -
        /* StructureGenerator.kt:169 */
  450         -
        self.test_id.as_deref()
         192  +
    pub fn header_long(&self) -> ::std::option::Option<i64> {
         193  +
        /* StructureGenerator.kt:168 */
         194  +
        self.header_long
  451    195   
        /* StructureGenerator.kt:166 */
  452    196   
    }
  453    197   
    /* StructureGenerator.kt:231 */
  454    198   
    #[allow(missing_docs)] // documentation missing in model
  455    199   
                           /* StructureGenerator.kt:166 */
  456         -
    pub fn payload_config(&self) -> ::std::option::Option<&crate::model::PayloadConfig> {
  457         -
        /* StructureGenerator.kt:170 */
  458         -
        self.payload_config.as_ref()
         200  +
    pub fn header_float(&self) -> ::std::option::Option<f32> {
         201  +
        /* StructureGenerator.kt:168 */
         202  +
        self.header_float
  459    203   
        /* StructureGenerator.kt:166 */
  460    204   
    }
  461         -
    /* StructureGenerator.kt:135 */
  462         -
}
  463         -
/* ServerCodegenVisitor.kt:356 */
  464         -
impl TestPayloadStructureInput {
  465         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestPayloadStructureInput`](crate::input::TestPayloadStructureInput).
  466         -
    /* ServerBuilderGenerator.kt:295 */
  467         -
    pub fn builder() -> crate::input::test_payload_structure_input::Builder {
  468         -
        /* ServerBuilderGenerator.kt:296 */
  469         -
        crate::input::test_payload_structure_input::Builder::default()
  470         -
        /* ServerBuilderGenerator.kt:295 */
         205  +
    /* StructureGenerator.kt:231 */
         206  +
    #[allow(missing_docs)] // documentation missing in model
         207  +
                           /* StructureGenerator.kt:166 */
         208  +
    pub fn header_double(&self) -> ::std::option::Option<f64> {
         209  +
        /* StructureGenerator.kt:168 */
         210  +
        self.header_double
         211  +
        /* StructureGenerator.kt:166 */
  471    212   
    }
  472         -
    /* ServerCodegenVisitor.kt:356 */
  473         -
}
  474         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  475         -
impl crate::constrained::Constrained for crate::input::TestPayloadStructureInput {
  476         -
    type Unconstrained = crate::input::test_payload_structure_input::Builder;
  477         -
}
  478         -
  479         -
/* StructureGenerator.kt:197 */
  480         -
#[allow(missing_docs)] // documentation missing in model
  481         -
/* RustType.kt:534 */
  482         -
#[derive(
  483         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  484         -
)]
  485         -
pub /* StructureGenerator.kt:201 */ struct TestBodyStructureInput {
  486    213   
    /* StructureGenerator.kt:231 */
  487    214   
    #[allow(missing_docs)] // documentation missing in model
  488         -
    pub test_id: ::std::option::Option<::std::string::String>,
         215  +
                           /* StructureGenerator.kt:166 */
         216  +
    pub fn header_true_bool(&self) -> ::std::option::Option<bool> {
         217  +
        /* StructureGenerator.kt:168 */
         218  +
        self.header_true_bool
         219  +
        /* StructureGenerator.kt:166 */
         220  +
    }
  489    221   
    /* StructureGenerator.kt:231 */
  490    222   
    #[allow(missing_docs)] // documentation missing in model
  491         -
    pub test_config: ::std::option::Option<crate::model::TestConfig>,
  492         -
    /* StructureGenerator.kt:201 */
  493         -
}
  494         -
/* StructureGenerator.kt:135 */
  495         -
impl TestBodyStructureInput {
         223  +
                           /* StructureGenerator.kt:166 */
         224  +
    pub fn header_false_bool(&self) -> ::std::option::Option<bool> {
         225  +
        /* StructureGenerator.kt:168 */
         226  +
        self.header_false_bool
         227  +
        /* StructureGenerator.kt:166 */
         228  +
    }
  496    229   
    /* StructureGenerator.kt:231 */
  497    230   
    #[allow(missing_docs)] // documentation missing in model
  498    231   
                           /* StructureGenerator.kt:166 */
  499         -
    pub fn test_id(&self) -> ::std::option::Option<&str> {
         232  +
    pub fn header_string_list(&self) -> ::std::option::Option<&[::std::string::String]> {
  500    233   
        /* StructureGenerator.kt:169 */
  501         -
        self.test_id.as_deref()
         234  +
        self.header_string_list.as_deref()
  502    235   
        /* StructureGenerator.kt:166 */
  503    236   
    }
  504    237   
    /* StructureGenerator.kt:231 */
  505    238   
    #[allow(missing_docs)] // documentation missing in model
  506    239   
                           /* StructureGenerator.kt:166 */
  507         -
    pub fn test_config(&self) -> ::std::option::Option<&crate::model::TestConfig> {
         240  +
    pub fn header_string_set(&self) -> ::std::option::Option<&crate::model::StringSet> {
  508    241   
        /* StructureGenerator.kt:170 */
  509         -
        self.test_config.as_ref()
         242  +
        self.header_string_set.as_ref()
  510    243   
        /* StructureGenerator.kt:166 */
  511    244   
    }
  512         -
    /* StructureGenerator.kt:135 */
  513         -
}
  514         -
/* ServerCodegenVisitor.kt:356 */
  515         -
impl TestBodyStructureInput {
  516         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestBodyStructureInput`](crate::input::TestBodyStructureInput).
  517         -
    /* ServerBuilderGenerator.kt:295 */
  518         -
    pub fn builder() -> crate::input::test_body_structure_input::Builder {
  519         -
        /* ServerBuilderGenerator.kt:296 */
  520         -
        crate::input::test_body_structure_input::Builder::default()
  521         -
        /* ServerBuilderGenerator.kt:295 */
         245  +
    /* StructureGenerator.kt:231 */
         246  +
    #[allow(missing_docs)] // documentation missing in model
         247  +
                           /* StructureGenerator.kt:166 */
         248  +
    pub fn header_integer_list(&self) -> ::std::option::Option<&[i32]> {
         249  +
        /* StructureGenerator.kt:169 */
         250  +
        self.header_integer_list.as_deref()
         251  +
        /* StructureGenerator.kt:166 */
  522    252   
    }
  523         -
    /* ServerCodegenVisitor.kt:356 */
  524         -
}
  525         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  526         -
impl crate::constrained::Constrained for crate::input::TestBodyStructureInput {
  527         -
    type Unconstrained = crate::input::test_body_structure_input::Builder;
  528         -
}
  529         -
  530         -
/* StructureGenerator.kt:197 */
  531         -
#[allow(missing_docs)] // documentation missing in model
  532         -
/* RustType.kt:534 */
  533         -
#[derive(
  534         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  535         -
)]
  536         -
pub /* StructureGenerator.kt:201 */ struct MalformedAcceptWithGenericStringInput {/* StructureGenerator.kt:201 */}
  537         -
/* ServerCodegenVisitor.kt:356 */
  538         -
impl MalformedAcceptWithGenericStringInput {
  539         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedAcceptWithGenericStringInput`](crate::input::MalformedAcceptWithGenericStringInput).
  540         -
    /* ServerBuilderGenerator.kt:295 */
  541         -
    pub fn builder() -> crate::input::malformed_accept_with_generic_string_input::Builder {
  542         -
        /* ServerBuilderGenerator.kt:296 */
  543         -
        crate::input::malformed_accept_with_generic_string_input::Builder::default()
  544         -
        /* ServerBuilderGenerator.kt:295 */
         253  +
    /* StructureGenerator.kt:231 */
         254  +
    #[allow(missing_docs)] // documentation missing in model
         255  +
                           /* StructureGenerator.kt:166 */
         256  +
    pub fn header_boolean_list(&self) -> ::std::option::Option<&[bool]> {
         257  +
        /* StructureGenerator.kt:169 */
         258  +
        self.header_boolean_list.as_deref()
         259  +
        /* StructureGenerator.kt:166 */
  545    260   
    }
  546         -
    /* ServerCodegenVisitor.kt:356 */
  547         -
}
  548         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  549         -
impl crate::constrained::Constrained for crate::input::MalformedAcceptWithGenericStringInput {
  550         -
    type Unconstrained = crate::input::malformed_accept_with_generic_string_input::Builder;
  551         -
}
  552         -
  553         -
/* StructureGenerator.kt:197 */
  554         -
#[allow(missing_docs)] // documentation missing in model
  555         -
/* RustType.kt:534 */
  556         -
#[derive(
  557         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  558         -
)]
  559         -
pub /* StructureGenerator.kt:201 */ struct MalformedAcceptWithPayloadInput {/* StructureGenerator.kt:201 */}
  560         -
/* ServerCodegenVisitor.kt:356 */
  561         -
impl MalformedAcceptWithPayloadInput {
  562         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedAcceptWithPayloadInput`](crate::input::MalformedAcceptWithPayloadInput).
  563         -
    /* ServerBuilderGenerator.kt:295 */
  564         -
    pub fn builder() -> crate::input::malformed_accept_with_payload_input::Builder {
  565         -
        /* ServerBuilderGenerator.kt:296 */
  566         -
        crate::input::malformed_accept_with_payload_input::Builder::default()
  567         -
        /* ServerBuilderGenerator.kt:295 */
         261  +
    /* StructureGenerator.kt:231 */
         262  +
    #[allow(missing_docs)] // documentation missing in model
         263  +
                           /* StructureGenerator.kt:166 */
         264  +
    pub fn header_timestamp_list(&self) -> ::std::option::Option<&[::aws_smithy_types::DateTime]> {
         265  +
        /* StructureGenerator.kt:169 */
         266  +
        self.header_timestamp_list.as_deref()
         267  +
        /* StructureGenerator.kt:166 */
  568    268   
    }
  569         -
    /* ServerCodegenVisitor.kt:356 */
  570         -
}
  571         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  572         -
impl crate::constrained::Constrained for crate::input::MalformedAcceptWithPayloadInput {
  573         -
    type Unconstrained = crate::input::malformed_accept_with_payload_input::Builder;
  574         -
}
  575         -
  576         -
/* StructureGenerator.kt:197 */
  577         -
#[allow(missing_docs)] // documentation missing in model
  578         -
/* RustType.kt:534 */
  579         -
#[derive(
  580         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  581         -
)]
  582         -
pub /* StructureGenerator.kt:201 */ struct MalformedAcceptWithBodyInput {/* StructureGenerator.kt:201 */}
  583         -
/* ServerCodegenVisitor.kt:356 */
  584         -
impl MalformedAcceptWithBodyInput {
  585         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedAcceptWithBodyInput`](crate::input::MalformedAcceptWithBodyInput).
  586         -
    /* ServerBuilderGenerator.kt:295 */
  587         -
    pub fn builder() -> crate::input::malformed_accept_with_body_input::Builder {
  588         -
        /* ServerBuilderGenerator.kt:296 */
  589         -
        crate::input::malformed_accept_with_body_input::Builder::default()
  590         -
        /* ServerBuilderGenerator.kt:295 */
         269  +
    /* StructureGenerator.kt:231 */
         270  +
    #[allow(missing_docs)] // documentation missing in model
         271  +
                           /* StructureGenerator.kt:166 */
         272  +
    pub fn header_enum(&self) -> ::std::option::Option<&crate::model::FooEnum> {
         273  +
        /* StructureGenerator.kt:170 */
         274  +
        self.header_enum.as_ref()
         275  +
        /* StructureGenerator.kt:166 */
  591    276   
    }
  592         -
    /* ServerCodegenVisitor.kt:356 */
  593         -
}
  594         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  595         -
impl crate::constrained::Constrained for crate::input::MalformedAcceptWithBodyInput {
  596         -
    type Unconstrained = crate::input::malformed_accept_with_body_input::Builder;
  597         -
}
  598         -
  599         -
/* StructureGenerator.kt:197 */
  600         -
#[allow(missing_docs)] // documentation missing in model
  601         -
/* RustType.kt:534 */
  602         -
#[derive(
  603         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  604         -
)]
  605         -
pub /* StructureGenerator.kt:201 */ struct MalformedContentTypeWithGenericStringInput {
  606    277   
    /* StructureGenerator.kt:231 */
  607    278   
    #[allow(missing_docs)] // documentation missing in model
  608         -
    pub payload: ::std::option::Option<::std::string::String>,
  609         -
    /* StructureGenerator.kt:201 */
  610         -
}
  611         -
/* StructureGenerator.kt:135 */
  612         -
impl MalformedContentTypeWithGenericStringInput {
         279  +
                           /* StructureGenerator.kt:166 */
         280  +
    pub fn header_enum_list(&self) -> ::std::option::Option<&[crate::model::FooEnum]> {
         281  +
        /* StructureGenerator.kt:169 */
         282  +
        self.header_enum_list.as_deref()
         283  +
        /* StructureGenerator.kt:166 */
         284  +
    }
  613    285   
    /* StructureGenerator.kt:231 */
  614    286   
    #[allow(missing_docs)] // documentation missing in model
  615    287   
                           /* StructureGenerator.kt:166 */
  616         -
    pub fn payload(&self) -> ::std::option::Option<&str> {
         288  +
    pub fn header_integer_enum(&self) -> ::std::option::Option<i32> {
         289  +
        /* StructureGenerator.kt:168 */
         290  +
        self.header_integer_enum
         291  +
        /* StructureGenerator.kt:166 */
         292  +
    }
         293  +
    /* StructureGenerator.kt:231 */
         294  +
    #[allow(missing_docs)] // documentation missing in model
         295  +
                           /* StructureGenerator.kt:166 */
         296  +
    pub fn header_integer_enum_list(&self) -> ::std::option::Option<&[i32]> {
  617    297   
        /* StructureGenerator.kt:169 */
  618         -
        self.payload.as_deref()
         298  +
        self.header_integer_enum_list.as_deref()
  619    299   
        /* StructureGenerator.kt:166 */
  620    300   
    }
  621    301   
    /* StructureGenerator.kt:135 */
  622    302   
}
  623    303   
/* ServerCodegenVisitor.kt:356 */
  624         -
impl MalformedContentTypeWithGenericStringInput {
  625         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedContentTypeWithGenericStringInput`](crate::input::MalformedContentTypeWithGenericStringInput).
         304  +
impl InputAndOutputWithHeadersInput {
         305  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`InputAndOutputWithHeadersInput`](crate::input::InputAndOutputWithHeadersInput).
  626    306   
    /* ServerBuilderGenerator.kt:295 */
  627         -
    pub fn builder() -> crate::input::malformed_content_type_with_generic_string_input::Builder {
         307  +
    pub fn builder() -> crate::input::input_and_output_with_headers_input::Builder {
  628    308   
        /* ServerBuilderGenerator.kt:296 */
  629         -
        crate::input::malformed_content_type_with_generic_string_input::Builder::default()
         309  +
        crate::input::input_and_output_with_headers_input::Builder::default()
  630    310   
        /* ServerBuilderGenerator.kt:295 */
  631    311   
    }
  632    312   
    /* ServerCodegenVisitor.kt:356 */
  633    313   
}
  634    314   
/* ServerStructureConstrainedTraitImpl.kt:21 */
  635         -
impl crate::constrained::Constrained for crate::input::MalformedContentTypeWithGenericStringInput {
  636         -
    type Unconstrained = crate::input::malformed_content_type_with_generic_string_input::Builder;
         315  +
impl crate::constrained::Constrained for crate::input::InputAndOutputWithHeadersInput {
         316  +
    type Unconstrained = crate::input::input_and_output_with_headers_input::Builder;
  637    317   
}
  638    318   
  639    319   
/* StructureGenerator.kt:197 */
  640    320   
#[allow(missing_docs)] // documentation missing in model
  641    321   
/* RustType.kt:534 */
  642    322   
#[derive(
  643    323   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  644    324   
)]
  645         -
pub /* StructureGenerator.kt:201 */ struct MalformedContentTypeWithPayloadInput {
         325  +
pub /* StructureGenerator.kt:201 */ struct NullAndEmptyHeadersClientInput {
  646    326   
    /* StructureGenerator.kt:231 */
  647    327   
    #[allow(missing_docs)] // documentation missing in model
  648         -
    pub payload: ::std::option::Option<::aws_smithy_types::Blob>,
         328  +
    pub a: ::std::option::Option<::std::string::String>,
         329  +
    /* StructureGenerator.kt:231 */
         330  +
    #[allow(missing_docs)] // documentation missing in model
         331  +
    pub b: ::std::option::Option<::std::string::String>,
         332  +
    /* StructureGenerator.kt:231 */
         333  +
    #[allow(missing_docs)] // documentation missing in model
         334  +
    pub c: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
  649    335   
    /* StructureGenerator.kt:201 */
  650    336   
}
  651    337   
/* StructureGenerator.kt:135 */
  652         -
impl MalformedContentTypeWithPayloadInput {
         338  +
impl NullAndEmptyHeadersClientInput {
  653    339   
    /* StructureGenerator.kt:231 */
  654    340   
    #[allow(missing_docs)] // documentation missing in model
  655    341   
                           /* StructureGenerator.kt:166 */
  656         -
    pub fn payload(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
  657         -
        /* StructureGenerator.kt:170 */
  658         -
        self.payload.as_ref()
         342  +
    pub fn a(&self) -> ::std::option::Option<&str> {
         343  +
        /* StructureGenerator.kt:169 */
         344  +
        self.a.as_deref()
         345  +
        /* StructureGenerator.kt:166 */
         346  +
    }
         347  +
    /* StructureGenerator.kt:231 */
         348  +
    #[allow(missing_docs)] // documentation missing in model
         349  +
                           /* StructureGenerator.kt:166 */
         350  +
    pub fn b(&self) -> ::std::option::Option<&str> {
         351  +
        /* StructureGenerator.kt:169 */
         352  +
        self.b.as_deref()
         353  +
        /* StructureGenerator.kt:166 */
         354  +
    }
         355  +
    /* StructureGenerator.kt:231 */
         356  +
    #[allow(missing_docs)] // documentation missing in model
         357  +
                           /* StructureGenerator.kt:166 */
         358  +
    pub fn c(&self) -> ::std::option::Option<&[::std::string::String]> {
         359  +
        /* StructureGenerator.kt:169 */
         360  +
        self.c.as_deref()
  659    361   
        /* StructureGenerator.kt:166 */
  660    362   
    }
  661    363   
    /* StructureGenerator.kt:135 */
  662    364   
}
  663    365   
/* ServerCodegenVisitor.kt:356 */
  664         -
impl MalformedContentTypeWithPayloadInput {
  665         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedContentTypeWithPayloadInput`](crate::input::MalformedContentTypeWithPayloadInput).
         366  +
impl NullAndEmptyHeadersClientInput {
         367  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`NullAndEmptyHeadersClientInput`](crate::input::NullAndEmptyHeadersClientInput).
  666    368   
    /* ServerBuilderGenerator.kt:295 */
  667         -
    pub fn builder() -> crate::input::malformed_content_type_with_payload_input::Builder {
         369  +
    pub fn builder() -> crate::input::null_and_empty_headers_client_input::Builder {
  668    370   
        /* ServerBuilderGenerator.kt:296 */
  669         -
        crate::input::malformed_content_type_with_payload_input::Builder::default()
         371  +
        crate::input::null_and_empty_headers_client_input::Builder::default()
  670    372   
        /* ServerBuilderGenerator.kt:295 */
  671    373   
    }
  672    374   
    /* ServerCodegenVisitor.kt:356 */
  673    375   
}
  674    376   
/* ServerStructureConstrainedTraitImpl.kt:21 */
  675         -
impl crate::constrained::Constrained for crate::input::MalformedContentTypeWithPayloadInput {
  676         -
    type Unconstrained = crate::input::malformed_content_type_with_payload_input::Builder;
         377  +
impl crate::constrained::Constrained for crate::input::NullAndEmptyHeadersClientInput {
         378  +
    type Unconstrained = crate::input::null_and_empty_headers_client_input::Builder;
  677    379   
}
  678    380   
  679    381   
/* StructureGenerator.kt:197 */
  680    382   
#[allow(missing_docs)] // documentation missing in model
  681    383   
/* RustType.kt:534 */
  682    384   
#[derive(
  683    385   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  684    386   
)]
  685         -
pub /* StructureGenerator.kt:201 */ struct MalformedContentTypeWithBodyInput {
         387  +
pub /* StructureGenerator.kt:201 */ struct NullAndEmptyHeadersServerInput {
  686    388   
    /* StructureGenerator.kt:231 */
  687    389   
    #[allow(missing_docs)] // documentation missing in model
  688         -
    pub hi: ::std::option::Option<::std::string::String>,
         390  +
    pub a: ::std::option::Option<::std::string::String>,
         391  +
    /* StructureGenerator.kt:231 */
         392  +
    #[allow(missing_docs)] // documentation missing in model
         393  +
    pub b: ::std::option::Option<::std::string::String>,
         394  +
    /* StructureGenerator.kt:231 */
         395  +
    #[allow(missing_docs)] // documentation missing in model
         396  +
    pub c: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
  689    397   
    /* StructureGenerator.kt:201 */
  690    398   
}
  691    399   
/* StructureGenerator.kt:135 */
  692         -
impl MalformedContentTypeWithBodyInput {
         400  +
impl NullAndEmptyHeadersServerInput {
  693    401   
    /* StructureGenerator.kt:231 */
  694    402   
    #[allow(missing_docs)] // documentation missing in model
  695    403   
                           /* StructureGenerator.kt:166 */
  696         -
    pub fn hi(&self) -> ::std::option::Option<&str> {
         404  +
    pub fn a(&self) -> ::std::option::Option<&str> {
  697    405   
        /* StructureGenerator.kt:169 */
  698         -
        self.hi.as_deref()
         406  +
        self.a.as_deref()
         407  +
        /* StructureGenerator.kt:166 */
         408  +
    }
         409  +
    /* StructureGenerator.kt:231 */
         410  +
    #[allow(missing_docs)] // documentation missing in model
         411  +
                           /* StructureGenerator.kt:166 */
         412  +
    pub fn b(&self) -> ::std::option::Option<&str> {
         413  +
        /* StructureGenerator.kt:169 */
         414  +
        self.b.as_deref()
         415  +
        /* StructureGenerator.kt:166 */
         416  +
    }
         417  +
    /* StructureGenerator.kt:231 */
         418  +
    #[allow(missing_docs)] // documentation missing in model
         419  +
                           /* StructureGenerator.kt:166 */
         420  +
    pub fn c(&self) -> ::std::option::Option<&[::std::string::String]> {
         421  +
        /* StructureGenerator.kt:169 */
         422  +
        self.c.as_deref()
  699    423   
        /* StructureGenerator.kt:166 */
  700    424   
    }
  701    425   
    /* StructureGenerator.kt:135 */
  702    426   
}
  703    427   
/* ServerCodegenVisitor.kt:356 */
  704         -
impl MalformedContentTypeWithBodyInput {
  705         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedContentTypeWithBodyInput`](crate::input::MalformedContentTypeWithBodyInput).
         428  +
impl NullAndEmptyHeadersServerInput {
         429  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`NullAndEmptyHeadersServerInput`](crate::input::NullAndEmptyHeadersServerInput).
  706    430   
    /* ServerBuilderGenerator.kt:295 */
  707         -
    pub fn builder() -> crate::input::malformed_content_type_with_body_input::Builder {
         431  +
    pub fn builder() -> crate::input::null_and_empty_headers_server_input::Builder {
  708    432   
        /* ServerBuilderGenerator.kt:296 */
  709         -
        crate::input::malformed_content_type_with_body_input::Builder::default()
         433  +
        crate::input::null_and_empty_headers_server_input::Builder::default()
  710    434   
        /* ServerBuilderGenerator.kt:295 */
  711    435   
    }
  712    436   
    /* ServerCodegenVisitor.kt:356 */
  713    437   
}
  714    438   
/* ServerStructureConstrainedTraitImpl.kt:21 */
  715         -
impl crate::constrained::Constrained for crate::input::MalformedContentTypeWithBodyInput {
  716         -
    type Unconstrained = crate::input::malformed_content_type_with_body_input::Builder;
         439  +
impl crate::constrained::Constrained for crate::input::NullAndEmptyHeadersServerInput {
         440  +
    type Unconstrained = crate::input::null_and_empty_headers_server_input::Builder;
  717    441   
}
  718    442   
  719    443   
/* StructureGenerator.kt:197 */
  720    444   
#[allow(missing_docs)] // documentation missing in model
  721    445   
/* RustType.kt:534 */
  722    446   
#[derive(
  723    447   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  724    448   
)]
  725         -
pub /* StructureGenerator.kt:201 */ struct MalformedContentTypeWithoutBodyEmptyInputInput {
         449  +
pub /* StructureGenerator.kt:201 */ struct TimestampFormatHeadersInput {
  726    450   
    /* StructureGenerator.kt:231 */
  727    451   
    #[allow(missing_docs)] // documentation missing in model
  728         -
    pub header: ::std::option::Option<::std::string::String>,
  729         -
    /* StructureGenerator.kt:201 */
  730         -
}
  731         -
/* StructureGenerator.kt:135 */
  732         -
impl MalformedContentTypeWithoutBodyEmptyInputInput {
         452  +
    pub member_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
  733    453   
    /* StructureGenerator.kt:231 */
  734    454   
    #[allow(missing_docs)] // documentation missing in model
  735         -
                           /* StructureGenerator.kt:166 */
  736         -
    pub fn header(&self) -> ::std::option::Option<&str> {
  737         -
        /* StructureGenerator.kt:169 */
  738         -
        self.header.as_deref()
  739         -
        /* StructureGenerator.kt:166 */
  740         -
    }
  741         -
    /* StructureGenerator.kt:135 */
  742         -
}
  743         -
/* ServerCodegenVisitor.kt:356 */
  744         -
impl MalformedContentTypeWithoutBodyEmptyInputInput {
  745         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedContentTypeWithoutBodyEmptyInputInput`](crate::input::MalformedContentTypeWithoutBodyEmptyInputInput).
  746         -
    /* ServerBuilderGenerator.kt:295 */
  747         -
    pub fn builder() -> crate::input::malformed_content_type_without_body_empty_input_input::Builder
  748         -
    {
  749         -
        /* ServerBuilderGenerator.kt:296 */
  750         -
        crate::input::malformed_content_type_without_body_empty_input_input::Builder::default()
  751         -
        /* ServerBuilderGenerator.kt:295 */
  752         -
    }
  753         -
    /* ServerCodegenVisitor.kt:356 */
  754         -
}
  755         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  756         -
impl crate::constrained::Constrained
  757         -
    for crate::input::MalformedContentTypeWithoutBodyEmptyInputInput
  758         -
{
  759         -
    type Unconstrained =
  760         -
        crate::input::malformed_content_type_without_body_empty_input_input::Builder;
  761         -
}
  762         -
  763         -
/* StructureGenerator.kt:197 */
  764         -
#[allow(missing_docs)] // documentation missing in model
  765         -
/* RustType.kt:534 */
  766         -
#[derive(
  767         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  768         -
)]
  769         -
pub /* StructureGenerator.kt:201 */ struct MalformedContentTypeWithoutBodyInput {/* StructureGenerator.kt:201 */}
  770         -
/* ServerCodegenVisitor.kt:356 */
  771         -
impl MalformedContentTypeWithoutBodyInput {
  772         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedContentTypeWithoutBodyInput`](crate::input::MalformedContentTypeWithoutBodyInput).
  773         -
    /* ServerBuilderGenerator.kt:295 */
  774         -
    pub fn builder() -> crate::input::malformed_content_type_without_body_input::Builder {
  775         -
        /* ServerBuilderGenerator.kt:296 */
  776         -
        crate::input::malformed_content_type_without_body_input::Builder::default()
  777         -
        /* ServerBuilderGenerator.kt:295 */
  778         -
    }
  779         -
    /* ServerCodegenVisitor.kt:356 */
  780         -
}
  781         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  782         -
impl crate::constrained::Constrained for crate::input::MalformedContentTypeWithoutBodyInput {
  783         -
    type Unconstrained = crate::input::malformed_content_type_without_body_input::Builder;
  784         -
}
  785         -
  786         -
/* StructureGenerator.kt:197 */
  787         -
#[allow(missing_docs)] // documentation missing in model
  788         -
/* RustType.kt:534 */
  789         -
#[derive(
  790         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  791         -
)]
  792         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampBodyHttpDateInput {
         455  +
    pub member_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
  793    456   
    /* StructureGenerator.kt:231 */
  794    457   
    #[allow(missing_docs)] // documentation missing in model
  795         -
    pub timestamp: ::aws_smithy_types::DateTime,
         458  +
    pub member_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
         459  +
    /* StructureGenerator.kt:231 */
         460  +
    #[allow(missing_docs)] // documentation missing in model
         461  +
    pub default_format: ::std::option::Option<::aws_smithy_types::DateTime>,
         462  +
    /* StructureGenerator.kt:231 */
         463  +
    #[allow(missing_docs)] // documentation missing in model
         464  +
    pub target_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
         465  +
    /* StructureGenerator.kt:231 */
         466  +
    #[allow(missing_docs)] // documentation missing in model
         467  +
    pub target_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
         468  +
    /* StructureGenerator.kt:231 */
         469  +
    #[allow(missing_docs)] // documentation missing in model
         470  +
    pub target_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
  796    471   
    /* StructureGenerator.kt:201 */
  797    472   
}
  798    473   
/* StructureGenerator.kt:135 */
  799         -
impl MalformedTimestampBodyHttpDateInput {
         474  +
impl TimestampFormatHeadersInput {
  800    475   
    /* StructureGenerator.kt:231 */
  801    476   
    #[allow(missing_docs)] // documentation missing in model
  802    477   
                           /* StructureGenerator.kt:166 */
  803         -
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
  804         -
        /* StructureGenerator.kt:172 */
  805         -
        &self.timestamp
         478  +
    pub fn member_epoch_seconds(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
         479  +
        /* StructureGenerator.kt:170 */
         480  +
        self.member_epoch_seconds.as_ref()
         481  +
        /* StructureGenerator.kt:166 */
         482  +
    }
         483  +
    /* StructureGenerator.kt:231 */
         484  +
    #[allow(missing_docs)] // documentation missing in model
         485  +
                           /* StructureGenerator.kt:166 */
         486  +
    pub fn member_http_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
         487  +
        /* StructureGenerator.kt:170 */
         488  +
        self.member_http_date.as_ref()
         489  +
        /* StructureGenerator.kt:166 */
         490  +
    }
         491  +
    /* StructureGenerator.kt:231 */
         492  +
    #[allow(missing_docs)] // documentation missing in model
         493  +
                           /* StructureGenerator.kt:166 */
         494  +
    pub fn member_date_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
         495  +
        /* StructureGenerator.kt:170 */
         496  +
        self.member_date_time.as_ref()
         497  +
        /* StructureGenerator.kt:166 */
         498  +
    }
         499  +
    /* StructureGenerator.kt:231 */
         500  +
    #[allow(missing_docs)] // documentation missing in model
         501  +
                           /* StructureGenerator.kt:166 */
         502  +
    pub fn default_format(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
         503  +
        /* StructureGenerator.kt:170 */
         504  +
        self.default_format.as_ref()
         505  +
        /* StructureGenerator.kt:166 */
         506  +
    }
         507  +
    /* StructureGenerator.kt:231 */
         508  +
    #[allow(missing_docs)] // documentation missing in model
         509  +
                           /* StructureGenerator.kt:166 */
         510  +
    pub fn target_epoch_seconds(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
         511  +
        /* StructureGenerator.kt:170 */
         512  +
        self.target_epoch_seconds.as_ref()
         513  +
        /* StructureGenerator.kt:166 */
         514  +
    }
         515  +
    /* StructureGenerator.kt:231 */
         516  +
    #[allow(missing_docs)] // documentation missing in model
         517  +
                           /* StructureGenerator.kt:166 */
         518  +
    pub fn target_http_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
         519  +
        /* StructureGenerator.kt:170 */
         520  +
        self.target_http_date.as_ref()
         521  +
        /* StructureGenerator.kt:166 */
         522  +
    }
         523  +
    /* StructureGenerator.kt:231 */
         524  +
    #[allow(missing_docs)] // documentation missing in model
         525  +
                           /* StructureGenerator.kt:166 */
         526  +
    pub fn target_date_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
         527  +
        /* StructureGenerator.kt:170 */
         528  +
        self.target_date_time.as_ref()
  806    529   
        /* StructureGenerator.kt:166 */
  807    530   
    }
  808    531   
    /* StructureGenerator.kt:135 */
  809    532   
}
  810    533   
/* ServerCodegenVisitor.kt:356 */
  811         -
impl MalformedTimestampBodyHttpDateInput {
  812         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampBodyHttpDateInput`](crate::input::MalformedTimestampBodyHttpDateInput).
         534  +
impl TimestampFormatHeadersInput {
         535  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TimestampFormatHeadersInput`](crate::input::TimestampFormatHeadersInput).
  813    536   
    /* ServerBuilderGenerator.kt:295 */
  814         -
    pub fn builder() -> crate::input::malformed_timestamp_body_http_date_input::Builder {
         537  +
    pub fn builder() -> crate::input::timestamp_format_headers_input::Builder {
  815    538   
        /* ServerBuilderGenerator.kt:296 */
  816         -
        crate::input::malformed_timestamp_body_http_date_input::Builder::default()
         539  +
        crate::input::timestamp_format_headers_input::Builder::default()
  817    540   
        /* ServerBuilderGenerator.kt:295 */
  818    541   
    }
  819    542   
    /* ServerCodegenVisitor.kt:356 */
  820    543   
}
  821    544   
/* ServerStructureConstrainedTraitImpl.kt:21 */
  822         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampBodyHttpDateInput {
  823         -
    type Unconstrained = crate::input::malformed_timestamp_body_http_date_input::Builder;
         545  +
impl crate::constrained::Constrained for crate::input::TimestampFormatHeadersInput {
         546  +
    type Unconstrained = crate::input::timestamp_format_headers_input::Builder;
  824    547   
}
  825    548   
  826    549   
/* StructureGenerator.kt:197 */
  827    550   
#[allow(missing_docs)] // documentation missing in model
  828    551   
/* RustType.kt:534 */
  829    552   
#[derive(
  830    553   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  831    554   
)]
  832         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampBodyDateTimeInput {
         555  +
pub /* StructureGenerator.kt:201 */ struct MediaTypeHeaderInput {
  833    556   
    /* StructureGenerator.kt:231 */
  834    557   
    #[allow(missing_docs)] // documentation missing in model
  835         -
    pub timestamp: ::aws_smithy_types::DateTime,
         558  +
    pub json: ::std::option::Option<::std::string::String>,
  836    559   
    /* StructureGenerator.kt:201 */
  837    560   
}
  838    561   
/* StructureGenerator.kt:135 */
  839         -
impl MalformedTimestampBodyDateTimeInput {
         562  +
impl MediaTypeHeaderInput {
  840    563   
    /* StructureGenerator.kt:231 */
  841    564   
    #[allow(missing_docs)] // documentation missing in model
  842    565   
                           /* StructureGenerator.kt:166 */
  843         -
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
  844         -
        /* StructureGenerator.kt:172 */
  845         -
        &self.timestamp
         566  +
    pub fn json(&self) -> ::std::option::Option<&str> {
         567  +
        /* StructureGenerator.kt:169 */
         568  +
        self.json.as_deref()
  846    569   
        /* StructureGenerator.kt:166 */
  847    570   
    }
  848    571   
    /* StructureGenerator.kt:135 */
  849    572   
}
  850    573   
/* ServerCodegenVisitor.kt:356 */
  851         -
impl MalformedTimestampBodyDateTimeInput {
  852         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampBodyDateTimeInput`](crate::input::MalformedTimestampBodyDateTimeInput).
         574  +
impl MediaTypeHeaderInput {
         575  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MediaTypeHeaderInput`](crate::input::MediaTypeHeaderInput).
  853    576   
    /* ServerBuilderGenerator.kt:295 */
  854         -
    pub fn builder() -> crate::input::malformed_timestamp_body_date_time_input::Builder {
         577  +
    pub fn builder() -> crate::input::media_type_header_input::Builder {
  855    578   
        /* ServerBuilderGenerator.kt:296 */
  856         -
        crate::input::malformed_timestamp_body_date_time_input::Builder::default()
         579  +
        crate::input::media_type_header_input::Builder::default()
  857    580   
        /* ServerBuilderGenerator.kt:295 */
  858    581   
    }
  859    582   
    /* ServerCodegenVisitor.kt:356 */
  860    583   
}
  861    584   
/* ServerStructureConstrainedTraitImpl.kt:21 */
  862         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampBodyDateTimeInput {
  863         -
    type Unconstrained = crate::input::malformed_timestamp_body_date_time_input::Builder;
         585  +
impl crate::constrained::Constrained for crate::input::MediaTypeHeaderInput {
         586  +
    type Unconstrained = crate::input::media_type_header_input::Builder;
  864    587   
}
  865    588   
  866    589   
/* StructureGenerator.kt:197 */
  867    590   
#[allow(missing_docs)] // documentation missing in model
  868    591   
/* RustType.kt:534 */
  869         -
#[derive(
  870         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  871         -
)]
  872         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampBodyDefaultInput {
         592  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
         593  +
pub /* StructureGenerator.kt:201 */ struct HttpRequestWithLabelsInput {
         594  +
    /* StructureGenerator.kt:231 */
         595  +
    #[allow(missing_docs)] // documentation missing in model
         596  +
    pub string: ::std::string::String,
         597  +
    /* StructureGenerator.kt:231 */
         598  +
    #[allow(missing_docs)] // documentation missing in model
         599  +
    pub short: i16,
         600  +
    /* StructureGenerator.kt:231 */
         601  +
    #[allow(missing_docs)] // documentation missing in model
         602  +
    pub integer: i32,
  873    603   
    /* StructureGenerator.kt:231 */
  874    604   
    #[allow(missing_docs)] // documentation missing in model
         605  +
    pub long: i64,
         606  +
    /* StructureGenerator.kt:231 */
         607  +
    #[allow(missing_docs)] // documentation missing in model
         608  +
    pub float: f32,
         609  +
    /* StructureGenerator.kt:231 */
         610  +
    #[allow(missing_docs)] // documentation missing in model
         611  +
    pub double: f64,
         612  +
    /// /* StructureGenerator.kt:231 */Serialized in the path as true or false.
         613  +
    pub boolean: bool,
         614  +
    /// /* StructureGenerator.kt:231 */Note that this member has no format, so it's serialized as an RFC 3399 date-time.
  875    615   
    pub timestamp: ::aws_smithy_types::DateTime,
  876    616   
    /* StructureGenerator.kt:201 */
  877    617   
}
  878    618   
/* StructureGenerator.kt:135 */
  879         -
impl MalformedTimestampBodyDefaultInput {
         619  +
impl HttpRequestWithLabelsInput {
         620  +
    /* StructureGenerator.kt:231 */
         621  +
    #[allow(missing_docs)] // documentation missing in model
         622  +
                           /* StructureGenerator.kt:166 */
         623  +
    pub fn string(&self) -> &str {
         624  +
        /* StructureGenerator.kt:171 */
         625  +
        use std::ops::Deref;
         626  +
        self.string.deref()
         627  +
        /* StructureGenerator.kt:166 */
         628  +
    }
         629  +
    /* StructureGenerator.kt:231 */
         630  +
    #[allow(missing_docs)] // documentation missing in model
         631  +
                           /* StructureGenerator.kt:166 */
         632  +
    pub fn short(&self) -> i16 {
         633  +
        /* StructureGenerator.kt:168 */
         634  +
        self.short
         635  +
        /* StructureGenerator.kt:166 */
         636  +
    }
         637  +
    /* StructureGenerator.kt:231 */
         638  +
    #[allow(missing_docs)] // documentation missing in model
         639  +
                           /* StructureGenerator.kt:166 */
         640  +
    pub fn integer(&self) -> i32 {
         641  +
        /* StructureGenerator.kt:168 */
         642  +
        self.integer
         643  +
        /* StructureGenerator.kt:166 */
         644  +
    }
         645  +
    /* StructureGenerator.kt:231 */
         646  +
    #[allow(missing_docs)] // documentation missing in model
         647  +
                           /* StructureGenerator.kt:166 */
         648  +
    pub fn long(&self) -> i64 {
         649  +
        /* StructureGenerator.kt:168 */
         650  +
        self.long
         651  +
        /* StructureGenerator.kt:166 */
         652  +
    }
         653  +
    /* StructureGenerator.kt:231 */
         654  +
    #[allow(missing_docs)] // documentation missing in model
         655  +
                           /* StructureGenerator.kt:166 */
         656  +
    pub fn float(&self) -> f32 {
         657  +
        /* StructureGenerator.kt:168 */
         658  +
        self.float
         659  +
        /* StructureGenerator.kt:166 */
         660  +
    }
  880    661   
    /* StructureGenerator.kt:231 */
  881    662   
    #[allow(missing_docs)] // documentation missing in model
  882    663   
                           /* StructureGenerator.kt:166 */
         664  +
    pub fn double(&self) -> f64 {
         665  +
        /* StructureGenerator.kt:168 */
         666  +
        self.double
         667  +
        /* StructureGenerator.kt:166 */
         668  +
    }
         669  +
    /// /* StructureGenerator.kt:231 */Serialized in the path as true or false.
         670  +
    /* StructureGenerator.kt:166 */
         671  +
    pub fn boolean(&self) -> bool {
         672  +
        /* StructureGenerator.kt:168 */
         673  +
        self.boolean
         674  +
        /* StructureGenerator.kt:166 */
         675  +
    }
         676  +
    /// /* StructureGenerator.kt:231 */Note that this member has no format, so it's serialized as an RFC 3399 date-time.
         677  +
    /* StructureGenerator.kt:166 */
  883    678   
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
  884    679   
        /* StructureGenerator.kt:172 */
  885    680   
        &self.timestamp
  886    681   
        /* StructureGenerator.kt:166 */
  887    682   
    }
  888    683   
    /* StructureGenerator.kt:135 */
  889    684   
}
  890    685   
/* ServerCodegenVisitor.kt:356 */
  891         -
impl MalformedTimestampBodyDefaultInput {
  892         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampBodyDefaultInput`](crate::input::MalformedTimestampBodyDefaultInput).
         686  +
impl HttpRequestWithLabelsInput {
         687  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpRequestWithLabelsInput`](crate::input::HttpRequestWithLabelsInput).
  893    688   
    /* ServerBuilderGenerator.kt:295 */
  894         -
    pub fn builder() -> crate::input::malformed_timestamp_body_default_input::Builder {
         689  +
    pub fn builder() -> crate::input::http_request_with_labels_input::Builder {
  895    690   
        /* ServerBuilderGenerator.kt:296 */
  896         -
        crate::input::malformed_timestamp_body_default_input::Builder::default()
         691  +
        crate::input::http_request_with_labels_input::Builder::default()
  897    692   
        /* ServerBuilderGenerator.kt:295 */
  898    693   
    }
  899    694   
    /* ServerCodegenVisitor.kt:356 */
  900    695   
}
  901    696   
/* ServerStructureConstrainedTraitImpl.kt:21 */
  902         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampBodyDefaultInput {
  903         -
    type Unconstrained = crate::input::malformed_timestamp_body_default_input::Builder;
         697  +
impl crate::constrained::Constrained for crate::input::HttpRequestWithLabelsInput {
         698  +
    type Unconstrained = crate::input::http_request_with_labels_input::Builder;
  904    699   
}
  905    700   
  906    701   
/* StructureGenerator.kt:197 */
  907    702   
#[allow(missing_docs)] // documentation missing in model
  908    703   
/* RustType.kt:534 */
  909    704   
#[derive(
  910    705   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  911    706   
)]
  912         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampHeaderEpochInput {
         707  +
pub /* StructureGenerator.kt:201 */ struct HttpRequestWithLabelsAndTimestampFormatInput {
  913    708   
    /* StructureGenerator.kt:231 */
  914    709   
    #[allow(missing_docs)] // documentation missing in model
  915         -
    pub timestamp: ::aws_smithy_types::DateTime,
  916         -
    /* StructureGenerator.kt:201 */
  917         -
}
  918         -
/* StructureGenerator.kt:135 */
  919         -
impl MalformedTimestampHeaderEpochInput {
         710  +
    pub member_epoch_seconds: ::aws_smithy_types::DateTime,
  920    711   
    /* StructureGenerator.kt:231 */
  921    712   
    #[allow(missing_docs)] // documentation missing in model
  922         -
                           /* StructureGenerator.kt:166 */
  923         -
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
         713  +
    pub member_http_date: ::aws_smithy_types::DateTime,
         714  +
    /* StructureGenerator.kt:231 */
         715  +
    #[allow(missing_docs)] // documentation missing in model
         716  +
    pub member_date_time: ::aws_smithy_types::DateTime,
         717  +
    /* StructureGenerator.kt:231 */
         718  +
    #[allow(missing_docs)] // documentation missing in model
         719  +
    pub default_format: ::aws_smithy_types::DateTime,
         720  +
    /* StructureGenerator.kt:231 */
         721  +
    #[allow(missing_docs)] // documentation missing in model
         722  +
    pub target_epoch_seconds: ::aws_smithy_types::DateTime,
         723  +
    /* StructureGenerator.kt:231 */
         724  +
    #[allow(missing_docs)] // documentation missing in model
         725  +
    pub target_http_date: ::aws_smithy_types::DateTime,
         726  +
    /* StructureGenerator.kt:231 */
         727  +
    #[allow(missing_docs)] // documentation missing in model
         728  +
    pub target_date_time: ::aws_smithy_types::DateTime,
         729  +
    /* StructureGenerator.kt:201 */
         730  +
}
         731  +
/* StructureGenerator.kt:135 */
         732  +
impl HttpRequestWithLabelsAndTimestampFormatInput {
         733  +
    /* StructureGenerator.kt:231 */
         734  +
    #[allow(missing_docs)] // documentation missing in model
         735  +
                           /* StructureGenerator.kt:166 */
         736  +
    pub fn member_epoch_seconds(&self) -> &::aws_smithy_types::DateTime {
  924    737   
        /* StructureGenerator.kt:172 */
  925         -
        &self.timestamp
         738  +
        &self.member_epoch_seconds
  926    739   
        /* StructureGenerator.kt:166 */
  927    740   
    }
  928         -
    /* StructureGenerator.kt:135 */
  929         -
}
  930         -
/* ServerCodegenVisitor.kt:356 */
  931         -
impl MalformedTimestampHeaderEpochInput {
  932         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampHeaderEpochInput`](crate::input::MalformedTimestampHeaderEpochInput).
  933         -
    /* ServerBuilderGenerator.kt:295 */
  934         -
    pub fn builder() -> crate::input::malformed_timestamp_header_epoch_input::Builder {
  935         -
        /* ServerBuilderGenerator.kt:296 */
  936         -
        crate::input::malformed_timestamp_header_epoch_input::Builder::default()
  937         -
        /* ServerBuilderGenerator.kt:295 */
         741  +
    /* StructureGenerator.kt:231 */
         742  +
    #[allow(missing_docs)] // documentation missing in model
         743  +
                           /* StructureGenerator.kt:166 */
         744  +
    pub fn member_http_date(&self) -> &::aws_smithy_types::DateTime {
         745  +
        /* StructureGenerator.kt:172 */
         746  +
        &self.member_http_date
         747  +
        /* StructureGenerator.kt:166 */
  938    748   
    }
  939         -
    /* ServerCodegenVisitor.kt:356 */
  940         -
}
  941         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  942         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampHeaderEpochInput {
  943         -
    type Unconstrained = crate::input::malformed_timestamp_header_epoch_input::Builder;
  944         -
}
  945         -
  946         -
/* StructureGenerator.kt:197 */
  947         -
#[allow(missing_docs)] // documentation missing in model
  948         -
/* RustType.kt:534 */
  949         -
#[derive(
  950         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  951         -
)]
  952         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampHeaderDateTimeInput {
  953    749   
    /* StructureGenerator.kt:231 */
  954    750   
    #[allow(missing_docs)] // documentation missing in model
  955         -
    pub timestamp: ::aws_smithy_types::DateTime,
  956         -
    /* StructureGenerator.kt:201 */
  957         -
}
  958         -
/* StructureGenerator.kt:135 */
  959         -
impl MalformedTimestampHeaderDateTimeInput {
         751  +
                           /* StructureGenerator.kt:166 */
         752  +
    pub fn member_date_time(&self) -> &::aws_smithy_types::DateTime {
         753  +
        /* StructureGenerator.kt:172 */
         754  +
        &self.member_date_time
         755  +
        /* StructureGenerator.kt:166 */
         756  +
    }
  960    757   
    /* StructureGenerator.kt:231 */
  961    758   
    #[allow(missing_docs)] // documentation missing in model
  962    759   
                           /* StructureGenerator.kt:166 */
  963         -
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
         760  +
    pub fn default_format(&self) -> &::aws_smithy_types::DateTime {
  964    761   
        /* StructureGenerator.kt:172 */
  965         -
        &self.timestamp
         762  +
        &self.default_format
  966    763   
        /* StructureGenerator.kt:166 */
  967    764   
    }
  968         -
    /* StructureGenerator.kt:135 */
  969         -
}
  970         -
/* ServerCodegenVisitor.kt:356 */
  971         -
impl MalformedTimestampHeaderDateTimeInput {
  972         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampHeaderDateTimeInput`](crate::input::MalformedTimestampHeaderDateTimeInput).
  973         -
    /* ServerBuilderGenerator.kt:295 */
  974         -
    pub fn builder() -> crate::input::malformed_timestamp_header_date_time_input::Builder {
  975         -
        /* ServerBuilderGenerator.kt:296 */
  976         -
        crate::input::malformed_timestamp_header_date_time_input::Builder::default()
  977         -
        /* ServerBuilderGenerator.kt:295 */
         765  +
    /* StructureGenerator.kt:231 */
         766  +
    #[allow(missing_docs)] // documentation missing in model
         767  +
                           /* StructureGenerator.kt:166 */
         768  +
    pub fn target_epoch_seconds(&self) -> &::aws_smithy_types::DateTime {
         769  +
        /* StructureGenerator.kt:172 */
         770  +
        &self.target_epoch_seconds
         771  +
        /* StructureGenerator.kt:166 */
  978    772   
    }
  979         -
    /* ServerCodegenVisitor.kt:356 */
  980         -
}
  981         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
  982         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampHeaderDateTimeInput {
  983         -
    type Unconstrained = crate::input::malformed_timestamp_header_date_time_input::Builder;
  984         -
}
  985         -
  986         -
/* StructureGenerator.kt:197 */
  987         -
#[allow(missing_docs)] // documentation missing in model
  988         -
/* RustType.kt:534 */
  989         -
#[derive(
  990         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  991         -
)]
  992         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampHeaderDefaultInput {
  993    773   
    /* StructureGenerator.kt:231 */
  994    774   
    #[allow(missing_docs)] // documentation missing in model
  995         -
    pub timestamp: ::aws_smithy_types::DateTime,
  996         -
    /* StructureGenerator.kt:201 */
  997         -
}
  998         -
/* StructureGenerator.kt:135 */
  999         -
impl MalformedTimestampHeaderDefaultInput {
         775  +
                           /* StructureGenerator.kt:166 */
         776  +
    pub fn target_http_date(&self) -> &::aws_smithy_types::DateTime {
         777  +
        /* StructureGenerator.kt:172 */
         778  +
        &self.target_http_date
         779  +
        /* StructureGenerator.kt:166 */
         780  +
    }
 1000    781   
    /* StructureGenerator.kt:231 */
 1001    782   
    #[allow(missing_docs)] // documentation missing in model
 1002    783   
                           /* StructureGenerator.kt:166 */
 1003         -
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
         784  +
    pub fn target_date_time(&self) -> &::aws_smithy_types::DateTime {
 1004    785   
        /* StructureGenerator.kt:172 */
 1005         -
        &self.timestamp
         786  +
        &self.target_date_time
 1006    787   
        /* StructureGenerator.kt:166 */
 1007    788   
    }
 1008    789   
    /* StructureGenerator.kt:135 */
 1009    790   
}
 1010    791   
/* ServerCodegenVisitor.kt:356 */
 1011         -
impl MalformedTimestampHeaderDefaultInput {
 1012         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampHeaderDefaultInput`](crate::input::MalformedTimestampHeaderDefaultInput).
         792  +
impl HttpRequestWithLabelsAndTimestampFormatInput {
         793  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpRequestWithLabelsAndTimestampFormatInput`](crate::input::HttpRequestWithLabelsAndTimestampFormatInput).
 1013    794   
    /* ServerBuilderGenerator.kt:295 */
 1014         -
    pub fn builder() -> crate::input::malformed_timestamp_header_default_input::Builder {
         795  +
    pub fn builder() -> crate::input::http_request_with_labels_and_timestamp_format_input::Builder {
 1015    796   
        /* ServerBuilderGenerator.kt:296 */
 1016         -
        crate::input::malformed_timestamp_header_default_input::Builder::default()
         797  +
        crate::input::http_request_with_labels_and_timestamp_format_input::Builder::default()
 1017    798   
        /* ServerBuilderGenerator.kt:295 */
 1018    799   
    }
 1019    800   
    /* ServerCodegenVisitor.kt:356 */
 1020    801   
}
 1021    802   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1022         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampHeaderDefaultInput {
 1023         -
    type Unconstrained = crate::input::malformed_timestamp_header_default_input::Builder;
         803  +
impl crate::constrained::Constrained
         804  +
    for crate::input::HttpRequestWithLabelsAndTimestampFormatInput
         805  +
{
         806  +
    type Unconstrained = crate::input::http_request_with_labels_and_timestamp_format_input::Builder;
 1024    807   
}
 1025    808   
 1026    809   
/* StructureGenerator.kt:197 */
 1027    810   
#[allow(missing_docs)] // documentation missing in model
 1028    811   
/* RustType.kt:534 */
 1029    812   
#[derive(
 1030    813   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1031    814   
)]
 1032         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampQueryEpochInput {
         815  +
pub /* StructureGenerator.kt:201 */ struct HttpRequestWithGreedyLabelInPathInput {
 1033    816   
    /* StructureGenerator.kt:231 */
 1034    817   
    #[allow(missing_docs)] // documentation missing in model
 1035         -
    pub timestamp: ::aws_smithy_types::DateTime,
         818  +
    pub foo: ::std::string::String,
         819  +
    /* StructureGenerator.kt:231 */
         820  +
    #[allow(missing_docs)] // documentation missing in model
         821  +
    pub baz: ::std::string::String,
 1036    822   
    /* StructureGenerator.kt:201 */
 1037    823   
}
 1038    824   
/* StructureGenerator.kt:135 */
 1039         -
impl MalformedTimestampQueryEpochInput {
         825  +
impl HttpRequestWithGreedyLabelInPathInput {
 1040    826   
    /* StructureGenerator.kt:231 */
 1041    827   
    #[allow(missing_docs)] // documentation missing in model
 1042    828   
                           /* StructureGenerator.kt:166 */
 1043         -
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
 1044         -
        /* StructureGenerator.kt:172 */
 1045         -
        &self.timestamp
         829  +
    pub fn foo(&self) -> &str {
         830  +
        /* StructureGenerator.kt:171 */
         831  +
        use std::ops::Deref;
         832  +
        self.foo.deref()
         833  +
        /* StructureGenerator.kt:166 */
         834  +
    }
         835  +
    /* StructureGenerator.kt:231 */
         836  +
    #[allow(missing_docs)] // documentation missing in model
         837  +
                           /* StructureGenerator.kt:166 */
         838  +
    pub fn baz(&self) -> &str {
         839  +
        /* StructureGenerator.kt:171 */
         840  +
        use std::ops::Deref;
         841  +
        self.baz.deref()
 1046    842   
        /* StructureGenerator.kt:166 */
 1047    843   
    }
 1048    844   
    /* StructureGenerator.kt:135 */
 1049    845   
}
 1050    846   
/* ServerCodegenVisitor.kt:356 */
 1051         -
impl MalformedTimestampQueryEpochInput {
 1052         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampQueryEpochInput`](crate::input::MalformedTimestampQueryEpochInput).
         847  +
impl HttpRequestWithGreedyLabelInPathInput {
         848  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpRequestWithGreedyLabelInPathInput`](crate::input::HttpRequestWithGreedyLabelInPathInput).
 1053    849   
    /* ServerBuilderGenerator.kt:295 */
 1054         -
    pub fn builder() -> crate::input::malformed_timestamp_query_epoch_input::Builder {
         850  +
    pub fn builder() -> crate::input::http_request_with_greedy_label_in_path_input::Builder {
 1055    851   
        /* ServerBuilderGenerator.kt:296 */
 1056         -
        crate::input::malformed_timestamp_query_epoch_input::Builder::default()
         852  +
        crate::input::http_request_with_greedy_label_in_path_input::Builder::default()
 1057    853   
        /* ServerBuilderGenerator.kt:295 */
 1058    854   
    }
 1059    855   
    /* ServerCodegenVisitor.kt:356 */
 1060    856   
}
 1061    857   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1062         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampQueryEpochInput {
 1063         -
    type Unconstrained = crate::input::malformed_timestamp_query_epoch_input::Builder;
         858  +
impl crate::constrained::Constrained for crate::input::HttpRequestWithGreedyLabelInPathInput {
         859  +
    type Unconstrained = crate::input::http_request_with_greedy_label_in_path_input::Builder;
 1064    860   
}
 1065    861   
 1066    862   
/* StructureGenerator.kt:197 */
 1067    863   
#[allow(missing_docs)] // documentation missing in model
 1068    864   
/* RustType.kt:534 */
 1069         -
#[derive(
 1070         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1071         -
)]
 1072         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampQueryHttpDateInput {
         865  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
         866  +
pub /* StructureGenerator.kt:201 */ struct HttpRequestWithFloatLabelsInput {
 1073    867   
    /* StructureGenerator.kt:231 */
 1074    868   
    #[allow(missing_docs)] // documentation missing in model
 1075         -
    pub timestamp: ::aws_smithy_types::DateTime,
         869  +
    pub float: f32,
         870  +
    /* StructureGenerator.kt:231 */
         871  +
    #[allow(missing_docs)] // documentation missing in model
         872  +
    pub double: f64,
 1076    873   
    /* StructureGenerator.kt:201 */
 1077    874   
}
 1078    875   
/* StructureGenerator.kt:135 */
 1079         -
impl MalformedTimestampQueryHttpDateInput {
         876  +
impl HttpRequestWithFloatLabelsInput {
 1080    877   
    /* StructureGenerator.kt:231 */
 1081    878   
    #[allow(missing_docs)] // documentation missing in model
 1082    879   
                           /* StructureGenerator.kt:166 */
 1083         -
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
 1084         -
        /* StructureGenerator.kt:172 */
 1085         -
        &self.timestamp
         880  +
    pub fn float(&self) -> f32 {
         881  +
        /* StructureGenerator.kt:168 */
         882  +
        self.float
         883  +
        /* StructureGenerator.kt:166 */
         884  +
    }
         885  +
    /* StructureGenerator.kt:231 */
         886  +
    #[allow(missing_docs)] // documentation missing in model
         887  +
                           /* StructureGenerator.kt:166 */
         888  +
    pub fn double(&self) -> f64 {
         889  +
        /* StructureGenerator.kt:168 */
         890  +
        self.double
 1086    891   
        /* StructureGenerator.kt:166 */
 1087    892   
    }
 1088    893   
    /* StructureGenerator.kt:135 */
 1089    894   
}
 1090    895   
/* ServerCodegenVisitor.kt:356 */
 1091         -
impl MalformedTimestampQueryHttpDateInput {
 1092         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampQueryHttpDateInput`](crate::input::MalformedTimestampQueryHttpDateInput).
         896  +
impl HttpRequestWithFloatLabelsInput {
         897  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpRequestWithFloatLabelsInput`](crate::input::HttpRequestWithFloatLabelsInput).
 1093    898   
    /* ServerBuilderGenerator.kt:295 */
 1094         -
    pub fn builder() -> crate::input::malformed_timestamp_query_http_date_input::Builder {
         899  +
    pub fn builder() -> crate::input::http_request_with_float_labels_input::Builder {
 1095    900   
        /* ServerBuilderGenerator.kt:296 */
 1096         -
        crate::input::malformed_timestamp_query_http_date_input::Builder::default()
         901  +
        crate::input::http_request_with_float_labels_input::Builder::default()
 1097    902   
        /* ServerBuilderGenerator.kt:295 */
 1098    903   
    }
 1099    904   
    /* ServerCodegenVisitor.kt:356 */
 1100    905   
}
 1101    906   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1102         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampQueryHttpDateInput {
 1103         -
    type Unconstrained = crate::input::malformed_timestamp_query_http_date_input::Builder;
         907  +
impl crate::constrained::Constrained for crate::input::HttpRequestWithFloatLabelsInput {
         908  +
    type Unconstrained = crate::input::http_request_with_float_labels_input::Builder;
 1104    909   
}
 1105    910   
 1106    911   
/* StructureGenerator.kt:197 */
 1107    912   
#[allow(missing_docs)] // documentation missing in model
 1108    913   
/* RustType.kt:534 */
 1109    914   
#[derive(
 1110    915   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1111    916   
)]
 1112         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampQueryDefaultInput {
         917  +
pub /* StructureGenerator.kt:201 */ struct HttpRequestWithRegexLiteralInput {
 1113    918   
    /* StructureGenerator.kt:231 */
 1114    919   
    #[allow(missing_docs)] // documentation missing in model
 1115         -
    pub timestamp: ::aws_smithy_types::DateTime,
         920  +
    pub str: ::std::string::String,
 1116    921   
    /* StructureGenerator.kt:201 */
 1117    922   
}
 1118    923   
/* StructureGenerator.kt:135 */
 1119         -
impl MalformedTimestampQueryDefaultInput {
         924  +
impl HttpRequestWithRegexLiteralInput {
 1120    925   
    /* StructureGenerator.kt:231 */
 1121    926   
    #[allow(missing_docs)] // documentation missing in model
 1122    927   
                           /* StructureGenerator.kt:166 */
 1123         -
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
 1124         -
        /* StructureGenerator.kt:172 */
 1125         -
        &self.timestamp
         928  +
    pub fn str(&self) -> &str {
         929  +
        /* StructureGenerator.kt:171 */
         930  +
        use std::ops::Deref;
         931  +
        self.str.deref()
 1126    932   
        /* StructureGenerator.kt:166 */
 1127    933   
    }
 1128    934   
    /* StructureGenerator.kt:135 */
 1129    935   
}
 1130    936   
/* ServerCodegenVisitor.kt:356 */
 1131         -
impl MalformedTimestampQueryDefaultInput {
 1132         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampQueryDefaultInput`](crate::input::MalformedTimestampQueryDefaultInput).
         937  +
impl HttpRequestWithRegexLiteralInput {
         938  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpRequestWithRegexLiteralInput`](crate::input::HttpRequestWithRegexLiteralInput).
 1133    939   
    /* ServerBuilderGenerator.kt:295 */
 1134         -
    pub fn builder() -> crate::input::malformed_timestamp_query_default_input::Builder {
         940  +
    pub fn builder() -> crate::input::http_request_with_regex_literal_input::Builder {
 1135    941   
        /* ServerBuilderGenerator.kt:296 */
 1136         -
        crate::input::malformed_timestamp_query_default_input::Builder::default()
         942  +
        crate::input::http_request_with_regex_literal_input::Builder::default()
 1137    943   
        /* ServerBuilderGenerator.kt:295 */
 1138    944   
    }
 1139    945   
    /* ServerCodegenVisitor.kt:356 */
 1140    946   
}
 1141    947   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1142         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampQueryDefaultInput {
 1143         -
    type Unconstrained = crate::input::malformed_timestamp_query_default_input::Builder;
         948  +
impl crate::constrained::Constrained for crate::input::HttpRequestWithRegexLiteralInput {
         949  +
    type Unconstrained = crate::input::http_request_with_regex_literal_input::Builder;
 1144    950   
}
 1145    951   
 1146    952   
/* StructureGenerator.kt:197 */
 1147    953   
#[allow(missing_docs)] // documentation missing in model
 1148    954   
/* RustType.kt:534 */
 1149         -
#[derive(
 1150         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1151         -
)]
 1152         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampPathEpochInput {
         955  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
         956  +
pub /* StructureGenerator.kt:201 */ struct AllQueryStringTypesInput {
 1153    957   
    /* StructureGenerator.kt:231 */
 1154    958   
    #[allow(missing_docs)] // documentation missing in model
 1155         -
    pub timestamp: ::aws_smithy_types::DateTime,
 1156         -
    /* StructureGenerator.kt:201 */
 1157         -
}
 1158         -
/* StructureGenerator.kt:135 */
 1159         -
impl MalformedTimestampPathEpochInput {
         959  +
    pub query_string: ::std::option::Option<::std::string::String>,
 1160    960   
    /* StructureGenerator.kt:231 */
 1161    961   
    #[allow(missing_docs)] // documentation missing in model
 1162         -
                           /* StructureGenerator.kt:166 */
 1163         -
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
 1164         -
        /* StructureGenerator.kt:172 */
 1165         -
        &self.timestamp
 1166         -
        /* StructureGenerator.kt:166 */
 1167         -
    }
 1168         -
    /* StructureGenerator.kt:135 */
 1169         -
}
 1170         -
/* ServerCodegenVisitor.kt:356 */
 1171         -
impl MalformedTimestampPathEpochInput {
 1172         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampPathEpochInput`](crate::input::MalformedTimestampPathEpochInput).
 1173         -
    /* ServerBuilderGenerator.kt:295 */
 1174         -
    pub fn builder() -> crate::input::malformed_timestamp_path_epoch_input::Builder {
 1175         -
        /* ServerBuilderGenerator.kt:296 */
 1176         -
        crate::input::malformed_timestamp_path_epoch_input::Builder::default()
 1177         -
        /* ServerBuilderGenerator.kt:295 */
 1178         -
    }
 1179         -
    /* ServerCodegenVisitor.kt:356 */
 1180         -
}
 1181         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1182         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampPathEpochInput {
 1183         -
    type Unconstrained = crate::input::malformed_timestamp_path_epoch_input::Builder;
 1184         -
}
 1185         -
 1186         -
/* StructureGenerator.kt:197 */
 1187         -
#[allow(missing_docs)] // documentation missing in model
 1188         -
/* RustType.kt:534 */
 1189         -
#[derive(
 1190         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1191         -
)]
 1192         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampPathHttpDateInput {
         962  +
    pub query_string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
 1193    963   
    /* StructureGenerator.kt:231 */
 1194    964   
    #[allow(missing_docs)] // documentation missing in model
 1195         -
    pub timestamp: ::aws_smithy_types::DateTime,
 1196         -
    /* StructureGenerator.kt:201 */
 1197         -
}
 1198         -
/* StructureGenerator.kt:135 */
 1199         -
impl MalformedTimestampPathHttpDateInput {
         965  +
    pub query_string_set: ::std::option::Option<crate::model::StringSet>,
 1200    966   
    /* StructureGenerator.kt:231 */
 1201    967   
    #[allow(missing_docs)] // documentation missing in model
 1202         -
                           /* StructureGenerator.kt:166 */
 1203         -
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
 1204         -
        /* StructureGenerator.kt:172 */
 1205         -
        &self.timestamp
 1206         -
        /* StructureGenerator.kt:166 */
 1207         -
    }
 1208         -
    /* StructureGenerator.kt:135 */
 1209         -
}
 1210         -
/* ServerCodegenVisitor.kt:356 */
 1211         -
impl MalformedTimestampPathHttpDateInput {
 1212         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampPathHttpDateInput`](crate::input::MalformedTimestampPathHttpDateInput).
 1213         -
    /* ServerBuilderGenerator.kt:295 */
 1214         -
    pub fn builder() -> crate::input::malformed_timestamp_path_http_date_input::Builder {
 1215         -
        /* ServerBuilderGenerator.kt:296 */
 1216         -
        crate::input::malformed_timestamp_path_http_date_input::Builder::default()
 1217         -
        /* ServerBuilderGenerator.kt:295 */
 1218         -
    }
 1219         -
    /* ServerCodegenVisitor.kt:356 */
 1220         -
}
 1221         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1222         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampPathHttpDateInput {
 1223         -
    type Unconstrained = crate::input::malformed_timestamp_path_http_date_input::Builder;
 1224         -
}
 1225         -
 1226         -
/* StructureGenerator.kt:197 */
 1227         -
#[allow(missing_docs)] // documentation missing in model
 1228         -
/* RustType.kt:534 */
 1229         -
#[derive(
 1230         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1231         -
)]
 1232         -
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampPathDefaultInput {
         968  +
    pub query_byte: ::std::option::Option<i8>,
 1233    969   
    /* StructureGenerator.kt:231 */
 1234    970   
    #[allow(missing_docs)] // documentation missing in model
 1235         -
    pub timestamp: ::aws_smithy_types::DateTime,
 1236         -
    /* StructureGenerator.kt:201 */
 1237         -
}
 1238         -
/* StructureGenerator.kt:135 */
 1239         -
impl MalformedTimestampPathDefaultInput {
         971  +
    pub query_short: ::std::option::Option<i16>,
 1240    972   
    /* StructureGenerator.kt:231 */
 1241    973   
    #[allow(missing_docs)] // documentation missing in model
 1242         -
                           /* StructureGenerator.kt:166 */
 1243         -
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
 1244         -
        /* StructureGenerator.kt:172 */
 1245         -
        &self.timestamp
 1246         -
        /* StructureGenerator.kt:166 */
 1247         -
    }
 1248         -
    /* StructureGenerator.kt:135 */
 1249         -
}
 1250         -
/* ServerCodegenVisitor.kt:356 */
 1251         -
impl MalformedTimestampPathDefaultInput {
 1252         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampPathDefaultInput`](crate::input::MalformedTimestampPathDefaultInput).
 1253         -
    /* ServerBuilderGenerator.kt:295 */
 1254         -
    pub fn builder() -> crate::input::malformed_timestamp_path_default_input::Builder {
 1255         -
        /* ServerBuilderGenerator.kt:296 */
 1256         -
        crate::input::malformed_timestamp_path_default_input::Builder::default()
 1257         -
        /* ServerBuilderGenerator.kt:295 */
 1258         -
    }
 1259         -
    /* ServerCodegenVisitor.kt:356 */
 1260         -
}
 1261         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1262         -
impl crate::constrained::Constrained for crate::input::MalformedTimestampPathDefaultInput {
 1263         -
    type Unconstrained = crate::input::malformed_timestamp_path_default_input::Builder;
 1264         -
}
 1265         -
 1266         -
/* StructureGenerator.kt:197 */
 1267         -
#[allow(missing_docs)] // documentation missing in model
 1268         -
/* RustType.kt:534 */
 1269         -
#[derive(
 1270         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1271         -
)]
 1272         -
pub /* StructureGenerator.kt:201 */ struct MalformedStringInput {
         974  +
    pub query_integer: ::std::option::Option<i32>,
 1273    975   
    /* StructureGenerator.kt:231 */
 1274    976   
    #[allow(missing_docs)] // documentation missing in model
 1275         -
    pub blob: ::std::option::Option<::std::string::String>,
 1276         -
    /* StructureGenerator.kt:201 */
 1277         -
}
 1278         -
/* StructureGenerator.kt:135 */
 1279         -
impl MalformedStringInput {
         977  +
    pub query_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
 1280    978   
    /* StructureGenerator.kt:231 */
 1281    979   
    #[allow(missing_docs)] // documentation missing in model
 1282         -
                           /* StructureGenerator.kt:166 */
 1283         -
    pub fn blob(&self) -> ::std::option::Option<&str> {
 1284         -
        /* StructureGenerator.kt:169 */
 1285         -
        self.blob.as_deref()
 1286         -
        /* StructureGenerator.kt:166 */
 1287         -
    }
 1288         -
    /* StructureGenerator.kt:135 */
 1289         -
}
 1290         -
/* ServerCodegenVisitor.kt:356 */
 1291         -
impl MalformedStringInput {
 1292         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedStringInput`](crate::input::MalformedStringInput).
 1293         -
    /* ServerBuilderGenerator.kt:295 */
 1294         -
    pub fn builder() -> crate::input::malformed_string_input::Builder {
 1295         -
        /* ServerBuilderGenerator.kt:296 */
 1296         -
        crate::input::malformed_string_input::Builder::default()
 1297         -
        /* ServerBuilderGenerator.kt:295 */
 1298         -
    }
 1299         -
    /* ServerCodegenVisitor.kt:356 */
 1300         -
}
 1301         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1302         -
impl crate::constrained::Constrained for crate::input::MalformedStringInput {
 1303         -
    type Unconstrained = crate::input::malformed_string_input::Builder;
 1304         -
}
 1305         -
 1306         -
/* StructureGenerator.kt:197 */
 1307         -
#[allow(missing_docs)] // documentation missing in model
 1308         -
/* RustType.kt:534 */
 1309         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 1310         -
pub /* StructureGenerator.kt:201 */ struct MalformedDoubleInput {
         980  +
    pub query_integer_set: ::std::option::Option<crate::model::IntegerSet>,
 1311    981   
    /* StructureGenerator.kt:231 */
 1312    982   
    #[allow(missing_docs)] // documentation missing in model
 1313         -
    pub double_in_body: ::std::option::Option<f64>,
         983  +
    pub query_long: ::std::option::Option<i64>,
 1314    984   
    /* StructureGenerator.kt:231 */
 1315    985   
    #[allow(missing_docs)] // documentation missing in model
 1316         -
    pub double_in_path: f64,
         986  +
    pub query_float: ::std::option::Option<f32>,
 1317    987   
    /* StructureGenerator.kt:231 */
 1318    988   
    #[allow(missing_docs)] // documentation missing in model
 1319         -
    pub double_in_query: ::std::option::Option<f64>,
         989  +
    pub query_double: ::std::option::Option<f64>,
 1320    990   
    /* StructureGenerator.kt:231 */
 1321    991   
    #[allow(missing_docs)] // documentation missing in model
 1322         -
    pub double_in_header: ::std::option::Option<f64>,
         992  +
    pub query_double_list: ::std::option::Option<::std::vec::Vec<f64>>,
         993  +
    /* StructureGenerator.kt:231 */
         994  +
    #[allow(missing_docs)] // documentation missing in model
         995  +
    pub query_boolean: ::std::option::Option<bool>,
         996  +
    /* StructureGenerator.kt:231 */
         997  +
    #[allow(missing_docs)] // documentation missing in model
         998  +
    pub query_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
         999  +
    /* StructureGenerator.kt:231 */
        1000  +
    #[allow(missing_docs)] // documentation missing in model
        1001  +
    pub query_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
        1002  +
    /* StructureGenerator.kt:231 */
        1003  +
    #[allow(missing_docs)] // documentation missing in model
        1004  +
    pub query_timestamp_list: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
        1005  +
    /* StructureGenerator.kt:231 */
        1006  +
    #[allow(missing_docs)] // documentation missing in model
        1007  +
    pub query_enum: ::std::option::Option<crate::model::FooEnum>,
        1008  +
    /* StructureGenerator.kt:231 */
        1009  +
    #[allow(missing_docs)] // documentation missing in model
        1010  +
    pub query_enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
        1011  +
    /* StructureGenerator.kt:231 */
        1012  +
    #[allow(missing_docs)] // documentation missing in model
        1013  +
    pub query_integer_enum: ::std::option::Option<i32>,
        1014  +
    /* StructureGenerator.kt:231 */
        1015  +
    #[allow(missing_docs)] // documentation missing in model
        1016  +
    pub query_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
        1017  +
    /* StructureGenerator.kt:231 */
        1018  +
    #[allow(missing_docs)] // documentation missing in model
        1019  +
    pub query_params_map_of_string_list: ::std::option::Option<
        1020  +
        ::std::collections::HashMap<::std::string::String, ::std::vec::Vec<::std::string::String>>,
        1021  +
    >,
 1323   1022   
    /* StructureGenerator.kt:201 */
 1324   1023   
}
 1325   1024   
/* StructureGenerator.kt:135 */
 1326         -
impl MalformedDoubleInput {
        1025  +
impl AllQueryStringTypesInput {
 1327   1026   
    /* StructureGenerator.kt:231 */
 1328   1027   
    #[allow(missing_docs)] // documentation missing in model
 1329   1028   
                           /* StructureGenerator.kt:166 */
 1330         -
    pub fn double_in_body(&self) -> ::std::option::Option<f64> {
 1331         -
        /* StructureGenerator.kt:168 */
 1332         -
        self.double_in_body
        1029  +
    pub fn query_string(&self) -> ::std::option::Option<&str> {
        1030  +
        /* StructureGenerator.kt:169 */
        1031  +
        self.query_string.as_deref()
 1333   1032   
        /* StructureGenerator.kt:166 */
 1334   1033   
    }
 1335   1034   
    /* StructureGenerator.kt:231 */
 1336   1035   
    #[allow(missing_docs)] // documentation missing in model
 1337   1036   
                           /* StructureGenerator.kt:166 */
 1338         -
    pub fn double_in_path(&self) -> f64 {
 1339         -
        /* StructureGenerator.kt:168 */
 1340         -
        self.double_in_path
        1037  +
    pub fn query_string_list(&self) -> ::std::option::Option<&[::std::string::String]> {
        1038  +
        /* StructureGenerator.kt:169 */
        1039  +
        self.query_string_list.as_deref()
 1341   1040   
        /* StructureGenerator.kt:166 */
 1342   1041   
    }
 1343   1042   
    /* StructureGenerator.kt:231 */
 1344   1043   
    #[allow(missing_docs)] // documentation missing in model
 1345   1044   
                           /* StructureGenerator.kt:166 */
 1346         -
    pub fn double_in_query(&self) -> ::std::option::Option<f64> {
 1347         -
        /* StructureGenerator.kt:168 */
 1348         -
        self.double_in_query
        1045  +
    pub fn query_string_set(&self) -> ::std::option::Option<&crate::model::StringSet> {
        1046  +
        /* StructureGenerator.kt:170 */
        1047  +
        self.query_string_set.as_ref()
 1349   1048   
        /* StructureGenerator.kt:166 */
 1350   1049   
    }
 1351   1050   
    /* StructureGenerator.kt:231 */
 1352   1051   
    #[allow(missing_docs)] // documentation missing in model
 1353   1052   
                           /* StructureGenerator.kt:166 */
 1354         -
    pub fn double_in_header(&self) -> ::std::option::Option<f64> {
        1053  +
    pub fn query_byte(&self) -> ::std::option::Option<i8> {
 1355   1054   
        /* StructureGenerator.kt:168 */
 1356         -
        self.double_in_header
        1055  +
        self.query_byte
 1357   1056   
        /* StructureGenerator.kt:166 */
 1358   1057   
    }
 1359         -
    /* StructureGenerator.kt:135 */
 1360         -
}
 1361         -
/* ServerCodegenVisitor.kt:356 */
 1362         -
impl MalformedDoubleInput {
 1363         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedDoubleInput`](crate::input::MalformedDoubleInput).
 1364         -
    /* ServerBuilderGenerator.kt:295 */
 1365         -
    pub fn builder() -> crate::input::malformed_double_input::Builder {
 1366         -
        /* ServerBuilderGenerator.kt:296 */
 1367         -
        crate::input::malformed_double_input::Builder::default()
 1368         -
        /* ServerBuilderGenerator.kt:295 */
 1369         -
    }
 1370         -
    /* ServerCodegenVisitor.kt:356 */
 1371         -
}
 1372         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1373         -
impl crate::constrained::Constrained for crate::input::MalformedDoubleInput {
 1374         -
    type Unconstrained = crate::input::malformed_double_input::Builder;
 1375         -
}
 1376         -
 1377         -
/* StructureGenerator.kt:197 */
 1378         -
#[allow(missing_docs)] // documentation missing in model
 1379         -
/* RustType.kt:534 */
 1380         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 1381         -
pub /* StructureGenerator.kt:201 */ struct MalformedFloatInput {
 1382         -
    /* StructureGenerator.kt:231 */
 1383         -
    #[allow(missing_docs)] // documentation missing in model
 1384         -
    pub float_in_body: ::std::option::Option<f32>,
 1385         -
    /* StructureGenerator.kt:231 */
 1386         -
    #[allow(missing_docs)] // documentation missing in model
 1387         -
    pub float_in_path: f32,
 1388         -
    /* StructureGenerator.kt:231 */
 1389         -
    #[allow(missing_docs)] // documentation missing in model
 1390         -
    pub float_in_query: ::std::option::Option<f32>,
 1391         -
    /* StructureGenerator.kt:231 */
 1392         -
    #[allow(missing_docs)] // documentation missing in model
 1393         -
    pub float_in_header: ::std::option::Option<f32>,
 1394         -
    /* StructureGenerator.kt:201 */
 1395         -
}
 1396         -
/* StructureGenerator.kt:135 */
 1397         -
impl MalformedFloatInput {
 1398   1058   
    /* StructureGenerator.kt:231 */
 1399   1059   
    #[allow(missing_docs)] // documentation missing in model
 1400   1060   
                           /* StructureGenerator.kt:166 */
 1401         -
    pub fn float_in_body(&self) -> ::std::option::Option<f32> {
        1061  +
    pub fn query_short(&self) -> ::std::option::Option<i16> {
 1402   1062   
        /* StructureGenerator.kt:168 */
 1403         -
        self.float_in_body
        1063  +
        self.query_short
 1404   1064   
        /* StructureGenerator.kt:166 */
 1405   1065   
    }
 1406   1066   
    /* StructureGenerator.kt:231 */
 1407   1067   
    #[allow(missing_docs)] // documentation missing in model
 1408   1068   
                           /* StructureGenerator.kt:166 */
 1409         -
    pub fn float_in_path(&self) -> f32 {
        1069  +
    pub fn query_integer(&self) -> ::std::option::Option<i32> {
 1410   1070   
        /* StructureGenerator.kt:168 */
 1411         -
        self.float_in_path
        1071  +
        self.query_integer
 1412   1072   
        /* StructureGenerator.kt:166 */
 1413   1073   
    }
 1414   1074   
    /* StructureGenerator.kt:231 */
 1415   1075   
    #[allow(missing_docs)] // documentation missing in model
 1416   1076   
                           /* StructureGenerator.kt:166 */
 1417         -
    pub fn float_in_query(&self) -> ::std::option::Option<f32> {
 1418         -
        /* StructureGenerator.kt:168 */
 1419         -
        self.float_in_query
        1077  +
    pub fn query_integer_list(&self) -> ::std::option::Option<&[i32]> {
        1078  +
        /* StructureGenerator.kt:169 */
        1079  +
        self.query_integer_list.as_deref()
 1420   1080   
        /* StructureGenerator.kt:166 */
 1421   1081   
    }
 1422   1082   
    /* StructureGenerator.kt:231 */
 1423   1083   
    #[allow(missing_docs)] // documentation missing in model
 1424   1084   
                           /* StructureGenerator.kt:166 */
 1425         -
    pub fn float_in_header(&self) -> ::std::option::Option<f32> {
 1426         -
        /* StructureGenerator.kt:168 */
 1427         -
        self.float_in_header
        1085  +
    pub fn query_integer_set(&self) -> ::std::option::Option<&crate::model::IntegerSet> {
        1086  +
        /* StructureGenerator.kt:170 */
        1087  +
        self.query_integer_set.as_ref()
 1428   1088   
        /* StructureGenerator.kt:166 */
 1429   1089   
    }
 1430         -
    /* StructureGenerator.kt:135 */
 1431         -
}
 1432         -
/* ServerCodegenVisitor.kt:356 */
 1433         -
impl MalformedFloatInput {
 1434         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedFloatInput`](crate::input::MalformedFloatInput).
 1435         -
    /* ServerBuilderGenerator.kt:295 */
 1436         -
    pub fn builder() -> crate::input::malformed_float_input::Builder {
 1437         -
        /* ServerBuilderGenerator.kt:296 */
 1438         -
        crate::input::malformed_float_input::Builder::default()
 1439         -
        /* ServerBuilderGenerator.kt:295 */
 1440         -
    }
 1441         -
    /* ServerCodegenVisitor.kt:356 */
 1442         -
}
 1443         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1444         -
impl crate::constrained::Constrained for crate::input::MalformedFloatInput {
 1445         -
    type Unconstrained = crate::input::malformed_float_input::Builder;
 1446         -
}
 1447         -
 1448         -
/* StructureGenerator.kt:197 */
 1449         -
#[allow(missing_docs)] // documentation missing in model
 1450         -
/* RustType.kt:534 */
 1451         -
#[derive(
 1452         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1453         -
)]
 1454         -
pub /* StructureGenerator.kt:201 */ struct MalformedLongInput {
 1455         -
    /* StructureGenerator.kt:231 */
 1456         -
    #[allow(missing_docs)] // documentation missing in model
 1457         -
    pub long_in_body: ::std::option::Option<i64>,
 1458         -
    /* StructureGenerator.kt:231 */
 1459         -
    #[allow(missing_docs)] // documentation missing in model
 1460         -
    pub long_in_path: i64,
 1461         -
    /* StructureGenerator.kt:231 */
 1462         -
    #[allow(missing_docs)] // documentation missing in model
 1463         -
    pub long_in_query: ::std::option::Option<i64>,
 1464   1090   
    /* StructureGenerator.kt:231 */
 1465   1091   
    #[allow(missing_docs)] // documentation missing in model
 1466         -
    pub long_in_header: ::std::option::Option<i64>,
 1467         -
    /* StructureGenerator.kt:201 */
 1468         -
}
 1469         -
/* StructureGenerator.kt:135 */
 1470         -
impl MalformedLongInput {
        1092  +
                           /* StructureGenerator.kt:166 */
        1093  +
    pub fn query_long(&self) -> ::std::option::Option<i64> {
        1094  +
        /* StructureGenerator.kt:168 */
        1095  +
        self.query_long
        1096  +
        /* StructureGenerator.kt:166 */
        1097  +
    }
 1471   1098   
    /* StructureGenerator.kt:231 */
 1472   1099   
    #[allow(missing_docs)] // documentation missing in model
 1473   1100   
                           /* StructureGenerator.kt:166 */
 1474         -
    pub fn long_in_body(&self) -> ::std::option::Option<i64> {
        1101  +
    pub fn query_float(&self) -> ::std::option::Option<f32> {
 1475   1102   
        /* StructureGenerator.kt:168 */
 1476         -
        self.long_in_body
        1103  +
        self.query_float
 1477   1104   
        /* StructureGenerator.kt:166 */
 1478   1105   
    }
 1479   1106   
    /* StructureGenerator.kt:231 */
 1480   1107   
    #[allow(missing_docs)] // documentation missing in model
 1481   1108   
                           /* StructureGenerator.kt:166 */
 1482         -
    pub fn long_in_path(&self) -> i64 {
        1109  +
    pub fn query_double(&self) -> ::std::option::Option<f64> {
 1483   1110   
        /* StructureGenerator.kt:168 */
 1484         -
        self.long_in_path
        1111  +
        self.query_double
 1485   1112   
        /* StructureGenerator.kt:166 */
 1486   1113   
    }
 1487   1114   
    /* StructureGenerator.kt:231 */
 1488   1115   
    #[allow(missing_docs)] // documentation missing in model
 1489   1116   
                           /* StructureGenerator.kt:166 */
 1490         -
    pub fn long_in_query(&self) -> ::std::option::Option<i64> {
 1491         -
        /* StructureGenerator.kt:168 */
 1492         -
        self.long_in_query
        1117  +
    pub fn query_double_list(&self) -> ::std::option::Option<&[f64]> {
        1118  +
        /* StructureGenerator.kt:169 */
        1119  +
        self.query_double_list.as_deref()
 1493   1120   
        /* StructureGenerator.kt:166 */
 1494   1121   
    }
 1495   1122   
    /* StructureGenerator.kt:231 */
 1496   1123   
    #[allow(missing_docs)] // documentation missing in model
 1497   1124   
                           /* StructureGenerator.kt:166 */
 1498         -
    pub fn long_in_header(&self) -> ::std::option::Option<i64> {
        1125  +
    pub fn query_boolean(&self) -> ::std::option::Option<bool> {
 1499   1126   
        /* StructureGenerator.kt:168 */
 1500         -
        self.long_in_header
        1127  +
        self.query_boolean
 1501   1128   
        /* StructureGenerator.kt:166 */
 1502   1129   
    }
 1503         -
    /* StructureGenerator.kt:135 */
 1504         -
}
 1505         -
/* ServerCodegenVisitor.kt:356 */
 1506         -
impl MalformedLongInput {
 1507         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedLongInput`](crate::input::MalformedLongInput).
 1508         -
    /* ServerBuilderGenerator.kt:295 */
 1509         -
    pub fn builder() -> crate::input::malformed_long_input::Builder {
 1510         -
        /* ServerBuilderGenerator.kt:296 */
 1511         -
        crate::input::malformed_long_input::Builder::default()
 1512         -
        /* ServerBuilderGenerator.kt:295 */
 1513         -
    }
 1514         -
    /* ServerCodegenVisitor.kt:356 */
 1515         -
}
 1516         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1517         -
impl crate::constrained::Constrained for crate::input::MalformedLongInput {
 1518         -
    type Unconstrained = crate::input::malformed_long_input::Builder;
 1519         -
}
 1520         -
 1521         -
/* StructureGenerator.kt:197 */
 1522         -
#[allow(missing_docs)] // documentation missing in model
 1523         -
/* RustType.kt:534 */
 1524         -
#[derive(
 1525         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1526         -
)]
 1527         -
pub /* StructureGenerator.kt:201 */ struct MalformedShortInput {
 1528   1130   
    /* StructureGenerator.kt:231 */
 1529   1131   
    #[allow(missing_docs)] // documentation missing in model
 1530         -
    pub short_in_body: ::std::option::Option<i16>,
        1132  +
                           /* StructureGenerator.kt:166 */
        1133  +
    pub fn query_boolean_list(&self) -> ::std::option::Option<&[bool]> {
        1134  +
        /* StructureGenerator.kt:169 */
        1135  +
        self.query_boolean_list.as_deref()
        1136  +
        /* StructureGenerator.kt:166 */
        1137  +
    }
 1531   1138   
    /* StructureGenerator.kt:231 */
 1532   1139   
    #[allow(missing_docs)] // documentation missing in model
 1533         -
    pub short_in_path: i16,
        1140  +
                           /* StructureGenerator.kt:166 */
        1141  +
    pub fn query_timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
        1142  +
        /* StructureGenerator.kt:170 */
        1143  +
        self.query_timestamp.as_ref()
        1144  +
        /* StructureGenerator.kt:166 */
        1145  +
    }
 1534   1146   
    /* StructureGenerator.kt:231 */
 1535   1147   
    #[allow(missing_docs)] // documentation missing in model
 1536         -
    pub short_in_query: ::std::option::Option<i16>,
        1148  +
                           /* StructureGenerator.kt:166 */
        1149  +
    pub fn query_timestamp_list(&self) -> ::std::option::Option<&[::aws_smithy_types::DateTime]> {
        1150  +
        /* StructureGenerator.kt:169 */
        1151  +
        self.query_timestamp_list.as_deref()
        1152  +
        /* StructureGenerator.kt:166 */
        1153  +
    }
 1537   1154   
    /* StructureGenerator.kt:231 */
 1538   1155   
    #[allow(missing_docs)] // documentation missing in model
 1539         -
    pub short_in_header: ::std::option::Option<i16>,
 1540         -
    /* StructureGenerator.kt:201 */
 1541         -
}
 1542         -
/* StructureGenerator.kt:135 */
 1543         -
impl MalformedShortInput {
        1156  +
                           /* StructureGenerator.kt:166 */
        1157  +
    pub fn query_enum(&self) -> ::std::option::Option<&crate::model::FooEnum> {
        1158  +
        /* StructureGenerator.kt:170 */
        1159  +
        self.query_enum.as_ref()
        1160  +
        /* StructureGenerator.kt:166 */
        1161  +
    }
 1544   1162   
    /* StructureGenerator.kt:231 */
 1545   1163   
    #[allow(missing_docs)] // documentation missing in model
 1546   1164   
                           /* StructureGenerator.kt:166 */
 1547         -
    pub fn short_in_body(&self) -> ::std::option::Option<i16> {
 1548         -
        /* StructureGenerator.kt:168 */
 1549         -
        self.short_in_body
        1165  +
    pub fn query_enum_list(&self) -> ::std::option::Option<&[crate::model::FooEnum]> {
        1166  +
        /* StructureGenerator.kt:169 */
        1167  +
        self.query_enum_list.as_deref()
 1550   1168   
        /* StructureGenerator.kt:166 */
 1551   1169   
    }
 1552   1170   
    /* StructureGenerator.kt:231 */
 1553   1171   
    #[allow(missing_docs)] // documentation missing in model
 1554   1172   
                           /* StructureGenerator.kt:166 */
 1555         -
    pub fn short_in_path(&self) -> i16 {
        1173  +
    pub fn query_integer_enum(&self) -> ::std::option::Option<i32> {
 1556   1174   
        /* StructureGenerator.kt:168 */
 1557         -
        self.short_in_path
        1175  +
        self.query_integer_enum
 1558   1176   
        /* StructureGenerator.kt:166 */
 1559   1177   
    }
 1560   1178   
    /* StructureGenerator.kt:231 */
 1561   1179   
    #[allow(missing_docs)] // documentation missing in model
 1562   1180   
                           /* StructureGenerator.kt:166 */
 1563         -
    pub fn short_in_query(&self) -> ::std::option::Option<i16> {
 1564         -
        /* StructureGenerator.kt:168 */
 1565         -
        self.short_in_query
        1181  +
    pub fn query_integer_enum_list(&self) -> ::std::option::Option<&[i32]> {
        1182  +
        /* StructureGenerator.kt:169 */
        1183  +
        self.query_integer_enum_list.as_deref()
 1566   1184   
        /* StructureGenerator.kt:166 */
 1567   1185   
    }
 1568   1186   
    /* StructureGenerator.kt:231 */
 1569   1187   
    #[allow(missing_docs)] // documentation missing in model
 1570   1188   
                           /* StructureGenerator.kt:166 */
 1571         -
    pub fn short_in_header(&self) -> ::std::option::Option<i16> {
 1572         -
        /* StructureGenerator.kt:168 */
 1573         -
        self.short_in_header
        1189  +
    pub fn query_params_map_of_string_list(
        1190  +
        &self,
        1191  +
    ) -> ::std::option::Option<
        1192  +
        &::std::collections::HashMap<::std::string::String, ::std::vec::Vec<::std::string::String>>,
        1193  +
    > {
        1194  +
        /* StructureGenerator.kt:170 */
        1195  +
        self.query_params_map_of_string_list.as_ref()
 1574   1196   
        /* StructureGenerator.kt:166 */
 1575   1197   
    }
 1576   1198   
    /* StructureGenerator.kt:135 */
 1577   1199   
}
 1578   1200   
/* ServerCodegenVisitor.kt:356 */
 1579         -
impl MalformedShortInput {
 1580         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedShortInput`](crate::input::MalformedShortInput).
        1201  +
impl AllQueryStringTypesInput {
        1202  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`AllQueryStringTypesInput`](crate::input::AllQueryStringTypesInput).
 1581   1203   
    /* ServerBuilderGenerator.kt:295 */
 1582         -
    pub fn builder() -> crate::input::malformed_short_input::Builder {
        1204  +
    pub fn builder() -> crate::input::all_query_string_types_input::Builder {
 1583   1205   
        /* ServerBuilderGenerator.kt:296 */
 1584         -
        crate::input::malformed_short_input::Builder::default()
        1206  +
        crate::input::all_query_string_types_input::Builder::default()
 1585   1207   
        /* ServerBuilderGenerator.kt:295 */
 1586   1208   
    }
 1587   1209   
    /* ServerCodegenVisitor.kt:356 */
 1588   1210   
}
 1589   1211   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1590         -
impl crate::constrained::Constrained for crate::input::MalformedShortInput {
 1591         -
    type Unconstrained = crate::input::malformed_short_input::Builder;
        1212  +
impl crate::constrained::Constrained for crate::input::AllQueryStringTypesInput {
        1213  +
    type Unconstrained = crate::input::all_query_string_types_input::Builder;
 1592   1214   
}
 1593   1215   
 1594   1216   
/* StructureGenerator.kt:197 */
 1595   1217   
#[allow(missing_docs)] // documentation missing in model
 1596   1218   
/* RustType.kt:534 */
 1597   1219   
#[derive(
 1598   1220   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1599   1221   
)]
 1600         -
pub /* StructureGenerator.kt:201 */ struct MalformedByteInput {
 1601         -
    /* StructureGenerator.kt:231 */
 1602         -
    #[allow(missing_docs)] // documentation missing in model
 1603         -
    pub byte_in_body: ::std::option::Option<i8>,
 1604         -
    /* StructureGenerator.kt:231 */
 1605         -
    #[allow(missing_docs)] // documentation missing in model
 1606         -
    pub byte_in_path: i8,
 1607         -
    /* StructureGenerator.kt:231 */
 1608         -
    #[allow(missing_docs)] // documentation missing in model
 1609         -
    pub byte_in_query: ::std::option::Option<i8>,
        1222  +
pub /* StructureGenerator.kt:201 */ struct ConstantQueryStringInput {
 1610   1223   
    /* StructureGenerator.kt:231 */
 1611   1224   
    #[allow(missing_docs)] // documentation missing in model
 1612         -
    pub byte_in_header: ::std::option::Option<i8>,
        1225  +
    pub hello: ::std::string::String,
 1613   1226   
    /* StructureGenerator.kt:201 */
 1614   1227   
}
 1615   1228   
/* StructureGenerator.kt:135 */
 1616         -
impl MalformedByteInput {
 1617         -
    /* StructureGenerator.kt:231 */
 1618         -
    #[allow(missing_docs)] // documentation missing in model
 1619         -
                           /* StructureGenerator.kt:166 */
 1620         -
    pub fn byte_in_body(&self) -> ::std::option::Option<i8> {
 1621         -
        /* StructureGenerator.kt:168 */
 1622         -
        self.byte_in_body
 1623         -
        /* StructureGenerator.kt:166 */
 1624         -
    }
 1625         -
    /* StructureGenerator.kt:231 */
 1626         -
    #[allow(missing_docs)] // documentation missing in model
 1627         -
                           /* StructureGenerator.kt:166 */
 1628         -
    pub fn byte_in_path(&self) -> i8 {
 1629         -
        /* StructureGenerator.kt:168 */
 1630         -
        self.byte_in_path
 1631         -
        /* StructureGenerator.kt:166 */
 1632         -
    }
 1633         -
    /* StructureGenerator.kt:231 */
 1634         -
    #[allow(missing_docs)] // documentation missing in model
 1635         -
                           /* StructureGenerator.kt:166 */
 1636         -
    pub fn byte_in_query(&self) -> ::std::option::Option<i8> {
 1637         -
        /* StructureGenerator.kt:168 */
 1638         -
        self.byte_in_query
 1639         -
        /* StructureGenerator.kt:166 */
 1640         -
    }
        1229  +
impl ConstantQueryStringInput {
 1641   1230   
    /* StructureGenerator.kt:231 */
 1642   1231   
    #[allow(missing_docs)] // documentation missing in model
 1643   1232   
                           /* StructureGenerator.kt:166 */
 1644         -
    pub fn byte_in_header(&self) -> ::std::option::Option<i8> {
 1645         -
        /* StructureGenerator.kt:168 */
 1646         -
        self.byte_in_header
        1233  +
    pub fn hello(&self) -> &str {
        1234  +
        /* StructureGenerator.kt:171 */
        1235  +
        use std::ops::Deref;
        1236  +
        self.hello.deref()
 1647   1237   
        /* StructureGenerator.kt:166 */
 1648   1238   
    }
 1649   1239   
    /* StructureGenerator.kt:135 */
 1650   1240   
}
 1651   1241   
/* ServerCodegenVisitor.kt:356 */
 1652         -
impl MalformedByteInput {
 1653         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedByteInput`](crate::input::MalformedByteInput).
        1242  +
impl ConstantQueryStringInput {
        1243  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`ConstantQueryStringInput`](crate::input::ConstantQueryStringInput).
 1654   1244   
    /* ServerBuilderGenerator.kt:295 */
 1655         -
    pub fn builder() -> crate::input::malformed_byte_input::Builder {
        1245  +
    pub fn builder() -> crate::input::constant_query_string_input::Builder {
 1656   1246   
        /* ServerBuilderGenerator.kt:296 */
 1657         -
        crate::input::malformed_byte_input::Builder::default()
        1247  +
        crate::input::constant_query_string_input::Builder::default()
 1658   1248   
        /* ServerBuilderGenerator.kt:295 */
 1659   1249   
    }
 1660   1250   
    /* ServerCodegenVisitor.kt:356 */
 1661   1251   
}
 1662   1252   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1663         -
impl crate::constrained::Constrained for crate::input::MalformedByteInput {
 1664         -
    type Unconstrained = crate::input::malformed_byte_input::Builder;
        1253  +
impl crate::constrained::Constrained for crate::input::ConstantQueryStringInput {
        1254  +
    type Unconstrained = crate::input::constant_query_string_input::Builder;
 1665   1255   
}
 1666   1256   
 1667   1257   
/* StructureGenerator.kt:197 */
 1668   1258   
#[allow(missing_docs)] // documentation missing in model
 1669   1259   
/* RustType.kt:534 */
 1670   1260   
#[derive(
 1671   1261   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1672   1262   
)]
 1673         -
pub /* StructureGenerator.kt:201 */ struct MalformedBlobInput {
        1263  +
pub /* StructureGenerator.kt:201 */ struct ConstantAndVariableQueryStringInput {
 1674   1264   
    /* StructureGenerator.kt:231 */
 1675   1265   
    #[allow(missing_docs)] // documentation missing in model
 1676         -
    pub blob: ::std::option::Option<::aws_smithy_types::Blob>,
        1266  +
    pub baz: ::std::option::Option<::std::string::String>,
        1267  +
    /* StructureGenerator.kt:231 */
        1268  +
    #[allow(missing_docs)] // documentation missing in model
        1269  +
    pub maybe_set: ::std::option::Option<::std::string::String>,
 1677   1270   
    /* StructureGenerator.kt:201 */
 1678   1271   
}
 1679   1272   
/* StructureGenerator.kt:135 */
 1680         -
impl MalformedBlobInput {
        1273  +
impl ConstantAndVariableQueryStringInput {
 1681   1274   
    /* StructureGenerator.kt:231 */
 1682   1275   
    #[allow(missing_docs)] // documentation missing in model
 1683   1276   
                           /* StructureGenerator.kt:166 */
 1684         -
    pub fn blob(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
 1685         -
        /* StructureGenerator.kt:170 */
 1686         -
        self.blob.as_ref()
        1277  +
    pub fn baz(&self) -> ::std::option::Option<&str> {
        1278  +
        /* StructureGenerator.kt:169 */
        1279  +
        self.baz.as_deref()
        1280  +
        /* StructureGenerator.kt:166 */
        1281  +
    }
        1282  +
    /* StructureGenerator.kt:231 */
        1283  +
    #[allow(missing_docs)] // documentation missing in model
        1284  +
                           /* StructureGenerator.kt:166 */
        1285  +
    pub fn maybe_set(&self) -> ::std::option::Option<&str> {
        1286  +
        /* StructureGenerator.kt:169 */
        1287  +
        self.maybe_set.as_deref()
 1687   1288   
        /* StructureGenerator.kt:166 */
 1688   1289   
    }
 1689   1290   
    /* StructureGenerator.kt:135 */
 1690   1291   
}
 1691   1292   
/* ServerCodegenVisitor.kt:356 */
 1692         -
impl MalformedBlobInput {
 1693         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedBlobInput`](crate::input::MalformedBlobInput).
        1293  +
impl ConstantAndVariableQueryStringInput {
        1294  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`ConstantAndVariableQueryStringInput`](crate::input::ConstantAndVariableQueryStringInput).
 1694   1295   
    /* ServerBuilderGenerator.kt:295 */
 1695         -
    pub fn builder() -> crate::input::malformed_blob_input::Builder {
        1296  +
    pub fn builder() -> crate::input::constant_and_variable_query_string_input::Builder {
 1696   1297   
        /* ServerBuilderGenerator.kt:296 */
 1697         -
        crate::input::malformed_blob_input::Builder::default()
        1298  +
        crate::input::constant_and_variable_query_string_input::Builder::default()
 1698   1299   
        /* ServerBuilderGenerator.kt:295 */
 1699   1300   
    }
 1700   1301   
    /* ServerCodegenVisitor.kt:356 */
 1701   1302   
}
 1702   1303   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1703         -
impl crate::constrained::Constrained for crate::input::MalformedBlobInput {
 1704         -
    type Unconstrained = crate::input::malformed_blob_input::Builder;
        1304  +
impl crate::constrained::Constrained for crate::input::ConstantAndVariableQueryStringInput {
        1305  +
    type Unconstrained = crate::input::constant_and_variable_query_string_input::Builder;
 1705   1306   
}
 1706   1307   
 1707   1308   
/* StructureGenerator.kt:197 */
 1708   1309   
#[allow(missing_docs)] // documentation missing in model
 1709   1310   
/* RustType.kt:534 */
 1710         -
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 1711         -
pub /* StructureGenerator.kt:201 */ struct MalformedMapInput {
 1712         -
    /* StructureGenerator.kt:231 */
 1713         -
    #[allow(missing_docs)] // documentation missing in model
 1714         -
    pub body_map: ::std::option::Option<
 1715         -
        ::std::collections::HashMap<::std::string::String, ::std::string::String>,
 1716         -
    >,
 1717         -
    /* StructureGenerator.kt:201 */
 1718         -
}
 1719         -
/* StructureGenerator.kt:135 */
 1720         -
impl MalformedMapInput {
 1721         -
    /* StructureGenerator.kt:231 */
 1722         -
    #[allow(missing_docs)] // documentation missing in model
 1723         -
                           /* StructureGenerator.kt:166 */
 1724         -
    pub fn body_map(
 1725         -
        &self,
 1726         -
    ) -> ::std::option::Option<
 1727         -
        &::std::collections::HashMap<::std::string::String, ::std::string::String>,
 1728         -
    > {
 1729         -
        /* StructureGenerator.kt:170 */
 1730         -
        self.body_map.as_ref()
 1731         -
        /* StructureGenerator.kt:166 */
 1732         -
    }
 1733         -
    /* StructureGenerator.kt:135 */
 1734         -
}
        1311  +
#[derive(
        1312  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        1313  +
)]
        1314  +
pub /* StructureGenerator.kt:201 */ struct IgnoreQueryParamsInResponseInput {/* StructureGenerator.kt:201 */}
 1735   1315   
/* ServerCodegenVisitor.kt:356 */
 1736         -
impl MalformedMapInput {
 1737         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedMapInput`](crate::input::MalformedMapInput).
        1316  +
impl IgnoreQueryParamsInResponseInput {
        1317  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`IgnoreQueryParamsInResponseInput`](crate::input::IgnoreQueryParamsInResponseInput).
 1738   1318   
    /* ServerBuilderGenerator.kt:295 */
 1739         -
    pub fn builder() -> crate::input::malformed_map_input::Builder {
        1319  +
    pub fn builder() -> crate::input::ignore_query_params_in_response_input::Builder {
 1740   1320   
        /* ServerBuilderGenerator.kt:296 */
 1741         -
        crate::input::malformed_map_input::Builder::default()
        1321  +
        crate::input::ignore_query_params_in_response_input::Builder::default()
 1742   1322   
        /* ServerBuilderGenerator.kt:295 */
 1743   1323   
    }
 1744   1324   
    /* ServerCodegenVisitor.kt:356 */
 1745   1325   
}
 1746   1326   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1747         -
impl crate::constrained::Constrained for crate::input::MalformedMapInput {
 1748         -
    type Unconstrained = crate::input::malformed_map_input::Builder;
        1327  +
impl crate::constrained::Constrained for crate::input::IgnoreQueryParamsInResponseInput {
        1328  +
    type Unconstrained = crate::input::ignore_query_params_in_response_input::Builder;
 1749   1329   
}
 1750   1330   
 1751   1331   
/* StructureGenerator.kt:197 */
 1752   1332   
#[allow(missing_docs)] // documentation missing in model
 1753   1333   
/* RustType.kt:534 */
 1754   1334   
#[derive(
 1755   1335   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1756   1336   
)]
 1757         -
pub /* StructureGenerator.kt:201 */ struct MalformedListInput {
        1337  +
pub /* StructureGenerator.kt:201 */ struct OmitsNullSerializesEmptyStringInput {
 1758   1338   
    /* StructureGenerator.kt:231 */
 1759   1339   
    #[allow(missing_docs)] // documentation missing in model
 1760         -
    pub body_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        1340  +
    pub null_value: ::std::option::Option<::std::string::String>,
        1341  +
    /* StructureGenerator.kt:231 */
        1342  +
    #[allow(missing_docs)] // documentation missing in model
        1343  +
    pub empty_string: ::std::option::Option<::std::string::String>,
 1761   1344   
    /* StructureGenerator.kt:201 */
 1762   1345   
}
 1763   1346   
/* StructureGenerator.kt:135 */
 1764         -
impl MalformedListInput {
        1347  +
impl OmitsNullSerializesEmptyStringInput {
 1765   1348   
    /* StructureGenerator.kt:231 */
 1766   1349   
    #[allow(missing_docs)] // documentation missing in model
 1767   1350   
                           /* StructureGenerator.kt:166 */
 1768         -
    pub fn body_list(&self) -> ::std::option::Option<&[::std::string::String]> {
        1351  +
    pub fn null_value(&self) -> ::std::option::Option<&str> {
 1769   1352   
        /* StructureGenerator.kt:169 */
 1770         -
        self.body_list.as_deref()
        1353  +
        self.null_value.as_deref()
        1354  +
        /* StructureGenerator.kt:166 */
        1355  +
    }
        1356  +
    /* StructureGenerator.kt:231 */
        1357  +
    #[allow(missing_docs)] // documentation missing in model
        1358  +
                           /* StructureGenerator.kt:166 */
        1359  +
    pub fn empty_string(&self) -> ::std::option::Option<&str> {
        1360  +
        /* StructureGenerator.kt:169 */
        1361  +
        self.empty_string.as_deref()
 1771   1362   
        /* StructureGenerator.kt:166 */
 1772   1363   
    }
 1773   1364   
    /* StructureGenerator.kt:135 */
 1774   1365   
}
 1775   1366   
/* ServerCodegenVisitor.kt:356 */
 1776         -
impl MalformedListInput {
 1777         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedListInput`](crate::input::MalformedListInput).
        1367  +
impl OmitsNullSerializesEmptyStringInput {
        1368  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OmitsNullSerializesEmptyStringInput`](crate::input::OmitsNullSerializesEmptyStringInput).
 1778   1369   
    /* ServerBuilderGenerator.kt:295 */
 1779         -
    pub fn builder() -> crate::input::malformed_list_input::Builder {
        1370  +
    pub fn builder() -> crate::input::omits_null_serializes_empty_string_input::Builder {
 1780   1371   
        /* ServerBuilderGenerator.kt:296 */
 1781         -
        crate::input::malformed_list_input::Builder::default()
        1372  +
        crate::input::omits_null_serializes_empty_string_input::Builder::default()
 1782   1373   
        /* ServerBuilderGenerator.kt:295 */
 1783   1374   
    }
 1784   1375   
    /* ServerCodegenVisitor.kt:356 */
 1785   1376   
}
 1786   1377   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1787         -
impl crate::constrained::Constrained for crate::input::MalformedListInput {
 1788         -
    type Unconstrained = crate::input::malformed_list_input::Builder;
        1378  +
impl crate::constrained::Constrained for crate::input::OmitsNullSerializesEmptyStringInput {
        1379  +
    type Unconstrained = crate::input::omits_null_serializes_empty_string_input::Builder;
 1789   1380   
}
 1790   1381   
 1791   1382   
/* StructureGenerator.kt:197 */
 1792   1383   
#[allow(missing_docs)] // documentation missing in model
 1793   1384   
/* RustType.kt:534 */
 1794         -
#[derive(
 1795         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1796         -
)]
 1797         -
pub /* StructureGenerator.kt:201 */ struct MalformedBooleanInput {
        1385  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        1386  +
pub /* StructureGenerator.kt:201 */ struct OmitsSerializingEmptyListsInput {
 1798   1387   
    /* StructureGenerator.kt:231 */
 1799   1388   
    #[allow(missing_docs)] // documentation missing in model
 1800         -
    pub boolean_in_body: ::std::option::Option<bool>,
        1389  +
    pub query_string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
 1801   1390   
    /* StructureGenerator.kt:231 */
 1802   1391   
    #[allow(missing_docs)] // documentation missing in model
 1803         -
    pub boolean_in_path: bool,
        1392  +
    pub query_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
 1804   1393   
    /* StructureGenerator.kt:231 */
 1805   1394   
    #[allow(missing_docs)] // documentation missing in model
 1806         -
    pub boolean_in_query: ::std::option::Option<bool>,
        1395  +
    pub query_double_list: ::std::option::Option<::std::vec::Vec<f64>>,
 1807   1396   
    /* StructureGenerator.kt:231 */
 1808   1397   
    #[allow(missing_docs)] // documentation missing in model
 1809         -
    pub boolean_in_header: ::std::option::Option<bool>,
        1398  +
    pub query_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
        1399  +
    /* StructureGenerator.kt:231 */
        1400  +
    #[allow(missing_docs)] // documentation missing in model
        1401  +
    pub query_timestamp_list: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
        1402  +
    /* StructureGenerator.kt:231 */
        1403  +
    #[allow(missing_docs)] // documentation missing in model
        1404  +
    pub query_enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
        1405  +
    /* StructureGenerator.kt:231 */
        1406  +
    #[allow(missing_docs)] // documentation missing in model
        1407  +
    pub query_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
 1810   1408   
    /* StructureGenerator.kt:201 */
 1811   1409   
}
 1812   1410   
/* StructureGenerator.kt:135 */
 1813         -
impl MalformedBooleanInput {
        1411  +
impl OmitsSerializingEmptyListsInput {
 1814   1412   
    /* StructureGenerator.kt:231 */
 1815   1413   
    #[allow(missing_docs)] // documentation missing in model
 1816   1414   
                           /* StructureGenerator.kt:166 */
 1817         -
    pub fn boolean_in_body(&self) -> ::std::option::Option<bool> {
 1818         -
        /* StructureGenerator.kt:168 */
 1819         -
        self.boolean_in_body
        1415  +
    pub fn query_string_list(&self) -> ::std::option::Option<&[::std::string::String]> {
        1416  +
        /* StructureGenerator.kt:169 */
        1417  +
        self.query_string_list.as_deref()
 1820   1418   
        /* StructureGenerator.kt:166 */
 1821   1419   
    }
 1822   1420   
    /* StructureGenerator.kt:231 */
 1823   1421   
    #[allow(missing_docs)] // documentation missing in model
 1824   1422   
                           /* StructureGenerator.kt:166 */
 1825         -
    pub fn boolean_in_path(&self) -> bool {
 1826         -
        /* StructureGenerator.kt:168 */
 1827         -
        self.boolean_in_path
        1423  +
    pub fn query_integer_list(&self) -> ::std::option::Option<&[i32]> {
        1424  +
        /* StructureGenerator.kt:169 */
        1425  +
        self.query_integer_list.as_deref()
 1828   1426   
        /* StructureGenerator.kt:166 */
 1829   1427   
    }
 1830   1428   
    /* StructureGenerator.kt:231 */
 1831   1429   
    #[allow(missing_docs)] // documentation missing in model
 1832   1430   
                           /* StructureGenerator.kt:166 */
 1833         -
    pub fn boolean_in_query(&self) -> ::std::option::Option<bool> {
 1834         -
        /* StructureGenerator.kt:168 */
 1835         -
        self.boolean_in_query
        1431  +
    pub fn query_double_list(&self) -> ::std::option::Option<&[f64]> {
        1432  +
        /* StructureGenerator.kt:169 */
        1433  +
        self.query_double_list.as_deref()
 1836   1434   
        /* StructureGenerator.kt:166 */
 1837   1435   
    }
 1838   1436   
    /* StructureGenerator.kt:231 */
 1839   1437   
    #[allow(missing_docs)] // documentation missing in model
 1840   1438   
                           /* StructureGenerator.kt:166 */
 1841         -
    pub fn boolean_in_header(&self) -> ::std::option::Option<bool> {
 1842         -
        /* StructureGenerator.kt:168 */
 1843         -
        self.boolean_in_header
        1439  +
    pub fn query_boolean_list(&self) -> ::std::option::Option<&[bool]> {
        1440  +
        /* StructureGenerator.kt:169 */
        1441  +
        self.query_boolean_list.as_deref()
        1442  +
        /* StructureGenerator.kt:166 */
        1443  +
    }
        1444  +
    /* StructureGenerator.kt:231 */
        1445  +
    #[allow(missing_docs)] // documentation missing in model
        1446  +
                           /* StructureGenerator.kt:166 */
        1447  +
    pub fn query_timestamp_list(&self) -> ::std::option::Option<&[::aws_smithy_types::DateTime]> {
        1448  +
        /* StructureGenerator.kt:169 */
        1449  +
        self.query_timestamp_list.as_deref()
        1450  +
        /* StructureGenerator.kt:166 */
        1451  +
    }
        1452  +
    /* StructureGenerator.kt:231 */
        1453  +
    #[allow(missing_docs)] // documentation missing in model
        1454  +
                           /* StructureGenerator.kt:166 */
        1455  +
    pub fn query_enum_list(&self) -> ::std::option::Option<&[crate::model::FooEnum]> {
        1456  +
        /* StructureGenerator.kt:169 */
        1457  +
        self.query_enum_list.as_deref()
        1458  +
        /* StructureGenerator.kt:166 */
        1459  +
    }
        1460  +
    /* StructureGenerator.kt:231 */
        1461  +
    #[allow(missing_docs)] // documentation missing in model
        1462  +
                           /* StructureGenerator.kt:166 */
        1463  +
    pub fn query_integer_enum_list(&self) -> ::std::option::Option<&[i32]> {
        1464  +
        /* StructureGenerator.kt:169 */
        1465  +
        self.query_integer_enum_list.as_deref()
 1844   1466   
        /* StructureGenerator.kt:166 */
 1845   1467   
    }
 1846   1468   
    /* StructureGenerator.kt:135 */
 1847   1469   
}
 1848   1470   
/* ServerCodegenVisitor.kt:356 */
 1849         -
impl MalformedBooleanInput {
 1850         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedBooleanInput`](crate::input::MalformedBooleanInput).
        1471  +
impl OmitsSerializingEmptyListsInput {
        1472  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OmitsSerializingEmptyListsInput`](crate::input::OmitsSerializingEmptyListsInput).
 1851   1473   
    /* ServerBuilderGenerator.kt:295 */
 1852         -
    pub fn builder() -> crate::input::malformed_boolean_input::Builder {
        1474  +
    pub fn builder() -> crate::input::omits_serializing_empty_lists_input::Builder {
 1853   1475   
        /* ServerBuilderGenerator.kt:296 */
 1854         -
        crate::input::malformed_boolean_input::Builder::default()
        1476  +
        crate::input::omits_serializing_empty_lists_input::Builder::default()
 1855   1477   
        /* ServerBuilderGenerator.kt:295 */
 1856   1478   
    }
 1857   1479   
    /* ServerCodegenVisitor.kt:356 */
 1858   1480   
}
 1859   1481   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1860         -
impl crate::constrained::Constrained for crate::input::MalformedBooleanInput {
 1861         -
    type Unconstrained = crate::input::malformed_boolean_input::Builder;
        1482  +
impl crate::constrained::Constrained for crate::input::OmitsSerializingEmptyListsInput {
        1483  +
    type Unconstrained = crate::input::omits_serializing_empty_lists_input::Builder;
 1862   1484   
}
 1863   1485   
 1864   1486   
/* StructureGenerator.kt:197 */
 1865   1487   
#[allow(missing_docs)] // documentation missing in model
 1866   1488   
/* RustType.kt:534 */
 1867   1489   
#[derive(
 1868   1490   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1869   1491   
)]
 1870         -
pub /* StructureGenerator.kt:201 */ struct MalformedUnionInput {
        1492  +
pub /* StructureGenerator.kt:201 */ struct QueryIdempotencyTokenAutoFillInput {
 1871   1493   
    /* StructureGenerator.kt:231 */
 1872   1494   
    #[allow(missing_docs)] // documentation missing in model
 1873         -
    pub union: ::std::option::Option<crate::model::SimpleUnion>,
        1495  +
    pub token: ::std::option::Option<::std::string::String>,
 1874   1496   
    /* StructureGenerator.kt:201 */
 1875   1497   
}
 1876   1498   
/* StructureGenerator.kt:135 */
 1877         -
impl MalformedUnionInput {
        1499  +
impl QueryIdempotencyTokenAutoFillInput {
 1878   1500   
    /* StructureGenerator.kt:231 */
 1879   1501   
    #[allow(missing_docs)] // documentation missing in model
 1880   1502   
                           /* StructureGenerator.kt:166 */
 1881         -
    pub fn union(&self) -> ::std::option::Option<&crate::model::SimpleUnion> {
 1882         -
        /* StructureGenerator.kt:170 */
 1883         -
        self.union.as_ref()
        1503  +
    pub fn token(&self) -> ::std::option::Option<&str> {
        1504  +
        /* StructureGenerator.kt:169 */
        1505  +
        self.token.as_deref()
 1884   1506   
        /* StructureGenerator.kt:166 */
 1885   1507   
    }
 1886   1508   
    /* StructureGenerator.kt:135 */
 1887   1509   
}
 1888   1510   
/* ServerCodegenVisitor.kt:356 */
 1889         -
impl MalformedUnionInput {
 1890         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedUnionInput`](crate::input::MalformedUnionInput).
        1511  +
impl QueryIdempotencyTokenAutoFillInput {
        1512  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`QueryIdempotencyTokenAutoFillInput`](crate::input::QueryIdempotencyTokenAutoFillInput).
 1891   1513   
    /* ServerBuilderGenerator.kt:295 */
 1892         -
    pub fn builder() -> crate::input::malformed_union_input::Builder {
        1514  +
    pub fn builder() -> crate::input::query_idempotency_token_auto_fill_input::Builder {
 1893   1515   
        /* ServerBuilderGenerator.kt:296 */
 1894         -
        crate::input::malformed_union_input::Builder::default()
        1516  +
        crate::input::query_idempotency_token_auto_fill_input::Builder::default()
 1895   1517   
        /* ServerBuilderGenerator.kt:295 */
 1896   1518   
    }
 1897   1519   
    /* ServerCodegenVisitor.kt:356 */
 1898   1520   
}
 1899   1521   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1900         -
impl crate::constrained::Constrained for crate::input::MalformedUnionInput {
 1901         -
    type Unconstrained = crate::input::malformed_union_input::Builder;
        1522  +
impl crate::constrained::Constrained for crate::input::QueryIdempotencyTokenAutoFillInput {
        1523  +
    type Unconstrained = crate::input::query_idempotency_token_auto_fill_input::Builder;
 1902   1524   
}
 1903   1525   
 1904   1526   
/* StructureGenerator.kt:197 */
 1905   1527   
#[allow(missing_docs)] // documentation missing in model
 1906   1528   
/* RustType.kt:534 */
 1907         -
#[derive(
 1908         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 1909         -
)]
 1910         -
pub /* StructureGenerator.kt:201 */ struct MalformedIntegerInput {
 1911         -
    /* StructureGenerator.kt:231 */
 1912         -
    #[allow(missing_docs)] // documentation missing in model
 1913         -
    pub integer_in_body: ::std::option::Option<i32>,
 1914         -
    /* StructureGenerator.kt:231 */
 1915         -
    #[allow(missing_docs)] // documentation missing in model
 1916         -
    pub integer_in_path: i32,
        1529  +
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        1530  +
pub /* StructureGenerator.kt:201 */ struct QueryPrecedenceInput {
 1917   1531   
    /* StructureGenerator.kt:231 */
 1918   1532   
    #[allow(missing_docs)] // documentation missing in model
 1919         -
    pub integer_in_query: ::std::option::Option<i32>,
        1533  +
    pub foo: ::std::option::Option<::std::string::String>,
 1920   1534   
    /* StructureGenerator.kt:231 */
 1921   1535   
    #[allow(missing_docs)] // documentation missing in model
 1922         -
    pub integer_in_header: ::std::option::Option<i32>,
        1536  +
    pub baz: ::std::option::Option<
        1537  +
        ::std::collections::HashMap<::std::string::String, ::std::string::String>,
        1538  +
    >,
 1923   1539   
    /* StructureGenerator.kt:201 */
 1924   1540   
}
 1925   1541   
/* StructureGenerator.kt:135 */
 1926         -
impl MalformedIntegerInput {
 1927         -
    /* StructureGenerator.kt:231 */
 1928         -
    #[allow(missing_docs)] // documentation missing in model
 1929         -
                           /* StructureGenerator.kt:166 */
 1930         -
    pub fn integer_in_body(&self) -> ::std::option::Option<i32> {
 1931         -
        /* StructureGenerator.kt:168 */
 1932         -
        self.integer_in_body
 1933         -
        /* StructureGenerator.kt:166 */
 1934         -
    }
 1935         -
    /* StructureGenerator.kt:231 */
 1936         -
    #[allow(missing_docs)] // documentation missing in model
 1937         -
                           /* StructureGenerator.kt:166 */
 1938         -
    pub fn integer_in_path(&self) -> i32 {
 1939         -
        /* StructureGenerator.kt:168 */
 1940         -
        self.integer_in_path
 1941         -
        /* StructureGenerator.kt:166 */
 1942         -
    }
        1542  +
impl QueryPrecedenceInput {
 1943   1543   
    /* StructureGenerator.kt:231 */
 1944   1544   
    #[allow(missing_docs)] // documentation missing in model
 1945   1545   
                           /* StructureGenerator.kt:166 */
 1946         -
    pub fn integer_in_query(&self) -> ::std::option::Option<i32> {
 1947         -
        /* StructureGenerator.kt:168 */
 1948         -
        self.integer_in_query
        1546  +
    pub fn foo(&self) -> ::std::option::Option<&str> {
        1547  +
        /* StructureGenerator.kt:169 */
        1548  +
        self.foo.as_deref()
 1949   1549   
        /* StructureGenerator.kt:166 */
 1950   1550   
    }
 1951   1551   
    /* StructureGenerator.kt:231 */
 1952   1552   
    #[allow(missing_docs)] // documentation missing in model
 1953   1553   
                           /* StructureGenerator.kt:166 */
 1954         -
    pub fn integer_in_header(&self) -> ::std::option::Option<i32> {
 1955         -
        /* StructureGenerator.kt:168 */
 1956         -
        self.integer_in_header
        1554  +
    pub fn baz(
        1555  +
        &self,
        1556  +
    ) -> ::std::option::Option<
        1557  +
        &::std::collections::HashMap<::std::string::String, ::std::string::String>,
        1558  +
    > {
        1559  +
        /* StructureGenerator.kt:170 */
        1560  +
        self.baz.as_ref()
 1957   1561   
        /* StructureGenerator.kt:166 */
 1958   1562   
    }
 1959   1563   
    /* StructureGenerator.kt:135 */
 1960   1564   
}
 1961   1565   
/* ServerCodegenVisitor.kt:356 */
 1962         -
impl MalformedIntegerInput {
 1963         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedIntegerInput`](crate::input::MalformedIntegerInput).
        1566  +
impl QueryPrecedenceInput {
        1567  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`QueryPrecedenceInput`](crate::input::QueryPrecedenceInput).
 1964   1568   
    /* ServerBuilderGenerator.kt:295 */
 1965         -
    pub fn builder() -> crate::input::malformed_integer_input::Builder {
        1569  +
    pub fn builder() -> crate::input::query_precedence_input::Builder {
 1966   1570   
        /* ServerBuilderGenerator.kt:296 */
 1967         -
        crate::input::malformed_integer_input::Builder::default()
        1571  +
        crate::input::query_precedence_input::Builder::default()
 1968   1572   
        /* ServerBuilderGenerator.kt:295 */
 1969   1573   
    }
 1970   1574   
    /* ServerCodegenVisitor.kt:356 */
 1971   1575   
}
 1972   1576   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 1973         -
impl crate::constrained::Constrained for crate::input::MalformedIntegerInput {
 1974         -
    type Unconstrained = crate::input::malformed_integer_input::Builder;
        1577  +
impl crate::constrained::Constrained for crate::input::QueryPrecedenceInput {
        1578  +
    type Unconstrained = crate::input::query_precedence_input::Builder;
 1975   1579   
}
 1976   1580   
 1977   1581   
/* StructureGenerator.kt:197 */
 1978   1582   
#[allow(missing_docs)] // documentation missing in model
 1979   1583   
/* RustType.kt:534 */
 1980         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 1981         -
pub /* StructureGenerator.kt:201 */ struct MalformedRequestBodyInput {
 1982         -
    /* StructureGenerator.kt:231 */
 1983         -
    #[allow(missing_docs)] // documentation missing in model
 1984         -
    pub int: ::std::option::Option<i32>,
        1584  +
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        1585  +
pub /* StructureGenerator.kt:201 */ struct HttpQueryParamsOnlyOperationInput {
 1985   1586   
    /* StructureGenerator.kt:231 */
 1986   1587   
    #[allow(missing_docs)] // documentation missing in model
 1987         -
    pub float: ::std::option::Option<f32>,
        1588  +
    pub query_map: ::std::option::Option<
        1589  +
        ::std::collections::HashMap<::std::string::String, ::std::string::String>,
        1590  +
    >,
 1988   1591   
    /* StructureGenerator.kt:201 */
 1989   1592   
}
 1990   1593   
/* StructureGenerator.kt:135 */
 1991         -
impl MalformedRequestBodyInput {
        1594  +
impl HttpQueryParamsOnlyOperationInput {
 1992   1595   
    /* StructureGenerator.kt:231 */
 1993   1596   
    #[allow(missing_docs)] // documentation missing in model
 1994   1597   
                           /* StructureGenerator.kt:166 */
 1995         -
    pub fn int(&self) -> ::std::option::Option<i32> {
 1996         -
        /* StructureGenerator.kt:168 */
 1997         -
        self.int
 1998         -
        /* StructureGenerator.kt:166 */
 1999         -
    }
 2000         -
    /* StructureGenerator.kt:231 */
        1598  +
    pub fn query_map(
        1599  +
        &self,
        1600  +
    ) -> ::std::option::Option<
        1601  +
        &::std::collections::HashMap<::std::string::String, ::std::string::String>,
        1602  +
    > {
        1603  +
        /* StructureGenerator.kt:170 */
        1604  +
        self.query_map.as_ref()
        1605  +
        /* StructureGenerator.kt:166 */
        1606  +
    }
        1607  +
    /* StructureGenerator.kt:135 */
        1608  +
}
        1609  +
/* ServerCodegenVisitor.kt:356 */
        1610  +
impl HttpQueryParamsOnlyOperationInput {
        1611  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpQueryParamsOnlyOperationInput`](crate::input::HttpQueryParamsOnlyOperationInput).
        1612  +
    /* ServerBuilderGenerator.kt:295 */
        1613  +
    pub fn builder() -> crate::input::http_query_params_only_operation_input::Builder {
        1614  +
        /* ServerBuilderGenerator.kt:296 */
        1615  +
        crate::input::http_query_params_only_operation_input::Builder::default()
        1616  +
        /* ServerBuilderGenerator.kt:295 */
        1617  +
    }
        1618  +
    /* ServerCodegenVisitor.kt:356 */
        1619  +
}
        1620  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        1621  +
impl crate::constrained::Constrained for crate::input::HttpQueryParamsOnlyOperationInput {
        1622  +
    type Unconstrained = crate::input::http_query_params_only_operation_input::Builder;
        1623  +
}
        1624  +
        1625  +
/* StructureGenerator.kt:197 */
        1626  +
#[allow(missing_docs)] // documentation missing in model
        1627  +
/* RustType.kt:534 */
        1628  +
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        1629  +
pub /* StructureGenerator.kt:201 */ struct QueryParamsAsStringListMapInput {
        1630  +
    /* StructureGenerator.kt:231 */
        1631  +
    #[allow(missing_docs)] // documentation missing in model
        1632  +
    pub qux: ::std::option::Option<::std::string::String>,
        1633  +
    /* StructureGenerator.kt:231 */
        1634  +
    #[allow(missing_docs)] // documentation missing in model
        1635  +
    pub foo: ::std::option::Option<
        1636  +
        ::std::collections::HashMap<::std::string::String, ::std::vec::Vec<::std::string::String>>,
        1637  +
    >,
        1638  +
    /* StructureGenerator.kt:201 */
        1639  +
}
        1640  +
/* StructureGenerator.kt:135 */
        1641  +
impl QueryParamsAsStringListMapInput {
        1642  +
    /* StructureGenerator.kt:231 */
 2001   1643   
    #[allow(missing_docs)] // documentation missing in model
 2002   1644   
                           /* StructureGenerator.kt:166 */
 2003         -
    pub fn float(&self) -> ::std::option::Option<f32> {
 2004         -
        /* StructureGenerator.kt:168 */
 2005         -
        self.float
        1645  +
    pub fn qux(&self) -> ::std::option::Option<&str> {
        1646  +
        /* StructureGenerator.kt:169 */
        1647  +
        self.qux.as_deref()
        1648  +
        /* StructureGenerator.kt:166 */
        1649  +
    }
        1650  +
    /* StructureGenerator.kt:231 */
        1651  +
    #[allow(missing_docs)] // documentation missing in model
        1652  +
                           /* StructureGenerator.kt:166 */
        1653  +
    pub fn foo(
        1654  +
        &self,
        1655  +
    ) -> ::std::option::Option<
        1656  +
        &::std::collections::HashMap<::std::string::String, ::std::vec::Vec<::std::string::String>>,
        1657  +
    > {
        1658  +
        /* StructureGenerator.kt:170 */
        1659  +
        self.foo.as_ref()
 2006   1660   
        /* StructureGenerator.kt:166 */
 2007   1661   
    }
 2008   1662   
    /* StructureGenerator.kt:135 */
 2009   1663   
}
 2010   1664   
/* ServerCodegenVisitor.kt:356 */
 2011         -
impl MalformedRequestBodyInput {
 2012         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedRequestBodyInput`](crate::input::MalformedRequestBodyInput).
        1665  +
impl QueryParamsAsStringListMapInput {
        1666  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`QueryParamsAsStringListMapInput`](crate::input::QueryParamsAsStringListMapInput).
 2013   1667   
    /* ServerBuilderGenerator.kt:295 */
 2014         -
    pub fn builder() -> crate::input::malformed_request_body_input::Builder {
        1668  +
    pub fn builder() -> crate::input::query_params_as_string_list_map_input::Builder {
 2015   1669   
        /* ServerBuilderGenerator.kt:296 */
 2016         -
        crate::input::malformed_request_body_input::Builder::default()
        1670  +
        crate::input::query_params_as_string_list_map_input::Builder::default()
 2017   1671   
        /* ServerBuilderGenerator.kt:295 */
 2018   1672   
    }
 2019   1673   
    /* ServerCodegenVisitor.kt:356 */
 2020   1674   
}
 2021   1675   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2022         -
impl crate::constrained::Constrained for crate::input::MalformedRequestBodyInput {
 2023         -
    type Unconstrained = crate::input::malformed_request_body_input::Builder;
        1676  +
impl crate::constrained::Constrained for crate::input::QueryParamsAsStringListMapInput {
        1677  +
    type Unconstrained = crate::input::query_params_as_string_list_map_input::Builder;
 2024   1678   
}
 2025   1679   
 2026   1680   
/* StructureGenerator.kt:197 */
 2027   1681   
#[allow(missing_docs)] // documentation missing in model
 2028   1682   
/* RustType.kt:534 */
 2029         -
#[derive(
 2030         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 2031         -
)]
 2032         -
pub /* StructureGenerator.kt:201 */ struct HttpChecksumRequiredInput {
        1683  +
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        1684  +
pub /* StructureGenerator.kt:201 */ struct HttpPrefixHeadersInput {
 2033   1685   
    /* StructureGenerator.kt:231 */
 2034   1686   
    #[allow(missing_docs)] // documentation missing in model
 2035   1687   
    pub foo: ::std::option::Option<::std::string::String>,
        1688  +
    /* StructureGenerator.kt:231 */
        1689  +
    #[allow(missing_docs)] // documentation missing in model
        1690  +
    pub foo_map: ::std::option::Option<
        1691  +
        ::std::collections::HashMap<::std::string::String, ::std::string::String>,
        1692  +
    >,
 2036   1693   
    /* StructureGenerator.kt:201 */
 2037   1694   
}
 2038   1695   
/* StructureGenerator.kt:135 */
 2039         -
impl HttpChecksumRequiredInput {
        1696  +
impl HttpPrefixHeadersInput {
 2040   1697   
    /* StructureGenerator.kt:231 */
 2041   1698   
    #[allow(missing_docs)] // documentation missing in model
 2042   1699   
                           /* StructureGenerator.kt:166 */
 2043   1700   
    pub fn foo(&self) -> ::std::option::Option<&str> {
 2044   1701   
        /* StructureGenerator.kt:169 */
 2045   1702   
        self.foo.as_deref()
 2046   1703   
        /* StructureGenerator.kt:166 */
 2047   1704   
    }
        1705  +
    /* StructureGenerator.kt:231 */
        1706  +
    #[allow(missing_docs)] // documentation missing in model
        1707  +
                           /* StructureGenerator.kt:166 */
        1708  +
    pub fn foo_map(
        1709  +
        &self,
        1710  +
    ) -> ::std::option::Option<
        1711  +
        &::std::collections::HashMap<::std::string::String, ::std::string::String>,
        1712  +
    > {
        1713  +
        /* StructureGenerator.kt:170 */
        1714  +
        self.foo_map.as_ref()
        1715  +
        /* StructureGenerator.kt:166 */
        1716  +
    }
 2048   1717   
    /* StructureGenerator.kt:135 */
 2049   1718   
}
 2050   1719   
/* ServerCodegenVisitor.kt:356 */
 2051         -
impl HttpChecksumRequiredInput {
 2052         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpChecksumRequiredInput`](crate::input::HttpChecksumRequiredInput).
        1720  +
impl HttpPrefixHeadersInput {
        1721  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPrefixHeadersInput`](crate::input::HttpPrefixHeadersInput).
 2053   1722   
    /* ServerBuilderGenerator.kt:295 */
 2054         -
    pub fn builder() -> crate::input::http_checksum_required_input::Builder {
        1723  +
    pub fn builder() -> crate::input::http_prefix_headers_input::Builder {
 2055   1724   
        /* ServerBuilderGenerator.kt:296 */
 2056         -
        crate::input::http_checksum_required_input::Builder::default()
        1725  +
        crate::input::http_prefix_headers_input::Builder::default()
 2057   1726   
        /* ServerBuilderGenerator.kt:295 */
 2058   1727   
    }
 2059   1728   
    /* ServerCodegenVisitor.kt:356 */
 2060   1729   
}
 2061   1730   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2062         -
impl crate::constrained::Constrained for crate::input::HttpChecksumRequiredInput {
 2063         -
    type Unconstrained = crate::input::http_checksum_required_input::Builder;
        1731  +
impl crate::constrained::Constrained for crate::input::HttpPrefixHeadersInput {
        1732  +
    type Unconstrained = crate::input::http_prefix_headers_input::Builder;
 2064   1733   
}
 2065   1734   
 2066   1735   
/* StructureGenerator.kt:197 */
 2067   1736   
#[allow(missing_docs)] // documentation missing in model
 2068   1737   
/* RustType.kt:534 */
 2069   1738   
#[derive(
 2070   1739   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 2071   1740   
)]
 2072         -
pub /* StructureGenerator.kt:201 */ struct HostWithPathOperationInput {/* StructureGenerator.kt:201 */}
        1741  +
pub /* StructureGenerator.kt:201 */ struct HttpPrefixHeadersInResponseInput {/* StructureGenerator.kt:201 */}
 2073   1742   
/* ServerCodegenVisitor.kt:356 */
 2074         -
impl HostWithPathOperationInput {
 2075         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HostWithPathOperationInput`](crate::input::HostWithPathOperationInput).
        1743  +
impl HttpPrefixHeadersInResponseInput {
        1744  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPrefixHeadersInResponseInput`](crate::input::HttpPrefixHeadersInResponseInput).
 2076   1745   
    /* ServerBuilderGenerator.kt:295 */
 2077         -
    pub fn builder() -> crate::input::host_with_path_operation_input::Builder {
        1746  +
    pub fn builder() -> crate::input::http_prefix_headers_in_response_input::Builder {
 2078   1747   
        /* ServerBuilderGenerator.kt:296 */
 2079         -
        crate::input::host_with_path_operation_input::Builder::default()
        1748  +
        crate::input::http_prefix_headers_in_response_input::Builder::default()
 2080   1749   
        /* ServerBuilderGenerator.kt:295 */
 2081   1750   
    }
 2082   1751   
    /* ServerCodegenVisitor.kt:356 */
 2083   1752   
}
 2084   1753   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2085         -
impl crate::constrained::Constrained for crate::input::HostWithPathOperationInput {
 2086         -
    type Unconstrained = crate::input::host_with_path_operation_input::Builder;
        1754  +
impl crate::constrained::Constrained for crate::input::HttpPrefixHeadersInResponseInput {
        1755  +
    type Unconstrained = crate::input::http_prefix_headers_in_response_input::Builder;
 2087   1756   
}
 2088   1757   
 2089   1758   
/* StructureGenerator.kt:197 */
 2090   1759   
#[allow(missing_docs)] // documentation missing in model
 2091   1760   
/* RustType.kt:534 */
 2092         -
#[derive(
 2093         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 2094         -
)]
 2095         -
pub /* StructureGenerator.kt:201 */ struct EndpointWithHostLabelOperationInput {
        1761  +
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        1762  +
pub /* StructureGenerator.kt:201 */ struct HttpEmptyPrefixHeadersInput {
 2096   1763   
    /* StructureGenerator.kt:231 */
 2097   1764   
    #[allow(missing_docs)] // documentation missing in model
 2098         -
    pub label: ::std::string::String,
        1765  +
    pub prefix_headers: ::std::option::Option<
        1766  +
        ::std::collections::HashMap<::std::string::String, ::std::string::String>,
        1767  +
    >,
        1768  +
    /* StructureGenerator.kt:231 */
        1769  +
    #[allow(missing_docs)] // documentation missing in model
        1770  +
    pub specific_header: ::std::option::Option<::std::string::String>,
 2099   1771   
    /* StructureGenerator.kt:201 */
 2100   1772   
}
 2101   1773   
/* StructureGenerator.kt:135 */
 2102         -
impl EndpointWithHostLabelOperationInput {
        1774  +
impl HttpEmptyPrefixHeadersInput {
 2103   1775   
    /* StructureGenerator.kt:231 */
 2104   1776   
    #[allow(missing_docs)] // documentation missing in model
 2105   1777   
                           /* StructureGenerator.kt:166 */
 2106         -
    pub fn label(&self) -> &str {
 2107         -
        /* StructureGenerator.kt:171 */
 2108         -
        use std::ops::Deref;
 2109         -
        self.label.deref()
        1778  +
    pub fn prefix_headers(
        1779  +
        &self,
        1780  +
    ) -> ::std::option::Option<
        1781  +
        &::std::collections::HashMap<::std::string::String, ::std::string::String>,
        1782  +
    > {
        1783  +
        /* StructureGenerator.kt:170 */
        1784  +
        self.prefix_headers.as_ref()
        1785  +
        /* StructureGenerator.kt:166 */
        1786  +
    }
        1787  +
    /* StructureGenerator.kt:231 */
        1788  +
    #[allow(missing_docs)] // documentation missing in model
        1789  +
                           /* StructureGenerator.kt:166 */
        1790  +
    pub fn specific_header(&self) -> ::std::option::Option<&str> {
        1791  +
        /* StructureGenerator.kt:169 */
        1792  +
        self.specific_header.as_deref()
 2110   1793   
        /* StructureGenerator.kt:166 */
 2111   1794   
    }
 2112   1795   
    /* StructureGenerator.kt:135 */
 2113   1796   
}
 2114   1797   
/* ServerCodegenVisitor.kt:356 */
 2115         -
impl EndpointWithHostLabelOperationInput {
 2116         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`EndpointWithHostLabelOperationInput`](crate::input::EndpointWithHostLabelOperationInput).
        1798  +
impl HttpEmptyPrefixHeadersInput {
        1799  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpEmptyPrefixHeadersInput`](crate::input::HttpEmptyPrefixHeadersInput).
 2117   1800   
    /* ServerBuilderGenerator.kt:295 */
 2118         -
    pub fn builder() -> crate::input::endpoint_with_host_label_operation_input::Builder {
        1801  +
    pub fn builder() -> crate::input::http_empty_prefix_headers_input::Builder {
 2119   1802   
        /* ServerBuilderGenerator.kt:296 */
 2120         -
        crate::input::endpoint_with_host_label_operation_input::Builder::default()
        1803  +
        crate::input::http_empty_prefix_headers_input::Builder::default()
 2121   1804   
        /* ServerBuilderGenerator.kt:295 */
 2122   1805   
    }
 2123   1806   
    /* ServerCodegenVisitor.kt:356 */
 2124   1807   
}
 2125   1808   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2126         -
impl crate::constrained::Constrained for crate::input::EndpointWithHostLabelOperationInput {
 2127         -
    type Unconstrained = crate::input::endpoint_with_host_label_operation_input::Builder;
        1809  +
impl crate::constrained::Constrained for crate::input::HttpEmptyPrefixHeadersInput {
        1810  +
    type Unconstrained = crate::input::http_empty_prefix_headers_input::Builder;
 2128   1811   
}
 2129   1812   
 2130   1813   
/* StructureGenerator.kt:197 */
 2131   1814   
#[allow(missing_docs)] // documentation missing in model
 2132   1815   
/* RustType.kt:534 */
 2133   1816   
#[derive(
 2134   1817   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 2135   1818   
)]
 2136         -
pub /* StructureGenerator.kt:201 */ struct EndpointOperationInput {/* StructureGenerator.kt:201 */}
        1819  +
pub /* StructureGenerator.kt:201 */ struct HttpPayloadTraitsInput {
        1820  +
    /* StructureGenerator.kt:231 */
        1821  +
    #[allow(missing_docs)] // documentation missing in model
        1822  +
    pub foo: ::std::option::Option<::std::string::String>,
        1823  +
    /* StructureGenerator.kt:231 */
        1824  +
    #[allow(missing_docs)] // documentation missing in model
        1825  +
    pub blob: ::std::option::Option<::aws_smithy_types::Blob>,
        1826  +
    /* StructureGenerator.kt:201 */
        1827  +
}
        1828  +
/* StructureGenerator.kt:135 */
        1829  +
impl HttpPayloadTraitsInput {
        1830  +
    /* StructureGenerator.kt:231 */
        1831  +
    #[allow(missing_docs)] // documentation missing in model
        1832  +
                           /* StructureGenerator.kt:166 */
        1833  +
    pub fn foo(&self) -> ::std::option::Option<&str> {
        1834  +
        /* StructureGenerator.kt:169 */
        1835  +
        self.foo.as_deref()
        1836  +
        /* StructureGenerator.kt:166 */
        1837  +
    }
        1838  +
    /* StructureGenerator.kt:231 */
        1839  +
    #[allow(missing_docs)] // documentation missing in model
        1840  +
                           /* StructureGenerator.kt:166 */
        1841  +
    pub fn blob(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
        1842  +
        /* StructureGenerator.kt:170 */
        1843  +
        self.blob.as_ref()
        1844  +
        /* StructureGenerator.kt:166 */
        1845  +
    }
        1846  +
    /* StructureGenerator.kt:135 */
        1847  +
}
 2137   1848   
/* ServerCodegenVisitor.kt:356 */
 2138         -
impl EndpointOperationInput {
 2139         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`EndpointOperationInput`](crate::input::EndpointOperationInput).
        1849  +
impl HttpPayloadTraitsInput {
        1850  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPayloadTraitsInput`](crate::input::HttpPayloadTraitsInput).
 2140   1851   
    /* ServerBuilderGenerator.kt:295 */
 2141         -
    pub fn builder() -> crate::input::endpoint_operation_input::Builder {
        1852  +
    pub fn builder() -> crate::input::http_payload_traits_input::Builder {
 2142   1853   
        /* ServerBuilderGenerator.kt:296 */
 2143         -
        crate::input::endpoint_operation_input::Builder::default()
        1854  +
        crate::input::http_payload_traits_input::Builder::default()
 2144   1855   
        /* ServerBuilderGenerator.kt:295 */
 2145   1856   
    }
 2146   1857   
    /* ServerCodegenVisitor.kt:356 */
 2147   1858   
}
 2148   1859   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2149         -
impl crate::constrained::Constrained for crate::input::EndpointOperationInput {
 2150         -
    type Unconstrained = crate::input::endpoint_operation_input::Builder;
        1860  +
impl crate::constrained::Constrained for crate::input::HttpPayloadTraitsInput {
        1861  +
    type Unconstrained = crate::input::http_payload_traits_input::Builder;
 2151   1862   
}
 2152   1863   
 2153   1864   
/* StructureGenerator.kt:197 */
 2154   1865   
#[allow(missing_docs)] // documentation missing in model
 2155   1866   
/* RustType.kt:534 */
 2156   1867   
#[derive(
 2157   1868   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 2158   1869   
)]
 2159         -
pub /* StructureGenerator.kt:201 */ struct PostUnionWithJsonNameInput {
        1870  +
pub /* StructureGenerator.kt:201 */ struct HttpPayloadTraitsWithMediaTypeInput {
 2160   1871   
    /* StructureGenerator.kt:231 */
 2161   1872   
    #[allow(missing_docs)] // documentation missing in model
 2162         -
    pub value: ::std::option::Option<crate::model::UnionWithJsonName>,
        1873  +
    pub foo: ::std::option::Option<::std::string::String>,
        1874  +
    /* StructureGenerator.kt:231 */
        1875  +
    #[allow(missing_docs)] // documentation missing in model
        1876  +
    pub blob: ::std::option::Option<::aws_smithy_types::Blob>,
 2163   1877   
    /* StructureGenerator.kt:201 */
 2164   1878   
}
 2165   1879   
/* StructureGenerator.kt:135 */
 2166         -
impl PostUnionWithJsonNameInput {
        1880  +
impl HttpPayloadTraitsWithMediaTypeInput {
 2167   1881   
    /* StructureGenerator.kt:231 */
 2168   1882   
    #[allow(missing_docs)] // documentation missing in model
 2169   1883   
                           /* StructureGenerator.kt:166 */
 2170         -
    pub fn value(&self) -> ::std::option::Option<&crate::model::UnionWithJsonName> {
        1884  +
    pub fn foo(&self) -> ::std::option::Option<&str> {
        1885  +
        /* StructureGenerator.kt:169 */
        1886  +
        self.foo.as_deref()
        1887  +
        /* StructureGenerator.kt:166 */
        1888  +
    }
        1889  +
    /* StructureGenerator.kt:231 */
        1890  +
    #[allow(missing_docs)] // documentation missing in model
        1891  +
                           /* StructureGenerator.kt:166 */
        1892  +
    pub fn blob(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
 2171   1893   
        /* StructureGenerator.kt:170 */
 2172         -
        self.value.as_ref()
        1894  +
        self.blob.as_ref()
 2173   1895   
        /* StructureGenerator.kt:166 */
 2174   1896   
    }
 2175   1897   
    /* StructureGenerator.kt:135 */
 2176   1898   
}
 2177   1899   
/* ServerCodegenVisitor.kt:356 */
 2178         -
impl PostUnionWithJsonNameInput {
 2179         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`PostUnionWithJsonNameInput`](crate::input::PostUnionWithJsonNameInput).
        1900  +
impl HttpPayloadTraitsWithMediaTypeInput {
        1901  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPayloadTraitsWithMediaTypeInput`](crate::input::HttpPayloadTraitsWithMediaTypeInput).
 2180   1902   
    /* ServerBuilderGenerator.kt:295 */
 2181         -
    pub fn builder() -> crate::input::post_union_with_json_name_input::Builder {
        1903  +
    pub fn builder() -> crate::input::http_payload_traits_with_media_type_input::Builder {
 2182   1904   
        /* ServerBuilderGenerator.kt:296 */
 2183         -
        crate::input::post_union_with_json_name_input::Builder::default()
        1905  +
        crate::input::http_payload_traits_with_media_type_input::Builder::default()
 2184   1906   
        /* ServerBuilderGenerator.kt:295 */
 2185   1907   
    }
 2186   1908   
    /* ServerCodegenVisitor.kt:356 */
 2187   1909   
}
 2188   1910   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2189         -
impl crate::constrained::Constrained for crate::input::PostUnionWithJsonNameInput {
 2190         -
    type Unconstrained = crate::input::post_union_with_json_name_input::Builder;
        1911  +
impl crate::constrained::Constrained for crate::input::HttpPayloadTraitsWithMediaTypeInput {
        1912  +
    type Unconstrained = crate::input::http_payload_traits_with_media_type_input::Builder;
 2191   1913   
}
 2192   1914   
 2193   1915   
/* StructureGenerator.kt:197 */
 2194   1916   
#[allow(missing_docs)] // documentation missing in model
 2195   1917   
/* RustType.kt:534 */
 2196   1918   
#[derive(
 2197   1919   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 2198   1920   
)]
 2199         -
pub /* StructureGenerator.kt:201 */ struct PostPlayerActionInput {
        1921  +
pub /* StructureGenerator.kt:201 */ struct HttpPayloadWithStructureInput {
 2200   1922   
    /* StructureGenerator.kt:231 */
 2201   1923   
    #[allow(missing_docs)] // documentation missing in model
 2202         -
    pub action: ::std::option::Option<crate::model::PlayerAction>,
        1924  +
    pub nested: ::std::option::Option<crate::model::NestedPayload>,
 2203   1925   
    /* StructureGenerator.kt:201 */
 2204   1926   
}
 2205   1927   
/* StructureGenerator.kt:135 */
 2206         -
impl PostPlayerActionInput {
        1928  +
impl HttpPayloadWithStructureInput {
 2207   1929   
    /* StructureGenerator.kt:231 */
 2208   1930   
    #[allow(missing_docs)] // documentation missing in model
 2209   1931   
                           /* StructureGenerator.kt:166 */
 2210         -
    pub fn action(&self) -> ::std::option::Option<&crate::model::PlayerAction> {
        1932  +
    pub fn nested(&self) -> ::std::option::Option<&crate::model::NestedPayload> {
 2211   1933   
        /* StructureGenerator.kt:170 */
 2212         -
        self.action.as_ref()
        1934  +
        self.nested.as_ref()
 2213   1935   
        /* StructureGenerator.kt:166 */
 2214   1936   
    }
 2215   1937   
    /* StructureGenerator.kt:135 */
 2216   1938   
}
 2217   1939   
/* ServerCodegenVisitor.kt:356 */
 2218         -
impl PostPlayerActionInput {
 2219         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`PostPlayerActionInput`](crate::input::PostPlayerActionInput).
        1940  +
impl HttpPayloadWithStructureInput {
        1941  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPayloadWithStructureInput`](crate::input::HttpPayloadWithStructureInput).
 2220   1942   
    /* ServerBuilderGenerator.kt:295 */
 2221         -
    pub fn builder() -> crate::input::post_player_action_input::Builder {
        1943  +
    pub fn builder() -> crate::input::http_payload_with_structure_input::Builder {
 2222   1944   
        /* ServerBuilderGenerator.kt:296 */
 2223         -
        crate::input::post_player_action_input::Builder::default()
        1945  +
        crate::input::http_payload_with_structure_input::Builder::default()
 2224   1946   
        /* ServerBuilderGenerator.kt:295 */
 2225   1947   
    }
 2226   1948   
    /* ServerCodegenVisitor.kt:356 */
 2227   1949   
}
 2228   1950   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2229         -
impl crate::constrained::Constrained for crate::input::PostPlayerActionInput {
 2230         -
    type Unconstrained = crate::input::post_player_action_input::Builder;
        1951  +
impl crate::constrained::Constrained for crate::input::HttpPayloadWithStructureInput {
        1952  +
    type Unconstrained = crate::input::http_payload_with_structure_input::Builder;
 2231   1953   
}
 2232   1954   
 2233         -
/// /* StructureGenerator.kt:197 */A shared structure that contains a single union member.
        1955  +
/* StructureGenerator.kt:197 */
        1956  +
#[allow(missing_docs)] // documentation missing in model
 2234   1957   
/* RustType.kt:534 */
 2235         -
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 2236         -
pub /* StructureGenerator.kt:201 */ struct JsonUnionsInput {
 2237         -
    /// /* StructureGenerator.kt:231 */A union with a representative set of types for members.
 2238         -
    pub contents: ::std::option::Option<crate::model::MyUnion>,
        1958  +
#[derive(
        1959  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        1960  +
)]
        1961  +
pub /* StructureGenerator.kt:201 */ struct HttpEnumPayloadInput {
        1962  +
    /* StructureGenerator.kt:231 */
        1963  +
    #[allow(missing_docs)] // documentation missing in model
        1964  +
    pub payload: ::std::option::Option<crate::model::StringEnum>,
 2239   1965   
    /* StructureGenerator.kt:201 */
 2240   1966   
}
 2241   1967   
/* StructureGenerator.kt:135 */
 2242         -
impl JsonUnionsInput {
 2243         -
    /// /* StructureGenerator.kt:231 */A union with a representative set of types for members.
        1968  +
impl HttpEnumPayloadInput {
        1969  +
    /* StructureGenerator.kt:231 */
        1970  +
    #[allow(missing_docs)] // documentation missing in model
 2244   1971   
                           /* StructureGenerator.kt:166 */
 2245         -
    pub fn contents(&self) -> ::std::option::Option<&crate::model::MyUnion> {
        1972  +
    pub fn payload(&self) -> ::std::option::Option<&crate::model::StringEnum> {
 2246   1973   
        /* StructureGenerator.kt:170 */
 2247         -
        self.contents.as_ref()
        1974  +
        self.payload.as_ref()
 2248   1975   
        /* StructureGenerator.kt:166 */
 2249   1976   
    }
 2250   1977   
    /* StructureGenerator.kt:135 */
 2251   1978   
}
 2252   1979   
/* ServerCodegenVisitor.kt:356 */
 2253         -
impl JsonUnionsInput {
 2254         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonUnionsInput`](crate::input::JsonUnionsInput).
        1980  +
impl HttpEnumPayloadInput {
        1981  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpEnumPayloadInput`](crate::input::HttpEnumPayloadInput).
 2255   1982   
    /* ServerBuilderGenerator.kt:295 */
 2256         -
    pub fn builder() -> crate::input::json_unions_input::Builder {
        1983  +
    pub fn builder() -> crate::input::http_enum_payload_input::Builder {
 2257   1984   
        /* ServerBuilderGenerator.kt:296 */
 2258         -
        crate::input::json_unions_input::Builder::default()
        1985  +
        crate::input::http_enum_payload_input::Builder::default()
 2259   1986   
        /* ServerBuilderGenerator.kt:295 */
 2260   1987   
    }
 2261   1988   
    /* ServerCodegenVisitor.kt:356 */
 2262   1989   
}
 2263   1990   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2264         -
impl crate::constrained::Constrained for crate::input::JsonUnionsInput {
 2265         -
    type Unconstrained = crate::input::json_unions_input::Builder;
        1991  +
impl crate::constrained::Constrained for crate::input::HttpEnumPayloadInput {
        1992  +
    type Unconstrained = crate::input::http_enum_payload_input::Builder;
 2266   1993   
}
 2267   1994   
 2268   1995   
/* StructureGenerator.kt:197 */
 2269   1996   
#[allow(missing_docs)] // documentation missing in model
 2270   1997   
/* RustType.kt:534 */
 2271         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 2272         -
pub /* StructureGenerator.kt:201 */ struct DocumentTypeAsMapValueInput {
        1998  +
#[derive(
        1999  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        2000  +
)]
        2001  +
pub /* StructureGenerator.kt:201 */ struct HttpStringPayloadInput {
 2273   2002   
    /* StructureGenerator.kt:231 */
 2274   2003   
    #[allow(missing_docs)] // documentation missing in model
 2275         -
    pub doc_valued_map: ::std::option::Option<
 2276         -
        ::std::collections::HashMap<::std::string::String, ::aws_smithy_types::Document>,
 2277         -
    >,
        2004  +
    pub payload: ::std::option::Option<::std::string::String>,
 2278   2005   
    /* StructureGenerator.kt:201 */
 2279   2006   
}
 2280   2007   
/* StructureGenerator.kt:135 */
 2281         -
impl DocumentTypeAsMapValueInput {
        2008  +
impl HttpStringPayloadInput {
 2282   2009   
    /* StructureGenerator.kt:231 */
 2283   2010   
    #[allow(missing_docs)] // documentation missing in model
 2284   2011   
                           /* StructureGenerator.kt:166 */
 2285         -
    pub fn doc_valued_map(
 2286         -
        &self,
 2287         -
    ) -> ::std::option::Option<
 2288         -
        &::std::collections::HashMap<::std::string::String, ::aws_smithy_types::Document>,
 2289         -
    > {
 2290         -
        /* StructureGenerator.kt:170 */
 2291         -
        self.doc_valued_map.as_ref()
        2012  +
    pub fn payload(&self) -> ::std::option::Option<&str> {
        2013  +
        /* StructureGenerator.kt:169 */
        2014  +
        self.payload.as_deref()
 2292   2015   
        /* StructureGenerator.kt:166 */
 2293   2016   
    }
 2294   2017   
    /* StructureGenerator.kt:135 */
 2295   2018   
}
 2296   2019   
/* ServerCodegenVisitor.kt:356 */
 2297         -
impl DocumentTypeAsMapValueInput {
 2298         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`DocumentTypeAsMapValueInput`](crate::input::DocumentTypeAsMapValueInput).
        2020  +
impl HttpStringPayloadInput {
        2021  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpStringPayloadInput`](crate::input::HttpStringPayloadInput).
 2299   2022   
    /* ServerBuilderGenerator.kt:295 */
 2300         -
    pub fn builder() -> crate::input::document_type_as_map_value_input::Builder {
        2023  +
    pub fn builder() -> crate::input::http_string_payload_input::Builder {
 2301   2024   
        /* ServerBuilderGenerator.kt:296 */
 2302         -
        crate::input::document_type_as_map_value_input::Builder::default()
        2025  +
        crate::input::http_string_payload_input::Builder::default()
 2303   2026   
        /* ServerBuilderGenerator.kt:295 */
 2304   2027   
    }
 2305   2028   
    /* ServerCodegenVisitor.kt:356 */
 2306   2029   
}
 2307   2030   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2308         -
impl crate::constrained::Constrained for crate::input::DocumentTypeAsMapValueInput {
 2309         -
    type Unconstrained = crate::input::document_type_as_map_value_input::Builder;
        2031  +
impl crate::constrained::Constrained for crate::input::HttpStringPayloadInput {
        2032  +
    type Unconstrained = crate::input::http_string_payload_input::Builder;
 2310   2033   
}
 2311   2034   
 2312   2035   
/* StructureGenerator.kt:197 */
 2313   2036   
#[allow(missing_docs)] // documentation missing in model
 2314   2037   
/* RustType.kt:534 */
 2315         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 2316         -
pub /* StructureGenerator.kt:201 */ struct DocumentTypeAsPayloadInput {
        2038  +
#[derive(
        2039  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        2040  +
)]
        2041  +
pub /* StructureGenerator.kt:201 */ struct HttpPayloadWithUnionInput {
 2317   2042   
    /* StructureGenerator.kt:231 */
 2318   2043   
    #[allow(missing_docs)] // documentation missing in model
 2319         -
    pub document_value: ::std::option::Option<::aws_smithy_types::Document>,
        2044  +
    pub nested: ::std::option::Option<crate::model::UnionPayload>,
 2320   2045   
    /* StructureGenerator.kt:201 */
 2321   2046   
}
 2322   2047   
/* StructureGenerator.kt:135 */
 2323         -
impl DocumentTypeAsPayloadInput {
        2048  +
impl HttpPayloadWithUnionInput {
 2324   2049   
    /* StructureGenerator.kt:231 */
 2325   2050   
    #[allow(missing_docs)] // documentation missing in model
 2326   2051   
                           /* StructureGenerator.kt:166 */
 2327         -
    pub fn document_value(&self) -> ::std::option::Option<&::aws_smithy_types::Document> {
        2052  +
    pub fn nested(&self) -> ::std::option::Option<&crate::model::UnionPayload> {
 2328   2053   
        /* StructureGenerator.kt:170 */
 2329         -
        self.document_value.as_ref()
        2054  +
        self.nested.as_ref()
 2330   2055   
        /* StructureGenerator.kt:166 */
 2331   2056   
    }
 2332   2057   
    /* StructureGenerator.kt:135 */
 2333   2058   
}
 2334   2059   
/* ServerCodegenVisitor.kt:356 */
 2335         -
impl DocumentTypeAsPayloadInput {
 2336         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`DocumentTypeAsPayloadInput`](crate::input::DocumentTypeAsPayloadInput).
        2060  +
impl HttpPayloadWithUnionInput {
        2061  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPayloadWithUnionInput`](crate::input::HttpPayloadWithUnionInput).
 2337   2062   
    /* ServerBuilderGenerator.kt:295 */
 2338         -
    pub fn builder() -> crate::input::document_type_as_payload_input::Builder {
        2063  +
    pub fn builder() -> crate::input::http_payload_with_union_input::Builder {
 2339   2064   
        /* ServerBuilderGenerator.kt:296 */
 2340         -
        crate::input::document_type_as_payload_input::Builder::default()
        2065  +
        crate::input::http_payload_with_union_input::Builder::default()
 2341   2066   
        /* ServerBuilderGenerator.kt:295 */
 2342   2067   
    }
 2343   2068   
    /* ServerCodegenVisitor.kt:356 */
 2344   2069   
}
 2345   2070   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2346         -
impl crate::constrained::Constrained for crate::input::DocumentTypeAsPayloadInput {
 2347         -
    type Unconstrained = crate::input::document_type_as_payload_input::Builder;
        2071  +
impl crate::constrained::Constrained for crate::input::HttpPayloadWithUnionInput {
        2072  +
    type Unconstrained = crate::input::http_payload_with_union_input::Builder;
 2348   2073   
}
 2349   2074   
 2350   2075   
/* StructureGenerator.kt:197 */
 2351   2076   
#[allow(missing_docs)] // documentation missing in model
 2352   2077   
/* RustType.kt:534 */
 2353         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 2354         -
pub /* StructureGenerator.kt:201 */ struct DocumentTypeInput {
        2078  +
#[derive(
        2079  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        2080  +
)]
        2081  +
pub /* StructureGenerator.kt:201 */ struct HttpResponseCodeInput {/* StructureGenerator.kt:201 */}
        2082  +
/* ServerCodegenVisitor.kt:356 */
        2083  +
impl HttpResponseCodeInput {
        2084  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpResponseCodeInput`](crate::input::HttpResponseCodeInput).
        2085  +
    /* ServerBuilderGenerator.kt:295 */
        2086  +
    pub fn builder() -> crate::input::http_response_code_input::Builder {
        2087  +
        /* ServerBuilderGenerator.kt:296 */
        2088  +
        crate::input::http_response_code_input::Builder::default()
        2089  +
        /* ServerBuilderGenerator.kt:295 */
        2090  +
    }
        2091  +
    /* ServerCodegenVisitor.kt:356 */
        2092  +
}
        2093  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        2094  +
impl crate::constrained::Constrained for crate::input::HttpResponseCodeInput {
        2095  +
    type Unconstrained = crate::input::http_response_code_input::Builder;
        2096  +
}
        2097  +
        2098  +
/* StructureGenerator.kt:197 */
        2099  +
#[allow(missing_docs)] // documentation missing in model
        2100  +
/* RustType.kt:534 */
        2101  +
#[derive(
        2102  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        2103  +
)]
        2104  +
pub /* StructureGenerator.kt:201 */ struct ResponseCodeRequiredInput {/* StructureGenerator.kt:201 */}
        2105  +
/* ServerCodegenVisitor.kt:356 */
        2106  +
impl ResponseCodeRequiredInput {
        2107  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`ResponseCodeRequiredInput`](crate::input::ResponseCodeRequiredInput).
        2108  +
    /* ServerBuilderGenerator.kt:295 */
        2109  +
    pub fn builder() -> crate::input::response_code_required_input::Builder {
        2110  +
        /* ServerBuilderGenerator.kt:296 */
        2111  +
        crate::input::response_code_required_input::Builder::default()
        2112  +
        /* ServerBuilderGenerator.kt:295 */
        2113  +
    }
        2114  +
    /* ServerCodegenVisitor.kt:356 */
        2115  +
}
        2116  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        2117  +
impl crate::constrained::Constrained for crate::input::ResponseCodeRequiredInput {
        2118  +
    type Unconstrained = crate::input::response_code_required_input::Builder;
        2119  +
}
        2120  +
        2121  +
/* StructureGenerator.kt:197 */
        2122  +
#[allow(missing_docs)] // documentation missing in model
        2123  +
/* RustType.kt:534 */
        2124  +
#[derive(
        2125  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        2126  +
)]
        2127  +
pub /* StructureGenerator.kt:201 */ struct ResponseCodeHttpFallbackInput {/* StructureGenerator.kt:201 */}
        2128  +
/* ServerCodegenVisitor.kt:356 */
        2129  +
impl ResponseCodeHttpFallbackInput {
        2130  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`ResponseCodeHttpFallbackInput`](crate::input::ResponseCodeHttpFallbackInput).
        2131  +
    /* ServerBuilderGenerator.kt:295 */
        2132  +
    pub fn builder() -> crate::input::response_code_http_fallback_input::Builder {
        2133  +
        /* ServerBuilderGenerator.kt:296 */
        2134  +
        crate::input::response_code_http_fallback_input::Builder::default()
        2135  +
        /* ServerBuilderGenerator.kt:295 */
        2136  +
    }
        2137  +
    /* ServerCodegenVisitor.kt:356 */
        2138  +
}
        2139  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        2140  +
impl crate::constrained::Constrained for crate::input::ResponseCodeHttpFallbackInput {
        2141  +
    type Unconstrained = crate::input::response_code_http_fallback_input::Builder;
        2142  +
}
        2143  +
        2144  +
/* StructureGenerator.kt:197 */
        2145  +
#[allow(missing_docs)] // documentation missing in model
        2146  +
/* RustType.kt:534 */
        2147  +
#[derive(::std::fmt::Debug)]
        2148  +
pub /* StructureGenerator.kt:201 */ struct StreamingTraitsInput {
 2355   2149   
    /* StructureGenerator.kt:231 */
 2356   2150   
    #[allow(missing_docs)] // documentation missing in model
 2357         -
    pub string_value: ::std::option::Option<::std::string::String>,
        2151  +
    pub foo: ::std::option::Option<::std::string::String>,
 2358   2152   
    /* StructureGenerator.kt:231 */
 2359   2153   
    #[allow(missing_docs)] // documentation missing in model
 2360         -
    pub document_value: ::std::option::Option<::aws_smithy_types::Document>,
        2154  +
    pub blob: ::aws_smithy_types::byte_stream::ByteStream,
 2361   2155   
    /* StructureGenerator.kt:201 */
 2362   2156   
}
 2363   2157   
/* StructureGenerator.kt:135 */
 2364         -
impl DocumentTypeInput {
        2158  +
impl StreamingTraitsInput {
 2365   2159   
    /* StructureGenerator.kt:231 */
 2366   2160   
    #[allow(missing_docs)] // documentation missing in model
 2367   2161   
                           /* StructureGenerator.kt:166 */
 2368         -
    pub fn string_value(&self) -> ::std::option::Option<&str> {
        2162  +
    pub fn foo(&self) -> ::std::option::Option<&str> {
 2369   2163   
        /* StructureGenerator.kt:169 */
 2370         -
        self.string_value.as_deref()
        2164  +
        self.foo.as_deref()
 2371   2165   
        /* StructureGenerator.kt:166 */
 2372   2166   
    }
 2373   2167   
    /* StructureGenerator.kt:231 */
 2374   2168   
    #[allow(missing_docs)] // documentation missing in model
 2375   2169   
                           /* StructureGenerator.kt:166 */
 2376         -
    pub fn document_value(&self) -> ::std::option::Option<&::aws_smithy_types::Document> {
 2377         -
        /* StructureGenerator.kt:170 */
 2378         -
        self.document_value.as_ref()
        2170  +
    pub fn blob(&self) -> &::aws_smithy_types::byte_stream::ByteStream {
        2171  +
        /* StructureGenerator.kt:172 */
        2172  +
        &self.blob
 2379   2173   
        /* StructureGenerator.kt:166 */
 2380   2174   
    }
 2381   2175   
    /* StructureGenerator.kt:135 */
 2382   2176   
}
 2383   2177   
/* ServerCodegenVisitor.kt:356 */
 2384         -
impl DocumentTypeInput {
 2385         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`DocumentTypeInput`](crate::input::DocumentTypeInput).
        2178  +
impl StreamingTraitsInput {
        2179  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`StreamingTraitsInput`](crate::input::StreamingTraitsInput).
 2386   2180   
    /* ServerBuilderGenerator.kt:295 */
 2387         -
    pub fn builder() -> crate::input::document_type_input::Builder {
        2181  +
    pub fn builder() -> crate::input::streaming_traits_input::Builder {
 2388   2182   
        /* ServerBuilderGenerator.kt:296 */
 2389         -
        crate::input::document_type_input::Builder::default()
        2183  +
        crate::input::streaming_traits_input::Builder::default()
 2390   2184   
        /* ServerBuilderGenerator.kt:295 */
 2391   2185   
    }
 2392   2186   
    /* ServerCodegenVisitor.kt:356 */
 2393   2187   
}
 2394   2188   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2395         -
impl crate::constrained::Constrained for crate::input::DocumentTypeInput {
 2396         -
    type Unconstrained = crate::input::document_type_input::Builder;
        2189  +
impl crate::constrained::Constrained for crate::input::StreamingTraitsInput {
        2190  +
    type Unconstrained = crate::input::streaming_traits_input::Builder;
 2397   2191   
}
 2398   2192   
 2399   2193   
/* StructureGenerator.kt:197 */
 2400   2194   
#[allow(missing_docs)] // documentation missing in model
 2401   2195   
/* RustType.kt:534 */
 2402         -
#[derive(
 2403         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 2404         -
)]
 2405         -
pub /* StructureGenerator.kt:201 */ struct JsonBlobsInput {
        2196  +
#[derive(::std::fmt::Debug)]
        2197  +
pub /* StructureGenerator.kt:201 */ struct StreamingTraitsRequireLengthInput {
 2406   2198   
    /* StructureGenerator.kt:231 */
 2407   2199   
    #[allow(missing_docs)] // documentation missing in model
 2408         -
    pub data: ::std::option::Option<::aws_smithy_types::Blob>,
        2200  +
    pub foo: ::std::option::Option<::std::string::String>,
        2201  +
    /* StructureGenerator.kt:231 */
        2202  +
    #[allow(missing_docs)] // documentation missing in model
        2203  +
    pub blob: ::aws_smithy_types::byte_stream::ByteStream,
 2409   2204   
    /* StructureGenerator.kt:201 */
 2410   2205   
}
 2411   2206   
/* StructureGenerator.kt:135 */
 2412         -
impl JsonBlobsInput {
        2207  +
impl StreamingTraitsRequireLengthInput {
 2413   2208   
    /* StructureGenerator.kt:231 */
 2414   2209   
    #[allow(missing_docs)] // documentation missing in model
 2415   2210   
                           /* StructureGenerator.kt:166 */
 2416         -
    pub fn data(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
 2417         -
        /* StructureGenerator.kt:170 */
 2418         -
        self.data.as_ref()
        2211  +
    pub fn foo(&self) -> ::std::option::Option<&str> {
        2212  +
        /* StructureGenerator.kt:169 */
        2213  +
        self.foo.as_deref()
        2214  +
        /* StructureGenerator.kt:166 */
        2215  +
    }
        2216  +
    /* StructureGenerator.kt:231 */
        2217  +
    #[allow(missing_docs)] // documentation missing in model
        2218  +
                           /* StructureGenerator.kt:166 */
        2219  +
    pub fn blob(&self) -> &::aws_smithy_types::byte_stream::ByteStream {
        2220  +
        /* StructureGenerator.kt:172 */
        2221  +
        &self.blob
 2419   2222   
        /* StructureGenerator.kt:166 */
 2420   2223   
    }
 2421   2224   
    /* StructureGenerator.kt:135 */
 2422   2225   
}
 2423   2226   
/* ServerCodegenVisitor.kt:356 */
 2424         -
impl JsonBlobsInput {
 2425         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonBlobsInput`](crate::input::JsonBlobsInput).
        2227  +
impl StreamingTraitsRequireLengthInput {
        2228  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`StreamingTraitsRequireLengthInput`](crate::input::StreamingTraitsRequireLengthInput).
 2426   2229   
    /* ServerBuilderGenerator.kt:295 */
 2427         -
    pub fn builder() -> crate::input::json_blobs_input::Builder {
        2230  +
    pub fn builder() -> crate::input::streaming_traits_require_length_input::Builder {
 2428   2231   
        /* ServerBuilderGenerator.kt:296 */
 2429         -
        crate::input::json_blobs_input::Builder::default()
        2232  +
        crate::input::streaming_traits_require_length_input::Builder::default()
 2430   2233   
        /* ServerBuilderGenerator.kt:295 */
 2431   2234   
    }
 2432   2235   
    /* ServerCodegenVisitor.kt:356 */
 2433   2236   
}
 2434   2237   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2435         -
impl crate::constrained::Constrained for crate::input::JsonBlobsInput {
 2436         -
    type Unconstrained = crate::input::json_blobs_input::Builder;
        2238  +
impl crate::constrained::Constrained for crate::input::StreamingTraitsRequireLengthInput {
        2239  +
    type Unconstrained = crate::input::streaming_traits_require_length_input::Builder;
 2437   2240   
}
 2438   2241   
 2439   2242   
/* StructureGenerator.kt:197 */
 2440   2243   
#[allow(missing_docs)] // documentation missing in model
 2441   2244   
/* RustType.kt:534 */
 2442         -
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 2443         -
pub /* StructureGenerator.kt:201 */ struct SparseJsonMapsInput {
 2444         -
    /* StructureGenerator.kt:231 */
 2445         -
    #[allow(missing_docs)] // documentation missing in model
 2446         -
    pub sparse_struct_map: ::std::option::Option<
 2447         -
        ::std::collections::HashMap<
 2448         -
            ::std::string::String,
 2449         -
            ::std::option::Option<crate::model::GreetingStruct>,
 2450         -
        >,
 2451         -
    >,
        2245  +
#[derive(::std::fmt::Debug)]
        2246  +
pub /* StructureGenerator.kt:201 */ struct StreamingTraitsWithMediaTypeInput {
 2452   2247   
    /* StructureGenerator.kt:231 */
 2453   2248   
    #[allow(missing_docs)] // documentation missing in model
 2454         -
    pub sparse_number_map: ::std::option::Option<
 2455         -
        ::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
 2456         -
    >,
        2249  +
    pub foo: ::std::option::Option<::std::string::String>,
 2457   2250   
    /* StructureGenerator.kt:231 */
 2458   2251   
    #[allow(missing_docs)] // documentation missing in model
 2459         -
    pub sparse_boolean_map: ::std::option::Option<
 2460         -
        ::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
 2461         -
    >,
 2462         -
    /* StructureGenerator.kt:231 */
 2463         -
    #[allow(missing_docs)] // documentation missing in model
 2464         -
    pub sparse_string_map: ::std::option::Option<
 2465         -
        ::std::collections::HashMap<
 2466         -
            ::std::string::String,
 2467         -
            ::std::option::Option<::std::string::String>,
 2468         -
        >,
 2469         -
    >,
 2470         -
    /* StructureGenerator.kt:231 */
 2471         -
    #[allow(missing_docs)] // documentation missing in model
 2472         -
    pub sparse_set_map: ::std::option::Option<
 2473         -
        ::std::collections::HashMap<
 2474         -
            ::std::string::String,
 2475         -
            ::std::option::Option<crate::model::StringSet>,
 2476         -
        >,
 2477         -
    >,
        2252  +
    pub blob: ::aws_smithy_types::byte_stream::ByteStream,
 2478   2253   
    /* StructureGenerator.kt:201 */
 2479   2254   
}
 2480   2255   
/* StructureGenerator.kt:135 */
 2481         -
impl SparseJsonMapsInput {
 2482         -
    /* StructureGenerator.kt:231 */
 2483         -
    #[allow(missing_docs)] // documentation missing in model
 2484         -
                           /* StructureGenerator.kt:166 */
 2485         -
    pub fn sparse_struct_map(
 2486         -
        &self,
 2487         -
    ) -> ::std::option::Option<
 2488         -
        &::std::collections::HashMap<
 2489         -
            ::std::string::String,
 2490         -
            ::std::option::Option<crate::model::GreetingStruct>,
 2491         -
        >,
 2492         -
    > {
 2493         -
        /* StructureGenerator.kt:170 */
 2494         -
        self.sparse_struct_map.as_ref()
 2495         -
        /* StructureGenerator.kt:166 */
 2496         -
    }
 2497         -
    /* StructureGenerator.kt:231 */
 2498         -
    #[allow(missing_docs)] // documentation missing in model
 2499         -
                           /* StructureGenerator.kt:166 */
 2500         -
    pub fn sparse_number_map(
 2501         -
        &self,
 2502         -
    ) -> ::std::option::Option<
 2503         -
        &::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
 2504         -
    > {
 2505         -
        /* StructureGenerator.kt:170 */
 2506         -
        self.sparse_number_map.as_ref()
 2507         -
        /* StructureGenerator.kt:166 */
 2508         -
    }
 2509         -
    /* StructureGenerator.kt:231 */
 2510         -
    #[allow(missing_docs)] // documentation missing in model
 2511         -
                           /* StructureGenerator.kt:166 */
 2512         -
    pub fn sparse_boolean_map(
 2513         -
        &self,
 2514         -
    ) -> ::std::option::Option<
 2515         -
        &::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
 2516         -
    > {
 2517         -
        /* StructureGenerator.kt:170 */
 2518         -
        self.sparse_boolean_map.as_ref()
 2519         -
        /* StructureGenerator.kt:166 */
 2520         -
    }
        2256  +
impl StreamingTraitsWithMediaTypeInput {
 2521   2257   
    /* StructureGenerator.kt:231 */
 2522   2258   
    #[allow(missing_docs)] // documentation missing in model
 2523   2259   
                           /* StructureGenerator.kt:166 */
 2524         -
    pub fn sparse_string_map(
 2525         -
        &self,
 2526         -
    ) -> ::std::option::Option<
 2527         -
        &::std::collections::HashMap<
 2528         -
            ::std::string::String,
 2529         -
            ::std::option::Option<::std::string::String>,
 2530         -
        >,
 2531         -
    > {
 2532         -
        /* StructureGenerator.kt:170 */
 2533         -
        self.sparse_string_map.as_ref()
        2260  +
    pub fn foo(&self) -> ::std::option::Option<&str> {
        2261  +
        /* StructureGenerator.kt:169 */
        2262  +
        self.foo.as_deref()
 2534   2263   
        /* StructureGenerator.kt:166 */
 2535   2264   
    }
 2536   2265   
    /* StructureGenerator.kt:231 */
 2537   2266   
    #[allow(missing_docs)] // documentation missing in model
 2538   2267   
                           /* StructureGenerator.kt:166 */
 2539         -
    pub fn sparse_set_map(
 2540         -
        &self,
 2541         -
    ) -> ::std::option::Option<
 2542         -
        &::std::collections::HashMap<
 2543         -
            ::std::string::String,
 2544         -
            ::std::option::Option<crate::model::StringSet>,
 2545         -
        >,
 2546         -
    > {
 2547         -
        /* StructureGenerator.kt:170 */
 2548         -
        self.sparse_set_map.as_ref()
        2268  +
    pub fn blob(&self) -> &::aws_smithy_types::byte_stream::ByteStream {
        2269  +
        /* StructureGenerator.kt:172 */
        2270  +
        &self.blob
 2549   2271   
        /* StructureGenerator.kt:166 */
 2550   2272   
    }
 2551   2273   
    /* StructureGenerator.kt:135 */
 2552   2274   
}
 2553   2275   
/* ServerCodegenVisitor.kt:356 */
 2554         -
impl SparseJsonMapsInput {
 2555         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`SparseJsonMapsInput`](crate::input::SparseJsonMapsInput).
        2276  +
impl StreamingTraitsWithMediaTypeInput {
        2277  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`StreamingTraitsWithMediaTypeInput`](crate::input::StreamingTraitsWithMediaTypeInput).
 2556   2278   
    /* ServerBuilderGenerator.kt:295 */
 2557         -
    pub fn builder() -> crate::input::sparse_json_maps_input::Builder {
        2279  +
    pub fn builder() -> crate::input::streaming_traits_with_media_type_input::Builder {
 2558   2280   
        /* ServerBuilderGenerator.kt:296 */
 2559         -
        crate::input::sparse_json_maps_input::Builder::default()
        2281  +
        crate::input::streaming_traits_with_media_type_input::Builder::default()
 2560   2282   
        /* ServerBuilderGenerator.kt:295 */
 2561   2283   
    }
 2562   2284   
    /* ServerCodegenVisitor.kt:356 */
 2563   2285   
}
 2564   2286   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2565         -
impl crate::constrained::Constrained for crate::input::SparseJsonMapsInput {
 2566         -
    type Unconstrained = crate::input::sparse_json_maps_input::Builder;
        2287  +
impl crate::constrained::Constrained for crate::input::StreamingTraitsWithMediaTypeInput {
        2288  +
    type Unconstrained = crate::input::streaming_traits_with_media_type_input::Builder;
 2567   2289   
}
 2568   2290   
 2569   2291   
/* StructureGenerator.kt:197 */
 2570   2292   
#[allow(missing_docs)] // documentation missing in model
 2571   2293   
/* RustType.kt:534 */
 2572         -
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 2573         -
pub /* StructureGenerator.kt:201 */ struct JsonMapsInput {
        2294  +
#[derive(
        2295  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        2296  +
)]
        2297  +
pub /* StructureGenerator.kt:201 */ struct GreetingWithErrorsInput {/* StructureGenerator.kt:201 */}
        2298  +
/* ServerCodegenVisitor.kt:356 */
        2299  +
impl GreetingWithErrorsInput {
        2300  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`GreetingWithErrorsInput`](crate::input::GreetingWithErrorsInput).
        2301  +
    /* ServerBuilderGenerator.kt:295 */
        2302  +
    pub fn builder() -> crate::input::greeting_with_errors_input::Builder {
        2303  +
        /* ServerBuilderGenerator.kt:296 */
        2304  +
        crate::input::greeting_with_errors_input::Builder::default()
        2305  +
        /* ServerBuilderGenerator.kt:295 */
        2306  +
    }
        2307  +
    /* ServerCodegenVisitor.kt:356 */
        2308  +
}
        2309  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        2310  +
impl crate::constrained::Constrained for crate::input::GreetingWithErrorsInput {
        2311  +
    type Unconstrained = crate::input::greeting_with_errors_input::Builder;
        2312  +
}
        2313  +
        2314  +
/* StructureGenerator.kt:197 */
        2315  +
#[allow(missing_docs)] // documentation missing in model
        2316  +
/* RustType.kt:534 */
        2317  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        2318  +
pub /* StructureGenerator.kt:201 */ struct SimpleScalarPropertiesInput {
 2574   2319   
    /* StructureGenerator.kt:231 */
 2575   2320   
    #[allow(missing_docs)] // documentation missing in model
 2576         -
    pub dense_struct_map: ::std::option::Option<
 2577         -
        ::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
 2578         -
    >,
        2321  +
    pub foo: ::std::option::Option<::std::string::String>,
 2579   2322   
    /* StructureGenerator.kt:231 */
 2580   2323   
    #[allow(missing_docs)] // documentation missing in model
 2581         -
    pub dense_number_map:
 2582         -
        ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
        2324  +
    pub string_value: ::std::option::Option<::std::string::String>,
 2583   2325   
    /* StructureGenerator.kt:231 */
 2584   2326   
    #[allow(missing_docs)] // documentation missing in model
 2585         -
    pub dense_boolean_map:
 2586         -
        ::std::option::Option<::std::collections::HashMap<::std::string::String, bool>>,
        2327  +
    pub true_boolean_value: ::std::option::Option<bool>,
 2587   2328   
    /* StructureGenerator.kt:231 */
 2588   2329   
    #[allow(missing_docs)] // documentation missing in model
 2589         -
    pub dense_string_map: ::std::option::Option<
 2590         -
        ::std::collections::HashMap<::std::string::String, ::std::string::String>,
 2591         -
    >,
        2330  +
    pub false_boolean_value: ::std::option::Option<bool>,
 2592   2331   
    /* StructureGenerator.kt:231 */
 2593   2332   
    #[allow(missing_docs)] // documentation missing in model
 2594         -
    pub dense_set_map: ::std::option::Option<
 2595         -
        ::std::collections::HashMap<::std::string::String, crate::model::StringSet>,
 2596         -
    >,
        2333  +
    pub byte_value: ::std::option::Option<i8>,
        2334  +
    /* StructureGenerator.kt:231 */
        2335  +
    #[allow(missing_docs)] // documentation missing in model
        2336  +
    pub short_value: ::std::option::Option<i16>,
        2337  +
    /* StructureGenerator.kt:231 */
        2338  +
    #[allow(missing_docs)] // documentation missing in model
        2339  +
    pub integer_value: ::std::option::Option<i32>,
        2340  +
    /* StructureGenerator.kt:231 */
        2341  +
    #[allow(missing_docs)] // documentation missing in model
        2342  +
    pub long_value: ::std::option::Option<i64>,
        2343  +
    /* StructureGenerator.kt:231 */
        2344  +
    #[allow(missing_docs)] // documentation missing in model
        2345  +
    pub float_value: ::std::option::Option<f32>,
        2346  +
    /* StructureGenerator.kt:231 */
        2347  +
    #[allow(missing_docs)] // documentation missing in model
        2348  +
    pub double_value: ::std::option::Option<f64>,
 2597   2349   
    /* StructureGenerator.kt:201 */
 2598   2350   
}
 2599   2351   
/* StructureGenerator.kt:135 */
 2600         -
impl JsonMapsInput {
        2352  +
impl SimpleScalarPropertiesInput {
 2601   2353   
    /* StructureGenerator.kt:231 */
 2602   2354   
    #[allow(missing_docs)] // documentation missing in model
 2603   2355   
                           /* StructureGenerator.kt:166 */
 2604         -
    pub fn dense_struct_map(
 2605         -
        &self,
 2606         -
    ) -> ::std::option::Option<
 2607         -
        &::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
 2608         -
    > {
 2609         -
        /* StructureGenerator.kt:170 */
 2610         -
        self.dense_struct_map.as_ref()
        2356  +
    pub fn foo(&self) -> ::std::option::Option<&str> {
        2357  +
        /* StructureGenerator.kt:169 */
        2358  +
        self.foo.as_deref()
 2611   2359   
        /* StructureGenerator.kt:166 */
 2612   2360   
    }
 2613   2361   
    /* StructureGenerator.kt:231 */
 2614   2362   
    #[allow(missing_docs)] // documentation missing in model
 2615   2363   
                           /* StructureGenerator.kt:166 */
 2616         -
    pub fn dense_number_map(
 2617         -
        &self,
 2618         -
    ) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, i32>> {
 2619         -
        /* StructureGenerator.kt:170 */
 2620         -
        self.dense_number_map.as_ref()
        2364  +
    pub fn string_value(&self) -> ::std::option::Option<&str> {
        2365  +
        /* StructureGenerator.kt:169 */
        2366  +
        self.string_value.as_deref()
 2621   2367   
        /* StructureGenerator.kt:166 */
 2622   2368   
    }
 2623   2369   
    /* StructureGenerator.kt:231 */
 2624   2370   
    #[allow(missing_docs)] // documentation missing in model
 2625   2371   
                           /* StructureGenerator.kt:166 */
 2626         -
    pub fn dense_boolean_map(
 2627         -
        &self,
 2628         -
    ) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, bool>> {
 2629         -
        /* StructureGenerator.kt:170 */
 2630         -
        self.dense_boolean_map.as_ref()
        2372  +
    pub fn true_boolean_value(&self) -> ::std::option::Option<bool> {
        2373  +
        /* StructureGenerator.kt:168 */
        2374  +
        self.true_boolean_value
 2631   2375   
        /* StructureGenerator.kt:166 */
 2632   2376   
    }
 2633   2377   
    /* StructureGenerator.kt:231 */
 2634   2378   
    #[allow(missing_docs)] // documentation missing in model
 2635   2379   
                           /* StructureGenerator.kt:166 */
 2636         -
    pub fn dense_string_map(
 2637         -
        &self,
 2638         -
    ) -> ::std::option::Option<
 2639         -
        &::std::collections::HashMap<::std::string::String, ::std::string::String>,
 2640         -
    > {
 2641         -
        /* StructureGenerator.kt:170 */
 2642         -
        self.dense_string_map.as_ref()
        2380  +
    pub fn false_boolean_value(&self) -> ::std::option::Option<bool> {
        2381  +
        /* StructureGenerator.kt:168 */
        2382  +
        self.false_boolean_value
 2643   2383   
        /* StructureGenerator.kt:166 */
 2644   2384   
    }
 2645   2385   
    /* StructureGenerator.kt:231 */
 2646   2386   
    #[allow(missing_docs)] // documentation missing in model
 2647   2387   
                           /* StructureGenerator.kt:166 */
 2648         -
    pub fn dense_set_map(
 2649         -
        &self,
 2650         -
    ) -> ::std::option::Option<
 2651         -
        &::std::collections::HashMap<::std::string::String, crate::model::StringSet>,
 2652         -
    > {
 2653         -
        /* StructureGenerator.kt:170 */
 2654         -
        self.dense_set_map.as_ref()
        2388  +
    pub fn byte_value(&self) -> ::std::option::Option<i8> {
        2389  +
        /* StructureGenerator.kt:168 */
        2390  +
        self.byte_value
 2655   2391   
        /* StructureGenerator.kt:166 */
 2656   2392   
    }
 2657         -
    /* StructureGenerator.kt:135 */
 2658         -
}
 2659         -
/* ServerCodegenVisitor.kt:356 */
 2660         -
impl JsonMapsInput {
 2661         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonMapsInput`](crate::input::JsonMapsInput).
 2662         -
    /* ServerBuilderGenerator.kt:295 */
 2663         -
    pub fn builder() -> crate::input::json_maps_input::Builder {
 2664         -
        /* ServerBuilderGenerator.kt:296 */
 2665         -
        crate::input::json_maps_input::Builder::default()
 2666         -
        /* ServerBuilderGenerator.kt:295 */
 2667         -
    }
 2668         -
    /* ServerCodegenVisitor.kt:356 */
 2669         -
}
 2670         -
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2671         -
impl crate::constrained::Constrained for crate::input::JsonMapsInput {
 2672         -
    type Unconstrained = crate::input::json_maps_input::Builder;
 2673         -
}
 2674         -
 2675         -
/* StructureGenerator.kt:197 */
 2676         -
#[allow(missing_docs)] // documentation missing in model
 2677         -
/* RustType.kt:534 */
 2678         -
#[derive(
 2679         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 2680         -
)]
 2681         -
pub /* StructureGenerator.kt:201 */ struct SparseJsonListsInput {
 2682   2393   
    /* StructureGenerator.kt:231 */
 2683   2394   
    #[allow(missing_docs)] // documentation missing in model
 2684         -
    pub sparse_string_list:
 2685         -
        ::std::option::Option<::std::vec::Vec<::std::option::Option<::std::string::String>>>,
 2686         -
    /* StructureGenerator.kt:231 */
 2687         -
    #[allow(missing_docs)] // documentation missing in model
 2688         -
    pub sparse_short_list: ::std::option::Option<::std::vec::Vec<::std::option::Option<i16>>>,
 2689         -
    /* StructureGenerator.kt:201 */
 2690         -
}
 2691         -
/* StructureGenerator.kt:135 */
 2692         -
impl SparseJsonListsInput {
        2395  +
                           /* StructureGenerator.kt:166 */
        2396  +
    pub fn short_value(&self) -> ::std::option::Option<i16> {
        2397  +
        /* StructureGenerator.kt:168 */
        2398  +
        self.short_value
        2399  +
        /* StructureGenerator.kt:166 */
        2400  +
    }
 2693   2401   
    /* StructureGenerator.kt:231 */
 2694   2402   
    #[allow(missing_docs)] // documentation missing in model
 2695   2403   
                           /* StructureGenerator.kt:166 */
 2696         -
    pub fn sparse_string_list(
 2697         -
        &self,
 2698         -
    ) -> ::std::option::Option<&[::std::option::Option<::std::string::String>]> {
 2699         -
        /* StructureGenerator.kt:169 */
 2700         -
        self.sparse_string_list.as_deref()
        2404  +
    pub fn integer_value(&self) -> ::std::option::Option<i32> {
        2405  +
        /* StructureGenerator.kt:168 */
        2406  +
        self.integer_value
 2701   2407   
        /* StructureGenerator.kt:166 */
 2702   2408   
    }
 2703   2409   
    /* StructureGenerator.kt:231 */
 2704   2410   
    #[allow(missing_docs)] // documentation missing in model
 2705   2411   
                           /* StructureGenerator.kt:166 */
 2706         -
    pub fn sparse_short_list(&self) -> ::std::option::Option<&[::std::option::Option<i16>]> {
 2707         -
        /* StructureGenerator.kt:169 */
 2708         -
        self.sparse_short_list.as_deref()
        2412  +
    pub fn long_value(&self) -> ::std::option::Option<i64> {
        2413  +
        /* StructureGenerator.kt:168 */
        2414  +
        self.long_value
        2415  +
        /* StructureGenerator.kt:166 */
        2416  +
    }
        2417  +
    /* StructureGenerator.kt:231 */
        2418  +
    #[allow(missing_docs)] // documentation missing in model
        2419  +
                           /* StructureGenerator.kt:166 */
        2420  +
    pub fn float_value(&self) -> ::std::option::Option<f32> {
        2421  +
        /* StructureGenerator.kt:168 */
        2422  +
        self.float_value
        2423  +
        /* StructureGenerator.kt:166 */
        2424  +
    }
        2425  +
    /* StructureGenerator.kt:231 */
        2426  +
    #[allow(missing_docs)] // documentation missing in model
        2427  +
                           /* StructureGenerator.kt:166 */
        2428  +
    pub fn double_value(&self) -> ::std::option::Option<f64> {
        2429  +
        /* StructureGenerator.kt:168 */
        2430  +
        self.double_value
 2709   2431   
        /* StructureGenerator.kt:166 */
 2710   2432   
    }
 2711   2433   
    /* StructureGenerator.kt:135 */
 2712   2434   
}
 2713   2435   
/* ServerCodegenVisitor.kt:356 */
 2714         -
impl SparseJsonListsInput {
 2715         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`SparseJsonListsInput`](crate::input::SparseJsonListsInput).
        2436  +
impl SimpleScalarPropertiesInput {
        2437  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`SimpleScalarPropertiesInput`](crate::input::SimpleScalarPropertiesInput).
 2716   2438   
    /* ServerBuilderGenerator.kt:295 */
 2717         -
    pub fn builder() -> crate::input::sparse_json_lists_input::Builder {
        2439  +
    pub fn builder() -> crate::input::simple_scalar_properties_input::Builder {
 2718   2440   
        /* ServerBuilderGenerator.kt:296 */
 2719         -
        crate::input::sparse_json_lists_input::Builder::default()
        2441  +
        crate::input::simple_scalar_properties_input::Builder::default()
 2720   2442   
        /* ServerBuilderGenerator.kt:295 */
 2721   2443   
    }
 2722   2444   
    /* ServerCodegenVisitor.kt:356 */
 2723   2445   
}
 2724   2446   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2725         -
impl crate::constrained::Constrained for crate::input::SparseJsonListsInput {
 2726         -
    type Unconstrained = crate::input::sparse_json_lists_input::Builder;
        2447  +
impl crate::constrained::Constrained for crate::input::SimpleScalarPropertiesInput {
        2448  +
    type Unconstrained = crate::input::simple_scalar_properties_input::Builder;
 2727   2449   
}
 2728   2450   
 2729   2451   
/* StructureGenerator.kt:197 */
 2730   2452   
#[allow(missing_docs)] // documentation missing in model
 2731   2453   
/* RustType.kt:534 */
 2732   2454   
#[derive(
 2733   2455   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 2734   2456   
)]
 2735         -
pub /* StructureGenerator.kt:201 */ struct JsonListsInput {
 2736         -
    /* StructureGenerator.kt:231 */
 2737         -
    #[allow(missing_docs)] // documentation missing in model
 2738         -
    pub string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        2457  +
pub /* StructureGenerator.kt:201 */ struct JsonTimestampsInput {
 2739   2458   
    /* StructureGenerator.kt:231 */
 2740   2459   
    #[allow(missing_docs)] // documentation missing in model
 2741         -
    pub string_set: ::std::option::Option<crate::model::StringSet>,
        2460  +
    pub normal: ::std::option::Option<::aws_smithy_types::DateTime>,
 2742   2461   
    /* StructureGenerator.kt:231 */
 2743   2462   
    #[allow(missing_docs)] // documentation missing in model
 2744         -
    pub integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
        2463  +
    pub date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
 2745   2464   
    /* StructureGenerator.kt:231 */
 2746   2465   
    #[allow(missing_docs)] // documentation missing in model
 2747         -
    pub boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
        2466  +
    pub date_time_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
 2748   2467   
    /* StructureGenerator.kt:231 */
 2749   2468   
    #[allow(missing_docs)] // documentation missing in model
 2750         -
    pub timestamp_list: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
        2469  +
    pub epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
 2751   2470   
    /* StructureGenerator.kt:231 */
 2752   2471   
    #[allow(missing_docs)] // documentation missing in model
 2753         -
    pub enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
        2472  +
    pub epoch_seconds_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
 2754   2473   
    /* StructureGenerator.kt:231 */
 2755   2474   
    #[allow(missing_docs)] // documentation missing in model
 2756         -
    pub int_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
 2757         -
    /// /* StructureGenerator.kt:231 */A list of lists of strings.
 2758         -
    pub nested_string_list:
 2759         -
        ::std::option::Option<::std::vec::Vec<::std::vec::Vec<::std::string::String>>>,
        2475  +
    pub http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
 2760   2476   
    /* StructureGenerator.kt:231 */
 2761   2477   
    #[allow(missing_docs)] // documentation missing in model
 2762         -
    pub structure_list: ::std::option::Option<::std::vec::Vec<crate::model::StructureListMember>>,
        2478  +
    pub http_date_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
 2763   2479   
    /* StructureGenerator.kt:201 */
 2764   2480   
}
 2765   2481   
/* StructureGenerator.kt:135 */
 2766         -
impl JsonListsInput {
 2767         -
    /* StructureGenerator.kt:231 */
 2768         -
    #[allow(missing_docs)] // documentation missing in model
 2769         -
                           /* StructureGenerator.kt:166 */
 2770         -
    pub fn string_list(&self) -> ::std::option::Option<&[::std::string::String]> {
 2771         -
        /* StructureGenerator.kt:169 */
 2772         -
        self.string_list.as_deref()
 2773         -
        /* StructureGenerator.kt:166 */
 2774         -
    }
        2482  +
impl JsonTimestampsInput {
 2775   2483   
    /* StructureGenerator.kt:231 */
 2776   2484   
    #[allow(missing_docs)] // documentation missing in model
 2777   2485   
                           /* StructureGenerator.kt:166 */
 2778         -
    pub fn string_set(&self) -> ::std::option::Option<&crate::model::StringSet> {
        2486  +
    pub fn normal(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 2779   2487   
        /* StructureGenerator.kt:170 */
 2780         -
        self.string_set.as_ref()
        2488  +
        self.normal.as_ref()
 2781   2489   
        /* StructureGenerator.kt:166 */
 2782   2490   
    }
 2783   2491   
    /* StructureGenerator.kt:231 */
 2784   2492   
    #[allow(missing_docs)] // documentation missing in model
 2785   2493   
                           /* StructureGenerator.kt:166 */
 2786         -
    pub fn integer_list(&self) -> ::std::option::Option<&[i32]> {
 2787         -
        /* StructureGenerator.kt:169 */
 2788         -
        self.integer_list.as_deref()
        2494  +
    pub fn date_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
        2495  +
        /* StructureGenerator.kt:170 */
        2496  +
        self.date_time.as_ref()
 2789   2497   
        /* StructureGenerator.kt:166 */
 2790   2498   
    }
 2791   2499   
    /* StructureGenerator.kt:231 */
 2792   2500   
    #[allow(missing_docs)] // documentation missing in model
 2793   2501   
                           /* StructureGenerator.kt:166 */
 2794         -
    pub fn boolean_list(&self) -> ::std::option::Option<&[bool]> {
 2795         -
        /* StructureGenerator.kt:169 */
 2796         -
        self.boolean_list.as_deref()
        2502  +
    pub fn date_time_on_target(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
        2503  +
        /* StructureGenerator.kt:170 */
        2504  +
        self.date_time_on_target.as_ref()
 2797   2505   
        /* StructureGenerator.kt:166 */
 2798   2506   
    }
 2799   2507   
    /* StructureGenerator.kt:231 */
 2800   2508   
    #[allow(missing_docs)] // documentation missing in model
 2801   2509   
                           /* StructureGenerator.kt:166 */
 2802         -
    pub fn timestamp_list(&self) -> ::std::option::Option<&[::aws_smithy_types::DateTime]> {
 2803         -
        /* StructureGenerator.kt:169 */
 2804         -
        self.timestamp_list.as_deref()
        2510  +
    pub fn epoch_seconds(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
        2511  +
        /* StructureGenerator.kt:170 */
        2512  +
        self.epoch_seconds.as_ref()
 2805   2513   
        /* StructureGenerator.kt:166 */
 2806   2514   
    }
 2807   2515   
    /* StructureGenerator.kt:231 */
 2808   2516   
    #[allow(missing_docs)] // documentation missing in model
 2809   2517   
                           /* StructureGenerator.kt:166 */
 2810         -
    pub fn enum_list(&self) -> ::std::option::Option<&[crate::model::FooEnum]> {
 2811         -
        /* StructureGenerator.kt:169 */
 2812         -
        self.enum_list.as_deref()
        2518  +
    pub fn epoch_seconds_on_target(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
        2519  +
        /* StructureGenerator.kt:170 */
        2520  +
        self.epoch_seconds_on_target.as_ref()
 2813   2521   
        /* StructureGenerator.kt:166 */
 2814   2522   
    }
 2815   2523   
    /* StructureGenerator.kt:231 */
 2816   2524   
    #[allow(missing_docs)] // documentation missing in model
 2817   2525   
                           /* StructureGenerator.kt:166 */
 2818         -
    pub fn int_enum_list(&self) -> ::std::option::Option<&[i32]> {
 2819         -
        /* StructureGenerator.kt:169 */
 2820         -
        self.int_enum_list.as_deref()
 2821         -
        /* StructureGenerator.kt:166 */
 2822         -
    }
 2823         -
    /// /* StructureGenerator.kt:231 */A list of lists of strings.
 2824         -
    /* StructureGenerator.kt:166 */
 2825         -
    pub fn nested_string_list(
 2826         -
        &self,
 2827         -
    ) -> ::std::option::Option<&[::std::vec::Vec<::std::string::String>]> {
 2828         -
        /* StructureGenerator.kt:169 */
 2829         -
        self.nested_string_list.as_deref()
        2526  +
    pub fn http_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
        2527  +
        /* StructureGenerator.kt:170 */
        2528  +
        self.http_date.as_ref()
 2830   2529   
        /* StructureGenerator.kt:166 */
 2831   2530   
    }
 2832   2531   
    /* StructureGenerator.kt:231 */
 2833   2532   
    #[allow(missing_docs)] // documentation missing in model
 2834   2533   
                           /* StructureGenerator.kt:166 */
 2835         -
    pub fn structure_list(&self) -> ::std::option::Option<&[crate::model::StructureListMember]> {
 2836         -
        /* StructureGenerator.kt:169 */
 2837         -
        self.structure_list.as_deref()
        2534  +
    pub fn http_date_on_target(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
        2535  +
        /* StructureGenerator.kt:170 */
        2536  +
        self.http_date_on_target.as_ref()
 2838   2537   
        /* StructureGenerator.kt:166 */
 2839   2538   
    }
 2840   2539   
    /* StructureGenerator.kt:135 */
 2841   2540   
}
 2842   2541   
/* ServerCodegenVisitor.kt:356 */
 2843         -
impl JsonListsInput {
 2844         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonListsInput`](crate::input::JsonListsInput).
        2542  +
impl JsonTimestampsInput {
        2543  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonTimestampsInput`](crate::input::JsonTimestampsInput).
 2845   2544   
    /* ServerBuilderGenerator.kt:295 */
 2846         -
    pub fn builder() -> crate::input::json_lists_input::Builder {
        2545  +
    pub fn builder() -> crate::input::json_timestamps_input::Builder {
 2847   2546   
        /* ServerBuilderGenerator.kt:296 */
 2848         -
        crate::input::json_lists_input::Builder::default()
        2547  +
        crate::input::json_timestamps_input::Builder::default()
 2849   2548   
        /* ServerBuilderGenerator.kt:295 */
 2850   2549   
    }
 2851   2550   
    /* ServerCodegenVisitor.kt:356 */
 2852   2551   
}
 2853   2552   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2854         -
impl crate::constrained::Constrained for crate::input::JsonListsInput {
 2855         -
    type Unconstrained = crate::input::json_lists_input::Builder;
        2553  +
impl crate::constrained::Constrained for crate::input::JsonTimestampsInput {
        2554  +
    type Unconstrained = crate::input::json_timestamps_input::Builder;
 2856   2555   
}
 2857   2556   
 2858   2557   
/* StructureGenerator.kt:197 */
 2859   2558   
#[allow(missing_docs)] // documentation missing in model
 2860   2559   
/* RustType.kt:534 */
 2861         -
#[derive(
 2862         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 2863         -
)]
 2864         -
pub /* StructureGenerator.kt:201 */ struct RecursiveShapesInput {
        2560  +
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        2561  +
pub /* StructureGenerator.kt:201 */ struct JsonEnumsInput {
 2865   2562   
    /* StructureGenerator.kt:231 */
 2866   2563   
    #[allow(missing_docs)] // documentation missing in model
 2867         -
    pub nested: ::std::option::Option<crate::model::RecursiveShapesInputOutputNested1>,
        2564  +
    pub foo_enum1: ::std::option::Option<crate::model::FooEnum>,
        2565  +
    /* StructureGenerator.kt:231 */
        2566  +
    #[allow(missing_docs)] // documentation missing in model
        2567  +
    pub foo_enum2: ::std::option::Option<crate::model::FooEnum>,
        2568  +
    /* StructureGenerator.kt:231 */
        2569  +
    #[allow(missing_docs)] // documentation missing in model
        2570  +
    pub foo_enum3: ::std::option::Option<crate::model::FooEnum>,
        2571  +
    /* StructureGenerator.kt:231 */
        2572  +
    #[allow(missing_docs)] // documentation missing in model
        2573  +
    pub foo_enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
        2574  +
    /* StructureGenerator.kt:231 */
        2575  +
    #[allow(missing_docs)] // documentation missing in model
        2576  +
    pub foo_enum_set: ::std::option::Option<crate::model::FooEnumSet>,
        2577  +
    /* StructureGenerator.kt:231 */
        2578  +
    #[allow(missing_docs)] // documentation missing in model
        2579  +
    pub foo_enum_map: ::std::option::Option<
        2580  +
        ::std::collections::HashMap<::std::string::String, crate::model::FooEnum>,
        2581  +
    >,
 2868   2582   
    /* StructureGenerator.kt:201 */
 2869   2583   
}
 2870   2584   
/* StructureGenerator.kt:135 */
 2871         -
impl RecursiveShapesInput {
        2585  +
impl JsonEnumsInput {
 2872   2586   
    /* StructureGenerator.kt:231 */
 2873   2587   
    #[allow(missing_docs)] // documentation missing in model
 2874   2588   
                           /* StructureGenerator.kt:166 */
 2875         -
    pub fn nested(
        2589  +
    pub fn foo_enum1(&self) -> ::std::option::Option<&crate::model::FooEnum> {
        2590  +
        /* StructureGenerator.kt:170 */
        2591  +
        self.foo_enum1.as_ref()
        2592  +
        /* StructureGenerator.kt:166 */
        2593  +
    }
        2594  +
    /* StructureGenerator.kt:231 */
        2595  +
    #[allow(missing_docs)] // documentation missing in model
        2596  +
                           /* StructureGenerator.kt:166 */
        2597  +
    pub fn foo_enum2(&self) -> ::std::option::Option<&crate::model::FooEnum> {
        2598  +
        /* StructureGenerator.kt:170 */
        2599  +
        self.foo_enum2.as_ref()
        2600  +
        /* StructureGenerator.kt:166 */
        2601  +
    }
        2602  +
    /* StructureGenerator.kt:231 */
        2603  +
    #[allow(missing_docs)] // documentation missing in model
        2604  +
                           /* StructureGenerator.kt:166 */
        2605  +
    pub fn foo_enum3(&self) -> ::std::option::Option<&crate::model::FooEnum> {
        2606  +
        /* StructureGenerator.kt:170 */
        2607  +
        self.foo_enum3.as_ref()
        2608  +
        /* StructureGenerator.kt:166 */
        2609  +
    }
        2610  +
    /* StructureGenerator.kt:231 */
        2611  +
    #[allow(missing_docs)] // documentation missing in model
        2612  +
                           /* StructureGenerator.kt:166 */
        2613  +
    pub fn foo_enum_list(&self) -> ::std::option::Option<&[crate::model::FooEnum]> {
        2614  +
        /* StructureGenerator.kt:169 */
        2615  +
        self.foo_enum_list.as_deref()
        2616  +
        /* StructureGenerator.kt:166 */
        2617  +
    }
        2618  +
    /* StructureGenerator.kt:231 */
        2619  +
    #[allow(missing_docs)] // documentation missing in model
        2620  +
                           /* StructureGenerator.kt:166 */
        2621  +
    pub fn foo_enum_set(&self) -> ::std::option::Option<&crate::model::FooEnumSet> {
        2622  +
        /* StructureGenerator.kt:170 */
        2623  +
        self.foo_enum_set.as_ref()
        2624  +
        /* StructureGenerator.kt:166 */
        2625  +
    }
        2626  +
    /* StructureGenerator.kt:231 */
        2627  +
    #[allow(missing_docs)] // documentation missing in model
        2628  +
                           /* StructureGenerator.kt:166 */
        2629  +
    pub fn foo_enum_map(
 2876   2630   
        &self,
 2877         -
    ) -> ::std::option::Option<&crate::model::RecursiveShapesInputOutputNested1> {
        2631  +
    ) -> ::std::option::Option<
        2632  +
        &::std::collections::HashMap<::std::string::String, crate::model::FooEnum>,
        2633  +
    > {
 2878   2634   
        /* StructureGenerator.kt:170 */
 2879         -
        self.nested.as_ref()
        2635  +
        self.foo_enum_map.as_ref()
 2880   2636   
        /* StructureGenerator.kt:166 */
 2881   2637   
    }
 2882   2638   
    /* StructureGenerator.kt:135 */
 2883   2639   
}
 2884   2640   
/* ServerCodegenVisitor.kt:356 */
 2885         -
impl RecursiveShapesInput {
 2886         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`RecursiveShapesInput`](crate::input::RecursiveShapesInput).
        2641  +
impl JsonEnumsInput {
        2642  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonEnumsInput`](crate::input::JsonEnumsInput).
 2887   2643   
    /* ServerBuilderGenerator.kt:295 */
 2888         -
    pub fn builder() -> crate::input::recursive_shapes_input::Builder {
        2644  +
    pub fn builder() -> crate::input::json_enums_input::Builder {
 2889   2645   
        /* ServerBuilderGenerator.kt:296 */
 2890         -
        crate::input::recursive_shapes_input::Builder::default()
        2646  +
        crate::input::json_enums_input::Builder::default()
 2891   2647   
        /* ServerBuilderGenerator.kt:295 */
 2892   2648   
    }
 2893   2649   
    /* ServerCodegenVisitor.kt:356 */
 2894   2650   
}
 2895   2651   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2896         -
impl crate::constrained::Constrained for crate::input::RecursiveShapesInput {
 2897         -
    type Unconstrained = crate::input::recursive_shapes_input::Builder;
        2652  +
impl crate::constrained::Constrained for crate::input::JsonEnumsInput {
        2653  +
    type Unconstrained = crate::input::json_enums_input::Builder;
 2898   2654   
}
 2899   2655   
 2900   2656   
/* StructureGenerator.kt:197 */
 2901   2657   
#[allow(missing_docs)] // documentation missing in model
 2902   2658   
/* RustType.kt:534 */
 2903   2659   
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 2904   2660   
pub /* StructureGenerator.kt:201 */ struct JsonIntEnumsInput {
 2905   2661   
    /* StructureGenerator.kt:231 */
 2906   2662   
    #[allow(missing_docs)] // documentation missing in model
 2907   2663   
    pub integer_enum1: ::std::option::Option<i32>,
@@ -2969,2725 +20024,21424 @@
 2989   2745   
    /* ServerCodegenVisitor.kt:356 */
 2990   2746   
}
 2991   2747   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 2992   2748   
impl crate::constrained::Constrained for crate::input::JsonIntEnumsInput {
 2993   2749   
    type Unconstrained = crate::input::json_int_enums_input::Builder;
 2994   2750   
}
 2995   2751   
 2996   2752   
/* StructureGenerator.kt:197 */
 2997   2753   
#[allow(missing_docs)] // documentation missing in model
 2998   2754   
/* RustType.kt:534 */
 2999         -
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 3000         -
pub /* StructureGenerator.kt:201 */ struct JsonEnumsInput {
 3001         -
    /* StructureGenerator.kt:231 */
 3002         -
    #[allow(missing_docs)] // documentation missing in model
 3003         -
    pub foo_enum1: ::std::option::Option<crate::model::FooEnum>,
 3004         -
    /* StructureGenerator.kt:231 */
 3005         -
    #[allow(missing_docs)] // documentation missing in model
 3006         -
    pub foo_enum2: ::std::option::Option<crate::model::FooEnum>,
 3007         -
    /* StructureGenerator.kt:231 */
 3008         -
    #[allow(missing_docs)] // documentation missing in model
 3009         -
    pub foo_enum3: ::std::option::Option<crate::model::FooEnum>,
 3010         -
    /* StructureGenerator.kt:231 */
 3011         -
    #[allow(missing_docs)] // documentation missing in model
 3012         -
    pub foo_enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
 3013         -
    /* StructureGenerator.kt:231 */
 3014         -
    #[allow(missing_docs)] // documentation missing in model
 3015         -
    pub foo_enum_set: ::std::option::Option<crate::model::FooEnumSet>,
        2755  +
#[derive(
        2756  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        2757  +
)]
        2758  +
pub /* StructureGenerator.kt:201 */ struct RecursiveShapesInput {
 3016   2759   
    /* StructureGenerator.kt:231 */
 3017   2760   
    #[allow(missing_docs)] // documentation missing in model
 3018         -
    pub foo_enum_map: ::std::option::Option<
 3019         -
        ::std::collections::HashMap<::std::string::String, crate::model::FooEnum>,
 3020         -
    >,
        2761  +
    pub nested: ::std::option::Option<crate::model::RecursiveShapesInputOutputNested1>,
 3021   2762   
    /* StructureGenerator.kt:201 */
 3022   2763   
}
 3023   2764   
/* StructureGenerator.kt:135 */
 3024         -
impl JsonEnumsInput {
 3025         -
    /* StructureGenerator.kt:231 */
 3026         -
    #[allow(missing_docs)] // documentation missing in model
 3027         -
                           /* StructureGenerator.kt:166 */
 3028         -
    pub fn foo_enum1(&self) -> ::std::option::Option<&crate::model::FooEnum> {
 3029         -
        /* StructureGenerator.kt:170 */
 3030         -
        self.foo_enum1.as_ref()
 3031         -
        /* StructureGenerator.kt:166 */
 3032         -
    }
        2765  +
impl RecursiveShapesInput {
 3033   2766   
    /* StructureGenerator.kt:231 */
 3034   2767   
    #[allow(missing_docs)] // documentation missing in model
 3035   2768   
                           /* StructureGenerator.kt:166 */
 3036         -
    pub fn foo_enum2(&self) -> ::std::option::Option<&crate::model::FooEnum> {
        2769  +
    pub fn nested(
        2770  +
        &self,
        2771  +
    ) -> ::std::option::Option<&crate::model::RecursiveShapesInputOutputNested1> {
 3037   2772   
        /* StructureGenerator.kt:170 */
 3038         -
        self.foo_enum2.as_ref()
 3039         -
        /* StructureGenerator.kt:166 */
 3040         -
    }
 3041         -
    /* StructureGenerator.kt:231 */
 3042         -
    #[allow(missing_docs)] // documentation missing in model
 3043         -
                           /* StructureGenerator.kt:166 */
 3044         -
    pub fn foo_enum3(&self) -> ::std::option::Option<&crate::model::FooEnum> {
 3045         -
        /* StructureGenerator.kt:170 */
 3046         -
        self.foo_enum3.as_ref()
 3047         -
        /* StructureGenerator.kt:166 */
 3048         -
    }
 3049         -
    /* StructureGenerator.kt:231 */
 3050         -
    #[allow(missing_docs)] // documentation missing in model
 3051         -
                           /* StructureGenerator.kt:166 */
 3052         -
    pub fn foo_enum_list(&self) -> ::std::option::Option<&[crate::model::FooEnum]> {
 3053         -
        /* StructureGenerator.kt:169 */
 3054         -
        self.foo_enum_list.as_deref()
 3055         -
        /* StructureGenerator.kt:166 */
 3056         -
    }
 3057         -
    /* StructureGenerator.kt:231 */
 3058         -
    #[allow(missing_docs)] // documentation missing in model
 3059         -
                           /* StructureGenerator.kt:166 */
 3060         -
    pub fn foo_enum_set(&self) -> ::std::option::Option<&crate::model::FooEnumSet> {
 3061         -
        /* StructureGenerator.kt:170 */
 3062         -
        self.foo_enum_set.as_ref()
 3063         -
        /* StructureGenerator.kt:166 */
 3064         -
    }
 3065         -
    /* StructureGenerator.kt:231 */
 3066         -
    #[allow(missing_docs)] // documentation missing in model
 3067         -
                           /* StructureGenerator.kt:166 */
 3068         -
    pub fn foo_enum_map(
 3069         -
        &self,
 3070         -
    ) -> ::std::option::Option<
 3071         -
        &::std::collections::HashMap<::std::string::String, crate::model::FooEnum>,
 3072         -
    > {
 3073         -
        /* StructureGenerator.kt:170 */
 3074         -
        self.foo_enum_map.as_ref()
        2773  +
        self.nested.as_ref()
 3075   2774   
        /* StructureGenerator.kt:166 */
 3076   2775   
    }
 3077   2776   
    /* StructureGenerator.kt:135 */
 3078   2777   
}
 3079   2778   
/* ServerCodegenVisitor.kt:356 */
 3080         -
impl JsonEnumsInput {
 3081         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonEnumsInput`](crate::input::JsonEnumsInput).
        2779  +
impl RecursiveShapesInput {
        2780  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`RecursiveShapesInput`](crate::input::RecursiveShapesInput).
 3082   2781   
    /* ServerBuilderGenerator.kt:295 */
 3083         -
    pub fn builder() -> crate::input::json_enums_input::Builder {
        2782  +
    pub fn builder() -> crate::input::recursive_shapes_input::Builder {
 3084   2783   
        /* ServerBuilderGenerator.kt:296 */
 3085         -
        crate::input::json_enums_input::Builder::default()
        2784  +
        crate::input::recursive_shapes_input::Builder::default()
 3086   2785   
        /* ServerBuilderGenerator.kt:295 */
 3087   2786   
    }
 3088   2787   
    /* ServerCodegenVisitor.kt:356 */
 3089   2788   
}
 3090   2789   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3091         -
impl crate::constrained::Constrained for crate::input::JsonEnumsInput {
 3092         -
    type Unconstrained = crate::input::json_enums_input::Builder;
        2790  +
impl crate::constrained::Constrained for crate::input::RecursiveShapesInput {
        2791  +
    type Unconstrained = crate::input::recursive_shapes_input::Builder;
 3093   2792   
}
 3094   2793   
 3095   2794   
/* StructureGenerator.kt:197 */
 3096   2795   
#[allow(missing_docs)] // documentation missing in model
 3097   2796   
/* RustType.kt:534 */
 3098   2797   
#[derive(
 3099   2798   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3100   2799   
)]
 3101         -
pub /* StructureGenerator.kt:201 */ struct JsonTimestampsInput {
        2800  +
pub /* StructureGenerator.kt:201 */ struct JsonListsInput {
 3102   2801   
    /* StructureGenerator.kt:231 */
 3103   2802   
    #[allow(missing_docs)] // documentation missing in model
 3104         -
    pub normal: ::std::option::Option<::aws_smithy_types::DateTime>,
        2803  +
    pub string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
 3105   2804   
    /* StructureGenerator.kt:231 */
 3106   2805   
    #[allow(missing_docs)] // documentation missing in model
 3107         -
    pub date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
        2806  +
    pub string_set: ::std::option::Option<crate::model::StringSet>,
 3108   2807   
    /* StructureGenerator.kt:231 */
 3109   2808   
    #[allow(missing_docs)] // documentation missing in model
 3110         -
    pub date_time_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
        2809  +
    pub integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
 3111   2810   
    /* StructureGenerator.kt:231 */
 3112   2811   
    #[allow(missing_docs)] // documentation missing in model
 3113         -
    pub epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
        2812  +
    pub boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
 3114   2813   
    /* StructureGenerator.kt:231 */
 3115   2814   
    #[allow(missing_docs)] // documentation missing in model
 3116         -
    pub epoch_seconds_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
        2815  +
    pub timestamp_list: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
 3117   2816   
    /* StructureGenerator.kt:231 */
 3118   2817   
    #[allow(missing_docs)] // documentation missing in model
 3119         -
    pub http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
        2818  +
    pub enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
 3120   2819   
    /* StructureGenerator.kt:231 */
 3121   2820   
    #[allow(missing_docs)] // documentation missing in model
 3122         -
    pub http_date_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
        2821  +
    pub int_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
        2822  +
    /// /* StructureGenerator.kt:231 */A list of lists of strings.
        2823  +
    pub nested_string_list:
        2824  +
        ::std::option::Option<::std::vec::Vec<::std::vec::Vec<::std::string::String>>>,
        2825  +
    /* StructureGenerator.kt:231 */
        2826  +
    #[allow(missing_docs)] // documentation missing in model
        2827  +
    pub structure_list: ::std::option::Option<::std::vec::Vec<crate::model::StructureListMember>>,
 3123   2828   
    /* StructureGenerator.kt:201 */
 3124   2829   
}
 3125   2830   
/* StructureGenerator.kt:135 */
 3126         -
impl JsonTimestampsInput {
        2831  +
impl JsonListsInput {
 3127   2832   
    /* StructureGenerator.kt:231 */
 3128   2833   
    #[allow(missing_docs)] // documentation missing in model
 3129   2834   
                           /* StructureGenerator.kt:166 */
 3130         -
    pub fn normal(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 3131         -
        /* StructureGenerator.kt:170 */
 3132         -
        self.normal.as_ref()
        2835  +
    pub fn string_list(&self) -> ::std::option::Option<&[::std::string::String]> {
        2836  +
        /* StructureGenerator.kt:169 */
        2837  +
        self.string_list.as_deref()
 3133   2838   
        /* StructureGenerator.kt:166 */
 3134   2839   
    }
 3135   2840   
    /* StructureGenerator.kt:231 */
 3136   2841   
    #[allow(missing_docs)] // documentation missing in model
 3137   2842   
                           /* StructureGenerator.kt:166 */
 3138         -
    pub fn date_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
        2843  +
    pub fn string_set(&self) -> ::std::option::Option<&crate::model::StringSet> {
 3139   2844   
        /* StructureGenerator.kt:170 */
 3140         -
        self.date_time.as_ref()
        2845  +
        self.string_set.as_ref()
 3141   2846   
        /* StructureGenerator.kt:166 */
 3142   2847   
    }
 3143   2848   
    /* StructureGenerator.kt:231 */
 3144   2849   
    #[allow(missing_docs)] // documentation missing in model
 3145   2850   
                           /* StructureGenerator.kt:166 */
 3146         -
    pub fn date_time_on_target(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 3147         -
        /* StructureGenerator.kt:170 */
 3148         -
        self.date_time_on_target.as_ref()
        2851  +
    pub fn integer_list(&self) -> ::std::option::Option<&[i32]> {
        2852  +
        /* StructureGenerator.kt:169 */
        2853  +
        self.integer_list.as_deref()
 3149   2854   
        /* StructureGenerator.kt:166 */
 3150   2855   
    }
 3151   2856   
    /* StructureGenerator.kt:231 */
 3152   2857   
    #[allow(missing_docs)] // documentation missing in model
 3153   2858   
                           /* StructureGenerator.kt:166 */
 3154         -
    pub fn epoch_seconds(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 3155         -
        /* StructureGenerator.kt:170 */
 3156         -
        self.epoch_seconds.as_ref()
        2859  +
    pub fn boolean_list(&self) -> ::std::option::Option<&[bool]> {
        2860  +
        /* StructureGenerator.kt:169 */
        2861  +
        self.boolean_list.as_deref()
 3157   2862   
        /* StructureGenerator.kt:166 */
 3158   2863   
    }
 3159   2864   
    /* StructureGenerator.kt:231 */
 3160   2865   
    #[allow(missing_docs)] // documentation missing in model
 3161   2866   
                           /* StructureGenerator.kt:166 */
 3162         -
    pub fn epoch_seconds_on_target(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 3163         -
        /* StructureGenerator.kt:170 */
 3164         -
        self.epoch_seconds_on_target.as_ref()
        2867  +
    pub fn timestamp_list(&self) -> ::std::option::Option<&[::aws_smithy_types::DateTime]> {
        2868  +
        /* StructureGenerator.kt:169 */
        2869  +
        self.timestamp_list.as_deref()
 3165   2870   
        /* StructureGenerator.kt:166 */
 3166   2871   
    }
 3167   2872   
    /* StructureGenerator.kt:231 */
 3168   2873   
    #[allow(missing_docs)] // documentation missing in model
 3169   2874   
                           /* StructureGenerator.kt:166 */
 3170         -
    pub fn http_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 3171         -
        /* StructureGenerator.kt:170 */
 3172         -
        self.http_date.as_ref()
        2875  +
    pub fn enum_list(&self) -> ::std::option::Option<&[crate::model::FooEnum]> {
        2876  +
        /* StructureGenerator.kt:169 */
        2877  +
        self.enum_list.as_deref()
 3173   2878   
        /* StructureGenerator.kt:166 */
 3174   2879   
    }
 3175   2880   
    /* StructureGenerator.kt:231 */
 3176   2881   
    #[allow(missing_docs)] // documentation missing in model
 3177   2882   
                           /* StructureGenerator.kt:166 */
 3178         -
    pub fn http_date_on_target(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 3179         -
        /* StructureGenerator.kt:170 */
 3180         -
        self.http_date_on_target.as_ref()
        2883  +
    pub fn int_enum_list(&self) -> ::std::option::Option<&[i32]> {
        2884  +
        /* StructureGenerator.kt:169 */
        2885  +
        self.int_enum_list.as_deref()
        2886  +
        /* StructureGenerator.kt:166 */
        2887  +
    }
        2888  +
    /// /* StructureGenerator.kt:231 */A list of lists of strings.
        2889  +
    /* StructureGenerator.kt:166 */
        2890  +
    pub fn nested_string_list(
        2891  +
        &self,
        2892  +
    ) -> ::std::option::Option<&[::std::vec::Vec<::std::string::String>]> {
        2893  +
        /* StructureGenerator.kt:169 */
        2894  +
        self.nested_string_list.as_deref()
        2895  +
        /* StructureGenerator.kt:166 */
        2896  +
    }
        2897  +
    /* StructureGenerator.kt:231 */
        2898  +
    #[allow(missing_docs)] // documentation missing in model
        2899  +
                           /* StructureGenerator.kt:166 */
        2900  +
    pub fn structure_list(&self) -> ::std::option::Option<&[crate::model::StructureListMember]> {
        2901  +
        /* StructureGenerator.kt:169 */
        2902  +
        self.structure_list.as_deref()
 3181   2903   
        /* StructureGenerator.kt:166 */
 3182   2904   
    }
 3183   2905   
    /* StructureGenerator.kt:135 */
 3184   2906   
}
 3185   2907   
/* ServerCodegenVisitor.kt:356 */
 3186         -
impl JsonTimestampsInput {
 3187         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonTimestampsInput`](crate::input::JsonTimestampsInput).
        2908  +
impl JsonListsInput {
        2909  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonListsInput`](crate::input::JsonListsInput).
 3188   2910   
    /* ServerBuilderGenerator.kt:295 */
 3189         -
    pub fn builder() -> crate::input::json_timestamps_input::Builder {
        2911  +
    pub fn builder() -> crate::input::json_lists_input::Builder {
 3190   2912   
        /* ServerBuilderGenerator.kt:296 */
 3191         -
        crate::input::json_timestamps_input::Builder::default()
        2913  +
        crate::input::json_lists_input::Builder::default()
 3192   2914   
        /* ServerBuilderGenerator.kt:295 */
 3193   2915   
    }
 3194   2916   
    /* ServerCodegenVisitor.kt:356 */
 3195   2917   
}
 3196   2918   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3197         -
impl crate::constrained::Constrained for crate::input::JsonTimestampsInput {
 3198         -
    type Unconstrained = crate::input::json_timestamps_input::Builder;
        2919  +
impl crate::constrained::Constrained for crate::input::JsonListsInput {
        2920  +
    type Unconstrained = crate::input::json_lists_input::Builder;
 3199   2921   
}
 3200   2922   
 3201   2923   
/* StructureGenerator.kt:197 */
 3202   2924   
#[allow(missing_docs)] // documentation missing in model
 3203   2925   
/* RustType.kt:534 */
 3204         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 3205         -
pub /* StructureGenerator.kt:201 */ struct SimpleScalarPropertiesInput {
 3206         -
    /* StructureGenerator.kt:231 */
 3207         -
    #[allow(missing_docs)] // documentation missing in model
 3208         -
    pub foo: ::std::option::Option<::std::string::String>,
        2926  +
#[derive(
        2927  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        2928  +
)]
        2929  +
pub /* StructureGenerator.kt:201 */ struct SparseJsonListsInput {
 3209   2930   
    /* StructureGenerator.kt:231 */
 3210   2931   
    #[allow(missing_docs)] // documentation missing in model
 3211         -
    pub string_value: ::std::option::Option<::std::string::String>,
        2932  +
    pub sparse_string_list:
        2933  +
        ::std::option::Option<::std::vec::Vec<::std::option::Option<::std::string::String>>>,
 3212   2934   
    /* StructureGenerator.kt:231 */
 3213   2935   
    #[allow(missing_docs)] // documentation missing in model
 3214         -
    pub true_boolean_value: ::std::option::Option<bool>,
        2936  +
    pub sparse_short_list: ::std::option::Option<::std::vec::Vec<::std::option::Option<i16>>>,
        2937  +
    /* StructureGenerator.kt:201 */
        2938  +
}
        2939  +
/* StructureGenerator.kt:135 */
        2940  +
impl SparseJsonListsInput {
 3215   2941   
    /* StructureGenerator.kt:231 */
 3216   2942   
    #[allow(missing_docs)] // documentation missing in model
 3217         -
    pub false_boolean_value: ::std::option::Option<bool>,
        2943  +
                           /* StructureGenerator.kt:166 */
        2944  +
    pub fn sparse_string_list(
        2945  +
        &self,
        2946  +
    ) -> ::std::option::Option<&[::std::option::Option<::std::string::String>]> {
        2947  +
        /* StructureGenerator.kt:169 */
        2948  +
        self.sparse_string_list.as_deref()
        2949  +
        /* StructureGenerator.kt:166 */
        2950  +
    }
 3218   2951   
    /* StructureGenerator.kt:231 */
 3219   2952   
    #[allow(missing_docs)] // documentation missing in model
 3220         -
    pub byte_value: ::std::option::Option<i8>,
        2953  +
                           /* StructureGenerator.kt:166 */
        2954  +
    pub fn sparse_short_list(&self) -> ::std::option::Option<&[::std::option::Option<i16>]> {
        2955  +
        /* StructureGenerator.kt:169 */
        2956  +
        self.sparse_short_list.as_deref()
        2957  +
        /* StructureGenerator.kt:166 */
        2958  +
    }
        2959  +
    /* StructureGenerator.kt:135 */
        2960  +
}
        2961  +
/* ServerCodegenVisitor.kt:356 */
        2962  +
impl SparseJsonListsInput {
        2963  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`SparseJsonListsInput`](crate::input::SparseJsonListsInput).
        2964  +
    /* ServerBuilderGenerator.kt:295 */
        2965  +
    pub fn builder() -> crate::input::sparse_json_lists_input::Builder {
        2966  +
        /* ServerBuilderGenerator.kt:296 */
        2967  +
        crate::input::sparse_json_lists_input::Builder::default()
        2968  +
        /* ServerBuilderGenerator.kt:295 */
        2969  +
    }
        2970  +
    /* ServerCodegenVisitor.kt:356 */
        2971  +
}
        2972  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        2973  +
impl crate::constrained::Constrained for crate::input::SparseJsonListsInput {
        2974  +
    type Unconstrained = crate::input::sparse_json_lists_input::Builder;
        2975  +
}
        2976  +
        2977  +
/* StructureGenerator.kt:197 */
        2978  +
#[allow(missing_docs)] // documentation missing in model
        2979  +
/* RustType.kt:534 */
        2980  +
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        2981  +
pub /* StructureGenerator.kt:201 */ struct JsonMapsInput {
 3221   2982   
    /* StructureGenerator.kt:231 */
 3222   2983   
    #[allow(missing_docs)] // documentation missing in model
 3223         -
    pub short_value: ::std::option::Option<i16>,
        2984  +
    pub dense_struct_map: ::std::option::Option<
        2985  +
        ::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
        2986  +
    >,
 3224   2987   
    /* StructureGenerator.kt:231 */
 3225   2988   
    #[allow(missing_docs)] // documentation missing in model
 3226         -
    pub integer_value: ::std::option::Option<i32>,
        2989  +
    pub dense_number_map:
        2990  +
        ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
 3227   2991   
    /* StructureGenerator.kt:231 */
 3228   2992   
    #[allow(missing_docs)] // documentation missing in model
 3229         -
    pub long_value: ::std::option::Option<i64>,
        2993  +
    pub dense_boolean_map:
        2994  +
        ::std::option::Option<::std::collections::HashMap<::std::string::String, bool>>,
 3230   2995   
    /* StructureGenerator.kt:231 */
 3231   2996   
    #[allow(missing_docs)] // documentation missing in model
 3232         -
    pub float_value: ::std::option::Option<f32>,
        2997  +
    pub dense_string_map: ::std::option::Option<
        2998  +
        ::std::collections::HashMap<::std::string::String, ::std::string::String>,
        2999  +
    >,
 3233   3000   
    /* StructureGenerator.kt:231 */
 3234   3001   
    #[allow(missing_docs)] // documentation missing in model
 3235         -
    pub double_value: ::std::option::Option<f64>,
        3002  +
    pub dense_set_map: ::std::option::Option<
        3003  +
        ::std::collections::HashMap<::std::string::String, crate::model::StringSet>,
        3004  +
    >,
 3236   3005   
    /* StructureGenerator.kt:201 */
 3237   3006   
}
 3238   3007   
/* StructureGenerator.kt:135 */
 3239         -
impl SimpleScalarPropertiesInput {
        3008  +
impl JsonMapsInput {
 3240   3009   
    /* StructureGenerator.kt:231 */
 3241   3010   
    #[allow(missing_docs)] // documentation missing in model
 3242   3011   
                           /* StructureGenerator.kt:166 */
 3243         -
    pub fn foo(&self) -> ::std::option::Option<&str> {
 3244         -
        /* StructureGenerator.kt:169 */
 3245         -
        self.foo.as_deref()
        3012  +
    pub fn dense_struct_map(
        3013  +
        &self,
        3014  +
    ) -> ::std::option::Option<
        3015  +
        &::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
        3016  +
    > {
        3017  +
        /* StructureGenerator.kt:170 */
        3018  +
        self.dense_struct_map.as_ref()
 3246   3019   
        /* StructureGenerator.kt:166 */
 3247   3020   
    }
 3248   3021   
    /* StructureGenerator.kt:231 */
 3249   3022   
    #[allow(missing_docs)] // documentation missing in model
 3250   3023   
                           /* StructureGenerator.kt:166 */
 3251         -
    pub fn string_value(&self) -> ::std::option::Option<&str> {
 3252         -
        /* StructureGenerator.kt:169 */
 3253         -
        self.string_value.as_deref()
        3024  +
    pub fn dense_number_map(
        3025  +
        &self,
        3026  +
    ) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, i32>> {
        3027  +
        /* StructureGenerator.kt:170 */
        3028  +
        self.dense_number_map.as_ref()
 3254   3029   
        /* StructureGenerator.kt:166 */
 3255   3030   
    }
 3256   3031   
    /* StructureGenerator.kt:231 */
 3257   3032   
    #[allow(missing_docs)] // documentation missing in model
 3258   3033   
                           /* StructureGenerator.kt:166 */
 3259         -
    pub fn true_boolean_value(&self) -> ::std::option::Option<bool> {
 3260         -
        /* StructureGenerator.kt:168 */
 3261         -
        self.true_boolean_value
        3034  +
    pub fn dense_boolean_map(
        3035  +
        &self,
        3036  +
    ) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, bool>> {
        3037  +
        /* StructureGenerator.kt:170 */
        3038  +
        self.dense_boolean_map.as_ref()
 3262   3039   
        /* StructureGenerator.kt:166 */
 3263   3040   
    }
 3264   3041   
    /* StructureGenerator.kt:231 */
 3265   3042   
    #[allow(missing_docs)] // documentation missing in model
 3266   3043   
                           /* StructureGenerator.kt:166 */
 3267         -
    pub fn false_boolean_value(&self) -> ::std::option::Option<bool> {
 3268         -
        /* StructureGenerator.kt:168 */
 3269         -
        self.false_boolean_value
        3044  +
    pub fn dense_string_map(
        3045  +
        &self,
        3046  +
    ) -> ::std::option::Option<
        3047  +
        &::std::collections::HashMap<::std::string::String, ::std::string::String>,
        3048  +
    > {
        3049  +
        /* StructureGenerator.kt:170 */
        3050  +
        self.dense_string_map.as_ref()
 3270   3051   
        /* StructureGenerator.kt:166 */
 3271   3052   
    }
 3272   3053   
    /* StructureGenerator.kt:231 */
 3273   3054   
    #[allow(missing_docs)] // documentation missing in model
 3274   3055   
                           /* StructureGenerator.kt:166 */
 3275         -
    pub fn byte_value(&self) -> ::std::option::Option<i8> {
 3276         -
        /* StructureGenerator.kt:168 */
 3277         -
        self.byte_value
 3278         -
        /* StructureGenerator.kt:166 */
        3056  +
    pub fn dense_set_map(
        3057  +
        &self,
        3058  +
    ) -> ::std::option::Option<
        3059  +
        &::std::collections::HashMap<::std::string::String, crate::model::StringSet>,
        3060  +
    > {
        3061  +
        /* StructureGenerator.kt:170 */
        3062  +
        self.dense_set_map.as_ref()
        3063  +
        /* StructureGenerator.kt:166 */
        3064  +
    }
        3065  +
    /* StructureGenerator.kt:135 */
        3066  +
}
        3067  +
/* ServerCodegenVisitor.kt:356 */
        3068  +
impl JsonMapsInput {
        3069  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonMapsInput`](crate::input::JsonMapsInput).
        3070  +
    /* ServerBuilderGenerator.kt:295 */
        3071  +
    pub fn builder() -> crate::input::json_maps_input::Builder {
        3072  +
        /* ServerBuilderGenerator.kt:296 */
        3073  +
        crate::input::json_maps_input::Builder::default()
        3074  +
        /* ServerBuilderGenerator.kt:295 */
 3279   3075   
    }
        3076  +
    /* ServerCodegenVisitor.kt:356 */
        3077  +
}
        3078  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        3079  +
impl crate::constrained::Constrained for crate::input::JsonMapsInput {
        3080  +
    type Unconstrained = crate::input::json_maps_input::Builder;
        3081  +
}
        3082  +
        3083  +
/* StructureGenerator.kt:197 */
        3084  +
#[allow(missing_docs)] // documentation missing in model
        3085  +
/* RustType.kt:534 */
        3086  +
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        3087  +
pub /* StructureGenerator.kt:201 */ struct SparseJsonMapsInput {
        3088  +
    /* StructureGenerator.kt:231 */
        3089  +
    #[allow(missing_docs)] // documentation missing in model
        3090  +
    pub sparse_struct_map: ::std::option::Option<
        3091  +
        ::std::collections::HashMap<
        3092  +
            ::std::string::String,
        3093  +
            ::std::option::Option<crate::model::GreetingStruct>,
        3094  +
        >,
        3095  +
    >,
        3096  +
    /* StructureGenerator.kt:231 */
        3097  +
    #[allow(missing_docs)] // documentation missing in model
        3098  +
    pub sparse_number_map: ::std::option::Option<
        3099  +
        ::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
        3100  +
    >,
        3101  +
    /* StructureGenerator.kt:231 */
        3102  +
    #[allow(missing_docs)] // documentation missing in model
        3103  +
    pub sparse_boolean_map: ::std::option::Option<
        3104  +
        ::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
        3105  +
    >,
        3106  +
    /* StructureGenerator.kt:231 */
        3107  +
    #[allow(missing_docs)] // documentation missing in model
        3108  +
    pub sparse_string_map: ::std::option::Option<
        3109  +
        ::std::collections::HashMap<
        3110  +
            ::std::string::String,
        3111  +
            ::std::option::Option<::std::string::String>,
        3112  +
        >,
        3113  +
    >,
        3114  +
    /* StructureGenerator.kt:231 */
        3115  +
    #[allow(missing_docs)] // documentation missing in model
        3116  +
    pub sparse_set_map: ::std::option::Option<
        3117  +
        ::std::collections::HashMap<
        3118  +
            ::std::string::String,
        3119  +
            ::std::option::Option<crate::model::StringSet>,
        3120  +
        >,
        3121  +
    >,
        3122  +
    /* StructureGenerator.kt:201 */
        3123  +
}
        3124  +
/* StructureGenerator.kt:135 */
        3125  +
impl SparseJsonMapsInput {
 3280   3126   
    /* StructureGenerator.kt:231 */
 3281   3127   
    #[allow(missing_docs)] // documentation missing in model
 3282   3128   
                           /* StructureGenerator.kt:166 */
 3283         -
    pub fn short_value(&self) -> ::std::option::Option<i16> {
 3284         -
        /* StructureGenerator.kt:168 */
 3285         -
        self.short_value
        3129  +
    pub fn sparse_struct_map(
        3130  +
        &self,
        3131  +
    ) -> ::std::option::Option<
        3132  +
        &::std::collections::HashMap<
        3133  +
            ::std::string::String,
        3134  +
            ::std::option::Option<crate::model::GreetingStruct>,
        3135  +
        >,
        3136  +
    > {
        3137  +
        /* StructureGenerator.kt:170 */
        3138  +
        self.sparse_struct_map.as_ref()
 3286   3139   
        /* StructureGenerator.kt:166 */
 3287   3140   
    }
 3288   3141   
    /* StructureGenerator.kt:231 */
 3289   3142   
    #[allow(missing_docs)] // documentation missing in model
 3290   3143   
                           /* StructureGenerator.kt:166 */
 3291         -
    pub fn integer_value(&self) -> ::std::option::Option<i32> {
 3292         -
        /* StructureGenerator.kt:168 */
 3293         -
        self.integer_value
        3144  +
    pub fn sparse_number_map(
        3145  +
        &self,
        3146  +
    ) -> ::std::option::Option<
        3147  +
        &::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
        3148  +
    > {
        3149  +
        /* StructureGenerator.kt:170 */
        3150  +
        self.sparse_number_map.as_ref()
 3294   3151   
        /* StructureGenerator.kt:166 */
 3295   3152   
    }
 3296   3153   
    /* StructureGenerator.kt:231 */
 3297   3154   
    #[allow(missing_docs)] // documentation missing in model
 3298   3155   
                           /* StructureGenerator.kt:166 */
 3299         -
    pub fn long_value(&self) -> ::std::option::Option<i64> {
 3300         -
        /* StructureGenerator.kt:168 */
 3301         -
        self.long_value
        3156  +
    pub fn sparse_boolean_map(
        3157  +
        &self,
        3158  +
    ) -> ::std::option::Option<
        3159  +
        &::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
        3160  +
    > {
        3161  +
        /* StructureGenerator.kt:170 */
        3162  +
        self.sparse_boolean_map.as_ref()
 3302   3163   
        /* StructureGenerator.kt:166 */
 3303   3164   
    }
 3304   3165   
    /* StructureGenerator.kt:231 */
 3305   3166   
    #[allow(missing_docs)] // documentation missing in model
 3306   3167   
                           /* StructureGenerator.kt:166 */
 3307         -
    pub fn float_value(&self) -> ::std::option::Option<f32> {
 3308         -
        /* StructureGenerator.kt:168 */
 3309         -
        self.float_value
        3168  +
    pub fn sparse_string_map(
        3169  +
        &self,
        3170  +
    ) -> ::std::option::Option<
        3171  +
        &::std::collections::HashMap<
        3172  +
            ::std::string::String,
        3173  +
            ::std::option::Option<::std::string::String>,
        3174  +
        >,
        3175  +
    > {
        3176  +
        /* StructureGenerator.kt:170 */
        3177  +
        self.sparse_string_map.as_ref()
 3310   3178   
        /* StructureGenerator.kt:166 */
 3311   3179   
    }
 3312   3180   
    /* StructureGenerator.kt:231 */
 3313   3181   
    #[allow(missing_docs)] // documentation missing in model
 3314   3182   
                           /* StructureGenerator.kt:166 */
 3315         -
    pub fn double_value(&self) -> ::std::option::Option<f64> {
 3316         -
        /* StructureGenerator.kt:168 */
 3317         -
        self.double_value
        3183  +
    pub fn sparse_set_map(
        3184  +
        &self,
        3185  +
    ) -> ::std::option::Option<
        3186  +
        &::std::collections::HashMap<
        3187  +
            ::std::string::String,
        3188  +
            ::std::option::Option<crate::model::StringSet>,
        3189  +
        >,
        3190  +
    > {
        3191  +
        /* StructureGenerator.kt:170 */
        3192  +
        self.sparse_set_map.as_ref()
 3318   3193   
        /* StructureGenerator.kt:166 */
 3319   3194   
    }
 3320   3195   
    /* StructureGenerator.kt:135 */
 3321   3196   
}
 3322   3197   
/* ServerCodegenVisitor.kt:356 */
 3323         -
impl SimpleScalarPropertiesInput {
 3324         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`SimpleScalarPropertiesInput`](crate::input::SimpleScalarPropertiesInput).
        3198  +
impl SparseJsonMapsInput {
        3199  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`SparseJsonMapsInput`](crate::input::SparseJsonMapsInput).
 3325   3200   
    /* ServerBuilderGenerator.kt:295 */
 3326         -
    pub fn builder() -> crate::input::simple_scalar_properties_input::Builder {
        3201  +
    pub fn builder() -> crate::input::sparse_json_maps_input::Builder {
 3327   3202   
        /* ServerBuilderGenerator.kt:296 */
 3328         -
        crate::input::simple_scalar_properties_input::Builder::default()
        3203  +
        crate::input::sparse_json_maps_input::Builder::default()
 3329   3204   
        /* ServerBuilderGenerator.kt:295 */
 3330   3205   
    }
 3331   3206   
    /* ServerCodegenVisitor.kt:356 */
 3332   3207   
}
 3333   3208   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3334         -
impl crate::constrained::Constrained for crate::input::SimpleScalarPropertiesInput {
 3335         -
    type Unconstrained = crate::input::simple_scalar_properties_input::Builder;
        3209  +
impl crate::constrained::Constrained for crate::input::SparseJsonMapsInput {
        3210  +
    type Unconstrained = crate::input::sparse_json_maps_input::Builder;
 3336   3211   
}
 3337   3212   
 3338   3213   
/* StructureGenerator.kt:197 */
 3339   3214   
#[allow(missing_docs)] // documentation missing in model
 3340   3215   
/* RustType.kt:534 */
 3341   3216   
#[derive(
 3342   3217   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3343   3218   
)]
 3344         -
pub /* StructureGenerator.kt:201 */ struct GreetingWithErrorsInput {/* StructureGenerator.kt:201 */}
        3219  +
pub /* StructureGenerator.kt:201 */ struct JsonBlobsInput {
        3220  +
    /* StructureGenerator.kt:231 */
        3221  +
    #[allow(missing_docs)] // documentation missing in model
        3222  +
    pub data: ::std::option::Option<::aws_smithy_types::Blob>,
        3223  +
    /* StructureGenerator.kt:201 */
        3224  +
}
        3225  +
/* StructureGenerator.kt:135 */
        3226  +
impl JsonBlobsInput {
        3227  +
    /* StructureGenerator.kt:231 */
        3228  +
    #[allow(missing_docs)] // documentation missing in model
        3229  +
                           /* StructureGenerator.kt:166 */
        3230  +
    pub fn data(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
        3231  +
        /* StructureGenerator.kt:170 */
        3232  +
        self.data.as_ref()
        3233  +
        /* StructureGenerator.kt:166 */
        3234  +
    }
        3235  +
    /* StructureGenerator.kt:135 */
        3236  +
}
 3345   3237   
/* ServerCodegenVisitor.kt:356 */
 3346         -
impl GreetingWithErrorsInput {
 3347         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`GreetingWithErrorsInput`](crate::input::GreetingWithErrorsInput).
        3238  +
impl JsonBlobsInput {
        3239  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonBlobsInput`](crate::input::JsonBlobsInput).
 3348   3240   
    /* ServerBuilderGenerator.kt:295 */
 3349         -
    pub fn builder() -> crate::input::greeting_with_errors_input::Builder {
        3241  +
    pub fn builder() -> crate::input::json_blobs_input::Builder {
 3350   3242   
        /* ServerBuilderGenerator.kt:296 */
 3351         -
        crate::input::greeting_with_errors_input::Builder::default()
        3243  +
        crate::input::json_blobs_input::Builder::default()
 3352   3244   
        /* ServerBuilderGenerator.kt:295 */
 3353   3245   
    }
 3354   3246   
    /* ServerCodegenVisitor.kt:356 */
 3355   3247   
}
 3356   3248   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3357         -
impl crate::constrained::Constrained for crate::input::GreetingWithErrorsInput {
 3358         -
    type Unconstrained = crate::input::greeting_with_errors_input::Builder;
        3249  +
impl crate::constrained::Constrained for crate::input::JsonBlobsInput {
        3250  +
    type Unconstrained = crate::input::json_blobs_input::Builder;
 3359   3251   
}
 3360   3252   
 3361   3253   
/* StructureGenerator.kt:197 */
 3362   3254   
#[allow(missing_docs)] // documentation missing in model
 3363   3255   
/* RustType.kt:534 */
 3364         -
#[derive(::std::fmt::Debug)]
 3365         -
pub /* StructureGenerator.kt:201 */ struct StreamingTraitsWithMediaTypeInput {
        3256  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        3257  +
pub /* StructureGenerator.kt:201 */ struct DocumentTypeInput {
 3366   3258   
    /* StructureGenerator.kt:231 */
 3367   3259   
    #[allow(missing_docs)] // documentation missing in model
 3368         -
    pub foo: ::std::option::Option<::std::string::String>,
        3260  +
    pub string_value: ::std::option::Option<::std::string::String>,
 3369   3261   
    /* StructureGenerator.kt:231 */
 3370   3262   
    #[allow(missing_docs)] // documentation missing in model
 3371         -
    pub blob: ::aws_smithy_types::byte_stream::ByteStream,
        3263  +
    pub document_value: ::std::option::Option<::aws_smithy_types::Document>,
 3372   3264   
    /* StructureGenerator.kt:201 */
 3373   3265   
}
 3374   3266   
/* StructureGenerator.kt:135 */
 3375         -
impl StreamingTraitsWithMediaTypeInput {
        3267  +
impl DocumentTypeInput {
 3376   3268   
    /* StructureGenerator.kt:231 */
 3377   3269   
    #[allow(missing_docs)] // documentation missing in model
 3378   3270   
                           /* StructureGenerator.kt:166 */
 3379         -
    pub fn foo(&self) -> ::std::option::Option<&str> {
        3271  +
    pub fn string_value(&self) -> ::std::option::Option<&str> {
 3380   3272   
        /* StructureGenerator.kt:169 */
 3381         -
        self.foo.as_deref()
        3273  +
        self.string_value.as_deref()
 3382   3274   
        /* StructureGenerator.kt:166 */
 3383   3275   
    }
 3384   3276   
    /* StructureGenerator.kt:231 */
 3385   3277   
    #[allow(missing_docs)] // documentation missing in model
 3386   3278   
                           /* StructureGenerator.kt:166 */
 3387         -
    pub fn blob(&self) -> &::aws_smithy_types::byte_stream::ByteStream {
 3388         -
        /* StructureGenerator.kt:172 */
 3389         -
        &self.blob
        3279  +
    pub fn document_value(&self) -> ::std::option::Option<&::aws_smithy_types::Document> {
        3280  +
        /* StructureGenerator.kt:170 */
        3281  +
        self.document_value.as_ref()
 3390   3282   
        /* StructureGenerator.kt:166 */
 3391   3283   
    }
 3392   3284   
    /* StructureGenerator.kt:135 */
 3393   3285   
}
 3394   3286   
/* ServerCodegenVisitor.kt:356 */
 3395         -
impl StreamingTraitsWithMediaTypeInput {
 3396         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`StreamingTraitsWithMediaTypeInput`](crate::input::StreamingTraitsWithMediaTypeInput).
        3287  +
impl DocumentTypeInput {
        3288  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`DocumentTypeInput`](crate::input::DocumentTypeInput).
 3397   3289   
    /* ServerBuilderGenerator.kt:295 */
 3398         -
    pub fn builder() -> crate::input::streaming_traits_with_media_type_input::Builder {
        3290  +
    pub fn builder() -> crate::input::document_type_input::Builder {
 3399   3291   
        /* ServerBuilderGenerator.kt:296 */
 3400         -
        crate::input::streaming_traits_with_media_type_input::Builder::default()
        3292  +
        crate::input::document_type_input::Builder::default()
 3401   3293   
        /* ServerBuilderGenerator.kt:295 */
 3402   3294   
    }
 3403   3295   
    /* ServerCodegenVisitor.kt:356 */
 3404   3296   
}
 3405   3297   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3406         -
impl crate::constrained::Constrained for crate::input::StreamingTraitsWithMediaTypeInput {
 3407         -
    type Unconstrained = crate::input::streaming_traits_with_media_type_input::Builder;
        3298  +
impl crate::constrained::Constrained for crate::input::DocumentTypeInput {
        3299  +
    type Unconstrained = crate::input::document_type_input::Builder;
 3408   3300   
}
 3409   3301   
 3410   3302   
/* StructureGenerator.kt:197 */
 3411   3303   
#[allow(missing_docs)] // documentation missing in model
 3412   3304   
/* RustType.kt:534 */
 3413         -
#[derive(::std::fmt::Debug)]
 3414         -
pub /* StructureGenerator.kt:201 */ struct StreamingTraitsRequireLengthInput {
 3415         -
    /* StructureGenerator.kt:231 */
 3416         -
    #[allow(missing_docs)] // documentation missing in model
 3417         -
    pub foo: ::std::option::Option<::std::string::String>,
        3305  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        3306  +
pub /* StructureGenerator.kt:201 */ struct DocumentTypeAsPayloadInput {
 3418   3307   
    /* StructureGenerator.kt:231 */
 3419   3308   
    #[allow(missing_docs)] // documentation missing in model
 3420         -
    pub blob: ::aws_smithy_types::byte_stream::ByteStream,
        3309  +
    pub document_value: ::std::option::Option<::aws_smithy_types::Document>,
 3421   3310   
    /* StructureGenerator.kt:201 */
 3422   3311   
}
 3423   3312   
/* StructureGenerator.kt:135 */
 3424         -
impl StreamingTraitsRequireLengthInput {
 3425         -
    /* StructureGenerator.kt:231 */
 3426         -
    #[allow(missing_docs)] // documentation missing in model
 3427         -
                           /* StructureGenerator.kt:166 */
 3428         -
    pub fn foo(&self) -> ::std::option::Option<&str> {
 3429         -
        /* StructureGenerator.kt:169 */
 3430         -
        self.foo.as_deref()
 3431         -
        /* StructureGenerator.kt:166 */
 3432         -
    }
        3313  +
impl DocumentTypeAsPayloadInput {
 3433   3314   
    /* StructureGenerator.kt:231 */
 3434   3315   
    #[allow(missing_docs)] // documentation missing in model
 3435   3316   
                           /* StructureGenerator.kt:166 */
 3436         -
    pub fn blob(&self) -> &::aws_smithy_types::byte_stream::ByteStream {
 3437         -
        /* StructureGenerator.kt:172 */
 3438         -
        &self.blob
        3317  +
    pub fn document_value(&self) -> ::std::option::Option<&::aws_smithy_types::Document> {
        3318  +
        /* StructureGenerator.kt:170 */
        3319  +
        self.document_value.as_ref()
 3439   3320   
        /* StructureGenerator.kt:166 */
 3440   3321   
    }
 3441   3322   
    /* StructureGenerator.kt:135 */
 3442   3323   
}
 3443   3324   
/* ServerCodegenVisitor.kt:356 */
 3444         -
impl StreamingTraitsRequireLengthInput {
 3445         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`StreamingTraitsRequireLengthInput`](crate::input::StreamingTraitsRequireLengthInput).
        3325  +
impl DocumentTypeAsPayloadInput {
        3326  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`DocumentTypeAsPayloadInput`](crate::input::DocumentTypeAsPayloadInput).
 3446   3327   
    /* ServerBuilderGenerator.kt:295 */
 3447         -
    pub fn builder() -> crate::input::streaming_traits_require_length_input::Builder {
        3328  +
    pub fn builder() -> crate::input::document_type_as_payload_input::Builder {
 3448   3329   
        /* ServerBuilderGenerator.kt:296 */
 3449         -
        crate::input::streaming_traits_require_length_input::Builder::default()
        3330  +
        crate::input::document_type_as_payload_input::Builder::default()
 3450   3331   
        /* ServerBuilderGenerator.kt:295 */
 3451   3332   
    }
 3452   3333   
    /* ServerCodegenVisitor.kt:356 */
 3453   3334   
}
 3454   3335   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3455         -
impl crate::constrained::Constrained for crate::input::StreamingTraitsRequireLengthInput {
 3456         -
    type Unconstrained = crate::input::streaming_traits_require_length_input::Builder;
        3336  +
impl crate::constrained::Constrained for crate::input::DocumentTypeAsPayloadInput {
        3337  +
    type Unconstrained = crate::input::document_type_as_payload_input::Builder;
 3457   3338   
}
 3458   3339   
 3459   3340   
/* StructureGenerator.kt:197 */
 3460   3341   
#[allow(missing_docs)] // documentation missing in model
 3461   3342   
/* RustType.kt:534 */
 3462         -
#[derive(::std::fmt::Debug)]
 3463         -
pub /* StructureGenerator.kt:201 */ struct StreamingTraitsInput {
 3464         -
    /* StructureGenerator.kt:231 */
 3465         -
    #[allow(missing_docs)] // documentation missing in model
 3466         -
    pub foo: ::std::option::Option<::std::string::String>,
        3343  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        3344  +
pub /* StructureGenerator.kt:201 */ struct DocumentTypeAsMapValueInput {
 3467   3345   
    /* StructureGenerator.kt:231 */
 3468   3346   
    #[allow(missing_docs)] // documentation missing in model
 3469         -
    pub blob: ::aws_smithy_types::byte_stream::ByteStream,
        3347  +
    pub doc_valued_map: ::std::option::Option<
        3348  +
        ::std::collections::HashMap<::std::string::String, ::aws_smithy_types::Document>,
        3349  +
    >,
 3470   3350   
    /* StructureGenerator.kt:201 */
 3471   3351   
}
 3472   3352   
/* StructureGenerator.kt:135 */
 3473         -
impl StreamingTraitsInput {
        3353  +
impl DocumentTypeAsMapValueInput {
 3474   3354   
    /* StructureGenerator.kt:231 */
 3475   3355   
    #[allow(missing_docs)] // documentation missing in model
 3476   3356   
                           /* StructureGenerator.kt:166 */
 3477         -
    pub fn foo(&self) -> ::std::option::Option<&str> {
 3478         -
        /* StructureGenerator.kt:169 */
 3479         -
        self.foo.as_deref()
        3357  +
    pub fn doc_valued_map(
        3358  +
        &self,
        3359  +
    ) -> ::std::option::Option<
        3360  +
        &::std::collections::HashMap<::std::string::String, ::aws_smithy_types::Document>,
        3361  +
    > {
        3362  +
        /* StructureGenerator.kt:170 */
        3363  +
        self.doc_valued_map.as_ref()
 3480   3364   
        /* StructureGenerator.kt:166 */
 3481   3365   
    }
 3482         -
    /* StructureGenerator.kt:231 */
 3483         -
    #[allow(missing_docs)] // documentation missing in model
        3366  +
    /* StructureGenerator.kt:135 */
        3367  +
}
        3368  +
/* ServerCodegenVisitor.kt:356 */
        3369  +
impl DocumentTypeAsMapValueInput {
        3370  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`DocumentTypeAsMapValueInput`](crate::input::DocumentTypeAsMapValueInput).
        3371  +
    /* ServerBuilderGenerator.kt:295 */
        3372  +
    pub fn builder() -> crate::input::document_type_as_map_value_input::Builder {
        3373  +
        /* ServerBuilderGenerator.kt:296 */
        3374  +
        crate::input::document_type_as_map_value_input::Builder::default()
        3375  +
        /* ServerBuilderGenerator.kt:295 */
        3376  +
    }
        3377  +
    /* ServerCodegenVisitor.kt:356 */
        3378  +
}
        3379  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        3380  +
impl crate::constrained::Constrained for crate::input::DocumentTypeAsMapValueInput {
        3381  +
    type Unconstrained = crate::input::document_type_as_map_value_input::Builder;
        3382  +
}
        3383  +
        3384  +
/// /* StructureGenerator.kt:197 */A shared structure that contains a single union member.
        3385  +
/* RustType.kt:534 */
        3386  +
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        3387  +
pub /* StructureGenerator.kt:201 */ struct JsonUnionsInput {
        3388  +
    /// /* StructureGenerator.kt:231 */A union with a representative set of types for members.
        3389  +
    pub contents: ::std::option::Option<crate::model::MyUnion>,
        3390  +
    /* StructureGenerator.kt:201 */
        3391  +
}
        3392  +
/* StructureGenerator.kt:135 */
        3393  +
impl JsonUnionsInput {
        3394  +
    /// /* StructureGenerator.kt:231 */A union with a representative set of types for members.
 3484   3395   
    /* StructureGenerator.kt:166 */
 3485         -
    pub fn blob(&self) -> &::aws_smithy_types::byte_stream::ByteStream {
 3486         -
        /* StructureGenerator.kt:172 */
 3487         -
        &self.blob
        3396  +
    pub fn contents(&self) -> ::std::option::Option<&crate::model::MyUnion> {
        3397  +
        /* StructureGenerator.kt:170 */
        3398  +
        self.contents.as_ref()
 3488   3399   
        /* StructureGenerator.kt:166 */
 3489   3400   
    }
 3490   3401   
    /* StructureGenerator.kt:135 */
 3491   3402   
}
 3492   3403   
/* ServerCodegenVisitor.kt:356 */
 3493         -
impl StreamingTraitsInput {
 3494         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`StreamingTraitsInput`](crate::input::StreamingTraitsInput).
        3404  +
impl JsonUnionsInput {
        3405  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`JsonUnionsInput`](crate::input::JsonUnionsInput).
 3495   3406   
    /* ServerBuilderGenerator.kt:295 */
 3496         -
    pub fn builder() -> crate::input::streaming_traits_input::Builder {
        3407  +
    pub fn builder() -> crate::input::json_unions_input::Builder {
 3497   3408   
        /* ServerBuilderGenerator.kt:296 */
 3498         -
        crate::input::streaming_traits_input::Builder::default()
        3409  +
        crate::input::json_unions_input::Builder::default()
 3499   3410   
        /* ServerBuilderGenerator.kt:295 */
 3500   3411   
    }
 3501   3412   
    /* ServerCodegenVisitor.kt:356 */
 3502   3413   
}
 3503   3414   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3504         -
impl crate::constrained::Constrained for crate::input::StreamingTraitsInput {
 3505         -
    type Unconstrained = crate::input::streaming_traits_input::Builder;
        3415  +
impl crate::constrained::Constrained for crate::input::JsonUnionsInput {
        3416  +
    type Unconstrained = crate::input::json_unions_input::Builder;
 3506   3417   
}
 3507   3418   
 3508   3419   
/* StructureGenerator.kt:197 */
 3509   3420   
#[allow(missing_docs)] // documentation missing in model
 3510   3421   
/* RustType.kt:534 */
 3511   3422   
#[derive(
 3512   3423   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3513   3424   
)]
 3514         -
pub /* StructureGenerator.kt:201 */ struct ResponseCodeHttpFallbackInput {/* StructureGenerator.kt:201 */}
        3425  +
pub /* StructureGenerator.kt:201 */ struct PostPlayerActionInput {
        3426  +
    /* StructureGenerator.kt:231 */
        3427  +
    #[allow(missing_docs)] // documentation missing in model
        3428  +
    pub action: ::std::option::Option<crate::model::PlayerAction>,
        3429  +
    /* StructureGenerator.kt:201 */
        3430  +
}
        3431  +
/* StructureGenerator.kt:135 */
        3432  +
impl PostPlayerActionInput {
        3433  +
    /* StructureGenerator.kt:231 */
        3434  +
    #[allow(missing_docs)] // documentation missing in model
        3435  +
                           /* StructureGenerator.kt:166 */
        3436  +
    pub fn action(&self) -> ::std::option::Option<&crate::model::PlayerAction> {
        3437  +
        /* StructureGenerator.kt:170 */
        3438  +
        self.action.as_ref()
        3439  +
        /* StructureGenerator.kt:166 */
        3440  +
    }
        3441  +
    /* StructureGenerator.kt:135 */
        3442  +
}
 3515   3443   
/* ServerCodegenVisitor.kt:356 */
 3516         -
impl ResponseCodeHttpFallbackInput {
 3517         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`ResponseCodeHttpFallbackInput`](crate::input::ResponseCodeHttpFallbackInput).
        3444  +
impl PostPlayerActionInput {
        3445  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`PostPlayerActionInput`](crate::input::PostPlayerActionInput).
 3518   3446   
    /* ServerBuilderGenerator.kt:295 */
 3519         -
    pub fn builder() -> crate::input::response_code_http_fallback_input::Builder {
        3447  +
    pub fn builder() -> crate::input::post_player_action_input::Builder {
 3520   3448   
        /* ServerBuilderGenerator.kt:296 */
 3521         -
        crate::input::response_code_http_fallback_input::Builder::default()
        3449  +
        crate::input::post_player_action_input::Builder::default()
 3522   3450   
        /* ServerBuilderGenerator.kt:295 */
 3523   3451   
    }
 3524   3452   
    /* ServerCodegenVisitor.kt:356 */
 3525   3453   
}
 3526   3454   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3527         -
impl crate::constrained::Constrained for crate::input::ResponseCodeHttpFallbackInput {
 3528         -
    type Unconstrained = crate::input::response_code_http_fallback_input::Builder;
        3455  +
impl crate::constrained::Constrained for crate::input::PostPlayerActionInput {
        3456  +
    type Unconstrained = crate::input::post_player_action_input::Builder;
 3529   3457   
}
 3530   3458   
 3531   3459   
/* StructureGenerator.kt:197 */
 3532   3460   
#[allow(missing_docs)] // documentation missing in model
 3533   3461   
/* RustType.kt:534 */
 3534   3462   
#[derive(
 3535   3463   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3536   3464   
)]
 3537         -
pub /* StructureGenerator.kt:201 */ struct ResponseCodeRequiredInput {/* StructureGenerator.kt:201 */}
        3465  +
pub /* StructureGenerator.kt:201 */ struct PostUnionWithJsonNameInput {
        3466  +
    /* StructureGenerator.kt:231 */
        3467  +
    #[allow(missing_docs)] // documentation missing in model
        3468  +
    pub value: ::std::option::Option<crate::model::UnionWithJsonName>,
        3469  +
    /* StructureGenerator.kt:201 */
        3470  +
}
        3471  +
/* StructureGenerator.kt:135 */
        3472  +
impl PostUnionWithJsonNameInput {
        3473  +
    /* StructureGenerator.kt:231 */
        3474  +
    #[allow(missing_docs)] // documentation missing in model
        3475  +
                           /* StructureGenerator.kt:166 */
        3476  +
    pub fn value(&self) -> ::std::option::Option<&crate::model::UnionWithJsonName> {
        3477  +
        /* StructureGenerator.kt:170 */
        3478  +
        self.value.as_ref()
        3479  +
        /* StructureGenerator.kt:166 */
        3480  +
    }
        3481  +
    /* StructureGenerator.kt:135 */
        3482  +
}
 3538   3483   
/* ServerCodegenVisitor.kt:356 */
 3539         -
impl ResponseCodeRequiredInput {
 3540         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`ResponseCodeRequiredInput`](crate::input::ResponseCodeRequiredInput).
        3484  +
impl PostUnionWithJsonNameInput {
        3485  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`PostUnionWithJsonNameInput`](crate::input::PostUnionWithJsonNameInput).
 3541   3486   
    /* ServerBuilderGenerator.kt:295 */
 3542         -
    pub fn builder() -> crate::input::response_code_required_input::Builder {
        3487  +
    pub fn builder() -> crate::input::post_union_with_json_name_input::Builder {
 3543   3488   
        /* ServerBuilderGenerator.kt:296 */
 3544         -
        crate::input::response_code_required_input::Builder::default()
        3489  +
        crate::input::post_union_with_json_name_input::Builder::default()
 3545   3490   
        /* ServerBuilderGenerator.kt:295 */
 3546   3491   
    }
 3547   3492   
    /* ServerCodegenVisitor.kt:356 */
 3548   3493   
}
 3549   3494   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3550         -
impl crate::constrained::Constrained for crate::input::ResponseCodeRequiredInput {
 3551         -
    type Unconstrained = crate::input::response_code_required_input::Builder;
        3495  +
impl crate::constrained::Constrained for crate::input::PostUnionWithJsonNameInput {
        3496  +
    type Unconstrained = crate::input::post_union_with_json_name_input::Builder;
 3552   3497   
}
 3553   3498   
 3554   3499   
/* StructureGenerator.kt:197 */
 3555   3500   
#[allow(missing_docs)] // documentation missing in model
 3556   3501   
/* RustType.kt:534 */
 3557   3502   
#[derive(
 3558   3503   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3559   3504   
)]
 3560         -
pub /* StructureGenerator.kt:201 */ struct HttpResponseCodeInput {/* StructureGenerator.kt:201 */}
        3505  +
pub /* StructureGenerator.kt:201 */ struct EndpointOperationInput {/* StructureGenerator.kt:201 */}
 3561   3506   
/* ServerCodegenVisitor.kt:356 */
 3562         -
impl HttpResponseCodeInput {
 3563         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpResponseCodeInput`](crate::input::HttpResponseCodeInput).
        3507  +
impl EndpointOperationInput {
        3508  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`EndpointOperationInput`](crate::input::EndpointOperationInput).
 3564   3509   
    /* ServerBuilderGenerator.kt:295 */
 3565         -
    pub fn builder() -> crate::input::http_response_code_input::Builder {
        3510  +
    pub fn builder() -> crate::input::endpoint_operation_input::Builder {
 3566   3511   
        /* ServerBuilderGenerator.kt:296 */
 3567         -
        crate::input::http_response_code_input::Builder::default()
        3512  +
        crate::input::endpoint_operation_input::Builder::default()
 3568   3513   
        /* ServerBuilderGenerator.kt:295 */
 3569   3514   
    }
 3570   3515   
    /* ServerCodegenVisitor.kt:356 */
 3571   3516   
}
 3572   3517   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3573         -
impl crate::constrained::Constrained for crate::input::HttpResponseCodeInput {
 3574         -
    type Unconstrained = crate::input::http_response_code_input::Builder;
        3518  +
impl crate::constrained::Constrained for crate::input::EndpointOperationInput {
        3519  +
    type Unconstrained = crate::input::endpoint_operation_input::Builder;
 3575   3520   
}
 3576   3521   
 3577   3522   
/* StructureGenerator.kt:197 */
 3578   3523   
#[allow(missing_docs)] // documentation missing in model
 3579   3524   
/* RustType.kt:534 */
 3580   3525   
#[derive(
 3581   3526   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3582   3527   
)]
 3583         -
pub /* StructureGenerator.kt:201 */ struct HttpPayloadWithUnionInput {
        3528  +
pub /* StructureGenerator.kt:201 */ struct EndpointWithHostLabelOperationInput {
 3584   3529   
    /* StructureGenerator.kt:231 */
 3585   3530   
    #[allow(missing_docs)] // documentation missing in model
 3586         -
    pub nested: ::std::option::Option<crate::model::UnionPayload>,
        3531  +
    pub label: ::std::string::String,
 3587   3532   
    /* StructureGenerator.kt:201 */
 3588   3533   
}
 3589   3534   
/* StructureGenerator.kt:135 */
 3590         -
impl HttpPayloadWithUnionInput {
        3535  +
impl EndpointWithHostLabelOperationInput {
 3591   3536   
    /* StructureGenerator.kt:231 */
 3592   3537   
    #[allow(missing_docs)] // documentation missing in model
 3593   3538   
                           /* StructureGenerator.kt:166 */
 3594         -
    pub fn nested(&self) -> ::std::option::Option<&crate::model::UnionPayload> {
 3595         -
        /* StructureGenerator.kt:170 */
 3596         -
        self.nested.as_ref()
        3539  +
    pub fn label(&self) -> &str {
        3540  +
        /* StructureGenerator.kt:171 */
        3541  +
        use std::ops::Deref;
        3542  +
        self.label.deref()
 3597   3543   
        /* StructureGenerator.kt:166 */
 3598   3544   
    }
 3599   3545   
    /* StructureGenerator.kt:135 */
 3600   3546   
}
 3601   3547   
/* ServerCodegenVisitor.kt:356 */
 3602         -
impl HttpPayloadWithUnionInput {
 3603         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPayloadWithUnionInput`](crate::input::HttpPayloadWithUnionInput).
        3548  +
impl EndpointWithHostLabelOperationInput {
        3549  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`EndpointWithHostLabelOperationInput`](crate::input::EndpointWithHostLabelOperationInput).
 3604   3550   
    /* ServerBuilderGenerator.kt:295 */
 3605         -
    pub fn builder() -> crate::input::http_payload_with_union_input::Builder {
        3551  +
    pub fn builder() -> crate::input::endpoint_with_host_label_operation_input::Builder {
 3606   3552   
        /* ServerBuilderGenerator.kt:296 */
 3607         -
        crate::input::http_payload_with_union_input::Builder::default()
        3553  +
        crate::input::endpoint_with_host_label_operation_input::Builder::default()
 3608   3554   
        /* ServerBuilderGenerator.kt:295 */
 3609   3555   
    }
 3610   3556   
    /* ServerCodegenVisitor.kt:356 */
 3611   3557   
}
 3612   3558   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3613         -
impl crate::constrained::Constrained for crate::input::HttpPayloadWithUnionInput {
 3614         -
    type Unconstrained = crate::input::http_payload_with_union_input::Builder;
        3559  +
impl crate::constrained::Constrained for crate::input::EndpointWithHostLabelOperationInput {
        3560  +
    type Unconstrained = crate::input::endpoint_with_host_label_operation_input::Builder;
 3615   3561   
}
 3616   3562   
 3617   3563   
/* StructureGenerator.kt:197 */
 3618   3564   
#[allow(missing_docs)] // documentation missing in model
 3619   3565   
/* RustType.kt:534 */
 3620   3566   
#[derive(
 3621   3567   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3622   3568   
)]
 3623         -
pub /* StructureGenerator.kt:201 */ struct HttpStringPayloadInput {
 3624         -
    /* StructureGenerator.kt:231 */
 3625         -
    #[allow(missing_docs)] // documentation missing in model
 3626         -
    pub payload: ::std::option::Option<::std::string::String>,
 3627         -
    /* StructureGenerator.kt:201 */
 3628         -
}
 3629         -
/* StructureGenerator.kt:135 */
 3630         -
impl HttpStringPayloadInput {
 3631         -
    /* StructureGenerator.kt:231 */
 3632         -
    #[allow(missing_docs)] // documentation missing in model
 3633         -
                           /* StructureGenerator.kt:166 */
 3634         -
    pub fn payload(&self) -> ::std::option::Option<&str> {
 3635         -
        /* StructureGenerator.kt:169 */
 3636         -
        self.payload.as_deref()
 3637         -
        /* StructureGenerator.kt:166 */
 3638         -
    }
 3639         -
    /* StructureGenerator.kt:135 */
 3640         -
}
        3569  +
pub /* StructureGenerator.kt:201 */ struct HostWithPathOperationInput {/* StructureGenerator.kt:201 */}
 3641   3570   
/* ServerCodegenVisitor.kt:356 */
 3642         -
impl HttpStringPayloadInput {
 3643         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpStringPayloadInput`](crate::input::HttpStringPayloadInput).
        3571  +
impl HostWithPathOperationInput {
        3572  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HostWithPathOperationInput`](crate::input::HostWithPathOperationInput).
 3644   3573   
    /* ServerBuilderGenerator.kt:295 */
 3645         -
    pub fn builder() -> crate::input::http_string_payload_input::Builder {
        3574  +
    pub fn builder() -> crate::input::host_with_path_operation_input::Builder {
 3646   3575   
        /* ServerBuilderGenerator.kt:296 */
 3647         -
        crate::input::http_string_payload_input::Builder::default()
        3576  +
        crate::input::host_with_path_operation_input::Builder::default()
 3648   3577   
        /* ServerBuilderGenerator.kt:295 */
 3649   3578   
    }
 3650   3579   
    /* ServerCodegenVisitor.kt:356 */
 3651   3580   
}
 3652   3581   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3653         -
impl crate::constrained::Constrained for crate::input::HttpStringPayloadInput {
 3654         -
    type Unconstrained = crate::input::http_string_payload_input::Builder;
        3582  +
impl crate::constrained::Constrained for crate::input::HostWithPathOperationInput {
        3583  +
    type Unconstrained = crate::input::host_with_path_operation_input::Builder;
 3655   3584   
}
 3656   3585   
 3657   3586   
/* StructureGenerator.kt:197 */
 3658   3587   
#[allow(missing_docs)] // documentation missing in model
 3659   3588   
/* RustType.kt:534 */
 3660   3589   
#[derive(
 3661   3590   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3662   3591   
)]
 3663         -
pub /* StructureGenerator.kt:201 */ struct HttpEnumPayloadInput {
        3592  +
pub /* StructureGenerator.kt:201 */ struct HttpChecksumRequiredInput {
 3664   3593   
    /* StructureGenerator.kt:231 */
 3665   3594   
    #[allow(missing_docs)] // documentation missing in model
 3666         -
    pub payload: ::std::option::Option<crate::model::StringEnum>,
        3595  +
    pub foo: ::std::option::Option<::std::string::String>,
 3667   3596   
    /* StructureGenerator.kt:201 */
 3668   3597   
}
 3669   3598   
/* StructureGenerator.kt:135 */
 3670         -
impl HttpEnumPayloadInput {
        3599  +
impl HttpChecksumRequiredInput {
 3671   3600   
    /* StructureGenerator.kt:231 */
 3672   3601   
    #[allow(missing_docs)] // documentation missing in model
 3673   3602   
                           /* StructureGenerator.kt:166 */
 3674         -
    pub fn payload(&self) -> ::std::option::Option<&crate::model::StringEnum> {
 3675         -
        /* StructureGenerator.kt:170 */
 3676         -
        self.payload.as_ref()
        3603  +
    pub fn foo(&self) -> ::std::option::Option<&str> {
        3604  +
        /* StructureGenerator.kt:169 */
        3605  +
        self.foo.as_deref()
 3677   3606   
        /* StructureGenerator.kt:166 */
 3678   3607   
    }
 3679   3608   
    /* StructureGenerator.kt:135 */
 3680   3609   
}
 3681   3610   
/* ServerCodegenVisitor.kt:356 */
 3682         -
impl HttpEnumPayloadInput {
 3683         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpEnumPayloadInput`](crate::input::HttpEnumPayloadInput).
        3611  +
impl HttpChecksumRequiredInput {
        3612  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpChecksumRequiredInput`](crate::input::HttpChecksumRequiredInput).
 3684   3613   
    /* ServerBuilderGenerator.kt:295 */
 3685         -
    pub fn builder() -> crate::input::http_enum_payload_input::Builder {
        3614  +
    pub fn builder() -> crate::input::http_checksum_required_input::Builder {
 3686   3615   
        /* ServerBuilderGenerator.kt:296 */
 3687         -
        crate::input::http_enum_payload_input::Builder::default()
        3616  +
        crate::input::http_checksum_required_input::Builder::default()
 3688   3617   
        /* ServerBuilderGenerator.kt:295 */
 3689   3618   
    }
 3690   3619   
    /* ServerCodegenVisitor.kt:356 */
 3691   3620   
}
 3692   3621   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3693         -
impl crate::constrained::Constrained for crate::input::HttpEnumPayloadInput {
 3694         -
    type Unconstrained = crate::input::http_enum_payload_input::Builder;
        3622  +
impl crate::constrained::Constrained for crate::input::HttpChecksumRequiredInput {
        3623  +
    type Unconstrained = crate::input::http_checksum_required_input::Builder;
 3695   3624   
}
 3696   3625   
 3697   3626   
/* StructureGenerator.kt:197 */
 3698   3627   
#[allow(missing_docs)] // documentation missing in model
 3699   3628   
/* RustType.kt:534 */
 3700         -
#[derive(
 3701         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3702         -
)]
 3703         -
pub /* StructureGenerator.kt:201 */ struct HttpPayloadWithStructureInput {
        3629  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        3630  +
pub /* StructureGenerator.kt:201 */ struct MalformedRequestBodyInput {
 3704   3631   
    /* StructureGenerator.kt:231 */
 3705   3632   
    #[allow(missing_docs)] // documentation missing in model
 3706         -
    pub nested: ::std::option::Option<crate::model::NestedPayload>,
        3633  +
    pub int: ::std::option::Option<i32>,
        3634  +
    /* StructureGenerator.kt:231 */
        3635  +
    #[allow(missing_docs)] // documentation missing in model
        3636  +
    pub float: ::std::option::Option<f32>,
 3707   3637   
    /* StructureGenerator.kt:201 */
 3708   3638   
}
 3709   3639   
/* StructureGenerator.kt:135 */
 3710         -
impl HttpPayloadWithStructureInput {
        3640  +
impl MalformedRequestBodyInput {
 3711   3641   
    /* StructureGenerator.kt:231 */
 3712   3642   
    #[allow(missing_docs)] // documentation missing in model
 3713   3643   
                           /* StructureGenerator.kt:166 */
 3714         -
    pub fn nested(&self) -> ::std::option::Option<&crate::model::NestedPayload> {
 3715         -
        /* StructureGenerator.kt:170 */
 3716         -
        self.nested.as_ref()
        3644  +
    pub fn int(&self) -> ::std::option::Option<i32> {
        3645  +
        /* StructureGenerator.kt:168 */
        3646  +
        self.int
        3647  +
        /* StructureGenerator.kt:166 */
        3648  +
    }
        3649  +
    /* StructureGenerator.kt:231 */
        3650  +
    #[allow(missing_docs)] // documentation missing in model
        3651  +
                           /* StructureGenerator.kt:166 */
        3652  +
    pub fn float(&self) -> ::std::option::Option<f32> {
        3653  +
        /* StructureGenerator.kt:168 */
        3654  +
        self.float
 3717   3655   
        /* StructureGenerator.kt:166 */
 3718   3656   
    }
 3719   3657   
    /* StructureGenerator.kt:135 */
 3720   3658   
}
 3721   3659   
/* ServerCodegenVisitor.kt:356 */
 3722         -
impl HttpPayloadWithStructureInput {
 3723         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPayloadWithStructureInput`](crate::input::HttpPayloadWithStructureInput).
        3660  +
impl MalformedRequestBodyInput {
        3661  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedRequestBodyInput`](crate::input::MalformedRequestBodyInput).
 3724   3662   
    /* ServerBuilderGenerator.kt:295 */
 3725         -
    pub fn builder() -> crate::input::http_payload_with_structure_input::Builder {
        3663  +
    pub fn builder() -> crate::input::malformed_request_body_input::Builder {
 3726   3664   
        /* ServerBuilderGenerator.kt:296 */
 3727         -
        crate::input::http_payload_with_structure_input::Builder::default()
        3665  +
        crate::input::malformed_request_body_input::Builder::default()
 3728   3666   
        /* ServerBuilderGenerator.kt:295 */
 3729   3667   
    }
 3730   3668   
    /* ServerCodegenVisitor.kt:356 */
 3731   3669   
}
 3732   3670   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3733         -
impl crate::constrained::Constrained for crate::input::HttpPayloadWithStructureInput {
 3734         -
    type Unconstrained = crate::input::http_payload_with_structure_input::Builder;
        3671  +
impl crate::constrained::Constrained for crate::input::MalformedRequestBodyInput {
        3672  +
    type Unconstrained = crate::input::malformed_request_body_input::Builder;
 3735   3673   
}
 3736   3674   
 3737   3675   
/* StructureGenerator.kt:197 */
 3738   3676   
#[allow(missing_docs)] // documentation missing in model
 3739   3677   
/* RustType.kt:534 */
 3740   3678   
#[derive(
 3741   3679   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3742   3680   
)]
 3743         -
pub /* StructureGenerator.kt:201 */ struct HttpPayloadTraitsWithMediaTypeInput {
        3681  +
pub /* StructureGenerator.kt:201 */ struct MalformedIntegerInput {
 3744   3682   
    /* StructureGenerator.kt:231 */
 3745   3683   
    #[allow(missing_docs)] // documentation missing in model
 3746         -
    pub foo: ::std::option::Option<::std::string::String>,
        3684  +
    pub integer_in_body: ::std::option::Option<i32>,
 3747   3685   
    /* StructureGenerator.kt:231 */
 3748   3686   
    #[allow(missing_docs)] // documentation missing in model
 3749         -
    pub blob: ::std::option::Option<::aws_smithy_types::Blob>,
        3687  +
    pub integer_in_path: i32,
        3688  +
    /* StructureGenerator.kt:231 */
        3689  +
    #[allow(missing_docs)] // documentation missing in model
        3690  +
    pub integer_in_query: ::std::option::Option<i32>,
        3691  +
    /* StructureGenerator.kt:231 */
        3692  +
    #[allow(missing_docs)] // documentation missing in model
        3693  +
    pub integer_in_header: ::std::option::Option<i32>,
 3750   3694   
    /* StructureGenerator.kt:201 */
 3751   3695   
}
 3752   3696   
/* StructureGenerator.kt:135 */
 3753         -
impl HttpPayloadTraitsWithMediaTypeInput {
        3697  +
impl MalformedIntegerInput {
 3754   3698   
    /* StructureGenerator.kt:231 */
 3755   3699   
    #[allow(missing_docs)] // documentation missing in model
 3756   3700   
                           /* StructureGenerator.kt:166 */
 3757         -
    pub fn foo(&self) -> ::std::option::Option<&str> {
 3758         -
        /* StructureGenerator.kt:169 */
 3759         -
        self.foo.as_deref()
        3701  +
    pub fn integer_in_body(&self) -> ::std::option::Option<i32> {
        3702  +
        /* StructureGenerator.kt:168 */
        3703  +
        self.integer_in_body
 3760   3704   
        /* StructureGenerator.kt:166 */
 3761   3705   
    }
 3762   3706   
    /* StructureGenerator.kt:231 */
 3763   3707   
    #[allow(missing_docs)] // documentation missing in model
 3764   3708   
                           /* StructureGenerator.kt:166 */
 3765         -
    pub fn blob(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
 3766         -
        /* StructureGenerator.kt:170 */
 3767         -
        self.blob.as_ref()
        3709  +
    pub fn integer_in_path(&self) -> i32 {
        3710  +
        /* StructureGenerator.kt:168 */
        3711  +
        self.integer_in_path
        3712  +
        /* StructureGenerator.kt:166 */
        3713  +
    }
        3714  +
    /* StructureGenerator.kt:231 */
        3715  +
    #[allow(missing_docs)] // documentation missing in model
        3716  +
                           /* StructureGenerator.kt:166 */
        3717  +
    pub fn integer_in_query(&self) -> ::std::option::Option<i32> {
        3718  +
        /* StructureGenerator.kt:168 */
        3719  +
        self.integer_in_query
        3720  +
        /* StructureGenerator.kt:166 */
        3721  +
    }
        3722  +
    /* StructureGenerator.kt:231 */
        3723  +
    #[allow(missing_docs)] // documentation missing in model
        3724  +
                           /* StructureGenerator.kt:166 */
        3725  +
    pub fn integer_in_header(&self) -> ::std::option::Option<i32> {
        3726  +
        /* StructureGenerator.kt:168 */
        3727  +
        self.integer_in_header
 3768   3728   
        /* StructureGenerator.kt:166 */
 3769   3729   
    }
 3770   3730   
    /* StructureGenerator.kt:135 */
 3771   3731   
}
 3772   3732   
/* ServerCodegenVisitor.kt:356 */
 3773         -
impl HttpPayloadTraitsWithMediaTypeInput {
 3774         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPayloadTraitsWithMediaTypeInput`](crate::input::HttpPayloadTraitsWithMediaTypeInput).
        3733  +
impl MalformedIntegerInput {
        3734  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedIntegerInput`](crate::input::MalformedIntegerInput).
 3775   3735   
    /* ServerBuilderGenerator.kt:295 */
 3776         -
    pub fn builder() -> crate::input::http_payload_traits_with_media_type_input::Builder {
        3736  +
    pub fn builder() -> crate::input::malformed_integer_input::Builder {
 3777   3737   
        /* ServerBuilderGenerator.kt:296 */
 3778         -
        crate::input::http_payload_traits_with_media_type_input::Builder::default()
        3738  +
        crate::input::malformed_integer_input::Builder::default()
 3779   3739   
        /* ServerBuilderGenerator.kt:295 */
 3780   3740   
    }
 3781   3741   
    /* ServerCodegenVisitor.kt:356 */
 3782   3742   
}
 3783   3743   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3784         -
impl crate::constrained::Constrained for crate::input::HttpPayloadTraitsWithMediaTypeInput {
 3785         -
    type Unconstrained = crate::input::http_payload_traits_with_media_type_input::Builder;
        3744  +
impl crate::constrained::Constrained for crate::input::MalformedIntegerInput {
        3745  +
    type Unconstrained = crate::input::malformed_integer_input::Builder;
 3786   3746   
}
 3787   3747   
 3788   3748   
/* StructureGenerator.kt:197 */
 3789   3749   
#[allow(missing_docs)] // documentation missing in model
 3790   3750   
/* RustType.kt:534 */
 3791   3751   
#[derive(
 3792   3752   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3793   3753   
)]
 3794         -
pub /* StructureGenerator.kt:201 */ struct HttpPayloadTraitsInput {
 3795         -
    /* StructureGenerator.kt:231 */
 3796         -
    #[allow(missing_docs)] // documentation missing in model
 3797         -
    pub foo: ::std::option::Option<::std::string::String>,
        3754  +
pub /* StructureGenerator.kt:201 */ struct MalformedUnionInput {
 3798   3755   
    /* StructureGenerator.kt:231 */
 3799   3756   
    #[allow(missing_docs)] // documentation missing in model
 3800         -
    pub blob: ::std::option::Option<::aws_smithy_types::Blob>,
        3757  +
    pub union: ::std::option::Option<crate::model::SimpleUnion>,
 3801   3758   
    /* StructureGenerator.kt:201 */
 3802   3759   
}
 3803   3760   
/* StructureGenerator.kt:135 */
 3804         -
impl HttpPayloadTraitsInput {
 3805         -
    /* StructureGenerator.kt:231 */
 3806         -
    #[allow(missing_docs)] // documentation missing in model
 3807         -
                           /* StructureGenerator.kt:166 */
 3808         -
    pub fn foo(&self) -> ::std::option::Option<&str> {
 3809         -
        /* StructureGenerator.kt:169 */
 3810         -
        self.foo.as_deref()
 3811         -
        /* StructureGenerator.kt:166 */
 3812         -
    }
        3761  +
impl MalformedUnionInput {
 3813   3762   
    /* StructureGenerator.kt:231 */
 3814   3763   
    #[allow(missing_docs)] // documentation missing in model
 3815   3764   
                           /* StructureGenerator.kt:166 */
 3816         -
    pub fn blob(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
        3765  +
    pub fn union(&self) -> ::std::option::Option<&crate::model::SimpleUnion> {
 3817   3766   
        /* StructureGenerator.kt:170 */
 3818         -
        self.blob.as_ref()
        3767  +
        self.union.as_ref()
 3819   3768   
        /* StructureGenerator.kt:166 */
 3820   3769   
    }
 3821   3770   
    /* StructureGenerator.kt:135 */
 3822   3771   
}
 3823   3772   
/* ServerCodegenVisitor.kt:356 */
 3824         -
impl HttpPayloadTraitsInput {
 3825         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPayloadTraitsInput`](crate::input::HttpPayloadTraitsInput).
        3773  +
impl MalformedUnionInput {
        3774  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedUnionInput`](crate::input::MalformedUnionInput).
 3826   3775   
    /* ServerBuilderGenerator.kt:295 */
 3827         -
    pub fn builder() -> crate::input::http_payload_traits_input::Builder {
        3776  +
    pub fn builder() -> crate::input::malformed_union_input::Builder {
 3828   3777   
        /* ServerBuilderGenerator.kt:296 */
 3829         -
        crate::input::http_payload_traits_input::Builder::default()
        3778  +
        crate::input::malformed_union_input::Builder::default()
 3830   3779   
        /* ServerBuilderGenerator.kt:295 */
 3831   3780   
    }
 3832   3781   
    /* ServerCodegenVisitor.kt:356 */
 3833   3782   
}
 3834   3783   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3835         -
impl crate::constrained::Constrained for crate::input::HttpPayloadTraitsInput {
 3836         -
    type Unconstrained = crate::input::http_payload_traits_input::Builder;
        3784  +
impl crate::constrained::Constrained for crate::input::MalformedUnionInput {
        3785  +
    type Unconstrained = crate::input::malformed_union_input::Builder;
 3837   3786   
}
 3838   3787   
 3839   3788   
/* StructureGenerator.kt:197 */
 3840   3789   
#[allow(missing_docs)] // documentation missing in model
 3841   3790   
/* RustType.kt:534 */
 3842         -
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 3843         -
pub /* StructureGenerator.kt:201 */ struct HttpEmptyPrefixHeadersInput {
        3791  +
#[derive(
        3792  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        3793  +
)]
        3794  +
pub /* StructureGenerator.kt:201 */ struct MalformedBooleanInput {
 3844   3795   
    /* StructureGenerator.kt:231 */
 3845   3796   
    #[allow(missing_docs)] // documentation missing in model
 3846         -
    pub prefix_headers: ::std::option::Option<
 3847         -
        ::std::collections::HashMap<::std::string::String, ::std::string::String>,
 3848         -
    >,
        3797  +
    pub boolean_in_body: ::std::option::Option<bool>,
 3849   3798   
    /* StructureGenerator.kt:231 */
 3850   3799   
    #[allow(missing_docs)] // documentation missing in model
 3851         -
    pub specific_header: ::std::option::Option<::std::string::String>,
        3800  +
    pub boolean_in_path: bool,
        3801  +
    /* StructureGenerator.kt:231 */
        3802  +
    #[allow(missing_docs)] // documentation missing in model
        3803  +
    pub boolean_in_query: ::std::option::Option<bool>,
        3804  +
    /* StructureGenerator.kt:231 */
        3805  +
    #[allow(missing_docs)] // documentation missing in model
        3806  +
    pub boolean_in_header: ::std::option::Option<bool>,
 3852   3807   
    /* StructureGenerator.kt:201 */
 3853   3808   
}
 3854   3809   
/* StructureGenerator.kt:135 */
 3855         -
impl HttpEmptyPrefixHeadersInput {
        3810  +
impl MalformedBooleanInput {
 3856   3811   
    /* StructureGenerator.kt:231 */
 3857   3812   
    #[allow(missing_docs)] // documentation missing in model
 3858   3813   
                           /* StructureGenerator.kt:166 */
 3859         -
    pub fn prefix_headers(
 3860         -
        &self,
 3861         -
    ) -> ::std::option::Option<
 3862         -
        &::std::collections::HashMap<::std::string::String, ::std::string::String>,
 3863         -
    > {
 3864         -
        /* StructureGenerator.kt:170 */
 3865         -
        self.prefix_headers.as_ref()
        3814  +
    pub fn boolean_in_body(&self) -> ::std::option::Option<bool> {
        3815  +
        /* StructureGenerator.kt:168 */
        3816  +
        self.boolean_in_body
 3866   3817   
        /* StructureGenerator.kt:166 */
 3867   3818   
    }
 3868   3819   
    /* StructureGenerator.kt:231 */
 3869   3820   
    #[allow(missing_docs)] // documentation missing in model
 3870   3821   
                           /* StructureGenerator.kt:166 */
 3871         -
    pub fn specific_header(&self) -> ::std::option::Option<&str> {
 3872         -
        /* StructureGenerator.kt:169 */
 3873         -
        self.specific_header.as_deref()
        3822  +
    pub fn boolean_in_path(&self) -> bool {
        3823  +
        /* StructureGenerator.kt:168 */
        3824  +
        self.boolean_in_path
        3825  +
        /* StructureGenerator.kt:166 */
        3826  +
    }
        3827  +
    /* StructureGenerator.kt:231 */
        3828  +
    #[allow(missing_docs)] // documentation missing in model
        3829  +
                           /* StructureGenerator.kt:166 */
        3830  +
    pub fn boolean_in_query(&self) -> ::std::option::Option<bool> {
        3831  +
        /* StructureGenerator.kt:168 */
        3832  +
        self.boolean_in_query
        3833  +
        /* StructureGenerator.kt:166 */
        3834  +
    }
        3835  +
    /* StructureGenerator.kt:231 */
        3836  +
    #[allow(missing_docs)] // documentation missing in model
        3837  +
                           /* StructureGenerator.kt:166 */
        3838  +
    pub fn boolean_in_header(&self) -> ::std::option::Option<bool> {
        3839  +
        /* StructureGenerator.kt:168 */
        3840  +
        self.boolean_in_header
 3874   3841   
        /* StructureGenerator.kt:166 */
 3875   3842   
    }
 3876   3843   
    /* StructureGenerator.kt:135 */
 3877   3844   
}
 3878   3845   
/* ServerCodegenVisitor.kt:356 */
 3879         -
impl HttpEmptyPrefixHeadersInput {
 3880         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpEmptyPrefixHeadersInput`](crate::input::HttpEmptyPrefixHeadersInput).
        3846  +
impl MalformedBooleanInput {
        3847  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedBooleanInput`](crate::input::MalformedBooleanInput).
 3881   3848   
    /* ServerBuilderGenerator.kt:295 */
 3882         -
    pub fn builder() -> crate::input::http_empty_prefix_headers_input::Builder {
        3849  +
    pub fn builder() -> crate::input::malformed_boolean_input::Builder {
 3883   3850   
        /* ServerBuilderGenerator.kt:296 */
 3884         -
        crate::input::http_empty_prefix_headers_input::Builder::default()
        3851  +
        crate::input::malformed_boolean_input::Builder::default()
 3885   3852   
        /* ServerBuilderGenerator.kt:295 */
 3886   3853   
    }
 3887   3854   
    /* ServerCodegenVisitor.kt:356 */
 3888   3855   
}
 3889   3856   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3890         -
impl crate::constrained::Constrained for crate::input::HttpEmptyPrefixHeadersInput {
 3891         -
    type Unconstrained = crate::input::http_empty_prefix_headers_input::Builder;
        3857  +
impl crate::constrained::Constrained for crate::input::MalformedBooleanInput {
        3858  +
    type Unconstrained = crate::input::malformed_boolean_input::Builder;
 3892   3859   
}
 3893   3860   
 3894   3861   
/* StructureGenerator.kt:197 */
 3895   3862   
#[allow(missing_docs)] // documentation missing in model
 3896   3863   
/* RustType.kt:534 */
 3897   3864   
#[derive(
 3898   3865   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 3899   3866   
)]
 3900         -
pub /* StructureGenerator.kt:201 */ struct HttpPrefixHeadersInResponseInput {/* StructureGenerator.kt:201 */}
        3867  +
pub /* StructureGenerator.kt:201 */ struct MalformedListInput {
        3868  +
    /* StructureGenerator.kt:231 */
        3869  +
    #[allow(missing_docs)] // documentation missing in model
        3870  +
    pub body_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        3871  +
    /* StructureGenerator.kt:201 */
        3872  +
}
        3873  +
/* StructureGenerator.kt:135 */
        3874  +
impl MalformedListInput {
        3875  +
    /* StructureGenerator.kt:231 */
        3876  +
    #[allow(missing_docs)] // documentation missing in model
        3877  +
                           /* StructureGenerator.kt:166 */
        3878  +
    pub fn body_list(&self) -> ::std::option::Option<&[::std::string::String]> {
        3879  +
        /* StructureGenerator.kt:169 */
        3880  +
        self.body_list.as_deref()
        3881  +
        /* StructureGenerator.kt:166 */
        3882  +
    }
        3883  +
    /* StructureGenerator.kt:135 */
        3884  +
}
 3901   3885   
/* ServerCodegenVisitor.kt:356 */
 3902         -
impl HttpPrefixHeadersInResponseInput {
 3903         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPrefixHeadersInResponseInput`](crate::input::HttpPrefixHeadersInResponseInput).
        3886  +
impl MalformedListInput {
        3887  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedListInput`](crate::input::MalformedListInput).
 3904   3888   
    /* ServerBuilderGenerator.kt:295 */
 3905         -
    pub fn builder() -> crate::input::http_prefix_headers_in_response_input::Builder {
        3889  +
    pub fn builder() -> crate::input::malformed_list_input::Builder {
 3906   3890   
        /* ServerBuilderGenerator.kt:296 */
 3907         -
        crate::input::http_prefix_headers_in_response_input::Builder::default()
        3891  +
        crate::input::malformed_list_input::Builder::default()
 3908   3892   
        /* ServerBuilderGenerator.kt:295 */
 3909   3893   
    }
 3910   3894   
    /* ServerCodegenVisitor.kt:356 */
 3911   3895   
}
 3912   3896   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3913         -
impl crate::constrained::Constrained for crate::input::HttpPrefixHeadersInResponseInput {
 3914         -
    type Unconstrained = crate::input::http_prefix_headers_in_response_input::Builder;
        3897  +
impl crate::constrained::Constrained for crate::input::MalformedListInput {
        3898  +
    type Unconstrained = crate::input::malformed_list_input::Builder;
 3915   3899   
}
 3916   3900   
 3917   3901   
/* StructureGenerator.kt:197 */
 3918   3902   
#[allow(missing_docs)] // documentation missing in model
 3919   3903   
/* RustType.kt:534 */
 3920   3904   
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 3921         -
pub /* StructureGenerator.kt:201 */ struct HttpPrefixHeadersInput {
 3922         -
    /* StructureGenerator.kt:231 */
 3923         -
    #[allow(missing_docs)] // documentation missing in model
 3924         -
    pub foo: ::std::option::Option<::std::string::String>,
        3905  +
pub /* StructureGenerator.kt:201 */ struct MalformedMapInput {
 3925   3906   
    /* StructureGenerator.kt:231 */
 3926   3907   
    #[allow(missing_docs)] // documentation missing in model
 3927         -
    pub foo_map: ::std::option::Option<
        3908  +
    pub body_map: ::std::option::Option<
 3928   3909   
        ::std::collections::HashMap<::std::string::String, ::std::string::String>,
 3929   3910   
    >,
 3930   3911   
    /* StructureGenerator.kt:201 */
 3931   3912   
}
 3932   3913   
/* StructureGenerator.kt:135 */
 3933         -
impl HttpPrefixHeadersInput {
 3934         -
    /* StructureGenerator.kt:231 */
 3935         -
    #[allow(missing_docs)] // documentation missing in model
 3936         -
                           /* StructureGenerator.kt:166 */
 3937         -
    pub fn foo(&self) -> ::std::option::Option<&str> {
 3938         -
        /* StructureGenerator.kt:169 */
 3939         -
        self.foo.as_deref()
 3940         -
        /* StructureGenerator.kt:166 */
 3941         -
    }
        3914  +
impl MalformedMapInput {
 3942   3915   
    /* StructureGenerator.kt:231 */
 3943   3916   
    #[allow(missing_docs)] // documentation missing in model
 3944   3917   
                           /* StructureGenerator.kt:166 */
 3945         -
    pub fn foo_map(
        3918  +
    pub fn body_map(
 3946   3919   
        &self,
 3947   3920   
    ) -> ::std::option::Option<
 3948   3921   
        &::std::collections::HashMap<::std::string::String, ::std::string::String>,
 3949   3922   
    > {
 3950   3923   
        /* StructureGenerator.kt:170 */
 3951         -
        self.foo_map.as_ref()
        3924  +
        self.body_map.as_ref()
 3952   3925   
        /* StructureGenerator.kt:166 */
 3953   3926   
    }
 3954   3927   
    /* StructureGenerator.kt:135 */
 3955   3928   
}
 3956   3929   
/* ServerCodegenVisitor.kt:356 */
 3957         -
impl HttpPrefixHeadersInput {
 3958         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpPrefixHeadersInput`](crate::input::HttpPrefixHeadersInput).
        3930  +
impl MalformedMapInput {
        3931  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedMapInput`](crate::input::MalformedMapInput).
 3959   3932   
    /* ServerBuilderGenerator.kt:295 */
 3960         -
    pub fn builder() -> crate::input::http_prefix_headers_input::Builder {
        3933  +
    pub fn builder() -> crate::input::malformed_map_input::Builder {
 3961   3934   
        /* ServerBuilderGenerator.kt:296 */
 3962         -
        crate::input::http_prefix_headers_input::Builder::default()
        3935  +
        crate::input::malformed_map_input::Builder::default()
 3963   3936   
        /* ServerBuilderGenerator.kt:295 */
 3964   3937   
    }
 3965   3938   
    /* ServerCodegenVisitor.kt:356 */
 3966   3939   
}
 3967   3940   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 3968         -
impl crate::constrained::Constrained for crate::input::HttpPrefixHeadersInput {
 3969         -
    type Unconstrained = crate::input::http_prefix_headers_input::Builder;
        3941  +
impl crate::constrained::Constrained for crate::input::MalformedMapInput {
        3942  +
    type Unconstrained = crate::input::malformed_map_input::Builder;
 3970   3943   
}
 3971   3944   
 3972   3945   
/* StructureGenerator.kt:197 */
 3973   3946   
#[allow(missing_docs)] // documentation missing in model
 3974   3947   
/* RustType.kt:534 */
 3975         -
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 3976         -
pub /* StructureGenerator.kt:201 */ struct QueryParamsAsStringListMapInput {
 3977         -
    /* StructureGenerator.kt:231 */
 3978         -
    #[allow(missing_docs)] // documentation missing in model
 3979         -
    pub qux: ::std::option::Option<::std::string::String>,
        3948  +
#[derive(
        3949  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        3950  +
)]
        3951  +
pub /* StructureGenerator.kt:201 */ struct MalformedBlobInput {
 3980   3952   
    /* StructureGenerator.kt:231 */
 3981   3953   
    #[allow(missing_docs)] // documentation missing in model
 3982         -
    pub foo: ::std::option::Option<
 3983         -
        ::std::collections::HashMap<::std::string::String, ::std::vec::Vec<::std::string::String>>,
 3984         -
    >,
        3954  +
    pub blob: ::std::option::Option<::aws_smithy_types::Blob>,
 3985   3955   
    /* StructureGenerator.kt:201 */
 3986   3956   
}
 3987   3957   
/* StructureGenerator.kt:135 */
 3988         -
impl QueryParamsAsStringListMapInput {
 3989         -
    /* StructureGenerator.kt:231 */
 3990         -
    #[allow(missing_docs)] // documentation missing in model
 3991         -
                           /* StructureGenerator.kt:166 */
 3992         -
    pub fn qux(&self) -> ::std::option::Option<&str> {
 3993         -
        /* StructureGenerator.kt:169 */
 3994         -
        self.qux.as_deref()
 3995         -
        /* StructureGenerator.kt:166 */
 3996         -
    }
        3958  +
impl MalformedBlobInput {
 3997   3959   
    /* StructureGenerator.kt:231 */
 3998   3960   
    #[allow(missing_docs)] // documentation missing in model
 3999   3961   
                           /* StructureGenerator.kt:166 */
 4000         -
    pub fn foo(
 4001         -
        &self,
 4002         -
    ) -> ::std::option::Option<
 4003         -
        &::std::collections::HashMap<::std::string::String, ::std::vec::Vec<::std::string::String>>,
 4004         -
    > {
        3962  +
    pub fn blob(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
 4005   3963   
        /* StructureGenerator.kt:170 */
 4006         -
        self.foo.as_ref()
        3964  +
        self.blob.as_ref()
 4007   3965   
        /* StructureGenerator.kt:166 */
 4008   3966   
    }
 4009   3967   
    /* StructureGenerator.kt:135 */
 4010   3968   
}
 4011   3969   
/* ServerCodegenVisitor.kt:356 */
 4012         -
impl QueryParamsAsStringListMapInput {
 4013         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`QueryParamsAsStringListMapInput`](crate::input::QueryParamsAsStringListMapInput).
        3970  +
impl MalformedBlobInput {
        3971  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedBlobInput`](crate::input::MalformedBlobInput).
 4014   3972   
    /* ServerBuilderGenerator.kt:295 */
 4015         -
    pub fn builder() -> crate::input::query_params_as_string_list_map_input::Builder {
        3973  +
    pub fn builder() -> crate::input::malformed_blob_input::Builder {
 4016   3974   
        /* ServerBuilderGenerator.kt:296 */
 4017         -
        crate::input::query_params_as_string_list_map_input::Builder::default()
        3975  +
        crate::input::malformed_blob_input::Builder::default()
 4018   3976   
        /* ServerBuilderGenerator.kt:295 */
 4019   3977   
    }
 4020   3978   
    /* ServerCodegenVisitor.kt:356 */
 4021   3979   
}
 4022   3980   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4023         -
impl crate::constrained::Constrained for crate::input::QueryParamsAsStringListMapInput {
 4024         -
    type Unconstrained = crate::input::query_params_as_string_list_map_input::Builder;
        3981  +
impl crate::constrained::Constrained for crate::input::MalformedBlobInput {
        3982  +
    type Unconstrained = crate::input::malformed_blob_input::Builder;
 4025   3983   
}
 4026   3984   
 4027   3985   
/* StructureGenerator.kt:197 */
 4028   3986   
#[allow(missing_docs)] // documentation missing in model
 4029   3987   
/* RustType.kt:534 */
 4030         -
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 4031         -
pub /* StructureGenerator.kt:201 */ struct QueryPrecedenceInput {
 4032         -
    /* StructureGenerator.kt:231 */
        3988  +
#[derive(
        3989  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        3990  +
)]
        3991  +
pub /* StructureGenerator.kt:201 */ struct MalformedByteInput {
        3992  +
    /* StructureGenerator.kt:231 */
 4033   3993   
    #[allow(missing_docs)] // documentation missing in model
 4034         -
    pub foo: ::std::option::Option<::std::string::String>,
        3994  +
    pub byte_in_body: ::std::option::Option<i8>,
 4035   3995   
    /* StructureGenerator.kt:231 */
 4036   3996   
    #[allow(missing_docs)] // documentation missing in model
 4037         -
    pub baz: ::std::option::Option<
 4038         -
        ::std::collections::HashMap<::std::string::String, ::std::string::String>,
 4039         -
    >,
        3997  +
    pub byte_in_path: i8,
        3998  +
    /* StructureGenerator.kt:231 */
        3999  +
    #[allow(missing_docs)] // documentation missing in model
        4000  +
    pub byte_in_query: ::std::option::Option<i8>,
        4001  +
    /* StructureGenerator.kt:231 */
        4002  +
    #[allow(missing_docs)] // documentation missing in model
        4003  +
    pub byte_in_header: ::std::option::Option<i8>,
 4040   4004   
    /* StructureGenerator.kt:201 */
 4041   4005   
}
 4042   4006   
/* StructureGenerator.kt:135 */
 4043         -
impl QueryPrecedenceInput {
        4007  +
impl MalformedByteInput {
 4044   4008   
    /* StructureGenerator.kt:231 */
 4045   4009   
    #[allow(missing_docs)] // documentation missing in model
 4046   4010   
                           /* StructureGenerator.kt:166 */
 4047         -
    pub fn foo(&self) -> ::std::option::Option<&str> {
 4048         -
        /* StructureGenerator.kt:169 */
 4049         -
        self.foo.as_deref()
        4011  +
    pub fn byte_in_body(&self) -> ::std::option::Option<i8> {
        4012  +
        /* StructureGenerator.kt:168 */
        4013  +
        self.byte_in_body
 4050   4014   
        /* StructureGenerator.kt:166 */
 4051   4015   
    }
 4052   4016   
    /* StructureGenerator.kt:231 */
 4053   4017   
    #[allow(missing_docs)] // documentation missing in model
 4054   4018   
                           /* StructureGenerator.kt:166 */
 4055         -
    pub fn baz(
 4056         -
        &self,
 4057         -
    ) -> ::std::option::Option<
 4058         -
        &::std::collections::HashMap<::std::string::String, ::std::string::String>,
 4059         -
    > {
 4060         -
        /* StructureGenerator.kt:170 */
 4061         -
        self.baz.as_ref()
        4019  +
    pub fn byte_in_path(&self) -> i8 {
        4020  +
        /* StructureGenerator.kt:168 */
        4021  +
        self.byte_in_path
        4022  +
        /* StructureGenerator.kt:166 */
        4023  +
    }
        4024  +
    /* StructureGenerator.kt:231 */
        4025  +
    #[allow(missing_docs)] // documentation missing in model
        4026  +
                           /* StructureGenerator.kt:166 */
        4027  +
    pub fn byte_in_query(&self) -> ::std::option::Option<i8> {
        4028  +
        /* StructureGenerator.kt:168 */
        4029  +
        self.byte_in_query
        4030  +
        /* StructureGenerator.kt:166 */
        4031  +
    }
        4032  +
    /* StructureGenerator.kt:231 */
        4033  +
    #[allow(missing_docs)] // documentation missing in model
        4034  +
                           /* StructureGenerator.kt:166 */
        4035  +
    pub fn byte_in_header(&self) -> ::std::option::Option<i8> {
        4036  +
        /* StructureGenerator.kt:168 */
        4037  +
        self.byte_in_header
 4062   4038   
        /* StructureGenerator.kt:166 */
 4063   4039   
    }
 4064   4040   
    /* StructureGenerator.kt:135 */
 4065   4041   
}
 4066   4042   
/* ServerCodegenVisitor.kt:356 */
 4067         -
impl QueryPrecedenceInput {
 4068         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`QueryPrecedenceInput`](crate::input::QueryPrecedenceInput).
        4043  +
impl MalformedByteInput {
        4044  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedByteInput`](crate::input::MalformedByteInput).
 4069   4045   
    /* ServerBuilderGenerator.kt:295 */
 4070         -
    pub fn builder() -> crate::input::query_precedence_input::Builder {
        4046  +
    pub fn builder() -> crate::input::malformed_byte_input::Builder {
 4071   4047   
        /* ServerBuilderGenerator.kt:296 */
 4072         -
        crate::input::query_precedence_input::Builder::default()
        4048  +
        crate::input::malformed_byte_input::Builder::default()
 4073   4049   
        /* ServerBuilderGenerator.kt:295 */
 4074   4050   
    }
 4075   4051   
    /* ServerCodegenVisitor.kt:356 */
 4076   4052   
}
 4077   4053   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4078         -
impl crate::constrained::Constrained for crate::input::QueryPrecedenceInput {
 4079         -
    type Unconstrained = crate::input::query_precedence_input::Builder;
        4054  +
impl crate::constrained::Constrained for crate::input::MalformedByteInput {
        4055  +
    type Unconstrained = crate::input::malformed_byte_input::Builder;
 4080   4056   
}
 4081   4057   
 4082   4058   
/* StructureGenerator.kt:197 */
 4083   4059   
#[allow(missing_docs)] // documentation missing in model
 4084   4060   
/* RustType.kt:534 */
 4085   4061   
#[derive(
 4086   4062   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 4087   4063   
)]
 4088         -
pub /* StructureGenerator.kt:201 */ struct QueryIdempotencyTokenAutoFillInput {
        4064  +
pub /* StructureGenerator.kt:201 */ struct MalformedShortInput {
 4089   4065   
    /* StructureGenerator.kt:231 */
 4090   4066   
    #[allow(missing_docs)] // documentation missing in model
 4091         -
    pub token: ::std::option::Option<::std::string::String>,
        4067  +
    pub short_in_body: ::std::option::Option<i16>,
        4068  +
    /* StructureGenerator.kt:231 */
        4069  +
    #[allow(missing_docs)] // documentation missing in model
        4070  +
    pub short_in_path: i16,
        4071  +
    /* StructureGenerator.kt:231 */
        4072  +
    #[allow(missing_docs)] // documentation missing in model
        4073  +
    pub short_in_query: ::std::option::Option<i16>,
        4074  +
    /* StructureGenerator.kt:231 */
        4075  +
    #[allow(missing_docs)] // documentation missing in model
        4076  +
    pub short_in_header: ::std::option::Option<i16>,
 4092   4077   
    /* StructureGenerator.kt:201 */
 4093   4078   
}
 4094   4079   
/* StructureGenerator.kt:135 */
 4095         -
impl QueryIdempotencyTokenAutoFillInput {
        4080  +
impl MalformedShortInput {
 4096   4081   
    /* StructureGenerator.kt:231 */
 4097   4082   
    #[allow(missing_docs)] // documentation missing in model
 4098   4083   
                           /* StructureGenerator.kt:166 */
 4099         -
    pub fn token(&self) -> ::std::option::Option<&str> {
 4100         -
        /* StructureGenerator.kt:169 */
 4101         -
        self.token.as_deref()
        4084  +
    pub fn short_in_body(&self) -> ::std::option::Option<i16> {
        4085  +
        /* StructureGenerator.kt:168 */
        4086  +
        self.short_in_body
        4087  +
        /* StructureGenerator.kt:166 */
        4088  +
    }
        4089  +
    /* StructureGenerator.kt:231 */
        4090  +
    #[allow(missing_docs)] // documentation missing in model
        4091  +
                           /* StructureGenerator.kt:166 */
        4092  +
    pub fn short_in_path(&self) -> i16 {
        4093  +
        /* StructureGenerator.kt:168 */
        4094  +
        self.short_in_path
        4095  +
        /* StructureGenerator.kt:166 */
        4096  +
    }
        4097  +
    /* StructureGenerator.kt:231 */
        4098  +
    #[allow(missing_docs)] // documentation missing in model
        4099  +
                           /* StructureGenerator.kt:166 */
        4100  +
    pub fn short_in_query(&self) -> ::std::option::Option<i16> {
        4101  +
        /* StructureGenerator.kt:168 */
        4102  +
        self.short_in_query
        4103  +
        /* StructureGenerator.kt:166 */
        4104  +
    }
        4105  +
    /* StructureGenerator.kt:231 */
        4106  +
    #[allow(missing_docs)] // documentation missing in model
        4107  +
                           /* StructureGenerator.kt:166 */
        4108  +
    pub fn short_in_header(&self) -> ::std::option::Option<i16> {
        4109  +
        /* StructureGenerator.kt:168 */
        4110  +
        self.short_in_header
 4102   4111   
        /* StructureGenerator.kt:166 */
 4103   4112   
    }
 4104   4113   
    /* StructureGenerator.kt:135 */
 4105   4114   
}
 4106   4115   
/* ServerCodegenVisitor.kt:356 */
 4107         -
impl QueryIdempotencyTokenAutoFillInput {
 4108         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`QueryIdempotencyTokenAutoFillInput`](crate::input::QueryIdempotencyTokenAutoFillInput).
        4116  +
impl MalformedShortInput {
        4117  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedShortInput`](crate::input::MalformedShortInput).
 4109   4118   
    /* ServerBuilderGenerator.kt:295 */
 4110         -
    pub fn builder() -> crate::input::query_idempotency_token_auto_fill_input::Builder {
        4119  +
    pub fn builder() -> crate::input::malformed_short_input::Builder {
 4111   4120   
        /* ServerBuilderGenerator.kt:296 */
 4112         -
        crate::input::query_idempotency_token_auto_fill_input::Builder::default()
        4121  +
        crate::input::malformed_short_input::Builder::default()
 4113   4122   
        /* ServerBuilderGenerator.kt:295 */
 4114   4123   
    }
 4115   4124   
    /* ServerCodegenVisitor.kt:356 */
 4116   4125   
}
 4117   4126   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4118         -
impl crate::constrained::Constrained for crate::input::QueryIdempotencyTokenAutoFillInput {
 4119         -
    type Unconstrained = crate::input::query_idempotency_token_auto_fill_input::Builder;
        4127  +
impl crate::constrained::Constrained for crate::input::MalformedShortInput {
        4128  +
    type Unconstrained = crate::input::malformed_short_input::Builder;
 4120   4129   
}
 4121   4130   
 4122   4131   
/* StructureGenerator.kt:197 */
 4123   4132   
#[allow(missing_docs)] // documentation missing in model
 4124   4133   
/* RustType.kt:534 */
 4125         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 4126         -
pub /* StructureGenerator.kt:201 */ struct OmitsSerializingEmptyListsInput {
 4127         -
    /* StructureGenerator.kt:231 */
 4128         -
    #[allow(missing_docs)] // documentation missing in model
 4129         -
    pub query_string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
 4130         -
    /* StructureGenerator.kt:231 */
 4131         -
    #[allow(missing_docs)] // documentation missing in model
 4132         -
    pub query_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
 4133         -
    /* StructureGenerator.kt:231 */
 4134         -
    #[allow(missing_docs)] // documentation missing in model
 4135         -
    pub query_double_list: ::std::option::Option<::std::vec::Vec<f64>>,
        4134  +
#[derive(
        4135  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        4136  +
)]
        4137  +
pub /* StructureGenerator.kt:201 */ struct MalformedLongInput {
 4136   4138   
    /* StructureGenerator.kt:231 */
 4137   4139   
    #[allow(missing_docs)] // documentation missing in model
 4138         -
    pub query_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
        4140  +
    pub long_in_body: ::std::option::Option<i64>,
 4139   4141   
    /* StructureGenerator.kt:231 */
 4140   4142   
    #[allow(missing_docs)] // documentation missing in model
 4141         -
    pub query_timestamp_list: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
        4143  +
    pub long_in_path: i64,
 4142   4144   
    /* StructureGenerator.kt:231 */
 4143   4145   
    #[allow(missing_docs)] // documentation missing in model
 4144         -
    pub query_enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
        4146  +
    pub long_in_query: ::std::option::Option<i64>,
 4145   4147   
    /* StructureGenerator.kt:231 */
 4146   4148   
    #[allow(missing_docs)] // documentation missing in model
 4147         -
    pub query_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
        4149  +
    pub long_in_header: ::std::option::Option<i64>,
 4148   4150   
    /* StructureGenerator.kt:201 */
 4149   4151   
}
 4150   4152   
/* StructureGenerator.kt:135 */
 4151         -
impl OmitsSerializingEmptyListsInput {
 4152         -
    /* StructureGenerator.kt:231 */
 4153         -
    #[allow(missing_docs)] // documentation missing in model
 4154         -
                           /* StructureGenerator.kt:166 */
 4155         -
    pub fn query_string_list(&self) -> ::std::option::Option<&[::std::string::String]> {
 4156         -
        /* StructureGenerator.kt:169 */
 4157         -
        self.query_string_list.as_deref()
 4158         -
        /* StructureGenerator.kt:166 */
 4159         -
    }
 4160         -
    /* StructureGenerator.kt:231 */
 4161         -
    #[allow(missing_docs)] // documentation missing in model
 4162         -
                           /* StructureGenerator.kt:166 */
 4163         -
    pub fn query_integer_list(&self) -> ::std::option::Option<&[i32]> {
 4164         -
        /* StructureGenerator.kt:169 */
 4165         -
        self.query_integer_list.as_deref()
 4166         -
        /* StructureGenerator.kt:166 */
 4167         -
    }
 4168         -
    /* StructureGenerator.kt:231 */
 4169         -
    #[allow(missing_docs)] // documentation missing in model
 4170         -
                           /* StructureGenerator.kt:166 */
 4171         -
    pub fn query_double_list(&self) -> ::std::option::Option<&[f64]> {
 4172         -
        /* StructureGenerator.kt:169 */
 4173         -
        self.query_double_list.as_deref()
 4174         -
        /* StructureGenerator.kt:166 */
 4175         -
    }
        4153  +
impl MalformedLongInput {
 4176   4154   
    /* StructureGenerator.kt:231 */
 4177   4155   
    #[allow(missing_docs)] // documentation missing in model
 4178   4156   
                           /* StructureGenerator.kt:166 */
 4179         -
    pub fn query_boolean_list(&self) -> ::std::option::Option<&[bool]> {
 4180         -
        /* StructureGenerator.kt:169 */
 4181         -
        self.query_boolean_list.as_deref()
        4157  +
    pub fn long_in_body(&self) -> ::std::option::Option<i64> {
        4158  +
        /* StructureGenerator.kt:168 */
        4159  +
        self.long_in_body
 4182   4160   
        /* StructureGenerator.kt:166 */
 4183   4161   
    }
 4184   4162   
    /* StructureGenerator.kt:231 */
 4185   4163   
    #[allow(missing_docs)] // documentation missing in model
 4186   4164   
                           /* StructureGenerator.kt:166 */
 4187         -
    pub fn query_timestamp_list(&self) -> ::std::option::Option<&[::aws_smithy_types::DateTime]> {
 4188         -
        /* StructureGenerator.kt:169 */
 4189         -
        self.query_timestamp_list.as_deref()
        4165  +
    pub fn long_in_path(&self) -> i64 {
        4166  +
        /* StructureGenerator.kt:168 */
        4167  +
        self.long_in_path
 4190   4168   
        /* StructureGenerator.kt:166 */
 4191   4169   
    }
 4192   4170   
    /* StructureGenerator.kt:231 */
 4193   4171   
    #[allow(missing_docs)] // documentation missing in model
 4194   4172   
                           /* StructureGenerator.kt:166 */
 4195         -
    pub fn query_enum_list(&self) -> ::std::option::Option<&[crate::model::FooEnum]> {
 4196         -
        /* StructureGenerator.kt:169 */
 4197         -
        self.query_enum_list.as_deref()
        4173  +
    pub fn long_in_query(&self) -> ::std::option::Option<i64> {
        4174  +
        /* StructureGenerator.kt:168 */
        4175  +
        self.long_in_query
 4198   4176   
        /* StructureGenerator.kt:166 */
 4199   4177   
    }
 4200   4178   
    /* StructureGenerator.kt:231 */
 4201   4179   
    #[allow(missing_docs)] // documentation missing in model
 4202   4180   
                           /* StructureGenerator.kt:166 */
 4203         -
    pub fn query_integer_enum_list(&self) -> ::std::option::Option<&[i32]> {
 4204         -
        /* StructureGenerator.kt:169 */
 4205         -
        self.query_integer_enum_list.as_deref()
        4181  +
    pub fn long_in_header(&self) -> ::std::option::Option<i64> {
        4182  +
        /* StructureGenerator.kt:168 */
        4183  +
        self.long_in_header
 4206   4184   
        /* StructureGenerator.kt:166 */
 4207   4185   
    }
 4208   4186   
    /* StructureGenerator.kt:135 */
 4209   4187   
}
 4210   4188   
/* ServerCodegenVisitor.kt:356 */
 4211         -
impl OmitsSerializingEmptyListsInput {
 4212         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OmitsSerializingEmptyListsInput`](crate::input::OmitsSerializingEmptyListsInput).
        4189  +
impl MalformedLongInput {
        4190  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedLongInput`](crate::input::MalformedLongInput).
 4213   4191   
    /* ServerBuilderGenerator.kt:295 */
 4214         -
    pub fn builder() -> crate::input::omits_serializing_empty_lists_input::Builder {
        4192  +
    pub fn builder() -> crate::input::malformed_long_input::Builder {
 4215   4193   
        /* ServerBuilderGenerator.kt:296 */
 4216         -
        crate::input::omits_serializing_empty_lists_input::Builder::default()
        4194  +
        crate::input::malformed_long_input::Builder::default()
 4217   4195   
        /* ServerBuilderGenerator.kt:295 */
 4218   4196   
    }
 4219   4197   
    /* ServerCodegenVisitor.kt:356 */
 4220   4198   
}
 4221   4199   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4222         -
impl crate::constrained::Constrained for crate::input::OmitsSerializingEmptyListsInput {
 4223         -
    type Unconstrained = crate::input::omits_serializing_empty_lists_input::Builder;
        4200  +
impl crate::constrained::Constrained for crate::input::MalformedLongInput {
        4201  +
    type Unconstrained = crate::input::malformed_long_input::Builder;
 4224   4202   
}
 4225   4203   
 4226   4204   
/* StructureGenerator.kt:197 */
 4227   4205   
#[allow(missing_docs)] // documentation missing in model
 4228   4206   
/* RustType.kt:534 */
 4229         -
#[derive(
 4230         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 4231         -
)]
 4232         -
pub /* StructureGenerator.kt:201 */ struct OmitsNullSerializesEmptyStringInput {
        4207  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        4208  +
pub /* StructureGenerator.kt:201 */ struct MalformedFloatInput {
 4233   4209   
    /* StructureGenerator.kt:231 */
 4234   4210   
    #[allow(missing_docs)] // documentation missing in model
 4235         -
    pub null_value: ::std::option::Option<::std::string::String>,
        4211  +
    pub float_in_body: ::std::option::Option<f32>,
 4236   4212   
    /* StructureGenerator.kt:231 */
 4237   4213   
    #[allow(missing_docs)] // documentation missing in model
 4238         -
    pub empty_string: ::std::option::Option<::std::string::String>,
        4214  +
    pub float_in_path: f32,
        4215  +
    /* StructureGenerator.kt:231 */
        4216  +
    #[allow(missing_docs)] // documentation missing in model
        4217  +
    pub float_in_query: ::std::option::Option<f32>,
        4218  +
    /* StructureGenerator.kt:231 */
        4219  +
    #[allow(missing_docs)] // documentation missing in model
        4220  +
    pub float_in_header: ::std::option::Option<f32>,
 4239   4221   
    /* StructureGenerator.kt:201 */
 4240   4222   
}
 4241   4223   
/* StructureGenerator.kt:135 */
 4242         -
impl OmitsNullSerializesEmptyStringInput {
        4224  +
impl MalformedFloatInput {
 4243   4225   
    /* StructureGenerator.kt:231 */
 4244   4226   
    #[allow(missing_docs)] // documentation missing in model
 4245   4227   
                           /* StructureGenerator.kt:166 */
 4246         -
    pub fn null_value(&self) -> ::std::option::Option<&str> {
 4247         -
        /* StructureGenerator.kt:169 */
 4248         -
        self.null_value.as_deref()
        4228  +
    pub fn float_in_body(&self) -> ::std::option::Option<f32> {
        4229  +
        /* StructureGenerator.kt:168 */
        4230  +
        self.float_in_body
 4249   4231   
        /* StructureGenerator.kt:166 */
 4250   4232   
    }
 4251   4233   
    /* StructureGenerator.kt:231 */
 4252   4234   
    #[allow(missing_docs)] // documentation missing in model
 4253   4235   
                           /* StructureGenerator.kt:166 */
 4254         -
    pub fn empty_string(&self) -> ::std::option::Option<&str> {
 4255         -
        /* StructureGenerator.kt:169 */
 4256         -
        self.empty_string.as_deref()
        4236  +
    pub fn float_in_path(&self) -> f32 {
        4237  +
        /* StructureGenerator.kt:168 */
        4238  +
        self.float_in_path
        4239  +
        /* StructureGenerator.kt:166 */
        4240  +
    }
        4241  +
    /* StructureGenerator.kt:231 */
        4242  +
    #[allow(missing_docs)] // documentation missing in model
        4243  +
                           /* StructureGenerator.kt:166 */
        4244  +
    pub fn float_in_query(&self) -> ::std::option::Option<f32> {
        4245  +
        /* StructureGenerator.kt:168 */
        4246  +
        self.float_in_query
        4247  +
        /* StructureGenerator.kt:166 */
        4248  +
    }
        4249  +
    /* StructureGenerator.kt:231 */
        4250  +
    #[allow(missing_docs)] // documentation missing in model
        4251  +
                           /* StructureGenerator.kt:166 */
        4252  +
    pub fn float_in_header(&self) -> ::std::option::Option<f32> {
        4253  +
        /* StructureGenerator.kt:168 */
        4254  +
        self.float_in_header
 4257   4255   
        /* StructureGenerator.kt:166 */
 4258   4256   
    }
 4259   4257   
    /* StructureGenerator.kt:135 */
 4260   4258   
}
 4261   4259   
/* ServerCodegenVisitor.kt:356 */
 4262         -
impl OmitsNullSerializesEmptyStringInput {
 4263         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OmitsNullSerializesEmptyStringInput`](crate::input::OmitsNullSerializesEmptyStringInput).
        4260  +
impl MalformedFloatInput {
        4261  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedFloatInput`](crate::input::MalformedFloatInput).
 4264   4262   
    /* ServerBuilderGenerator.kt:295 */
 4265         -
    pub fn builder() -> crate::input::omits_null_serializes_empty_string_input::Builder {
        4263  +
    pub fn builder() -> crate::input::malformed_float_input::Builder {
 4266   4264   
        /* ServerBuilderGenerator.kt:296 */
 4267         -
        crate::input::omits_null_serializes_empty_string_input::Builder::default()
        4265  +
        crate::input::malformed_float_input::Builder::default()
 4268   4266   
        /* ServerBuilderGenerator.kt:295 */
 4269   4267   
    }
 4270   4268   
    /* ServerCodegenVisitor.kt:356 */
 4271   4269   
}
 4272   4270   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4273         -
impl crate::constrained::Constrained for crate::input::OmitsNullSerializesEmptyStringInput {
 4274         -
    type Unconstrained = crate::input::omits_null_serializes_empty_string_input::Builder;
        4271  +
impl crate::constrained::Constrained for crate::input::MalformedFloatInput {
        4272  +
    type Unconstrained = crate::input::malformed_float_input::Builder;
 4275   4273   
}
 4276   4274   
 4277   4275   
/* StructureGenerator.kt:197 */
 4278   4276   
#[allow(missing_docs)] // documentation missing in model
 4279   4277   
/* RustType.kt:534 */
 4280         -
#[derive(
 4281         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 4282         -
)]
 4283         -
pub /* StructureGenerator.kt:201 */ struct IgnoreQueryParamsInResponseInput {/* StructureGenerator.kt:201 */}
        4278  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        4279  +
pub /* StructureGenerator.kt:201 */ struct MalformedDoubleInput {
        4280  +
    /* StructureGenerator.kt:231 */
        4281  +
    #[allow(missing_docs)] // documentation missing in model
        4282  +
    pub double_in_body: ::std::option::Option<f64>,
        4283  +
    /* StructureGenerator.kt:231 */
        4284  +
    #[allow(missing_docs)] // documentation missing in model
        4285  +
    pub double_in_path: f64,
        4286  +
    /* StructureGenerator.kt:231 */
        4287  +
    #[allow(missing_docs)] // documentation missing in model
        4288  +
    pub double_in_query: ::std::option::Option<f64>,
        4289  +
    /* StructureGenerator.kt:231 */
        4290  +
    #[allow(missing_docs)] // documentation missing in model
        4291  +
    pub double_in_header: ::std::option::Option<f64>,
        4292  +
    /* StructureGenerator.kt:201 */
        4293  +
}
        4294  +
/* StructureGenerator.kt:135 */
        4295  +
impl MalformedDoubleInput {
        4296  +
    /* StructureGenerator.kt:231 */
        4297  +
    #[allow(missing_docs)] // documentation missing in model
        4298  +
                           /* StructureGenerator.kt:166 */
        4299  +
    pub fn double_in_body(&self) -> ::std::option::Option<f64> {
        4300  +
        /* StructureGenerator.kt:168 */
        4301  +
        self.double_in_body
        4302  +
        /* StructureGenerator.kt:166 */
        4303  +
    }
        4304  +
    /* StructureGenerator.kt:231 */
        4305  +
    #[allow(missing_docs)] // documentation missing in model
        4306  +
                           /* StructureGenerator.kt:166 */
        4307  +
    pub fn double_in_path(&self) -> f64 {
        4308  +
        /* StructureGenerator.kt:168 */
        4309  +
        self.double_in_path
        4310  +
        /* StructureGenerator.kt:166 */
        4311  +
    }
        4312  +
    /* StructureGenerator.kt:231 */
        4313  +
    #[allow(missing_docs)] // documentation missing in model
        4314  +
                           /* StructureGenerator.kt:166 */
        4315  +
    pub fn double_in_query(&self) -> ::std::option::Option<f64> {
        4316  +
        /* StructureGenerator.kt:168 */
        4317  +
        self.double_in_query
        4318  +
        /* StructureGenerator.kt:166 */
        4319  +
    }
        4320  +
    /* StructureGenerator.kt:231 */
        4321  +
    #[allow(missing_docs)] // documentation missing in model
        4322  +
                           /* StructureGenerator.kt:166 */
        4323  +
    pub fn double_in_header(&self) -> ::std::option::Option<f64> {
        4324  +
        /* StructureGenerator.kt:168 */
        4325  +
        self.double_in_header
        4326  +
        /* StructureGenerator.kt:166 */
        4327  +
    }
        4328  +
    /* StructureGenerator.kt:135 */
        4329  +
}
 4284   4330   
/* ServerCodegenVisitor.kt:356 */
 4285         -
impl IgnoreQueryParamsInResponseInput {
 4286         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`IgnoreQueryParamsInResponseInput`](crate::input::IgnoreQueryParamsInResponseInput).
        4331  +
impl MalformedDoubleInput {
        4332  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedDoubleInput`](crate::input::MalformedDoubleInput).
 4287   4333   
    /* ServerBuilderGenerator.kt:295 */
 4288         -
    pub fn builder() -> crate::input::ignore_query_params_in_response_input::Builder {
        4334  +
    pub fn builder() -> crate::input::malformed_double_input::Builder {
 4289   4335   
        /* ServerBuilderGenerator.kt:296 */
 4290         -
        crate::input::ignore_query_params_in_response_input::Builder::default()
        4336  +
        crate::input::malformed_double_input::Builder::default()
 4291   4337   
        /* ServerBuilderGenerator.kt:295 */
 4292   4338   
    }
 4293   4339   
    /* ServerCodegenVisitor.kt:356 */
 4294   4340   
}
 4295   4341   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4296         -
impl crate::constrained::Constrained for crate::input::IgnoreQueryParamsInResponseInput {
 4297         -
    type Unconstrained = crate::input::ignore_query_params_in_response_input::Builder;
        4342  +
impl crate::constrained::Constrained for crate::input::MalformedDoubleInput {
        4343  +
    type Unconstrained = crate::input::malformed_double_input::Builder;
 4298   4344   
}
 4299   4345   
 4300   4346   
/* StructureGenerator.kt:197 */
 4301   4347   
#[allow(missing_docs)] // documentation missing in model
 4302   4348   
/* RustType.kt:534 */
 4303   4349   
#[derive(
 4304   4350   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 4305   4351   
)]
 4306         -
pub /* StructureGenerator.kt:201 */ struct ConstantAndVariableQueryStringInput {
 4307         -
    /* StructureGenerator.kt:231 */
 4308         -
    #[allow(missing_docs)] // documentation missing in model
 4309         -
    pub baz: ::std::option::Option<::std::string::String>,
        4352  +
pub /* StructureGenerator.kt:201 */ struct MalformedStringInput {
 4310   4353   
    /* StructureGenerator.kt:231 */
 4311   4354   
    #[allow(missing_docs)] // documentation missing in model
 4312         -
    pub maybe_set: ::std::option::Option<::std::string::String>,
        4355  +
    pub blob: ::std::option::Option<::std::string::String>,
 4313   4356   
    /* StructureGenerator.kt:201 */
 4314   4357   
}
 4315   4358   
/* StructureGenerator.kt:135 */
 4316         -
impl ConstantAndVariableQueryStringInput {
 4317         -
    /* StructureGenerator.kt:231 */
 4318         -
    #[allow(missing_docs)] // documentation missing in model
 4319         -
                           /* StructureGenerator.kt:166 */
 4320         -
    pub fn baz(&self) -> ::std::option::Option<&str> {
 4321         -
        /* StructureGenerator.kt:169 */
 4322         -
        self.baz.as_deref()
 4323         -
        /* StructureGenerator.kt:166 */
 4324         -
    }
        4359  +
impl MalformedStringInput {
 4325   4360   
    /* StructureGenerator.kt:231 */
 4326   4361   
    #[allow(missing_docs)] // documentation missing in model
 4327   4362   
                           /* StructureGenerator.kt:166 */
 4328         -
    pub fn maybe_set(&self) -> ::std::option::Option<&str> {
        4363  +
    pub fn blob(&self) -> ::std::option::Option<&str> {
 4329   4364   
        /* StructureGenerator.kt:169 */
 4330         -
        self.maybe_set.as_deref()
        4365  +
        self.blob.as_deref()
 4331   4366   
        /* StructureGenerator.kt:166 */
 4332   4367   
    }
 4333   4368   
    /* StructureGenerator.kt:135 */
 4334   4369   
}
 4335   4370   
/* ServerCodegenVisitor.kt:356 */
 4336         -
impl ConstantAndVariableQueryStringInput {
 4337         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`ConstantAndVariableQueryStringInput`](crate::input::ConstantAndVariableQueryStringInput).
        4371  +
impl MalformedStringInput {
        4372  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedStringInput`](crate::input::MalformedStringInput).
 4338   4373   
    /* ServerBuilderGenerator.kt:295 */
 4339         -
    pub fn builder() -> crate::input::constant_and_variable_query_string_input::Builder {
        4374  +
    pub fn builder() -> crate::input::malformed_string_input::Builder {
 4340   4375   
        /* ServerBuilderGenerator.kt:296 */
 4341         -
        crate::input::constant_and_variable_query_string_input::Builder::default()
        4376  +
        crate::input::malformed_string_input::Builder::default()
 4342   4377   
        /* ServerBuilderGenerator.kt:295 */
 4343   4378   
    }
 4344   4379   
    /* ServerCodegenVisitor.kt:356 */
 4345   4380   
}
 4346   4381   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4347         -
impl crate::constrained::Constrained for crate::input::ConstantAndVariableQueryStringInput {
 4348         -
    type Unconstrained = crate::input::constant_and_variable_query_string_input::Builder;
        4382  +
impl crate::constrained::Constrained for crate::input::MalformedStringInput {
        4383  +
    type Unconstrained = crate::input::malformed_string_input::Builder;
 4349   4384   
}
 4350   4385   
 4351   4386   
/* StructureGenerator.kt:197 */
 4352   4387   
#[allow(missing_docs)] // documentation missing in model
 4353   4388   
/* RustType.kt:534 */
 4354   4389   
#[derive(
 4355   4390   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 4356   4391   
)]
 4357         -
pub /* StructureGenerator.kt:201 */ struct ConstantQueryStringInput {
        4392  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampPathDefaultInput {
 4358   4393   
    /* StructureGenerator.kt:231 */
 4359   4394   
    #[allow(missing_docs)] // documentation missing in model
 4360         -
    pub hello: ::std::string::String,
        4395  +
    pub timestamp: ::aws_smithy_types::DateTime,
 4361   4396   
    /* StructureGenerator.kt:201 */
 4362   4397   
}
 4363   4398   
/* StructureGenerator.kt:135 */
 4364         -
impl ConstantQueryStringInput {
        4399  +
impl MalformedTimestampPathDefaultInput {
 4365   4400   
    /* StructureGenerator.kt:231 */
 4366   4401   
    #[allow(missing_docs)] // documentation missing in model
 4367   4402   
                           /* StructureGenerator.kt:166 */
 4368         -
    pub fn hello(&self) -> &str {
 4369         -
        /* StructureGenerator.kt:171 */
 4370         -
        use std::ops::Deref;
 4371         -
        self.hello.deref()
        4403  +
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
        4404  +
        /* StructureGenerator.kt:172 */
        4405  +
        &self.timestamp
 4372   4406   
        /* StructureGenerator.kt:166 */
 4373   4407   
    }
 4374   4408   
    /* StructureGenerator.kt:135 */
 4375   4409   
}
 4376   4410   
/* ServerCodegenVisitor.kt:356 */
 4377         -
impl ConstantQueryStringInput {
 4378         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`ConstantQueryStringInput`](crate::input::ConstantQueryStringInput).
        4411  +
impl MalformedTimestampPathDefaultInput {
        4412  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampPathDefaultInput`](crate::input::MalformedTimestampPathDefaultInput).
 4379   4413   
    /* ServerBuilderGenerator.kt:295 */
 4380         -
    pub fn builder() -> crate::input::constant_query_string_input::Builder {
        4414  +
    pub fn builder() -> crate::input::malformed_timestamp_path_default_input::Builder {
 4381   4415   
        /* ServerBuilderGenerator.kt:296 */
 4382         -
        crate::input::constant_query_string_input::Builder::default()
        4416  +
        crate::input::malformed_timestamp_path_default_input::Builder::default()
 4383   4417   
        /* ServerBuilderGenerator.kt:295 */
 4384   4418   
    }
 4385   4419   
    /* ServerCodegenVisitor.kt:356 */
 4386   4420   
}
 4387   4421   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4388         -
impl crate::constrained::Constrained for crate::input::ConstantQueryStringInput {
 4389         -
    type Unconstrained = crate::input::constant_query_string_input::Builder;
        4422  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampPathDefaultInput {
        4423  +
    type Unconstrained = crate::input::malformed_timestamp_path_default_input::Builder;
 4390   4424   
}
 4391   4425   
 4392   4426   
/* StructureGenerator.kt:197 */
 4393   4427   
#[allow(missing_docs)] // documentation missing in model
 4394   4428   
/* RustType.kt:534 */
 4395         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 4396         -
pub /* StructureGenerator.kt:201 */ struct AllQueryStringTypesInput {
 4397         -
    /* StructureGenerator.kt:231 */
 4398         -
    #[allow(missing_docs)] // documentation missing in model
 4399         -
    pub query_string: ::std::option::Option<::std::string::String>,
 4400         -
    /* StructureGenerator.kt:231 */
 4401         -
    #[allow(missing_docs)] // documentation missing in model
 4402         -
    pub query_string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
 4403         -
    /* StructureGenerator.kt:231 */
 4404         -
    #[allow(missing_docs)] // documentation missing in model
 4405         -
    pub query_string_set: ::std::option::Option<crate::model::StringSet>,
 4406         -
    /* StructureGenerator.kt:231 */
 4407         -
    #[allow(missing_docs)] // documentation missing in model
 4408         -
    pub query_byte: ::std::option::Option<i8>,
 4409         -
    /* StructureGenerator.kt:231 */
 4410         -
    #[allow(missing_docs)] // documentation missing in model
 4411         -
    pub query_short: ::std::option::Option<i16>,
 4412         -
    /* StructureGenerator.kt:231 */
 4413         -
    #[allow(missing_docs)] // documentation missing in model
 4414         -
    pub query_integer: ::std::option::Option<i32>,
 4415         -
    /* StructureGenerator.kt:231 */
 4416         -
    #[allow(missing_docs)] // documentation missing in model
 4417         -
    pub query_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
 4418         -
    /* StructureGenerator.kt:231 */
 4419         -
    #[allow(missing_docs)] // documentation missing in model
 4420         -
    pub query_integer_set: ::std::option::Option<crate::model::IntegerSet>,
 4421         -
    /* StructureGenerator.kt:231 */
 4422         -
    #[allow(missing_docs)] // documentation missing in model
 4423         -
    pub query_long: ::std::option::Option<i64>,
 4424         -
    /* StructureGenerator.kt:231 */
 4425         -
    #[allow(missing_docs)] // documentation missing in model
 4426         -
    pub query_float: ::std::option::Option<f32>,
 4427         -
    /* StructureGenerator.kt:231 */
 4428         -
    #[allow(missing_docs)] // documentation missing in model
 4429         -
    pub query_double: ::std::option::Option<f64>,
 4430         -
    /* StructureGenerator.kt:231 */
 4431         -
    #[allow(missing_docs)] // documentation missing in model
 4432         -
    pub query_double_list: ::std::option::Option<::std::vec::Vec<f64>>,
 4433         -
    /* StructureGenerator.kt:231 */
 4434         -
    #[allow(missing_docs)] // documentation missing in model
 4435         -
    pub query_boolean: ::std::option::Option<bool>,
 4436         -
    /* StructureGenerator.kt:231 */
 4437         -
    #[allow(missing_docs)] // documentation missing in model
 4438         -
    pub query_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
 4439         -
    /* StructureGenerator.kt:231 */
 4440         -
    #[allow(missing_docs)] // documentation missing in model
 4441         -
    pub query_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
 4442         -
    /* StructureGenerator.kt:231 */
 4443         -
    #[allow(missing_docs)] // documentation missing in model
 4444         -
    pub query_timestamp_list: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
 4445         -
    /* StructureGenerator.kt:231 */
 4446         -
    #[allow(missing_docs)] // documentation missing in model
 4447         -
    pub query_enum: ::std::option::Option<crate::model::FooEnum>,
 4448         -
    /* StructureGenerator.kt:231 */
 4449         -
    #[allow(missing_docs)] // documentation missing in model
 4450         -
    pub query_enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
 4451         -
    /* StructureGenerator.kt:231 */
 4452         -
    #[allow(missing_docs)] // documentation missing in model
 4453         -
    pub query_integer_enum: ::std::option::Option<i32>,
 4454         -
    /* StructureGenerator.kt:231 */
 4455         -
    #[allow(missing_docs)] // documentation missing in model
 4456         -
    pub query_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
        4429  +
#[derive(
        4430  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        4431  +
)]
        4432  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampPathHttpDateInput {
 4457   4433   
    /* StructureGenerator.kt:231 */
 4458   4434   
    #[allow(missing_docs)] // documentation missing in model
 4459         -
    pub query_params_map_of_string_list: ::std::option::Option<
 4460         -
        ::std::collections::HashMap<::std::string::String, ::std::vec::Vec<::std::string::String>>,
 4461         -
    >,
        4435  +
    pub timestamp: ::aws_smithy_types::DateTime,
 4462   4436   
    /* StructureGenerator.kt:201 */
 4463   4437   
}
 4464   4438   
/* StructureGenerator.kt:135 */
 4465         -
impl AllQueryStringTypesInput {
        4439  +
impl MalformedTimestampPathHttpDateInput {
 4466   4440   
    /* StructureGenerator.kt:231 */
 4467   4441   
    #[allow(missing_docs)] // documentation missing in model
 4468   4442   
                           /* StructureGenerator.kt:166 */
 4469         -
    pub fn query_string(&self) -> ::std::option::Option<&str> {
 4470         -
        /* StructureGenerator.kt:169 */
 4471         -
        self.query_string.as_deref()
        4443  +
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
        4444  +
        /* StructureGenerator.kt:172 */
        4445  +
        &self.timestamp
 4472   4446   
        /* StructureGenerator.kt:166 */
 4473   4447   
    }
        4448  +
    /* StructureGenerator.kt:135 */
        4449  +
}
        4450  +
/* ServerCodegenVisitor.kt:356 */
        4451  +
impl MalformedTimestampPathHttpDateInput {
        4452  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampPathHttpDateInput`](crate::input::MalformedTimestampPathHttpDateInput).
        4453  +
    /* ServerBuilderGenerator.kt:295 */
        4454  +
    pub fn builder() -> crate::input::malformed_timestamp_path_http_date_input::Builder {
        4455  +
        /* ServerBuilderGenerator.kt:296 */
        4456  +
        crate::input::malformed_timestamp_path_http_date_input::Builder::default()
        4457  +
        /* ServerBuilderGenerator.kt:295 */
        4458  +
    }
        4459  +
    /* ServerCodegenVisitor.kt:356 */
        4460  +
}
        4461  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        4462  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampPathHttpDateInput {
        4463  +
    type Unconstrained = crate::input::malformed_timestamp_path_http_date_input::Builder;
        4464  +
}
        4465  +
        4466  +
/* StructureGenerator.kt:197 */
        4467  +
#[allow(missing_docs)] // documentation missing in model
        4468  +
/* RustType.kt:534 */
        4469  +
#[derive(
        4470  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        4471  +
)]
        4472  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampPathEpochInput {
 4474   4473   
    /* StructureGenerator.kt:231 */
 4475   4474   
    #[allow(missing_docs)] // documentation missing in model
 4476         -
                           /* StructureGenerator.kt:166 */
 4477         -
    pub fn query_string_list(&self) -> ::std::option::Option<&[::std::string::String]> {
 4478         -
        /* StructureGenerator.kt:169 */
 4479         -
        self.query_string_list.as_deref()
 4480         -
        /* StructureGenerator.kt:166 */
 4481         -
    }
        4475  +
    pub timestamp: ::aws_smithy_types::DateTime,
        4476  +
    /* StructureGenerator.kt:201 */
        4477  +
}
        4478  +
/* StructureGenerator.kt:135 */
        4479  +
impl MalformedTimestampPathEpochInput {
 4482   4480   
    /* StructureGenerator.kt:231 */
 4483   4481   
    #[allow(missing_docs)] // documentation missing in model
 4484   4482   
                           /* StructureGenerator.kt:166 */
 4485         -
    pub fn query_string_set(&self) -> ::std::option::Option<&crate::model::StringSet> {
 4486         -
        /* StructureGenerator.kt:170 */
 4487         -
        self.query_string_set.as_ref()
 4488         -
        /* StructureGenerator.kt:166 */
 4489         -
    }
 4490         -
    /* StructureGenerator.kt:231 */
 4491         -
    #[allow(missing_docs)] // documentation missing in model
 4492         -
                           /* StructureGenerator.kt:166 */
 4493         -
    pub fn query_byte(&self) -> ::std::option::Option<i8> {
 4494         -
        /* StructureGenerator.kt:168 */
 4495         -
        self.query_byte
 4496         -
        /* StructureGenerator.kt:166 */
 4497         -
    }
 4498         -
    /* StructureGenerator.kt:231 */
 4499         -
    #[allow(missing_docs)] // documentation missing in model
 4500         -
                           /* StructureGenerator.kt:166 */
 4501         -
    pub fn query_short(&self) -> ::std::option::Option<i16> {
 4502         -
        /* StructureGenerator.kt:168 */
 4503         -
        self.query_short
 4504         -
        /* StructureGenerator.kt:166 */
 4505         -
    }
 4506         -
    /* StructureGenerator.kt:231 */
 4507         -
    #[allow(missing_docs)] // documentation missing in model
 4508         -
                           /* StructureGenerator.kt:166 */
 4509         -
    pub fn query_integer(&self) -> ::std::option::Option<i32> {
 4510         -
        /* StructureGenerator.kt:168 */
 4511         -
        self.query_integer
 4512         -
        /* StructureGenerator.kt:166 */
 4513         -
    }
 4514         -
    /* StructureGenerator.kt:231 */
 4515         -
    #[allow(missing_docs)] // documentation missing in model
 4516         -
                           /* StructureGenerator.kt:166 */
 4517         -
    pub fn query_integer_list(&self) -> ::std::option::Option<&[i32]> {
 4518         -
        /* StructureGenerator.kt:169 */
 4519         -
        self.query_integer_list.as_deref()
 4520         -
        /* StructureGenerator.kt:166 */
 4521         -
    }
 4522         -
    /* StructureGenerator.kt:231 */
 4523         -
    #[allow(missing_docs)] // documentation missing in model
 4524         -
                           /* StructureGenerator.kt:166 */
 4525         -
    pub fn query_integer_set(&self) -> ::std::option::Option<&crate::model::IntegerSet> {
 4526         -
        /* StructureGenerator.kt:170 */
 4527         -
        self.query_integer_set.as_ref()
 4528         -
        /* StructureGenerator.kt:166 */
 4529         -
    }
 4530         -
    /* StructureGenerator.kt:231 */
 4531         -
    #[allow(missing_docs)] // documentation missing in model
 4532         -
                           /* StructureGenerator.kt:166 */
 4533         -
    pub fn query_long(&self) -> ::std::option::Option<i64> {
 4534         -
        /* StructureGenerator.kt:168 */
 4535         -
        self.query_long
 4536         -
        /* StructureGenerator.kt:166 */
 4537         -
    }
 4538         -
    /* StructureGenerator.kt:231 */
 4539         -
    #[allow(missing_docs)] // documentation missing in model
 4540         -
                           /* StructureGenerator.kt:166 */
 4541         -
    pub fn query_float(&self) -> ::std::option::Option<f32> {
 4542         -
        /* StructureGenerator.kt:168 */
 4543         -
        self.query_float
 4544         -
        /* StructureGenerator.kt:166 */
 4545         -
    }
 4546         -
    /* StructureGenerator.kt:231 */
 4547         -
    #[allow(missing_docs)] // documentation missing in model
 4548         -
                           /* StructureGenerator.kt:166 */
 4549         -
    pub fn query_double(&self) -> ::std::option::Option<f64> {
 4550         -
        /* StructureGenerator.kt:168 */
 4551         -
        self.query_double
 4552         -
        /* StructureGenerator.kt:166 */
 4553         -
    }
 4554         -
    /* StructureGenerator.kt:231 */
 4555         -
    #[allow(missing_docs)] // documentation missing in model
 4556         -
                           /* StructureGenerator.kt:166 */
 4557         -
    pub fn query_double_list(&self) -> ::std::option::Option<&[f64]> {
 4558         -
        /* StructureGenerator.kt:169 */
 4559         -
        self.query_double_list.as_deref()
 4560         -
        /* StructureGenerator.kt:166 */
 4561         -
    }
 4562         -
    /* StructureGenerator.kt:231 */
 4563         -
    #[allow(missing_docs)] // documentation missing in model
 4564         -
                           /* StructureGenerator.kt:166 */
 4565         -
    pub fn query_boolean(&self) -> ::std::option::Option<bool> {
 4566         -
        /* StructureGenerator.kt:168 */
 4567         -
        self.query_boolean
 4568         -
        /* StructureGenerator.kt:166 */
 4569         -
    }
 4570         -
    /* StructureGenerator.kt:231 */
 4571         -
    #[allow(missing_docs)] // documentation missing in model
 4572         -
                           /* StructureGenerator.kt:166 */
 4573         -
    pub fn query_boolean_list(&self) -> ::std::option::Option<&[bool]> {
 4574         -
        /* StructureGenerator.kt:169 */
 4575         -
        self.query_boolean_list.as_deref()
 4576         -
        /* StructureGenerator.kt:166 */
 4577         -
    }
 4578         -
    /* StructureGenerator.kt:231 */
 4579         -
    #[allow(missing_docs)] // documentation missing in model
 4580         -
                           /* StructureGenerator.kt:166 */
 4581         -
    pub fn query_timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 4582         -
        /* StructureGenerator.kt:170 */
 4583         -
        self.query_timestamp.as_ref()
 4584         -
        /* StructureGenerator.kt:166 */
 4585         -
    }
 4586         -
    /* StructureGenerator.kt:231 */
 4587         -
    #[allow(missing_docs)] // documentation missing in model
 4588         -
                           /* StructureGenerator.kt:166 */
 4589         -
    pub fn query_timestamp_list(&self) -> ::std::option::Option<&[::aws_smithy_types::DateTime]> {
 4590         -
        /* StructureGenerator.kt:169 */
 4591         -
        self.query_timestamp_list.as_deref()
 4592         -
        /* StructureGenerator.kt:166 */
 4593         -
    }
 4594         -
    /* StructureGenerator.kt:231 */
 4595         -
    #[allow(missing_docs)] // documentation missing in model
 4596         -
                           /* StructureGenerator.kt:166 */
 4597         -
    pub fn query_enum(&self) -> ::std::option::Option<&crate::model::FooEnum> {
 4598         -
        /* StructureGenerator.kt:170 */
 4599         -
        self.query_enum.as_ref()
 4600         -
        /* StructureGenerator.kt:166 */
 4601         -
    }
 4602         -
    /* StructureGenerator.kt:231 */
 4603         -
    #[allow(missing_docs)] // documentation missing in model
 4604         -
                           /* StructureGenerator.kt:166 */
 4605         -
    pub fn query_enum_list(&self) -> ::std::option::Option<&[crate::model::FooEnum]> {
 4606         -
        /* StructureGenerator.kt:169 */
 4607         -
        self.query_enum_list.as_deref()
 4608         -
        /* StructureGenerator.kt:166 */
 4609         -
    }
 4610         -
    /* StructureGenerator.kt:231 */
 4611         -
    #[allow(missing_docs)] // documentation missing in model
 4612         -
                           /* StructureGenerator.kt:166 */
 4613         -
    pub fn query_integer_enum(&self) -> ::std::option::Option<i32> {
 4614         -
        /* StructureGenerator.kt:168 */
 4615         -
        self.query_integer_enum
 4616         -
        /* StructureGenerator.kt:166 */
 4617         -
    }
 4618         -
    /* StructureGenerator.kt:231 */
 4619         -
    #[allow(missing_docs)] // documentation missing in model
 4620         -
                           /* StructureGenerator.kt:166 */
 4621         -
    pub fn query_integer_enum_list(&self) -> ::std::option::Option<&[i32]> {
 4622         -
        /* StructureGenerator.kt:169 */
 4623         -
        self.query_integer_enum_list.as_deref()
 4624         -
        /* StructureGenerator.kt:166 */
 4625         -
    }
 4626         -
    /* StructureGenerator.kt:231 */
 4627         -
    #[allow(missing_docs)] // documentation missing in model
 4628         -
                           /* StructureGenerator.kt:166 */
 4629         -
    pub fn query_params_map_of_string_list(
 4630         -
        &self,
 4631         -
    ) -> ::std::option::Option<
 4632         -
        &::std::collections::HashMap<::std::string::String, ::std::vec::Vec<::std::string::String>>,
 4633         -
    > {
 4634         -
        /* StructureGenerator.kt:170 */
 4635         -
        self.query_params_map_of_string_list.as_ref()
        4483  +
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
        4484  +
        /* StructureGenerator.kt:172 */
        4485  +
        &self.timestamp
 4636   4486   
        /* StructureGenerator.kt:166 */
 4637   4487   
    }
 4638   4488   
    /* StructureGenerator.kt:135 */
 4639   4489   
}
 4640   4490   
/* ServerCodegenVisitor.kt:356 */
 4641         -
impl AllQueryStringTypesInput {
 4642         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`AllQueryStringTypesInput`](crate::input::AllQueryStringTypesInput).
        4491  +
impl MalformedTimestampPathEpochInput {
        4492  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampPathEpochInput`](crate::input::MalformedTimestampPathEpochInput).
 4643   4493   
    /* ServerBuilderGenerator.kt:295 */
 4644         -
    pub fn builder() -> crate::input::all_query_string_types_input::Builder {
        4494  +
    pub fn builder() -> crate::input::malformed_timestamp_path_epoch_input::Builder {
 4645   4495   
        /* ServerBuilderGenerator.kt:296 */
 4646         -
        crate::input::all_query_string_types_input::Builder::default()
        4496  +
        crate::input::malformed_timestamp_path_epoch_input::Builder::default()
 4647   4497   
        /* ServerBuilderGenerator.kt:295 */
 4648   4498   
    }
 4649   4499   
    /* ServerCodegenVisitor.kt:356 */
 4650   4500   
}
 4651   4501   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4652         -
impl crate::constrained::Constrained for crate::input::AllQueryStringTypesInput {
 4653         -
    type Unconstrained = crate::input::all_query_string_types_input::Builder;
        4502  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampPathEpochInput {
        4503  +
    type Unconstrained = crate::input::malformed_timestamp_path_epoch_input::Builder;
 4654   4504   
}
 4655   4505   
 4656   4506   
/* StructureGenerator.kt:197 */
 4657   4507   
#[allow(missing_docs)] // documentation missing in model
 4658   4508   
/* RustType.kt:534 */
 4659   4509   
#[derive(
 4660   4510   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 4661   4511   
)]
 4662         -
pub /* StructureGenerator.kt:201 */ struct HttpRequestWithRegexLiteralInput {
        4512  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampQueryDefaultInput {
 4663   4513   
    /* StructureGenerator.kt:231 */
 4664   4514   
    #[allow(missing_docs)] // documentation missing in model
 4665         -
    pub str: ::std::string::String,
        4515  +
    pub timestamp: ::aws_smithy_types::DateTime,
 4666   4516   
    /* StructureGenerator.kt:201 */
 4667   4517   
}
 4668   4518   
/* StructureGenerator.kt:135 */
 4669         -
impl HttpRequestWithRegexLiteralInput {
        4519  +
impl MalformedTimestampQueryDefaultInput {
 4670   4520   
    /* StructureGenerator.kt:231 */
 4671   4521   
    #[allow(missing_docs)] // documentation missing in model
 4672   4522   
                           /* StructureGenerator.kt:166 */
 4673         -
    pub fn str(&self) -> &str {
 4674         -
        /* StructureGenerator.kt:171 */
 4675         -
        use std::ops::Deref;
 4676         -
        self.str.deref()
        4523  +
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
        4524  +
        /* StructureGenerator.kt:172 */
        4525  +
        &self.timestamp
 4677   4526   
        /* StructureGenerator.kt:166 */
 4678   4527   
    }
 4679   4528   
    /* StructureGenerator.kt:135 */
 4680   4529   
}
 4681   4530   
/* ServerCodegenVisitor.kt:356 */
 4682         -
impl HttpRequestWithRegexLiteralInput {
 4683         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpRequestWithRegexLiteralInput`](crate::input::HttpRequestWithRegexLiteralInput).
        4531  +
impl MalformedTimestampQueryDefaultInput {
        4532  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampQueryDefaultInput`](crate::input::MalformedTimestampQueryDefaultInput).
 4684   4533   
    /* ServerBuilderGenerator.kt:295 */
 4685         -
    pub fn builder() -> crate::input::http_request_with_regex_literal_input::Builder {
        4534  +
    pub fn builder() -> crate::input::malformed_timestamp_query_default_input::Builder {
 4686   4535   
        /* ServerBuilderGenerator.kt:296 */
 4687         -
        crate::input::http_request_with_regex_literal_input::Builder::default()
        4536  +
        crate::input::malformed_timestamp_query_default_input::Builder::default()
 4688   4537   
        /* ServerBuilderGenerator.kt:295 */
 4689   4538   
    }
 4690   4539   
    /* ServerCodegenVisitor.kt:356 */
 4691   4540   
}
 4692   4541   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4693         -
impl crate::constrained::Constrained for crate::input::HttpRequestWithRegexLiteralInput {
 4694         -
    type Unconstrained = crate::input::http_request_with_regex_literal_input::Builder;
        4542  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampQueryDefaultInput {
        4543  +
    type Unconstrained = crate::input::malformed_timestamp_query_default_input::Builder;
 4695   4544   
}
 4696   4545   
 4697   4546   
/* StructureGenerator.kt:197 */
 4698   4547   
#[allow(missing_docs)] // documentation missing in model
 4699   4548   
/* RustType.kt:534 */
 4700         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 4701         -
pub /* StructureGenerator.kt:201 */ struct HttpRequestWithFloatLabelsInput {
 4702         -
    /* StructureGenerator.kt:231 */
 4703         -
    #[allow(missing_docs)] // documentation missing in model
 4704         -
    pub float: f32,
        4549  +
#[derive(
        4550  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        4551  +
)]
        4552  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampQueryHttpDateInput {
 4705   4553   
    /* StructureGenerator.kt:231 */
 4706   4554   
    #[allow(missing_docs)] // documentation missing in model
 4707         -
    pub double: f64,
        4555  +
    pub timestamp: ::aws_smithy_types::DateTime,
 4708   4556   
    /* StructureGenerator.kt:201 */
 4709   4557   
}
 4710   4558   
/* StructureGenerator.kt:135 */
 4711         -
impl HttpRequestWithFloatLabelsInput {
 4712         -
    /* StructureGenerator.kt:231 */
 4713         -
    #[allow(missing_docs)] // documentation missing in model
 4714         -
                           /* StructureGenerator.kt:166 */
 4715         -
    pub fn float(&self) -> f32 {
 4716         -
        /* StructureGenerator.kt:168 */
 4717         -
        self.float
 4718         -
        /* StructureGenerator.kt:166 */
 4719         -
    }
        4559  +
impl MalformedTimestampQueryHttpDateInput {
 4720   4560   
    /* StructureGenerator.kt:231 */
 4721   4561   
    #[allow(missing_docs)] // documentation missing in model
 4722   4562   
                           /* StructureGenerator.kt:166 */
 4723         -
    pub fn double(&self) -> f64 {
 4724         -
        /* StructureGenerator.kt:168 */
 4725         -
        self.double
        4563  +
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
        4564  +
        /* StructureGenerator.kt:172 */
        4565  +
        &self.timestamp
 4726   4566   
        /* StructureGenerator.kt:166 */
 4727   4567   
    }
 4728   4568   
    /* StructureGenerator.kt:135 */
 4729   4569   
}
 4730   4570   
/* ServerCodegenVisitor.kt:356 */
 4731         -
impl HttpRequestWithFloatLabelsInput {
 4732         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpRequestWithFloatLabelsInput`](crate::input::HttpRequestWithFloatLabelsInput).
        4571  +
impl MalformedTimestampQueryHttpDateInput {
        4572  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampQueryHttpDateInput`](crate::input::MalformedTimestampQueryHttpDateInput).
 4733   4573   
    /* ServerBuilderGenerator.kt:295 */
 4734         -
    pub fn builder() -> crate::input::http_request_with_float_labels_input::Builder {
        4574  +
    pub fn builder() -> crate::input::malformed_timestamp_query_http_date_input::Builder {
 4735   4575   
        /* ServerBuilderGenerator.kt:296 */
 4736         -
        crate::input::http_request_with_float_labels_input::Builder::default()
        4576  +
        crate::input::malformed_timestamp_query_http_date_input::Builder::default()
 4737   4577   
        /* ServerBuilderGenerator.kt:295 */
 4738   4578   
    }
 4739   4579   
    /* ServerCodegenVisitor.kt:356 */
 4740   4580   
}
 4741   4581   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4742         -
impl crate::constrained::Constrained for crate::input::HttpRequestWithFloatLabelsInput {
 4743         -
    type Unconstrained = crate::input::http_request_with_float_labels_input::Builder;
        4582  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampQueryHttpDateInput {
        4583  +
    type Unconstrained = crate::input::malformed_timestamp_query_http_date_input::Builder;
 4744   4584   
}
 4745   4585   
 4746   4586   
/* StructureGenerator.kt:197 */
 4747   4587   
#[allow(missing_docs)] // documentation missing in model
 4748   4588   
/* RustType.kt:534 */
 4749   4589   
#[derive(
 4750   4590   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 4751   4591   
)]
 4752         -
pub /* StructureGenerator.kt:201 */ struct HttpRequestWithGreedyLabelInPathInput {
 4753         -
    /* StructureGenerator.kt:231 */
 4754         -
    #[allow(missing_docs)] // documentation missing in model
 4755         -
    pub foo: ::std::string::String,
        4592  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampQueryEpochInput {
 4756   4593   
    /* StructureGenerator.kt:231 */
 4757   4594   
    #[allow(missing_docs)] // documentation missing in model
 4758         -
    pub baz: ::std::string::String,
        4595  +
    pub timestamp: ::aws_smithy_types::DateTime,
 4759   4596   
    /* StructureGenerator.kt:201 */
 4760   4597   
}
 4761   4598   
/* StructureGenerator.kt:135 */
 4762         -
impl HttpRequestWithGreedyLabelInPathInput {
 4763         -
    /* StructureGenerator.kt:231 */
 4764         -
    #[allow(missing_docs)] // documentation missing in model
 4765         -
                           /* StructureGenerator.kt:166 */
 4766         -
    pub fn foo(&self) -> &str {
 4767         -
        /* StructureGenerator.kt:171 */
 4768         -
        use std::ops::Deref;
 4769         -
        self.foo.deref()
 4770         -
        /* StructureGenerator.kt:166 */
 4771         -
    }
        4599  +
impl MalformedTimestampQueryEpochInput {
 4772   4600   
    /* StructureGenerator.kt:231 */
 4773   4601   
    #[allow(missing_docs)] // documentation missing in model
 4774   4602   
                           /* StructureGenerator.kt:166 */
 4775         -
    pub fn baz(&self) -> &str {
 4776         -
        /* StructureGenerator.kt:171 */
 4777         -
        use std::ops::Deref;
 4778         -
        self.baz.deref()
        4603  +
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
        4604  +
        /* StructureGenerator.kt:172 */
        4605  +
        &self.timestamp
 4779   4606   
        /* StructureGenerator.kt:166 */
 4780   4607   
    }
 4781   4608   
    /* StructureGenerator.kt:135 */
 4782   4609   
}
 4783   4610   
/* ServerCodegenVisitor.kt:356 */
 4784         -
impl HttpRequestWithGreedyLabelInPathInput {
 4785         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpRequestWithGreedyLabelInPathInput`](crate::input::HttpRequestWithGreedyLabelInPathInput).
        4611  +
impl MalformedTimestampQueryEpochInput {
        4612  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampQueryEpochInput`](crate::input::MalformedTimestampQueryEpochInput).
 4786   4613   
    /* ServerBuilderGenerator.kt:295 */
 4787         -
    pub fn builder() -> crate::input::http_request_with_greedy_label_in_path_input::Builder {
        4614  +
    pub fn builder() -> crate::input::malformed_timestamp_query_epoch_input::Builder {
 4788   4615   
        /* ServerBuilderGenerator.kt:296 */
 4789         -
        crate::input::http_request_with_greedy_label_in_path_input::Builder::default()
        4616  +
        crate::input::malformed_timestamp_query_epoch_input::Builder::default()
 4790   4617   
        /* ServerBuilderGenerator.kt:295 */
 4791   4618   
    }
 4792   4619   
    /* ServerCodegenVisitor.kt:356 */
 4793   4620   
}
 4794   4621   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4795         -
impl crate::constrained::Constrained for crate::input::HttpRequestWithGreedyLabelInPathInput {
 4796         -
    type Unconstrained = crate::input::http_request_with_greedy_label_in_path_input::Builder;
        4622  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampQueryEpochInput {
        4623  +
    type Unconstrained = crate::input::malformed_timestamp_query_epoch_input::Builder;
 4797   4624   
}
 4798   4625   
 4799   4626   
/* StructureGenerator.kt:197 */
 4800   4627   
#[allow(missing_docs)] // documentation missing in model
 4801   4628   
/* RustType.kt:534 */
 4802   4629   
#[derive(
 4803   4630   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 4804   4631   
)]
 4805         -
pub /* StructureGenerator.kt:201 */ struct HttpRequestWithLabelsAndTimestampFormatInput {
 4806         -
    /* StructureGenerator.kt:231 */
 4807         -
    #[allow(missing_docs)] // documentation missing in model
 4808         -
    pub member_epoch_seconds: ::aws_smithy_types::DateTime,
 4809         -
    /* StructureGenerator.kt:231 */
 4810         -
    #[allow(missing_docs)] // documentation missing in model
 4811         -
    pub member_http_date: ::aws_smithy_types::DateTime,
 4812         -
    /* StructureGenerator.kt:231 */
 4813         -
    #[allow(missing_docs)] // documentation missing in model
 4814         -
    pub member_date_time: ::aws_smithy_types::DateTime,
 4815         -
    /* StructureGenerator.kt:231 */
 4816         -
    #[allow(missing_docs)] // documentation missing in model
 4817         -
    pub default_format: ::aws_smithy_types::DateTime,
 4818         -
    /* StructureGenerator.kt:231 */
 4819         -
    #[allow(missing_docs)] // documentation missing in model
 4820         -
    pub target_epoch_seconds: ::aws_smithy_types::DateTime,
 4821         -
    /* StructureGenerator.kt:231 */
 4822         -
    #[allow(missing_docs)] // documentation missing in model
 4823         -
    pub target_http_date: ::aws_smithy_types::DateTime,
        4632  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampHeaderDefaultInput {
 4824   4633   
    /* StructureGenerator.kt:231 */
 4825   4634   
    #[allow(missing_docs)] // documentation missing in model
 4826         -
    pub target_date_time: ::aws_smithy_types::DateTime,
        4635  +
    pub timestamp: ::aws_smithy_types::DateTime,
 4827   4636   
    /* StructureGenerator.kt:201 */
 4828   4637   
}
 4829   4638   
/* StructureGenerator.kt:135 */
 4830         -
impl HttpRequestWithLabelsAndTimestampFormatInput {
        4639  +
impl MalformedTimestampHeaderDefaultInput {
 4831   4640   
    /* StructureGenerator.kt:231 */
 4832   4641   
    #[allow(missing_docs)] // documentation missing in model
 4833   4642   
                           /* StructureGenerator.kt:166 */
 4834         -
    pub fn member_epoch_seconds(&self) -> &::aws_smithy_types::DateTime {
        4643  +
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
 4835   4644   
        /* StructureGenerator.kt:172 */
 4836         -
        &self.member_epoch_seconds
        4645  +
        &self.timestamp
 4837   4646   
        /* StructureGenerator.kt:166 */
 4838   4647   
    }
 4839         -
    /* StructureGenerator.kt:231 */
 4840         -
    #[allow(missing_docs)] // documentation missing in model
 4841         -
                           /* StructureGenerator.kt:166 */
 4842         -
    pub fn member_http_date(&self) -> &::aws_smithy_types::DateTime {
 4843         -
        /* StructureGenerator.kt:172 */
 4844         -
        &self.member_http_date
 4845         -
        /* StructureGenerator.kt:166 */
        4648  +
    /* StructureGenerator.kt:135 */
        4649  +
}
        4650  +
/* ServerCodegenVisitor.kt:356 */
        4651  +
impl MalformedTimestampHeaderDefaultInput {
        4652  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampHeaderDefaultInput`](crate::input::MalformedTimestampHeaderDefaultInput).
        4653  +
    /* ServerBuilderGenerator.kt:295 */
        4654  +
    pub fn builder() -> crate::input::malformed_timestamp_header_default_input::Builder {
        4655  +
        /* ServerBuilderGenerator.kt:296 */
        4656  +
        crate::input::malformed_timestamp_header_default_input::Builder::default()
        4657  +
        /* ServerBuilderGenerator.kt:295 */
 4846   4658   
    }
        4659  +
    /* ServerCodegenVisitor.kt:356 */
        4660  +
}
        4661  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        4662  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampHeaderDefaultInput {
        4663  +
    type Unconstrained = crate::input::malformed_timestamp_header_default_input::Builder;
        4664  +
}
        4665  +
        4666  +
/* StructureGenerator.kt:197 */
        4667  +
#[allow(missing_docs)] // documentation missing in model
        4668  +
/* RustType.kt:534 */
        4669  +
#[derive(
        4670  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        4671  +
)]
        4672  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampHeaderDateTimeInput {
 4847   4673   
    /* StructureGenerator.kt:231 */
 4848   4674   
    #[allow(missing_docs)] // documentation missing in model
 4849         -
                           /* StructureGenerator.kt:166 */
 4850         -
    pub fn member_date_time(&self) -> &::aws_smithy_types::DateTime {
 4851         -
        /* StructureGenerator.kt:172 */
 4852         -
        &self.member_date_time
 4853         -
        /* StructureGenerator.kt:166 */
 4854         -
    }
        4675  +
    pub timestamp: ::aws_smithy_types::DateTime,
        4676  +
    /* StructureGenerator.kt:201 */
        4677  +
}
        4678  +
/* StructureGenerator.kt:135 */
        4679  +
impl MalformedTimestampHeaderDateTimeInput {
 4855   4680   
    /* StructureGenerator.kt:231 */
 4856   4681   
    #[allow(missing_docs)] // documentation missing in model
 4857   4682   
                           /* StructureGenerator.kt:166 */
 4858         -
    pub fn default_format(&self) -> &::aws_smithy_types::DateTime {
        4683  +
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
 4859   4684   
        /* StructureGenerator.kt:172 */
 4860         -
        &self.default_format
        4685  +
        &self.timestamp
 4861   4686   
        /* StructureGenerator.kt:166 */
 4862   4687   
    }
 4863         -
    /* StructureGenerator.kt:231 */
 4864         -
    #[allow(missing_docs)] // documentation missing in model
 4865         -
                           /* StructureGenerator.kt:166 */
 4866         -
    pub fn target_epoch_seconds(&self) -> &::aws_smithy_types::DateTime {
 4867         -
        /* StructureGenerator.kt:172 */
 4868         -
        &self.target_epoch_seconds
 4869         -
        /* StructureGenerator.kt:166 */
        4688  +
    /* StructureGenerator.kt:135 */
        4689  +
}
        4690  +
/* ServerCodegenVisitor.kt:356 */
        4691  +
impl MalformedTimestampHeaderDateTimeInput {
        4692  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampHeaderDateTimeInput`](crate::input::MalformedTimestampHeaderDateTimeInput).
        4693  +
    /* ServerBuilderGenerator.kt:295 */
        4694  +
    pub fn builder() -> crate::input::malformed_timestamp_header_date_time_input::Builder {
        4695  +
        /* ServerBuilderGenerator.kt:296 */
        4696  +
        crate::input::malformed_timestamp_header_date_time_input::Builder::default()
        4697  +
        /* ServerBuilderGenerator.kt:295 */
 4870   4698   
    }
        4699  +
    /* ServerCodegenVisitor.kt:356 */
        4700  +
}
        4701  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        4702  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampHeaderDateTimeInput {
        4703  +
    type Unconstrained = crate::input::malformed_timestamp_header_date_time_input::Builder;
        4704  +
}
        4705  +
        4706  +
/* StructureGenerator.kt:197 */
        4707  +
#[allow(missing_docs)] // documentation missing in model
        4708  +
/* RustType.kt:534 */
        4709  +
#[derive(
        4710  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        4711  +
)]
        4712  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampHeaderEpochInput {
 4871   4713   
    /* StructureGenerator.kt:231 */
 4872   4714   
    #[allow(missing_docs)] // documentation missing in model
 4873         -
                           /* StructureGenerator.kt:166 */
 4874         -
    pub fn target_http_date(&self) -> &::aws_smithy_types::DateTime {
 4875         -
        /* StructureGenerator.kt:172 */
 4876         -
        &self.target_http_date
 4877         -
        /* StructureGenerator.kt:166 */
 4878         -
    }
        4715  +
    pub timestamp: ::aws_smithy_types::DateTime,
        4716  +
    /* StructureGenerator.kt:201 */
        4717  +
}
        4718  +
/* StructureGenerator.kt:135 */
        4719  +
impl MalformedTimestampHeaderEpochInput {
 4879   4720   
    /* StructureGenerator.kt:231 */
 4880   4721   
    #[allow(missing_docs)] // documentation missing in model
 4881   4722   
                           /* StructureGenerator.kt:166 */
 4882         -
    pub fn target_date_time(&self) -> &::aws_smithy_types::DateTime {
        4723  +
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
 4883   4724   
        /* StructureGenerator.kt:172 */
 4884         -
        &self.target_date_time
        4725  +
        &self.timestamp
 4885   4726   
        /* StructureGenerator.kt:166 */
 4886   4727   
    }
 4887   4728   
    /* StructureGenerator.kt:135 */
 4888   4729   
}
 4889   4730   
/* ServerCodegenVisitor.kt:356 */
 4890         -
impl HttpRequestWithLabelsAndTimestampFormatInput {
 4891         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpRequestWithLabelsAndTimestampFormatInput`](crate::input::HttpRequestWithLabelsAndTimestampFormatInput).
        4731  +
impl MalformedTimestampHeaderEpochInput {
        4732  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampHeaderEpochInput`](crate::input::MalformedTimestampHeaderEpochInput).
 4892   4733   
    /* ServerBuilderGenerator.kt:295 */
 4893         -
    pub fn builder() -> crate::input::http_request_with_labels_and_timestamp_format_input::Builder {
        4734  +
    pub fn builder() -> crate::input::malformed_timestamp_header_epoch_input::Builder {
 4894   4735   
        /* ServerBuilderGenerator.kt:296 */
 4895         -
        crate::input::http_request_with_labels_and_timestamp_format_input::Builder::default()
        4736  +
        crate::input::malformed_timestamp_header_epoch_input::Builder::default()
 4896   4737   
        /* ServerBuilderGenerator.kt:295 */
 4897   4738   
    }
 4898   4739   
    /* ServerCodegenVisitor.kt:356 */
 4899   4740   
}
 4900   4741   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 4901         -
impl crate::constrained::Constrained
 4902         -
    for crate::input::HttpRequestWithLabelsAndTimestampFormatInput
 4903         -
{
 4904         -
    type Unconstrained = crate::input::http_request_with_labels_and_timestamp_format_input::Builder;
        4742  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampHeaderEpochInput {
        4743  +
    type Unconstrained = crate::input::malformed_timestamp_header_epoch_input::Builder;
 4905   4744   
}
 4906   4745   
 4907   4746   
/* StructureGenerator.kt:197 */
 4908   4747   
#[allow(missing_docs)] // documentation missing in model
 4909   4748   
/* RustType.kt:534 */
 4910         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 4911         -
pub /* StructureGenerator.kt:201 */ struct HttpRequestWithLabelsInput {
 4912         -
    /* StructureGenerator.kt:231 */
 4913         -
    #[allow(missing_docs)] // documentation missing in model
 4914         -
    pub string: ::std::string::String,
 4915         -
    /* StructureGenerator.kt:231 */
 4916         -
    #[allow(missing_docs)] // documentation missing in model
 4917         -
    pub short: i16,
 4918         -
    /* StructureGenerator.kt:231 */
 4919         -
    #[allow(missing_docs)] // documentation missing in model
 4920         -
    pub integer: i32,
 4921         -
    /* StructureGenerator.kt:231 */
 4922         -
    #[allow(missing_docs)] // documentation missing in model
 4923         -
    pub long: i64,
 4924         -
    /* StructureGenerator.kt:231 */
 4925         -
    #[allow(missing_docs)] // documentation missing in model
 4926         -
    pub float: f32,
        4749  +
#[derive(
        4750  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        4751  +
)]
        4752  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampBodyDefaultInput {
 4927   4753   
    /* StructureGenerator.kt:231 */
 4928   4754   
    #[allow(missing_docs)] // documentation missing in model
 4929         -
    pub double: f64,
 4930         -
    /// /* StructureGenerator.kt:231 */Serialized in the path as true or false.
 4931         -
    pub boolean: bool,
 4932         -
    /// /* StructureGenerator.kt:231 */Note that this member has no format, so it's serialized as an RFC 3399 date-time.
 4933   4755   
    pub timestamp: ::aws_smithy_types::DateTime,
 4934   4756   
    /* StructureGenerator.kt:201 */
 4935   4757   
}
 4936   4758   
/* StructureGenerator.kt:135 */
 4937         -
impl HttpRequestWithLabelsInput {
 4938         -
    /* StructureGenerator.kt:231 */
 4939         -
    #[allow(missing_docs)] // documentation missing in model
 4940         -
                           /* StructureGenerator.kt:166 */
 4941         -
    pub fn string(&self) -> &str {
 4942         -
        /* StructureGenerator.kt:171 */
 4943         -
        use std::ops::Deref;
 4944         -
        self.string.deref()
 4945         -
        /* StructureGenerator.kt:166 */
 4946         -
    }
 4947         -
    /* StructureGenerator.kt:231 */
 4948         -
    #[allow(missing_docs)] // documentation missing in model
 4949         -
                           /* StructureGenerator.kt:166 */
 4950         -
    pub fn short(&self) -> i16 {
 4951         -
        /* StructureGenerator.kt:168 */
 4952         -
        self.short
 4953         -
        /* StructureGenerator.kt:166 */
 4954         -
    }
 4955         -
    /* StructureGenerator.kt:231 */
 4956         -
    #[allow(missing_docs)] // documentation missing in model
 4957         -
                           /* StructureGenerator.kt:166 */
 4958         -
    pub fn integer(&self) -> i32 {
 4959         -
        /* StructureGenerator.kt:168 */
 4960         -
        self.integer
 4961         -
        /* StructureGenerator.kt:166 */
 4962         -
    }
 4963         -
    /* StructureGenerator.kt:231 */
 4964         -
    #[allow(missing_docs)] // documentation missing in model
 4965         -
                           /* StructureGenerator.kt:166 */
 4966         -
    pub fn long(&self) -> i64 {
 4967         -
        /* StructureGenerator.kt:168 */
 4968         -
        self.long
 4969         -
        /* StructureGenerator.kt:166 */
 4970         -
    }
 4971         -
    /* StructureGenerator.kt:231 */
 4972         -
    #[allow(missing_docs)] // documentation missing in model
 4973         -
                           /* StructureGenerator.kt:166 */
 4974         -
    pub fn float(&self) -> f32 {
 4975         -
        /* StructureGenerator.kt:168 */
 4976         -
        self.float
 4977         -
        /* StructureGenerator.kt:166 */
 4978         -
    }
        4759  +
impl MalformedTimestampBodyDefaultInput {
 4979   4760   
    /* StructureGenerator.kt:231 */
 4980   4761   
    #[allow(missing_docs)] // documentation missing in model
 4981   4762   
                           /* StructureGenerator.kt:166 */
 4982         -
    pub fn double(&self) -> f64 {
 4983         -
        /* StructureGenerator.kt:168 */
 4984         -
        self.double
 4985         -
        /* StructureGenerator.kt:166 */
 4986         -
    }
 4987         -
    /// /* StructureGenerator.kt:231 */Serialized in the path as true or false.
 4988         -
    /* StructureGenerator.kt:166 */
 4989         -
    pub fn boolean(&self) -> bool {
 4990         -
        /* StructureGenerator.kt:168 */
 4991         -
        self.boolean
 4992         -
        /* StructureGenerator.kt:166 */
 4993         -
    }
 4994         -
    /// /* StructureGenerator.kt:231 */Note that this member has no format, so it's serialized as an RFC 3399 date-time.
 4995         -
    /* StructureGenerator.kt:166 */
 4996   4763   
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
 4997   4764   
        /* StructureGenerator.kt:172 */
 4998   4765   
        &self.timestamp
 4999   4766   
        /* StructureGenerator.kt:166 */
 5000   4767   
    }
 5001   4768   
    /* StructureGenerator.kt:135 */
 5002   4769   
}
 5003   4770   
/* ServerCodegenVisitor.kt:356 */
 5004         -
impl HttpRequestWithLabelsInput {
 5005         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`HttpRequestWithLabelsInput`](crate::input::HttpRequestWithLabelsInput).
        4771  +
impl MalformedTimestampBodyDefaultInput {
        4772  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampBodyDefaultInput`](crate::input::MalformedTimestampBodyDefaultInput).
 5006   4773   
    /* ServerBuilderGenerator.kt:295 */
 5007         -
    pub fn builder() -> crate::input::http_request_with_labels_input::Builder {
        4774  +
    pub fn builder() -> crate::input::malformed_timestamp_body_default_input::Builder {
 5008   4775   
        /* ServerBuilderGenerator.kt:296 */
 5009         -
        crate::input::http_request_with_labels_input::Builder::default()
        4776  +
        crate::input::malformed_timestamp_body_default_input::Builder::default()
 5010   4777   
        /* ServerBuilderGenerator.kt:295 */
 5011   4778   
    }
 5012   4779   
    /* ServerCodegenVisitor.kt:356 */
 5013   4780   
}
 5014   4781   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 5015         -
impl crate::constrained::Constrained for crate::input::HttpRequestWithLabelsInput {
 5016         -
    type Unconstrained = crate::input::http_request_with_labels_input::Builder;
        4782  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampBodyDefaultInput {
        4783  +
    type Unconstrained = crate::input::malformed_timestamp_body_default_input::Builder;
 5017   4784   
}
 5018   4785   
 5019   4786   
/* StructureGenerator.kt:197 */
 5020   4787   
#[allow(missing_docs)] // documentation missing in model
 5021   4788   
/* RustType.kt:534 */
 5022   4789   
#[derive(
 5023   4790   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 5024   4791   
)]
 5025         -
pub /* StructureGenerator.kt:201 */ struct MediaTypeHeaderInput {
        4792  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampBodyDateTimeInput {
 5026   4793   
    /* StructureGenerator.kt:231 */
 5027   4794   
    #[allow(missing_docs)] // documentation missing in model
 5028         -
    pub json: ::std::option::Option<::std::string::String>,
        4795  +
    pub timestamp: ::aws_smithy_types::DateTime,
 5029   4796   
    /* StructureGenerator.kt:201 */
 5030   4797   
}
 5031   4798   
/* StructureGenerator.kt:135 */
 5032         -
impl MediaTypeHeaderInput {
        4799  +
impl MalformedTimestampBodyDateTimeInput {
 5033   4800   
    /* StructureGenerator.kt:231 */
 5034   4801   
    #[allow(missing_docs)] // documentation missing in model
 5035   4802   
                           /* StructureGenerator.kt:166 */
 5036         -
    pub fn json(&self) -> ::std::option::Option<&str> {
 5037         -
        /* StructureGenerator.kt:169 */
 5038         -
        self.json.as_deref()
        4803  +
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
        4804  +
        /* StructureGenerator.kt:172 */
        4805  +
        &self.timestamp
 5039   4806   
        /* StructureGenerator.kt:166 */
 5040   4807   
    }
 5041   4808   
    /* StructureGenerator.kt:135 */
 5042   4809   
}
 5043   4810   
/* ServerCodegenVisitor.kt:356 */
 5044         -
impl MediaTypeHeaderInput {
 5045         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MediaTypeHeaderInput`](crate::input::MediaTypeHeaderInput).
        4811  +
impl MalformedTimestampBodyDateTimeInput {
        4812  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampBodyDateTimeInput`](crate::input::MalformedTimestampBodyDateTimeInput).
 5046   4813   
    /* ServerBuilderGenerator.kt:295 */
 5047         -
    pub fn builder() -> crate::input::media_type_header_input::Builder {
        4814  +
    pub fn builder() -> crate::input::malformed_timestamp_body_date_time_input::Builder {
 5048   4815   
        /* ServerBuilderGenerator.kt:296 */
 5049         -
        crate::input::media_type_header_input::Builder::default()
        4816  +
        crate::input::malformed_timestamp_body_date_time_input::Builder::default()
 5050   4817   
        /* ServerBuilderGenerator.kt:295 */
 5051   4818   
    }
 5052   4819   
    /* ServerCodegenVisitor.kt:356 */
 5053   4820   
}
 5054   4821   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 5055         -
impl crate::constrained::Constrained for crate::input::MediaTypeHeaderInput {
 5056         -
    type Unconstrained = crate::input::media_type_header_input::Builder;
        4822  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampBodyDateTimeInput {
        4823  +
    type Unconstrained = crate::input::malformed_timestamp_body_date_time_input::Builder;
 5057   4824   
}
 5058   4825   
 5059   4826   
/* StructureGenerator.kt:197 */
 5060   4827   
#[allow(missing_docs)] // documentation missing in model
 5061   4828   
/* RustType.kt:534 */
 5062   4829   
#[derive(
 5063   4830   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 5064   4831   
)]
 5065         -
pub /* StructureGenerator.kt:201 */ struct TimestampFormatHeadersInput {
        4832  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampBodyHttpDateInput {
 5066   4833   
    /* StructureGenerator.kt:231 */
 5067   4834   
    #[allow(missing_docs)] // documentation missing in model
 5068         -
    pub member_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
 5069         -
    /* StructureGenerator.kt:231 */
 5070         -
    #[allow(missing_docs)] // documentation missing in model
 5071         -
    pub member_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
 5072         -
    /* StructureGenerator.kt:231 */
 5073         -
    #[allow(missing_docs)] // documentation missing in model
 5074         -
    pub member_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
 5075         -
    /* StructureGenerator.kt:231 */
 5076         -
    #[allow(missing_docs)] // documentation missing in model
 5077         -
    pub default_format: ::std::option::Option<::aws_smithy_types::DateTime>,
 5078         -
    /* StructureGenerator.kt:231 */
 5079         -
    #[allow(missing_docs)] // documentation missing in model
 5080         -
    pub target_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
 5081         -
    /* StructureGenerator.kt:231 */
 5082         -
    #[allow(missing_docs)] // documentation missing in model
 5083         -
    pub target_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
 5084         -
    /* StructureGenerator.kt:231 */
 5085         -
    #[allow(missing_docs)] // documentation missing in model
 5086         -
    pub target_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
        4835  +
    pub timestamp: ::aws_smithy_types::DateTime,
 5087   4836   
    /* StructureGenerator.kt:201 */
 5088   4837   
}
 5089   4838   
/* StructureGenerator.kt:135 */
 5090         -
impl TimestampFormatHeadersInput {
 5091         -
    /* StructureGenerator.kt:231 */
 5092         -
    #[allow(missing_docs)] // documentation missing in model
 5093         -
                           /* StructureGenerator.kt:166 */
 5094         -
    pub fn member_epoch_seconds(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 5095         -
        /* StructureGenerator.kt:170 */
 5096         -
        self.member_epoch_seconds.as_ref()
 5097         -
        /* StructureGenerator.kt:166 */
 5098         -
    }
 5099         -
    /* StructureGenerator.kt:231 */
 5100         -
    #[allow(missing_docs)] // documentation missing in model
 5101         -
                           /* StructureGenerator.kt:166 */
 5102         -
    pub fn member_http_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 5103         -
        /* StructureGenerator.kt:170 */
 5104         -
        self.member_http_date.as_ref()
 5105         -
        /* StructureGenerator.kt:166 */
 5106         -
    }
        4839  +
impl MalformedTimestampBodyHttpDateInput {
 5107   4840   
    /* StructureGenerator.kt:231 */
 5108   4841   
    #[allow(missing_docs)] // documentation missing in model
 5109   4842   
                           /* StructureGenerator.kt:166 */
 5110         -
    pub fn member_date_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 5111         -
        /* StructureGenerator.kt:170 */
 5112         -
        self.member_date_time.as_ref()
        4843  +
    pub fn timestamp(&self) -> &::aws_smithy_types::DateTime {
        4844  +
        /* StructureGenerator.kt:172 */
        4845  +
        &self.timestamp
 5113   4846   
        /* StructureGenerator.kt:166 */
 5114   4847   
    }
 5115         -
    /* StructureGenerator.kt:231 */
 5116         -
    #[allow(missing_docs)] // documentation missing in model
 5117         -
                           /* StructureGenerator.kt:166 */
 5118         -
    pub fn default_format(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 5119         -
        /* StructureGenerator.kt:170 */
 5120         -
        self.default_format.as_ref()
 5121         -
        /* StructureGenerator.kt:166 */
        4848  +
    /* StructureGenerator.kt:135 */
        4849  +
}
        4850  +
/* ServerCodegenVisitor.kt:356 */
        4851  +
impl MalformedTimestampBodyHttpDateInput {
        4852  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedTimestampBodyHttpDateInput`](crate::input::MalformedTimestampBodyHttpDateInput).
        4853  +
    /* ServerBuilderGenerator.kt:295 */
        4854  +
    pub fn builder() -> crate::input::malformed_timestamp_body_http_date_input::Builder {
        4855  +
        /* ServerBuilderGenerator.kt:296 */
        4856  +
        crate::input::malformed_timestamp_body_http_date_input::Builder::default()
        4857  +
        /* ServerBuilderGenerator.kt:295 */
 5122   4858   
    }
 5123         -
    /* StructureGenerator.kt:231 */
 5124         -
    #[allow(missing_docs)] // documentation missing in model
 5125         -
                           /* StructureGenerator.kt:166 */
 5126         -
    pub fn target_epoch_seconds(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 5127         -
        /* StructureGenerator.kt:170 */
 5128         -
        self.target_epoch_seconds.as_ref()
 5129         -
        /* StructureGenerator.kt:166 */
        4859  +
    /* ServerCodegenVisitor.kt:356 */
        4860  +
}
        4861  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        4862  +
impl crate::constrained::Constrained for crate::input::MalformedTimestampBodyHttpDateInput {
        4863  +
    type Unconstrained = crate::input::malformed_timestamp_body_http_date_input::Builder;
        4864  +
}
        4865  +
        4866  +
/* StructureGenerator.kt:197 */
        4867  +
#[allow(missing_docs)] // documentation missing in model
        4868  +
/* RustType.kt:534 */
        4869  +
#[derive(
        4870  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        4871  +
)]
        4872  +
pub /* StructureGenerator.kt:201 */ struct MalformedContentTypeWithoutBodyInput {/* StructureGenerator.kt:201 */}
        4873  +
/* ServerCodegenVisitor.kt:356 */
        4874  +
impl MalformedContentTypeWithoutBodyInput {
        4875  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedContentTypeWithoutBodyInput`](crate::input::MalformedContentTypeWithoutBodyInput).
        4876  +
    /* ServerBuilderGenerator.kt:295 */
        4877  +
    pub fn builder() -> crate::input::malformed_content_type_without_body_input::Builder {
        4878  +
        /* ServerBuilderGenerator.kt:296 */
        4879  +
        crate::input::malformed_content_type_without_body_input::Builder::default()
        4880  +
        /* ServerBuilderGenerator.kt:295 */
 5130   4881   
    }
        4882  +
    /* ServerCodegenVisitor.kt:356 */
        4883  +
}
        4884  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        4885  +
impl crate::constrained::Constrained for crate::input::MalformedContentTypeWithoutBodyInput {
        4886  +
    type Unconstrained = crate::input::malformed_content_type_without_body_input::Builder;
        4887  +
}
        4888  +
        4889  +
/* StructureGenerator.kt:197 */
        4890  +
#[allow(missing_docs)] // documentation missing in model
        4891  +
/* RustType.kt:534 */
        4892  +
#[derive(
        4893  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        4894  +
)]
        4895  +
pub /* StructureGenerator.kt:201 */ struct MalformedContentTypeWithoutBodyEmptyInputInput {
 5131   4896   
    /* StructureGenerator.kt:231 */
 5132   4897   
    #[allow(missing_docs)] // documentation missing in model
 5133         -
                           /* StructureGenerator.kt:166 */
 5134         -
    pub fn target_http_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 5135         -
        /* StructureGenerator.kt:170 */
 5136         -
        self.target_http_date.as_ref()
 5137         -
        /* StructureGenerator.kt:166 */
 5138         -
    }
        4898  +
    pub header: ::std::option::Option<::std::string::String>,
        4899  +
    /* StructureGenerator.kt:201 */
        4900  +
}
        4901  +
/* StructureGenerator.kt:135 */
        4902  +
impl MalformedContentTypeWithoutBodyEmptyInputInput {
 5139   4903   
    /* StructureGenerator.kt:231 */
 5140   4904   
    #[allow(missing_docs)] // documentation missing in model
 5141   4905   
                           /* StructureGenerator.kt:166 */
 5142         -
    pub fn target_date_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
 5143         -
        /* StructureGenerator.kt:170 */
 5144         -
        self.target_date_time.as_ref()
        4906  +
    pub fn header(&self) -> ::std::option::Option<&str> {
        4907  +
        /* StructureGenerator.kt:169 */
        4908  +
        self.header.as_deref()
 5145   4909   
        /* StructureGenerator.kt:166 */
 5146   4910   
    }
 5147   4911   
    /* StructureGenerator.kt:135 */
 5148   4912   
}
 5149   4913   
/* ServerCodegenVisitor.kt:356 */
 5150         -
impl TimestampFormatHeadersInput {
 5151         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TimestampFormatHeadersInput`](crate::input::TimestampFormatHeadersInput).
        4914  +
impl MalformedContentTypeWithoutBodyEmptyInputInput {
        4915  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedContentTypeWithoutBodyEmptyInputInput`](crate::input::MalformedContentTypeWithoutBodyEmptyInputInput).
 5152   4916   
    /* ServerBuilderGenerator.kt:295 */
 5153         -
    pub fn builder() -> crate::input::timestamp_format_headers_input::Builder {
        4917  +
    pub fn builder() -> crate::input::malformed_content_type_without_body_empty_input_input::Builder
        4918  +
    {
 5154   4919   
        /* ServerBuilderGenerator.kt:296 */
 5155         -
        crate::input::timestamp_format_headers_input::Builder::default()
        4920  +
        crate::input::malformed_content_type_without_body_empty_input_input::Builder::default()
 5156   4921   
        /* ServerBuilderGenerator.kt:295 */
 5157   4922   
    }
 5158   4923   
    /* ServerCodegenVisitor.kt:356 */
 5159   4924   
}
 5160   4925   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 5161         -
impl crate::constrained::Constrained for crate::input::TimestampFormatHeadersInput {
 5162         -
    type Unconstrained = crate::input::timestamp_format_headers_input::Builder;
        4926  +
impl crate::constrained::Constrained
        4927  +
    for crate::input::MalformedContentTypeWithoutBodyEmptyInputInput
        4928  +
{
        4929  +
    type Unconstrained =
        4930  +
        crate::input::malformed_content_type_without_body_empty_input_input::Builder;
 5163   4931   
}
 5164   4932   
 5165   4933   
/* StructureGenerator.kt:197 */
 5166   4934   
#[allow(missing_docs)] // documentation missing in model
 5167   4935   
/* RustType.kt:534 */
 5168   4936   
#[derive(
 5169   4937   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 5170   4938   
)]
 5171         -
pub /* StructureGenerator.kt:201 */ struct NullAndEmptyHeadersServerInput {
 5172         -
    /* StructureGenerator.kt:231 */
 5173         -
    #[allow(missing_docs)] // documentation missing in model
 5174         -
    pub a: ::std::option::Option<::std::string::String>,
 5175         -
    /* StructureGenerator.kt:231 */
 5176         -
    #[allow(missing_docs)] // documentation missing in model
 5177         -
    pub b: ::std::option::Option<::std::string::String>,
        4939  +
pub /* StructureGenerator.kt:201 */ struct MalformedContentTypeWithBodyInput {
 5178   4940   
    /* StructureGenerator.kt:231 */
 5179   4941   
    #[allow(missing_docs)] // documentation missing in model
 5180         -
    pub c: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        4942  +
    pub hi: ::std::option::Option<::std::string::String>,
 5181   4943   
    /* StructureGenerator.kt:201 */
 5182   4944   
}
 5183   4945   
/* StructureGenerator.kt:135 */
 5184         -
impl NullAndEmptyHeadersServerInput {
 5185         -
    /* StructureGenerator.kt:231 */
 5186         -
    #[allow(missing_docs)] // documentation missing in model
 5187         -
                           /* StructureGenerator.kt:166 */
 5188         -
    pub fn a(&self) -> ::std::option::Option<&str> {
 5189         -
        /* StructureGenerator.kt:169 */
 5190         -
        self.a.as_deref()
 5191         -
        /* StructureGenerator.kt:166 */
 5192         -
    }
 5193         -
    /* StructureGenerator.kt:231 */
 5194         -
    #[allow(missing_docs)] // documentation missing in model
 5195         -
                           /* StructureGenerator.kt:166 */
 5196         -
    pub fn b(&self) -> ::std::option::Option<&str> {
 5197         -
        /* StructureGenerator.kt:169 */
 5198         -
        self.b.as_deref()
 5199         -
        /* StructureGenerator.kt:166 */
 5200         -
    }
        4946  +
impl MalformedContentTypeWithBodyInput {
 5201   4947   
    /* StructureGenerator.kt:231 */
 5202   4948   
    #[allow(missing_docs)] // documentation missing in model
 5203   4949   
                           /* StructureGenerator.kt:166 */
 5204         -
    pub fn c(&self) -> ::std::option::Option<&[::std::string::String]> {
        4950  +
    pub fn hi(&self) -> ::std::option::Option<&str> {
 5205   4951   
        /* StructureGenerator.kt:169 */
 5206         -
        self.c.as_deref()
        4952  +
        self.hi.as_deref()
 5207   4953   
        /* StructureGenerator.kt:166 */
 5208   4954   
    }
 5209   4955   
    /* StructureGenerator.kt:135 */
 5210   4956   
}
 5211   4957   
/* ServerCodegenVisitor.kt:356 */
 5212         -
impl NullAndEmptyHeadersServerInput {
 5213         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`NullAndEmptyHeadersServerInput`](crate::input::NullAndEmptyHeadersServerInput).
        4958  +
impl MalformedContentTypeWithBodyInput {
        4959  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedContentTypeWithBodyInput`](crate::input::MalformedContentTypeWithBodyInput).
 5214   4960   
    /* ServerBuilderGenerator.kt:295 */
 5215         -
    pub fn builder() -> crate::input::null_and_empty_headers_server_input::Builder {
        4961  +
    pub fn builder() -> crate::input::malformed_content_type_with_body_input::Builder {
 5216   4962   
        /* ServerBuilderGenerator.kt:296 */
 5217         -
        crate::input::null_and_empty_headers_server_input::Builder::default()
        4963  +
        crate::input::malformed_content_type_with_body_input::Builder::default()
 5218   4964   
        /* ServerBuilderGenerator.kt:295 */
 5219   4965   
    }
 5220   4966   
    /* ServerCodegenVisitor.kt:356 */
 5221   4967   
}
 5222   4968   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 5223         -
impl crate::constrained::Constrained for crate::input::NullAndEmptyHeadersServerInput {
 5224         -
    type Unconstrained = crate::input::null_and_empty_headers_server_input::Builder;
        4969  +
impl crate::constrained::Constrained for crate::input::MalformedContentTypeWithBodyInput {
        4970  +
    type Unconstrained = crate::input::malformed_content_type_with_body_input::Builder;
 5225   4971   
}
 5226   4972   
 5227   4973   
/* StructureGenerator.kt:197 */
 5228   4974   
#[allow(missing_docs)] // documentation missing in model
 5229   4975   
/* RustType.kt:534 */
 5230   4976   
#[derive(
 5231   4977   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 5232   4978   
)]
 5233         -
pub /* StructureGenerator.kt:201 */ struct NullAndEmptyHeadersClientInput {
 5234         -
    /* StructureGenerator.kt:231 */
 5235         -
    #[allow(missing_docs)] // documentation missing in model
 5236         -
    pub a: ::std::option::Option<::std::string::String>,
 5237         -
    /* StructureGenerator.kt:231 */
 5238         -
    #[allow(missing_docs)] // documentation missing in model
 5239         -
    pub b: ::std::option::Option<::std::string::String>,
        4979  +
pub /* StructureGenerator.kt:201 */ struct MalformedContentTypeWithPayloadInput {
 5240   4980   
    /* StructureGenerator.kt:231 */
 5241   4981   
    #[allow(missing_docs)] // documentation missing in model
 5242         -
    pub c: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        4982  +
    pub payload: ::std::option::Option<::aws_smithy_types::Blob>,
 5243   4983   
    /* StructureGenerator.kt:201 */
 5244   4984   
}
 5245   4985   
/* StructureGenerator.kt:135 */
 5246         -
impl NullAndEmptyHeadersClientInput {
        4986  +
impl MalformedContentTypeWithPayloadInput {
 5247   4987   
    /* StructureGenerator.kt:231 */
 5248   4988   
    #[allow(missing_docs)] // documentation missing in model
 5249   4989   
                           /* StructureGenerator.kt:166 */
 5250         -
    pub fn a(&self) -> ::std::option::Option<&str> {
 5251         -
        /* StructureGenerator.kt:169 */
 5252         -
        self.a.as_deref()
        4990  +
    pub fn payload(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
        4991  +
        /* StructureGenerator.kt:170 */
        4992  +
        self.payload.as_ref()
 5253   4993   
        /* StructureGenerator.kt:166 */
 5254   4994   
    }
        4995  +
    /* StructureGenerator.kt:135 */
        4996  +
}
        4997  +
/* ServerCodegenVisitor.kt:356 */
        4998  +
impl MalformedContentTypeWithPayloadInput {
        4999  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedContentTypeWithPayloadInput`](crate::input::MalformedContentTypeWithPayloadInput).
        5000  +
    /* ServerBuilderGenerator.kt:295 */
        5001  +
    pub fn builder() -> crate::input::malformed_content_type_with_payload_input::Builder {
        5002  +
        /* ServerBuilderGenerator.kt:296 */
        5003  +
        crate::input::malformed_content_type_with_payload_input::Builder::default()
        5004  +
        /* ServerBuilderGenerator.kt:295 */
        5005  +
    }
        5006  +
    /* ServerCodegenVisitor.kt:356 */
        5007  +
}
        5008  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5009  +
impl crate::constrained::Constrained for crate::input::MalformedContentTypeWithPayloadInput {
        5010  +
    type Unconstrained = crate::input::malformed_content_type_with_payload_input::Builder;
        5011  +
}
        5012  +
        5013  +
/* StructureGenerator.kt:197 */
        5014  +
#[allow(missing_docs)] // documentation missing in model
        5015  +
/* RustType.kt:534 */
        5016  +
#[derive(
        5017  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5018  +
)]
        5019  +
pub /* StructureGenerator.kt:201 */ struct MalformedContentTypeWithGenericStringInput {
 5255   5020   
    /* StructureGenerator.kt:231 */
 5256   5021   
    #[allow(missing_docs)] // documentation missing in model
 5257         -
                           /* StructureGenerator.kt:166 */
 5258         -
    pub fn b(&self) -> ::std::option::Option<&str> {
 5259         -
        /* StructureGenerator.kt:169 */
 5260         -
        self.b.as_deref()
 5261         -
        /* StructureGenerator.kt:166 */
 5262         -
    }
        5022  +
    pub payload: ::std::option::Option<::std::string::String>,
        5023  +
    /* StructureGenerator.kt:201 */
        5024  +
}
        5025  +
/* StructureGenerator.kt:135 */
        5026  +
impl MalformedContentTypeWithGenericStringInput {
 5263   5027   
    /* StructureGenerator.kt:231 */
 5264   5028   
    #[allow(missing_docs)] // documentation missing in model
 5265   5029   
                           /* StructureGenerator.kt:166 */
 5266         -
    pub fn c(&self) -> ::std::option::Option<&[::std::string::String]> {
        5030  +
    pub fn payload(&self) -> ::std::option::Option<&str> {
 5267   5031   
        /* StructureGenerator.kt:169 */
 5268         -
        self.c.as_deref()
        5032  +
        self.payload.as_deref()
 5269   5033   
        /* StructureGenerator.kt:166 */
 5270   5034   
    }
 5271   5035   
    /* StructureGenerator.kt:135 */
 5272   5036   
}
 5273   5037   
/* ServerCodegenVisitor.kt:356 */
 5274         -
impl NullAndEmptyHeadersClientInput {
 5275         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`NullAndEmptyHeadersClientInput`](crate::input::NullAndEmptyHeadersClientInput).
        5038  +
impl MalformedContentTypeWithGenericStringInput {
        5039  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedContentTypeWithGenericStringInput`](crate::input::MalformedContentTypeWithGenericStringInput).
 5276   5040   
    /* ServerBuilderGenerator.kt:295 */
 5277         -
    pub fn builder() -> crate::input::null_and_empty_headers_client_input::Builder {
        5041  +
    pub fn builder() -> crate::input::malformed_content_type_with_generic_string_input::Builder {
 5278   5042   
        /* ServerBuilderGenerator.kt:296 */
 5279         -
        crate::input::null_and_empty_headers_client_input::Builder::default()
        5043  +
        crate::input::malformed_content_type_with_generic_string_input::Builder::default()
 5280   5044   
        /* ServerBuilderGenerator.kt:295 */
 5281   5045   
    }
 5282   5046   
    /* ServerCodegenVisitor.kt:356 */
 5283   5047   
}
 5284   5048   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 5285         -
impl crate::constrained::Constrained for crate::input::NullAndEmptyHeadersClientInput {
 5286         -
    type Unconstrained = crate::input::null_and_empty_headers_client_input::Builder;
        5049  +
impl crate::constrained::Constrained for crate::input::MalformedContentTypeWithGenericStringInput {
        5050  +
    type Unconstrained = crate::input::malformed_content_type_with_generic_string_input::Builder;
 5287   5051   
}
 5288   5052   
 5289   5053   
/* StructureGenerator.kt:197 */
 5290   5054   
#[allow(missing_docs)] // documentation missing in model
 5291   5055   
/* RustType.kt:534 */
 5292         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
 5293         -
pub /* StructureGenerator.kt:201 */ struct InputAndOutputWithHeadersInput {
 5294         -
    /* StructureGenerator.kt:231 */
 5295         -
    #[allow(missing_docs)] // documentation missing in model
 5296         -
    pub header_string: ::std::option::Option<::std::string::String>,
 5297         -
    /* StructureGenerator.kt:231 */
 5298         -
    #[allow(missing_docs)] // documentation missing in model
 5299         -
    pub header_byte: ::std::option::Option<i8>,
 5300         -
    /* StructureGenerator.kt:231 */
 5301         -
    #[allow(missing_docs)] // documentation missing in model
 5302         -
    pub header_short: ::std::option::Option<i16>,
 5303         -
    /* StructureGenerator.kt:231 */
 5304         -
    #[allow(missing_docs)] // documentation missing in model
 5305         -
    pub header_integer: ::std::option::Option<i32>,
 5306         -
    /* StructureGenerator.kt:231 */
 5307         -
    #[allow(missing_docs)] // documentation missing in model
 5308         -
    pub header_long: ::std::option::Option<i64>,
 5309         -
    /* StructureGenerator.kt:231 */
 5310         -
    #[allow(missing_docs)] // documentation missing in model
 5311         -
    pub header_float: ::std::option::Option<f32>,
 5312         -
    /* StructureGenerator.kt:231 */
 5313         -
    #[allow(missing_docs)] // documentation missing in model
 5314         -
    pub header_double: ::std::option::Option<f64>,
 5315         -
    /* StructureGenerator.kt:231 */
 5316         -
    #[allow(missing_docs)] // documentation missing in model
 5317         -
    pub header_true_bool: ::std::option::Option<bool>,
 5318         -
    /* StructureGenerator.kt:231 */
 5319         -
    #[allow(missing_docs)] // documentation missing in model
 5320         -
    pub header_false_bool: ::std::option::Option<bool>,
 5321         -
    /* StructureGenerator.kt:231 */
 5322         -
    #[allow(missing_docs)] // documentation missing in model
 5323         -
    pub header_string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
 5324         -
    /* StructureGenerator.kt:231 */
 5325         -
    #[allow(missing_docs)] // documentation missing in model
 5326         -
    pub header_string_set: ::std::option::Option<crate::model::StringSet>,
 5327         -
    /* StructureGenerator.kt:231 */
 5328         -
    #[allow(missing_docs)] // documentation missing in model
 5329         -
    pub header_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
 5330         -
    /* StructureGenerator.kt:231 */
 5331         -
    #[allow(missing_docs)] // documentation missing in model
 5332         -
    pub header_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
 5333         -
    /* StructureGenerator.kt:231 */
 5334         -
    #[allow(missing_docs)] // documentation missing in model
 5335         -
    pub header_timestamp_list: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
 5336         -
    /* StructureGenerator.kt:231 */
 5337         -
    #[allow(missing_docs)] // documentation missing in model
 5338         -
    pub header_enum: ::std::option::Option<crate::model::FooEnum>,
 5339         -
    /* StructureGenerator.kt:231 */
 5340         -
    #[allow(missing_docs)] // documentation missing in model
 5341         -
    pub header_enum_list: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
        5056  +
#[derive(
        5057  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5058  +
)]
        5059  +
pub /* StructureGenerator.kt:201 */ struct MalformedAcceptWithBodyInput {/* StructureGenerator.kt:201 */}
        5060  +
/* ServerCodegenVisitor.kt:356 */
        5061  +
impl MalformedAcceptWithBodyInput {
        5062  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedAcceptWithBodyInput`](crate::input::MalformedAcceptWithBodyInput).
        5063  +
    /* ServerBuilderGenerator.kt:295 */
        5064  +
    pub fn builder() -> crate::input::malformed_accept_with_body_input::Builder {
        5065  +
        /* ServerBuilderGenerator.kt:296 */
        5066  +
        crate::input::malformed_accept_with_body_input::Builder::default()
        5067  +
        /* ServerBuilderGenerator.kt:295 */
        5068  +
    }
        5069  +
    /* ServerCodegenVisitor.kt:356 */
        5070  +
}
        5071  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5072  +
impl crate::constrained::Constrained for crate::input::MalformedAcceptWithBodyInput {
        5073  +
    type Unconstrained = crate::input::malformed_accept_with_body_input::Builder;
        5074  +
}
        5075  +
        5076  +
/* StructureGenerator.kt:197 */
        5077  +
#[allow(missing_docs)] // documentation missing in model
        5078  +
/* RustType.kt:534 */
        5079  +
#[derive(
        5080  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5081  +
)]
        5082  +
pub /* StructureGenerator.kt:201 */ struct MalformedAcceptWithPayloadInput {/* StructureGenerator.kt:201 */}
        5083  +
/* ServerCodegenVisitor.kt:356 */
        5084  +
impl MalformedAcceptWithPayloadInput {
        5085  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedAcceptWithPayloadInput`](crate::input::MalformedAcceptWithPayloadInput).
        5086  +
    /* ServerBuilderGenerator.kt:295 */
        5087  +
    pub fn builder() -> crate::input::malformed_accept_with_payload_input::Builder {
        5088  +
        /* ServerBuilderGenerator.kt:296 */
        5089  +
        crate::input::malformed_accept_with_payload_input::Builder::default()
        5090  +
        /* ServerBuilderGenerator.kt:295 */
        5091  +
    }
        5092  +
    /* ServerCodegenVisitor.kt:356 */
        5093  +
}
        5094  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5095  +
impl crate::constrained::Constrained for crate::input::MalformedAcceptWithPayloadInput {
        5096  +
    type Unconstrained = crate::input::malformed_accept_with_payload_input::Builder;
        5097  +
}
        5098  +
        5099  +
/* StructureGenerator.kt:197 */
        5100  +
#[allow(missing_docs)] // documentation missing in model
        5101  +
/* RustType.kt:534 */
        5102  +
#[derive(
        5103  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5104  +
)]
        5105  +
pub /* StructureGenerator.kt:201 */ struct MalformedAcceptWithGenericStringInput {/* StructureGenerator.kt:201 */}
        5106  +
/* ServerCodegenVisitor.kt:356 */
        5107  +
impl MalformedAcceptWithGenericStringInput {
        5108  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`MalformedAcceptWithGenericStringInput`](crate::input::MalformedAcceptWithGenericStringInput).
        5109  +
    /* ServerBuilderGenerator.kt:295 */
        5110  +
    pub fn builder() -> crate::input::malformed_accept_with_generic_string_input::Builder {
        5111  +
        /* ServerBuilderGenerator.kt:296 */
        5112  +
        crate::input::malformed_accept_with_generic_string_input::Builder::default()
        5113  +
        /* ServerBuilderGenerator.kt:295 */
        5114  +
    }
        5115  +
    /* ServerCodegenVisitor.kt:356 */
        5116  +
}
        5117  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5118  +
impl crate::constrained::Constrained for crate::input::MalformedAcceptWithGenericStringInput {
        5119  +
    type Unconstrained = crate::input::malformed_accept_with_generic_string_input::Builder;
        5120  +
}
        5121  +
        5122  +
/* StructureGenerator.kt:197 */
        5123  +
#[allow(missing_docs)] // documentation missing in model
        5124  +
/* RustType.kt:534 */
        5125  +
#[derive(
        5126  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5127  +
)]
        5128  +
pub /* StructureGenerator.kt:201 */ struct TestBodyStructureInput {
 5342   5129   
    /* StructureGenerator.kt:231 */
 5343   5130   
    #[allow(missing_docs)] // documentation missing in model
 5344         -
    pub header_integer_enum: ::std::option::Option<i32>,
        5131  +
    pub test_id: ::std::option::Option<::std::string::String>,
 5345   5132   
    /* StructureGenerator.kt:231 */
 5346   5133   
    #[allow(missing_docs)] // documentation missing in model
 5347         -
    pub header_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
        5134  +
    pub test_config: ::std::option::Option<crate::model::TestConfig>,
 5348   5135   
    /* StructureGenerator.kt:201 */
 5349   5136   
}
 5350   5137   
/* StructureGenerator.kt:135 */
 5351         -
impl InputAndOutputWithHeadersInput {
        5138  +
impl TestBodyStructureInput {
 5352   5139   
    /* StructureGenerator.kt:231 */
 5353   5140   
    #[allow(missing_docs)] // documentation missing in model
 5354   5141   
                           /* StructureGenerator.kt:166 */
 5355         -
    pub fn header_string(&self) -> ::std::option::Option<&str> {
        5142  +
    pub fn test_id(&self) -> ::std::option::Option<&str> {
 5356   5143   
        /* StructureGenerator.kt:169 */
 5357         -
        self.header_string.as_deref()
        5144  +
        self.test_id.as_deref()
 5358   5145   
        /* StructureGenerator.kt:166 */
 5359   5146   
    }
 5360   5147   
    /* StructureGenerator.kt:231 */
 5361   5148   
    #[allow(missing_docs)] // documentation missing in model
 5362   5149   
                           /* StructureGenerator.kt:166 */
 5363         -
    pub fn header_byte(&self) -> ::std::option::Option<i8> {
 5364         -
        /* StructureGenerator.kt:168 */
 5365         -
        self.header_byte
        5150  +
    pub fn test_config(&self) -> ::std::option::Option<&crate::model::TestConfig> {
        5151  +
        /* StructureGenerator.kt:170 */
        5152  +
        self.test_config.as_ref()
 5366   5153   
        /* StructureGenerator.kt:166 */
 5367   5154   
    }
 5368         -
    /* StructureGenerator.kt:231 */
 5369         -
    #[allow(missing_docs)] // documentation missing in model
 5370         -
                           /* StructureGenerator.kt:166 */
 5371         -
    pub fn header_short(&self) -> ::std::option::Option<i16> {
 5372         -
        /* StructureGenerator.kt:168 */
 5373         -
        self.header_short
 5374         -
        /* StructureGenerator.kt:166 */
        5155  +
    /* StructureGenerator.kt:135 */
        5156  +
}
        5157  +
/* ServerCodegenVisitor.kt:356 */
        5158  +
impl TestBodyStructureInput {
        5159  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestBodyStructureInput`](crate::input::TestBodyStructureInput).
        5160  +
    /* ServerBuilderGenerator.kt:295 */
        5161  +
    pub fn builder() -> crate::input::test_body_structure_input::Builder {
        5162  +
        /* ServerBuilderGenerator.kt:296 */
        5163  +
        crate::input::test_body_structure_input::Builder::default()
        5164  +
        /* ServerBuilderGenerator.kt:295 */
 5375   5165   
    }
        5166  +
    /* ServerCodegenVisitor.kt:356 */
        5167  +
}
        5168  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5169  +
impl crate::constrained::Constrained for crate::input::TestBodyStructureInput {
        5170  +
    type Unconstrained = crate::input::test_body_structure_input::Builder;
        5171  +
}
        5172  +
        5173  +
/* StructureGenerator.kt:197 */
        5174  +
#[allow(missing_docs)] // documentation missing in model
        5175  +
/* RustType.kt:534 */
        5176  +
#[derive(
        5177  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5178  +
)]
        5179  +
pub /* StructureGenerator.kt:201 */ struct TestPayloadStructureInput {
 5376   5180   
    /* StructureGenerator.kt:231 */
 5377   5181   
    #[allow(missing_docs)] // documentation missing in model
 5378         -
                           /* StructureGenerator.kt:166 */
 5379         -
    pub fn header_integer(&self) -> ::std::option::Option<i32> {
 5380         -
        /* StructureGenerator.kt:168 */
 5381         -
        self.header_integer
 5382         -
        /* StructureGenerator.kt:166 */
 5383         -
    }
        5182  +
    pub test_id: ::std::option::Option<::std::string::String>,
 5384   5183   
    /* StructureGenerator.kt:231 */
 5385   5184   
    #[allow(missing_docs)] // documentation missing in model
 5386         -
                           /* StructureGenerator.kt:166 */
 5387         -
    pub fn header_long(&self) -> ::std::option::Option<i64> {
 5388         -
        /* StructureGenerator.kt:168 */
 5389         -
        self.header_long
 5390         -
        /* StructureGenerator.kt:166 */
 5391         -
    }
        5185  +
    pub payload_config: ::std::option::Option<crate::model::PayloadConfig>,
        5186  +
    /* StructureGenerator.kt:201 */
        5187  +
}
        5188  +
/* StructureGenerator.kt:135 */
        5189  +
impl TestPayloadStructureInput {
 5392   5190   
    /* StructureGenerator.kt:231 */
 5393   5191   
    #[allow(missing_docs)] // documentation missing in model
 5394   5192   
                           /* StructureGenerator.kt:166 */
 5395         -
    pub fn header_float(&self) -> ::std::option::Option<f32> {
 5396         -
        /* StructureGenerator.kt:168 */
 5397         -
        self.header_float
        5193  +
    pub fn test_id(&self) -> ::std::option::Option<&str> {
        5194  +
        /* StructureGenerator.kt:169 */
        5195  +
        self.test_id.as_deref()
 5398   5196   
        /* StructureGenerator.kt:166 */
 5399   5197   
    }
 5400   5198   
    /* StructureGenerator.kt:231 */
 5401   5199   
    #[allow(missing_docs)] // documentation missing in model
 5402   5200   
                           /* StructureGenerator.kt:166 */
 5403         -
    pub fn header_double(&self) -> ::std::option::Option<f64> {
 5404         -
        /* StructureGenerator.kt:168 */
 5405         -
        self.header_double
        5201  +
    pub fn payload_config(&self) -> ::std::option::Option<&crate::model::PayloadConfig> {
        5202  +
        /* StructureGenerator.kt:170 */
        5203  +
        self.payload_config.as_ref()
 5406   5204   
        /* StructureGenerator.kt:166 */
 5407   5205   
    }
        5206  +
    /* StructureGenerator.kt:135 */
        5207  +
}
        5208  +
/* ServerCodegenVisitor.kt:356 */
        5209  +
impl TestPayloadStructureInput {
        5210  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestPayloadStructureInput`](crate::input::TestPayloadStructureInput).
        5211  +
    /* ServerBuilderGenerator.kt:295 */
        5212  +
    pub fn builder() -> crate::input::test_payload_structure_input::Builder {
        5213  +
        /* ServerBuilderGenerator.kt:296 */
        5214  +
        crate::input::test_payload_structure_input::Builder::default()
        5215  +
        /* ServerBuilderGenerator.kt:295 */
        5216  +
    }
        5217  +
    /* ServerCodegenVisitor.kt:356 */
        5218  +
}
        5219  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5220  +
impl crate::constrained::Constrained for crate::input::TestPayloadStructureInput {
        5221  +
    type Unconstrained = crate::input::test_payload_structure_input::Builder;
        5222  +
}
        5223  +
        5224  +
/* StructureGenerator.kt:197 */
        5225  +
#[allow(missing_docs)] // documentation missing in model
        5226  +
/* RustType.kt:534 */
        5227  +
#[derive(
        5228  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5229  +
)]
        5230  +
pub /* StructureGenerator.kt:201 */ struct TestPayloadBlobInput {
 5408   5231   
    /* StructureGenerator.kt:231 */
 5409   5232   
    #[allow(missing_docs)] // documentation missing in model
 5410         -
                           /* StructureGenerator.kt:166 */
 5411         -
    pub fn header_true_bool(&self) -> ::std::option::Option<bool> {
 5412         -
        /* StructureGenerator.kt:168 */
 5413         -
        self.header_true_bool
 5414         -
        /* StructureGenerator.kt:166 */
 5415         -
    }
        5233  +
    pub content_type: ::std::option::Option<::std::string::String>,
 5416   5234   
    /* StructureGenerator.kt:231 */
 5417   5235   
    #[allow(missing_docs)] // documentation missing in model
 5418         -
                           /* StructureGenerator.kt:166 */
 5419         -
    pub fn header_false_bool(&self) -> ::std::option::Option<bool> {
 5420         -
        /* StructureGenerator.kt:168 */
 5421         -
        self.header_false_bool
 5422         -
        /* StructureGenerator.kt:166 */
 5423         -
    }
        5236  +
    pub data: ::std::option::Option<::aws_smithy_types::Blob>,
        5237  +
    /* StructureGenerator.kt:201 */
        5238  +
}
        5239  +
/* StructureGenerator.kt:135 */
        5240  +
impl TestPayloadBlobInput {
 5424   5241   
    /* StructureGenerator.kt:231 */
 5425   5242   
    #[allow(missing_docs)] // documentation missing in model
 5426   5243   
                           /* StructureGenerator.kt:166 */
 5427         -
    pub fn header_string_list(&self) -> ::std::option::Option<&[::std::string::String]> {
        5244  +
    pub fn content_type(&self) -> ::std::option::Option<&str> {
 5428   5245   
        /* StructureGenerator.kt:169 */
 5429         -
        self.header_string_list.as_deref()
        5246  +
        self.content_type.as_deref()
 5430   5247   
        /* StructureGenerator.kt:166 */
 5431   5248   
    }
 5432   5249   
    /* StructureGenerator.kt:231 */
 5433   5250   
    #[allow(missing_docs)] // documentation missing in model
 5434   5251   
                           /* StructureGenerator.kt:166 */
 5435         -
    pub fn header_string_set(&self) -> ::std::option::Option<&crate::model::StringSet> {
        5252  +
    pub fn data(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
 5436   5253   
        /* StructureGenerator.kt:170 */
 5437         -
        self.header_string_set.as_ref()
 5438         -
        /* StructureGenerator.kt:166 */
 5439         -
    }
 5440         -
    /* StructureGenerator.kt:231 */
 5441         -
    #[allow(missing_docs)] // documentation missing in model
 5442         -
                           /* StructureGenerator.kt:166 */
 5443         -
    pub fn header_integer_list(&self) -> ::std::option::Option<&[i32]> {
 5444         -
        /* StructureGenerator.kt:169 */
 5445         -
        self.header_integer_list.as_deref()
        5254  +
        self.data.as_ref()
 5446   5255   
        /* StructureGenerator.kt:166 */
 5447   5256   
    }
 5448         -
    /* StructureGenerator.kt:231 */
 5449         -
    #[allow(missing_docs)] // documentation missing in model
 5450         -
                           /* StructureGenerator.kt:166 */
 5451         -
    pub fn header_boolean_list(&self) -> ::std::option::Option<&[bool]> {
 5452         -
        /* StructureGenerator.kt:169 */
 5453         -
        self.header_boolean_list.as_deref()
 5454         -
        /* StructureGenerator.kt:166 */
 5455         -
    }
 5456         -
    /* StructureGenerator.kt:231 */
 5457         -
    #[allow(missing_docs)] // documentation missing in model
 5458         -
                           /* StructureGenerator.kt:166 */
 5459         -
    pub fn header_timestamp_list(&self) -> ::std::option::Option<&[::aws_smithy_types::DateTime]> {
 5460         -
        /* StructureGenerator.kt:169 */
 5461         -
        self.header_timestamp_list.as_deref()
 5462         -
        /* StructureGenerator.kt:166 */
        5257  +
    /* StructureGenerator.kt:135 */
        5258  +
}
        5259  +
/* ServerCodegenVisitor.kt:356 */
        5260  +
impl TestPayloadBlobInput {
        5261  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestPayloadBlobInput`](crate::input::TestPayloadBlobInput).
        5262  +
    /* ServerBuilderGenerator.kt:295 */
        5263  +
    pub fn builder() -> crate::input::test_payload_blob_input::Builder {
        5264  +
        /* ServerBuilderGenerator.kt:296 */
        5265  +
        crate::input::test_payload_blob_input::Builder::default()
        5266  +
        /* ServerBuilderGenerator.kt:295 */
 5463   5267   
    }
        5268  +
    /* ServerCodegenVisitor.kt:356 */
        5269  +
}
        5270  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5271  +
impl crate::constrained::Constrained for crate::input::TestPayloadBlobInput {
        5272  +
    type Unconstrained = crate::input::test_payload_blob_input::Builder;
        5273  +
}
        5274  +
        5275  +
/* StructureGenerator.kt:197 */
        5276  +
#[allow(missing_docs)] // documentation missing in model
        5277  +
/* RustType.kt:534 */
        5278  +
#[derive(
        5279  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5280  +
)]
        5281  +
pub /* StructureGenerator.kt:201 */ struct TestGetNoPayloadInput {
 5464   5282   
    /* StructureGenerator.kt:231 */
 5465   5283   
    #[allow(missing_docs)] // documentation missing in model
 5466         -
                           /* StructureGenerator.kt:166 */
 5467         -
    pub fn header_enum(&self) -> ::std::option::Option<&crate::model::FooEnum> {
 5468         -
        /* StructureGenerator.kt:170 */
 5469         -
        self.header_enum.as_ref()
 5470         -
        /* StructureGenerator.kt:166 */
 5471         -
    }
        5284  +
    pub test_id: ::std::option::Option<::std::string::String>,
        5285  +
    /* StructureGenerator.kt:201 */
        5286  +
}
        5287  +
/* StructureGenerator.kt:135 */
        5288  +
impl TestGetNoPayloadInput {
 5472   5289   
    /* StructureGenerator.kt:231 */
 5473   5290   
    #[allow(missing_docs)] // documentation missing in model
 5474   5291   
                           /* StructureGenerator.kt:166 */
 5475         -
    pub fn header_enum_list(&self) -> ::std::option::Option<&[crate::model::FooEnum]> {
        5292  +
    pub fn test_id(&self) -> ::std::option::Option<&str> {
 5476   5293   
        /* StructureGenerator.kt:169 */
 5477         -
        self.header_enum_list.as_deref()
        5294  +
        self.test_id.as_deref()
 5478   5295   
        /* StructureGenerator.kt:166 */
 5479   5296   
    }
        5297  +
    /* StructureGenerator.kt:135 */
        5298  +
}
        5299  +
/* ServerCodegenVisitor.kt:356 */
        5300  +
impl TestGetNoPayloadInput {
        5301  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestGetNoPayloadInput`](crate::input::TestGetNoPayloadInput).
        5302  +
    /* ServerBuilderGenerator.kt:295 */
        5303  +
    pub fn builder() -> crate::input::test_get_no_payload_input::Builder {
        5304  +
        /* ServerBuilderGenerator.kt:296 */
        5305  +
        crate::input::test_get_no_payload_input::Builder::default()
        5306  +
        /* ServerBuilderGenerator.kt:295 */
        5307  +
    }
        5308  +
    /* ServerCodegenVisitor.kt:356 */
        5309  +
}
        5310  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5311  +
impl crate::constrained::Constrained for crate::input::TestGetNoPayloadInput {
        5312  +
    type Unconstrained = crate::input::test_get_no_payload_input::Builder;
        5313  +
}
        5314  +
        5315  +
/* StructureGenerator.kt:197 */
        5316  +
#[allow(missing_docs)] // documentation missing in model
        5317  +
/* RustType.kt:534 */
        5318  +
#[derive(
        5319  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5320  +
)]
        5321  +
pub /* StructureGenerator.kt:201 */ struct TestPostNoPayloadInput {
 5480   5322   
    /* StructureGenerator.kt:231 */
 5481   5323   
    #[allow(missing_docs)] // documentation missing in model
 5482         -
                           /* StructureGenerator.kt:166 */
 5483         -
    pub fn header_integer_enum(&self) -> ::std::option::Option<i32> {
 5484         -
        /* StructureGenerator.kt:168 */
 5485         -
        self.header_integer_enum
 5486         -
        /* StructureGenerator.kt:166 */
 5487         -
    }
        5324  +
    pub test_id: ::std::option::Option<::std::string::String>,
        5325  +
    /* StructureGenerator.kt:201 */
        5326  +
}
        5327  +
/* StructureGenerator.kt:135 */
        5328  +
impl TestPostNoPayloadInput {
 5488   5329   
    /* StructureGenerator.kt:231 */
 5489   5330   
    #[allow(missing_docs)] // documentation missing in model
 5490   5331   
                           /* StructureGenerator.kt:166 */
 5491         -
    pub fn header_integer_enum_list(&self) -> ::std::option::Option<&[i32]> {
        5332  +
    pub fn test_id(&self) -> ::std::option::Option<&str> {
 5492   5333   
        /* StructureGenerator.kt:169 */
 5493         -
        self.header_integer_enum_list.as_deref()
        5334  +
        self.test_id.as_deref()
 5494   5335   
        /* StructureGenerator.kt:166 */
 5495   5336   
    }
 5496   5337   
    /* StructureGenerator.kt:135 */
 5497   5338   
}
 5498   5339   
/* ServerCodegenVisitor.kt:356 */
 5499         -
impl InputAndOutputWithHeadersInput {
 5500         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`InputAndOutputWithHeadersInput`](crate::input::InputAndOutputWithHeadersInput).
        5340  +
impl TestPostNoPayloadInput {
        5341  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestPostNoPayloadInput`](crate::input::TestPostNoPayloadInput).
 5501   5342   
    /* ServerBuilderGenerator.kt:295 */
 5502         -
    pub fn builder() -> crate::input::input_and_output_with_headers_input::Builder {
        5343  +
    pub fn builder() -> crate::input::test_post_no_payload_input::Builder {
 5503   5344   
        /* ServerBuilderGenerator.kt:296 */
 5504         -
        crate::input::input_and_output_with_headers_input::Builder::default()
        5345  +
        crate::input::test_post_no_payload_input::Builder::default()
 5505   5346   
        /* ServerBuilderGenerator.kt:295 */
 5506   5347   
    }
 5507   5348   
    /* ServerCodegenVisitor.kt:356 */
 5508   5349   
}
 5509   5350   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 5510         -
impl crate::constrained::Constrained for crate::input::InputAndOutputWithHeadersInput {
 5511         -
    type Unconstrained = crate::input::input_and_output_with_headers_input::Builder;
        5351  +
impl crate::constrained::Constrained for crate::input::TestPostNoPayloadInput {
        5352  +
    type Unconstrained = crate::input::test_post_no_payload_input::Builder;
 5512   5353   
}
 5513   5354   
 5514   5355   
/* StructureGenerator.kt:197 */
 5515   5356   
#[allow(missing_docs)] // documentation missing in model
 5516   5357   
/* RustType.kt:534 */
 5517   5358   
#[derive(
 5518   5359   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 5519   5360   
)]
 5520         -
pub /* StructureGenerator.kt:201 */ struct UnitInputAndOutputInput {/* StructureGenerator.kt:201 */}
        5361  +
pub /* StructureGenerator.kt:201 */ struct TestGetNoInputNoPayloadInput {/* StructureGenerator.kt:201 */}
 5521   5362   
/* ServerCodegenVisitor.kt:356 */
 5522         -
impl UnitInputAndOutputInput {
 5523         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`UnitInputAndOutputInput`](crate::input::UnitInputAndOutputInput).
        5363  +
impl TestGetNoInputNoPayloadInput {
        5364  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestGetNoInputNoPayloadInput`](crate::input::TestGetNoInputNoPayloadInput).
 5524   5365   
    /* ServerBuilderGenerator.kt:295 */
 5525         -
    pub fn builder() -> crate::input::unit_input_and_output_input::Builder {
        5366  +
    pub fn builder() -> crate::input::test_get_no_input_no_payload_input::Builder {
 5526   5367   
        /* ServerBuilderGenerator.kt:296 */
 5527         -
        crate::input::unit_input_and_output_input::Builder::default()
        5368  +
        crate::input::test_get_no_input_no_payload_input::Builder::default()
 5528   5369   
        /* ServerBuilderGenerator.kt:295 */
 5529   5370   
    }
 5530   5371   
    /* ServerCodegenVisitor.kt:356 */
 5531   5372   
}
 5532   5373   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 5533         -
impl crate::constrained::Constrained for crate::input::UnitInputAndOutputInput {
 5534         -
    type Unconstrained = crate::input::unit_input_and_output_input::Builder;
        5374  +
impl crate::constrained::Constrained for crate::input::TestGetNoInputNoPayloadInput {
        5375  +
    type Unconstrained = crate::input::test_get_no_input_no_payload_input::Builder;
 5535   5376   
}
 5536   5377   
 5537   5378   
/* StructureGenerator.kt:197 */
 5538   5379   
#[allow(missing_docs)] // documentation missing in model
 5539   5380   
/* RustType.kt:534 */
 5540   5381   
#[derive(
 5541   5382   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 5542   5383   
)]
 5543         -
pub /* StructureGenerator.kt:201 */ struct EmptyInputAndEmptyOutputInput {/* StructureGenerator.kt:201 */}
        5384  +
pub /* StructureGenerator.kt:201 */ struct TestPostNoInputNoPayloadInput {/* StructureGenerator.kt:201 */}
 5544   5385   
/* ServerCodegenVisitor.kt:356 */
 5545         -
impl EmptyInputAndEmptyOutputInput {
 5546         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`EmptyInputAndEmptyOutputInput`](crate::input::EmptyInputAndEmptyOutputInput).
        5386  +
impl TestPostNoInputNoPayloadInput {
        5387  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`TestPostNoInputNoPayloadInput`](crate::input::TestPostNoInputNoPayloadInput).
 5547   5388   
    /* ServerBuilderGenerator.kt:295 */
 5548         -
    pub fn builder() -> crate::input::empty_input_and_empty_output_input::Builder {
        5389  +
    pub fn builder() -> crate::input::test_post_no_input_no_payload_input::Builder {
 5549   5390   
        /* ServerBuilderGenerator.kt:296 */
 5550         -
        crate::input::empty_input_and_empty_output_input::Builder::default()
        5391  +
        crate::input::test_post_no_input_no_payload_input::Builder::default()
 5551   5392   
        /* ServerBuilderGenerator.kt:295 */
 5552   5393   
    }
 5553   5394   
    /* ServerCodegenVisitor.kt:356 */
 5554   5395   
}
 5555   5396   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 5556         -
impl crate::constrained::Constrained for crate::input::EmptyInputAndEmptyOutputInput {
 5557         -
    type Unconstrained = crate::input::empty_input_and_empty_output_input::Builder;
        5397  +
impl crate::constrained::Constrained for crate::input::TestPostNoInputNoPayloadInput {
        5398  +
    type Unconstrained = crate::input::test_post_no_input_no_payload_input::Builder;
 5558   5399   
}
 5559   5400   
 5560   5401   
/* StructureGenerator.kt:197 */
 5561   5402   
#[allow(missing_docs)] // documentation missing in model
 5562   5403   
/* RustType.kt:534 */
 5563   5404   
#[derive(
 5564   5405   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 5565   5406   
)]
 5566         -
pub /* StructureGenerator.kt:201 */ struct NoInputAndOutputInput {/* StructureGenerator.kt:201 */}
        5407  +
pub /* StructureGenerator.kt:201 */ struct DatetimeOffsetsInput {/* StructureGenerator.kt:201 */}
 5567   5408   
/* ServerCodegenVisitor.kt:356 */
 5568         -
impl NoInputAndOutputInput {
 5569         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`NoInputAndOutputInput`](crate::input::NoInputAndOutputInput).
        5409  +
impl DatetimeOffsetsInput {
        5410  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`DatetimeOffsetsInput`](crate::input::DatetimeOffsetsInput).
 5570   5411   
    /* ServerBuilderGenerator.kt:295 */
 5571         -
    pub fn builder() -> crate::input::no_input_and_output_input::Builder {
        5412  +
    pub fn builder() -> crate::input::datetime_offsets_input::Builder {
 5572   5413   
        /* ServerBuilderGenerator.kt:296 */
 5573         -
        crate::input::no_input_and_output_input::Builder::default()
        5414  +
        crate::input::datetime_offsets_input::Builder::default()
 5574   5415   
        /* ServerBuilderGenerator.kt:295 */
 5575   5416   
    }
 5576   5417   
    /* ServerCodegenVisitor.kt:356 */
 5577   5418   
}
 5578   5419   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 5579         -
impl crate::constrained::Constrained for crate::input::NoInputAndOutputInput {
 5580         -
    type Unconstrained = crate::input::no_input_and_output_input::Builder;
        5420  +
impl crate::constrained::Constrained for crate::input::DatetimeOffsetsInput {
        5421  +
    type Unconstrained = crate::input::datetime_offsets_input::Builder;
 5581   5422   
}
 5582   5423   
 5583   5424   
/* StructureGenerator.kt:197 */
 5584   5425   
#[allow(missing_docs)] // documentation missing in model
 5585   5426   
/* RustType.kt:534 */
 5586   5427   
#[derive(
 5587   5428   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
 5588   5429   
)]
 5589         -
pub /* StructureGenerator.kt:201 */ struct NoInputAndNoOutputInput {/* StructureGenerator.kt:201 */}
        5430  +
pub /* StructureGenerator.kt:201 */ struct FractionalSecondsInput {/* StructureGenerator.kt:201 */}
 5590   5431   
/* ServerCodegenVisitor.kt:356 */
 5591         -
impl NoInputAndNoOutputInput {
 5592         -
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`NoInputAndNoOutputInput`](crate::input::NoInputAndNoOutputInput).
        5432  +
impl FractionalSecondsInput {
        5433  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`FractionalSecondsInput`](crate::input::FractionalSecondsInput).
 5593   5434   
    /* ServerBuilderGenerator.kt:295 */
 5594         -
    pub fn builder() -> crate::input::no_input_and_no_output_input::Builder {
        5435  +
    pub fn builder() -> crate::input::fractional_seconds_input::Builder {
 5595   5436   
        /* ServerBuilderGenerator.kt:296 */
 5596         -
        crate::input::no_input_and_no_output_input::Builder::default()
        5437  +
        crate::input::fractional_seconds_input::Builder::default()
 5597   5438   
        /* ServerBuilderGenerator.kt:295 */
 5598   5439   
    }
 5599   5440   
    /* ServerCodegenVisitor.kt:356 */
 5600   5441   
}
 5601   5442   
/* ServerStructureConstrainedTraitImpl.kt:21 */
 5602         -
impl crate::constrained::Constrained for crate::input::NoInputAndNoOutputInput {
 5603         -
    type Unconstrained = crate::input::no_input_and_no_output_input::Builder;
        5443  +
impl crate::constrained::Constrained for crate::input::FractionalSecondsInput {
        5444  +
    type Unconstrained = crate::input::fractional_seconds_input::Builder;
 5604   5445   
}
 5605         -
/// /* ServerBuilderGenerator.kt:171 */See [`OperationWithNestedStructureInput`](crate::input::OperationWithNestedStructureInput).
 5606         -
pub mod operation_with_nested_structure_input {
 5607   5446   
 5608         -
    /* RustType.kt:534 */
 5609         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 5610         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 5611         -
    /* RustType.kt:534 */
 5612         -
    #[non_exhaustive]
 5613         -
    /* ServerBuilderConstraintViolations.kt:75 */
 5614         -
    #[allow(clippy::enum_variant_names)]
 5615         -
    pub enum ConstraintViolation {
 5616         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`top_level` was not provided but it is required when building `OperationWithNestedStructureInput`.
 5617         -
        /* ServerBuilderConstraintViolations.kt:144 */
 5618         -
        MissingTopLevel,
 5619         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `top_level` when building `OperationWithNestedStructureInput`.
 5620         -
        /* RustType.kt:534 */
 5621         -
        #[doc(hidden)]
 5622         -
        /* ServerBuilderConstraintViolations.kt:165 */
 5623         -
        TopLevel(crate::model::top_level::ConstraintViolation),
 5624         -
        /* ServerBuilderConstraintViolations.kt:75 */
 5625         -
    }
 5626         -
    /* ServerBuilderConstraintViolations.kt:116 */
 5627         -
    impl ::std::fmt::Display for ConstraintViolation {
 5628         -
        /* ServerBuilderConstraintViolations.kt:117 */
 5629         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 5630         -
            /* ServerBuilderConstraintViolations.kt:118 */
 5631         -
            match self {
 5632         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTopLevel => write!(f, "`top_level` was not provided but it is required when building `OperationWithNestedStructureInput`"),
 5633         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::TopLevel(_) => write!(f, "constraint violation occurred building member `top_level` when building `OperationWithNestedStructureInput`"),
 5634         -
            /* ServerBuilderConstraintViolations.kt:118 */}
 5635         -
            /* ServerBuilderConstraintViolations.kt:117 */
 5636         -
        }
 5637         -
        /* ServerBuilderConstraintViolations.kt:116 */
 5638         -
    }
 5639         -
    /* ServerBuilderConstraintViolations.kt:83 */
 5640         -
    impl ::std::error::Error for ConstraintViolation {}
 5641         -
    /* ServerBuilderConstraintViolations.kt:172 */
 5642         -
    impl ConstraintViolation {
 5643         -
        pub(crate) fn as_validation_exception_field(
 5644         -
            self,
 5645         -
            path: ::std::string::String,
 5646         -
        ) -> crate::model::ValidationExceptionField {
 5647         -
            match self {
 5648         -
            ConstraintViolation::MissingTopLevel => crate::model::ValidationExceptionField {
 5649         -
                                                message: format!("Value at '{}/topLevel' failed to satisfy constraint: Member must not be null", path),
 5650         -
                                                path: path + "/topLevel",
 5651         -
                                            },
 5652         -
            ConstraintViolation::TopLevel(inner) => inner.as_validation_exception_field(path + "/topLevel"),
        5447  +
/* StructureGenerator.kt:197 */
        5448  +
#[allow(missing_docs)] // documentation missing in model
        5449  +
/* RustType.kt:534 */
        5450  +
#[derive(
        5451  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5452  +
)]
        5453  +
pub /* StructureGenerator.kt:201 */ struct PutWithContentEncodingInput {
        5454  +
    /* StructureGenerator.kt:231 */
        5455  +
    #[allow(missing_docs)] // documentation missing in model
        5456  +
    pub encoding: ::std::option::Option<::std::string::String>,
        5457  +
    /* StructureGenerator.kt:231 */
        5458  +
    #[allow(missing_docs)] // documentation missing in model
        5459  +
    pub data: ::std::option::Option<::std::string::String>,
        5460  +
    /* StructureGenerator.kt:201 */
        5461  +
}
        5462  +
/* StructureGenerator.kt:135 */
        5463  +
impl PutWithContentEncodingInput {
        5464  +
    /* StructureGenerator.kt:231 */
        5465  +
    #[allow(missing_docs)] // documentation missing in model
        5466  +
                           /* StructureGenerator.kt:166 */
        5467  +
    pub fn encoding(&self) -> ::std::option::Option<&str> {
        5468  +
        /* StructureGenerator.kt:169 */
        5469  +
        self.encoding.as_deref()
        5470  +
        /* StructureGenerator.kt:166 */
 5653   5471   
    }
        5472  +
    /* StructureGenerator.kt:231 */
        5473  +
    #[allow(missing_docs)] // documentation missing in model
        5474  +
                           /* StructureGenerator.kt:166 */
        5475  +
    pub fn data(&self) -> ::std::option::Option<&str> {
        5476  +
        /* StructureGenerator.kt:169 */
        5477  +
        self.data.as_deref()
        5478  +
        /* StructureGenerator.kt:166 */
 5654   5479   
    }
        5480  +
    /* StructureGenerator.kt:135 */
        5481  +
}
        5482  +
/* ServerCodegenVisitor.kt:356 */
        5483  +
impl PutWithContentEncodingInput {
        5484  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`PutWithContentEncodingInput`](crate::input::PutWithContentEncodingInput).
        5485  +
    /* ServerBuilderGenerator.kt:295 */
        5486  +
    pub fn builder() -> crate::input::put_with_content_encoding_input::Builder {
        5487  +
        /* ServerBuilderGenerator.kt:296 */
        5488  +
        crate::input::put_with_content_encoding_input::Builder::default()
        5489  +
        /* ServerBuilderGenerator.kt:295 */
 5655   5490   
    }
 5656         -
    /* ServerBuilderGenerator.kt:234 */
 5657         -
    impl ::std::convert::From<ConstraintViolation>
 5658         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 5659         -
    {
 5660         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
 5661         -
            let first_validation_exception_field =
 5662         -
                constraint_violation.as_validation_exception_field("".to_owned());
 5663         -
            let validation_exception = crate::error::ValidationException {
 5664         -
                message: format!(
 5665         -
                    "1 validation error detected. {}",
 5666         -
                    &first_validation_exception_field.message
 5667         -
                ),
 5668         -
                field_list: Some(vec![first_validation_exception_field]),
 5669         -
            };
 5670         -
            Self::ConstraintViolation(
 5671         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 5672         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 5673         -
                            )
 5674         -
        }
 5675         -
    }
 5676         -
    /* ServerBuilderGenerator.kt:244 */
 5677         -
    impl ::std::convert::From<Builder>
 5678         -
        for crate::constrained::MaybeConstrained<crate::input::OperationWithNestedStructureInput>
 5679         -
    {
 5680         -
        fn from(builder: Builder) -> Self {
 5681         -
            Self::Unconstrained(builder)
 5682         -
        }
 5683         -
    }
 5684         -
    /* ServerBuilderGenerator.kt:446 */
 5685         -
    impl ::std::convert::TryFrom<Builder> for crate::input::OperationWithNestedStructureInput {
 5686         -
        type Error = ConstraintViolation;
 5687         -
 5688         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 5689         -
            builder.build()
 5690         -
        }
 5691         -
    }
 5692         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OperationWithNestedStructureInput`](crate::input::OperationWithNestedStructureInput).
 5693         -
    /* RustType.kt:534 */
 5694         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 5695         -
    /* ServerBuilderGenerator.kt:211 */
 5696         -
    pub struct Builder {
 5697         -
        /* ServerBuilderGenerator.kt:308 */
 5698         -
        pub(crate) top_level:
 5699         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::TopLevel>>,
 5700         -
        /* ServerBuilderGenerator.kt:211 */
 5701         -
    }
 5702         -
    /* ServerBuilderGenerator.kt:215 */
 5703         -
    impl Builder {
 5704         -
        /* ServerBuilderGenerator.kt:331 */
 5705         -
        #[allow(missing_docs)] // documentation missing in model
 5706         -
                               /* ServerBuilderGenerator.kt:343 */
 5707         -
        pub fn top_level(mut self, input: crate::model::TopLevel) -> Self {
 5708         -
            /* ServerBuilderGenerator.kt:344 */
 5709         -
            self.top_level =
 5710         -
                /* ServerBuilderGenerator.kt:345 */Some(
 5711         -
                    /* ServerBuilderGenerator.kt:372 */crate::constrained::MaybeConstrained::Constrained(input)
 5712         -
                /* ServerBuilderGenerator.kt:345 */)
 5713         -
            /* ServerBuilderGenerator.kt:344 */;
 5714         -
            self
 5715         -
            /* ServerBuilderGenerator.kt:343 */
 5716         -
        }
 5717         -
        /* ServerBuilderGenerator.kt:426 */
 5718         -
        #[allow(missing_docs)] // documentation missing in model
 5719         -
                               /* ServerBuilderGenerator.kt:428 */
 5720         -
        pub(crate) fn set_top_level(
 5721         -
            mut self,
 5722         -
            input: impl ::std::convert::Into<
 5723         -
                crate::constrained::MaybeConstrained<crate::model::TopLevel>,
 5724         -
            >,
 5725         -
        ) -> Self {
 5726         -
            /* ServerBuilderGenerator.kt:429 */
 5727         -
            self.top_level = Some(input.into());
 5728         -
            self
 5729         -
            /* ServerBuilderGenerator.kt:428 */
 5730         -
        }
 5731         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OperationWithNestedStructureInput`](crate::input::OperationWithNestedStructureInput).
 5732         -
        /// /* ServerBuilderGenerator.kt:260 */
 5733         -
        /// The builder fails to construct a [`OperationWithNestedStructureInput`](crate::input::OperationWithNestedStructureInput) if a [`ConstraintViolation`] occurs.
 5734         -
        ///
 5735         -
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
 5736         -
        /* ServerBuilderGenerator.kt:271 */
 5737         -
        pub fn build(
 5738         -
            self,
 5739         -
        ) -> Result<crate::input::OperationWithNestedStructureInput, ConstraintViolation> {
 5740         -
            self.build_enforcing_all_constraints()
 5741         -
        }
 5742         -
        /* ServerBuilderGenerator.kt:283 */
 5743         -
        fn build_enforcing_all_constraints(
 5744         -
            self,
 5745         -
        ) -> Result<crate::input::OperationWithNestedStructureInput, ConstraintViolation> {
 5746         -
            /* ServerBuilderGenerator.kt:287 */
 5747         -
            Ok(
 5748         -
                /* ServerBuilderGenerator.kt:542 */
 5749         -
                crate::input::OperationWithNestedStructureInput {
 5750         -
                    /* ServerBuilderGenerator.kt:546 */
 5751         -
                    top_level: self
 5752         -
                        .top_level
 5753         -
                        /* ServerBuilderGenerator.kt:602 */
 5754         -
                        .map(|v| match v {
 5755         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
 5756         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
 5757         -
                        })
 5758         -
                        /* ServerBuilderGenerator.kt:614 */
 5759         -
                        .map(|res| res.map_err(ConstraintViolation::TopLevel))
 5760         -
                        .transpose()?
 5761         -
                        /* ServerBuilderGenerator.kt:569 */
 5762         -
                        .ok_or(ConstraintViolation::MissingTopLevel)?,
 5763         -
                    /* ServerBuilderGenerator.kt:542 */
 5764         -
                }, /* ServerBuilderGenerator.kt:287 */
 5765         -
            )
 5766         -
            /* ServerBuilderGenerator.kt:283 */
 5767         -
        }
 5768         -
        /* ServerBuilderGenerator.kt:215 */
 5769         -
    }
 5770         -
 5771         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 5772         -
}
 5773         -
/// /* ServerBuilderGenerator.kt:171 */See [`OperationWithDefaultsInput`](crate::input::OperationWithDefaultsInput).
 5774         -
pub mod operation_with_defaults_input {
 5775         -
 5776         -
    /* RustType.kt:534 */
 5777         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 5778         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 5779         -
    /* RustType.kt:534 */
 5780         -
    #[non_exhaustive]
 5781         -
    /* ServerBuilderConstraintViolations.kt:75 */
 5782         -
    #[allow(clippy::enum_variant_names)]
 5783         -
    pub enum ConstraintViolation {
 5784         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `defaults` when building `OperationWithDefaultsInput`.
 5785         -
        /* RustType.kt:534 */
 5786         -
        #[doc(hidden)]
 5787         -
        /* ServerBuilderConstraintViolations.kt:165 */
 5788         -
        Defaults(crate::model::defaults::ConstraintViolation),
 5789         -
        /* ServerBuilderConstraintViolations.kt:75 */
 5790         -
    }
 5791         -
    /* ServerBuilderConstraintViolations.kt:116 */
 5792         -
    impl ::std::fmt::Display for ConstraintViolation {
 5793         -
        /* ServerBuilderConstraintViolations.kt:117 */
 5794         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 5795         -
            /* ServerBuilderConstraintViolations.kt:118 */
 5796         -
            match self {
 5797         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::Defaults(_) => write!(f, "constraint violation occurred building member `defaults` when building `OperationWithDefaultsInput`"),
 5798         -
            /* ServerBuilderConstraintViolations.kt:118 */}
 5799         -
            /* ServerBuilderConstraintViolations.kt:117 */
 5800         -
        }
 5801         -
        /* ServerBuilderConstraintViolations.kt:116 */
 5802         -
    }
 5803         -
    /* ServerBuilderConstraintViolations.kt:83 */
 5804         -
    impl ::std::error::Error for ConstraintViolation {}
 5805         -
    /* ServerBuilderConstraintViolations.kt:172 */
 5806         -
    impl ConstraintViolation {
 5807         -
        pub(crate) fn as_validation_exception_field(
 5808         -
            self,
 5809         -
            path: ::std::string::String,
 5810         -
        ) -> crate::model::ValidationExceptionField {
 5811         -
            match self {
 5812         -
                ConstraintViolation::Defaults(inner) => {
 5813         -
                    inner.as_validation_exception_field(path + "/defaults")
 5814         -
                }
 5815         -
            }
 5816         -
        }
 5817         -
    }
 5818         -
    /* ServerBuilderGenerator.kt:234 */
 5819         -
    impl ::std::convert::From<ConstraintViolation>
 5820         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 5821         -
    {
 5822         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
 5823         -
            let first_validation_exception_field =
 5824         -
                constraint_violation.as_validation_exception_field("".to_owned());
 5825         -
            let validation_exception = crate::error::ValidationException {
 5826         -
                message: format!(
 5827         -
                    "1 validation error detected. {}",
 5828         -
                    &first_validation_exception_field.message
 5829         -
                ),
 5830         -
                field_list: Some(vec![first_validation_exception_field]),
 5831         -
            };
 5832         -
            Self::ConstraintViolation(
 5833         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 5834         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 5835         -
                            )
 5836         -
        }
 5837         -
    }
 5838         -
    /* ServerBuilderGenerator.kt:244 */
 5839         -
    impl ::std::convert::From<Builder>
 5840         -
        for crate::constrained::MaybeConstrained<crate::input::OperationWithDefaultsInput>
 5841         -
    {
 5842         -
        fn from(builder: Builder) -> Self {
 5843         -
            Self::Unconstrained(builder)
 5844         -
        }
 5845         -
    }
 5846         -
    /* ServerBuilderGenerator.kt:446 */
 5847         -
    impl ::std::convert::TryFrom<Builder> for crate::input::OperationWithDefaultsInput {
 5848         -
        type Error = ConstraintViolation;
 5849         -
 5850         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 5851         -
            builder.build()
 5852         -
        }
 5853         -
    }
 5854         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OperationWithDefaultsInput`](crate::input::OperationWithDefaultsInput).
 5855         -
    /* RustType.kt:534 */
 5856         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 5857         -
    /* ServerBuilderGenerator.kt:211 */
 5858         -
    pub struct Builder {
 5859         -
        /* ServerBuilderGenerator.kt:308 */
 5860         -
        pub(crate) defaults:
 5861         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::Defaults>>,
 5862         -
        /* ServerBuilderGenerator.kt:308 */
 5863         -
        pub(crate) client_optional_defaults:
 5864         -
            ::std::option::Option<crate::model::ClientOptionalDefaults>,
 5865         -
        /* ServerBuilderGenerator.kt:308 */
 5866         -
        pub(crate) top_level_default: ::std::option::Option<::std::string::String>,
 5867         -
        /* ServerBuilderGenerator.kt:308 */
 5868         -
        pub(crate) other_top_level_default: ::std::option::Option<i32>,
 5869         -
        /* ServerBuilderGenerator.kt:211 */
 5870         -
    }
 5871         -
    /* ServerBuilderGenerator.kt:215 */
 5872         -
    impl Builder {
 5873         -
        /* ServerBuilderGenerator.kt:331 */
 5874         -
        #[allow(missing_docs)] // documentation missing in model
 5875         -
                               /* ServerBuilderGenerator.kt:343 */
 5876         -
        pub fn defaults(mut self, input: ::std::option::Option<crate::model::Defaults>) -> Self {
 5877         -
            /* ServerBuilderGenerator.kt:344 */
 5878         -
            self.defaults =
 5879         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
 5880         -
            /* ServerBuilderGenerator.kt:344 */;
 5881         -
            self
 5882         -
            /* ServerBuilderGenerator.kt:343 */
 5883         -
        }
 5884         -
        /* ServerBuilderGenerator.kt:426 */
 5885         -
        #[allow(missing_docs)] // documentation missing in model
 5886         -
                               /* ServerBuilderGenerator.kt:428 */
 5887         -
        pub(crate) fn set_defaults(
 5888         -
            mut self,
 5889         -
            input: Option<
 5890         -
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::Defaults>>,
 5891         -
            >,
 5892         -
        ) -> Self {
 5893         -
            /* ServerBuilderGenerator.kt:429 */
 5894         -
            self.defaults = input.map(|v| v.into());
 5895         -
            self
 5896         -
            /* ServerBuilderGenerator.kt:428 */
 5897         -
        }
 5898         -
        /* ServerBuilderGenerator.kt:331 */
 5899         -
        #[allow(missing_docs)] // documentation missing in model
 5900         -
                               /* ServerBuilderGenerator.kt:343 */
 5901         -
        pub fn client_optional_defaults(
 5902         -
            mut self,
 5903         -
            input: ::std::option::Option<crate::model::ClientOptionalDefaults>,
 5904         -
        ) -> Self {
 5905         -
            /* ServerBuilderGenerator.kt:344 */
 5906         -
            self.client_optional_defaults =
 5907         -
                /* ServerBuilderGenerator.kt:376 */input
 5908         -
            /* ServerBuilderGenerator.kt:344 */;
 5909         -
            self
 5910         -
            /* ServerBuilderGenerator.kt:343 */
 5911         -
        }
 5912         -
        /* ServerBuilderGenerator.kt:426 */
 5913         -
        #[allow(missing_docs)] // documentation missing in model
 5914         -
                               /* ServerBuilderGenerator.kt:428 */
 5915         -
        pub(crate) fn set_client_optional_defaults(
 5916         -
            mut self,
 5917         -
            input: Option<impl ::std::convert::Into<crate::model::ClientOptionalDefaults>>,
 5918         -
        ) -> Self {
 5919         -
            /* ServerBuilderGenerator.kt:429 */
 5920         -
            self.client_optional_defaults = input.map(|v| v.into());
 5921         -
            self
 5922         -
            /* ServerBuilderGenerator.kt:428 */
 5923         -
        }
 5924         -
        /* ServerBuilderGenerator.kt:331 */
 5925         -
        #[allow(missing_docs)] // documentation missing in model
 5926         -
                               /* ServerBuilderGenerator.kt:343 */
 5927         -
        pub fn top_level_default(mut self, input: ::std::string::String) -> Self {
 5928         -
            /* ServerBuilderGenerator.kt:344 */
 5929         -
            self.top_level_default =
 5930         -
                /* ServerBuilderGenerator.kt:345 */Some(
 5931         -
                    /* ServerBuilderGenerator.kt:376 */input
 5932         -
                /* ServerBuilderGenerator.kt:345 */)
 5933         -
            /* ServerBuilderGenerator.kt:344 */;
 5934         -
            self
 5935         -
            /* ServerBuilderGenerator.kt:343 */
 5936         -
        }
 5937         -
        /* ServerBuilderGenerator.kt:426 */
 5938         -
        #[allow(missing_docs)] // documentation missing in model
 5939         -
                               /* ServerBuilderGenerator.kt:428 */
 5940         -
        pub(crate) fn set_top_level_default(
 5941         -
            mut self,
 5942         -
            input: impl ::std::convert::Into<::std::string::String>,
 5943         -
        ) -> Self {
 5944         -
            /* ServerBuilderGenerator.kt:429 */
 5945         -
            self.top_level_default = Some(input.into());
 5946         -
            self
 5947         -
            /* ServerBuilderGenerator.kt:428 */
 5948         -
        }
 5949         -
        /* ServerBuilderGenerator.kt:331 */
 5950         -
        #[allow(missing_docs)] // documentation missing in model
 5951         -
                               /* ServerBuilderGenerator.kt:343 */
 5952         -
        pub fn other_top_level_default(mut self, input: i32) -> Self {
 5953         -
            /* ServerBuilderGenerator.kt:344 */
 5954         -
            self.other_top_level_default =
 5955         -
                /* ServerBuilderGenerator.kt:345 */Some(
 5956         -
                    /* ServerBuilderGenerator.kt:376 */input
 5957         -
                /* ServerBuilderGenerator.kt:345 */)
 5958         -
            /* ServerBuilderGenerator.kt:344 */;
 5959         -
            self
 5960         -
            /* ServerBuilderGenerator.kt:343 */
 5961         -
        }
 5962         -
        /* ServerBuilderGenerator.kt:426 */
 5963         -
        #[allow(missing_docs)] // documentation missing in model
 5964         -
                               /* ServerBuilderGenerator.kt:428 */
 5965         -
        pub(crate) fn set_other_top_level_default(
 5966         -
            mut self,
 5967         -
            input: impl ::std::convert::Into<i32>,
 5968         -
        ) -> Self {
 5969         -
            /* ServerBuilderGenerator.kt:429 */
 5970         -
            self.other_top_level_default = Some(input.into());
 5971         -
            self
 5972         -
            /* ServerBuilderGenerator.kt:428 */
 5973         -
        }
 5974         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OperationWithDefaultsInput`](crate::input::OperationWithDefaultsInput).
 5975         -
        /// /* ServerBuilderGenerator.kt:260 */
 5976         -
        /// The builder fails to construct a [`OperationWithDefaultsInput`](crate::input::OperationWithDefaultsInput) if a [`ConstraintViolation`] occurs.
 5977         -
        ///
 5978         -
        /* ServerBuilderGenerator.kt:271 */
 5979         -
        pub fn build(
 5980         -
            self,
 5981         -
        ) -> Result<crate::input::OperationWithDefaultsInput, ConstraintViolation> {
 5982         -
            self.build_enforcing_all_constraints()
 5983         -
        }
 5984         -
        /* ServerBuilderGenerator.kt:283 */
 5985         -
        fn build_enforcing_all_constraints(
 5986         -
            self,
 5987         -
        ) -> Result<crate::input::OperationWithDefaultsInput, ConstraintViolation> {
 5988         -
            /* ServerBuilderGenerator.kt:287 */
 5989         -
            Ok(
 5990         -
                /* ServerBuilderGenerator.kt:542 */
 5991         -
                crate::input::OperationWithDefaultsInput {
 5992         -
                    /* ServerBuilderGenerator.kt:546 */
 5993         -
                    defaults: self
 5994         -
                        .defaults
 5995         -
                        /* ServerBuilderGenerator.kt:602 */
 5996         -
                        .map(|v| match v {
 5997         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
 5998         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
 5999         -
                        })
 6000         -
                        /* ServerBuilderGenerator.kt:614 */
 6001         -
                        .map(|res| res.map_err(ConstraintViolation::Defaults))
 6002         -
                        .transpose()?,
 6003         -
                    /* ServerBuilderGenerator.kt:546 */
 6004         -
                    client_optional_defaults: self.client_optional_defaults,
 6005         -
                    /* ServerBuilderGenerator.kt:546 */
 6006         -
                    top_level_default: self
 6007         -
                        .top_level_default
 6008         -
                        /* ServerBuilderGeneratorCommon.kt:129 */
 6009         -
                        .unwrap_or_else(|| String::from("hi")),
 6010         -
                    /* ServerBuilderGenerator.kt:546 */
 6011         -
                    other_top_level_default: self
 6012         -
                        .other_top_level_default
 6013         -
                        /* ServerBuilderGeneratorCommon.kt:125 */
 6014         -
                        .unwrap_or(0i32),
 6015         -
                    /* ServerBuilderGenerator.kt:542 */
 6016         -
                }, /* ServerBuilderGenerator.kt:287 */
 6017         -
            )
 6018         -
            /* ServerBuilderGenerator.kt:283 */
 6019         -
        }
 6020         -
        /* ServerBuilderGenerator.kt:215 */
 6021         -
    }
 6022         -
 6023         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6024         -
}
 6025         -
/// /* ServerBuilderGenerator.kt:171 */See [`ContentTypeParametersInput`](crate::input::ContentTypeParametersInput).
 6026         -
pub mod content_type_parameters_input {
 6027         -
 6028         -
    /* ServerBuilderGenerator.kt:461 */
 6029         -
    impl ::std::convert::From<Builder> for crate::input::ContentTypeParametersInput {
 6030         -
        fn from(builder: Builder) -> Self {
 6031         -
            builder.build()
 6032         -
        }
 6033         -
    }
 6034         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`ContentTypeParametersInput`](crate::input::ContentTypeParametersInput).
 6035         -
    /* RustType.kt:534 */
 6036         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6037         -
    /* ServerBuilderGenerator.kt:211 */
 6038         -
    pub struct Builder {
 6039         -
        /* ServerBuilderGenerator.kt:308 */
 6040         -
        pub(crate) value: ::std::option::Option<i32>,
 6041         -
        /* ServerBuilderGenerator.kt:211 */
 6042         -
    }
 6043         -
    /* ServerBuilderGenerator.kt:215 */
 6044         -
    impl Builder {
 6045         -
        /* ServerBuilderGenerator.kt:331 */
 6046         -
        #[allow(missing_docs)] // documentation missing in model
 6047         -
                               /* ServerBuilderGenerator.kt:343 */
 6048         -
        pub fn value(mut self, input: ::std::option::Option<i32>) -> Self {
 6049         -
            /* ServerBuilderGenerator.kt:344 */
 6050         -
            self.value =
 6051         -
                /* ServerBuilderGenerator.kt:376 */input
 6052         -
            /* ServerBuilderGenerator.kt:344 */;
 6053         -
            self
 6054         -
            /* ServerBuilderGenerator.kt:343 */
 6055         -
        }
 6056         -
        /* ServerBuilderGenerator.kt:426 */
 6057         -
        #[allow(missing_docs)] // documentation missing in model
 6058         -
                               /* ServerBuilderGenerator.kt:428 */
 6059         -
        pub(crate) fn set_value(mut self, input: Option<impl ::std::convert::Into<i32>>) -> Self {
 6060         -
            /* ServerBuilderGenerator.kt:429 */
 6061         -
            self.value = input.map(|v| v.into());
 6062         -
            self
 6063         -
            /* ServerBuilderGenerator.kt:428 */
 6064         -
        }
 6065         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`ContentTypeParametersInput`](crate::input::ContentTypeParametersInput).
 6066         -
        /* ServerBuilderGenerator.kt:271 */
 6067         -
        pub fn build(self) -> crate::input::ContentTypeParametersInput {
 6068         -
            self.build_enforcing_all_constraints()
 6069         -
        }
 6070         -
        /* ServerBuilderGenerator.kt:283 */
 6071         -
        fn build_enforcing_all_constraints(self) -> crate::input::ContentTypeParametersInput {
 6072         -
            /* ServerBuilderGenerator.kt:542 */
 6073         -
            crate::input::ContentTypeParametersInput {
 6074         -
                /* ServerBuilderGenerator.kt:546 */
 6075         -
                value: self.value,
 6076         -
                /* ServerBuilderGenerator.kt:542 */
 6077         -
            }
 6078         -
            /* ServerBuilderGenerator.kt:283 */
 6079         -
        }
 6080         -
        /* ServerBuilderGenerator.kt:215 */
 6081         -
    }
 6082         -
 6083         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6084         -
}
 6085         -
/// /* ServerBuilderGenerator.kt:171 */See [`PutWithContentEncodingInput`](crate::input::PutWithContentEncodingInput).
 6086         -
pub mod put_with_content_encoding_input {
 6087         -
 6088         -
    /* ServerBuilderGenerator.kt:461 */
 6089         -
    impl ::std::convert::From<Builder> for crate::input::PutWithContentEncodingInput {
 6090         -
        fn from(builder: Builder) -> Self {
 6091         -
            builder.build()
 6092         -
        }
 6093         -
    }
 6094         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`PutWithContentEncodingInput`](crate::input::PutWithContentEncodingInput).
 6095         -
    /* RustType.kt:534 */
 6096         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6097         -
    /* ServerBuilderGenerator.kt:211 */
 6098         -
    pub struct Builder {
 6099         -
        /* ServerBuilderGenerator.kt:308 */
 6100         -
        pub(crate) encoding: ::std::option::Option<::std::string::String>,
 6101         -
        /* ServerBuilderGenerator.kt:308 */
 6102         -
        pub(crate) data: ::std::option::Option<::std::string::String>,
 6103         -
        /* ServerBuilderGenerator.kt:211 */
 6104         -
    }
 6105         -
    /* ServerBuilderGenerator.kt:215 */
 6106         -
    impl Builder {
 6107         -
        /* ServerBuilderGenerator.kt:331 */
 6108         -
        #[allow(missing_docs)] // documentation missing in model
 6109         -
                               /* ServerBuilderGenerator.kt:343 */
 6110         -
        pub fn encoding(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 6111         -
            /* ServerBuilderGenerator.kt:344 */
 6112         -
            self.encoding =
 6113         -
                /* ServerBuilderGenerator.kt:376 */input
 6114         -
            /* ServerBuilderGenerator.kt:344 */;
 6115         -
            self
 6116         -
            /* ServerBuilderGenerator.kt:343 */
 6117         -
        }
 6118         -
        /* ServerBuilderGenerator.kt:426 */
 6119         -
        #[allow(missing_docs)] // documentation missing in model
 6120         -
                               /* ServerBuilderGenerator.kt:428 */
 6121         -
        pub(crate) fn set_encoding(
 6122         -
            mut self,
 6123         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 6124         -
        ) -> Self {
 6125         -
            /* ServerBuilderGenerator.kt:429 */
 6126         -
            self.encoding = input.map(|v| v.into());
 6127         -
            self
 6128         -
            /* ServerBuilderGenerator.kt:428 */
 6129         -
        }
 6130         -
        /* ServerBuilderGenerator.kt:331 */
 6131         -
        #[allow(missing_docs)] // documentation missing in model
 6132         -
                               /* ServerBuilderGenerator.kt:343 */
 6133         -
        pub fn data(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 6134         -
            /* ServerBuilderGenerator.kt:344 */
 6135         -
            self.data =
 6136         -
                /* ServerBuilderGenerator.kt:376 */input
 6137         -
            /* ServerBuilderGenerator.kt:344 */;
 6138         -
            self
 6139         -
            /* ServerBuilderGenerator.kt:343 */
 6140         -
        }
 6141         -
        /* ServerBuilderGenerator.kt:426 */
 6142         -
        #[allow(missing_docs)] // documentation missing in model
 6143         -
                               /* ServerBuilderGenerator.kt:428 */
 6144         -
        pub(crate) fn set_data(
 6145         -
            mut self,
 6146         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 6147         -
        ) -> Self {
 6148         -
            /* ServerBuilderGenerator.kt:429 */
 6149         -
            self.data = input.map(|v| v.into());
 6150         -
            self
 6151         -
            /* ServerBuilderGenerator.kt:428 */
 6152         -
        }
 6153         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`PutWithContentEncodingInput`](crate::input::PutWithContentEncodingInput).
 6154         -
        /* ServerBuilderGenerator.kt:271 */
 6155         -
        pub fn build(self) -> crate::input::PutWithContentEncodingInput {
 6156         -
            self.build_enforcing_all_constraints()
 6157         -
        }
 6158         -
        /* ServerBuilderGenerator.kt:283 */
 6159         -
        fn build_enforcing_all_constraints(self) -> crate::input::PutWithContentEncodingInput {
 6160         -
            /* ServerBuilderGenerator.kt:542 */
 6161         -
            crate::input::PutWithContentEncodingInput {
 6162         -
                /* ServerBuilderGenerator.kt:546 */
 6163         -
                encoding: self.encoding,
 6164         -
                /* ServerBuilderGenerator.kt:546 */
 6165         -
                data: self.data,
 6166         -
                /* ServerBuilderGenerator.kt:542 */
 6167         -
            }
 6168         -
            /* ServerBuilderGenerator.kt:283 */
 6169         -
        }
 6170         -
        /* ServerBuilderGenerator.kt:215 */
 6171         -
    }
 6172         -
 6173         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6174         -
}
 6175         -
/// /* ServerBuilderGenerator.kt:171 */See [`FractionalSecondsInput`](crate::input::FractionalSecondsInput).
 6176         -
pub mod fractional_seconds_input {
 6177         -
 6178         -
    /* ServerBuilderGenerator.kt:461 */
 6179         -
    impl ::std::convert::From<Builder> for crate::input::FractionalSecondsInput {
 6180         -
        fn from(builder: Builder) -> Self {
 6181         -
            builder.build()
 6182         -
        }
 6183         -
    }
 6184         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`FractionalSecondsInput`](crate::input::FractionalSecondsInput).
 6185         -
    /* RustType.kt:534 */
 6186         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6187         -
    /* ServerBuilderGenerator.kt:211 */
 6188         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
 6189         -
    /* ServerBuilderGenerator.kt:215 */
 6190         -
    impl Builder {
 6191         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`FractionalSecondsInput`](crate::input::FractionalSecondsInput).
 6192         -
        /* ServerBuilderGenerator.kt:271 */
 6193         -
        pub fn build(self) -> crate::input::FractionalSecondsInput {
 6194         -
            self.build_enforcing_all_constraints()
 6195         -
        }
 6196         -
        /* ServerBuilderGenerator.kt:283 */
 6197         -
        fn build_enforcing_all_constraints(self) -> crate::input::FractionalSecondsInput {
 6198         -
            /* ServerBuilderGenerator.kt:542 */
 6199         -
            crate::input::FractionalSecondsInput {
 6200         -
            /* ServerBuilderGenerator.kt:542 */}
 6201         -
            /* ServerBuilderGenerator.kt:283 */
 6202         -
        }
 6203         -
        /* ServerBuilderGenerator.kt:215 */
 6204         -
    }
 6205         -
 6206         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6207         -
}
 6208         -
/// /* ServerBuilderGenerator.kt:171 */See [`DatetimeOffsetsInput`](crate::input::DatetimeOffsetsInput).
 6209         -
pub mod datetime_offsets_input {
 6210         -
 6211         -
    /* ServerBuilderGenerator.kt:461 */
 6212         -
    impl ::std::convert::From<Builder> for crate::input::DatetimeOffsetsInput {
 6213         -
        fn from(builder: Builder) -> Self {
 6214         -
            builder.build()
 6215         -
        }
 6216         -
    }
 6217         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`DatetimeOffsetsInput`](crate::input::DatetimeOffsetsInput).
 6218         -
    /* RustType.kt:534 */
 6219         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6220         -
    /* ServerBuilderGenerator.kt:211 */
 6221         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
 6222         -
    /* ServerBuilderGenerator.kt:215 */
 6223         -
    impl Builder {
 6224         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`DatetimeOffsetsInput`](crate::input::DatetimeOffsetsInput).
 6225         -
        /* ServerBuilderGenerator.kt:271 */
 6226         -
        pub fn build(self) -> crate::input::DatetimeOffsetsInput {
 6227         -
            self.build_enforcing_all_constraints()
 6228         -
        }
 6229         -
        /* ServerBuilderGenerator.kt:283 */
 6230         -
        fn build_enforcing_all_constraints(self) -> crate::input::DatetimeOffsetsInput {
 6231         -
            /* ServerBuilderGenerator.kt:542 */
 6232         -
            crate::input::DatetimeOffsetsInput {
 6233         -
            /* ServerBuilderGenerator.kt:542 */}
 6234         -
            /* ServerBuilderGenerator.kt:283 */
 6235         -
        }
 6236         -
        /* ServerBuilderGenerator.kt:215 */
 6237         -
    }
 6238         -
 6239         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6240         -
}
 6241         -
/// /* ServerBuilderGenerator.kt:171 */See [`TestPostNoInputNoPayloadInput`](crate::input::TestPostNoInputNoPayloadInput).
 6242         -
pub mod test_post_no_input_no_payload_input {
 6243         -
 6244         -
    /* ServerBuilderGenerator.kt:461 */
 6245         -
    impl ::std::convert::From<Builder> for crate::input::TestPostNoInputNoPayloadInput {
 6246         -
        fn from(builder: Builder) -> Self {
 6247         -
            builder.build()
 6248         -
        }
 6249         -
    }
 6250         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestPostNoInputNoPayloadInput`](crate::input::TestPostNoInputNoPayloadInput).
 6251         -
    /* RustType.kt:534 */
 6252         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6253         -
    /* ServerBuilderGenerator.kt:211 */
 6254         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
 6255         -
    /* ServerBuilderGenerator.kt:215 */
 6256         -
    impl Builder {
 6257         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestPostNoInputNoPayloadInput`](crate::input::TestPostNoInputNoPayloadInput).
 6258         -
        /* ServerBuilderGenerator.kt:271 */
 6259         -
        pub fn build(self) -> crate::input::TestPostNoInputNoPayloadInput {
 6260         -
            self.build_enforcing_all_constraints()
 6261         -
        }
 6262         -
        /* ServerBuilderGenerator.kt:283 */
 6263         -
        fn build_enforcing_all_constraints(self) -> crate::input::TestPostNoInputNoPayloadInput {
 6264         -
            /* ServerBuilderGenerator.kt:542 */
 6265         -
            crate::input::TestPostNoInputNoPayloadInput {
 6266         -
            /* ServerBuilderGenerator.kt:542 */}
 6267         -
            /* ServerBuilderGenerator.kt:283 */
 6268         -
        }
 6269         -
        /* ServerBuilderGenerator.kt:215 */
 6270         -
    }
 6271         -
 6272         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6273         -
}
 6274         -
/// /* ServerBuilderGenerator.kt:171 */See [`TestGetNoInputNoPayloadInput`](crate::input::TestGetNoInputNoPayloadInput).
 6275         -
pub mod test_get_no_input_no_payload_input {
 6276         -
 6277         -
    /* ServerBuilderGenerator.kt:461 */
 6278         -
    impl ::std::convert::From<Builder> for crate::input::TestGetNoInputNoPayloadInput {
 6279         -
        fn from(builder: Builder) -> Self {
 6280         -
            builder.build()
 6281         -
        }
 6282         -
    }
 6283         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestGetNoInputNoPayloadInput`](crate::input::TestGetNoInputNoPayloadInput).
 6284         -
    /* RustType.kt:534 */
 6285         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6286         -
    /* ServerBuilderGenerator.kt:211 */
 6287         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
 6288         -
    /* ServerBuilderGenerator.kt:215 */
 6289         -
    impl Builder {
 6290         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestGetNoInputNoPayloadInput`](crate::input::TestGetNoInputNoPayloadInput).
 6291         -
        /* ServerBuilderGenerator.kt:271 */
 6292         -
        pub fn build(self) -> crate::input::TestGetNoInputNoPayloadInput {
 6293         -
            self.build_enforcing_all_constraints()
 6294         -
        }
 6295         -
        /* ServerBuilderGenerator.kt:283 */
 6296         -
        fn build_enforcing_all_constraints(self) -> crate::input::TestGetNoInputNoPayloadInput {
 6297         -
            /* ServerBuilderGenerator.kt:542 */
 6298         -
            crate::input::TestGetNoInputNoPayloadInput {
 6299         -
            /* ServerBuilderGenerator.kt:542 */}
 6300         -
            /* ServerBuilderGenerator.kt:283 */
 6301         -
        }
 6302         -
        /* ServerBuilderGenerator.kt:215 */
 6303         -
    }
 6304         -
 6305         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6306         -
}
 6307         -
/// /* ServerBuilderGenerator.kt:171 */See [`TestPostNoPayloadInput`](crate::input::TestPostNoPayloadInput).
 6308         -
pub mod test_post_no_payload_input {
 6309         -
 6310         -
    /* ServerBuilderGenerator.kt:461 */
 6311         -
    impl ::std::convert::From<Builder> for crate::input::TestPostNoPayloadInput {
 6312         -
        fn from(builder: Builder) -> Self {
 6313         -
            builder.build()
 6314         -
        }
 6315         -
    }
 6316         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestPostNoPayloadInput`](crate::input::TestPostNoPayloadInput).
 6317         -
    /* RustType.kt:534 */
 6318         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6319         -
    /* ServerBuilderGenerator.kt:211 */
 6320         -
    pub struct Builder {
 6321         -
        /* ServerBuilderGenerator.kt:308 */
 6322         -
        pub(crate) test_id: ::std::option::Option<::std::string::String>,
 6323         -
        /* ServerBuilderGenerator.kt:211 */
 6324         -
    }
 6325         -
    /* ServerBuilderGenerator.kt:215 */
 6326         -
    impl Builder {
 6327         -
        /* ServerBuilderGenerator.kt:331 */
 6328         -
        #[allow(missing_docs)] // documentation missing in model
 6329         -
                               /* ServerBuilderGenerator.kt:343 */
 6330         -
        pub fn test_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 6331         -
            /* ServerBuilderGenerator.kt:344 */
 6332         -
            self.test_id =
 6333         -
                /* ServerBuilderGenerator.kt:376 */input
 6334         -
            /* ServerBuilderGenerator.kt:344 */;
 6335         -
            self
 6336         -
            /* ServerBuilderGenerator.kt:343 */
 6337         -
        }
 6338         -
        /* ServerBuilderGenerator.kt:426 */
 6339         -
        #[allow(missing_docs)] // documentation missing in model
 6340         -
                               /* ServerBuilderGenerator.kt:428 */
 6341         -
        pub(crate) fn set_test_id(
 6342         -
            mut self,
 6343         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 6344         -
        ) -> Self {
 6345         -
            /* ServerBuilderGenerator.kt:429 */
 6346         -
            self.test_id = input.map(|v| v.into());
 6347         -
            self
 6348         -
            /* ServerBuilderGenerator.kt:428 */
 6349         -
        }
 6350         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestPostNoPayloadInput`](crate::input::TestPostNoPayloadInput).
 6351         -
        /* ServerBuilderGenerator.kt:271 */
 6352         -
        pub fn build(self) -> crate::input::TestPostNoPayloadInput {
 6353         -
            self.build_enforcing_all_constraints()
 6354         -
        }
 6355         -
        /* ServerBuilderGenerator.kt:283 */
 6356         -
        fn build_enforcing_all_constraints(self) -> crate::input::TestPostNoPayloadInput {
 6357         -
            /* ServerBuilderGenerator.kt:542 */
 6358         -
            crate::input::TestPostNoPayloadInput {
 6359         -
                /* ServerBuilderGenerator.kt:546 */
 6360         -
                test_id: self.test_id,
 6361         -
                /* ServerBuilderGenerator.kt:542 */
 6362         -
            }
 6363         -
            /* ServerBuilderGenerator.kt:283 */
 6364         -
        }
 6365         -
        /* ServerBuilderGenerator.kt:215 */
 6366         -
    }
 6367         -
 6368         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6369         -
}
 6370         -
/// /* ServerBuilderGenerator.kt:171 */See [`TestGetNoPayloadInput`](crate::input::TestGetNoPayloadInput).
 6371         -
pub mod test_get_no_payload_input {
 6372         -
 6373         -
    /* ServerBuilderGenerator.kt:461 */
 6374         -
    impl ::std::convert::From<Builder> for crate::input::TestGetNoPayloadInput {
 6375         -
        fn from(builder: Builder) -> Self {
 6376         -
            builder.build()
 6377         -
        }
 6378         -
    }
 6379         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestGetNoPayloadInput`](crate::input::TestGetNoPayloadInput).
 6380         -
    /* RustType.kt:534 */
 6381         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6382         -
    /* ServerBuilderGenerator.kt:211 */
 6383         -
    pub struct Builder {
 6384         -
        /* ServerBuilderGenerator.kt:308 */
 6385         -
        pub(crate) test_id: ::std::option::Option<::std::string::String>,
 6386         -
        /* ServerBuilderGenerator.kt:211 */
 6387         -
    }
 6388         -
    /* ServerBuilderGenerator.kt:215 */
 6389         -
    impl Builder {
 6390         -
        /* ServerBuilderGenerator.kt:331 */
 6391         -
        #[allow(missing_docs)] // documentation missing in model
 6392         -
                               /* ServerBuilderGenerator.kt:343 */
 6393         -
        pub fn test_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 6394         -
            /* ServerBuilderGenerator.kt:344 */
 6395         -
            self.test_id =
 6396         -
                /* ServerBuilderGenerator.kt:376 */input
 6397         -
            /* ServerBuilderGenerator.kt:344 */;
 6398         -
            self
 6399         -
            /* ServerBuilderGenerator.kt:343 */
 6400         -
        }
 6401         -
        /* ServerBuilderGenerator.kt:426 */
 6402         -
        #[allow(missing_docs)] // documentation missing in model
 6403         -
                               /* ServerBuilderGenerator.kt:428 */
 6404         -
        pub(crate) fn set_test_id(
 6405         -
            mut self,
 6406         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 6407         -
        ) -> Self {
 6408         -
            /* ServerBuilderGenerator.kt:429 */
 6409         -
            self.test_id = input.map(|v| v.into());
 6410         -
            self
 6411         -
            /* ServerBuilderGenerator.kt:428 */
 6412         -
        }
 6413         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestGetNoPayloadInput`](crate::input::TestGetNoPayloadInput).
 6414         -
        /* ServerBuilderGenerator.kt:271 */
 6415         -
        pub fn build(self) -> crate::input::TestGetNoPayloadInput {
 6416         -
            self.build_enforcing_all_constraints()
 6417         -
        }
 6418         -
        /* ServerBuilderGenerator.kt:283 */
 6419         -
        fn build_enforcing_all_constraints(self) -> crate::input::TestGetNoPayloadInput {
 6420         -
            /* ServerBuilderGenerator.kt:542 */
 6421         -
            crate::input::TestGetNoPayloadInput {
 6422         -
                /* ServerBuilderGenerator.kt:546 */
 6423         -
                test_id: self.test_id,
 6424         -
                /* ServerBuilderGenerator.kt:542 */
 6425         -
            }
 6426         -
            /* ServerBuilderGenerator.kt:283 */
 6427         -
        }
 6428         -
        /* ServerBuilderGenerator.kt:215 */
 6429         -
    }
 6430         -
 6431         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6432         -
}
 6433         -
/// /* ServerBuilderGenerator.kt:171 */See [`TestPayloadBlobInput`](crate::input::TestPayloadBlobInput).
 6434         -
pub mod test_payload_blob_input {
 6435         -
 6436         -
    /* ServerBuilderGenerator.kt:461 */
 6437         -
    impl ::std::convert::From<Builder> for crate::input::TestPayloadBlobInput {
 6438         -
        fn from(builder: Builder) -> Self {
 6439         -
            builder.build()
 6440         -
        }
 6441         -
    }
 6442         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestPayloadBlobInput`](crate::input::TestPayloadBlobInput).
 6443         -
    /* RustType.kt:534 */
 6444         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6445         -
    /* ServerBuilderGenerator.kt:211 */
 6446         -
    pub struct Builder {
 6447         -
        /* ServerBuilderGenerator.kt:308 */
 6448         -
        pub(crate) content_type: ::std::option::Option<::std::string::String>,
 6449         -
        /* ServerBuilderGenerator.kt:308 */
 6450         -
        pub(crate) data: ::std::option::Option<::aws_smithy_types::Blob>,
 6451         -
        /* ServerBuilderGenerator.kt:211 */
 6452         -
    }
 6453         -
    /* ServerBuilderGenerator.kt:215 */
 6454         -
    impl Builder {
 6455         -
        /* ServerBuilderGenerator.kt:331 */
 6456         -
        #[allow(missing_docs)] // documentation missing in model
 6457         -
                               /* ServerBuilderGenerator.kt:343 */
 6458         -
        pub fn content_type(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 6459         -
            /* ServerBuilderGenerator.kt:344 */
 6460         -
            self.content_type =
 6461         -
                /* ServerBuilderGenerator.kt:376 */input
 6462         -
            /* ServerBuilderGenerator.kt:344 */;
 6463         -
            self
 6464         -
            /* ServerBuilderGenerator.kt:343 */
 6465         -
        }
 6466         -
        /* ServerBuilderGenerator.kt:426 */
 6467         -
        #[allow(missing_docs)] // documentation missing in model
 6468         -
                               /* ServerBuilderGenerator.kt:428 */
 6469         -
        pub(crate) fn set_content_type(
 6470         -
            mut self,
 6471         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 6472         -
        ) -> Self {
 6473         -
            /* ServerBuilderGenerator.kt:429 */
 6474         -
            self.content_type = input.map(|v| v.into());
 6475         -
            self
 6476         -
            /* ServerBuilderGenerator.kt:428 */
 6477         -
        }
 6478         -
        /* ServerBuilderGenerator.kt:331 */
 6479         -
        #[allow(missing_docs)] // documentation missing in model
 6480         -
                               /* ServerBuilderGenerator.kt:343 */
 6481         -
        pub fn data(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
 6482         -
            /* ServerBuilderGenerator.kt:344 */
 6483         -
            self.data =
 6484         -
                /* ServerBuilderGenerator.kt:376 */input
 6485         -
            /* ServerBuilderGenerator.kt:344 */;
 6486         -
            self
 6487         -
            /* ServerBuilderGenerator.kt:343 */
 6488         -
        }
 6489         -
        /* ServerBuilderGenerator.kt:426 */
 6490         -
        #[allow(missing_docs)] // documentation missing in model
 6491         -
                               /* ServerBuilderGenerator.kt:428 */
 6492         -
        pub(crate) fn set_data(
 6493         -
            mut self,
 6494         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
 6495         -
        ) -> Self {
 6496         -
            /* ServerBuilderGenerator.kt:429 */
 6497         -
            self.data = input.map(|v| v.into());
 6498         -
            self
 6499         -
            /* ServerBuilderGenerator.kt:428 */
 6500         -
        }
 6501         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestPayloadBlobInput`](crate::input::TestPayloadBlobInput).
 6502         -
        /* ServerBuilderGenerator.kt:271 */
 6503         -
        pub fn build(self) -> crate::input::TestPayloadBlobInput {
 6504         -
            self.build_enforcing_all_constraints()
 6505         -
        }
 6506         -
        /* ServerBuilderGenerator.kt:283 */
 6507         -
        fn build_enforcing_all_constraints(self) -> crate::input::TestPayloadBlobInput {
 6508         -
            /* ServerBuilderGenerator.kt:542 */
 6509         -
            crate::input::TestPayloadBlobInput {
 6510         -
                /* ServerBuilderGenerator.kt:546 */
 6511         -
                content_type: self.content_type,
 6512         -
                /* ServerBuilderGenerator.kt:546 */
 6513         -
                data: self.data,
 6514         -
                /* ServerBuilderGenerator.kt:542 */
 6515         -
            }
 6516         -
            /* ServerBuilderGenerator.kt:283 */
 6517         -
        }
 6518         -
        /* ServerBuilderGenerator.kt:215 */
 6519         -
    }
 6520         -
 6521         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6522         -
}
 6523         -
/// /* ServerBuilderGenerator.kt:171 */See [`TestPayloadStructureInput`](crate::input::TestPayloadStructureInput).
 6524         -
pub mod test_payload_structure_input {
 6525         -
 6526         -
    /* ServerBuilderGenerator.kt:461 */
 6527         -
    impl ::std::convert::From<Builder> for crate::input::TestPayloadStructureInput {
 6528         -
        fn from(builder: Builder) -> Self {
 6529         -
            builder.build()
 6530         -
        }
 6531         -
    }
 6532         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestPayloadStructureInput`](crate::input::TestPayloadStructureInput).
 6533         -
    /* RustType.kt:534 */
 6534         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6535         -
    /* ServerBuilderGenerator.kt:211 */
 6536         -
    pub struct Builder {
 6537         -
        /* ServerBuilderGenerator.kt:308 */
 6538         -
        pub(crate) test_id: ::std::option::Option<::std::string::String>,
 6539         -
        /* ServerBuilderGenerator.kt:308 */
 6540         -
        pub(crate) payload_config: ::std::option::Option<crate::model::PayloadConfig>,
 6541         -
        /* ServerBuilderGenerator.kt:211 */
 6542         -
    }
 6543         -
    /* ServerBuilderGenerator.kt:215 */
 6544         -
    impl Builder {
 6545         -
        /* ServerBuilderGenerator.kt:331 */
 6546         -
        #[allow(missing_docs)] // documentation missing in model
 6547         -
                               /* ServerBuilderGenerator.kt:343 */
 6548         -
        pub fn test_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 6549         -
            /* ServerBuilderGenerator.kt:344 */
 6550         -
            self.test_id =
 6551         -
                /* ServerBuilderGenerator.kt:376 */input
 6552         -
            /* ServerBuilderGenerator.kt:344 */;
 6553         -
            self
 6554         -
            /* ServerBuilderGenerator.kt:343 */
 6555         -
        }
 6556         -
        /* ServerBuilderGenerator.kt:426 */
 6557         -
        #[allow(missing_docs)] // documentation missing in model
 6558         -
                               /* ServerBuilderGenerator.kt:428 */
 6559         -
        pub(crate) fn set_test_id(
 6560         -
            mut self,
 6561         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 6562         -
        ) -> Self {
 6563         -
            /* ServerBuilderGenerator.kt:429 */
 6564         -
            self.test_id = input.map(|v| v.into());
 6565         -
            self
 6566         -
            /* ServerBuilderGenerator.kt:428 */
 6567         -
        }
 6568         -
        /* ServerBuilderGenerator.kt:331 */
 6569         -
        #[allow(missing_docs)] // documentation missing in model
 6570         -
                               /* ServerBuilderGenerator.kt:343 */
 6571         -
        pub fn payload_config(
 6572         -
            mut self,
 6573         -
            input: ::std::option::Option<crate::model::PayloadConfig>,
 6574         -
        ) -> Self {
 6575         -
            /* ServerBuilderGenerator.kt:344 */
 6576         -
            self.payload_config =
 6577         -
                /* ServerBuilderGenerator.kt:376 */input
 6578         -
            /* ServerBuilderGenerator.kt:344 */;
 6579         -
            self
 6580         -
            /* ServerBuilderGenerator.kt:343 */
 6581         -
        }
 6582         -
        /* ServerBuilderGenerator.kt:426 */
 6583         -
        #[allow(missing_docs)] // documentation missing in model
 6584         -
                               /* ServerBuilderGenerator.kt:428 */
 6585         -
        pub(crate) fn set_payload_config(
 6586         -
            mut self,
 6587         -
            input: Option<impl ::std::convert::Into<crate::model::PayloadConfig>>,
 6588         -
        ) -> Self {
 6589         -
            /* ServerBuilderGenerator.kt:429 */
 6590         -
            self.payload_config = input.map(|v| v.into());
 6591         -
            self
 6592         -
            /* ServerBuilderGenerator.kt:428 */
 6593         -
        }
 6594         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestPayloadStructureInput`](crate::input::TestPayloadStructureInput).
 6595         -
        /* ServerBuilderGenerator.kt:271 */
 6596         -
        pub fn build(self) -> crate::input::TestPayloadStructureInput {
 6597         -
            self.build_enforcing_all_constraints()
 6598         -
        }
 6599         -
        /* ServerBuilderGenerator.kt:283 */
 6600         -
        fn build_enforcing_all_constraints(self) -> crate::input::TestPayloadStructureInput {
 6601         -
            /* ServerBuilderGenerator.kt:542 */
 6602         -
            crate::input::TestPayloadStructureInput {
 6603         -
                /* ServerBuilderGenerator.kt:546 */
 6604         -
                test_id: self.test_id,
 6605         -
                /* ServerBuilderGenerator.kt:546 */
 6606         -
                payload_config: self.payload_config,
 6607         -
                /* ServerBuilderGenerator.kt:542 */
 6608         -
            }
 6609         -
            /* ServerBuilderGenerator.kt:283 */
 6610         -
        }
 6611         -
        /* ServerBuilderGenerator.kt:215 */
 6612         -
    }
 6613         -
 6614         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6615         -
}
 6616         -
/// /* ServerBuilderGenerator.kt:171 */See [`TestBodyStructureInput`](crate::input::TestBodyStructureInput).
 6617         -
pub mod test_body_structure_input {
 6618         -
 6619         -
    /* ServerBuilderGenerator.kt:461 */
 6620         -
    impl ::std::convert::From<Builder> for crate::input::TestBodyStructureInput {
 6621         -
        fn from(builder: Builder) -> Self {
 6622         -
            builder.build()
 6623         -
        }
 6624         -
    }
 6625         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestBodyStructureInput`](crate::input::TestBodyStructureInput).
 6626         -
    /* RustType.kt:534 */
 6627         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6628         -
    /* ServerBuilderGenerator.kt:211 */
 6629         -
    pub struct Builder {
 6630         -
        /* ServerBuilderGenerator.kt:308 */
 6631         -
        pub(crate) test_id: ::std::option::Option<::std::string::String>,
 6632         -
        /* ServerBuilderGenerator.kt:308 */
 6633         -
        pub(crate) test_config: ::std::option::Option<crate::model::TestConfig>,
 6634         -
        /* ServerBuilderGenerator.kt:211 */
 6635         -
    }
 6636         -
    /* ServerBuilderGenerator.kt:215 */
 6637         -
    impl Builder {
 6638         -
        /* ServerBuilderGenerator.kt:331 */
 6639         -
        #[allow(missing_docs)] // documentation missing in model
 6640         -
                               /* ServerBuilderGenerator.kt:343 */
 6641         -
        pub fn test_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 6642         -
            /* ServerBuilderGenerator.kt:344 */
 6643         -
            self.test_id =
 6644         -
                /* ServerBuilderGenerator.kt:376 */input
 6645         -
            /* ServerBuilderGenerator.kt:344 */;
 6646         -
            self
 6647         -
            /* ServerBuilderGenerator.kt:343 */
 6648         -
        }
 6649         -
        /* ServerBuilderGenerator.kt:426 */
 6650         -
        #[allow(missing_docs)] // documentation missing in model
 6651         -
                               /* ServerBuilderGenerator.kt:428 */
 6652         -
        pub(crate) fn set_test_id(
 6653         -
            mut self,
 6654         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 6655         -
        ) -> Self {
 6656         -
            /* ServerBuilderGenerator.kt:429 */
 6657         -
            self.test_id = input.map(|v| v.into());
 6658         -
            self
 6659         -
            /* ServerBuilderGenerator.kt:428 */
 6660         -
        }
 6661         -
        /* ServerBuilderGenerator.kt:331 */
 6662         -
        #[allow(missing_docs)] // documentation missing in model
 6663         -
                               /* ServerBuilderGenerator.kt:343 */
 6664         -
        pub fn test_config(
 6665         -
            mut self,
 6666         -
            input: ::std::option::Option<crate::model::TestConfig>,
 6667         -
        ) -> Self {
 6668         -
            /* ServerBuilderGenerator.kt:344 */
 6669         -
            self.test_config =
 6670         -
                /* ServerBuilderGenerator.kt:376 */input
 6671         -
            /* ServerBuilderGenerator.kt:344 */;
 6672         -
            self
 6673         -
            /* ServerBuilderGenerator.kt:343 */
 6674         -
        }
 6675         -
        /* ServerBuilderGenerator.kt:426 */
 6676         -
        #[allow(missing_docs)] // documentation missing in model
 6677         -
                               /* ServerBuilderGenerator.kt:428 */
 6678         -
        pub(crate) fn set_test_config(
 6679         -
            mut self,
 6680         -
            input: Option<impl ::std::convert::Into<crate::model::TestConfig>>,
 6681         -
        ) -> Self {
 6682         -
            /* ServerBuilderGenerator.kt:429 */
 6683         -
            self.test_config = input.map(|v| v.into());
 6684         -
            self
 6685         -
            /* ServerBuilderGenerator.kt:428 */
 6686         -
        }
 6687         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestBodyStructureInput`](crate::input::TestBodyStructureInput).
 6688         -
        /* ServerBuilderGenerator.kt:271 */
 6689         -
        pub fn build(self) -> crate::input::TestBodyStructureInput {
 6690         -
            self.build_enforcing_all_constraints()
 6691         -
        }
 6692         -
        /* ServerBuilderGenerator.kt:283 */
 6693         -
        fn build_enforcing_all_constraints(self) -> crate::input::TestBodyStructureInput {
 6694         -
            /* ServerBuilderGenerator.kt:542 */
 6695         -
            crate::input::TestBodyStructureInput {
 6696         -
                /* ServerBuilderGenerator.kt:546 */
 6697         -
                test_id: self.test_id,
 6698         -
                /* ServerBuilderGenerator.kt:546 */
 6699         -
                test_config: self.test_config,
 6700         -
                /* ServerBuilderGenerator.kt:542 */
 6701         -
            }
 6702         -
            /* ServerBuilderGenerator.kt:283 */
 6703         -
        }
 6704         -
        /* ServerBuilderGenerator.kt:215 */
 6705         -
    }
 6706         -
 6707         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6708         -
}
 6709         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedAcceptWithGenericStringInput`](crate::input::MalformedAcceptWithGenericStringInput).
 6710         -
pub mod malformed_accept_with_generic_string_input {
 6711         -
 6712         -
    /* ServerBuilderGenerator.kt:461 */
 6713         -
    impl ::std::convert::From<Builder> for crate::input::MalformedAcceptWithGenericStringInput {
 6714         -
        fn from(builder: Builder) -> Self {
 6715         -
            builder.build()
 6716         -
        }
 6717         -
    }
 6718         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedAcceptWithGenericStringInput`](crate::input::MalformedAcceptWithGenericStringInput).
 6719         -
    /* RustType.kt:534 */
 6720         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6721         -
    /* ServerBuilderGenerator.kt:211 */
 6722         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
 6723         -
    /* ServerBuilderGenerator.kt:215 */
 6724         -
    impl Builder {
 6725         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedAcceptWithGenericStringInput`](crate::input::MalformedAcceptWithGenericStringInput).
 6726         -
        /* ServerBuilderGenerator.kt:271 */
 6727         -
        pub fn build(self) -> crate::input::MalformedAcceptWithGenericStringInput {
 6728         -
            self.build_enforcing_all_constraints()
 6729         -
        }
 6730         -
        /* ServerBuilderGenerator.kt:283 */
 6731         -
        fn build_enforcing_all_constraints(
 6732         -
            self,
 6733         -
        ) -> crate::input::MalformedAcceptWithGenericStringInput {
 6734         -
            /* ServerBuilderGenerator.kt:542 */
 6735         -
            crate::input::MalformedAcceptWithGenericStringInput {
 6736         -
            /* ServerBuilderGenerator.kt:542 */}
 6737         -
            /* ServerBuilderGenerator.kt:283 */
 6738         -
        }
 6739         -
        /* ServerBuilderGenerator.kt:215 */
 6740         -
    }
 6741         -
 6742         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6743         -
}
 6744         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedAcceptWithPayloadInput`](crate::input::MalformedAcceptWithPayloadInput).
 6745         -
pub mod malformed_accept_with_payload_input {
 6746         -
 6747         -
    /* ServerBuilderGenerator.kt:461 */
 6748         -
    impl ::std::convert::From<Builder> for crate::input::MalformedAcceptWithPayloadInput {
 6749         -
        fn from(builder: Builder) -> Self {
 6750         -
            builder.build()
 6751         -
        }
 6752         -
    }
 6753         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedAcceptWithPayloadInput`](crate::input::MalformedAcceptWithPayloadInput).
 6754         -
    /* RustType.kt:534 */
 6755         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6756         -
    /* ServerBuilderGenerator.kt:211 */
 6757         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
 6758         -
    /* ServerBuilderGenerator.kt:215 */
 6759         -
    impl Builder {
 6760         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedAcceptWithPayloadInput`](crate::input::MalformedAcceptWithPayloadInput).
 6761         -
        /* ServerBuilderGenerator.kt:271 */
 6762         -
        pub fn build(self) -> crate::input::MalformedAcceptWithPayloadInput {
 6763         -
            self.build_enforcing_all_constraints()
 6764         -
        }
 6765         -
        /* ServerBuilderGenerator.kt:283 */
 6766         -
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedAcceptWithPayloadInput {
 6767         -
            /* ServerBuilderGenerator.kt:542 */
 6768         -
            crate::input::MalformedAcceptWithPayloadInput {
 6769         -
            /* ServerBuilderGenerator.kt:542 */}
 6770         -
            /* ServerBuilderGenerator.kt:283 */
 6771         -
        }
 6772         -
        /* ServerBuilderGenerator.kt:215 */
 6773         -
    }
 6774         -
 6775         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 6776         -
}
 6777         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedAcceptWithBodyInput`](crate::input::MalformedAcceptWithBodyInput).
 6778         -
pub mod malformed_accept_with_body_input {
 6779         -
 6780         -
    /* ServerBuilderGenerator.kt:461 */
 6781         -
    impl ::std::convert::From<Builder> for crate::input::MalformedAcceptWithBodyInput {
 6782         -
        fn from(builder: Builder) -> Self {
 6783         -
            builder.build()
 6784         -
        }
 6785         -
    }
 6786         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedAcceptWithBodyInput`](crate::input::MalformedAcceptWithBodyInput).
 6787         -
    /* RustType.kt:534 */
 6788         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6789         -
    /* ServerBuilderGenerator.kt:211 */
 6790         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
 6791         -
    /* ServerBuilderGenerator.kt:215 */
 6792         -
    impl Builder {
 6793         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedAcceptWithBodyInput`](crate::input::MalformedAcceptWithBodyInput).
 6794         -
        /* ServerBuilderGenerator.kt:271 */
 6795         -
        pub fn build(self) -> crate::input::MalformedAcceptWithBodyInput {
 6796         -
            self.build_enforcing_all_constraints()
 6797         -
        }
 6798         -
        /* ServerBuilderGenerator.kt:283 */
 6799         -
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedAcceptWithBodyInput {
 6800         -
            /* ServerBuilderGenerator.kt:542 */
 6801         -
            crate::input::MalformedAcceptWithBodyInput {
 6802         -
            /* ServerBuilderGenerator.kt:542 */}
 6803         -
            /* ServerBuilderGenerator.kt:283 */
 6804         -
        }
 6805         -
        /* ServerBuilderGenerator.kt:215 */
 6806         -
    }
 6807         -
 6808         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
        5491  +
    /* ServerCodegenVisitor.kt:356 */
 6809   5492   
}
 6810         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedContentTypeWithGenericStringInput`](crate::input::MalformedContentTypeWithGenericStringInput).
 6811         -
pub mod malformed_content_type_with_generic_string_input {
 6812         -
 6813         -
    /* ServerBuilderGenerator.kt:461 */
 6814         -
    impl ::std::convert::From<Builder> for crate::input::MalformedContentTypeWithGenericStringInput {
 6815         -
        fn from(builder: Builder) -> Self {
 6816         -
            builder.build()
 6817         -
        }
 6818         -
    }
 6819         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedContentTypeWithGenericStringInput`](crate::input::MalformedContentTypeWithGenericStringInput).
 6820         -
    /* RustType.kt:534 */
 6821         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6822         -
    /* ServerBuilderGenerator.kt:211 */
 6823         -
    pub struct Builder {
 6824         -
        /* ServerBuilderGenerator.kt:308 */
 6825         -
        pub(crate) payload: ::std::option::Option<::std::string::String>,
 6826         -
        /* ServerBuilderGenerator.kt:211 */
 6827         -
    }
 6828         -
    /* ServerBuilderGenerator.kt:215 */
 6829         -
    impl Builder {
 6830         -
        /* ServerBuilderGenerator.kt:331 */
 6831         -
        #[allow(missing_docs)] // documentation missing in model
 6832         -
                               /* ServerBuilderGenerator.kt:343 */
 6833         -
        pub fn payload(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 6834         -
            /* ServerBuilderGenerator.kt:344 */
 6835         -
            self.payload =
 6836         -
                /* ServerBuilderGenerator.kt:376 */input
 6837         -
            /* ServerBuilderGenerator.kt:344 */;
 6838         -
            self
 6839         -
            /* ServerBuilderGenerator.kt:343 */
 6840         -
        }
 6841         -
        /* ServerBuilderGenerator.kt:426 */
 6842         -
        #[allow(missing_docs)] // documentation missing in model
 6843         -
                               /* ServerBuilderGenerator.kt:428 */
 6844         -
        pub(crate) fn set_payload(
 6845         -
            mut self,
 6846         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 6847         -
        ) -> Self {
 6848         -
            /* ServerBuilderGenerator.kt:429 */
 6849         -
            self.payload = input.map(|v| v.into());
 6850         -
            self
 6851         -
            /* ServerBuilderGenerator.kt:428 */
 6852         -
        }
 6853         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedContentTypeWithGenericStringInput`](crate::input::MalformedContentTypeWithGenericStringInput).
 6854         -
        /* ServerBuilderGenerator.kt:271 */
 6855         -
        pub fn build(self) -> crate::input::MalformedContentTypeWithGenericStringInput {
 6856         -
            self.build_enforcing_all_constraints()
 6857         -
        }
 6858         -
        /* ServerBuilderGenerator.kt:283 */
 6859         -
        fn build_enforcing_all_constraints(
 6860         -
            self,
 6861         -
        ) -> crate::input::MalformedContentTypeWithGenericStringInput {
 6862         -
            /* ServerBuilderGenerator.kt:542 */
 6863         -
            crate::input::MalformedContentTypeWithGenericStringInput {
 6864         -
                /* ServerBuilderGenerator.kt:546 */
 6865         -
                payload: self.payload,
 6866         -
                /* ServerBuilderGenerator.kt:542 */
 6867         -
            }
 6868         -
            /* ServerBuilderGenerator.kt:283 */
 6869         -
        }
 6870         -
        /* ServerBuilderGenerator.kt:215 */
 6871         -
    }
 6872         -
 6873         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
        5493  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5494  +
impl crate::constrained::Constrained for crate::input::PutWithContentEncodingInput {
        5495  +
    type Unconstrained = crate::input::put_with_content_encoding_input::Builder;
 6874   5496   
}
 6875         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedContentTypeWithPayloadInput`](crate::input::MalformedContentTypeWithPayloadInput).
 6876         -
pub mod malformed_content_type_with_payload_input {
 6877   5497   
 6878         -
    /* ServerBuilderGenerator.kt:461 */
 6879         -
    impl ::std::convert::From<Builder> for crate::input::MalformedContentTypeWithPayloadInput {
 6880         -
        fn from(builder: Builder) -> Self {
 6881         -
            builder.build()
 6882         -
        }
 6883         -
    }
 6884         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedContentTypeWithPayloadInput`](crate::input::MalformedContentTypeWithPayloadInput).
 6885         -
    /* RustType.kt:534 */
 6886         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6887         -
    /* ServerBuilderGenerator.kt:211 */
 6888         -
    pub struct Builder {
 6889         -
        /* ServerBuilderGenerator.kt:308 */
 6890         -
        pub(crate) payload: ::std::option::Option<::aws_smithy_types::Blob>,
 6891         -
        /* ServerBuilderGenerator.kt:211 */
 6892         -
    }
 6893         -
    /* ServerBuilderGenerator.kt:215 */
 6894         -
    impl Builder {
 6895         -
        /* ServerBuilderGenerator.kt:331 */
 6896         -
        #[allow(missing_docs)] // documentation missing in model
 6897         -
                               /* ServerBuilderGenerator.kt:343 */
 6898         -
        pub fn payload(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
 6899         -
            /* ServerBuilderGenerator.kt:344 */
 6900         -
            self.payload =
 6901         -
                /* ServerBuilderGenerator.kt:376 */input
 6902         -
            /* ServerBuilderGenerator.kt:344 */;
 6903         -
            self
 6904         -
            /* ServerBuilderGenerator.kt:343 */
 6905         -
        }
 6906         -
        /* ServerBuilderGenerator.kt:426 */
        5498  +
/* StructureGenerator.kt:197 */
        5499  +
#[allow(missing_docs)] // documentation missing in model
        5500  +
/* RustType.kt:534 */
        5501  +
#[derive(
        5502  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5503  +
)]
        5504  +
pub /* StructureGenerator.kt:201 */ struct ContentTypeParametersInput {
        5505  +
    /* StructureGenerator.kt:231 */
 6907   5506   
    #[allow(missing_docs)] // documentation missing in model
 6908         -
                               /* ServerBuilderGenerator.kt:428 */
 6909         -
        pub(crate) fn set_payload(
 6910         -
            mut self,
 6911         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
 6912         -
        ) -> Self {
 6913         -
            /* ServerBuilderGenerator.kt:429 */
 6914         -
            self.payload = input.map(|v| v.into());
 6915         -
            self
 6916         -
            /* ServerBuilderGenerator.kt:428 */
 6917         -
        }
 6918         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedContentTypeWithPayloadInput`](crate::input::MalformedContentTypeWithPayloadInput).
 6919         -
        /* ServerBuilderGenerator.kt:271 */
 6920         -
        pub fn build(self) -> crate::input::MalformedContentTypeWithPayloadInput {
 6921         -
            self.build_enforcing_all_constraints()
 6922         -
        }
 6923         -
        /* ServerBuilderGenerator.kt:283 */
 6924         -
        fn build_enforcing_all_constraints(
 6925         -
            self,
 6926         -
        ) -> crate::input::MalformedContentTypeWithPayloadInput {
 6927         -
            /* ServerBuilderGenerator.kt:542 */
 6928         -
            crate::input::MalformedContentTypeWithPayloadInput {
 6929         -
                /* ServerBuilderGenerator.kt:546 */
 6930         -
                payload: self.payload,
 6931         -
                /* ServerBuilderGenerator.kt:542 */
 6932         -
            }
 6933         -
            /* ServerBuilderGenerator.kt:283 */
 6934         -
        }
 6935         -
        /* ServerBuilderGenerator.kt:215 */
 6936         -
    }
 6937         -
 6938         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
        5507  +
    pub value: ::std::option::Option<i32>,
        5508  +
    /* StructureGenerator.kt:201 */
 6939   5509   
}
 6940         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedContentTypeWithBodyInput`](crate::input::MalformedContentTypeWithBodyInput).
 6941         -
pub mod malformed_content_type_with_body_input {
 6942         -
 6943         -
    /* ServerBuilderGenerator.kt:461 */
 6944         -
    impl ::std::convert::From<Builder> for crate::input::MalformedContentTypeWithBodyInput {
 6945         -
        fn from(builder: Builder) -> Self {
 6946         -
            builder.build()
 6947         -
        }
 6948         -
    }
 6949         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedContentTypeWithBodyInput`](crate::input::MalformedContentTypeWithBodyInput).
 6950         -
    /* RustType.kt:534 */
 6951         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 6952         -
    /* ServerBuilderGenerator.kt:211 */
 6953         -
    pub struct Builder {
 6954         -
        /* ServerBuilderGenerator.kt:308 */
 6955         -
        pub(crate) hi: ::std::option::Option<::std::string::String>,
 6956         -
        /* ServerBuilderGenerator.kt:211 */
 6957         -
    }
 6958         -
    /* ServerBuilderGenerator.kt:215 */
 6959         -
    impl Builder {
 6960         -
        /* ServerBuilderGenerator.kt:331 */
 6961         -
        #[allow(missing_docs)] // documentation missing in model
 6962         -
                               /* ServerBuilderGenerator.kt:343 */
 6963         -
        pub fn hi(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 6964         -
            /* ServerBuilderGenerator.kt:344 */
 6965         -
            self.hi =
 6966         -
                /* ServerBuilderGenerator.kt:376 */input
 6967         -
            /* ServerBuilderGenerator.kt:344 */;
 6968         -
            self
 6969         -
            /* ServerBuilderGenerator.kt:343 */
 6970         -
        }
 6971         -
        /* ServerBuilderGenerator.kt:426 */
        5510  +
/* StructureGenerator.kt:135 */
        5511  +
impl ContentTypeParametersInput {
        5512  +
    /* StructureGenerator.kt:231 */
 6972   5513   
    #[allow(missing_docs)] // documentation missing in model
 6973         -
                               /* ServerBuilderGenerator.kt:428 */
 6974         -
        pub(crate) fn set_hi(
 6975         -
            mut self,
 6976         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 6977         -
        ) -> Self {
 6978         -
            /* ServerBuilderGenerator.kt:429 */
 6979         -
            self.hi = input.map(|v| v.into());
 6980         -
            self
 6981         -
            /* ServerBuilderGenerator.kt:428 */
 6982         -
        }
 6983         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedContentTypeWithBodyInput`](crate::input::MalformedContentTypeWithBodyInput).
 6984         -
        /* ServerBuilderGenerator.kt:271 */
 6985         -
        pub fn build(self) -> crate::input::MalformedContentTypeWithBodyInput {
 6986         -
            self.build_enforcing_all_constraints()
 6987         -
        }
 6988         -
        /* ServerBuilderGenerator.kt:283 */
 6989         -
        fn build_enforcing_all_constraints(
 6990         -
            self,
 6991         -
        ) -> crate::input::MalformedContentTypeWithBodyInput {
 6992         -
            /* ServerBuilderGenerator.kt:542 */
 6993         -
            crate::input::MalformedContentTypeWithBodyInput {
 6994         -
                /* ServerBuilderGenerator.kt:546 */
 6995         -
                hi: self.hi,
 6996         -
                /* ServerBuilderGenerator.kt:542 */
 6997         -
            }
 6998         -
            /* ServerBuilderGenerator.kt:283 */
 6999         -
        }
 7000         -
        /* ServerBuilderGenerator.kt:215 */
        5514  +
                           /* StructureGenerator.kt:166 */
        5515  +
    pub fn value(&self) -> ::std::option::Option<i32> {
        5516  +
        /* StructureGenerator.kt:168 */
        5517  +
        self.value
        5518  +
        /* StructureGenerator.kt:166 */
 7001   5519   
    }
 7002         -
 7003         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
        5520  +
    /* StructureGenerator.kt:135 */
 7004   5521   
}
 7005         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedContentTypeWithoutBodyEmptyInputInput`](crate::input::MalformedContentTypeWithoutBodyEmptyInputInput).
 7006         -
pub mod malformed_content_type_without_body_empty_input_input {
 7007         -
 7008         -
    /* ServerBuilderGenerator.kt:461 */
 7009         -
    impl ::std::convert::From<Builder>
 7010         -
        for crate::input::MalformedContentTypeWithoutBodyEmptyInputInput
 7011         -
    {
 7012         -
        fn from(builder: Builder) -> Self {
 7013         -
            builder.build()
 7014         -
        }
 7015         -
    }
 7016         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedContentTypeWithoutBodyEmptyInputInput`](crate::input::MalformedContentTypeWithoutBodyEmptyInputInput).
 7017         -
    /* RustType.kt:534 */
 7018         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 7019         -
    /* ServerBuilderGenerator.kt:211 */
 7020         -
    pub struct Builder {
 7021         -
        /* ServerBuilderGenerator.kt:308 */
 7022         -
        pub(crate) header: ::std::option::Option<::std::string::String>,
 7023         -
        /* ServerBuilderGenerator.kt:211 */
        5522  +
/* ServerCodegenVisitor.kt:356 */
        5523  +
impl ContentTypeParametersInput {
        5524  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`ContentTypeParametersInput`](crate::input::ContentTypeParametersInput).
        5525  +
    /* ServerBuilderGenerator.kt:295 */
        5526  +
    pub fn builder() -> crate::input::content_type_parameters_input::Builder {
        5527  +
        /* ServerBuilderGenerator.kt:296 */
        5528  +
        crate::input::content_type_parameters_input::Builder::default()
        5529  +
        /* ServerBuilderGenerator.kt:295 */
 7024   5530   
    }
 7025         -
    /* ServerBuilderGenerator.kt:215 */
 7026         -
    impl Builder {
 7027         -
        /* ServerBuilderGenerator.kt:331 */
        5531  +
    /* ServerCodegenVisitor.kt:356 */
        5532  +
}
        5533  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5534  +
impl crate::constrained::Constrained for crate::input::ContentTypeParametersInput {
        5535  +
    type Unconstrained = crate::input::content_type_parameters_input::Builder;
        5536  +
}
        5537  +
        5538  +
/* StructureGenerator.kt:197 */
        5539  +
#[allow(missing_docs)] // documentation missing in model
        5540  +
/* RustType.kt:534 */
        5541  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        5542  +
pub /* StructureGenerator.kt:201 */ struct OperationWithDefaultsInput {
        5543  +
    /* StructureGenerator.kt:231 */
 7028   5544   
    #[allow(missing_docs)] // documentation missing in model
 7029         -
                               /* ServerBuilderGenerator.kt:343 */
 7030         -
        pub fn header(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 7031         -
            /* ServerBuilderGenerator.kt:344 */
 7032         -
            self.header =
 7033         -
                /* ServerBuilderGenerator.kt:376 */input
 7034         -
            /* ServerBuilderGenerator.kt:344 */;
 7035         -
            self
 7036         -
            /* ServerBuilderGenerator.kt:343 */
 7037         -
        }
 7038         -
        /* ServerBuilderGenerator.kt:426 */
        5545  +
    pub defaults: ::std::option::Option<crate::model::Defaults>,
        5546  +
    /* StructureGenerator.kt:231 */
 7039   5547   
    #[allow(missing_docs)] // documentation missing in model
 7040         -
                               /* ServerBuilderGenerator.kt:428 */
 7041         -
        pub(crate) fn set_header(
 7042         -
            mut self,
 7043         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 7044         -
        ) -> Self {
 7045         -
            /* ServerBuilderGenerator.kt:429 */
 7046         -
            self.header = input.map(|v| v.into());
 7047         -
            self
 7048         -
            /* ServerBuilderGenerator.kt:428 */
        5548  +
    pub client_optional_defaults: ::std::option::Option<crate::model::ClientOptionalDefaults>,
        5549  +
    /* StructureGenerator.kt:231 */
        5550  +
    #[allow(missing_docs)] // documentation missing in model
        5551  +
    pub top_level_default: ::std::string::String,
        5552  +
    /* StructureGenerator.kt:231 */
        5553  +
    #[allow(missing_docs)] // documentation missing in model
        5554  +
    pub other_top_level_default: i32,
        5555  +
    /* StructureGenerator.kt:201 */
        5556  +
}
        5557  +
/* StructureGenerator.kt:135 */
        5558  +
impl OperationWithDefaultsInput {
        5559  +
    /* StructureGenerator.kt:231 */
        5560  +
    #[allow(missing_docs)] // documentation missing in model
        5561  +
                           /* StructureGenerator.kt:166 */
        5562  +
    pub fn defaults(&self) -> ::std::option::Option<&crate::model::Defaults> {
        5563  +
        /* StructureGenerator.kt:170 */
        5564  +
        self.defaults.as_ref()
        5565  +
        /* StructureGenerator.kt:166 */
 7049   5566   
    }
 7050         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedContentTypeWithoutBodyEmptyInputInput`](crate::input::MalformedContentTypeWithoutBodyEmptyInputInput).
 7051         -
        /* ServerBuilderGenerator.kt:271 */
 7052         -
        pub fn build(self) -> crate::input::MalformedContentTypeWithoutBodyEmptyInputInput {
 7053         -
            self.build_enforcing_all_constraints()
        5567  +
    /* StructureGenerator.kt:231 */
        5568  +
    #[allow(missing_docs)] // documentation missing in model
        5569  +
                           /* StructureGenerator.kt:166 */
        5570  +
    pub fn client_optional_defaults(
        5571  +
        &self,
        5572  +
    ) -> ::std::option::Option<&crate::model::ClientOptionalDefaults> {
        5573  +
        /* StructureGenerator.kt:170 */
        5574  +
        self.client_optional_defaults.as_ref()
        5575  +
        /* StructureGenerator.kt:166 */
 7054   5576   
    }
 7055         -
        /* ServerBuilderGenerator.kt:283 */
 7056         -
        fn build_enforcing_all_constraints(
 7057         -
            self,
 7058         -
        ) -> crate::input::MalformedContentTypeWithoutBodyEmptyInputInput {
 7059         -
            /* ServerBuilderGenerator.kt:542 */
 7060         -
            crate::input::MalformedContentTypeWithoutBodyEmptyInputInput {
 7061         -
                /* ServerBuilderGenerator.kt:546 */
 7062         -
                header: self.header,
 7063         -
                /* ServerBuilderGenerator.kt:542 */
        5577  +
    /* StructureGenerator.kt:231 */
        5578  +
    #[allow(missing_docs)] // documentation missing in model
        5579  +
                           /* StructureGenerator.kt:166 */
        5580  +
    pub fn top_level_default(&self) -> &str {
        5581  +
        /* StructureGenerator.kt:171 */
        5582  +
        use std::ops::Deref;
        5583  +
        self.top_level_default.deref()
        5584  +
        /* StructureGenerator.kt:166 */
 7064   5585   
    }
 7065         -
            /* ServerBuilderGenerator.kt:283 */
        5586  +
    /* StructureGenerator.kt:231 */
        5587  +
    #[allow(missing_docs)] // documentation missing in model
        5588  +
                           /* StructureGenerator.kt:166 */
        5589  +
    pub fn other_top_level_default(&self) -> i32 {
        5590  +
        /* StructureGenerator.kt:168 */
        5591  +
        self.other_top_level_default
        5592  +
        /* StructureGenerator.kt:166 */
 7066   5593   
    }
 7067         -
        /* ServerBuilderGenerator.kt:215 */
        5594  +
    /* StructureGenerator.kt:135 */
        5595  +
}
        5596  +
/* ServerCodegenVisitor.kt:356 */
        5597  +
impl OperationWithDefaultsInput {
        5598  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OperationWithDefaultsInput`](crate::input::OperationWithDefaultsInput).
        5599  +
    /* ServerBuilderGenerator.kt:295 */
        5600  +
    pub fn builder() -> crate::input::operation_with_defaults_input::Builder {
        5601  +
        /* ServerBuilderGenerator.kt:296 */
        5602  +
        crate::input::operation_with_defaults_input::Builder::default()
        5603  +
        /* ServerBuilderGenerator.kt:295 */
 7068   5604   
    }
 7069         -
 7070         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
        5605  +
    /* ServerCodegenVisitor.kt:356 */
        5606  +
}
        5607  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5608  +
impl crate::constrained::Constrained for crate::input::OperationWithDefaultsInput {
        5609  +
    type Unconstrained = crate::input::operation_with_defaults_input::Builder;
 7071   5610   
}
 7072         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedContentTypeWithoutBodyInput`](crate::input::MalformedContentTypeWithoutBodyInput).
 7073         -
pub mod malformed_content_type_without_body_input {
 7074   5611   
 7075         -
    /* ServerBuilderGenerator.kt:461 */
 7076         -
    impl ::std::convert::From<Builder> for crate::input::MalformedContentTypeWithoutBodyInput {
 7077         -
        fn from(builder: Builder) -> Self {
 7078         -
            builder.build()
 7079         -
        }
 7080         -
    }
 7081         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedContentTypeWithoutBodyInput`](crate::input::MalformedContentTypeWithoutBodyInput).
 7082         -
    /* RustType.kt:534 */
 7083         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 7084         -
    /* ServerBuilderGenerator.kt:211 */
 7085         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
 7086         -
    /* ServerBuilderGenerator.kt:215 */
 7087         -
    impl Builder {
 7088         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedContentTypeWithoutBodyInput`](crate::input::MalformedContentTypeWithoutBodyInput).
 7089         -
        /* ServerBuilderGenerator.kt:271 */
 7090         -
        pub fn build(self) -> crate::input::MalformedContentTypeWithoutBodyInput {
 7091         -
            self.build_enforcing_all_constraints()
 7092         -
        }
 7093         -
        /* ServerBuilderGenerator.kt:283 */
 7094         -
        fn build_enforcing_all_constraints(
 7095         -
            self,
 7096         -
        ) -> crate::input::MalformedContentTypeWithoutBodyInput {
 7097         -
            /* ServerBuilderGenerator.kt:542 */
 7098         -
            crate::input::MalformedContentTypeWithoutBodyInput {
 7099         -
            /* ServerBuilderGenerator.kt:542 */}
 7100         -
            /* ServerBuilderGenerator.kt:283 */
        5612  +
/* StructureGenerator.kt:197 */
        5613  +
#[allow(missing_docs)] // documentation missing in model
        5614  +
/* RustType.kt:534 */
        5615  +
#[derive(::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug)]
        5616  +
pub /* StructureGenerator.kt:201 */ struct OperationWithNestedStructureInput {
        5617  +
    /* StructureGenerator.kt:231 */
        5618  +
    #[allow(missing_docs)] // documentation missing in model
        5619  +
    pub top_level: crate::model::TopLevel,
        5620  +
    /* StructureGenerator.kt:201 */
        5621  +
}
        5622  +
/* StructureGenerator.kt:135 */
        5623  +
impl OperationWithNestedStructureInput {
        5624  +
    /* StructureGenerator.kt:231 */
        5625  +
    #[allow(missing_docs)] // documentation missing in model
        5626  +
                           /* StructureGenerator.kt:166 */
        5627  +
    pub fn top_level(&self) -> &crate::model::TopLevel {
        5628  +
        /* StructureGenerator.kt:172 */
        5629  +
        &self.top_level
        5630  +
        /* StructureGenerator.kt:166 */
 7101   5631   
    }
 7102         -
        /* ServerBuilderGenerator.kt:215 */
        5632  +
    /* StructureGenerator.kt:135 */
        5633  +
}
        5634  +
/* ServerCodegenVisitor.kt:356 */
        5635  +
impl OperationWithNestedStructureInput {
        5636  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OperationWithNestedStructureInput`](crate::input::OperationWithNestedStructureInput).
        5637  +
    /* ServerBuilderGenerator.kt:295 */
        5638  +
    pub fn builder() -> crate::input::operation_with_nested_structure_input::Builder {
        5639  +
        /* ServerBuilderGenerator.kt:296 */
        5640  +
        crate::input::operation_with_nested_structure_input::Builder::default()
        5641  +
        /* ServerBuilderGenerator.kt:295 */
 7103   5642   
    }
 7104         -
 7105         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
        5643  +
    /* ServerCodegenVisitor.kt:356 */
        5644  +
}
        5645  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5646  +
impl crate::constrained::Constrained for crate::input::OperationWithNestedStructureInput {
        5647  +
    type Unconstrained = crate::input::operation_with_nested_structure_input::Builder;
 7106   5648   
}
 7107         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampBodyHttpDateInput`](crate::input::MalformedTimestampBodyHttpDateInput).
 7108         -
pub mod malformed_timestamp_body_http_date_input {
 7109   5649   
 7110         -
    /* RustType.kt:534 */
 7111         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 7112         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 7113         -
    /* RustType.kt:534 */
 7114         -
    #[non_exhaustive]
 7115         -
    /* ServerBuilderConstraintViolations.kt:75 */
 7116         -
    #[allow(clippy::enum_variant_names)]
 7117         -
    pub enum ConstraintViolation {
 7118         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampBodyHttpDateInput`.
 7119         -
        /* ServerBuilderConstraintViolations.kt:144 */
 7120         -
        MissingTimestamp,
 7121         -
        /* ServerBuilderConstraintViolations.kt:75 */
 7122         -
    }
 7123         -
    /* ServerBuilderConstraintViolations.kt:116 */
 7124         -
    impl ::std::fmt::Display for ConstraintViolation {
 7125         -
        /* ServerBuilderConstraintViolations.kt:117 */
 7126         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 7127         -
            /* ServerBuilderConstraintViolations.kt:118 */
 7128         -
            match self {
 7129         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampBodyHttpDateInput`"),
 7130         -
            /* ServerBuilderConstraintViolations.kt:118 */}
 7131         -
            /* ServerBuilderConstraintViolations.kt:117 */
 7132         -
        }
 7133         -
        /* ServerBuilderConstraintViolations.kt:116 */
 7134         -
    }
 7135         -
    /* ServerBuilderConstraintViolations.kt:83 */
 7136         -
    impl ::std::error::Error for ConstraintViolation {}
 7137         -
    /* ServerBuilderConstraintViolations.kt:172 */
 7138         -
    impl ConstraintViolation {
 7139         -
        pub(crate) fn as_validation_exception_field(
 7140         -
            self,
 7141         -
            path: ::std::string::String,
 7142         -
        ) -> crate::model::ValidationExceptionField {
 7143         -
            match self {
 7144         -
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 7145         -
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 7146         -
                                                path: path + "/timestamp",
 7147         -
                                            },
 7148         -
        }
 7149         -
        }
 7150         -
    }
 7151         -
    /* ServerBuilderGenerator.kt:234 */
 7152         -
    impl ::std::convert::From<ConstraintViolation>
 7153         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 7154         -
    {
 7155         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
 7156         -
            let first_validation_exception_field =
 7157         -
                constraint_violation.as_validation_exception_field("".to_owned());
 7158         -
            let validation_exception = crate::error::ValidationException {
 7159         -
                message: format!(
 7160         -
                    "1 validation error detected. {}",
 7161         -
                    &first_validation_exception_field.message
 7162         -
                ),
 7163         -
                field_list: Some(vec![first_validation_exception_field]),
 7164         -
            };
 7165         -
            Self::ConstraintViolation(
 7166         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 7167         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 7168         -
                            )
 7169         -
        }
 7170         -
    }
 7171         -
    /* ServerBuilderGenerator.kt:244 */
 7172         -
    impl ::std::convert::From<Builder>
 7173         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampBodyHttpDateInput>
 7174         -
    {
 7175         -
        fn from(builder: Builder) -> Self {
 7176         -
            Self::Unconstrained(builder)
        5650  +
/* StructureGenerator.kt:197 */
        5651  +
#[allow(missing_docs)] // documentation missing in model
        5652  +
/* RustType.kt:534 */
        5653  +
#[derive(::std::fmt::Debug)]
        5654  +
pub /* StructureGenerator.kt:201 */ struct InputStreamInput {
        5655  +
    /* StructureGenerator.kt:231 */
        5656  +
    #[allow(missing_docs)] // documentation missing in model
        5657  +
    pub stream: crate::sigv4_event_stream::SigV4Receiver<
        5658  +
        crate::model::EventStream,
        5659  +
        crate::error::EventStreamError,
        5660  +
    >,
        5661  +
    /* StructureGenerator.kt:201 */
        5662  +
}
        5663  +
/* StructureGenerator.kt:135 */
        5664  +
impl InputStreamInput {
        5665  +
    /* StructureGenerator.kt:231 */
        5666  +
    #[allow(missing_docs)] // documentation missing in model
        5667  +
                           /* StructureGenerator.kt:166 */
        5668  +
    pub fn stream(
        5669  +
        &self,
        5670  +
    ) -> &crate::sigv4_event_stream::SigV4Receiver<
        5671  +
        crate::model::EventStream,
        5672  +
        crate::error::EventStreamError,
        5673  +
    > {
        5674  +
        /* StructureGenerator.kt:172 */
        5675  +
        &self.stream
        5676  +
        /* StructureGenerator.kt:166 */
 7177   5677   
    }
        5678  +
    /* StructureGenerator.kt:135 */
        5679  +
}
        5680  +
/* ServerCodegenVisitor.kt:356 */
        5681  +
impl InputStreamInput {
        5682  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`InputStreamInput`](crate::input::InputStreamInput).
        5683  +
    /* ServerBuilderGenerator.kt:295 */
        5684  +
    pub fn builder() -> crate::input::input_stream_input::Builder {
        5685  +
        /* ServerBuilderGenerator.kt:296 */
        5686  +
        crate::input::input_stream_input::Builder::default()
        5687  +
        /* ServerBuilderGenerator.kt:295 */
 7178   5688   
    }
 7179         -
    /* ServerBuilderGenerator.kt:446 */
 7180         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampBodyHttpDateInput {
 7181         -
        type Error = ConstraintViolation;
        5689  +
    /* ServerCodegenVisitor.kt:356 */
        5690  +
}
        5691  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5692  +
impl crate::constrained::Constrained for crate::input::InputStreamInput {
        5693  +
    type Unconstrained = crate::input::input_stream_input::Builder;
        5694  +
}
 7182   5695   
 7183         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 7184         -
            builder.build()
 7185         -
        }
 7186         -
    }
 7187         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampBodyHttpDateInput`](crate::input::MalformedTimestampBodyHttpDateInput).
 7188         -
    /* RustType.kt:534 */
 7189         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 7190         -
    /* ServerBuilderGenerator.kt:211 */
 7191         -
    pub struct Builder {
 7192         -
        /* ServerBuilderGenerator.kt:308 */
 7193         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
 7194         -
        /* ServerBuilderGenerator.kt:211 */
        5696  +
/* StructureGenerator.kt:197 */
        5697  +
#[allow(missing_docs)] // documentation missing in model
        5698  +
/* RustType.kt:534 */
        5699  +
#[derive(
        5700  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5701  +
)]
        5702  +
pub /* StructureGenerator.kt:201 */ struct OutputStreamInput {/* StructureGenerator.kt:201 */}
        5703  +
/* ServerCodegenVisitor.kt:356 */
        5704  +
impl OutputStreamInput {
        5705  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OutputStreamInput`](crate::input::OutputStreamInput).
        5706  +
    /* ServerBuilderGenerator.kt:295 */
        5707  +
    pub fn builder() -> crate::input::output_stream_input::Builder {
        5708  +
        /* ServerBuilderGenerator.kt:296 */
        5709  +
        crate::input::output_stream_input::Builder::default()
        5710  +
        /* ServerBuilderGenerator.kt:295 */
 7195   5711   
    }
 7196         -
    /* ServerBuilderGenerator.kt:215 */
 7197         -
    impl Builder {
 7198         -
        /* ServerBuilderGenerator.kt:331 */
        5712  +
    /* ServerCodegenVisitor.kt:356 */
        5713  +
}
        5714  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5715  +
impl crate::constrained::Constrained for crate::input::OutputStreamInput {
        5716  +
    type Unconstrained = crate::input::output_stream_input::Builder;
        5717  +
}
        5718  +
        5719  +
/* StructureGenerator.kt:197 */
        5720  +
#[allow(missing_docs)] // documentation missing in model
        5721  +
/* RustType.kt:534 */
        5722  +
#[derive(::std::fmt::Debug)]
        5723  +
pub /* StructureGenerator.kt:201 */ struct DuplexStreamInput {
        5724  +
    /* StructureGenerator.kt:231 */
 7199   5725   
    #[allow(missing_docs)] // documentation missing in model
 7200         -
                               /* ServerBuilderGenerator.kt:343 */
 7201         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
 7202         -
            /* ServerBuilderGenerator.kt:344 */
 7203         -
            self.timestamp =
 7204         -
                /* ServerBuilderGenerator.kt:345 */Some(
 7205         -
                    /* ServerBuilderGenerator.kt:376 */input
 7206         -
                /* ServerBuilderGenerator.kt:345 */)
 7207         -
            /* ServerBuilderGenerator.kt:344 */;
 7208         -
            self
 7209         -
            /* ServerBuilderGenerator.kt:343 */
 7210         -
        }
 7211         -
        /* ServerBuilderGenerator.kt:426 */
        5726  +
    pub stream: crate::sigv4_event_stream::SigV4Receiver<
        5727  +
        crate::model::EventStream,
        5728  +
        crate::error::EventStreamError,
        5729  +
    >,
        5730  +
    /* StructureGenerator.kt:201 */
        5731  +
}
        5732  +
/* StructureGenerator.kt:135 */
        5733  +
impl DuplexStreamInput {
        5734  +
    /* StructureGenerator.kt:231 */
 7212   5735   
    #[allow(missing_docs)] // documentation missing in model
 7213         -
                               /* ServerBuilderGenerator.kt:428 */
 7214         -
        pub(crate) fn set_timestamp(
 7215         -
            mut self,
 7216         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
 7217         -
        ) -> Self {
 7218         -
            /* ServerBuilderGenerator.kt:429 */
 7219         -
            self.timestamp = Some(input.into());
 7220         -
            self
 7221         -
            /* ServerBuilderGenerator.kt:428 */
 7222         -
        }
 7223         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampBodyHttpDateInput`](crate::input::MalformedTimestampBodyHttpDateInput).
 7224         -
        /// /* ServerBuilderGenerator.kt:260 */
 7225         -
        /// The builder fails to construct a [`MalformedTimestampBodyHttpDateInput`](crate::input::MalformedTimestampBodyHttpDateInput) if a [`ConstraintViolation`] occurs.
 7226         -
        ///
 7227         -
        /* ServerBuilderGenerator.kt:271 */
 7228         -
        pub fn build(
 7229         -
            self,
 7230         -
        ) -> Result<crate::input::MalformedTimestampBodyHttpDateInput, ConstraintViolation>
 7231         -
        {
 7232         -
            self.build_enforcing_all_constraints()
 7233         -
        }
 7234         -
        /* ServerBuilderGenerator.kt:283 */
 7235         -
        fn build_enforcing_all_constraints(
 7236         -
            self,
 7237         -
        ) -> Result<crate::input::MalformedTimestampBodyHttpDateInput, ConstraintViolation>
 7238         -
        {
 7239         -
            /* ServerBuilderGenerator.kt:287 */
 7240         -
            Ok(
 7241         -
                /* ServerBuilderGenerator.kt:542 */
 7242         -
                crate::input::MalformedTimestampBodyHttpDateInput {
 7243         -
                    /* ServerBuilderGenerator.kt:546 */
 7244         -
                    timestamp: self
 7245         -
                        .timestamp
 7246         -
                        /* ServerBuilderGenerator.kt:569 */
 7247         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
 7248         -
                    /* ServerBuilderGenerator.kt:542 */
 7249         -
                }, /* ServerBuilderGenerator.kt:287 */
 7250         -
            )
 7251         -
            /* ServerBuilderGenerator.kt:283 */
        5736  +
                           /* StructureGenerator.kt:166 */
        5737  +
    pub fn stream(
        5738  +
        &self,
        5739  +
    ) -> &crate::sigv4_event_stream::SigV4Receiver<
        5740  +
        crate::model::EventStream,
        5741  +
        crate::error::EventStreamError,
        5742  +
    > {
        5743  +
        /* StructureGenerator.kt:172 */
        5744  +
        &self.stream
        5745  +
        /* StructureGenerator.kt:166 */
 7252   5746   
    }
 7253         -
        /* ServerBuilderGenerator.kt:215 */
        5747  +
    /* StructureGenerator.kt:135 */
        5748  +
}
        5749  +
/* ServerCodegenVisitor.kt:356 */
        5750  +
impl DuplexStreamInput {
        5751  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`DuplexStreamInput`](crate::input::DuplexStreamInput).
        5752  +
    /* ServerBuilderGenerator.kt:295 */
        5753  +
    pub fn builder() -> crate::input::duplex_stream_input::Builder {
        5754  +
        /* ServerBuilderGenerator.kt:296 */
        5755  +
        crate::input::duplex_stream_input::Builder::default()
        5756  +
        /* ServerBuilderGenerator.kt:295 */
 7254   5757   
    }
 7255         -
 7256         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
        5758  +
    /* ServerCodegenVisitor.kt:356 */
        5759  +
}
        5760  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5761  +
impl crate::constrained::Constrained for crate::input::DuplexStreamInput {
        5762  +
    type Unconstrained = crate::input::duplex_stream_input::Builder;
 7257   5763   
}
 7258         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampBodyDateTimeInput`](crate::input::MalformedTimestampBodyDateTimeInput).
 7259         -
pub mod malformed_timestamp_body_date_time_input {
 7260   5764   
 7261         -
    /* RustType.kt:534 */
 7262         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 7263         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 7264         -
    /* RustType.kt:534 */
 7265         -
    #[non_exhaustive]
 7266         -
    /* ServerBuilderConstraintViolations.kt:75 */
 7267         -
    #[allow(clippy::enum_variant_names)]
 7268         -
    pub enum ConstraintViolation {
 7269         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampBodyDateTimeInput`.
 7270         -
        /* ServerBuilderConstraintViolations.kt:144 */
 7271         -
        MissingTimestamp,
 7272         -
        /* ServerBuilderConstraintViolations.kt:75 */
 7273         -
    }
 7274         -
    /* ServerBuilderConstraintViolations.kt:116 */
 7275         -
    impl ::std::fmt::Display for ConstraintViolation {
 7276         -
        /* ServerBuilderConstraintViolations.kt:117 */
 7277         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 7278         -
            /* ServerBuilderConstraintViolations.kt:118 */
 7279         -
            match self {
 7280         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampBodyDateTimeInput`"),
 7281         -
            /* ServerBuilderConstraintViolations.kt:118 */}
 7282         -
            /* ServerBuilderConstraintViolations.kt:117 */
        5765  +
/* StructureGenerator.kt:197 */
        5766  +
#[allow(missing_docs)] // documentation missing in model
        5767  +
/* RustType.kt:534 */
        5768  +
#[derive(::std::fmt::Debug)]
        5769  +
pub /* StructureGenerator.kt:201 */ struct InputStreamWithInitialRequestInput {
        5770  +
    /* StructureGenerator.kt:231 */
        5771  +
    #[allow(missing_docs)] // documentation missing in model
        5772  +
    pub initial_request_member: ::std::string::String,
        5773  +
    /* StructureGenerator.kt:231 */
        5774  +
    #[allow(missing_docs)] // documentation missing in model
        5775  +
    pub stream: crate::sigv4_event_stream::SigV4Receiver<
        5776  +
        crate::model::EventStream,
        5777  +
        crate::error::EventStreamError,
        5778  +
    >,
        5779  +
    /* StructureGenerator.kt:201 */
        5780  +
}
        5781  +
/* StructureGenerator.kt:135 */
        5782  +
impl InputStreamWithInitialRequestInput {
        5783  +
    /* StructureGenerator.kt:231 */
        5784  +
    #[allow(missing_docs)] // documentation missing in model
        5785  +
                           /* StructureGenerator.kt:166 */
        5786  +
    pub fn initial_request_member(&self) -> &str {
        5787  +
        /* StructureGenerator.kt:171 */
        5788  +
        use std::ops::Deref;
        5789  +
        self.initial_request_member.deref()
        5790  +
        /* StructureGenerator.kt:166 */
 7283   5791   
    }
 7284         -
        /* ServerBuilderConstraintViolations.kt:116 */
        5792  +
    /* StructureGenerator.kt:231 */
        5793  +
    #[allow(missing_docs)] // documentation missing in model
        5794  +
                           /* StructureGenerator.kt:166 */
        5795  +
    pub fn stream(
        5796  +
        &self,
        5797  +
    ) -> &crate::sigv4_event_stream::SigV4Receiver<
        5798  +
        crate::model::EventStream,
        5799  +
        crate::error::EventStreamError,
        5800  +
    > {
        5801  +
        /* StructureGenerator.kt:172 */
        5802  +
        &self.stream
        5803  +
        /* StructureGenerator.kt:166 */
 7285   5804   
    }
 7286         -
    /* ServerBuilderConstraintViolations.kt:83 */
 7287         -
    impl ::std::error::Error for ConstraintViolation {}
 7288         -
    /* ServerBuilderConstraintViolations.kt:172 */
 7289         -
    impl ConstraintViolation {
 7290         -
        pub(crate) fn as_validation_exception_field(
 7291         -
            self,
 7292         -
            path: ::std::string::String,
 7293         -
        ) -> crate::model::ValidationExceptionField {
 7294         -
            match self {
 7295         -
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 7296         -
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 7297         -
                                                path: path + "/timestamp",
 7298         -
                                            },
        5805  +
    /* StructureGenerator.kt:135 */
        5806  +
}
        5807  +
/* ServerCodegenVisitor.kt:356 */
        5808  +
impl InputStreamWithInitialRequestInput {
        5809  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`InputStreamWithInitialRequestInput`](crate::input::InputStreamWithInitialRequestInput).
        5810  +
    /* ServerBuilderGenerator.kt:295 */
        5811  +
    pub fn builder() -> crate::input::input_stream_with_initial_request_input::Builder {
        5812  +
        /* ServerBuilderGenerator.kt:296 */
        5813  +
        crate::input::input_stream_with_initial_request_input::Builder::default()
        5814  +
        /* ServerBuilderGenerator.kt:295 */
 7299   5815   
    }
        5816  +
    /* ServerCodegenVisitor.kt:356 */
        5817  +
}
        5818  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5819  +
impl crate::constrained::Constrained for crate::input::InputStreamWithInitialRequestInput {
        5820  +
    type Unconstrained = crate::input::input_stream_with_initial_request_input::Builder;
        5821  +
}
        5822  +
        5823  +
/* StructureGenerator.kt:197 */
        5824  +
#[allow(missing_docs)] // documentation missing in model
        5825  +
/* RustType.kt:534 */
        5826  +
#[derive(
        5827  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
        5828  +
)]
        5829  +
pub /* StructureGenerator.kt:201 */ struct OutputStreamWithInitialResponseInput {/* StructureGenerator.kt:201 */}
        5830  +
/* ServerCodegenVisitor.kt:356 */
        5831  +
impl OutputStreamWithInitialResponseInput {
        5832  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`OutputStreamWithInitialResponseInput`](crate::input::OutputStreamWithInitialResponseInput).
        5833  +
    /* ServerBuilderGenerator.kt:295 */
        5834  +
    pub fn builder() -> crate::input::output_stream_with_initial_response_input::Builder {
        5835  +
        /* ServerBuilderGenerator.kt:296 */
        5836  +
        crate::input::output_stream_with_initial_response_input::Builder::default()
        5837  +
        /* ServerBuilderGenerator.kt:295 */
 7300   5838   
    }
        5839  +
    /* ServerCodegenVisitor.kt:356 */
        5840  +
}
        5841  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5842  +
impl crate::constrained::Constrained for crate::input::OutputStreamWithInitialResponseInput {
        5843  +
    type Unconstrained = crate::input::output_stream_with_initial_response_input::Builder;
        5844  +
}
        5845  +
        5846  +
/* StructureGenerator.kt:197 */
        5847  +
#[allow(missing_docs)] // documentation missing in model
        5848  +
/* RustType.kt:534 */
        5849  +
#[derive(::std::fmt::Debug)]
        5850  +
pub /* StructureGenerator.kt:201 */ struct DuplexStreamWithInitialMessagesInput {
        5851  +
    /* StructureGenerator.kt:231 */
        5852  +
    #[allow(missing_docs)] // documentation missing in model
        5853  +
    pub initial_request_member: ::std::string::String,
        5854  +
    /* StructureGenerator.kt:231 */
        5855  +
    #[allow(missing_docs)] // documentation missing in model
        5856  +
    pub stream: crate::sigv4_event_stream::SigV4Receiver<
        5857  +
        crate::model::EventStream,
        5858  +
        crate::error::EventStreamError,
        5859  +
    >,
        5860  +
    /* StructureGenerator.kt:201 */
        5861  +
}
        5862  +
/* StructureGenerator.kt:135 */
        5863  +
impl DuplexStreamWithInitialMessagesInput {
        5864  +
    /* StructureGenerator.kt:231 */
        5865  +
    #[allow(missing_docs)] // documentation missing in model
        5866  +
                           /* StructureGenerator.kt:166 */
        5867  +
    pub fn initial_request_member(&self) -> &str {
        5868  +
        /* StructureGenerator.kt:171 */
        5869  +
        use std::ops::Deref;
        5870  +
        self.initial_request_member.deref()
        5871  +
        /* StructureGenerator.kt:166 */
 7301   5872   
    }
 7302         -
    /* ServerBuilderGenerator.kt:234 */
 7303         -
    impl ::std::convert::From<ConstraintViolation>
 7304         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 7305         -
    {
 7306         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
 7307         -
            let first_validation_exception_field =
 7308         -
                constraint_violation.as_validation_exception_field("".to_owned());
 7309         -
            let validation_exception = crate::error::ValidationException {
 7310         -
                message: format!(
 7311         -
                    "1 validation error detected. {}",
 7312         -
                    &first_validation_exception_field.message
 7313         -
                ),
 7314         -
                field_list: Some(vec![first_validation_exception_field]),
 7315         -
            };
 7316         -
            Self::ConstraintViolation(
 7317         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 7318         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 7319         -
                            )
        5873  +
    /* StructureGenerator.kt:231 */
        5874  +
    #[allow(missing_docs)] // documentation missing in model
        5875  +
                           /* StructureGenerator.kt:166 */
        5876  +
    pub fn stream(
        5877  +
        &self,
        5878  +
    ) -> &crate::sigv4_event_stream::SigV4Receiver<
        5879  +
        crate::model::EventStream,
        5880  +
        crate::error::EventStreamError,
        5881  +
    > {
        5882  +
        /* StructureGenerator.kt:172 */
        5883  +
        &self.stream
        5884  +
        /* StructureGenerator.kt:166 */
 7320   5885   
    }
        5886  +
    /* StructureGenerator.kt:135 */
        5887  +
}
        5888  +
/* ServerCodegenVisitor.kt:356 */
        5889  +
impl DuplexStreamWithInitialMessagesInput {
        5890  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`DuplexStreamWithInitialMessagesInput`](crate::input::DuplexStreamWithInitialMessagesInput).
        5891  +
    /* ServerBuilderGenerator.kt:295 */
        5892  +
    pub fn builder() -> crate::input::duplex_stream_with_initial_messages_input::Builder {
        5893  +
        /* ServerBuilderGenerator.kt:296 */
        5894  +
        crate::input::duplex_stream_with_initial_messages_input::Builder::default()
        5895  +
        /* ServerBuilderGenerator.kt:295 */
 7321   5896   
    }
 7322         -
    /* ServerBuilderGenerator.kt:244 */
 7323         -
    impl ::std::convert::From<Builder>
 7324         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampBodyDateTimeInput>
 7325         -
    {
 7326         -
        fn from(builder: Builder) -> Self {
 7327         -
            Self::Unconstrained(builder)
        5897  +
    /* ServerCodegenVisitor.kt:356 */
        5898  +
}
        5899  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5900  +
impl crate::constrained::Constrained for crate::input::DuplexStreamWithInitialMessagesInput {
        5901  +
    type Unconstrained = crate::input::duplex_stream_with_initial_messages_input::Builder;
        5902  +
}
        5903  +
        5904  +
/* StructureGenerator.kt:197 */
        5905  +
#[allow(missing_docs)] // documentation missing in model
        5906  +
/* RustType.kt:534 */
        5907  +
#[derive(::std::fmt::Debug)]
        5908  +
pub /* StructureGenerator.kt:201 */ struct DuplexStreamWithDistinctStreamsInput {
        5909  +
    /* StructureGenerator.kt:231 */
        5910  +
    #[allow(missing_docs)] // documentation missing in model
        5911  +
    pub stream: crate::sigv4_event_stream::SigV4Receiver<
        5912  +
        crate::model::EventStream,
        5913  +
        crate::error::EventStreamError,
        5914  +
    >,
        5915  +
    /* StructureGenerator.kt:201 */
        5916  +
}
        5917  +
/* StructureGenerator.kt:135 */
        5918  +
impl DuplexStreamWithDistinctStreamsInput {
        5919  +
    /* StructureGenerator.kt:231 */
        5920  +
    #[allow(missing_docs)] // documentation missing in model
        5921  +
                           /* StructureGenerator.kt:166 */
        5922  +
    pub fn stream(
        5923  +
        &self,
        5924  +
    ) -> &crate::sigv4_event_stream::SigV4Receiver<
        5925  +
        crate::model::EventStream,
        5926  +
        crate::error::EventStreamError,
        5927  +
    > {
        5928  +
        /* StructureGenerator.kt:172 */
        5929  +
        &self.stream
        5930  +
        /* StructureGenerator.kt:166 */
 7328   5931   
    }
        5932  +
    /* StructureGenerator.kt:135 */
        5933  +
}
        5934  +
/* ServerCodegenVisitor.kt:356 */
        5935  +
impl DuplexStreamWithDistinctStreamsInput {
        5936  +
    /// /* ServerBuilderGenerator.kt:294 */Creates a new builder-style object to manufacture [`DuplexStreamWithDistinctStreamsInput`](crate::input::DuplexStreamWithDistinctStreamsInput).
        5937  +
    /* ServerBuilderGenerator.kt:295 */
        5938  +
    pub fn builder() -> crate::input::duplex_stream_with_distinct_streams_input::Builder {
        5939  +
        /* ServerBuilderGenerator.kt:296 */
        5940  +
        crate::input::duplex_stream_with_distinct_streams_input::Builder::default()
        5941  +
        /* ServerBuilderGenerator.kt:295 */
 7329   5942   
    }
 7330         -
    /* ServerBuilderGenerator.kt:446 */
 7331         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampBodyDateTimeInput {
 7332         -
        type Error = ConstraintViolation;
        5943  +
    /* ServerCodegenVisitor.kt:356 */
        5944  +
}
        5945  +
/* ServerStructureConstrainedTraitImpl.kt:21 */
        5946  +
impl crate::constrained::Constrained for crate::input::DuplexStreamWithDistinctStreamsInput {
        5947  +
    type Unconstrained = crate::input::duplex_stream_with_distinct_streams_input::Builder;
        5948  +
}
        5949  +
/// /* ServerBuilderGenerator.kt:171 */See [`NoInputAndNoOutputInput`](crate::input::NoInputAndNoOutputInput).
        5950  +
pub mod no_input_and_no_output_input {
 7333   5951   
 7334         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
        5952  +
    /* ServerBuilderGenerator.kt:461 */
        5953  +
    impl ::std::convert::From<Builder> for crate::input::NoInputAndNoOutputInput {
        5954  +
        fn from(builder: Builder) -> Self {
 7335   5955   
            builder.build()
 7336   5956   
        }
 7337   5957   
    }
 7338         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampBodyDateTimeInput`](crate::input::MalformedTimestampBodyDateTimeInput).
        5958  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`NoInputAndNoOutputInput`](crate::input::NoInputAndNoOutputInput).
 7339   5959   
    /* RustType.kt:534 */
 7340   5960   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 7341   5961   
    /* ServerBuilderGenerator.kt:211 */
 7342         -
    pub struct Builder {
 7343         -
        /* ServerBuilderGenerator.kt:308 */
 7344         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
 7345         -
        /* ServerBuilderGenerator.kt:211 */
 7346         -
    }
        5962  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
 7347   5963   
    /* ServerBuilderGenerator.kt:215 */
 7348   5964   
    impl Builder {
 7349         -
        /* ServerBuilderGenerator.kt:331 */
 7350         -
        #[allow(missing_docs)] // documentation missing in model
 7351         -
                               /* ServerBuilderGenerator.kt:343 */
 7352         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
 7353         -
            /* ServerBuilderGenerator.kt:344 */
 7354         -
            self.timestamp =
 7355         -
                /* ServerBuilderGenerator.kt:345 */Some(
 7356         -
                    /* ServerBuilderGenerator.kt:376 */input
 7357         -
                /* ServerBuilderGenerator.kt:345 */)
 7358         -
            /* ServerBuilderGenerator.kt:344 */;
 7359         -
            self
 7360         -
            /* ServerBuilderGenerator.kt:343 */
 7361         -
        }
 7362         -
        /* ServerBuilderGenerator.kt:426 */
 7363         -
        #[allow(missing_docs)] // documentation missing in model
 7364         -
                               /* ServerBuilderGenerator.kt:428 */
 7365         -
        pub(crate) fn set_timestamp(
 7366         -
            mut self,
 7367         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
 7368         -
        ) -> Self {
 7369         -
            /* ServerBuilderGenerator.kt:429 */
 7370         -
            self.timestamp = Some(input.into());
 7371         -
            self
 7372         -
            /* ServerBuilderGenerator.kt:428 */
 7373         -
        }
 7374         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampBodyDateTimeInput`](crate::input::MalformedTimestampBodyDateTimeInput).
 7375         -
        /// /* ServerBuilderGenerator.kt:260 */
 7376         -
        /// The builder fails to construct a [`MalformedTimestampBodyDateTimeInput`](crate::input::MalformedTimestampBodyDateTimeInput) if a [`ConstraintViolation`] occurs.
 7377         -
        ///
        5965  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`NoInputAndNoOutputInput`](crate::input::NoInputAndNoOutputInput).
 7378   5966   
        /* ServerBuilderGenerator.kt:271 */
 7379         -
        pub fn build(
 7380         -
            self,
 7381         -
        ) -> Result<crate::input::MalformedTimestampBodyDateTimeInput, ConstraintViolation>
 7382         -
        {
        5967  +
        pub fn build(self) -> crate::input::NoInputAndNoOutputInput {
 7383   5968   
            self.build_enforcing_all_constraints()
 7384   5969   
        }
 7385   5970   
        /* ServerBuilderGenerator.kt:283 */
 7386         -
        fn build_enforcing_all_constraints(
 7387         -
            self,
 7388         -
        ) -> Result<crate::input::MalformedTimestampBodyDateTimeInput, ConstraintViolation>
 7389         -
        {
 7390         -
            /* ServerBuilderGenerator.kt:287 */
 7391         -
            Ok(
 7392         -
                /* ServerBuilderGenerator.kt:542 */
 7393         -
                crate::input::MalformedTimestampBodyDateTimeInput {
 7394         -
                    /* ServerBuilderGenerator.kt:546 */
 7395         -
                    timestamp: self
 7396         -
                        .timestamp
 7397         -
                        /* ServerBuilderGenerator.kt:569 */
 7398         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
        5971  +
        fn build_enforcing_all_constraints(self) -> crate::input::NoInputAndNoOutputInput {
 7399   5972   
            /* ServerBuilderGenerator.kt:542 */
 7400         -
                }, /* ServerBuilderGenerator.kt:287 */
 7401         -
            )
        5973  +
            crate::input::NoInputAndNoOutputInput {
        5974  +
            /* ServerBuilderGenerator.kt:542 */}
 7402   5975   
            /* ServerBuilderGenerator.kt:283 */
 7403   5976   
        }
 7404   5977   
        /* ServerBuilderGenerator.kt:215 */
 7405   5978   
    }
 7406   5979   
 7407   5980   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 7408   5981   
}
 7409         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampBodyDefaultInput`](crate::input::MalformedTimestampBodyDefaultInput).
 7410         -
pub mod malformed_timestamp_body_default_input {
        5982  +
/// /* ServerBuilderGenerator.kt:171 */See [`NoInputAndOutputInput`](crate::input::NoInputAndOutputInput).
        5983  +
pub mod no_input_and_output_input {
 7411   5984   
 7412         -
    /* RustType.kt:534 */
 7413         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 7414         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 7415         -
    /* RustType.kt:534 */
 7416         -
    #[non_exhaustive]
 7417         -
    /* ServerBuilderConstraintViolations.kt:75 */
 7418         -
    #[allow(clippy::enum_variant_names)]
 7419         -
    pub enum ConstraintViolation {
 7420         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampBodyDefaultInput`.
 7421         -
        /* ServerBuilderConstraintViolations.kt:144 */
 7422         -
        MissingTimestamp,
 7423         -
        /* ServerBuilderConstraintViolations.kt:75 */
 7424         -
    }
 7425         -
    /* ServerBuilderConstraintViolations.kt:116 */
 7426         -
    impl ::std::fmt::Display for ConstraintViolation {
 7427         -
        /* ServerBuilderConstraintViolations.kt:117 */
 7428         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 7429         -
            /* ServerBuilderConstraintViolations.kt:118 */
 7430         -
            match self {
 7431         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampBodyDefaultInput`"),
 7432         -
            /* ServerBuilderConstraintViolations.kt:118 */}
 7433         -
            /* ServerBuilderConstraintViolations.kt:117 */
 7434         -
        }
 7435         -
        /* ServerBuilderConstraintViolations.kt:116 */
 7436         -
    }
 7437         -
    /* ServerBuilderConstraintViolations.kt:83 */
 7438         -
    impl ::std::error::Error for ConstraintViolation {}
 7439         -
    /* ServerBuilderConstraintViolations.kt:172 */
 7440         -
    impl ConstraintViolation {
 7441         -
        pub(crate) fn as_validation_exception_field(
 7442         -
            self,
 7443         -
            path: ::std::string::String,
 7444         -
        ) -> crate::model::ValidationExceptionField {
 7445         -
            match self {
 7446         -
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 7447         -
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 7448         -
                                                path: path + "/timestamp",
 7449         -
                                            },
 7450         -
        }
 7451         -
        }
        5985  +
    /* ServerBuilderGenerator.kt:461 */
        5986  +
    impl ::std::convert::From<Builder> for crate::input::NoInputAndOutputInput {
        5987  +
        fn from(builder: Builder) -> Self {
        5988  +
            builder.build()
 7452   5989   
        }
 7453         -
    /* ServerBuilderGenerator.kt:234 */
 7454         -
    impl ::std::convert::From<ConstraintViolation>
 7455         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 7456         -
    {
 7457         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
 7458         -
            let first_validation_exception_field =
 7459         -
                constraint_violation.as_validation_exception_field("".to_owned());
 7460         -
            let validation_exception = crate::error::ValidationException {
 7461         -
                message: format!(
 7462         -
                    "1 validation error detected. {}",
 7463         -
                    &first_validation_exception_field.message
 7464         -
                ),
 7465         -
                field_list: Some(vec![first_validation_exception_field]),
 7466         -
            };
 7467         -
            Self::ConstraintViolation(
 7468         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 7469         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 7470         -
                            )
 7471   5990   
    }
        5991  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`NoInputAndOutputInput`](crate::input::NoInputAndOutputInput).
        5992  +
    /* RustType.kt:534 */
        5993  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        5994  +
    /* ServerBuilderGenerator.kt:211 */
        5995  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
        5996  +
    /* ServerBuilderGenerator.kt:215 */
        5997  +
    impl Builder {
        5998  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`NoInputAndOutputInput`](crate::input::NoInputAndOutputInput).
        5999  +
        /* ServerBuilderGenerator.kt:271 */
        6000  +
        pub fn build(self) -> crate::input::NoInputAndOutputInput {
        6001  +
            self.build_enforcing_all_constraints()
 7472   6002   
        }
 7473         -
    /* ServerBuilderGenerator.kt:244 */
 7474         -
    impl ::std::convert::From<Builder>
 7475         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampBodyDefaultInput>
 7476         -
    {
 7477         -
        fn from(builder: Builder) -> Self {
 7478         -
            Self::Unconstrained(builder)
        6003  +
        /* ServerBuilderGenerator.kt:283 */
        6004  +
        fn build_enforcing_all_constraints(self) -> crate::input::NoInputAndOutputInput {
        6005  +
            /* ServerBuilderGenerator.kt:542 */
        6006  +
            crate::input::NoInputAndOutputInput {
        6007  +
            /* ServerBuilderGenerator.kt:542 */}
        6008  +
            /* ServerBuilderGenerator.kt:283 */
 7479   6009   
        }
        6010  +
        /* ServerBuilderGenerator.kt:215 */
 7480   6011   
    }
 7481         -
    /* ServerBuilderGenerator.kt:446 */
 7482         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampBodyDefaultInput {
 7483         -
        type Error = ConstraintViolation;
 7484   6012   
 7485         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
        6013  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
        6014  +
}
        6015  +
/// /* ServerBuilderGenerator.kt:171 */See [`EmptyInputAndEmptyOutputInput`](crate::input::EmptyInputAndEmptyOutputInput).
        6016  +
pub mod empty_input_and_empty_output_input {
        6017  +
        6018  +
    /* ServerBuilderGenerator.kt:461 */
        6019  +
    impl ::std::convert::From<Builder> for crate::input::EmptyInputAndEmptyOutputInput {
        6020  +
        fn from(builder: Builder) -> Self {
 7486   6021   
            builder.build()
 7487   6022   
        }
 7488   6023   
    }
 7489         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampBodyDefaultInput`](crate::input::MalformedTimestampBodyDefaultInput).
        6024  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`EmptyInputAndEmptyOutputInput`](crate::input::EmptyInputAndEmptyOutputInput).
 7490   6025   
    /* RustType.kt:534 */
 7491   6026   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 7492   6027   
    /* ServerBuilderGenerator.kt:211 */
 7493         -
    pub struct Builder {
 7494         -
        /* ServerBuilderGenerator.kt:308 */
 7495         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
 7496         -
        /* ServerBuilderGenerator.kt:211 */
 7497         -
    }
        6028  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
 7498   6029   
    /* ServerBuilderGenerator.kt:215 */
 7499   6030   
    impl Builder {
 7500         -
        /* ServerBuilderGenerator.kt:331 */
 7501         -
        #[allow(missing_docs)] // documentation missing in model
 7502         -
                               /* ServerBuilderGenerator.kt:343 */
 7503         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
 7504         -
            /* ServerBuilderGenerator.kt:344 */
 7505         -
            self.timestamp =
 7506         -
                /* ServerBuilderGenerator.kt:345 */Some(
 7507         -
                    /* ServerBuilderGenerator.kt:376 */input
 7508         -
                /* ServerBuilderGenerator.kt:345 */)
 7509         -
            /* ServerBuilderGenerator.kt:344 */;
 7510         -
            self
 7511         -
            /* ServerBuilderGenerator.kt:343 */
        6031  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`EmptyInputAndEmptyOutputInput`](crate::input::EmptyInputAndEmptyOutputInput).
        6032  +
        /* ServerBuilderGenerator.kt:271 */
        6033  +
        pub fn build(self) -> crate::input::EmptyInputAndEmptyOutputInput {
        6034  +
            self.build_enforcing_all_constraints()
        6035  +
        }
        6036  +
        /* ServerBuilderGenerator.kt:283 */
        6037  +
        fn build_enforcing_all_constraints(self) -> crate::input::EmptyInputAndEmptyOutputInput {
        6038  +
            /* ServerBuilderGenerator.kt:542 */
        6039  +
            crate::input::EmptyInputAndEmptyOutputInput {
        6040  +
            /* ServerBuilderGenerator.kt:542 */}
        6041  +
            /* ServerBuilderGenerator.kt:283 */
        6042  +
        }
        6043  +
        /* ServerBuilderGenerator.kt:215 */
        6044  +
    }
        6045  +
        6046  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
        6047  +
}
        6048  +
/// /* ServerBuilderGenerator.kt:171 */See [`UnitInputAndOutputInput`](crate::input::UnitInputAndOutputInput).
        6049  +
pub mod unit_input_and_output_input {
        6050  +
        6051  +
    /* ServerBuilderGenerator.kt:461 */
        6052  +
    impl ::std::convert::From<Builder> for crate::input::UnitInputAndOutputInput {
        6053  +
        fn from(builder: Builder) -> Self {
        6054  +
            builder.build()
 7512   6055   
        }
 7513         -
        /* ServerBuilderGenerator.kt:426 */
 7514         -
        #[allow(missing_docs)] // documentation missing in model
 7515         -
                               /* ServerBuilderGenerator.kt:428 */
 7516         -
        pub(crate) fn set_timestamp(
 7517         -
            mut self,
 7518         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
 7519         -
        ) -> Self {
 7520         -
            /* ServerBuilderGenerator.kt:429 */
 7521         -
            self.timestamp = Some(input.into());
 7522         -
            self
 7523         -
            /* ServerBuilderGenerator.kt:428 */
 7524   6056   
    }
 7525         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampBodyDefaultInput`](crate::input::MalformedTimestampBodyDefaultInput).
 7526         -
        /// /* ServerBuilderGenerator.kt:260 */
 7527         -
        /// The builder fails to construct a [`MalformedTimestampBodyDefaultInput`](crate::input::MalformedTimestampBodyDefaultInput) if a [`ConstraintViolation`] occurs.
 7528         -
        ///
        6057  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`UnitInputAndOutputInput`](crate::input::UnitInputAndOutputInput).
        6058  +
    /* RustType.kt:534 */
        6059  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        6060  +
    /* ServerBuilderGenerator.kt:211 */
        6061  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
        6062  +
    /* ServerBuilderGenerator.kt:215 */
        6063  +
    impl Builder {
        6064  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`UnitInputAndOutputInput`](crate::input::UnitInputAndOutputInput).
 7529   6065   
        /* ServerBuilderGenerator.kt:271 */
 7530         -
        pub fn build(
 7531         -
            self,
 7532         -
        ) -> Result<crate::input::MalformedTimestampBodyDefaultInput, ConstraintViolation> {
        6066  +
        pub fn build(self) -> crate::input::UnitInputAndOutputInput {
 7533   6067   
            self.build_enforcing_all_constraints()
 7534   6068   
        }
 7535   6069   
        /* ServerBuilderGenerator.kt:283 */
 7536         -
        fn build_enforcing_all_constraints(
 7537         -
            self,
 7538         -
        ) -> Result<crate::input::MalformedTimestampBodyDefaultInput, ConstraintViolation> {
 7539         -
            /* ServerBuilderGenerator.kt:287 */
 7540         -
            Ok(
 7541         -
                /* ServerBuilderGenerator.kt:542 */
 7542         -
                crate::input::MalformedTimestampBodyDefaultInput {
 7543         -
                    /* ServerBuilderGenerator.kt:546 */
 7544         -
                    timestamp: self
 7545         -
                        .timestamp
 7546         -
                        /* ServerBuilderGenerator.kt:569 */
 7547         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
        6070  +
        fn build_enforcing_all_constraints(self) -> crate::input::UnitInputAndOutputInput {
 7548   6071   
            /* ServerBuilderGenerator.kt:542 */
 7549         -
                }, /* ServerBuilderGenerator.kt:287 */
 7550         -
            )
        6072  +
            crate::input::UnitInputAndOutputInput {
        6073  +
            /* ServerBuilderGenerator.kt:542 */}
 7551   6074   
            /* ServerBuilderGenerator.kt:283 */
 7552   6075   
        }
 7553   6076   
        /* ServerBuilderGenerator.kt:215 */
 7554   6077   
    }
 7555   6078   
 7556   6079   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 7557   6080   
}
 7558         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampHeaderEpochInput`](crate::input::MalformedTimestampHeaderEpochInput).
 7559         -
pub mod malformed_timestamp_header_epoch_input {
        6081  +
/// /* ServerBuilderGenerator.kt:171 */See [`InputAndOutputWithHeadersInput`](crate::input::InputAndOutputWithHeadersInput).
        6082  +
pub mod input_and_output_with_headers_input {
 7560   6083   
 7561   6084   
    /* RustType.kt:534 */
 7562   6085   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 7563   6086   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 7564   6087   
    /* RustType.kt:534 */
 7565   6088   
    #[non_exhaustive]
 7566   6089   
    /* ServerBuilderConstraintViolations.kt:75 */
 7567   6090   
    #[allow(clippy::enum_variant_names)]
 7568   6091   
    pub enum ConstraintViolation {
 7569         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampHeaderEpochInput`.
 7570         -
        /* ServerBuilderConstraintViolations.kt:144 */
 7571         -
        MissingTimestamp,
        6092  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `header_string_set` when building `InputAndOutputWithHeadersInput`.
        6093  +
        /* RustType.kt:534 */
        6094  +
        #[doc(hidden)]
        6095  +
        /* ServerBuilderConstraintViolations.kt:165 */
        6096  +
        HeaderStringSet(crate::model::string_set::ConstraintViolation),
        6097  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `header_enum` when building `InputAndOutputWithHeadersInput`.
        6098  +
        /* RustType.kt:534 */
        6099  +
        #[doc(hidden)]
        6100  +
        /* ServerBuilderConstraintViolations.kt:165 */
        6101  +
        HeaderEnum(crate::model::foo_enum::ConstraintViolation),
        6102  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `header_enum_list` when building `InputAndOutputWithHeadersInput`.
        6103  +
        /* RustType.kt:534 */
        6104  +
        #[doc(hidden)]
        6105  +
        /* ServerBuilderConstraintViolations.kt:165 */
        6106  +
        HeaderEnumList(crate::model::foo_enum_list::ConstraintViolation),
 7572   6107   
        /* ServerBuilderConstraintViolations.kt:75 */
 7573   6108   
    }
 7574   6109   
    /* ServerBuilderConstraintViolations.kt:116 */
 7575   6110   
    impl ::std::fmt::Display for ConstraintViolation {
 7576   6111   
        /* ServerBuilderConstraintViolations.kt:117 */
 7577   6112   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 7578   6113   
            /* ServerBuilderConstraintViolations.kt:118 */
 7579   6114   
            match self {
 7580         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampHeaderEpochInput`"),
        6115  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::HeaderStringSet(_) => write!(f, "constraint violation occurred building member `header_string_set` when building `InputAndOutputWithHeadersInput`"),
        6116  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::HeaderEnum(_) => write!(f, "constraint violation occurred building member `header_enum` when building `InputAndOutputWithHeadersInput`"),
        6117  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::HeaderEnumList(_) => write!(f, "constraint violation occurred building member `header_enum_list` when building `InputAndOutputWithHeadersInput`"),
 7581   6118   
            /* ServerBuilderConstraintViolations.kt:118 */}
 7582   6119   
            /* ServerBuilderConstraintViolations.kt:117 */
 7583   6120   
        }
 7584   6121   
        /* ServerBuilderConstraintViolations.kt:116 */
 7585   6122   
    }
 7586   6123   
    /* ServerBuilderConstraintViolations.kt:83 */
 7587   6124   
    impl ::std::error::Error for ConstraintViolation {}
 7588   6125   
    /* ServerBuilderConstraintViolations.kt:172 */
 7589   6126   
    impl ConstraintViolation {
 7590   6127   
        pub(crate) fn as_validation_exception_field(
 7591   6128   
            self,
 7592   6129   
            path: ::std::string::String,
 7593   6130   
        ) -> crate::model::ValidationExceptionField {
 7594   6131   
            match self {
 7595         -
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 7596         -
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 7597         -
                                                path: path + "/timestamp",
 7598         -
                                            },
        6132  +
                ConstraintViolation::HeaderStringSet(inner) => {
        6133  +
                    inner.as_validation_exception_field(path + "/headerStringSet")
        6134  +
                }
        6135  +
                ConstraintViolation::HeaderEnum(inner) => {
        6136  +
                    inner.as_validation_exception_field(path + "/headerEnum")
        6137  +
                }
        6138  +
                ConstraintViolation::HeaderEnumList(inner) => {
        6139  +
                    inner.as_validation_exception_field(path + "/headerEnumList")
        6140  +
                }
 7599   6141   
            }
 7600   6142   
        }
 7601   6143   
    }
 7602   6144   
    /* ServerBuilderGenerator.kt:234 */
 7603   6145   
    impl ::std::convert::From<ConstraintViolation>
 7604   6146   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 7605   6147   
    {
 7606   6148   
        fn from(constraint_violation: ConstraintViolation) -> Self {
 7607   6149   
            let first_validation_exception_field =
 7608   6150   
                constraint_violation.as_validation_exception_field("".to_owned());
 7609   6151   
            let validation_exception = crate::error::ValidationException {
 7610   6152   
                message: format!(
 7611   6153   
                    "1 validation error detected. {}",
 7612   6154   
                    &first_validation_exception_field.message
 7613   6155   
                ),
 7614   6156   
                field_list: Some(vec![first_validation_exception_field]),
 7615   6157   
            };
 7616   6158   
            Self::ConstraintViolation(
 7617   6159   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 7618   6160   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 7619   6161   
                            )
 7620   6162   
        }
 7621   6163   
    }
 7622   6164   
    /* ServerBuilderGenerator.kt:244 */
 7623   6165   
    impl ::std::convert::From<Builder>
 7624         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampHeaderEpochInput>
        6166  +
        for crate::constrained::MaybeConstrained<crate::input::InputAndOutputWithHeadersInput>
 7625   6167   
    {
 7626   6168   
        fn from(builder: Builder) -> Self {
 7627   6169   
            Self::Unconstrained(builder)
 7628   6170   
        }
 7629   6171   
    }
 7630   6172   
    /* ServerBuilderGenerator.kt:446 */
 7631         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampHeaderEpochInput {
        6173  +
    impl ::std::convert::TryFrom<Builder> for crate::input::InputAndOutputWithHeadersInput {
 7632   6174   
        type Error = ConstraintViolation;
 7633   6175   
 7634   6176   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 7635   6177   
            builder.build()
 7636   6178   
        }
 7637   6179   
    }
 7638         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampHeaderEpochInput`](crate::input::MalformedTimestampHeaderEpochInput).
        6180  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`InputAndOutputWithHeadersInput`](crate::input::InputAndOutputWithHeadersInput).
 7639   6181   
    /* RustType.kt:534 */
 7640   6182   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 7641   6183   
    /* ServerBuilderGenerator.kt:211 */
 7642   6184   
    pub struct Builder {
 7643   6185   
        /* ServerBuilderGenerator.kt:308 */
 7644         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
        6186  +
        pub(crate) header_string: ::std::option::Option<::std::string::String>,
        6187  +
        /* ServerBuilderGenerator.kt:308 */
        6188  +
        pub(crate) header_byte: ::std::option::Option<i8>,
        6189  +
        /* ServerBuilderGenerator.kt:308 */
        6190  +
        pub(crate) header_short: ::std::option::Option<i16>,
        6191  +
        /* ServerBuilderGenerator.kt:308 */
        6192  +
        pub(crate) header_integer: ::std::option::Option<i32>,
        6193  +
        /* ServerBuilderGenerator.kt:308 */
        6194  +
        pub(crate) header_long: ::std::option::Option<i64>,
        6195  +
        /* ServerBuilderGenerator.kt:308 */
        6196  +
        pub(crate) header_float: ::std::option::Option<f32>,
        6197  +
        /* ServerBuilderGenerator.kt:308 */
        6198  +
        pub(crate) header_double: ::std::option::Option<f64>,
        6199  +
        /* ServerBuilderGenerator.kt:308 */
        6200  +
        pub(crate) header_true_bool: ::std::option::Option<bool>,
        6201  +
        /* ServerBuilderGenerator.kt:308 */
        6202  +
        pub(crate) header_false_bool: ::std::option::Option<bool>,
        6203  +
        /* ServerBuilderGenerator.kt:308 */
        6204  +
        pub(crate) header_string_list:
        6205  +
            ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        6206  +
        /* ServerBuilderGenerator.kt:308 */
        6207  +
        pub(crate) header_string_set:
        6208  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
        6209  +
        /* ServerBuilderGenerator.kt:308 */
        6210  +
        pub(crate) header_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
        6211  +
        /* ServerBuilderGenerator.kt:308 */
        6212  +
        pub(crate) header_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
        6213  +
        /* ServerBuilderGenerator.kt:308 */
        6214  +
        pub(crate) header_timestamp_list:
        6215  +
            ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
        6216  +
        /* ServerBuilderGenerator.kt:308 */
        6217  +
        pub(crate) header_enum:
        6218  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
        6219  +
        /* ServerBuilderGenerator.kt:308 */
        6220  +
        pub(crate) header_enum_list: ::std::option::Option<
        6221  +
            crate::constrained::MaybeConstrained<
        6222  +
                crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
        6223  +
            >,
        6224  +
        >,
        6225  +
        /* ServerBuilderGenerator.kt:308 */
        6226  +
        pub(crate) header_integer_enum: ::std::option::Option<i32>,
        6227  +
        /* ServerBuilderGenerator.kt:308 */
        6228  +
        pub(crate) header_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
 7645   6229   
        /* ServerBuilderGenerator.kt:211 */
 7646   6230   
    }
 7647         -
    /* ServerBuilderGenerator.kt:215 */
 7648         -
    impl Builder {
        6231  +
    /* ServerBuilderGenerator.kt:215 */
        6232  +
    impl Builder {
        6233  +
        /* ServerBuilderGenerator.kt:331 */
        6234  +
        #[allow(missing_docs)] // documentation missing in model
        6235  +
                               /* ServerBuilderGenerator.kt:343 */
        6236  +
        pub fn header_string(
        6237  +
            mut self,
        6238  +
            input: ::std::option::Option<::std::string::String>,
        6239  +
        ) -> Self {
        6240  +
            /* ServerBuilderGenerator.kt:344 */
        6241  +
            self.header_string =
        6242  +
                /* ServerBuilderGenerator.kt:376 */input
        6243  +
            /* ServerBuilderGenerator.kt:344 */;
        6244  +
            self
        6245  +
            /* ServerBuilderGenerator.kt:343 */
        6246  +
        }
        6247  +
        /* ServerBuilderGenerator.kt:426 */
        6248  +
        #[allow(missing_docs)] // documentation missing in model
        6249  +
                               /* ServerBuilderGenerator.kt:428 */
        6250  +
        pub(crate) fn set_header_string(
        6251  +
            mut self,
        6252  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
        6253  +
        ) -> Self {
        6254  +
            /* ServerBuilderGenerator.kt:429 */
        6255  +
            self.header_string = input.map(|v| v.into());
        6256  +
            self
        6257  +
            /* ServerBuilderGenerator.kt:428 */
        6258  +
        }
        6259  +
        /* ServerBuilderGenerator.kt:331 */
        6260  +
        #[allow(missing_docs)] // documentation missing in model
        6261  +
                               /* ServerBuilderGenerator.kt:343 */
        6262  +
        pub fn header_byte(mut self, input: ::std::option::Option<i8>) -> Self {
        6263  +
            /* ServerBuilderGenerator.kt:344 */
        6264  +
            self.header_byte =
        6265  +
                /* ServerBuilderGenerator.kt:376 */input
        6266  +
            /* ServerBuilderGenerator.kt:344 */;
        6267  +
            self
        6268  +
            /* ServerBuilderGenerator.kt:343 */
        6269  +
        }
        6270  +
        /* ServerBuilderGenerator.kt:426 */
        6271  +
        #[allow(missing_docs)] // documentation missing in model
        6272  +
                               /* ServerBuilderGenerator.kt:428 */
        6273  +
        pub(crate) fn set_header_byte(
        6274  +
            mut self,
        6275  +
            input: Option<impl ::std::convert::Into<i8>>,
        6276  +
        ) -> Self {
        6277  +
            /* ServerBuilderGenerator.kt:429 */
        6278  +
            self.header_byte = input.map(|v| v.into());
        6279  +
            self
        6280  +
            /* ServerBuilderGenerator.kt:428 */
        6281  +
        }
        6282  +
        /* ServerBuilderGenerator.kt:331 */
        6283  +
        #[allow(missing_docs)] // documentation missing in model
        6284  +
                               /* ServerBuilderGenerator.kt:343 */
        6285  +
        pub fn header_short(mut self, input: ::std::option::Option<i16>) -> Self {
        6286  +
            /* ServerBuilderGenerator.kt:344 */
        6287  +
            self.header_short =
        6288  +
                /* ServerBuilderGenerator.kt:376 */input
        6289  +
            /* ServerBuilderGenerator.kt:344 */;
        6290  +
            self
        6291  +
            /* ServerBuilderGenerator.kt:343 */
        6292  +
        }
        6293  +
        /* ServerBuilderGenerator.kt:426 */
        6294  +
        #[allow(missing_docs)] // documentation missing in model
        6295  +
                               /* ServerBuilderGenerator.kt:428 */
        6296  +
        pub(crate) fn set_header_short(
        6297  +
            mut self,
        6298  +
            input: Option<impl ::std::convert::Into<i16>>,
        6299  +
        ) -> Self {
        6300  +
            /* ServerBuilderGenerator.kt:429 */
        6301  +
            self.header_short = input.map(|v| v.into());
        6302  +
            self
        6303  +
            /* ServerBuilderGenerator.kt:428 */
        6304  +
        }
        6305  +
        /* ServerBuilderGenerator.kt:331 */
        6306  +
        #[allow(missing_docs)] // documentation missing in model
        6307  +
                               /* ServerBuilderGenerator.kt:343 */
        6308  +
        pub fn header_integer(mut self, input: ::std::option::Option<i32>) -> Self {
        6309  +
            /* ServerBuilderGenerator.kt:344 */
        6310  +
            self.header_integer =
        6311  +
                /* ServerBuilderGenerator.kt:376 */input
        6312  +
            /* ServerBuilderGenerator.kt:344 */;
        6313  +
            self
        6314  +
            /* ServerBuilderGenerator.kt:343 */
        6315  +
        }
        6316  +
        /* ServerBuilderGenerator.kt:426 */
        6317  +
        #[allow(missing_docs)] // documentation missing in model
        6318  +
                               /* ServerBuilderGenerator.kt:428 */
        6319  +
        pub(crate) fn set_header_integer(
        6320  +
            mut self,
        6321  +
            input: Option<impl ::std::convert::Into<i32>>,
        6322  +
        ) -> Self {
        6323  +
            /* ServerBuilderGenerator.kt:429 */
        6324  +
            self.header_integer = input.map(|v| v.into());
        6325  +
            self
        6326  +
            /* ServerBuilderGenerator.kt:428 */
        6327  +
        }
        6328  +
        /* ServerBuilderGenerator.kt:331 */
        6329  +
        #[allow(missing_docs)] // documentation missing in model
        6330  +
                               /* ServerBuilderGenerator.kt:343 */
        6331  +
        pub fn header_long(mut self, input: ::std::option::Option<i64>) -> Self {
        6332  +
            /* ServerBuilderGenerator.kt:344 */
        6333  +
            self.header_long =
        6334  +
                /* ServerBuilderGenerator.kt:376 */input
        6335  +
            /* ServerBuilderGenerator.kt:344 */;
        6336  +
            self
        6337  +
            /* ServerBuilderGenerator.kt:343 */
        6338  +
        }
        6339  +
        /* ServerBuilderGenerator.kt:426 */
        6340  +
        #[allow(missing_docs)] // documentation missing in model
        6341  +
                               /* ServerBuilderGenerator.kt:428 */
        6342  +
        pub(crate) fn set_header_long(
        6343  +
            mut self,
        6344  +
            input: Option<impl ::std::convert::Into<i64>>,
        6345  +
        ) -> Self {
        6346  +
            /* ServerBuilderGenerator.kt:429 */
        6347  +
            self.header_long = input.map(|v| v.into());
        6348  +
            self
        6349  +
            /* ServerBuilderGenerator.kt:428 */
        6350  +
        }
 7649   6351   
        /* ServerBuilderGenerator.kt:331 */
 7650   6352   
        #[allow(missing_docs)] // documentation missing in model
 7651   6353   
                               /* ServerBuilderGenerator.kt:343 */
 7652         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        6354  +
        pub fn header_float(mut self, input: ::std::option::Option<f32>) -> Self {
 7653   6355   
            /* ServerBuilderGenerator.kt:344 */
 7654         -
            self.timestamp =
 7655         -
                /* ServerBuilderGenerator.kt:345 */Some(
        6356  +
            self.header_float =
 7656   6357   
                /* ServerBuilderGenerator.kt:376 */input
 7657         -
                /* ServerBuilderGenerator.kt:345 */)
 7658   6358   
            /* ServerBuilderGenerator.kt:344 */;
 7659   6359   
            self
 7660   6360   
            /* ServerBuilderGenerator.kt:343 */
 7661   6361   
        }
 7662   6362   
        /* ServerBuilderGenerator.kt:426 */
 7663   6363   
        #[allow(missing_docs)] // documentation missing in model
 7664   6364   
                               /* ServerBuilderGenerator.kt:428 */
 7665         -
        pub(crate) fn set_timestamp(
        6365  +
        pub(crate) fn set_header_float(
 7666   6366   
            mut self,
 7667         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        6367  +
            input: Option<impl ::std::convert::Into<f32>>,
 7668   6368   
        ) -> Self {
 7669   6369   
            /* ServerBuilderGenerator.kt:429 */
 7670         -
            self.timestamp = Some(input.into());
        6370  +
            self.header_float = input.map(|v| v.into());
 7671   6371   
            self
 7672   6372   
            /* ServerBuilderGenerator.kt:428 */
 7673   6373   
        }
 7674         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampHeaderEpochInput`](crate::input::MalformedTimestampHeaderEpochInput).
 7675         -
        /// /* ServerBuilderGenerator.kt:260 */
 7676         -
        /// The builder fails to construct a [`MalformedTimestampHeaderEpochInput`](crate::input::MalformedTimestampHeaderEpochInput) if a [`ConstraintViolation`] occurs.
 7677         -
        ///
 7678         -
        /* ServerBuilderGenerator.kt:271 */
 7679         -
        pub fn build(
 7680         -
            self,
 7681         -
        ) -> Result<crate::input::MalformedTimestampHeaderEpochInput, ConstraintViolation> {
 7682         -
            self.build_enforcing_all_constraints()
 7683         -
        }
 7684         -
        /* ServerBuilderGenerator.kt:283 */
 7685         -
        fn build_enforcing_all_constraints(
 7686         -
            self,
 7687         -
        ) -> Result<crate::input::MalformedTimestampHeaderEpochInput, ConstraintViolation> {
 7688         -
            /* ServerBuilderGenerator.kt:287 */
 7689         -
            Ok(
 7690         -
                /* ServerBuilderGenerator.kt:542 */
 7691         -
                crate::input::MalformedTimestampHeaderEpochInput {
 7692         -
                    /* ServerBuilderGenerator.kt:546 */
 7693         -
                    timestamp: self
 7694         -
                        .timestamp
 7695         -
                        /* ServerBuilderGenerator.kt:569 */
 7696         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
 7697         -
                    /* ServerBuilderGenerator.kt:542 */
 7698         -
                }, /* ServerBuilderGenerator.kt:287 */
 7699         -
            )
 7700         -
            /* ServerBuilderGenerator.kt:283 */
 7701         -
        }
 7702         -
        /* ServerBuilderGenerator.kt:215 */
 7703         -
    }
 7704         -
 7705         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 7706         -
}
 7707         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampHeaderDateTimeInput`](crate::input::MalformedTimestampHeaderDateTimeInput).
 7708         -
pub mod malformed_timestamp_header_date_time_input {
 7709         -
 7710         -
    /* RustType.kt:534 */
 7711         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 7712         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 7713         -
    /* RustType.kt:534 */
 7714         -
    #[non_exhaustive]
 7715         -
    /* ServerBuilderConstraintViolations.kt:75 */
 7716         -
    #[allow(clippy::enum_variant_names)]
 7717         -
    pub enum ConstraintViolation {
 7718         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampHeaderDateTimeInput`.
 7719         -
        /* ServerBuilderConstraintViolations.kt:144 */
 7720         -
        MissingTimestamp,
 7721         -
        /* ServerBuilderConstraintViolations.kt:75 */
 7722         -
    }
 7723         -
    /* ServerBuilderConstraintViolations.kt:116 */
 7724         -
    impl ::std::fmt::Display for ConstraintViolation {
 7725         -
        /* ServerBuilderConstraintViolations.kt:117 */
 7726         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 7727         -
            /* ServerBuilderConstraintViolations.kt:118 */
 7728         -
            match self {
 7729         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampHeaderDateTimeInput`"),
 7730         -
            /* ServerBuilderConstraintViolations.kt:118 */}
 7731         -
            /* ServerBuilderConstraintViolations.kt:117 */
 7732         -
        }
 7733         -
        /* ServerBuilderConstraintViolations.kt:116 */
        6374  +
        /* ServerBuilderGenerator.kt:331 */
        6375  +
        #[allow(missing_docs)] // documentation missing in model
        6376  +
                               /* ServerBuilderGenerator.kt:343 */
        6377  +
        pub fn header_double(mut self, input: ::std::option::Option<f64>) -> Self {
        6378  +
            /* ServerBuilderGenerator.kt:344 */
        6379  +
            self.header_double =
        6380  +
                /* ServerBuilderGenerator.kt:376 */input
        6381  +
            /* ServerBuilderGenerator.kt:344 */;
        6382  +
            self
        6383  +
            /* ServerBuilderGenerator.kt:343 */
 7734   6384   
        }
 7735         -
    /* ServerBuilderConstraintViolations.kt:83 */
 7736         -
    impl ::std::error::Error for ConstraintViolation {}
 7737         -
    /* ServerBuilderConstraintViolations.kt:172 */
 7738         -
    impl ConstraintViolation {
 7739         -
        pub(crate) fn as_validation_exception_field(
 7740         -
            self,
 7741         -
            path: ::std::string::String,
 7742         -
        ) -> crate::model::ValidationExceptionField {
 7743         -
            match self {
 7744         -
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 7745         -
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 7746         -
                                                path: path + "/timestamp",
 7747         -
                                            },
        6385  +
        /* ServerBuilderGenerator.kt:426 */
        6386  +
        #[allow(missing_docs)] // documentation missing in model
        6387  +
                               /* ServerBuilderGenerator.kt:428 */
        6388  +
        pub(crate) fn set_header_double(
        6389  +
            mut self,
        6390  +
            input: Option<impl ::std::convert::Into<f64>>,
        6391  +
        ) -> Self {
        6392  +
            /* ServerBuilderGenerator.kt:429 */
        6393  +
            self.header_double = input.map(|v| v.into());
        6394  +
            self
        6395  +
            /* ServerBuilderGenerator.kt:428 */
 7748   6396   
        }
        6397  +
        /* ServerBuilderGenerator.kt:331 */
        6398  +
        #[allow(missing_docs)] // documentation missing in model
        6399  +
                               /* ServerBuilderGenerator.kt:343 */
        6400  +
        pub fn header_true_bool(mut self, input: ::std::option::Option<bool>) -> Self {
        6401  +
            /* ServerBuilderGenerator.kt:344 */
        6402  +
            self.header_true_bool =
        6403  +
                /* ServerBuilderGenerator.kt:376 */input
        6404  +
            /* ServerBuilderGenerator.kt:344 */;
        6405  +
            self
        6406  +
            /* ServerBuilderGenerator.kt:343 */
 7749   6407   
        }
        6408  +
        /* ServerBuilderGenerator.kt:426 */
        6409  +
        #[allow(missing_docs)] // documentation missing in model
        6410  +
                               /* ServerBuilderGenerator.kt:428 */
        6411  +
        pub(crate) fn set_header_true_bool(
        6412  +
            mut self,
        6413  +
            input: Option<impl ::std::convert::Into<bool>>,
        6414  +
        ) -> Self {
        6415  +
            /* ServerBuilderGenerator.kt:429 */
        6416  +
            self.header_true_bool = input.map(|v| v.into());
        6417  +
            self
        6418  +
            /* ServerBuilderGenerator.kt:428 */
 7750   6419   
        }
 7751         -
    /* ServerBuilderGenerator.kt:234 */
 7752         -
    impl ::std::convert::From<ConstraintViolation>
 7753         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 7754         -
    {
 7755         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
 7756         -
            let first_validation_exception_field =
 7757         -
                constraint_violation.as_validation_exception_field("".to_owned());
 7758         -
            let validation_exception = crate::error::ValidationException {
 7759         -
                message: format!(
 7760         -
                    "1 validation error detected. {}",
 7761         -
                    &first_validation_exception_field.message
 7762         -
                ),
 7763         -
                field_list: Some(vec![first_validation_exception_field]),
 7764         -
            };
 7765         -
            Self::ConstraintViolation(
 7766         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 7767         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 7768         -
                            )
        6420  +
        /* ServerBuilderGenerator.kt:331 */
        6421  +
        #[allow(missing_docs)] // documentation missing in model
        6422  +
                               /* ServerBuilderGenerator.kt:343 */
        6423  +
        pub fn header_false_bool(mut self, input: ::std::option::Option<bool>) -> Self {
        6424  +
            /* ServerBuilderGenerator.kt:344 */
        6425  +
            self.header_false_bool =
        6426  +
                /* ServerBuilderGenerator.kt:376 */input
        6427  +
            /* ServerBuilderGenerator.kt:344 */;
        6428  +
            self
        6429  +
            /* ServerBuilderGenerator.kt:343 */
 7769   6430   
        }
        6431  +
        /* ServerBuilderGenerator.kt:426 */
        6432  +
        #[allow(missing_docs)] // documentation missing in model
        6433  +
                               /* ServerBuilderGenerator.kt:428 */
        6434  +
        pub(crate) fn set_header_false_bool(
        6435  +
            mut self,
        6436  +
            input: Option<impl ::std::convert::Into<bool>>,
        6437  +
        ) -> Self {
        6438  +
            /* ServerBuilderGenerator.kt:429 */
        6439  +
            self.header_false_bool = input.map(|v| v.into());
        6440  +
            self
        6441  +
            /* ServerBuilderGenerator.kt:428 */
 7770   6442   
        }
 7771         -
    /* ServerBuilderGenerator.kt:244 */
 7772         -
    impl ::std::convert::From<Builder>
 7773         -
        for crate::constrained::MaybeConstrained<
 7774         -
            crate::input::MalformedTimestampHeaderDateTimeInput,
 7775         -
        >
 7776         -
    {
 7777         -
        fn from(builder: Builder) -> Self {
 7778         -
            Self::Unconstrained(builder)
        6443  +
        /* ServerBuilderGenerator.kt:331 */
        6444  +
        #[allow(missing_docs)] // documentation missing in model
        6445  +
                               /* ServerBuilderGenerator.kt:343 */
        6446  +
        pub fn header_string_list(
        6447  +
            mut self,
        6448  +
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        6449  +
        ) -> Self {
        6450  +
            /* ServerBuilderGenerator.kt:344 */
        6451  +
            self.header_string_list =
        6452  +
                /* ServerBuilderGenerator.kt:376 */input
        6453  +
            /* ServerBuilderGenerator.kt:344 */;
        6454  +
            self
        6455  +
            /* ServerBuilderGenerator.kt:343 */
 7779   6456   
        }
        6457  +
        /* ServerBuilderGenerator.kt:426 */
        6458  +
        #[allow(missing_docs)] // documentation missing in model
        6459  +
                               /* ServerBuilderGenerator.kt:428 */
        6460  +
        pub(crate) fn set_header_string_list(
        6461  +
            mut self,
        6462  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
        6463  +
        ) -> Self {
        6464  +
            /* ServerBuilderGenerator.kt:429 */
        6465  +
            self.header_string_list = input.map(|v| v.into());
        6466  +
            self
        6467  +
            /* ServerBuilderGenerator.kt:428 */
 7780   6468   
        }
 7781         -
    /* ServerBuilderGenerator.kt:446 */
 7782         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampHeaderDateTimeInput {
 7783         -
        type Error = ConstraintViolation;
 7784         -
 7785         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 7786         -
            builder.build()
        6469  +
        /* ServerBuilderGenerator.kt:331 */
        6470  +
        #[allow(missing_docs)] // documentation missing in model
        6471  +
                               /* ServerBuilderGenerator.kt:343 */
        6472  +
        pub fn header_string_set(
        6473  +
            mut self,
        6474  +
            input: ::std::option::Option<crate::model::StringSet>,
        6475  +
        ) -> Self {
        6476  +
            /* ServerBuilderGenerator.kt:344 */
        6477  +
            self.header_string_set =
        6478  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
        6479  +
            /* ServerBuilderGenerator.kt:344 */;
        6480  +
            self
        6481  +
            /* ServerBuilderGenerator.kt:343 */
 7787   6482   
        }
        6483  +
        /* ServerBuilderGenerator.kt:426 */
        6484  +
        #[allow(missing_docs)] // documentation missing in model
        6485  +
                               /* ServerBuilderGenerator.kt:428 */
        6486  +
        pub(crate) fn set_header_string_set(
        6487  +
            mut self,
        6488  +
            input: Option<
        6489  +
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
        6490  +
            >,
        6491  +
        ) -> Self {
        6492  +
            /* ServerBuilderGenerator.kt:429 */
        6493  +
            self.header_string_set = input.map(|v| v.into());
        6494  +
            self
        6495  +
            /* ServerBuilderGenerator.kt:428 */
 7788   6496   
        }
 7789         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampHeaderDateTimeInput`](crate::input::MalformedTimestampHeaderDateTimeInput).
 7790         -
    /* RustType.kt:534 */
 7791         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 7792         -
    /* ServerBuilderGenerator.kt:211 */
 7793         -
    pub struct Builder {
 7794         -
        /* ServerBuilderGenerator.kt:308 */
 7795         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
 7796         -
        /* ServerBuilderGenerator.kt:211 */
        6497  +
        /* ServerBuilderGenerator.kt:331 */
        6498  +
        #[allow(missing_docs)] // documentation missing in model
        6499  +
                               /* ServerBuilderGenerator.kt:343 */
        6500  +
        pub fn header_integer_list(
        6501  +
            mut self,
        6502  +
            input: ::std::option::Option<::std::vec::Vec<i32>>,
        6503  +
        ) -> Self {
        6504  +
            /* ServerBuilderGenerator.kt:344 */
        6505  +
            self.header_integer_list =
        6506  +
                /* ServerBuilderGenerator.kt:376 */input
        6507  +
            /* ServerBuilderGenerator.kt:344 */;
        6508  +
            self
        6509  +
            /* ServerBuilderGenerator.kt:343 */
        6510  +
        }
        6511  +
        /* ServerBuilderGenerator.kt:426 */
        6512  +
        #[allow(missing_docs)] // documentation missing in model
        6513  +
                               /* ServerBuilderGenerator.kt:428 */
        6514  +
        pub(crate) fn set_header_integer_list(
        6515  +
            mut self,
        6516  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
        6517  +
        ) -> Self {
        6518  +
            /* ServerBuilderGenerator.kt:429 */
        6519  +
            self.header_integer_list = input.map(|v| v.into());
        6520  +
            self
        6521  +
            /* ServerBuilderGenerator.kt:428 */
 7797   6522   
        }
 7798         -
    /* ServerBuilderGenerator.kt:215 */
 7799         -
    impl Builder {
 7800   6523   
        /* ServerBuilderGenerator.kt:331 */
 7801   6524   
        #[allow(missing_docs)] // documentation missing in model
 7802   6525   
                               /* ServerBuilderGenerator.kt:343 */
 7803         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        6526  +
        pub fn header_boolean_list(
        6527  +
            mut self,
        6528  +
            input: ::std::option::Option<::std::vec::Vec<bool>>,
        6529  +
        ) -> Self {
 7804   6530   
            /* ServerBuilderGenerator.kt:344 */
 7805         -
            self.timestamp =
 7806         -
                /* ServerBuilderGenerator.kt:345 */Some(
        6531  +
            self.header_boolean_list =
 7807   6532   
                /* ServerBuilderGenerator.kt:376 */input
 7808         -
                /* ServerBuilderGenerator.kt:345 */)
 7809   6533   
            /* ServerBuilderGenerator.kt:344 */;
 7810   6534   
            self
 7811   6535   
            /* ServerBuilderGenerator.kt:343 */
 7812   6536   
        }
 7813   6537   
        /* ServerBuilderGenerator.kt:426 */
 7814   6538   
        #[allow(missing_docs)] // documentation missing in model
 7815   6539   
                               /* ServerBuilderGenerator.kt:428 */
 7816         -
        pub(crate) fn set_timestamp(
        6540  +
        pub(crate) fn set_header_boolean_list(
 7817   6541   
            mut self,
 7818         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        6542  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<bool>>>,
 7819   6543   
        ) -> Self {
 7820   6544   
            /* ServerBuilderGenerator.kt:429 */
 7821         -
            self.timestamp = Some(input.into());
        6545  +
            self.header_boolean_list = input.map(|v| v.into());
 7822   6546   
            self
 7823   6547   
            /* ServerBuilderGenerator.kt:428 */
 7824   6548   
        }
 7825         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampHeaderDateTimeInput`](crate::input::MalformedTimestampHeaderDateTimeInput).
 7826         -
        /// /* ServerBuilderGenerator.kt:260 */
 7827         -
        /// The builder fails to construct a [`MalformedTimestampHeaderDateTimeInput`](crate::input::MalformedTimestampHeaderDateTimeInput) if a [`ConstraintViolation`] occurs.
 7828         -
        ///
 7829         -
        /* ServerBuilderGenerator.kt:271 */
 7830         -
        pub fn build(
 7831         -
            self,
 7832         -
        ) -> Result<crate::input::MalformedTimestampHeaderDateTimeInput, ConstraintViolation>
 7833         -
        {
 7834         -
            self.build_enforcing_all_constraints()
 7835         -
        }
 7836         -
        /* ServerBuilderGenerator.kt:283 */
 7837         -
        fn build_enforcing_all_constraints(
 7838         -
            self,
 7839         -
        ) -> Result<crate::input::MalformedTimestampHeaderDateTimeInput, ConstraintViolation>
 7840         -
        {
 7841         -
            /* ServerBuilderGenerator.kt:287 */
 7842         -
            Ok(
 7843         -
                /* ServerBuilderGenerator.kt:542 */
 7844         -
                crate::input::MalformedTimestampHeaderDateTimeInput {
 7845         -
                    /* ServerBuilderGenerator.kt:546 */
 7846         -
                    timestamp: self
 7847         -
                        .timestamp
 7848         -
                        /* ServerBuilderGenerator.kt:569 */
 7849         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
 7850         -
                    /* ServerBuilderGenerator.kt:542 */
 7851         -
                }, /* ServerBuilderGenerator.kt:287 */
 7852         -
            )
 7853         -
            /* ServerBuilderGenerator.kt:283 */
 7854         -
        }
 7855         -
        /* ServerBuilderGenerator.kt:215 */
 7856         -
    }
 7857         -
 7858         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 7859         -
}
 7860         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampHeaderDefaultInput`](crate::input::MalformedTimestampHeaderDefaultInput).
 7861         -
pub mod malformed_timestamp_header_default_input {
 7862         -
 7863         -
    /* RustType.kt:534 */
 7864         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 7865         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 7866         -
    /* RustType.kt:534 */
 7867         -
    #[non_exhaustive]
 7868         -
    /* ServerBuilderConstraintViolations.kt:75 */
 7869         -
    #[allow(clippy::enum_variant_names)]
 7870         -
    pub enum ConstraintViolation {
 7871         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampHeaderDefaultInput`.
 7872         -
        /* ServerBuilderConstraintViolations.kt:144 */
 7873         -
        MissingTimestamp,
 7874         -
        /* ServerBuilderConstraintViolations.kt:75 */
 7875         -
    }
 7876         -
    /* ServerBuilderConstraintViolations.kt:116 */
 7877         -
    impl ::std::fmt::Display for ConstraintViolation {
 7878         -
        /* ServerBuilderConstraintViolations.kt:117 */
 7879         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 7880         -
            /* ServerBuilderConstraintViolations.kt:118 */
 7881         -
            match self {
 7882         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampHeaderDefaultInput`"),
 7883         -
            /* ServerBuilderConstraintViolations.kt:118 */}
 7884         -
            /* ServerBuilderConstraintViolations.kt:117 */
 7885         -
        }
 7886         -
        /* ServerBuilderConstraintViolations.kt:116 */
 7887         -
    }
 7888         -
    /* ServerBuilderConstraintViolations.kt:83 */
 7889         -
    impl ::std::error::Error for ConstraintViolation {}
 7890         -
    /* ServerBuilderConstraintViolations.kt:172 */
 7891         -
    impl ConstraintViolation {
 7892         -
        pub(crate) fn as_validation_exception_field(
 7893         -
            self,
 7894         -
            path: ::std::string::String,
 7895         -
        ) -> crate::model::ValidationExceptionField {
 7896         -
            match self {
 7897         -
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 7898         -
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 7899         -
                                                path: path + "/timestamp",
 7900         -
                                            },
 7901         -
        }
 7902         -
        }
        6549  +
        /* ServerBuilderGenerator.kt:331 */
        6550  +
        #[allow(missing_docs)] // documentation missing in model
        6551  +
                               /* ServerBuilderGenerator.kt:343 */
        6552  +
        pub fn header_timestamp_list(
        6553  +
            mut self,
        6554  +
            input: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
        6555  +
        ) -> Self {
        6556  +
            /* ServerBuilderGenerator.kt:344 */
        6557  +
            self.header_timestamp_list =
        6558  +
                /* ServerBuilderGenerator.kt:376 */input
        6559  +
            /* ServerBuilderGenerator.kt:344 */;
        6560  +
            self
        6561  +
            /* ServerBuilderGenerator.kt:343 */
 7903   6562   
        }
 7904         -
    /* ServerBuilderGenerator.kt:234 */
 7905         -
    impl ::std::convert::From<ConstraintViolation>
 7906         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 7907         -
    {
 7908         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
 7909         -
            let first_validation_exception_field =
 7910         -
                constraint_violation.as_validation_exception_field("".to_owned());
 7911         -
            let validation_exception = crate::error::ValidationException {
 7912         -
                message: format!(
 7913         -
                    "1 validation error detected. {}",
 7914         -
                    &first_validation_exception_field.message
 7915         -
                ),
 7916         -
                field_list: Some(vec![first_validation_exception_field]),
 7917         -
            };
 7918         -
            Self::ConstraintViolation(
 7919         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 7920         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 7921         -
                            )
        6563  +
        /* ServerBuilderGenerator.kt:426 */
        6564  +
        #[allow(missing_docs)] // documentation missing in model
        6565  +
                               /* ServerBuilderGenerator.kt:428 */
        6566  +
        pub(crate) fn set_header_timestamp_list(
        6567  +
            mut self,
        6568  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::aws_smithy_types::DateTime>>>,
        6569  +
        ) -> Self {
        6570  +
            /* ServerBuilderGenerator.kt:429 */
        6571  +
            self.header_timestamp_list = input.map(|v| v.into());
        6572  +
            self
        6573  +
            /* ServerBuilderGenerator.kt:428 */
 7922   6574   
        }
        6575  +
        /* ServerBuilderGenerator.kt:331 */
        6576  +
        #[allow(missing_docs)] // documentation missing in model
        6577  +
                               /* ServerBuilderGenerator.kt:343 */
        6578  +
        pub fn header_enum(mut self, input: ::std::option::Option<crate::model::FooEnum>) -> Self {
        6579  +
            /* ServerBuilderGenerator.kt:344 */
        6580  +
            self.header_enum =
        6581  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
        6582  +
            /* ServerBuilderGenerator.kt:344 */;
        6583  +
            self
        6584  +
            /* ServerBuilderGenerator.kt:343 */
 7923   6585   
        }
 7924         -
    /* ServerBuilderGenerator.kt:244 */
 7925         -
    impl ::std::convert::From<Builder>
 7926         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampHeaderDefaultInput>
 7927         -
    {
 7928         -
        fn from(builder: Builder) -> Self {
 7929         -
            Self::Unconstrained(builder)
        6586  +
        /* ServerBuilderGenerator.kt:426 */
        6587  +
        #[allow(missing_docs)] // documentation missing in model
        6588  +
                               /* ServerBuilderGenerator.kt:428 */
        6589  +
        pub(crate) fn set_header_enum(
        6590  +
            mut self,
        6591  +
            input: Option<
        6592  +
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
        6593  +
            >,
        6594  +
        ) -> Self {
        6595  +
            /* ServerBuilderGenerator.kt:429 */
        6596  +
            self.header_enum = input.map(|v| v.into());
        6597  +
            self
        6598  +
            /* ServerBuilderGenerator.kt:428 */
 7930   6599   
        }
        6600  +
        /* ServerBuilderGenerator.kt:331 */
        6601  +
        #[allow(missing_docs)] // documentation missing in model
        6602  +
                               /* ServerBuilderGenerator.kt:343 */
        6603  +
        pub fn header_enum_list(
        6604  +
            mut self,
        6605  +
            input: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
        6606  +
        ) -> Self {
        6607  +
            /* ServerBuilderGenerator.kt:344 */
        6608  +
            self.header_enum_list =
        6609  +
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
        6610  +
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
        6611  +
                /* ServerBuilderGenerator.kt:363 */)
        6612  +
            /* ServerBuilderGenerator.kt:344 */;
        6613  +
            self
        6614  +
            /* ServerBuilderGenerator.kt:343 */
 7931   6615   
        }
 7932         -
    /* ServerBuilderGenerator.kt:446 */
 7933         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampHeaderDefaultInput {
 7934         -
        type Error = ConstraintViolation;
 7935         -
 7936         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 7937         -
            builder.build()
        6616  +
        /* ServerBuilderGenerator.kt:426 */
        6617  +
        #[allow(missing_docs)] // documentation missing in model
        6618  +
                               /* ServerBuilderGenerator.kt:428 */
        6619  +
        pub(crate) fn set_header_enum_list(
        6620  +
            mut self,
        6621  +
            input: Option<
        6622  +
                impl ::std::convert::Into<
        6623  +
                    crate::constrained::MaybeConstrained<
        6624  +
                        crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
        6625  +
                    >,
        6626  +
                >,
        6627  +
            >,
        6628  +
        ) -> Self {
        6629  +
            /* ServerBuilderGenerator.kt:429 */
        6630  +
            self.header_enum_list = input.map(|v| v.into());
        6631  +
            self
        6632  +
            /* ServerBuilderGenerator.kt:428 */
 7938   6633   
        }
        6634  +
        /* ServerBuilderGenerator.kt:331 */
        6635  +
        #[allow(missing_docs)] // documentation missing in model
        6636  +
                               /* ServerBuilderGenerator.kt:343 */
        6637  +
        pub fn header_integer_enum(mut self, input: ::std::option::Option<i32>) -> Self {
        6638  +
            /* ServerBuilderGenerator.kt:344 */
        6639  +
            self.header_integer_enum =
        6640  +
                /* ServerBuilderGenerator.kt:376 */input
        6641  +
            /* ServerBuilderGenerator.kt:344 */;
        6642  +
            self
        6643  +
            /* ServerBuilderGenerator.kt:343 */
 7939   6644   
        }
 7940         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampHeaderDefaultInput`](crate::input::MalformedTimestampHeaderDefaultInput).
 7941         -
    /* RustType.kt:534 */
 7942         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 7943         -
    /* ServerBuilderGenerator.kt:211 */
 7944         -
    pub struct Builder {
 7945         -
        /* ServerBuilderGenerator.kt:308 */
 7946         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
 7947         -
        /* ServerBuilderGenerator.kt:211 */
        6645  +
        /* ServerBuilderGenerator.kt:426 */
        6646  +
        #[allow(missing_docs)] // documentation missing in model
        6647  +
                               /* ServerBuilderGenerator.kt:428 */
        6648  +
        pub(crate) fn set_header_integer_enum(
        6649  +
            mut self,
        6650  +
            input: Option<impl ::std::convert::Into<i32>>,
        6651  +
        ) -> Self {
        6652  +
            /* ServerBuilderGenerator.kt:429 */
        6653  +
            self.header_integer_enum = input.map(|v| v.into());
        6654  +
            self
        6655  +
            /* ServerBuilderGenerator.kt:428 */
 7948   6656   
        }
 7949         -
    /* ServerBuilderGenerator.kt:215 */
 7950         -
    impl Builder {
 7951   6657   
        /* ServerBuilderGenerator.kt:331 */
 7952   6658   
        #[allow(missing_docs)] // documentation missing in model
 7953   6659   
                               /* ServerBuilderGenerator.kt:343 */
 7954         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        6660  +
        pub fn header_integer_enum_list(
        6661  +
            mut self,
        6662  +
            input: ::std::option::Option<::std::vec::Vec<i32>>,
        6663  +
        ) -> Self {
 7955   6664   
            /* ServerBuilderGenerator.kt:344 */
 7956         -
            self.timestamp =
 7957         -
                /* ServerBuilderGenerator.kt:345 */Some(
        6665  +
            self.header_integer_enum_list =
 7958   6666   
                /* ServerBuilderGenerator.kt:376 */input
 7959         -
                /* ServerBuilderGenerator.kt:345 */)
 7960   6667   
            /* ServerBuilderGenerator.kt:344 */;
 7961   6668   
            self
 7962   6669   
            /* ServerBuilderGenerator.kt:343 */
 7963   6670   
        }
 7964   6671   
        /* ServerBuilderGenerator.kt:426 */
 7965   6672   
        #[allow(missing_docs)] // documentation missing in model
 7966   6673   
                               /* ServerBuilderGenerator.kt:428 */
 7967         -
        pub(crate) fn set_timestamp(
        6674  +
        pub(crate) fn set_header_integer_enum_list(
 7968   6675   
            mut self,
 7969         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        6676  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
 7970   6677   
        ) -> Self {
 7971   6678   
            /* ServerBuilderGenerator.kt:429 */
 7972         -
            self.timestamp = Some(input.into());
        6679  +
            self.header_integer_enum_list = input.map(|v| v.into());
 7973   6680   
            self
 7974   6681   
            /* ServerBuilderGenerator.kt:428 */
 7975   6682   
        }
 7976         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampHeaderDefaultInput`](crate::input::MalformedTimestampHeaderDefaultInput).
        6683  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`InputAndOutputWithHeadersInput`](crate::input::InputAndOutputWithHeadersInput).
 7977   6684   
        /// /* ServerBuilderGenerator.kt:260 */
 7978         -
        /// The builder fails to construct a [`MalformedTimestampHeaderDefaultInput`](crate::input::MalformedTimestampHeaderDefaultInput) if a [`ConstraintViolation`] occurs.
        6685  +
        /// The builder fails to construct a [`InputAndOutputWithHeadersInput`](crate::input::InputAndOutputWithHeadersInput) if a [`ConstraintViolation`] occurs.
 7979   6686   
        ///
        6687  +
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
 7980   6688   
        /* ServerBuilderGenerator.kt:271 */
 7981   6689   
        pub fn build(
 7982   6690   
            self,
 7983         -
        ) -> Result<crate::input::MalformedTimestampHeaderDefaultInput, ConstraintViolation>
 7984         -
        {
        6691  +
        ) -> Result<crate::input::InputAndOutputWithHeadersInput, ConstraintViolation> {
 7985   6692   
            self.build_enforcing_all_constraints()
 7986   6693   
        }
 7987   6694   
        /* ServerBuilderGenerator.kt:283 */
 7988   6695   
        fn build_enforcing_all_constraints(
 7989   6696   
            self,
 7990         -
        ) -> Result<crate::input::MalformedTimestampHeaderDefaultInput, ConstraintViolation>
 7991         -
        {
        6697  +
        ) -> Result<crate::input::InputAndOutputWithHeadersInput, ConstraintViolation> {
 7992   6698   
            /* ServerBuilderGenerator.kt:287 */
 7993   6699   
            Ok(
 7994   6700   
                /* ServerBuilderGenerator.kt:542 */
 7995         -
                crate::input::MalformedTimestampHeaderDefaultInput {
        6701  +
                crate::input::InputAndOutputWithHeadersInput {
 7996   6702   
                    /* ServerBuilderGenerator.kt:546 */
 7997         -
                    timestamp: self
 7998         -
                        .timestamp
 7999         -
                        /* ServerBuilderGenerator.kt:569 */
 8000         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
        6703  +
                    header_string: self.header_string,
        6704  +
                    /* ServerBuilderGenerator.kt:546 */
        6705  +
                    header_byte: self.header_byte,
        6706  +
                    /* ServerBuilderGenerator.kt:546 */
        6707  +
                    header_short: self.header_short,
        6708  +
                    /* ServerBuilderGenerator.kt:546 */
        6709  +
                    header_integer: self.header_integer,
        6710  +
                    /* ServerBuilderGenerator.kt:546 */
        6711  +
                    header_long: self.header_long,
        6712  +
                    /* ServerBuilderGenerator.kt:546 */
        6713  +
                    header_float: self.header_float,
        6714  +
                    /* ServerBuilderGenerator.kt:546 */
        6715  +
                    header_double: self.header_double,
        6716  +
                    /* ServerBuilderGenerator.kt:546 */
        6717  +
                    header_true_bool: self.header_true_bool,
        6718  +
                    /* ServerBuilderGenerator.kt:546 */
        6719  +
                    header_false_bool: self.header_false_bool,
        6720  +
                    /* ServerBuilderGenerator.kt:546 */
        6721  +
                    header_string_list: self.header_string_list,
        6722  +
                    /* ServerBuilderGenerator.kt:546 */
        6723  +
                    header_string_set: self
        6724  +
                        .header_string_set
        6725  +
                        /* ServerBuilderGenerator.kt:602 */
        6726  +
                        .map(|v| match v {
        6727  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
        6728  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
        6729  +
                        })
        6730  +
                        /* ServerBuilderGenerator.kt:614 */
        6731  +
                        .map(|res| res.map_err(ConstraintViolation::HeaderStringSet))
        6732  +
                        .transpose()?,
        6733  +
                    /* ServerBuilderGenerator.kt:546 */
        6734  +
                    header_integer_list: self.header_integer_list,
        6735  +
                    /* ServerBuilderGenerator.kt:546 */
        6736  +
                    header_boolean_list: self.header_boolean_list,
        6737  +
                    /* ServerBuilderGenerator.kt:546 */
        6738  +
                    header_timestamp_list: self.header_timestamp_list,
        6739  +
                    /* ServerBuilderGenerator.kt:546 */
        6740  +
                    header_enum: self
        6741  +
                        .header_enum
        6742  +
                        /* ServerBuilderGenerator.kt:602 */
        6743  +
                        .map(|v| match v {
        6744  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
        6745  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
        6746  +
                        })
        6747  +
                        /* ServerBuilderGenerator.kt:614 */
        6748  +
                        .map(|res| res.map_err(ConstraintViolation::HeaderEnum))
        6749  +
                        .transpose()?,
        6750  +
                    /* ServerBuilderGenerator.kt:546 */
        6751  +
                    header_enum_list: self
        6752  +
                        .header_enum_list
        6753  +
                        /* ServerBuilderGenerator.kt:602 */
        6754  +
                        .map(|v| match v {
        6755  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
        6756  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
        6757  +
                        })
        6758  +
                        /* ServerBuilderGenerator.kt:614 */
        6759  +
                        .map(|res| {
        6760  +
                            res.map(|v| v.into())
        6761  +
                                .map_err(ConstraintViolation::HeaderEnumList)
        6762  +
                        })
        6763  +
                        .transpose()?,
        6764  +
                    /* ServerBuilderGenerator.kt:546 */
        6765  +
                    header_integer_enum: self.header_integer_enum,
        6766  +
                    /* ServerBuilderGenerator.kt:546 */
        6767  +
                    header_integer_enum_list: self.header_integer_enum_list,
 8001   6768   
                    /* ServerBuilderGenerator.kt:542 */
 8002   6769   
                }, /* ServerBuilderGenerator.kt:287 */
 8003   6770   
            )
 8004   6771   
            /* ServerBuilderGenerator.kt:283 */
 8005   6772   
        }
 8006   6773   
        /* ServerBuilderGenerator.kt:215 */
 8007   6774   
    }
 8008   6775   
 8009   6776   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 8010   6777   
}
 8011         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampQueryEpochInput`](crate::input::MalformedTimestampQueryEpochInput).
 8012         -
pub mod malformed_timestamp_query_epoch_input {
        6778  +
/// /* ServerBuilderGenerator.kt:171 */See [`NullAndEmptyHeadersClientInput`](crate::input::NullAndEmptyHeadersClientInput).
        6779  +
pub mod null_and_empty_headers_client_input {
 8013   6780   
        6781  +
    /* ServerBuilderGenerator.kt:461 */
        6782  +
    impl ::std::convert::From<Builder> for crate::input::NullAndEmptyHeadersClientInput {
        6783  +
        fn from(builder: Builder) -> Self {
        6784  +
            builder.build()
        6785  +
        }
        6786  +
    }
        6787  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`NullAndEmptyHeadersClientInput`](crate::input::NullAndEmptyHeadersClientInput).
 8014   6788   
    /* RustType.kt:534 */
 8015         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 8016         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 8017         -
    /* RustType.kt:534 */
 8018         -
    #[non_exhaustive]
 8019         -
    /* ServerBuilderConstraintViolations.kt:75 */
 8020         -
    #[allow(clippy::enum_variant_names)]
 8021         -
    pub enum ConstraintViolation {
 8022         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampQueryEpochInput`.
 8023         -
        /* ServerBuilderConstraintViolations.kt:144 */
 8024         -
        MissingTimestamp,
 8025         -
        /* ServerBuilderConstraintViolations.kt:75 */
        6789  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        6790  +
    /* ServerBuilderGenerator.kt:211 */
        6791  +
    pub struct Builder {
        6792  +
        /* ServerBuilderGenerator.kt:308 */
        6793  +
        pub(crate) a: ::std::option::Option<::std::string::String>,
        6794  +
        /* ServerBuilderGenerator.kt:308 */
        6795  +
        pub(crate) b: ::std::option::Option<::std::string::String>,
        6796  +
        /* ServerBuilderGenerator.kt:308 */
        6797  +
        pub(crate) c: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        6798  +
        /* ServerBuilderGenerator.kt:211 */
 8026   6799   
    }
 8027         -
    /* ServerBuilderConstraintViolations.kt:116 */
 8028         -
    impl ::std::fmt::Display for ConstraintViolation {
 8029         -
        /* ServerBuilderConstraintViolations.kt:117 */
 8030         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 8031         -
            /* ServerBuilderConstraintViolations.kt:118 */
 8032         -
            match self {
 8033         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampQueryEpochInput`"),
 8034         -
            /* ServerBuilderConstraintViolations.kt:118 */}
 8035         -
            /* ServerBuilderConstraintViolations.kt:117 */
        6800  +
    /* ServerBuilderGenerator.kt:215 */
        6801  +
    impl Builder {
        6802  +
        /* ServerBuilderGenerator.kt:331 */
        6803  +
        #[allow(missing_docs)] // documentation missing in model
        6804  +
                               /* ServerBuilderGenerator.kt:343 */
        6805  +
        pub fn a(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        6806  +
            /* ServerBuilderGenerator.kt:344 */
        6807  +
            self.a =
        6808  +
                /* ServerBuilderGenerator.kt:376 */input
        6809  +
            /* ServerBuilderGenerator.kt:344 */;
        6810  +
            self
        6811  +
            /* ServerBuilderGenerator.kt:343 */
 8036   6812   
        }
 8037         -
        /* ServerBuilderConstraintViolations.kt:116 */
        6813  +
        /* ServerBuilderGenerator.kt:426 */
        6814  +
        #[allow(missing_docs)] // documentation missing in model
        6815  +
                               /* ServerBuilderGenerator.kt:428 */
        6816  +
        pub(crate) fn set_a(
        6817  +
            mut self,
        6818  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
        6819  +
        ) -> Self {
        6820  +
            /* ServerBuilderGenerator.kt:429 */
        6821  +
            self.a = input.map(|v| v.into());
        6822  +
            self
        6823  +
            /* ServerBuilderGenerator.kt:428 */
 8038   6824   
        }
 8039         -
    /* ServerBuilderConstraintViolations.kt:83 */
 8040         -
    impl ::std::error::Error for ConstraintViolation {}
 8041         -
    /* ServerBuilderConstraintViolations.kt:172 */
 8042         -
    impl ConstraintViolation {
 8043         -
        pub(crate) fn as_validation_exception_field(
 8044         -
            self,
 8045         -
            path: ::std::string::String,
 8046         -
        ) -> crate::model::ValidationExceptionField {
 8047         -
            match self {
 8048         -
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 8049         -
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 8050         -
                                                path: path + "/timestamp",
 8051         -
                                            },
        6825  +
        /* ServerBuilderGenerator.kt:331 */
        6826  +
        #[allow(missing_docs)] // documentation missing in model
        6827  +
                               /* ServerBuilderGenerator.kt:343 */
        6828  +
        pub fn b(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        6829  +
            /* ServerBuilderGenerator.kt:344 */
        6830  +
            self.b =
        6831  +
                /* ServerBuilderGenerator.kt:376 */input
        6832  +
            /* ServerBuilderGenerator.kt:344 */;
        6833  +
            self
        6834  +
            /* ServerBuilderGenerator.kt:343 */
 8052   6835   
        }
        6836  +
        /* ServerBuilderGenerator.kt:426 */
        6837  +
        #[allow(missing_docs)] // documentation missing in model
        6838  +
                               /* ServerBuilderGenerator.kt:428 */
        6839  +
        pub(crate) fn set_b(
        6840  +
            mut self,
        6841  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
        6842  +
        ) -> Self {
        6843  +
            /* ServerBuilderGenerator.kt:429 */
        6844  +
            self.b = input.map(|v| v.into());
        6845  +
            self
        6846  +
            /* ServerBuilderGenerator.kt:428 */
 8053   6847   
        }
        6848  +
        /* ServerBuilderGenerator.kt:331 */
        6849  +
        #[allow(missing_docs)] // documentation missing in model
        6850  +
                               /* ServerBuilderGenerator.kt:343 */
        6851  +
        pub fn c(
        6852  +
            mut self,
        6853  +
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        6854  +
        ) -> Self {
        6855  +
            /* ServerBuilderGenerator.kt:344 */
        6856  +
            self.c =
        6857  +
                /* ServerBuilderGenerator.kt:376 */input
        6858  +
            /* ServerBuilderGenerator.kt:344 */;
        6859  +
            self
        6860  +
            /* ServerBuilderGenerator.kt:343 */
 8054   6861   
        }
 8055         -
    /* ServerBuilderGenerator.kt:234 */
 8056         -
    impl ::std::convert::From<ConstraintViolation>
 8057         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 8058         -
    {
 8059         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
 8060         -
            let first_validation_exception_field =
 8061         -
                constraint_violation.as_validation_exception_field("".to_owned());
 8062         -
            let validation_exception = crate::error::ValidationException {
 8063         -
                message: format!(
 8064         -
                    "1 validation error detected. {}",
 8065         -
                    &first_validation_exception_field.message
 8066         -
                ),
 8067         -
                field_list: Some(vec![first_validation_exception_field]),
 8068         -
            };
 8069         -
            Self::ConstraintViolation(
 8070         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 8071         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 8072         -
                            )
        6862  +
        /* ServerBuilderGenerator.kt:426 */
        6863  +
        #[allow(missing_docs)] // documentation missing in model
        6864  +
                               /* ServerBuilderGenerator.kt:428 */
        6865  +
        pub(crate) fn set_c(
        6866  +
            mut self,
        6867  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
        6868  +
        ) -> Self {
        6869  +
            /* ServerBuilderGenerator.kt:429 */
        6870  +
            self.c = input.map(|v| v.into());
        6871  +
            self
        6872  +
            /* ServerBuilderGenerator.kt:428 */
 8073   6873   
        }
        6874  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`NullAndEmptyHeadersClientInput`](crate::input::NullAndEmptyHeadersClientInput).
        6875  +
        /* ServerBuilderGenerator.kt:271 */
        6876  +
        pub fn build(self) -> crate::input::NullAndEmptyHeadersClientInput {
        6877  +
            self.build_enforcing_all_constraints()
 8074   6878   
        }
 8075         -
    /* ServerBuilderGenerator.kt:244 */
 8076         -
    impl ::std::convert::From<Builder>
 8077         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampQueryEpochInput>
 8078         -
    {
 8079         -
        fn from(builder: Builder) -> Self {
 8080         -
            Self::Unconstrained(builder)
        6879  +
        /* ServerBuilderGenerator.kt:283 */
        6880  +
        fn build_enforcing_all_constraints(self) -> crate::input::NullAndEmptyHeadersClientInput {
        6881  +
            /* ServerBuilderGenerator.kt:542 */
        6882  +
            crate::input::NullAndEmptyHeadersClientInput {
        6883  +
                /* ServerBuilderGenerator.kt:546 */
        6884  +
                a: self.a,
        6885  +
                /* ServerBuilderGenerator.kt:546 */
        6886  +
                b: self.b,
        6887  +
                /* ServerBuilderGenerator.kt:546 */
        6888  +
                c: self.c,
        6889  +
                /* ServerBuilderGenerator.kt:542 */
 8081   6890   
            }
        6891  +
            /* ServerBuilderGenerator.kt:283 */
        6892  +
        }
        6893  +
        /* ServerBuilderGenerator.kt:215 */
 8082   6894   
    }
 8083         -
    /* ServerBuilderGenerator.kt:446 */
 8084         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampQueryEpochInput {
 8085         -
        type Error = ConstraintViolation;
 8086   6895   
 8087         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
        6896  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
        6897  +
}
        6898  +
/// /* ServerBuilderGenerator.kt:171 */See [`NullAndEmptyHeadersServerInput`](crate::input::NullAndEmptyHeadersServerInput).
        6899  +
pub mod null_and_empty_headers_server_input {
        6900  +
        6901  +
    /* ServerBuilderGenerator.kt:461 */
        6902  +
    impl ::std::convert::From<Builder> for crate::input::NullAndEmptyHeadersServerInput {
        6903  +
        fn from(builder: Builder) -> Self {
 8088   6904   
            builder.build()
 8089   6905   
        }
 8090   6906   
    }
 8091         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampQueryEpochInput`](crate::input::MalformedTimestampQueryEpochInput).
        6907  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`NullAndEmptyHeadersServerInput`](crate::input::NullAndEmptyHeadersServerInput).
 8092   6908   
    /* RustType.kt:534 */
 8093   6909   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 8094   6910   
    /* ServerBuilderGenerator.kt:211 */
 8095   6911   
    pub struct Builder {
 8096   6912   
        /* ServerBuilderGenerator.kt:308 */
 8097         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
        6913  +
        pub(crate) a: ::std::option::Option<::std::string::String>,
        6914  +
        /* ServerBuilderGenerator.kt:308 */
        6915  +
        pub(crate) b: ::std::option::Option<::std::string::String>,
        6916  +
        /* ServerBuilderGenerator.kt:308 */
        6917  +
        pub(crate) c: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
 8098   6918   
        /* ServerBuilderGenerator.kt:211 */
 8099   6919   
    }
 8100   6920   
    /* ServerBuilderGenerator.kt:215 */
 8101   6921   
    impl Builder {
 8102   6922   
        /* ServerBuilderGenerator.kt:331 */
 8103   6923   
        #[allow(missing_docs)] // documentation missing in model
 8104   6924   
                               /* ServerBuilderGenerator.kt:343 */
 8105         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        6925  +
        pub fn a(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 8106   6926   
            /* ServerBuilderGenerator.kt:344 */
 8107         -
            self.timestamp =
 8108         -
                /* ServerBuilderGenerator.kt:345 */Some(
        6927  +
            self.a =
 8109   6928   
                /* ServerBuilderGenerator.kt:376 */input
 8110         -
                /* ServerBuilderGenerator.kt:345 */)
 8111   6929   
            /* ServerBuilderGenerator.kt:344 */;
 8112   6930   
            self
 8113   6931   
            /* ServerBuilderGenerator.kt:343 */
 8114   6932   
        }
 8115   6933   
        /* ServerBuilderGenerator.kt:426 */
 8116   6934   
        #[allow(missing_docs)] // documentation missing in model
 8117   6935   
                               /* ServerBuilderGenerator.kt:428 */
 8118         -
        pub(crate) fn set_timestamp(
        6936  +
        pub(crate) fn set_a(
 8119   6937   
            mut self,
 8120         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        6938  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 8121   6939   
        ) -> Self {
 8122   6940   
            /* ServerBuilderGenerator.kt:429 */
 8123         -
            self.timestamp = Some(input.into());
        6941  +
            self.a = input.map(|v| v.into());
 8124   6942   
            self
 8125   6943   
            /* ServerBuilderGenerator.kt:428 */
 8126   6944   
        }
 8127         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampQueryEpochInput`](crate::input::MalformedTimestampQueryEpochInput).
 8128         -
        /// /* ServerBuilderGenerator.kt:260 */
 8129         -
        /// The builder fails to construct a [`MalformedTimestampQueryEpochInput`](crate::input::MalformedTimestampQueryEpochInput) if a [`ConstraintViolation`] occurs.
 8130         -
        ///
        6945  +
        /* ServerBuilderGenerator.kt:331 */
        6946  +
        #[allow(missing_docs)] // documentation missing in model
        6947  +
                               /* ServerBuilderGenerator.kt:343 */
        6948  +
        pub fn b(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        6949  +
            /* ServerBuilderGenerator.kt:344 */
        6950  +
            self.b =
        6951  +
                /* ServerBuilderGenerator.kt:376 */input
        6952  +
            /* ServerBuilderGenerator.kt:344 */;
        6953  +
            self
        6954  +
            /* ServerBuilderGenerator.kt:343 */
        6955  +
        }
        6956  +
        /* ServerBuilderGenerator.kt:426 */
        6957  +
        #[allow(missing_docs)] // documentation missing in model
        6958  +
                               /* ServerBuilderGenerator.kt:428 */
        6959  +
        pub(crate) fn set_b(
        6960  +
            mut self,
        6961  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
        6962  +
        ) -> Self {
        6963  +
            /* ServerBuilderGenerator.kt:429 */
        6964  +
            self.b = input.map(|v| v.into());
        6965  +
            self
        6966  +
            /* ServerBuilderGenerator.kt:428 */
        6967  +
        }
        6968  +
        /* ServerBuilderGenerator.kt:331 */
        6969  +
        #[allow(missing_docs)] // documentation missing in model
        6970  +
                               /* ServerBuilderGenerator.kt:343 */
        6971  +
        pub fn c(
        6972  +
            mut self,
        6973  +
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        6974  +
        ) -> Self {
        6975  +
            /* ServerBuilderGenerator.kt:344 */
        6976  +
            self.c =
        6977  +
                /* ServerBuilderGenerator.kt:376 */input
        6978  +
            /* ServerBuilderGenerator.kt:344 */;
        6979  +
            self
        6980  +
            /* ServerBuilderGenerator.kt:343 */
        6981  +
        }
        6982  +
        /* ServerBuilderGenerator.kt:426 */
        6983  +
        #[allow(missing_docs)] // documentation missing in model
        6984  +
                               /* ServerBuilderGenerator.kt:428 */
        6985  +
        pub(crate) fn set_c(
        6986  +
            mut self,
        6987  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
        6988  +
        ) -> Self {
        6989  +
            /* ServerBuilderGenerator.kt:429 */
        6990  +
            self.c = input.map(|v| v.into());
        6991  +
            self
        6992  +
            /* ServerBuilderGenerator.kt:428 */
        6993  +
        }
        6994  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`NullAndEmptyHeadersServerInput`](crate::input::NullAndEmptyHeadersServerInput).
 8131   6995   
        /* ServerBuilderGenerator.kt:271 */
 8132         -
        pub fn build(
 8133         -
            self,
 8134         -
        ) -> Result<crate::input::MalformedTimestampQueryEpochInput, ConstraintViolation> {
        6996  +
        pub fn build(self) -> crate::input::NullAndEmptyHeadersServerInput {
 8135   6997   
            self.build_enforcing_all_constraints()
 8136   6998   
        }
 8137   6999   
        /* ServerBuilderGenerator.kt:283 */
 8138         -
        fn build_enforcing_all_constraints(
 8139         -
            self,
 8140         -
        ) -> Result<crate::input::MalformedTimestampQueryEpochInput, ConstraintViolation> {
 8141         -
            /* ServerBuilderGenerator.kt:287 */
 8142         -
            Ok(
        7000  +
        fn build_enforcing_all_constraints(self) -> crate::input::NullAndEmptyHeadersServerInput {
 8143   7001   
            /* ServerBuilderGenerator.kt:542 */
 8144         -
                crate::input::MalformedTimestampQueryEpochInput {
        7002  +
            crate::input::NullAndEmptyHeadersServerInput {
 8145   7003   
                /* ServerBuilderGenerator.kt:546 */
 8146         -
                    timestamp: self
 8147         -
                        .timestamp
 8148         -
                        /* ServerBuilderGenerator.kt:569 */
 8149         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
        7004  +
                a: self.a,
        7005  +
                /* ServerBuilderGenerator.kt:546 */
        7006  +
                b: self.b,
        7007  +
                /* ServerBuilderGenerator.kt:546 */
        7008  +
                c: self.c,
 8150   7009   
                /* ServerBuilderGenerator.kt:542 */
 8151         -
                }, /* ServerBuilderGenerator.kt:287 */
 8152         -
            )
        7010  +
            }
 8153   7011   
            /* ServerBuilderGenerator.kt:283 */
 8154   7012   
        }
 8155   7013   
        /* ServerBuilderGenerator.kt:215 */
 8156   7014   
    }
 8157   7015   
 8158   7016   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 8159   7017   
}
 8160         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampQueryHttpDateInput`](crate::input::MalformedTimestampQueryHttpDateInput).
 8161         -
pub mod malformed_timestamp_query_http_date_input {
        7018  +
/// /* ServerBuilderGenerator.kt:171 */See [`TimestampFormatHeadersInput`](crate::input::TimestampFormatHeadersInput).
        7019  +
pub mod timestamp_format_headers_input {
 8162   7020   
        7021  +
    /* ServerBuilderGenerator.kt:461 */
        7022  +
    impl ::std::convert::From<Builder> for crate::input::TimestampFormatHeadersInput {
        7023  +
        fn from(builder: Builder) -> Self {
        7024  +
            builder.build()
        7025  +
        }
        7026  +
    }
        7027  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TimestampFormatHeadersInput`](crate::input::TimestampFormatHeadersInput).
 8163   7028   
    /* RustType.kt:534 */
 8164         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 8165         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 8166         -
    /* RustType.kt:534 */
 8167         -
    #[non_exhaustive]
 8168         -
    /* ServerBuilderConstraintViolations.kt:75 */
 8169         -
    #[allow(clippy::enum_variant_names)]
 8170         -
    pub enum ConstraintViolation {
 8171         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampQueryHttpDateInput`.
 8172         -
        /* ServerBuilderConstraintViolations.kt:144 */
 8173         -
        MissingTimestamp,
 8174         -
        /* ServerBuilderConstraintViolations.kt:75 */
        7029  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        7030  +
    /* ServerBuilderGenerator.kt:211 */
        7031  +
    pub struct Builder {
        7032  +
        /* ServerBuilderGenerator.kt:308 */
        7033  +
        pub(crate) member_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
        7034  +
        /* ServerBuilderGenerator.kt:308 */
        7035  +
        pub(crate) member_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
        7036  +
        /* ServerBuilderGenerator.kt:308 */
        7037  +
        pub(crate) member_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
        7038  +
        /* ServerBuilderGenerator.kt:308 */
        7039  +
        pub(crate) default_format: ::std::option::Option<::aws_smithy_types::DateTime>,
        7040  +
        /* ServerBuilderGenerator.kt:308 */
        7041  +
        pub(crate) target_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
        7042  +
        /* ServerBuilderGenerator.kt:308 */
        7043  +
        pub(crate) target_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
        7044  +
        /* ServerBuilderGenerator.kt:308 */
        7045  +
        pub(crate) target_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
        7046  +
        /* ServerBuilderGenerator.kt:211 */
 8175   7047   
    }
 8176         -
    /* ServerBuilderConstraintViolations.kt:116 */
 8177         -
    impl ::std::fmt::Display for ConstraintViolation {
 8178         -
        /* ServerBuilderConstraintViolations.kt:117 */
 8179         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 8180         -
            /* ServerBuilderConstraintViolations.kt:118 */
 8181         -
            match self {
 8182         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampQueryHttpDateInput`"),
 8183         -
            /* ServerBuilderConstraintViolations.kt:118 */}
 8184         -
            /* ServerBuilderConstraintViolations.kt:117 */
        7048  +
    /* ServerBuilderGenerator.kt:215 */
        7049  +
    impl Builder {
        7050  +
        /* ServerBuilderGenerator.kt:331 */
        7051  +
        #[allow(missing_docs)] // documentation missing in model
        7052  +
                               /* ServerBuilderGenerator.kt:343 */
        7053  +
        pub fn member_epoch_seconds(
        7054  +
            mut self,
        7055  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
        7056  +
        ) -> Self {
        7057  +
            /* ServerBuilderGenerator.kt:344 */
        7058  +
            self.member_epoch_seconds =
        7059  +
                /* ServerBuilderGenerator.kt:376 */input
        7060  +
            /* ServerBuilderGenerator.kt:344 */;
        7061  +
            self
        7062  +
            /* ServerBuilderGenerator.kt:343 */
 8185   7063   
        }
 8186         -
        /* ServerBuilderConstraintViolations.kt:116 */
        7064  +
        /* ServerBuilderGenerator.kt:426 */
        7065  +
        #[allow(missing_docs)] // documentation missing in model
        7066  +
                               /* ServerBuilderGenerator.kt:428 */
        7067  +
        pub(crate) fn set_member_epoch_seconds(
        7068  +
            mut self,
        7069  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
        7070  +
        ) -> Self {
        7071  +
            /* ServerBuilderGenerator.kt:429 */
        7072  +
            self.member_epoch_seconds = input.map(|v| v.into());
        7073  +
            self
        7074  +
            /* ServerBuilderGenerator.kt:428 */
 8187   7075   
        }
 8188         -
    /* ServerBuilderConstraintViolations.kt:83 */
 8189         -
    impl ::std::error::Error for ConstraintViolation {}
 8190         -
    /* ServerBuilderConstraintViolations.kt:172 */
 8191         -
    impl ConstraintViolation {
 8192         -
        pub(crate) fn as_validation_exception_field(
 8193         -
            self,
 8194         -
            path: ::std::string::String,
 8195         -
        ) -> crate::model::ValidationExceptionField {
 8196         -
            match self {
 8197         -
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 8198         -
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 8199         -
                                                path: path + "/timestamp",
 8200         -
                                            },
        7076  +
        /* ServerBuilderGenerator.kt:331 */
        7077  +
        #[allow(missing_docs)] // documentation missing in model
        7078  +
                               /* ServerBuilderGenerator.kt:343 */
        7079  +
        pub fn member_http_date(
        7080  +
            mut self,
        7081  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
        7082  +
        ) -> Self {
        7083  +
            /* ServerBuilderGenerator.kt:344 */
        7084  +
            self.member_http_date =
        7085  +
                /* ServerBuilderGenerator.kt:376 */input
        7086  +
            /* ServerBuilderGenerator.kt:344 */;
        7087  +
            self
        7088  +
            /* ServerBuilderGenerator.kt:343 */
 8201   7089   
        }
        7090  +
        /* ServerBuilderGenerator.kt:426 */
        7091  +
        #[allow(missing_docs)] // documentation missing in model
        7092  +
                               /* ServerBuilderGenerator.kt:428 */
        7093  +
        pub(crate) fn set_member_http_date(
        7094  +
            mut self,
        7095  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
        7096  +
        ) -> Self {
        7097  +
            /* ServerBuilderGenerator.kt:429 */
        7098  +
            self.member_http_date = input.map(|v| v.into());
        7099  +
            self
        7100  +
            /* ServerBuilderGenerator.kt:428 */
 8202   7101   
        }
        7102  +
        /* ServerBuilderGenerator.kt:331 */
        7103  +
        #[allow(missing_docs)] // documentation missing in model
        7104  +
                               /* ServerBuilderGenerator.kt:343 */
        7105  +
        pub fn member_date_time(
        7106  +
            mut self,
        7107  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
        7108  +
        ) -> Self {
        7109  +
            /* ServerBuilderGenerator.kt:344 */
        7110  +
            self.member_date_time =
        7111  +
                /* ServerBuilderGenerator.kt:376 */input
        7112  +
            /* ServerBuilderGenerator.kt:344 */;
        7113  +
            self
        7114  +
            /* ServerBuilderGenerator.kt:343 */
 8203   7115   
        }
 8204         -
    /* ServerBuilderGenerator.kt:234 */
 8205         -
    impl ::std::convert::From<ConstraintViolation>
 8206         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 8207         -
    {
 8208         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
 8209         -
            let first_validation_exception_field =
 8210         -
                constraint_violation.as_validation_exception_field("".to_owned());
 8211         -
            let validation_exception = crate::error::ValidationException {
 8212         -
                message: format!(
 8213         -
                    "1 validation error detected. {}",
 8214         -
                    &first_validation_exception_field.message
 8215         -
                ),
 8216         -
                field_list: Some(vec![first_validation_exception_field]),
 8217         -
            };
 8218         -
            Self::ConstraintViolation(
 8219         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 8220         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 8221         -
                            )
        7116  +
        /* ServerBuilderGenerator.kt:426 */
        7117  +
        #[allow(missing_docs)] // documentation missing in model
        7118  +
                               /* ServerBuilderGenerator.kt:428 */
        7119  +
        pub(crate) fn set_member_date_time(
        7120  +
            mut self,
        7121  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
        7122  +
        ) -> Self {
        7123  +
            /* ServerBuilderGenerator.kt:429 */
        7124  +
            self.member_date_time = input.map(|v| v.into());
        7125  +
            self
        7126  +
            /* ServerBuilderGenerator.kt:428 */
 8222   7127   
        }
        7128  +
        /* ServerBuilderGenerator.kt:331 */
        7129  +
        #[allow(missing_docs)] // documentation missing in model
        7130  +
                               /* ServerBuilderGenerator.kt:343 */
        7131  +
        pub fn default_format(
        7132  +
            mut self,
        7133  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
        7134  +
        ) -> Self {
        7135  +
            /* ServerBuilderGenerator.kt:344 */
        7136  +
            self.default_format =
        7137  +
                /* ServerBuilderGenerator.kt:376 */input
        7138  +
            /* ServerBuilderGenerator.kt:344 */;
        7139  +
            self
        7140  +
            /* ServerBuilderGenerator.kt:343 */
 8223   7141   
        }
 8224         -
    /* ServerBuilderGenerator.kt:244 */
 8225         -
    impl ::std::convert::From<Builder>
 8226         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampQueryHttpDateInput>
 8227         -
    {
 8228         -
        fn from(builder: Builder) -> Self {
 8229         -
            Self::Unconstrained(builder)
        7142  +
        /* ServerBuilderGenerator.kt:426 */
        7143  +
        #[allow(missing_docs)] // documentation missing in model
        7144  +
                               /* ServerBuilderGenerator.kt:428 */
        7145  +
        pub(crate) fn set_default_format(
        7146  +
            mut self,
        7147  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
        7148  +
        ) -> Self {
        7149  +
            /* ServerBuilderGenerator.kt:429 */
        7150  +
            self.default_format = input.map(|v| v.into());
        7151  +
            self
        7152  +
            /* ServerBuilderGenerator.kt:428 */
 8230   7153   
        }
        7154  +
        /* ServerBuilderGenerator.kt:331 */
        7155  +
        #[allow(missing_docs)] // documentation missing in model
        7156  +
                               /* ServerBuilderGenerator.kt:343 */
        7157  +
        pub fn target_epoch_seconds(
        7158  +
            mut self,
        7159  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
        7160  +
        ) -> Self {
        7161  +
            /* ServerBuilderGenerator.kt:344 */
        7162  +
            self.target_epoch_seconds =
        7163  +
                /* ServerBuilderGenerator.kt:376 */input
        7164  +
            /* ServerBuilderGenerator.kt:344 */;
        7165  +
            self
        7166  +
            /* ServerBuilderGenerator.kt:343 */
 8231   7167   
        }
 8232         -
    /* ServerBuilderGenerator.kt:446 */
 8233         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampQueryHttpDateInput {
 8234         -
        type Error = ConstraintViolation;
 8235         -
 8236         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 8237         -
            builder.build()
        7168  +
        /* ServerBuilderGenerator.kt:426 */
        7169  +
        #[allow(missing_docs)] // documentation missing in model
        7170  +
                               /* ServerBuilderGenerator.kt:428 */
        7171  +
        pub(crate) fn set_target_epoch_seconds(
        7172  +
            mut self,
        7173  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
        7174  +
        ) -> Self {
        7175  +
            /* ServerBuilderGenerator.kt:429 */
        7176  +
            self.target_epoch_seconds = input.map(|v| v.into());
        7177  +
            self
        7178  +
            /* ServerBuilderGenerator.kt:428 */
 8238   7179   
        }
        7180  +
        /* ServerBuilderGenerator.kt:331 */
        7181  +
        #[allow(missing_docs)] // documentation missing in model
        7182  +
                               /* ServerBuilderGenerator.kt:343 */
        7183  +
        pub fn target_http_date(
        7184  +
            mut self,
        7185  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
        7186  +
        ) -> Self {
        7187  +
            /* ServerBuilderGenerator.kt:344 */
        7188  +
            self.target_http_date =
        7189  +
                /* ServerBuilderGenerator.kt:376 */input
        7190  +
            /* ServerBuilderGenerator.kt:344 */;
        7191  +
            self
        7192  +
            /* ServerBuilderGenerator.kt:343 */
 8239   7193   
        }
 8240         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampQueryHttpDateInput`](crate::input::MalformedTimestampQueryHttpDateInput).
 8241         -
    /* RustType.kt:534 */
 8242         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 8243         -
    /* ServerBuilderGenerator.kt:211 */
 8244         -
    pub struct Builder {
 8245         -
        /* ServerBuilderGenerator.kt:308 */
 8246         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
 8247         -
        /* ServerBuilderGenerator.kt:211 */
        7194  +
        /* ServerBuilderGenerator.kt:426 */
        7195  +
        #[allow(missing_docs)] // documentation missing in model
        7196  +
                               /* ServerBuilderGenerator.kt:428 */
        7197  +
        pub(crate) fn set_target_http_date(
        7198  +
            mut self,
        7199  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
        7200  +
        ) -> Self {
        7201  +
            /* ServerBuilderGenerator.kt:429 */
        7202  +
            self.target_http_date = input.map(|v| v.into());
        7203  +
            self
        7204  +
            /* ServerBuilderGenerator.kt:428 */
 8248   7205   
        }
 8249         -
    /* ServerBuilderGenerator.kt:215 */
 8250         -
    impl Builder {
 8251   7206   
        /* ServerBuilderGenerator.kt:331 */
 8252   7207   
        #[allow(missing_docs)] // documentation missing in model
 8253   7208   
                               /* ServerBuilderGenerator.kt:343 */
 8254         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        7209  +
        pub fn target_date_time(
        7210  +
            mut self,
        7211  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
        7212  +
        ) -> Self {
 8255   7213   
            /* ServerBuilderGenerator.kt:344 */
 8256         -
            self.timestamp =
 8257         -
                /* ServerBuilderGenerator.kt:345 */Some(
        7214  +
            self.target_date_time =
 8258   7215   
                /* ServerBuilderGenerator.kt:376 */input
 8259         -
                /* ServerBuilderGenerator.kt:345 */)
 8260   7216   
            /* ServerBuilderGenerator.kt:344 */;
 8261   7217   
            self
 8262   7218   
            /* ServerBuilderGenerator.kt:343 */
 8263   7219   
        }
 8264   7220   
        /* ServerBuilderGenerator.kt:426 */
 8265   7221   
        #[allow(missing_docs)] // documentation missing in model
 8266   7222   
                               /* ServerBuilderGenerator.kt:428 */
 8267         -
        pub(crate) fn set_timestamp(
        7223  +
        pub(crate) fn set_target_date_time(
 8268   7224   
            mut self,
 8269         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        7225  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
 8270   7226   
        ) -> Self {
 8271   7227   
            /* ServerBuilderGenerator.kt:429 */
 8272         -
            self.timestamp = Some(input.into());
        7228  +
            self.target_date_time = input.map(|v| v.into());
 8273   7229   
            self
 8274   7230   
            /* ServerBuilderGenerator.kt:428 */
 8275   7231   
        }
 8276         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampQueryHttpDateInput`](crate::input::MalformedTimestampQueryHttpDateInput).
 8277         -
        /// /* ServerBuilderGenerator.kt:260 */
 8278         -
        /// The builder fails to construct a [`MalformedTimestampQueryHttpDateInput`](crate::input::MalformedTimestampQueryHttpDateInput) if a [`ConstraintViolation`] occurs.
 8279         -
        ///
        7232  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TimestampFormatHeadersInput`](crate::input::TimestampFormatHeadersInput).
 8280   7233   
        /* ServerBuilderGenerator.kt:271 */
 8281         -
        pub fn build(
 8282         -
            self,
 8283         -
        ) -> Result<crate::input::MalformedTimestampQueryHttpDateInput, ConstraintViolation>
 8284         -
        {
        7234  +
        pub fn build(self) -> crate::input::TimestampFormatHeadersInput {
 8285   7235   
            self.build_enforcing_all_constraints()
 8286   7236   
        }
 8287   7237   
        /* ServerBuilderGenerator.kt:283 */
 8288         -
        fn build_enforcing_all_constraints(
 8289         -
            self,
 8290         -
        ) -> Result<crate::input::MalformedTimestampQueryHttpDateInput, ConstraintViolation>
 8291         -
        {
 8292         -
            /* ServerBuilderGenerator.kt:287 */
 8293         -
            Ok(
        7238  +
        fn build_enforcing_all_constraints(self) -> crate::input::TimestampFormatHeadersInput {
 8294   7239   
            /* ServerBuilderGenerator.kt:542 */
 8295         -
                crate::input::MalformedTimestampQueryHttpDateInput {
        7240  +
            crate::input::TimestampFormatHeadersInput {
 8296   7241   
                /* ServerBuilderGenerator.kt:546 */
 8297         -
                    timestamp: self
 8298         -
                        .timestamp
 8299         -
                        /* ServerBuilderGenerator.kt:569 */
 8300         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
        7242  +
                member_epoch_seconds: self.member_epoch_seconds,
        7243  +
                /* ServerBuilderGenerator.kt:546 */
        7244  +
                member_http_date: self.member_http_date,
        7245  +
                /* ServerBuilderGenerator.kt:546 */
        7246  +
                member_date_time: self.member_date_time,
        7247  +
                /* ServerBuilderGenerator.kt:546 */
        7248  +
                default_format: self.default_format,
        7249  +
                /* ServerBuilderGenerator.kt:546 */
        7250  +
                target_epoch_seconds: self.target_epoch_seconds,
        7251  +
                /* ServerBuilderGenerator.kt:546 */
        7252  +
                target_http_date: self.target_http_date,
        7253  +
                /* ServerBuilderGenerator.kt:546 */
        7254  +
                target_date_time: self.target_date_time,
 8301   7255   
                /* ServerBuilderGenerator.kt:542 */
 8302         -
                }, /* ServerBuilderGenerator.kt:287 */
 8303         -
            )
        7256  +
            }
 8304   7257   
            /* ServerBuilderGenerator.kt:283 */
 8305   7258   
        }
 8306   7259   
        /* ServerBuilderGenerator.kt:215 */
 8307   7260   
    }
 8308   7261   
 8309   7262   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 8310   7263   
}
 8311         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampQueryDefaultInput`](crate::input::MalformedTimestampQueryDefaultInput).
 8312         -
pub mod malformed_timestamp_query_default_input {
        7264  +
/// /* ServerBuilderGenerator.kt:171 */See [`MediaTypeHeaderInput`](crate::input::MediaTypeHeaderInput).
        7265  +
pub mod media_type_header_input {
 8313   7266   
 8314         -
    /* RustType.kt:534 */
 8315         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 8316         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 8317         -
    /* RustType.kt:534 */
 8318         -
    #[non_exhaustive]
 8319         -
    /* ServerBuilderConstraintViolations.kt:75 */
 8320         -
    #[allow(clippy::enum_variant_names)]
 8321         -
    pub enum ConstraintViolation {
 8322         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampQueryDefaultInput`.
 8323         -
        /* ServerBuilderConstraintViolations.kt:144 */
 8324         -
        MissingTimestamp,
 8325         -
        /* ServerBuilderConstraintViolations.kt:75 */
 8326         -
    }
 8327         -
    /* ServerBuilderConstraintViolations.kt:116 */
 8328         -
    impl ::std::fmt::Display for ConstraintViolation {
 8329         -
        /* ServerBuilderConstraintViolations.kt:117 */
 8330         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 8331         -
            /* ServerBuilderConstraintViolations.kt:118 */
 8332         -
            match self {
 8333         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampQueryDefaultInput`"),
 8334         -
            /* ServerBuilderConstraintViolations.kt:118 */}
 8335         -
            /* ServerBuilderConstraintViolations.kt:117 */
 8336         -
        }
 8337         -
        /* ServerBuilderConstraintViolations.kt:116 */
 8338         -
    }
 8339         -
    /* ServerBuilderConstraintViolations.kt:83 */
 8340         -
    impl ::std::error::Error for ConstraintViolation {}
 8341         -
    /* ServerBuilderConstraintViolations.kt:172 */
 8342         -
    impl ConstraintViolation {
 8343         -
        pub(crate) fn as_validation_exception_field(
 8344         -
            self,
 8345         -
            path: ::std::string::String,
 8346         -
        ) -> crate::model::ValidationExceptionField {
 8347         -
            match self {
 8348         -
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 8349         -
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 8350         -
                                                path: path + "/timestamp",
 8351         -
                                            },
 8352         -
        }
 8353         -
        }
 8354         -
    }
 8355         -
    /* ServerBuilderGenerator.kt:234 */
 8356         -
    impl ::std::convert::From<ConstraintViolation>
 8357         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 8358         -
    {
 8359         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
 8360         -
            let first_validation_exception_field =
 8361         -
                constraint_violation.as_validation_exception_field("".to_owned());
 8362         -
            let validation_exception = crate::error::ValidationException {
 8363         -
                message: format!(
 8364         -
                    "1 validation error detected. {}",
 8365         -
                    &first_validation_exception_field.message
 8366         -
                ),
 8367         -
                field_list: Some(vec![first_validation_exception_field]),
 8368         -
            };
 8369         -
            Self::ConstraintViolation(
 8370         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 8371         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 8372         -
                            )
 8373         -
        }
 8374         -
    }
 8375         -
    /* ServerBuilderGenerator.kt:244 */
 8376         -
    impl ::std::convert::From<Builder>
 8377         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampQueryDefaultInput>
 8378         -
    {
        7267  +
    /* ServerBuilderGenerator.kt:461 */
        7268  +
    impl ::std::convert::From<Builder> for crate::input::MediaTypeHeaderInput {
 8379   7269   
        fn from(builder: Builder) -> Self {
 8380         -
            Self::Unconstrained(builder)
 8381         -
        }
 8382         -
    }
 8383         -
    /* ServerBuilderGenerator.kt:446 */
 8384         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampQueryDefaultInput {
 8385         -
        type Error = ConstraintViolation;
 8386         -
 8387         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 8388   7270   
            builder.build()
 8389   7271   
        }
 8390   7272   
    }
 8391         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampQueryDefaultInput`](crate::input::MalformedTimestampQueryDefaultInput).
        7273  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MediaTypeHeaderInput`](crate::input::MediaTypeHeaderInput).
 8392   7274   
    /* RustType.kt:534 */
 8393   7275   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 8394   7276   
    /* ServerBuilderGenerator.kt:211 */
 8395   7277   
    pub struct Builder {
 8396   7278   
        /* ServerBuilderGenerator.kt:308 */
 8397         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
        7279  +
        pub(crate) json: ::std::option::Option<::std::string::String>,
 8398   7280   
        /* ServerBuilderGenerator.kt:211 */
 8399   7281   
    }
 8400   7282   
    /* ServerBuilderGenerator.kt:215 */
 8401   7283   
    impl Builder {
 8402   7284   
        /* ServerBuilderGenerator.kt:331 */
 8403   7285   
        #[allow(missing_docs)] // documentation missing in model
 8404   7286   
                               /* ServerBuilderGenerator.kt:343 */
 8405         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        7287  +
        pub fn json(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 8406   7288   
            /* ServerBuilderGenerator.kt:344 */
 8407         -
            self.timestamp =
 8408         -
                /* ServerBuilderGenerator.kt:345 */Some(
        7289  +
            self.json =
 8409   7290   
                /* ServerBuilderGenerator.kt:376 */input
 8410         -
                /* ServerBuilderGenerator.kt:345 */)
 8411   7291   
            /* ServerBuilderGenerator.kt:344 */;
 8412   7292   
            self
 8413   7293   
            /* ServerBuilderGenerator.kt:343 */
 8414   7294   
        }
 8415   7295   
        /* ServerBuilderGenerator.kt:426 */
 8416   7296   
        #[allow(missing_docs)] // documentation missing in model
 8417   7297   
                               /* ServerBuilderGenerator.kt:428 */
 8418         -
        pub(crate) fn set_timestamp(
        7298  +
        pub(crate) fn set_json(
 8419   7299   
            mut self,
 8420         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        7300  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
 8421   7301   
        ) -> Self {
 8422   7302   
            /* ServerBuilderGenerator.kt:429 */
 8423         -
            self.timestamp = Some(input.into());
        7303  +
            self.json = input.map(|v| v.into());
 8424   7304   
            self
 8425         -
            /* ServerBuilderGenerator.kt:428 */
 8426         -
        }
 8427         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampQueryDefaultInput`](crate::input::MalformedTimestampQueryDefaultInput).
 8428         -
        /// /* ServerBuilderGenerator.kt:260 */
 8429         -
        /// The builder fails to construct a [`MalformedTimestampQueryDefaultInput`](crate::input::MalformedTimestampQueryDefaultInput) if a [`ConstraintViolation`] occurs.
 8430         -
        ///
        7305  +
            /* ServerBuilderGenerator.kt:428 */
        7306  +
        }
        7307  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MediaTypeHeaderInput`](crate::input::MediaTypeHeaderInput).
 8431   7308   
        /* ServerBuilderGenerator.kt:271 */
 8432         -
        pub fn build(
 8433         -
            self,
 8434         -
        ) -> Result<crate::input::MalformedTimestampQueryDefaultInput, ConstraintViolation>
 8435         -
        {
        7309  +
        pub fn build(self) -> crate::input::MediaTypeHeaderInput {
 8436   7310   
            self.build_enforcing_all_constraints()
 8437   7311   
        }
 8438   7312   
        /* ServerBuilderGenerator.kt:283 */
 8439         -
        fn build_enforcing_all_constraints(
 8440         -
            self,
 8441         -
        ) -> Result<crate::input::MalformedTimestampQueryDefaultInput, ConstraintViolation>
 8442         -
        {
 8443         -
            /* ServerBuilderGenerator.kt:287 */
 8444         -
            Ok(
        7313  +
        fn build_enforcing_all_constraints(self) -> crate::input::MediaTypeHeaderInput {
 8445   7314   
            /* ServerBuilderGenerator.kt:542 */
 8446         -
                crate::input::MalformedTimestampQueryDefaultInput {
        7315  +
            crate::input::MediaTypeHeaderInput {
 8447   7316   
                /* ServerBuilderGenerator.kt:546 */
 8448         -
                    timestamp: self
 8449         -
                        .timestamp
 8450         -
                        /* ServerBuilderGenerator.kt:569 */
 8451         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
        7317  +
                json: self.json,
 8452   7318   
                /* ServerBuilderGenerator.kt:542 */
 8453         -
                }, /* ServerBuilderGenerator.kt:287 */
 8454         -
            )
        7319  +
            }
 8455   7320   
            /* ServerBuilderGenerator.kt:283 */
 8456   7321   
        }
 8457   7322   
        /* ServerBuilderGenerator.kt:215 */
 8458   7323   
    }
 8459   7324   
 8460   7325   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 8461   7326   
}
 8462         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampPathEpochInput`](crate::input::MalformedTimestampPathEpochInput).
 8463         -
pub mod malformed_timestamp_path_epoch_input {
        7327  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpRequestWithLabelsInput`](crate::input::HttpRequestWithLabelsInput).
        7328  +
pub mod http_request_with_labels_input {
 8464   7329   
 8465   7330   
    /* RustType.kt:534 */
 8466   7331   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 8467   7332   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 8468   7333   
    /* RustType.kt:534 */
 8469   7334   
    #[non_exhaustive]
 8470   7335   
    /* ServerBuilderConstraintViolations.kt:75 */
 8471   7336   
    #[allow(clippy::enum_variant_names)]
 8472   7337   
    pub enum ConstraintViolation {
 8473         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampPathEpochInput`.
        7338  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`string` was not provided but it is required when building `HttpRequestWithLabelsInput`.
        7339  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7340  +
        MissingString,
        7341  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`short` was not provided but it is required when building `HttpRequestWithLabelsInput`.
        7342  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7343  +
        MissingShort,
        7344  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`integer` was not provided but it is required when building `HttpRequestWithLabelsInput`.
        7345  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7346  +
        MissingInteger,
        7347  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`long` was not provided but it is required when building `HttpRequestWithLabelsInput`.
        7348  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7349  +
        MissingLong,
        7350  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`float` was not provided but it is required when building `HttpRequestWithLabelsInput`.
        7351  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7352  +
        MissingFloat,
        7353  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`double` was not provided but it is required when building `HttpRequestWithLabelsInput`.
        7354  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7355  +
        MissingDouble,
        7356  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`boolean` was not provided but it is required when building `HttpRequestWithLabelsInput`.
        7357  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7358  +
        MissingBoolean,
        7359  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `HttpRequestWithLabelsInput`.
 8474   7360   
        /* ServerBuilderConstraintViolations.kt:144 */
 8475   7361   
        MissingTimestamp,
 8476   7362   
        /* ServerBuilderConstraintViolations.kt:75 */
 8477   7363   
    }
 8478   7364   
    /* ServerBuilderConstraintViolations.kt:116 */
 8479   7365   
    impl ::std::fmt::Display for ConstraintViolation {
 8480   7366   
        /* ServerBuilderConstraintViolations.kt:117 */
 8481   7367   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 8482   7368   
            /* ServerBuilderConstraintViolations.kt:118 */
 8483   7369   
            match self {
 8484         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampPathEpochInput`"),
        7370  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingString => write!(f, "`string` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
        7371  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingShort => write!(f, "`short` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
        7372  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingInteger => write!(f, "`integer` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
        7373  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingLong => write!(f, "`long` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
        7374  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingFloat => write!(f, "`float` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
        7375  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingDouble => write!(f, "`double` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
        7376  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingBoolean => write!(f, "`boolean` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
        7377  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
 8485   7378   
            /* ServerBuilderConstraintViolations.kt:118 */}
 8486   7379   
            /* ServerBuilderConstraintViolations.kt:117 */
 8487   7380   
        }
 8488   7381   
        /* ServerBuilderConstraintViolations.kt:116 */
 8489   7382   
    }
 8490   7383   
    /* ServerBuilderConstraintViolations.kt:83 */
 8491   7384   
    impl ::std::error::Error for ConstraintViolation {}
 8492   7385   
    /* ServerBuilderConstraintViolations.kt:172 */
 8493   7386   
    impl ConstraintViolation {
 8494   7387   
        pub(crate) fn as_validation_exception_field(
 8495   7388   
            self,
 8496   7389   
            path: ::std::string::String,
 8497   7390   
        ) -> crate::model::ValidationExceptionField {
 8498   7391   
            match self {
        7392  +
            ConstraintViolation::MissingString => crate::model::ValidationExceptionField {
        7393  +
                                                message: format!("Value at '{}/string' failed to satisfy constraint: Member must not be null", path),
        7394  +
                                                path: path + "/string",
        7395  +
                                            },
        7396  +
            ConstraintViolation::MissingShort => crate::model::ValidationExceptionField {
        7397  +
                                                message: format!("Value at '{}/short' failed to satisfy constraint: Member must not be null", path),
        7398  +
                                                path: path + "/short",
        7399  +
                                            },
        7400  +
            ConstraintViolation::MissingInteger => crate::model::ValidationExceptionField {
        7401  +
                                                message: format!("Value at '{}/integer' failed to satisfy constraint: Member must not be null", path),
        7402  +
                                                path: path + "/integer",
        7403  +
                                            },
        7404  +
            ConstraintViolation::MissingLong => crate::model::ValidationExceptionField {
        7405  +
                                                message: format!("Value at '{}/long' failed to satisfy constraint: Member must not be null", path),
        7406  +
                                                path: path + "/long",
        7407  +
                                            },
        7408  +
            ConstraintViolation::MissingFloat => crate::model::ValidationExceptionField {
        7409  +
                                                message: format!("Value at '{}/float' failed to satisfy constraint: Member must not be null", path),
        7410  +
                                                path: path + "/float",
        7411  +
                                            },
        7412  +
            ConstraintViolation::MissingDouble => crate::model::ValidationExceptionField {
        7413  +
                                                message: format!("Value at '{}/double' failed to satisfy constraint: Member must not be null", path),
        7414  +
                                                path: path + "/double",
        7415  +
                                            },
        7416  +
            ConstraintViolation::MissingBoolean => crate::model::ValidationExceptionField {
        7417  +
                                                message: format!("Value at '{}/boolean' failed to satisfy constraint: Member must not be null", path),
        7418  +
                                                path: path + "/boolean",
        7419  +
                                            },
 8499   7420   
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 8500   7421   
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 8501   7422   
                                                path: path + "/timestamp",
 8502   7423   
                                            },
 8503   7424   
        }
 8504   7425   
        }
 8505   7426   
    }
 8506   7427   
    /* ServerBuilderGenerator.kt:234 */
 8507   7428   
    impl ::std::convert::From<ConstraintViolation>
 8508   7429   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 8509   7430   
    {
 8510   7431   
        fn from(constraint_violation: ConstraintViolation) -> Self {
 8511   7432   
            let first_validation_exception_field =
 8512   7433   
                constraint_violation.as_validation_exception_field("".to_owned());
 8513   7434   
            let validation_exception = crate::error::ValidationException {
 8514   7435   
                message: format!(
 8515   7436   
                    "1 validation error detected. {}",
 8516   7437   
                    &first_validation_exception_field.message
 8517   7438   
                ),
 8518   7439   
                field_list: Some(vec![first_validation_exception_field]),
 8519   7440   
            };
 8520   7441   
            Self::ConstraintViolation(
 8521   7442   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 8522   7443   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 8523   7444   
                            )
 8524   7445   
        }
 8525   7446   
    }
 8526   7447   
    /* ServerBuilderGenerator.kt:244 */
 8527   7448   
    impl ::std::convert::From<Builder>
 8528         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampPathEpochInput>
        7449  +
        for crate::constrained::MaybeConstrained<crate::input::HttpRequestWithLabelsInput>
 8529   7450   
    {
 8530   7451   
        fn from(builder: Builder) -> Self {
 8531   7452   
            Self::Unconstrained(builder)
 8532   7453   
        }
 8533   7454   
    }
 8534   7455   
    /* ServerBuilderGenerator.kt:446 */
 8535         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampPathEpochInput {
        7456  +
    impl ::std::convert::TryFrom<Builder> for crate::input::HttpRequestWithLabelsInput {
 8536   7457   
        type Error = ConstraintViolation;
 8537   7458   
 8538   7459   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 8539   7460   
            builder.build()
 8540   7461   
        }
 8541   7462   
    }
 8542         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampPathEpochInput`](crate::input::MalformedTimestampPathEpochInput).
        7463  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpRequestWithLabelsInput`](crate::input::HttpRequestWithLabelsInput).
 8543   7464   
    /* RustType.kt:534 */
 8544   7465   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 8545   7466   
    /* ServerBuilderGenerator.kt:211 */
 8546   7467   
    pub struct Builder {
        7468  +
        /* ServerBuilderGenerator.kt:308 */
        7469  +
        pub(crate) string: ::std::option::Option<::std::string::String>,
        7470  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) short: ::std::option::Option<i16>,
        7471  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) integer: ::std::option::Option<i32>,
        7472  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) long: ::std::option::Option<i64>,
        7473  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) float: ::std::option::Option<f32>,
        7474  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) double: ::std::option::Option<f64>,
        7475  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) boolean: ::std::option::Option<bool>,
 8547   7476   
        /* ServerBuilderGenerator.kt:308 */
 8548   7477   
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
 8549   7478   
        /* ServerBuilderGenerator.kt:211 */
 8550   7479   
    }
 8551         -
    /* ServerBuilderGenerator.kt:215 */
 8552         -
    impl Builder {
 8553         -
        /* ServerBuilderGenerator.kt:331 */
 8554         -
        #[allow(missing_docs)] // documentation missing in model
        7480  +
    /* ServerBuilderGenerator.kt:215 */
        7481  +
    impl Builder {
        7482  +
        /* ServerBuilderGenerator.kt:331 */
        7483  +
        #[allow(missing_docs)] // documentation missing in model
        7484  +
                               /* ServerBuilderGenerator.kt:343 */
        7485  +
        pub fn string(mut self, input: ::std::string::String) -> Self {
        7486  +
            /* ServerBuilderGenerator.kt:344 */
        7487  +
            self.string =
        7488  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7489  +
                    /* ServerBuilderGenerator.kt:376 */input
        7490  +
                /* ServerBuilderGenerator.kt:345 */)
        7491  +
            /* ServerBuilderGenerator.kt:344 */;
        7492  +
            self
        7493  +
            /* ServerBuilderGenerator.kt:343 */
        7494  +
        }
        7495  +
        /* ServerBuilderGenerator.kt:426 */
        7496  +
        #[allow(missing_docs)] // documentation missing in model
        7497  +
                               /* ServerBuilderGenerator.kt:428 */
        7498  +
        pub(crate) fn set_string(
        7499  +
            mut self,
        7500  +
            input: impl ::std::convert::Into<::std::string::String>,
        7501  +
        ) -> Self {
        7502  +
            /* ServerBuilderGenerator.kt:429 */
        7503  +
            self.string = Some(input.into());
        7504  +
            self
        7505  +
            /* ServerBuilderGenerator.kt:428 */
        7506  +
        }
        7507  +
        /* ServerBuilderGenerator.kt:331 */
        7508  +
        #[allow(missing_docs)] // documentation missing in model
        7509  +
                               /* ServerBuilderGenerator.kt:343 */
        7510  +
        pub fn short(mut self, input: i16) -> Self {
        7511  +
            /* ServerBuilderGenerator.kt:344 */
        7512  +
            self.short =
        7513  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7514  +
                    /* ServerBuilderGenerator.kt:376 */input
        7515  +
                /* ServerBuilderGenerator.kt:345 */)
        7516  +
            /* ServerBuilderGenerator.kt:344 */;
        7517  +
            self
        7518  +
            /* ServerBuilderGenerator.kt:343 */
        7519  +
        }
        7520  +
        /* ServerBuilderGenerator.kt:426 */
        7521  +
        #[allow(missing_docs)] // documentation missing in model
        7522  +
                               /* ServerBuilderGenerator.kt:428 */
        7523  +
        pub(crate) fn set_short(mut self, input: impl ::std::convert::Into<i16>) -> Self {
        7524  +
            /* ServerBuilderGenerator.kt:429 */
        7525  +
            self.short = Some(input.into());
        7526  +
            self
        7527  +
            /* ServerBuilderGenerator.kt:428 */
        7528  +
        }
        7529  +
        /* ServerBuilderGenerator.kt:331 */
        7530  +
        #[allow(missing_docs)] // documentation missing in model
        7531  +
                               /* ServerBuilderGenerator.kt:343 */
        7532  +
        pub fn integer(mut self, input: i32) -> Self {
        7533  +
            /* ServerBuilderGenerator.kt:344 */
        7534  +
            self.integer =
        7535  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7536  +
                    /* ServerBuilderGenerator.kt:376 */input
        7537  +
                /* ServerBuilderGenerator.kt:345 */)
        7538  +
            /* ServerBuilderGenerator.kt:344 */;
        7539  +
            self
        7540  +
            /* ServerBuilderGenerator.kt:343 */
        7541  +
        }
        7542  +
        /* ServerBuilderGenerator.kt:426 */
        7543  +
        #[allow(missing_docs)] // documentation missing in model
        7544  +
                               /* ServerBuilderGenerator.kt:428 */
        7545  +
        pub(crate) fn set_integer(mut self, input: impl ::std::convert::Into<i32>) -> Self {
        7546  +
            /* ServerBuilderGenerator.kt:429 */
        7547  +
            self.integer = Some(input.into());
        7548  +
            self
        7549  +
            /* ServerBuilderGenerator.kt:428 */
        7550  +
        }
        7551  +
        /* ServerBuilderGenerator.kt:331 */
        7552  +
        #[allow(missing_docs)] // documentation missing in model
        7553  +
                               /* ServerBuilderGenerator.kt:343 */
        7554  +
        pub fn long(mut self, input: i64) -> Self {
        7555  +
            /* ServerBuilderGenerator.kt:344 */
        7556  +
            self.long =
        7557  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7558  +
                    /* ServerBuilderGenerator.kt:376 */input
        7559  +
                /* ServerBuilderGenerator.kt:345 */)
        7560  +
            /* ServerBuilderGenerator.kt:344 */;
        7561  +
            self
        7562  +
            /* ServerBuilderGenerator.kt:343 */
        7563  +
        }
        7564  +
        /* ServerBuilderGenerator.kt:426 */
        7565  +
        #[allow(missing_docs)] // documentation missing in model
        7566  +
                               /* ServerBuilderGenerator.kt:428 */
        7567  +
        pub(crate) fn set_long(mut self, input: impl ::std::convert::Into<i64>) -> Self {
        7568  +
            /* ServerBuilderGenerator.kt:429 */
        7569  +
            self.long = Some(input.into());
        7570  +
            self
        7571  +
            /* ServerBuilderGenerator.kt:428 */
        7572  +
        }
        7573  +
        /* ServerBuilderGenerator.kt:331 */
        7574  +
        #[allow(missing_docs)] // documentation missing in model
        7575  +
                               /* ServerBuilderGenerator.kt:343 */
        7576  +
        pub fn float(mut self, input: f32) -> Self {
        7577  +
            /* ServerBuilderGenerator.kt:344 */
        7578  +
            self.float =
        7579  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7580  +
                    /* ServerBuilderGenerator.kt:376 */input
        7581  +
                /* ServerBuilderGenerator.kt:345 */)
        7582  +
            /* ServerBuilderGenerator.kt:344 */;
        7583  +
            self
        7584  +
            /* ServerBuilderGenerator.kt:343 */
        7585  +
        }
        7586  +
        /* ServerBuilderGenerator.kt:426 */
        7587  +
        #[allow(missing_docs)] // documentation missing in model
        7588  +
                               /* ServerBuilderGenerator.kt:428 */
        7589  +
        pub(crate) fn set_float(mut self, input: impl ::std::convert::Into<f32>) -> Self {
        7590  +
            /* ServerBuilderGenerator.kt:429 */
        7591  +
            self.float = Some(input.into());
        7592  +
            self
        7593  +
            /* ServerBuilderGenerator.kt:428 */
        7594  +
        }
        7595  +
        /* ServerBuilderGenerator.kt:331 */
        7596  +
        #[allow(missing_docs)] // documentation missing in model
        7597  +
                               /* ServerBuilderGenerator.kt:343 */
        7598  +
        pub fn double(mut self, input: f64) -> Self {
        7599  +
            /* ServerBuilderGenerator.kt:344 */
        7600  +
            self.double =
        7601  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7602  +
                    /* ServerBuilderGenerator.kt:376 */input
        7603  +
                /* ServerBuilderGenerator.kt:345 */)
        7604  +
            /* ServerBuilderGenerator.kt:344 */;
        7605  +
            self
        7606  +
            /* ServerBuilderGenerator.kt:343 */
        7607  +
        }
        7608  +
        /* ServerBuilderGenerator.kt:426 */
        7609  +
        #[allow(missing_docs)] // documentation missing in model
        7610  +
                               /* ServerBuilderGenerator.kt:428 */
        7611  +
        pub(crate) fn set_double(mut self, input: impl ::std::convert::Into<f64>) -> Self {
        7612  +
            /* ServerBuilderGenerator.kt:429 */
        7613  +
            self.double = Some(input.into());
        7614  +
            self
        7615  +
            /* ServerBuilderGenerator.kt:428 */
        7616  +
        }
        7617  +
        /// /* ServerBuilderGenerator.kt:331 */Serialized in the path as true or false.
        7618  +
        /* ServerBuilderGenerator.kt:343 */
        7619  +
        pub fn boolean(mut self, input: bool) -> Self {
        7620  +
            /* ServerBuilderGenerator.kt:344 */
        7621  +
            self.boolean =
        7622  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7623  +
                    /* ServerBuilderGenerator.kt:376 */input
        7624  +
                /* ServerBuilderGenerator.kt:345 */)
        7625  +
            /* ServerBuilderGenerator.kt:344 */;
        7626  +
            self
        7627  +
            /* ServerBuilderGenerator.kt:343 */
        7628  +
        }
        7629  +
        /// /* ServerBuilderGenerator.kt:426 */Serialized in the path as true or false.
        7630  +
        /* ServerBuilderGenerator.kt:428 */
        7631  +
        pub(crate) fn set_boolean(mut self, input: impl ::std::convert::Into<bool>) -> Self {
        7632  +
            /* ServerBuilderGenerator.kt:429 */
        7633  +
            self.boolean = Some(input.into());
        7634  +
            self
        7635  +
            /* ServerBuilderGenerator.kt:428 */
        7636  +
        }
        7637  +
        /// /* ServerBuilderGenerator.kt:331 */Note that this member has no format, so it's serialized as an RFC 3399 date-time.
 8555   7638   
        /* ServerBuilderGenerator.kt:343 */
 8556   7639   
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
 8557   7640   
            /* ServerBuilderGenerator.kt:344 */
 8558   7641   
            self.timestamp =
 8559   7642   
                /* ServerBuilderGenerator.kt:345 */Some(
 8560   7643   
                    /* ServerBuilderGenerator.kt:376 */input
 8561   7644   
                /* ServerBuilderGenerator.kt:345 */)
 8562   7645   
            /* ServerBuilderGenerator.kt:344 */;
 8563   7646   
            self
 8564   7647   
            /* ServerBuilderGenerator.kt:343 */
 8565   7648   
        }
 8566         -
        /* ServerBuilderGenerator.kt:426 */
 8567         -
        #[allow(missing_docs)] // documentation missing in model
        7649  +
        /// /* ServerBuilderGenerator.kt:426 */Note that this member has no format, so it's serialized as an RFC 3399 date-time.
 8568   7650   
        /* ServerBuilderGenerator.kt:428 */
 8569   7651   
        pub(crate) fn set_timestamp(
 8570   7652   
            mut self,
 8571   7653   
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
 8572   7654   
        ) -> Self {
 8573   7655   
            /* ServerBuilderGenerator.kt:429 */
 8574   7656   
            self.timestamp = Some(input.into());
 8575   7657   
            self
 8576   7658   
            /* ServerBuilderGenerator.kt:428 */
 8577   7659   
        }
 8578         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampPathEpochInput`](crate::input::MalformedTimestampPathEpochInput).
        7660  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpRequestWithLabelsInput`](crate::input::HttpRequestWithLabelsInput).
 8579   7661   
        /// /* ServerBuilderGenerator.kt:260 */
 8580         -
        /// The builder fails to construct a [`MalformedTimestampPathEpochInput`](crate::input::MalformedTimestampPathEpochInput) if a [`ConstraintViolation`] occurs.
        7662  +
        /// The builder fails to construct a [`HttpRequestWithLabelsInput`](crate::input::HttpRequestWithLabelsInput) if a [`ConstraintViolation`] occurs.
 8581   7663   
        ///
        7664  +
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
 8582   7665   
        /* ServerBuilderGenerator.kt:271 */
 8583   7666   
        pub fn build(
 8584   7667   
            self,
 8585         -
        ) -> Result<crate::input::MalformedTimestampPathEpochInput, ConstraintViolation> {
        7668  +
        ) -> Result<crate::input::HttpRequestWithLabelsInput, ConstraintViolation> {
 8586   7669   
            self.build_enforcing_all_constraints()
 8587   7670   
        }
 8588   7671   
        /* ServerBuilderGenerator.kt:283 */
 8589   7672   
        fn build_enforcing_all_constraints(
 8590   7673   
            self,
 8591         -
        ) -> Result<crate::input::MalformedTimestampPathEpochInput, ConstraintViolation> {
        7674  +
        ) -> Result<crate::input::HttpRequestWithLabelsInput, ConstraintViolation> {
 8592   7675   
            /* ServerBuilderGenerator.kt:287 */
 8593   7676   
            Ok(
 8594   7677   
                /* ServerBuilderGenerator.kt:542 */
 8595         -
                crate::input::MalformedTimestampPathEpochInput {
        7678  +
                crate::input::HttpRequestWithLabelsInput {
        7679  +
                    /* ServerBuilderGenerator.kt:546 */
        7680  +
                    string: self
        7681  +
                        .string
        7682  +
                        /* ServerBuilderGenerator.kt:569 */
        7683  +
                        .ok_or(ConstraintViolation::MissingString)?,
        7684  +
                    /* ServerBuilderGenerator.kt:546 */
        7685  +
                    short: self
        7686  +
                        .short
        7687  +
                        /* ServerBuilderGenerator.kt:569 */
        7688  +
                        .ok_or(ConstraintViolation::MissingShort)?,
        7689  +
                    /* ServerBuilderGenerator.kt:546 */
        7690  +
                    integer: self
        7691  +
                        .integer
        7692  +
                        /* ServerBuilderGenerator.kt:569 */
        7693  +
                        .ok_or(ConstraintViolation::MissingInteger)?,
        7694  +
                    /* ServerBuilderGenerator.kt:546 */
        7695  +
                    long: self
        7696  +
                        .long
        7697  +
                        /* ServerBuilderGenerator.kt:569 */
        7698  +
                        .ok_or(ConstraintViolation::MissingLong)?,
        7699  +
                    /* ServerBuilderGenerator.kt:546 */
        7700  +
                    float: self
        7701  +
                        .float
        7702  +
                        /* ServerBuilderGenerator.kt:569 */
        7703  +
                        .ok_or(ConstraintViolation::MissingFloat)?,
        7704  +
                    /* ServerBuilderGenerator.kt:546 */
        7705  +
                    double: self
        7706  +
                        .double
        7707  +
                        /* ServerBuilderGenerator.kt:569 */
        7708  +
                        .ok_or(ConstraintViolation::MissingDouble)?,
        7709  +
                    /* ServerBuilderGenerator.kt:546 */
        7710  +
                    boolean: self
        7711  +
                        .boolean
        7712  +
                        /* ServerBuilderGenerator.kt:569 */
        7713  +
                        .ok_or(ConstraintViolation::MissingBoolean)?,
 8596   7714   
                    /* ServerBuilderGenerator.kt:546 */
 8597   7715   
                    timestamp: self
 8598   7716   
                        .timestamp
 8599   7717   
                        /* ServerBuilderGenerator.kt:569 */
 8600   7718   
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
 8601   7719   
                    /* ServerBuilderGenerator.kt:542 */
 8602   7720   
                }, /* ServerBuilderGenerator.kt:287 */
 8603   7721   
            )
 8604   7722   
            /* ServerBuilderGenerator.kt:283 */
 8605   7723   
        }
 8606   7724   
        /* ServerBuilderGenerator.kt:215 */
 8607   7725   
    }
 8608   7726   
 8609   7727   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 8610   7728   
}
 8611         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampPathHttpDateInput`](crate::input::MalformedTimestampPathHttpDateInput).
 8612         -
pub mod malformed_timestamp_path_http_date_input {
        7729  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpRequestWithLabelsAndTimestampFormatInput`](crate::input::HttpRequestWithLabelsAndTimestampFormatInput).
        7730  +
pub mod http_request_with_labels_and_timestamp_format_input {
 8613   7731   
 8614   7732   
    /* RustType.kt:534 */
 8615   7733   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 8616   7734   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 8617   7735   
    /* RustType.kt:534 */
 8618   7736   
    #[non_exhaustive]
 8619   7737   
    /* ServerBuilderConstraintViolations.kt:75 */
 8620   7738   
    #[allow(clippy::enum_variant_names)]
 8621   7739   
    pub enum ConstraintViolation {
 8622         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampPathHttpDateInput`.
        7740  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`member_epoch_seconds` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
 8623   7741   
        /* ServerBuilderConstraintViolations.kt:144 */
 8624         -
        MissingTimestamp,
        7742  +
        MissingMemberEpochSeconds,
        7743  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`member_http_date` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
        7744  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7745  +
        MissingMemberHttpDate,
        7746  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`member_date_time` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
        7747  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7748  +
        MissingMemberDateTime,
        7749  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`default_format` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
        7750  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7751  +
        MissingDefaultFormat,
        7752  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`target_epoch_seconds` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
        7753  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7754  +
        MissingTargetEpochSeconds,
        7755  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`target_http_date` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
        7756  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7757  +
        MissingTargetHttpDate,
        7758  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`target_date_time` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
        7759  +
        /* ServerBuilderConstraintViolations.kt:144 */
        7760  +
        MissingTargetDateTime,
 8625   7761   
        /* ServerBuilderConstraintViolations.kt:75 */
 8626   7762   
    }
 8627   7763   
    /* ServerBuilderConstraintViolations.kt:116 */
 8628   7764   
    impl ::std::fmt::Display for ConstraintViolation {
 8629   7765   
        /* ServerBuilderConstraintViolations.kt:117 */
 8630   7766   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 8631   7767   
            /* ServerBuilderConstraintViolations.kt:118 */
 8632   7768   
            match self {
 8633         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampPathHttpDateInput`"),
        7769  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingMemberEpochSeconds => write!(f, "`member_epoch_seconds` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
        7770  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingMemberHttpDate => write!(f, "`member_http_date` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
        7771  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingMemberDateTime => write!(f, "`member_date_time` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
        7772  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingDefaultFormat => write!(f, "`default_format` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
        7773  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTargetEpochSeconds => write!(f, "`target_epoch_seconds` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
        7774  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTargetHttpDate => write!(f, "`target_http_date` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
        7775  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTargetDateTime => write!(f, "`target_date_time` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
 8634   7776   
            /* ServerBuilderConstraintViolations.kt:118 */}
 8635   7777   
            /* ServerBuilderConstraintViolations.kt:117 */
 8636   7778   
        }
 8637   7779   
        /* ServerBuilderConstraintViolations.kt:116 */
 8638   7780   
    }
 8639   7781   
    /* ServerBuilderConstraintViolations.kt:83 */
 8640   7782   
    impl ::std::error::Error for ConstraintViolation {}
 8641   7783   
    /* ServerBuilderConstraintViolations.kt:172 */
 8642   7784   
    impl ConstraintViolation {
 8643   7785   
        pub(crate) fn as_validation_exception_field(
 8644   7786   
            self,
 8645   7787   
            path: ::std::string::String,
 8646   7788   
        ) -> crate::model::ValidationExceptionField {
 8647   7789   
            match self {
 8648         -
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 8649         -
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 8650         -
                                                path: path + "/timestamp",
        7790  +
            ConstraintViolation::MissingMemberEpochSeconds => crate::model::ValidationExceptionField {
        7791  +
                                                message: format!("Value at '{}/memberEpochSeconds' failed to satisfy constraint: Member must not be null", path),
        7792  +
                                                path: path + "/memberEpochSeconds",
        7793  +
                                            },
        7794  +
            ConstraintViolation::MissingMemberHttpDate => crate::model::ValidationExceptionField {
        7795  +
                                                message: format!("Value at '{}/memberHttpDate' failed to satisfy constraint: Member must not be null", path),
        7796  +
                                                path: path + "/memberHttpDate",
        7797  +
                                            },
        7798  +
            ConstraintViolation::MissingMemberDateTime => crate::model::ValidationExceptionField {
        7799  +
                                                message: format!("Value at '{}/memberDateTime' failed to satisfy constraint: Member must not be null", path),
        7800  +
                                                path: path + "/memberDateTime",
        7801  +
                                            },
        7802  +
            ConstraintViolation::MissingDefaultFormat => crate::model::ValidationExceptionField {
        7803  +
                                                message: format!("Value at '{}/defaultFormat' failed to satisfy constraint: Member must not be null", path),
        7804  +
                                                path: path + "/defaultFormat",
        7805  +
                                            },
        7806  +
            ConstraintViolation::MissingTargetEpochSeconds => crate::model::ValidationExceptionField {
        7807  +
                                                message: format!("Value at '{}/targetEpochSeconds' failed to satisfy constraint: Member must not be null", path),
        7808  +
                                                path: path + "/targetEpochSeconds",
        7809  +
                                            },
        7810  +
            ConstraintViolation::MissingTargetHttpDate => crate::model::ValidationExceptionField {
        7811  +
                                                message: format!("Value at '{}/targetHttpDate' failed to satisfy constraint: Member must not be null", path),
        7812  +
                                                path: path + "/targetHttpDate",
        7813  +
                                            },
        7814  +
            ConstraintViolation::MissingTargetDateTime => crate::model::ValidationExceptionField {
        7815  +
                                                message: format!("Value at '{}/targetDateTime' failed to satisfy constraint: Member must not be null", path),
        7816  +
                                                path: path + "/targetDateTime",
 8651   7817   
                                            },
 8652   7818   
        }
 8653   7819   
        }
 8654   7820   
    }
 8655   7821   
    /* ServerBuilderGenerator.kt:234 */
 8656   7822   
    impl ::std::convert::From<ConstraintViolation>
 8657   7823   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 8658   7824   
    {
 8659   7825   
        fn from(constraint_violation: ConstraintViolation) -> Self {
 8660   7826   
            let first_validation_exception_field =
 8661   7827   
                constraint_violation.as_validation_exception_field("".to_owned());
 8662   7828   
            let validation_exception = crate::error::ValidationException {
 8663   7829   
                message: format!(
 8664   7830   
                    "1 validation error detected. {}",
 8665   7831   
                    &first_validation_exception_field.message
 8666   7832   
                ),
 8667   7833   
                field_list: Some(vec![first_validation_exception_field]),
 8668   7834   
            };
 8669   7835   
            Self::ConstraintViolation(
 8670   7836   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 8671   7837   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 8672   7838   
                            )
 8673   7839   
        }
 8674   7840   
    }
 8675   7841   
    /* ServerBuilderGenerator.kt:244 */
 8676   7842   
    impl ::std::convert::From<Builder>
 8677         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampPathHttpDateInput>
        7843  +
        for crate::constrained::MaybeConstrained<
        7844  +
            crate::input::HttpRequestWithLabelsAndTimestampFormatInput,
        7845  +
        >
 8678   7846   
    {
 8679   7847   
        fn from(builder: Builder) -> Self {
 8680   7848   
            Self::Unconstrained(builder)
 8681   7849   
        }
 8682   7850   
    }
 8683         -
    /* ServerBuilderGenerator.kt:446 */
 8684         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampPathHttpDateInput {
 8685         -
        type Error = ConstraintViolation;
 8686         -
 8687         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 8688         -
            builder.build()
        7851  +
    /* ServerBuilderGenerator.kt:446 */
        7852  +
    impl ::std::convert::TryFrom<Builder>
        7853  +
        for crate::input::HttpRequestWithLabelsAndTimestampFormatInput
        7854  +
    {
        7855  +
        type Error = ConstraintViolation;
        7856  +
        7857  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
        7858  +
            builder.build()
        7859  +
        }
        7860  +
    }
        7861  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpRequestWithLabelsAndTimestampFormatInput`](crate::input::HttpRequestWithLabelsAndTimestampFormatInput).
        7862  +
    /* RustType.kt:534 */
        7863  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        7864  +
    /* ServerBuilderGenerator.kt:211 */
        7865  +
    pub struct Builder {
        7866  +
        /* ServerBuilderGenerator.kt:308 */
        7867  +
        pub(crate) member_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
        7868  +
        /* ServerBuilderGenerator.kt:308 */
        7869  +
        pub(crate) member_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
        7870  +
        /* ServerBuilderGenerator.kt:308 */
        7871  +
        pub(crate) member_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
        7872  +
        /* ServerBuilderGenerator.kt:308 */
        7873  +
        pub(crate) default_format: ::std::option::Option<::aws_smithy_types::DateTime>,
        7874  +
        /* ServerBuilderGenerator.kt:308 */
        7875  +
        pub(crate) target_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
        7876  +
        /* ServerBuilderGenerator.kt:308 */
        7877  +
        pub(crate) target_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
        7878  +
        /* ServerBuilderGenerator.kt:308 */
        7879  +
        pub(crate) target_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
        7880  +
        /* ServerBuilderGenerator.kt:211 */
        7881  +
    }
        7882  +
    /* ServerBuilderGenerator.kt:215 */
        7883  +
    impl Builder {
        7884  +
        /* ServerBuilderGenerator.kt:331 */
        7885  +
        #[allow(missing_docs)] // documentation missing in model
        7886  +
                               /* ServerBuilderGenerator.kt:343 */
        7887  +
        pub fn member_epoch_seconds(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        7888  +
            /* ServerBuilderGenerator.kt:344 */
        7889  +
            self.member_epoch_seconds =
        7890  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7891  +
                    /* ServerBuilderGenerator.kt:376 */input
        7892  +
                /* ServerBuilderGenerator.kt:345 */)
        7893  +
            /* ServerBuilderGenerator.kt:344 */;
        7894  +
            self
        7895  +
            /* ServerBuilderGenerator.kt:343 */
        7896  +
        }
        7897  +
        /* ServerBuilderGenerator.kt:426 */
        7898  +
        #[allow(missing_docs)] // documentation missing in model
        7899  +
                               /* ServerBuilderGenerator.kt:428 */
        7900  +
        pub(crate) fn set_member_epoch_seconds(
        7901  +
            mut self,
        7902  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        7903  +
        ) -> Self {
        7904  +
            /* ServerBuilderGenerator.kt:429 */
        7905  +
            self.member_epoch_seconds = Some(input.into());
        7906  +
            self
        7907  +
            /* ServerBuilderGenerator.kt:428 */
        7908  +
        }
        7909  +
        /* ServerBuilderGenerator.kt:331 */
        7910  +
        #[allow(missing_docs)] // documentation missing in model
        7911  +
                               /* ServerBuilderGenerator.kt:343 */
        7912  +
        pub fn member_http_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        7913  +
            /* ServerBuilderGenerator.kt:344 */
        7914  +
            self.member_http_date =
        7915  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7916  +
                    /* ServerBuilderGenerator.kt:376 */input
        7917  +
                /* ServerBuilderGenerator.kt:345 */)
        7918  +
            /* ServerBuilderGenerator.kt:344 */;
        7919  +
            self
        7920  +
            /* ServerBuilderGenerator.kt:343 */
        7921  +
        }
        7922  +
        /* ServerBuilderGenerator.kt:426 */
        7923  +
        #[allow(missing_docs)] // documentation missing in model
        7924  +
                               /* ServerBuilderGenerator.kt:428 */
        7925  +
        pub(crate) fn set_member_http_date(
        7926  +
            mut self,
        7927  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        7928  +
        ) -> Self {
        7929  +
            /* ServerBuilderGenerator.kt:429 */
        7930  +
            self.member_http_date = Some(input.into());
        7931  +
            self
        7932  +
            /* ServerBuilderGenerator.kt:428 */
        7933  +
        }
        7934  +
        /* ServerBuilderGenerator.kt:331 */
        7935  +
        #[allow(missing_docs)] // documentation missing in model
        7936  +
                               /* ServerBuilderGenerator.kt:343 */
        7937  +
        pub fn member_date_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        7938  +
            /* ServerBuilderGenerator.kt:344 */
        7939  +
            self.member_date_time =
        7940  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7941  +
                    /* ServerBuilderGenerator.kt:376 */input
        7942  +
                /* ServerBuilderGenerator.kt:345 */)
        7943  +
            /* ServerBuilderGenerator.kt:344 */;
        7944  +
            self
        7945  +
            /* ServerBuilderGenerator.kt:343 */
        7946  +
        }
        7947  +
        /* ServerBuilderGenerator.kt:426 */
        7948  +
        #[allow(missing_docs)] // documentation missing in model
        7949  +
                               /* ServerBuilderGenerator.kt:428 */
        7950  +
        pub(crate) fn set_member_date_time(
        7951  +
            mut self,
        7952  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        7953  +
        ) -> Self {
        7954  +
            /* ServerBuilderGenerator.kt:429 */
        7955  +
            self.member_date_time = Some(input.into());
        7956  +
            self
        7957  +
            /* ServerBuilderGenerator.kt:428 */
        7958  +
        }
        7959  +
        /* ServerBuilderGenerator.kt:331 */
        7960  +
        #[allow(missing_docs)] // documentation missing in model
        7961  +
                               /* ServerBuilderGenerator.kt:343 */
        7962  +
        pub fn default_format(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        7963  +
            /* ServerBuilderGenerator.kt:344 */
        7964  +
            self.default_format =
        7965  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7966  +
                    /* ServerBuilderGenerator.kt:376 */input
        7967  +
                /* ServerBuilderGenerator.kt:345 */)
        7968  +
            /* ServerBuilderGenerator.kt:344 */;
        7969  +
            self
        7970  +
            /* ServerBuilderGenerator.kt:343 */
        7971  +
        }
        7972  +
        /* ServerBuilderGenerator.kt:426 */
        7973  +
        #[allow(missing_docs)] // documentation missing in model
        7974  +
                               /* ServerBuilderGenerator.kt:428 */
        7975  +
        pub(crate) fn set_default_format(
        7976  +
            mut self,
        7977  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        7978  +
        ) -> Self {
        7979  +
            /* ServerBuilderGenerator.kt:429 */
        7980  +
            self.default_format = Some(input.into());
        7981  +
            self
        7982  +
            /* ServerBuilderGenerator.kt:428 */
        7983  +
        }
        7984  +
        /* ServerBuilderGenerator.kt:331 */
        7985  +
        #[allow(missing_docs)] // documentation missing in model
        7986  +
                               /* ServerBuilderGenerator.kt:343 */
        7987  +
        pub fn target_epoch_seconds(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        7988  +
            /* ServerBuilderGenerator.kt:344 */
        7989  +
            self.target_epoch_seconds =
        7990  +
                /* ServerBuilderGenerator.kt:345 */Some(
        7991  +
                    /* ServerBuilderGenerator.kt:376 */input
        7992  +
                /* ServerBuilderGenerator.kt:345 */)
        7993  +
            /* ServerBuilderGenerator.kt:344 */;
        7994  +
            self
        7995  +
            /* ServerBuilderGenerator.kt:343 */
        7996  +
        }
        7997  +
        /* ServerBuilderGenerator.kt:426 */
        7998  +
        #[allow(missing_docs)] // documentation missing in model
        7999  +
                               /* ServerBuilderGenerator.kt:428 */
        8000  +
        pub(crate) fn set_target_epoch_seconds(
        8001  +
            mut self,
        8002  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        8003  +
        ) -> Self {
        8004  +
            /* ServerBuilderGenerator.kt:429 */
        8005  +
            self.target_epoch_seconds = Some(input.into());
        8006  +
            self
        8007  +
            /* ServerBuilderGenerator.kt:428 */
 8689   8008   
        }
        8009  +
        /* ServerBuilderGenerator.kt:331 */
        8010  +
        #[allow(missing_docs)] // documentation missing in model
        8011  +
                               /* ServerBuilderGenerator.kt:343 */
        8012  +
        pub fn target_http_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        8013  +
            /* ServerBuilderGenerator.kt:344 */
        8014  +
            self.target_http_date =
        8015  +
                /* ServerBuilderGenerator.kt:345 */Some(
        8016  +
                    /* ServerBuilderGenerator.kt:376 */input
        8017  +
                /* ServerBuilderGenerator.kt:345 */)
        8018  +
            /* ServerBuilderGenerator.kt:344 */;
        8019  +
            self
        8020  +
            /* ServerBuilderGenerator.kt:343 */
 8690   8021   
        }
 8691         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampPathHttpDateInput`](crate::input::MalformedTimestampPathHttpDateInput).
 8692         -
    /* RustType.kt:534 */
 8693         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 8694         -
    /* ServerBuilderGenerator.kt:211 */
 8695         -
    pub struct Builder {
 8696         -
        /* ServerBuilderGenerator.kt:308 */
 8697         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
 8698         -
        /* ServerBuilderGenerator.kt:211 */
        8022  +
        /* ServerBuilderGenerator.kt:426 */
        8023  +
        #[allow(missing_docs)] // documentation missing in model
        8024  +
                               /* ServerBuilderGenerator.kt:428 */
        8025  +
        pub(crate) fn set_target_http_date(
        8026  +
            mut self,
        8027  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        8028  +
        ) -> Self {
        8029  +
            /* ServerBuilderGenerator.kt:429 */
        8030  +
            self.target_http_date = Some(input.into());
        8031  +
            self
        8032  +
            /* ServerBuilderGenerator.kt:428 */
 8699   8033   
        }
 8700         -
    /* ServerBuilderGenerator.kt:215 */
 8701         -
    impl Builder {
 8702   8034   
        /* ServerBuilderGenerator.kt:331 */
 8703   8035   
        #[allow(missing_docs)] // documentation missing in model
 8704   8036   
                               /* ServerBuilderGenerator.kt:343 */
 8705         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        8037  +
        pub fn target_date_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
 8706   8038   
            /* ServerBuilderGenerator.kt:344 */
 8707         -
            self.timestamp =
        8039  +
            self.target_date_time =
 8708   8040   
                /* ServerBuilderGenerator.kt:345 */Some(
 8709   8041   
                    /* ServerBuilderGenerator.kt:376 */input
 8710   8042   
                /* ServerBuilderGenerator.kt:345 */)
 8711   8043   
            /* ServerBuilderGenerator.kt:344 */;
 8712   8044   
            self
 8713   8045   
            /* ServerBuilderGenerator.kt:343 */
 8714   8046   
        }
 8715   8047   
        /* ServerBuilderGenerator.kt:426 */
 8716   8048   
        #[allow(missing_docs)] // documentation missing in model
 8717   8049   
                               /* ServerBuilderGenerator.kt:428 */
 8718         -
        pub(crate) fn set_timestamp(
        8050  +
        pub(crate) fn set_target_date_time(
 8719   8051   
            mut self,
 8720   8052   
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
 8721   8053   
        ) -> Self {
 8722   8054   
            /* ServerBuilderGenerator.kt:429 */
 8723         -
            self.timestamp = Some(input.into());
        8055  +
            self.target_date_time = Some(input.into());
 8724   8056   
            self
 8725   8057   
            /* ServerBuilderGenerator.kt:428 */
 8726   8058   
        }
 8727         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampPathHttpDateInput`](crate::input::MalformedTimestampPathHttpDateInput).
        8059  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpRequestWithLabelsAndTimestampFormatInput`](crate::input::HttpRequestWithLabelsAndTimestampFormatInput).
 8728   8060   
        /// /* ServerBuilderGenerator.kt:260 */
 8729         -
        /// The builder fails to construct a [`MalformedTimestampPathHttpDateInput`](crate::input::MalformedTimestampPathHttpDateInput) if a [`ConstraintViolation`] occurs.
        8061  +
        /// The builder fails to construct a [`HttpRequestWithLabelsAndTimestampFormatInput`](crate::input::HttpRequestWithLabelsAndTimestampFormatInput) if a [`ConstraintViolation`] occurs.
 8730   8062   
        ///
        8063  +
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
 8731   8064   
        /* ServerBuilderGenerator.kt:271 */
 8732   8065   
        pub fn build(
 8733   8066   
            self,
 8734         -
        ) -> Result<crate::input::MalformedTimestampPathHttpDateInput, ConstraintViolation>
        8067  +
        ) -> Result<crate::input::HttpRequestWithLabelsAndTimestampFormatInput, ConstraintViolation>
 8735   8068   
        {
 8736   8069   
            self.build_enforcing_all_constraints()
 8737   8070   
        }
 8738   8071   
        /* ServerBuilderGenerator.kt:283 */
 8739   8072   
        fn build_enforcing_all_constraints(
 8740   8073   
            self,
 8741         -
        ) -> Result<crate::input::MalformedTimestampPathHttpDateInput, ConstraintViolation>
        8074  +
        ) -> Result<crate::input::HttpRequestWithLabelsAndTimestampFormatInput, ConstraintViolation>
 8742   8075   
        {
 8743   8076   
            /* ServerBuilderGenerator.kt:287 */
 8744   8077   
            Ok(
 8745   8078   
                /* ServerBuilderGenerator.kt:542 */
 8746         -
                crate::input::MalformedTimestampPathHttpDateInput {
        8079  +
                crate::input::HttpRequestWithLabelsAndTimestampFormatInput {
 8747   8080   
                    /* ServerBuilderGenerator.kt:546 */
 8748         -
                    timestamp: self
 8749         -
                        .timestamp
        8081  +
                    member_epoch_seconds: self
        8082  +
                        .member_epoch_seconds
 8750   8083   
                        /* ServerBuilderGenerator.kt:569 */
 8751         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
        8084  +
                        .ok_or(ConstraintViolation::MissingMemberEpochSeconds)?,
        8085  +
                    /* ServerBuilderGenerator.kt:546 */
        8086  +
                    member_http_date: self
        8087  +
                        .member_http_date
        8088  +
                        /* ServerBuilderGenerator.kt:569 */
        8089  +
                        .ok_or(ConstraintViolation::MissingMemberHttpDate)?,
        8090  +
                    /* ServerBuilderGenerator.kt:546 */
        8091  +
                    member_date_time: self
        8092  +
                        .member_date_time
        8093  +
                        /* ServerBuilderGenerator.kt:569 */
        8094  +
                        .ok_or(ConstraintViolation::MissingMemberDateTime)?,
        8095  +
                    /* ServerBuilderGenerator.kt:546 */
        8096  +
                    default_format: self
        8097  +
                        .default_format
        8098  +
                        /* ServerBuilderGenerator.kt:569 */
        8099  +
                        .ok_or(ConstraintViolation::MissingDefaultFormat)?,
        8100  +
                    /* ServerBuilderGenerator.kt:546 */
        8101  +
                    target_epoch_seconds: self
        8102  +
                        .target_epoch_seconds
        8103  +
                        /* ServerBuilderGenerator.kt:569 */
        8104  +
                        .ok_or(ConstraintViolation::MissingTargetEpochSeconds)?,
        8105  +
                    /* ServerBuilderGenerator.kt:546 */
        8106  +
                    target_http_date: self
        8107  +
                        .target_http_date
        8108  +
                        /* ServerBuilderGenerator.kt:569 */
        8109  +
                        .ok_or(ConstraintViolation::MissingTargetHttpDate)?,
        8110  +
                    /* ServerBuilderGenerator.kt:546 */
        8111  +
                    target_date_time: self
        8112  +
                        .target_date_time
        8113  +
                        /* ServerBuilderGenerator.kt:569 */
        8114  +
                        .ok_or(ConstraintViolation::MissingTargetDateTime)?,
 8752   8115   
                    /* ServerBuilderGenerator.kt:542 */
 8753   8116   
                }, /* ServerBuilderGenerator.kt:287 */
 8754   8117   
            )
 8755   8118   
            /* ServerBuilderGenerator.kt:283 */
 8756   8119   
        }
 8757   8120   
        /* ServerBuilderGenerator.kt:215 */
 8758   8121   
    }
 8759   8122   
 8760   8123   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 8761   8124   
}
 8762         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampPathDefaultInput`](crate::input::MalformedTimestampPathDefaultInput).
 8763         -
pub mod malformed_timestamp_path_default_input {
        8125  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpRequestWithGreedyLabelInPathInput`](crate::input::HttpRequestWithGreedyLabelInPathInput).
        8126  +
pub mod http_request_with_greedy_label_in_path_input {
 8764   8127   
 8765   8128   
    /* RustType.kt:534 */
 8766   8129   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 8767   8130   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 8768   8131   
    /* RustType.kt:534 */
 8769   8132   
    #[non_exhaustive]
 8770   8133   
    /* ServerBuilderConstraintViolations.kt:75 */
 8771   8134   
    #[allow(clippy::enum_variant_names)]
 8772   8135   
    pub enum ConstraintViolation {
 8773         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampPathDefaultInput`.
        8136  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`foo` was not provided but it is required when building `HttpRequestWithGreedyLabelInPathInput`.
 8774   8137   
        /* ServerBuilderConstraintViolations.kt:144 */
 8775         -
        MissingTimestamp,
        8138  +
        MissingFoo,
        8139  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`baz` was not provided but it is required when building `HttpRequestWithGreedyLabelInPathInput`.
        8140  +
        /* ServerBuilderConstraintViolations.kt:144 */
        8141  +
        MissingBaz,
 8776   8142   
        /* ServerBuilderConstraintViolations.kt:75 */
 8777   8143   
    }
 8778   8144   
    /* ServerBuilderConstraintViolations.kt:116 */
 8779   8145   
    impl ::std::fmt::Display for ConstraintViolation {
 8780   8146   
        /* ServerBuilderConstraintViolations.kt:117 */
 8781   8147   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 8782   8148   
            /* ServerBuilderConstraintViolations.kt:118 */
 8783   8149   
            match self {
 8784         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampPathDefaultInput`"),
        8150  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingFoo => write!(f, "`foo` was not provided but it is required when building `HttpRequestWithGreedyLabelInPathInput`"),
        8151  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingBaz => write!(f, "`baz` was not provided but it is required when building `HttpRequestWithGreedyLabelInPathInput`"),
 8785   8152   
            /* ServerBuilderConstraintViolations.kt:118 */}
 8786   8153   
            /* ServerBuilderConstraintViolations.kt:117 */
 8787   8154   
        }
 8788   8155   
        /* ServerBuilderConstraintViolations.kt:116 */
 8789   8156   
    }
 8790   8157   
    /* ServerBuilderConstraintViolations.kt:83 */
 8791   8158   
    impl ::std::error::Error for ConstraintViolation {}
 8792   8159   
    /* ServerBuilderConstraintViolations.kt:172 */
 8793   8160   
    impl ConstraintViolation {
 8794   8161   
        pub(crate) fn as_validation_exception_field(
 8795   8162   
            self,
 8796   8163   
            path: ::std::string::String,
 8797   8164   
        ) -> crate::model::ValidationExceptionField {
 8798   8165   
            match self {
 8799         -
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
 8800         -
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
 8801         -
                                                path: path + "/timestamp",
        8166  +
                ConstraintViolation::MissingFoo => crate::model::ValidationExceptionField {
        8167  +
                    message: format!(
        8168  +
                        "Value at '{}/foo' failed to satisfy constraint: Member must not be null",
        8169  +
                        path
        8170  +
                    ),
        8171  +
                    path: path + "/foo",
        8172  +
                },
        8173  +
                ConstraintViolation::MissingBaz => crate::model::ValidationExceptionField {
        8174  +
                    message: format!(
        8175  +
                        "Value at '{}/baz' failed to satisfy constraint: Member must not be null",
        8176  +
                        path
        8177  +
                    ),
        8178  +
                    path: path + "/baz",
 8802   8179   
                },
 8803   8180   
            }
 8804   8181   
        }
 8805   8182   
    }
 8806   8183   
    /* ServerBuilderGenerator.kt:234 */
 8807   8184   
    impl ::std::convert::From<ConstraintViolation>
 8808   8185   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 8809   8186   
    {
 8810   8187   
        fn from(constraint_violation: ConstraintViolation) -> Self {
 8811   8188   
            let first_validation_exception_field =
 8812   8189   
                constraint_violation.as_validation_exception_field("".to_owned());
 8813   8190   
            let validation_exception = crate::error::ValidationException {
 8814   8191   
                message: format!(
 8815   8192   
                    "1 validation error detected. {}",
 8816   8193   
                    &first_validation_exception_field.message
 8817   8194   
                ),
 8818   8195   
                field_list: Some(vec![first_validation_exception_field]),
 8819   8196   
            };
 8820   8197   
            Self::ConstraintViolation(
 8821   8198   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 8822   8199   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 8823   8200   
                            )
 8824   8201   
        }
 8825   8202   
    }
 8826   8203   
    /* ServerBuilderGenerator.kt:244 */
 8827   8204   
    impl ::std::convert::From<Builder>
 8828         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampPathDefaultInput>
        8205  +
        for crate::constrained::MaybeConstrained<
        8206  +
            crate::input::HttpRequestWithGreedyLabelInPathInput,
        8207  +
        >
 8829   8208   
    {
 8830   8209   
        fn from(builder: Builder) -> Self {
 8831   8210   
            Self::Unconstrained(builder)
 8832   8211   
        }
 8833   8212   
    }
 8834   8213   
    /* ServerBuilderGenerator.kt:446 */
 8835         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampPathDefaultInput {
        8214  +
    impl ::std::convert::TryFrom<Builder> for crate::input::HttpRequestWithGreedyLabelInPathInput {
 8836   8215   
        type Error = ConstraintViolation;
 8837   8216   
 8838   8217   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 8839   8218   
            builder.build()
 8840   8219   
        }
 8841   8220   
    }
 8842         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampPathDefaultInput`](crate::input::MalformedTimestampPathDefaultInput).
        8221  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpRequestWithGreedyLabelInPathInput`](crate::input::HttpRequestWithGreedyLabelInPathInput).
 8843   8222   
    /* RustType.kt:534 */
 8844   8223   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 8845   8224   
    /* ServerBuilderGenerator.kt:211 */
 8846   8225   
    pub struct Builder {
 8847   8226   
        /* ServerBuilderGenerator.kt:308 */
 8848         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
        8227  +
        pub(crate) foo: ::std::option::Option<::std::string::String>,
        8228  +
        /* ServerBuilderGenerator.kt:308 */
        8229  +
        pub(crate) baz: ::std::option::Option<::std::string::String>,
 8849   8230   
        /* ServerBuilderGenerator.kt:211 */
 8850   8231   
    }
 8851   8232   
    /* ServerBuilderGenerator.kt:215 */
 8852   8233   
    impl Builder {
 8853   8234   
        /* ServerBuilderGenerator.kt:331 */
 8854   8235   
        #[allow(missing_docs)] // documentation missing in model
 8855   8236   
                               /* ServerBuilderGenerator.kt:343 */
 8856         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
        8237  +
        pub fn foo(mut self, input: ::std::string::String) -> Self {
 8857   8238   
            /* ServerBuilderGenerator.kt:344 */
 8858         -
            self.timestamp =
        8239  +
            self.foo =
 8859   8240   
                /* ServerBuilderGenerator.kt:345 */Some(
 8860   8241   
                    /* ServerBuilderGenerator.kt:376 */input
 8861   8242   
                /* ServerBuilderGenerator.kt:345 */)
 8862   8243   
            /* ServerBuilderGenerator.kt:344 */;
 8863   8244   
            self
 8864   8245   
            /* ServerBuilderGenerator.kt:343 */
 8865   8246   
        }
 8866   8247   
        /* ServerBuilderGenerator.kt:426 */
 8867   8248   
        #[allow(missing_docs)] // documentation missing in model
 8868   8249   
                               /* ServerBuilderGenerator.kt:428 */
 8869         -
        pub(crate) fn set_timestamp(
        8250  +
        pub(crate) fn set_foo(
 8870   8251   
            mut self,
 8871         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
        8252  +
            input: impl ::std::convert::Into<::std::string::String>,
 8872   8253   
        ) -> Self {
 8873   8254   
            /* ServerBuilderGenerator.kt:429 */
 8874         -
            self.timestamp = Some(input.into());
        8255  +
            self.foo = Some(input.into());
 8875   8256   
            self
 8876   8257   
            /* ServerBuilderGenerator.kt:428 */
 8877   8258   
        }
 8878         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampPathDefaultInput`](crate::input::MalformedTimestampPathDefaultInput).
 8879         -
        /// /* ServerBuilderGenerator.kt:260 */
 8880         -
        /// The builder fails to construct a [`MalformedTimestampPathDefaultInput`](crate::input::MalformedTimestampPathDefaultInput) if a [`ConstraintViolation`] occurs.
 8881         -
        ///
 8882         -
        /* ServerBuilderGenerator.kt:271 */
 8883         -
        pub fn build(
 8884         -
            self,
 8885         -
        ) -> Result<crate::input::MalformedTimestampPathDefaultInput, ConstraintViolation> {
 8886         -
            self.build_enforcing_all_constraints()
 8887         -
        }
 8888         -
        /* ServerBuilderGenerator.kt:283 */
 8889         -
        fn build_enforcing_all_constraints(
 8890         -
            self,
 8891         -
        ) -> Result<crate::input::MalformedTimestampPathDefaultInput, ConstraintViolation> {
 8892         -
            /* ServerBuilderGenerator.kt:287 */
 8893         -
            Ok(
 8894         -
                /* ServerBuilderGenerator.kt:542 */
 8895         -
                crate::input::MalformedTimestampPathDefaultInput {
 8896         -
                    /* ServerBuilderGenerator.kt:546 */
 8897         -
                    timestamp: self
 8898         -
                        .timestamp
 8899         -
                        /* ServerBuilderGenerator.kt:569 */
 8900         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
 8901         -
                    /* ServerBuilderGenerator.kt:542 */
 8902         -
                }, /* ServerBuilderGenerator.kt:287 */
 8903         -
            )
 8904         -
            /* ServerBuilderGenerator.kt:283 */
 8905         -
        }
 8906         -
        /* ServerBuilderGenerator.kt:215 */
 8907         -
    }
 8908         -
 8909         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 8910         -
}
 8911         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedStringInput`](crate::input::MalformedStringInput).
 8912         -
pub mod malformed_string_input {
 8913         -
 8914         -
    /* ServerBuilderGenerator.kt:461 */
 8915         -
    impl ::std::convert::From<Builder> for crate::input::MalformedStringInput {
 8916         -
        fn from(builder: Builder) -> Self {
 8917         -
            builder.build()
 8918         -
        }
 8919         -
    }
 8920         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedStringInput`](crate::input::MalformedStringInput).
 8921         -
    /* RustType.kt:534 */
 8922         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 8923         -
    /* ServerBuilderGenerator.kt:211 */
 8924         -
    pub struct Builder {
 8925         -
        /* ServerBuilderGenerator.kt:308 */
 8926         -
        pub(crate) blob: ::std::option::Option<::std::string::String>,
 8927         -
        /* ServerBuilderGenerator.kt:211 */
 8928         -
    }
 8929         -
    /* ServerBuilderGenerator.kt:215 */
 8930         -
    impl Builder {
 8931   8259   
        /* ServerBuilderGenerator.kt:331 */
 8932   8260   
        #[allow(missing_docs)] // documentation missing in model
 8933   8261   
                               /* ServerBuilderGenerator.kt:343 */
 8934         -
        pub fn blob(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        8262  +
        pub fn baz(mut self, input: ::std::string::String) -> Self {
 8935   8263   
            /* ServerBuilderGenerator.kt:344 */
 8936         -
            self.blob =
        8264  +
            self.baz =
        8265  +
                /* ServerBuilderGenerator.kt:345 */Some(
 8937   8266   
                    /* ServerBuilderGenerator.kt:376 */input
        8267  +
                /* ServerBuilderGenerator.kt:345 */)
 8938   8268   
            /* ServerBuilderGenerator.kt:344 */;
 8939   8269   
            self
 8940   8270   
            /* ServerBuilderGenerator.kt:343 */
 8941   8271   
        }
 8942   8272   
        /* ServerBuilderGenerator.kt:426 */
 8943   8273   
        #[allow(missing_docs)] // documentation missing in model
 8944   8274   
                               /* ServerBuilderGenerator.kt:428 */
 8945         -
        pub(crate) fn set_blob(
        8275  +
        pub(crate) fn set_baz(
 8946   8276   
            mut self,
 8947         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
        8277  +
            input: impl ::std::convert::Into<::std::string::String>,
 8948   8278   
        ) -> Self {
 8949   8279   
            /* ServerBuilderGenerator.kt:429 */
 8950         -
            self.blob = input.map(|v| v.into());
        8280  +
            self.baz = Some(input.into());
 8951   8281   
            self
 8952   8282   
            /* ServerBuilderGenerator.kt:428 */
 8953   8283   
        }
 8954         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedStringInput`](crate::input::MalformedStringInput).
        8284  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpRequestWithGreedyLabelInPathInput`](crate::input::HttpRequestWithGreedyLabelInPathInput).
        8285  +
        /// /* ServerBuilderGenerator.kt:260 */
        8286  +
        /// The builder fails to construct a [`HttpRequestWithGreedyLabelInPathInput`](crate::input::HttpRequestWithGreedyLabelInPathInput) if a [`ConstraintViolation`] occurs.
        8287  +
        ///
        8288  +
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
 8955   8289   
        /* ServerBuilderGenerator.kt:271 */
 8956         -
        pub fn build(self) -> crate::input::MalformedStringInput {
        8290  +
        pub fn build(
        8291  +
            self,
        8292  +
        ) -> Result<crate::input::HttpRequestWithGreedyLabelInPathInput, ConstraintViolation>
        8293  +
        {
 8957   8294   
            self.build_enforcing_all_constraints()
 8958   8295   
        }
 8959   8296   
        /* ServerBuilderGenerator.kt:283 */
 8960         -
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedStringInput {
        8297  +
        fn build_enforcing_all_constraints(
        8298  +
            self,
        8299  +
        ) -> Result<crate::input::HttpRequestWithGreedyLabelInPathInput, ConstraintViolation>
        8300  +
        {
        8301  +
            /* ServerBuilderGenerator.kt:287 */
        8302  +
            Ok(
 8961   8303   
                /* ServerBuilderGenerator.kt:542 */
 8962         -
            crate::input::MalformedStringInput {
        8304  +
                crate::input::HttpRequestWithGreedyLabelInPathInput {
 8963   8305   
                    /* ServerBuilderGenerator.kt:546 */
 8964         -
                blob: self.blob,
        8306  +
                    foo: self
        8307  +
                        .foo
        8308  +
                        /* ServerBuilderGenerator.kt:569 */
        8309  +
                        .ok_or(ConstraintViolation::MissingFoo)?,
        8310  +
                    /* ServerBuilderGenerator.kt:546 */
        8311  +
                    baz: self
        8312  +
                        .baz
        8313  +
                        /* ServerBuilderGenerator.kt:569 */
        8314  +
                        .ok_or(ConstraintViolation::MissingBaz)?,
 8965   8315   
                    /* ServerBuilderGenerator.kt:542 */
 8966         -
            }
        8316  +
                }, /* ServerBuilderGenerator.kt:287 */
        8317  +
            )
 8967   8318   
            /* ServerBuilderGenerator.kt:283 */
 8968   8319   
        }
 8969   8320   
        /* ServerBuilderGenerator.kt:215 */
 8970   8321   
    }
 8971   8322   
 8972   8323   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 8973   8324   
}
 8974         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedDoubleInput`](crate::input::MalformedDoubleInput).
 8975         -
pub mod malformed_double_input {
        8325  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpRequestWithFloatLabelsInput`](crate::input::HttpRequestWithFloatLabelsInput).
        8326  +
pub mod http_request_with_float_labels_input {
 8976   8327   
 8977   8328   
    /* RustType.kt:534 */
 8978   8329   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 8979   8330   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 8980   8331   
    /* RustType.kt:534 */
 8981   8332   
    #[non_exhaustive]
 8982   8333   
    /* ServerBuilderConstraintViolations.kt:75 */
 8983   8334   
    #[allow(clippy::enum_variant_names)]
 8984   8335   
    pub enum ConstraintViolation {
 8985         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`double_in_path` was not provided but it is required when building `MalformedDoubleInput`.
        8336  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`float` was not provided but it is required when building `HttpRequestWithFloatLabelsInput`.
 8986   8337   
        /* ServerBuilderConstraintViolations.kt:144 */
 8987         -
        MissingDoubleInPath,
        8338  +
        MissingFloat,
        8339  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`double` was not provided but it is required when building `HttpRequestWithFloatLabelsInput`.
        8340  +
        /* ServerBuilderConstraintViolations.kt:144 */
        8341  +
        MissingDouble,
 8988   8342   
        /* ServerBuilderConstraintViolations.kt:75 */
 8989   8343   
    }
 8990   8344   
    /* ServerBuilderConstraintViolations.kt:116 */
 8991   8345   
    impl ::std::fmt::Display for ConstraintViolation {
 8992   8346   
        /* ServerBuilderConstraintViolations.kt:117 */
 8993   8347   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 8994   8348   
            /* ServerBuilderConstraintViolations.kt:118 */
 8995   8349   
            match self {
 8996         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingDoubleInPath => write!(f, "`double_in_path` was not provided but it is required when building `MalformedDoubleInput`"),
        8350  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingFloat => write!(f, "`float` was not provided but it is required when building `HttpRequestWithFloatLabelsInput`"),
        8351  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingDouble => write!(f, "`double` was not provided but it is required when building `HttpRequestWithFloatLabelsInput`"),
 8997   8352   
            /* ServerBuilderConstraintViolations.kt:118 */}
 8998   8353   
            /* ServerBuilderConstraintViolations.kt:117 */
 8999   8354   
        }
 9000   8355   
        /* ServerBuilderConstraintViolations.kt:116 */
 9001   8356   
    }
 9002   8357   
    /* ServerBuilderConstraintViolations.kt:83 */
 9003   8358   
    impl ::std::error::Error for ConstraintViolation {}
 9004   8359   
    /* ServerBuilderConstraintViolations.kt:172 */
 9005   8360   
    impl ConstraintViolation {
 9006   8361   
        pub(crate) fn as_validation_exception_field(
 9007   8362   
            self,
 9008   8363   
            path: ::std::string::String,
 9009   8364   
        ) -> crate::model::ValidationExceptionField {
 9010   8365   
            match self {
 9011         -
            ConstraintViolation::MissingDoubleInPath => crate::model::ValidationExceptionField {
 9012         -
                                                message: format!("Value at '{}/doubleInPath' failed to satisfy constraint: Member must not be null", path),
 9013         -
                                                path: path + "/doubleInPath",
        8366  +
            ConstraintViolation::MissingFloat => crate::model::ValidationExceptionField {
        8367  +
                                                message: format!("Value at '{}/float' failed to satisfy constraint: Member must not be null", path),
        8368  +
                                                path: path + "/float",
        8369  +
                                            },
        8370  +
            ConstraintViolation::MissingDouble => crate::model::ValidationExceptionField {
        8371  +
                                                message: format!("Value at '{}/double' failed to satisfy constraint: Member must not be null", path),
        8372  +
                                                path: path + "/double",
 9014   8373   
                                            },
 9015   8374   
        }
 9016   8375   
        }
 9017   8376   
    }
 9018   8377   
    /* ServerBuilderGenerator.kt:234 */
 9019   8378   
    impl ::std::convert::From<ConstraintViolation>
 9020   8379   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 9021   8380   
    {
 9022   8381   
        fn from(constraint_violation: ConstraintViolation) -> Self {
 9023   8382   
            let first_validation_exception_field =
 9024   8383   
                constraint_violation.as_validation_exception_field("".to_owned());
 9025   8384   
            let validation_exception = crate::error::ValidationException {
 9026   8385   
                message: format!(
 9027   8386   
                    "1 validation error detected. {}",
 9028   8387   
                    &first_validation_exception_field.message
 9029   8388   
                ),
 9030   8389   
                field_list: Some(vec![first_validation_exception_field]),
 9031   8390   
            };
 9032   8391   
            Self::ConstraintViolation(
 9033   8392   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 9034   8393   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 9035   8394   
                            )
 9036   8395   
        }
 9037   8396   
    }
 9038   8397   
    /* ServerBuilderGenerator.kt:244 */
 9039   8398   
    impl ::std::convert::From<Builder>
 9040         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedDoubleInput>
        8399  +
        for crate::constrained::MaybeConstrained<crate::input::HttpRequestWithFloatLabelsInput>
 9041   8400   
    {
 9042   8401   
        fn from(builder: Builder) -> Self {
 9043   8402   
            Self::Unconstrained(builder)
 9044   8403   
        }
 9045   8404   
    }
 9046   8405   
    /* ServerBuilderGenerator.kt:446 */
 9047         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedDoubleInput {
        8406  +
    impl ::std::convert::TryFrom<Builder> for crate::input::HttpRequestWithFloatLabelsInput {
 9048   8407   
        type Error = ConstraintViolation;
 9049   8408   
 9050   8409   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 9051   8410   
            builder.build()
 9052   8411   
        }
 9053   8412   
    }
 9054         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedDoubleInput`](crate::input::MalformedDoubleInput).
        8413  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpRequestWithFloatLabelsInput`](crate::input::HttpRequestWithFloatLabelsInput).
 9055   8414   
    /* RustType.kt:534 */
 9056   8415   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 9057   8416   
    /* ServerBuilderGenerator.kt:211 */
 9058   8417   
    pub struct Builder {
        8418  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) float: ::std::option::Option<f32>,
 9059   8419   
        /* ServerBuilderGenerator.kt:308 */
 9060         -
        pub(crate) double_in_body: ::std::option::Option<f64>,
 9061         -
        /* ServerBuilderGenerator.kt:308 */
 9062         -
        pub(crate) double_in_path: ::std::option::Option<f64>,
 9063         -
        /* ServerBuilderGenerator.kt:308 */
 9064         -
        pub(crate) double_in_query: ::std::option::Option<f64>,
 9065         -
        /* ServerBuilderGenerator.kt:308 */
 9066         -
        pub(crate) double_in_header: ::std::option::Option<f64>,
        8420  +
        pub(crate) double: ::std::option::Option<f64>,
 9067   8421   
        /* ServerBuilderGenerator.kt:211 */
 9068   8422   
    }
 9069   8423   
    /* ServerBuilderGenerator.kt:215 */
 9070   8424   
    impl Builder {
 9071   8425   
        /* ServerBuilderGenerator.kt:331 */
 9072   8426   
        #[allow(missing_docs)] // documentation missing in model
 9073   8427   
                               /* ServerBuilderGenerator.kt:343 */
 9074         -
        pub fn double_in_body(mut self, input: ::std::option::Option<f64>) -> Self {
 9075         -
            /* ServerBuilderGenerator.kt:344 */
 9076         -
            self.double_in_body =
 9077         -
                /* ServerBuilderGenerator.kt:376 */input
 9078         -
            /* ServerBuilderGenerator.kt:344 */;
 9079         -
            self
 9080         -
            /* ServerBuilderGenerator.kt:343 */
 9081         -
        }
 9082         -
        /* ServerBuilderGenerator.kt:426 */
 9083         -
        #[allow(missing_docs)] // documentation missing in model
 9084         -
                               /* ServerBuilderGenerator.kt:428 */
 9085         -
        pub(crate) fn set_double_in_body(
 9086         -
            mut self,
 9087         -
            input: Option<impl ::std::convert::Into<f64>>,
 9088         -
        ) -> Self {
 9089         -
            /* ServerBuilderGenerator.kt:429 */
 9090         -
            self.double_in_body = input.map(|v| v.into());
 9091         -
            self
 9092         -
            /* ServerBuilderGenerator.kt:428 */
 9093         -
        }
 9094         -
        /* ServerBuilderGenerator.kt:331 */
 9095         -
        #[allow(missing_docs)] // documentation missing in model
 9096         -
                               /* ServerBuilderGenerator.kt:343 */
 9097         -
        pub fn double_in_path(mut self, input: f64) -> Self {
        8428  +
        pub fn float(mut self, input: f32) -> Self {
 9098   8429   
            /* ServerBuilderGenerator.kt:344 */
 9099         -
            self.double_in_path =
        8430  +
            self.float =
 9100   8431   
                /* ServerBuilderGenerator.kt:345 */Some(
 9101   8432   
                    /* ServerBuilderGenerator.kt:376 */input
 9102   8433   
                /* ServerBuilderGenerator.kt:345 */)
 9103   8434   
            /* ServerBuilderGenerator.kt:344 */;
 9104   8435   
            self
 9105   8436   
            /* ServerBuilderGenerator.kt:343 */
 9106   8437   
        }
 9107   8438   
        /* ServerBuilderGenerator.kt:426 */
 9108   8439   
        #[allow(missing_docs)] // documentation missing in model
 9109   8440   
                               /* ServerBuilderGenerator.kt:428 */
 9110         -
        pub(crate) fn set_double_in_path(mut self, input: impl ::std::convert::Into<f64>) -> Self {
 9111         -
            /* ServerBuilderGenerator.kt:429 */
 9112         -
            self.double_in_path = Some(input.into());
 9113         -
            self
 9114         -
            /* ServerBuilderGenerator.kt:428 */
 9115         -
        }
 9116         -
        /* ServerBuilderGenerator.kt:331 */
 9117         -
        #[allow(missing_docs)] // documentation missing in model
 9118         -
                               /* ServerBuilderGenerator.kt:343 */
 9119         -
        pub fn double_in_query(mut self, input: ::std::option::Option<f64>) -> Self {
 9120         -
            /* ServerBuilderGenerator.kt:344 */
 9121         -
            self.double_in_query =
 9122         -
                /* ServerBuilderGenerator.kt:376 */input
 9123         -
            /* ServerBuilderGenerator.kt:344 */;
 9124         -
            self
 9125         -
            /* ServerBuilderGenerator.kt:343 */
 9126         -
        }
 9127         -
        /* ServerBuilderGenerator.kt:426 */
 9128         -
        #[allow(missing_docs)] // documentation missing in model
 9129         -
                               /* ServerBuilderGenerator.kt:428 */
 9130         -
        pub(crate) fn set_double_in_query(
 9131         -
            mut self,
 9132         -
            input: Option<impl ::std::convert::Into<f64>>,
 9133         -
        ) -> Self {
        8441  +
        pub(crate) fn set_float(mut self, input: impl ::std::convert::Into<f32>) -> Self {
 9134   8442   
            /* ServerBuilderGenerator.kt:429 */
 9135         -
            self.double_in_query = input.map(|v| v.into());
        8443  +
            self.float = Some(input.into());
 9136   8444   
            self
 9137   8445   
            /* ServerBuilderGenerator.kt:428 */
 9138   8446   
        }
 9139   8447   
        /* ServerBuilderGenerator.kt:331 */
 9140   8448   
        #[allow(missing_docs)] // documentation missing in model
 9141   8449   
                               /* ServerBuilderGenerator.kt:343 */
 9142         -
        pub fn double_in_header(mut self, input: ::std::option::Option<f64>) -> Self {
        8450  +
        pub fn double(mut self, input: f64) -> Self {
 9143   8451   
            /* ServerBuilderGenerator.kt:344 */
 9144         -
            self.double_in_header =
        8452  +
            self.double =
        8453  +
                /* ServerBuilderGenerator.kt:345 */Some(
 9145   8454   
                    /* ServerBuilderGenerator.kt:376 */input
        8455  +
                /* ServerBuilderGenerator.kt:345 */)
 9146   8456   
            /* ServerBuilderGenerator.kt:344 */;
 9147   8457   
            self
 9148   8458   
            /* ServerBuilderGenerator.kt:343 */
 9149   8459   
        }
 9150   8460   
        /* ServerBuilderGenerator.kt:426 */
 9151   8461   
        #[allow(missing_docs)] // documentation missing in model
 9152   8462   
                               /* ServerBuilderGenerator.kt:428 */
 9153         -
        pub(crate) fn set_double_in_header(
 9154         -
            mut self,
 9155         -
            input: Option<impl ::std::convert::Into<f64>>,
 9156         -
        ) -> Self {
        8463  +
        pub(crate) fn set_double(mut self, input: impl ::std::convert::Into<f64>) -> Self {
 9157   8464   
            /* ServerBuilderGenerator.kt:429 */
 9158         -
            self.double_in_header = input.map(|v| v.into());
        8465  +
            self.double = Some(input.into());
 9159   8466   
            self
 9160   8467   
            /* ServerBuilderGenerator.kt:428 */
 9161   8468   
        }
 9162         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedDoubleInput`](crate::input::MalformedDoubleInput).
        8469  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpRequestWithFloatLabelsInput`](crate::input::HttpRequestWithFloatLabelsInput).
 9163   8470   
        /// /* ServerBuilderGenerator.kt:260 */
 9164         -
        /// The builder fails to construct a [`MalformedDoubleInput`](crate::input::MalformedDoubleInput) if a [`ConstraintViolation`] occurs.
        8471  +
        /// The builder fails to construct a [`HttpRequestWithFloatLabelsInput`](crate::input::HttpRequestWithFloatLabelsInput) if a [`ConstraintViolation`] occurs.
 9165   8472   
        ///
        8473  +
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
 9166   8474   
        /* ServerBuilderGenerator.kt:271 */
 9167         -
        pub fn build(self) -> Result<crate::input::MalformedDoubleInput, ConstraintViolation> {
        8475  +
        pub fn build(
        8476  +
            self,
        8477  +
        ) -> Result<crate::input::HttpRequestWithFloatLabelsInput, ConstraintViolation> {
 9168   8478   
            self.build_enforcing_all_constraints()
 9169   8479   
        }
 9170   8480   
        /* ServerBuilderGenerator.kt:283 */
 9171   8481   
        fn build_enforcing_all_constraints(
 9172   8482   
            self,
 9173         -
        ) -> Result<crate::input::MalformedDoubleInput, ConstraintViolation> {
        8483  +
        ) -> Result<crate::input::HttpRequestWithFloatLabelsInput, ConstraintViolation> {
 9174   8484   
            /* ServerBuilderGenerator.kt:287 */
 9175   8485   
            Ok(
 9176   8486   
                /* ServerBuilderGenerator.kt:542 */
 9177         -
                crate::input::MalformedDoubleInput {
 9178         -
                    /* ServerBuilderGenerator.kt:546 */
 9179         -
                    double_in_body: self.double_in_body,
        8487  +
                crate::input::HttpRequestWithFloatLabelsInput {
 9180   8488   
                    /* ServerBuilderGenerator.kt:546 */
 9181         -
                    double_in_path: self
 9182         -
                        .double_in_path
        8489  +
                    float: self
        8490  +
                        .float
 9183   8491   
                        /* ServerBuilderGenerator.kt:569 */
 9184         -
                        .ok_or(ConstraintViolation::MissingDoubleInPath)?,
 9185         -
                    /* ServerBuilderGenerator.kt:546 */
 9186         -
                    double_in_query: self.double_in_query,
        8492  +
                        .ok_or(ConstraintViolation::MissingFloat)?,
 9187   8493   
                    /* ServerBuilderGenerator.kt:546 */
 9188         -
                    double_in_header: self.double_in_header,
        8494  +
                    double: self
        8495  +
                        .double
        8496  +
                        /* ServerBuilderGenerator.kt:569 */
        8497  +
                        .ok_or(ConstraintViolation::MissingDouble)?,
 9189   8498   
                    /* ServerBuilderGenerator.kt:542 */
 9190   8499   
                }, /* ServerBuilderGenerator.kt:287 */
 9191   8500   
            )
 9192   8501   
            /* ServerBuilderGenerator.kt:283 */
 9193   8502   
        }
 9194   8503   
        /* ServerBuilderGenerator.kt:215 */
 9195   8504   
    }
 9196   8505   
 9197   8506   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 9198   8507   
}
 9199         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedFloatInput`](crate::input::MalformedFloatInput).
 9200         -
pub mod malformed_float_input {
        8508  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpRequestWithRegexLiteralInput`](crate::input::HttpRequestWithRegexLiteralInput).
        8509  +
pub mod http_request_with_regex_literal_input {
 9201   8510   
 9202   8511   
    /* RustType.kt:534 */
 9203   8512   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 9204   8513   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 9205   8514   
    /* RustType.kt:534 */
 9206   8515   
    #[non_exhaustive]
 9207   8516   
    /* ServerBuilderConstraintViolations.kt:75 */
 9208   8517   
    #[allow(clippy::enum_variant_names)]
 9209   8518   
    pub enum ConstraintViolation {
 9210         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`float_in_path` was not provided but it is required when building `MalformedFloatInput`.
        8519  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`str` was not provided but it is required when building `HttpRequestWithRegexLiteralInput`.
 9211   8520   
        /* ServerBuilderConstraintViolations.kt:144 */
 9212         -
        MissingFloatInPath,
        8521  +
        MissingStr,
 9213   8522   
        /* ServerBuilderConstraintViolations.kt:75 */
 9214   8523   
    }
 9215   8524   
    /* ServerBuilderConstraintViolations.kt:116 */
 9216   8525   
    impl ::std::fmt::Display for ConstraintViolation {
 9217   8526   
        /* ServerBuilderConstraintViolations.kt:117 */
 9218   8527   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 9219   8528   
            /* ServerBuilderConstraintViolations.kt:118 */
 9220   8529   
            match self {
 9221         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingFloatInPath => write!(f, "`float_in_path` was not provided but it is required when building `MalformedFloatInput`"),
        8530  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingStr => write!(f, "`str` was not provided but it is required when building `HttpRequestWithRegexLiteralInput`"),
 9222   8531   
            /* ServerBuilderConstraintViolations.kt:118 */}
 9223   8532   
            /* ServerBuilderConstraintViolations.kt:117 */
 9224   8533   
        }
 9225   8534   
        /* ServerBuilderConstraintViolations.kt:116 */
 9226   8535   
    }
 9227   8536   
    /* ServerBuilderConstraintViolations.kt:83 */
 9228   8537   
    impl ::std::error::Error for ConstraintViolation {}
 9229   8538   
    /* ServerBuilderConstraintViolations.kt:172 */
 9230   8539   
    impl ConstraintViolation {
 9231   8540   
        pub(crate) fn as_validation_exception_field(
 9232   8541   
            self,
 9233   8542   
            path: ::std::string::String,
 9234   8543   
        ) -> crate::model::ValidationExceptionField {
 9235   8544   
            match self {
 9236         -
            ConstraintViolation::MissingFloatInPath => crate::model::ValidationExceptionField {
 9237         -
                                                message: format!("Value at '{}/floatInPath' failed to satisfy constraint: Member must not be null", path),
 9238         -
                                                path: path + "/floatInPath",
        8545  +
                ConstraintViolation::MissingStr => crate::model::ValidationExceptionField {
        8546  +
                    message: format!(
        8547  +
                        "Value at '{}/str' failed to satisfy constraint: Member must not be null",
        8548  +
                        path
        8549  +
                    ),
        8550  +
                    path: path + "/str",
 9239   8551   
                },
 9240   8552   
            }
 9241   8553   
        }
 9242   8554   
    }
 9243   8555   
    /* ServerBuilderGenerator.kt:234 */
 9244   8556   
    impl ::std::convert::From<ConstraintViolation>
 9245   8557   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 9246   8558   
    {
 9247   8559   
        fn from(constraint_violation: ConstraintViolation) -> Self {
 9248   8560   
            let first_validation_exception_field =
 9249   8561   
                constraint_violation.as_validation_exception_field("".to_owned());
 9250   8562   
            let validation_exception = crate::error::ValidationException {
 9251   8563   
                message: format!(
 9252   8564   
                    "1 validation error detected. {}",
 9253   8565   
                    &first_validation_exception_field.message
 9254   8566   
                ),
 9255   8567   
                field_list: Some(vec![first_validation_exception_field]),
 9256   8568   
            };
 9257   8569   
            Self::ConstraintViolation(
 9258   8570   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 9259   8571   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 9260   8572   
                            )
 9261   8573   
        }
 9262   8574   
    }
 9263   8575   
    /* ServerBuilderGenerator.kt:244 */
 9264   8576   
    impl ::std::convert::From<Builder>
 9265         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedFloatInput>
        8577  +
        for crate::constrained::MaybeConstrained<crate::input::HttpRequestWithRegexLiteralInput>
 9266   8578   
    {
 9267   8579   
        fn from(builder: Builder) -> Self {
 9268   8580   
            Self::Unconstrained(builder)
 9269   8581   
        }
 9270   8582   
    }
 9271   8583   
    /* ServerBuilderGenerator.kt:446 */
 9272         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedFloatInput {
        8584  +
    impl ::std::convert::TryFrom<Builder> for crate::input::HttpRequestWithRegexLiteralInput {
 9273   8585   
        type Error = ConstraintViolation;
 9274   8586   
 9275   8587   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 9276   8588   
            builder.build()
 9277   8589   
        }
 9278   8590   
    }
 9279         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedFloatInput`](crate::input::MalformedFloatInput).
        8591  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpRequestWithRegexLiteralInput`](crate::input::HttpRequestWithRegexLiteralInput).
 9280   8592   
    /* RustType.kt:534 */
 9281   8593   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 9282   8594   
    /* ServerBuilderGenerator.kt:211 */
 9283   8595   
    pub struct Builder {
 9284   8596   
        /* ServerBuilderGenerator.kt:308 */
 9285         -
        pub(crate) float_in_body: ::std::option::Option<f32>,
 9286         -
        /* ServerBuilderGenerator.kt:308 */
 9287         -
        pub(crate) float_in_path: ::std::option::Option<f32>,
 9288         -
        /* ServerBuilderGenerator.kt:308 */
 9289         -
        pub(crate) float_in_query: ::std::option::Option<f32>,
 9290         -
        /* ServerBuilderGenerator.kt:308 */
 9291         -
        pub(crate) float_in_header: ::std::option::Option<f32>,
        8597  +
        pub(crate) str: ::std::option::Option<::std::string::String>,
 9292   8598   
        /* ServerBuilderGenerator.kt:211 */
 9293   8599   
    }
 9294   8600   
    /* ServerBuilderGenerator.kt:215 */
 9295   8601   
    impl Builder {
 9296   8602   
        /* ServerBuilderGenerator.kt:331 */
 9297   8603   
        #[allow(missing_docs)] // documentation missing in model
 9298   8604   
                               /* ServerBuilderGenerator.kt:343 */
 9299         -
        pub fn float_in_body(mut self, input: ::std::option::Option<f32>) -> Self {
 9300         -
            /* ServerBuilderGenerator.kt:344 */
 9301         -
            self.float_in_body =
 9302         -
                /* ServerBuilderGenerator.kt:376 */input
 9303         -
            /* ServerBuilderGenerator.kt:344 */;
 9304         -
            self
 9305         -
            /* ServerBuilderGenerator.kt:343 */
 9306         -
        }
 9307         -
        /* ServerBuilderGenerator.kt:426 */
 9308         -
        #[allow(missing_docs)] // documentation missing in model
 9309         -
                               /* ServerBuilderGenerator.kt:428 */
 9310         -
        pub(crate) fn set_float_in_body(
 9311         -
            mut self,
 9312         -
            input: Option<impl ::std::convert::Into<f32>>,
 9313         -
        ) -> Self {
 9314         -
            /* ServerBuilderGenerator.kt:429 */
 9315         -
            self.float_in_body = input.map(|v| v.into());
 9316         -
            self
 9317         -
            /* ServerBuilderGenerator.kt:428 */
 9318         -
        }
 9319         -
        /* ServerBuilderGenerator.kt:331 */
 9320         -
        #[allow(missing_docs)] // documentation missing in model
 9321         -
                               /* ServerBuilderGenerator.kt:343 */
 9322         -
        pub fn float_in_path(mut self, input: f32) -> Self {
        8605  +
        pub fn str(mut self, input: ::std::string::String) -> Self {
 9323   8606   
            /* ServerBuilderGenerator.kt:344 */
 9324         -
            self.float_in_path =
        8607  +
            self.str =
 9325   8608   
                /* ServerBuilderGenerator.kt:345 */Some(
 9326   8609   
                    /* ServerBuilderGenerator.kt:376 */input
 9327   8610   
                /* ServerBuilderGenerator.kt:345 */)
 9328   8611   
            /* ServerBuilderGenerator.kt:344 */;
 9329   8612   
            self
 9330   8613   
            /* ServerBuilderGenerator.kt:343 */
 9331   8614   
        }
 9332   8615   
        /* ServerBuilderGenerator.kt:426 */
 9333   8616   
        #[allow(missing_docs)] // documentation missing in model
 9334   8617   
                               /* ServerBuilderGenerator.kt:428 */
 9335         -
        pub(crate) fn set_float_in_path(mut self, input: impl ::std::convert::Into<f32>) -> Self {
 9336         -
            /* ServerBuilderGenerator.kt:429 */
 9337         -
            self.float_in_path = Some(input.into());
 9338         -
            self
 9339         -
            /* ServerBuilderGenerator.kt:428 */
 9340         -
        }
 9341         -
        /* ServerBuilderGenerator.kt:331 */
 9342         -
        #[allow(missing_docs)] // documentation missing in model
 9343         -
                               /* ServerBuilderGenerator.kt:343 */
 9344         -
        pub fn float_in_query(mut self, input: ::std::option::Option<f32>) -> Self {
 9345         -
            /* ServerBuilderGenerator.kt:344 */
 9346         -
            self.float_in_query =
 9347         -
                /* ServerBuilderGenerator.kt:376 */input
 9348         -
            /* ServerBuilderGenerator.kt:344 */;
 9349         -
            self
 9350         -
            /* ServerBuilderGenerator.kt:343 */
 9351         -
        }
 9352         -
        /* ServerBuilderGenerator.kt:426 */
 9353         -
        #[allow(missing_docs)] // documentation missing in model
 9354         -
                               /* ServerBuilderGenerator.kt:428 */
 9355         -
        pub(crate) fn set_float_in_query(
 9356         -
            mut self,
 9357         -
            input: Option<impl ::std::convert::Into<f32>>,
 9358         -
        ) -> Self {
 9359         -
            /* ServerBuilderGenerator.kt:429 */
 9360         -
            self.float_in_query = input.map(|v| v.into());
 9361         -
            self
 9362         -
            /* ServerBuilderGenerator.kt:428 */
 9363         -
        }
 9364         -
        /* ServerBuilderGenerator.kt:331 */
 9365         -
        #[allow(missing_docs)] // documentation missing in model
 9366         -
                               /* ServerBuilderGenerator.kt:343 */
 9367         -
        pub fn float_in_header(mut self, input: ::std::option::Option<f32>) -> Self {
 9368         -
            /* ServerBuilderGenerator.kt:344 */
 9369         -
            self.float_in_header =
 9370         -
                /* ServerBuilderGenerator.kt:376 */input
 9371         -
            /* ServerBuilderGenerator.kt:344 */;
 9372         -
            self
 9373         -
            /* ServerBuilderGenerator.kt:343 */
 9374         -
        }
 9375         -
        /* ServerBuilderGenerator.kt:426 */
 9376         -
        #[allow(missing_docs)] // documentation missing in model
 9377         -
                               /* ServerBuilderGenerator.kt:428 */
 9378         -
        pub(crate) fn set_float_in_header(
        8618  +
        pub(crate) fn set_str(
 9379   8619   
            mut self,
 9380         -
            input: Option<impl ::std::convert::Into<f32>>,
        8620  +
            input: impl ::std::convert::Into<::std::string::String>,
 9381   8621   
        ) -> Self {
 9382   8622   
            /* ServerBuilderGenerator.kt:429 */
 9383         -
            self.float_in_header = input.map(|v| v.into());
        8623  +
            self.str = Some(input.into());
 9384   8624   
            self
 9385   8625   
            /* ServerBuilderGenerator.kt:428 */
 9386   8626   
        }
 9387         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedFloatInput`](crate::input::MalformedFloatInput).
        8627  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpRequestWithRegexLiteralInput`](crate::input::HttpRequestWithRegexLiteralInput).
 9388   8628   
        /// /* ServerBuilderGenerator.kt:260 */
 9389         -
        /// The builder fails to construct a [`MalformedFloatInput`](crate::input::MalformedFloatInput) if a [`ConstraintViolation`] occurs.
        8629  +
        /// The builder fails to construct a [`HttpRequestWithRegexLiteralInput`](crate::input::HttpRequestWithRegexLiteralInput) if a [`ConstraintViolation`] occurs.
 9390   8630   
        ///
 9391   8631   
        /* ServerBuilderGenerator.kt:271 */
 9392         -
        pub fn build(self) -> Result<crate::input::MalformedFloatInput, ConstraintViolation> {
        8632  +
        pub fn build(
        8633  +
            self,
        8634  +
        ) -> Result<crate::input::HttpRequestWithRegexLiteralInput, ConstraintViolation> {
 9393   8635   
            self.build_enforcing_all_constraints()
 9394   8636   
        }
 9395   8637   
        /* ServerBuilderGenerator.kt:283 */
 9396   8638   
        fn build_enforcing_all_constraints(
 9397   8639   
            self,
 9398         -
        ) -> Result<crate::input::MalformedFloatInput, ConstraintViolation> {
        8640  +
        ) -> Result<crate::input::HttpRequestWithRegexLiteralInput, ConstraintViolation> {
 9399   8641   
            /* ServerBuilderGenerator.kt:287 */
 9400   8642   
            Ok(
 9401   8643   
                /* ServerBuilderGenerator.kt:542 */
 9402         -
                crate::input::MalformedFloatInput {
 9403         -
                    /* ServerBuilderGenerator.kt:546 */
 9404         -
                    float_in_body: self.float_in_body,
        8644  +
                crate::input::HttpRequestWithRegexLiteralInput {
 9405   8645   
                    /* ServerBuilderGenerator.kt:546 */
 9406         -
                    float_in_path: self
 9407         -
                        .float_in_path
        8646  +
                    str: self
        8647  +
                        .str
 9408   8648   
                        /* ServerBuilderGenerator.kt:569 */
 9409         -
                        .ok_or(ConstraintViolation::MissingFloatInPath)?,
 9410         -
                    /* ServerBuilderGenerator.kt:546 */
 9411         -
                    float_in_query: self.float_in_query,
 9412         -
                    /* ServerBuilderGenerator.kt:546 */
 9413         -
                    float_in_header: self.float_in_header,
        8649  +
                        .ok_or(ConstraintViolation::MissingStr)?,
 9414   8650   
                    /* ServerBuilderGenerator.kt:542 */
 9415   8651   
                }, /* ServerBuilderGenerator.kt:287 */
 9416   8652   
            )
 9417   8653   
            /* ServerBuilderGenerator.kt:283 */
 9418   8654   
        }
 9419   8655   
        /* ServerBuilderGenerator.kt:215 */
 9420   8656   
    }
 9421   8657   
 9422   8658   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 9423   8659   
}
 9424         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedLongInput`](crate::input::MalformedLongInput).
 9425         -
pub mod malformed_long_input {
        8660  +
/// /* ServerBuilderGenerator.kt:171 */See [`AllQueryStringTypesInput`](crate::input::AllQueryStringTypesInput).
        8661  +
pub mod all_query_string_types_input {
 9426   8662   
 9427   8663   
    /* RustType.kt:534 */
 9428   8664   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 9429   8665   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 9430   8666   
    /* RustType.kt:534 */
 9431   8667   
    #[non_exhaustive]
 9432   8668   
    /* ServerBuilderConstraintViolations.kt:75 */
 9433   8669   
    #[allow(clippy::enum_variant_names)]
 9434   8670   
    pub enum ConstraintViolation {
 9435         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`long_in_path` was not provided but it is required when building `MalformedLongInput`.
 9436         -
        /* ServerBuilderConstraintViolations.kt:144 */
 9437         -
        MissingLongInPath,
        8671  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `query_string_set` when building `AllQueryStringTypesInput`.
        8672  +
        /* RustType.kt:534 */
        8673  +
        #[doc(hidden)]
        8674  +
        /* ServerBuilderConstraintViolations.kt:165 */
        8675  +
        QueryStringSet(crate::model::string_set::ConstraintViolation),
        8676  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `query_integer_set` when building `AllQueryStringTypesInput`.
        8677  +
        /* RustType.kt:534 */
        8678  +
        #[doc(hidden)]
        8679  +
        /* ServerBuilderConstraintViolations.kt:165 */
        8680  +
        QueryIntegerSet(crate::model::integer_set::ConstraintViolation),
        8681  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `query_enum` when building `AllQueryStringTypesInput`.
        8682  +
        /* RustType.kt:534 */
        8683  +
        #[doc(hidden)]
        8684  +
        /* ServerBuilderConstraintViolations.kt:165 */
        8685  +
        QueryEnum(crate::model::foo_enum::ConstraintViolation),
        8686  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `query_enum_list` when building `AllQueryStringTypesInput`.
        8687  +
        /* RustType.kt:534 */
        8688  +
        #[doc(hidden)]
        8689  +
        /* ServerBuilderConstraintViolations.kt:165 */
        8690  +
        QueryEnumList(crate::model::foo_enum_list::ConstraintViolation),
 9438   8691   
        /* ServerBuilderConstraintViolations.kt:75 */
 9439   8692   
    }
 9440   8693   
    /* ServerBuilderConstraintViolations.kt:116 */
 9441   8694   
    impl ::std::fmt::Display for ConstraintViolation {
 9442   8695   
        /* ServerBuilderConstraintViolations.kt:117 */
 9443   8696   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 9444   8697   
            /* ServerBuilderConstraintViolations.kt:118 */
 9445   8698   
            match self {
 9446         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingLongInPath => write!(f, "`long_in_path` was not provided but it is required when building `MalformedLongInput`"),
        8699  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::QueryStringSet(_) => write!(f, "constraint violation occurred building member `query_string_set` when building `AllQueryStringTypesInput`"),
        8700  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::QueryIntegerSet(_) => write!(f, "constraint violation occurred building member `query_integer_set` when building `AllQueryStringTypesInput`"),
        8701  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::QueryEnum(_) => write!(f, "constraint violation occurred building member `query_enum` when building `AllQueryStringTypesInput`"),
        8702  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::QueryEnumList(_) => write!(f, "constraint violation occurred building member `query_enum_list` when building `AllQueryStringTypesInput`"),
 9447   8703   
            /* ServerBuilderConstraintViolations.kt:118 */}
 9448   8704   
            /* ServerBuilderConstraintViolations.kt:117 */
 9449   8705   
        }
 9450   8706   
        /* ServerBuilderConstraintViolations.kt:116 */
 9451   8707   
    }
 9452   8708   
    /* ServerBuilderConstraintViolations.kt:83 */
 9453   8709   
    impl ::std::error::Error for ConstraintViolation {}
 9454   8710   
    /* ServerBuilderConstraintViolations.kt:172 */
 9455   8711   
    impl ConstraintViolation {
 9456   8712   
        pub(crate) fn as_validation_exception_field(
 9457   8713   
            self,
 9458   8714   
            path: ::std::string::String,
 9459   8715   
        ) -> crate::model::ValidationExceptionField {
 9460   8716   
            match self {
 9461         -
            ConstraintViolation::MissingLongInPath => crate::model::ValidationExceptionField {
 9462         -
                                                message: format!("Value at '{}/longInPath' failed to satisfy constraint: Member must not be null", path),
 9463         -
                                                path: path + "/longInPath",
 9464         -
                                            },
        8717  +
                ConstraintViolation::QueryStringSet(inner) => {
        8718  +
                    inner.as_validation_exception_field(path + "/queryStringSet")
        8719  +
                }
        8720  +
                ConstraintViolation::QueryIntegerSet(inner) => {
        8721  +
                    inner.as_validation_exception_field(path + "/queryIntegerSet")
        8722  +
                }
        8723  +
                ConstraintViolation::QueryEnum(inner) => {
        8724  +
                    inner.as_validation_exception_field(path + "/queryEnum")
        8725  +
                }
        8726  +
                ConstraintViolation::QueryEnumList(inner) => {
        8727  +
                    inner.as_validation_exception_field(path + "/queryEnumList")
        8728  +
                }
 9465   8729   
            }
 9466   8730   
        }
 9467   8731   
    }
 9468   8732   
    /* ServerBuilderGenerator.kt:234 */
 9469   8733   
    impl ::std::convert::From<ConstraintViolation>
 9470   8734   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 9471   8735   
    {
 9472   8736   
        fn from(constraint_violation: ConstraintViolation) -> Self {
 9473   8737   
            let first_validation_exception_field =
 9474   8738   
                constraint_violation.as_validation_exception_field("".to_owned());
 9475   8739   
            let validation_exception = crate::error::ValidationException {
 9476   8740   
                message: format!(
 9477   8741   
                    "1 validation error detected. {}",
 9478   8742   
                    &first_validation_exception_field.message
 9479   8743   
                ),
 9480   8744   
                field_list: Some(vec![first_validation_exception_field]),
 9481   8745   
            };
 9482   8746   
            Self::ConstraintViolation(
 9483   8747   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 9484   8748   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 9485   8749   
                            )
 9486   8750   
        }
 9487   8751   
    }
 9488   8752   
    /* ServerBuilderGenerator.kt:244 */
 9489   8753   
    impl ::std::convert::From<Builder>
 9490         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedLongInput>
        8754  +
        for crate::constrained::MaybeConstrained<crate::input::AllQueryStringTypesInput>
 9491   8755   
    {
 9492   8756   
        fn from(builder: Builder) -> Self {
 9493   8757   
            Self::Unconstrained(builder)
 9494   8758   
        }
 9495   8759   
    }
 9496   8760   
    /* ServerBuilderGenerator.kt:446 */
 9497         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedLongInput {
        8761  +
    impl ::std::convert::TryFrom<Builder> for crate::input::AllQueryStringTypesInput {
 9498   8762   
        type Error = ConstraintViolation;
 9499   8763   
 9500   8764   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 9501   8765   
            builder.build()
 9502   8766   
        }
 9503   8767   
    }
 9504         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedLongInput`](crate::input::MalformedLongInput).
        8768  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`AllQueryStringTypesInput`](crate::input::AllQueryStringTypesInput).
 9505   8769   
    /* RustType.kt:534 */
 9506   8770   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 9507   8771   
    /* ServerBuilderGenerator.kt:211 */
 9508   8772   
    pub struct Builder {
 9509   8773   
        /* ServerBuilderGenerator.kt:308 */
 9510         -
        pub(crate) long_in_body: ::std::option::Option<i64>,
        8774  +
        pub(crate) query_string: ::std::option::Option<::std::string::String>,
 9511   8775   
        /* ServerBuilderGenerator.kt:308 */
 9512         -
        pub(crate) long_in_path: ::std::option::Option<i64>,
        8776  +
        pub(crate) query_string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
 9513   8777   
        /* ServerBuilderGenerator.kt:308 */
 9514         -
        pub(crate) long_in_query: ::std::option::Option<i64>,
        8778  +
        pub(crate) query_string_set:
        8779  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
        8780  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) query_byte: ::std::option::Option<i8>,
 9515   8781   
        /* ServerBuilderGenerator.kt:308 */
 9516         -
        pub(crate) long_in_header: ::std::option::Option<i64>,
        8782  +
        pub(crate) query_short: ::std::option::Option<i16>,
        8783  +
        /* ServerBuilderGenerator.kt:308 */
        8784  +
        pub(crate) query_integer: ::std::option::Option<i32>,
        8785  +
        /* ServerBuilderGenerator.kt:308 */
        8786  +
        pub(crate) query_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
        8787  +
        /* ServerBuilderGenerator.kt:308 */
        8788  +
        pub(crate) query_integer_set:
        8789  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::IntegerSet>>,
        8790  +
        /* ServerBuilderGenerator.kt:308 */
        8791  +
        pub(crate) query_long: ::std::option::Option<i64>,
        8792  +
        /* ServerBuilderGenerator.kt:308 */
        8793  +
        pub(crate) query_float: ::std::option::Option<f32>,
        8794  +
        /* ServerBuilderGenerator.kt:308 */
        8795  +
        pub(crate) query_double: ::std::option::Option<f64>,
        8796  +
        /* ServerBuilderGenerator.kt:308 */
        8797  +
        pub(crate) query_double_list: ::std::option::Option<::std::vec::Vec<f64>>,
        8798  +
        /* ServerBuilderGenerator.kt:308 */
        8799  +
        pub(crate) query_boolean: ::std::option::Option<bool>,
        8800  +
        /* ServerBuilderGenerator.kt:308 */
        8801  +
        pub(crate) query_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
        8802  +
        /* ServerBuilderGenerator.kt:308 */
        8803  +
        pub(crate) query_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
        8804  +
        /* ServerBuilderGenerator.kt:308 */
        8805  +
        pub(crate) query_timestamp_list:
        8806  +
            ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
        8807  +
        /* ServerBuilderGenerator.kt:308 */
        8808  +
        pub(crate) query_enum:
        8809  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
        8810  +
        /* ServerBuilderGenerator.kt:308 */
        8811  +
        pub(crate) query_enum_list: ::std::option::Option<
        8812  +
            crate::constrained::MaybeConstrained<
        8813  +
                crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
        8814  +
            >,
        8815  +
        >,
        8816  +
        /* ServerBuilderGenerator.kt:308 */
        8817  +
        pub(crate) query_integer_enum: ::std::option::Option<i32>,
        8818  +
        /* ServerBuilderGenerator.kt:308 */
        8819  +
        pub(crate) query_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
        8820  +
        /* ServerBuilderGenerator.kt:308 */
        8821  +
        pub(crate) query_params_map_of_string_list: ::std::option::Option<
        8822  +
            ::std::collections::HashMap<
        8823  +
                ::std::string::String,
        8824  +
                ::std::vec::Vec<::std::string::String>,
        8825  +
            >,
        8826  +
        >,
 9517   8827   
        /* ServerBuilderGenerator.kt:211 */
 9518   8828   
    }
 9519         -
    /* ServerBuilderGenerator.kt:215 */
 9520         -
    impl Builder {
        8829  +
    /* ServerBuilderGenerator.kt:215 */
        8830  +
    impl Builder {
        8831  +
        /* ServerBuilderGenerator.kt:331 */
        8832  +
        #[allow(missing_docs)] // documentation missing in model
        8833  +
                               /* ServerBuilderGenerator.kt:343 */
        8834  +
        pub fn query_string(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        8835  +
            /* ServerBuilderGenerator.kt:344 */
        8836  +
            self.query_string =
        8837  +
                /* ServerBuilderGenerator.kt:376 */input
        8838  +
            /* ServerBuilderGenerator.kt:344 */;
        8839  +
            self
        8840  +
            /* ServerBuilderGenerator.kt:343 */
        8841  +
        }
        8842  +
        /* ServerBuilderGenerator.kt:426 */
        8843  +
        #[allow(missing_docs)] // documentation missing in model
        8844  +
                               /* ServerBuilderGenerator.kt:428 */
        8845  +
        pub(crate) fn set_query_string(
        8846  +
            mut self,
        8847  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
        8848  +
        ) -> Self {
        8849  +
            /* ServerBuilderGenerator.kt:429 */
        8850  +
            self.query_string = input.map(|v| v.into());
        8851  +
            self
        8852  +
            /* ServerBuilderGenerator.kt:428 */
        8853  +
        }
        8854  +
        /* ServerBuilderGenerator.kt:331 */
        8855  +
        #[allow(missing_docs)] // documentation missing in model
        8856  +
                               /* ServerBuilderGenerator.kt:343 */
        8857  +
        pub fn query_string_list(
        8858  +
            mut self,
        8859  +
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        8860  +
        ) -> Self {
        8861  +
            /* ServerBuilderGenerator.kt:344 */
        8862  +
            self.query_string_list =
        8863  +
                /* ServerBuilderGenerator.kt:376 */input
        8864  +
            /* ServerBuilderGenerator.kt:344 */;
        8865  +
            self
        8866  +
            /* ServerBuilderGenerator.kt:343 */
        8867  +
        }
        8868  +
        /* ServerBuilderGenerator.kt:426 */
        8869  +
        #[allow(missing_docs)] // documentation missing in model
        8870  +
                               /* ServerBuilderGenerator.kt:428 */
        8871  +
        pub(crate) fn set_query_string_list(
        8872  +
            mut self,
        8873  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
        8874  +
        ) -> Self {
        8875  +
            /* ServerBuilderGenerator.kt:429 */
        8876  +
            self.query_string_list = input.map(|v| v.into());
        8877  +
            self
        8878  +
            /* ServerBuilderGenerator.kt:428 */
        8879  +
        }
        8880  +
        /* ServerBuilderGenerator.kt:331 */
        8881  +
        #[allow(missing_docs)] // documentation missing in model
        8882  +
                               /* ServerBuilderGenerator.kt:343 */
        8883  +
        pub fn query_string_set(
        8884  +
            mut self,
        8885  +
            input: ::std::option::Option<crate::model::StringSet>,
        8886  +
        ) -> Self {
        8887  +
            /* ServerBuilderGenerator.kt:344 */
        8888  +
            self.query_string_set =
        8889  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
        8890  +
            /* ServerBuilderGenerator.kt:344 */;
        8891  +
            self
        8892  +
            /* ServerBuilderGenerator.kt:343 */
        8893  +
        }
        8894  +
        /* ServerBuilderGenerator.kt:426 */
        8895  +
        #[allow(missing_docs)] // documentation missing in model
        8896  +
                               /* ServerBuilderGenerator.kt:428 */
        8897  +
        pub(crate) fn set_query_string_set(
        8898  +
            mut self,
        8899  +
            input: Option<
        8900  +
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
        8901  +
            >,
        8902  +
        ) -> Self {
        8903  +
            /* ServerBuilderGenerator.kt:429 */
        8904  +
            self.query_string_set = input.map(|v| v.into());
        8905  +
            self
        8906  +
            /* ServerBuilderGenerator.kt:428 */
        8907  +
        }
        8908  +
        /* ServerBuilderGenerator.kt:331 */
        8909  +
        #[allow(missing_docs)] // documentation missing in model
        8910  +
                               /* ServerBuilderGenerator.kt:343 */
        8911  +
        pub fn query_byte(mut self, input: ::std::option::Option<i8>) -> Self {
        8912  +
            /* ServerBuilderGenerator.kt:344 */
        8913  +
            self.query_byte =
        8914  +
                /* ServerBuilderGenerator.kt:376 */input
        8915  +
            /* ServerBuilderGenerator.kt:344 */;
        8916  +
            self
        8917  +
            /* ServerBuilderGenerator.kt:343 */
        8918  +
        }
        8919  +
        /* ServerBuilderGenerator.kt:426 */
        8920  +
        #[allow(missing_docs)] // documentation missing in model
        8921  +
                               /* ServerBuilderGenerator.kt:428 */
        8922  +
        pub(crate) fn set_query_byte(
        8923  +
            mut self,
        8924  +
            input: Option<impl ::std::convert::Into<i8>>,
        8925  +
        ) -> Self {
        8926  +
            /* ServerBuilderGenerator.kt:429 */
        8927  +
            self.query_byte = input.map(|v| v.into());
        8928  +
            self
        8929  +
            /* ServerBuilderGenerator.kt:428 */
        8930  +
        }
        8931  +
        /* ServerBuilderGenerator.kt:331 */
        8932  +
        #[allow(missing_docs)] // documentation missing in model
        8933  +
                               /* ServerBuilderGenerator.kt:343 */
        8934  +
        pub fn query_short(mut self, input: ::std::option::Option<i16>) -> Self {
        8935  +
            /* ServerBuilderGenerator.kt:344 */
        8936  +
            self.query_short =
        8937  +
                /* ServerBuilderGenerator.kt:376 */input
        8938  +
            /* ServerBuilderGenerator.kt:344 */;
        8939  +
            self
        8940  +
            /* ServerBuilderGenerator.kt:343 */
        8941  +
        }
        8942  +
        /* ServerBuilderGenerator.kt:426 */
        8943  +
        #[allow(missing_docs)] // documentation missing in model
        8944  +
                               /* ServerBuilderGenerator.kt:428 */
        8945  +
        pub(crate) fn set_query_short(
        8946  +
            mut self,
        8947  +
            input: Option<impl ::std::convert::Into<i16>>,
        8948  +
        ) -> Self {
        8949  +
            /* ServerBuilderGenerator.kt:429 */
        8950  +
            self.query_short = input.map(|v| v.into());
        8951  +
            self
        8952  +
            /* ServerBuilderGenerator.kt:428 */
        8953  +
        }
 9521   8954   
        /* ServerBuilderGenerator.kt:331 */
 9522   8955   
        #[allow(missing_docs)] // documentation missing in model
 9523   8956   
                               /* ServerBuilderGenerator.kt:343 */
 9524         -
        pub fn long_in_body(mut self, input: ::std::option::Option<i64>) -> Self {
        8957  +
        pub fn query_integer(mut self, input: ::std::option::Option<i32>) -> Self {
 9525   8958   
            /* ServerBuilderGenerator.kt:344 */
 9526         -
            self.long_in_body =
        8959  +
            self.query_integer =
 9527   8960   
                /* ServerBuilderGenerator.kt:376 */input
 9528   8961   
            /* ServerBuilderGenerator.kt:344 */;
 9529   8962   
            self
 9530   8963   
            /* ServerBuilderGenerator.kt:343 */
 9531   8964   
        }
 9532   8965   
        /* ServerBuilderGenerator.kt:426 */
 9533   8966   
        #[allow(missing_docs)] // documentation missing in model
 9534   8967   
                               /* ServerBuilderGenerator.kt:428 */
 9535         -
        pub(crate) fn set_long_in_body(
        8968  +
        pub(crate) fn set_query_integer(
 9536   8969   
            mut self,
 9537         -
            input: Option<impl ::std::convert::Into<i64>>,
        8970  +
            input: Option<impl ::std::convert::Into<i32>>,
 9538   8971   
        ) -> Self {
 9539   8972   
            /* ServerBuilderGenerator.kt:429 */
 9540         -
            self.long_in_body = input.map(|v| v.into());
        8973  +
            self.query_integer = input.map(|v| v.into());
 9541   8974   
            self
 9542   8975   
            /* ServerBuilderGenerator.kt:428 */
 9543   8976   
        }
 9544   8977   
        /* ServerBuilderGenerator.kt:331 */
 9545   8978   
        #[allow(missing_docs)] // documentation missing in model
 9546   8979   
                               /* ServerBuilderGenerator.kt:343 */
 9547         -
        pub fn long_in_path(mut self, input: i64) -> Self {
        8980  +
        pub fn query_integer_list(
        8981  +
            mut self,
        8982  +
            input: ::std::option::Option<::std::vec::Vec<i32>>,
        8983  +
        ) -> Self {
 9548   8984   
            /* ServerBuilderGenerator.kt:344 */
 9549         -
            self.long_in_path =
 9550         -
                /* ServerBuilderGenerator.kt:345 */Some(
        8985  +
            self.query_integer_list =
 9551   8986   
                /* ServerBuilderGenerator.kt:376 */input
 9552         -
                /* ServerBuilderGenerator.kt:345 */)
 9553   8987   
            /* ServerBuilderGenerator.kt:344 */;
 9554   8988   
            self
 9555   8989   
            /* ServerBuilderGenerator.kt:343 */
 9556   8990   
        }
 9557   8991   
        /* ServerBuilderGenerator.kt:426 */
 9558   8992   
        #[allow(missing_docs)] // documentation missing in model
 9559   8993   
                               /* ServerBuilderGenerator.kt:428 */
 9560         -
        pub(crate) fn set_long_in_path(mut self, input: impl ::std::convert::Into<i64>) -> Self {
        8994  +
        pub(crate) fn set_query_integer_list(
        8995  +
            mut self,
        8996  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
        8997  +
        ) -> Self {
 9561   8998   
            /* ServerBuilderGenerator.kt:429 */
 9562         -
            self.long_in_path = Some(input.into());
        8999  +
            self.query_integer_list = input.map(|v| v.into());
 9563   9000   
            self
 9564   9001   
            /* ServerBuilderGenerator.kt:428 */
 9565   9002   
        }
 9566   9003   
        /* ServerBuilderGenerator.kt:331 */
 9567   9004   
        #[allow(missing_docs)] // documentation missing in model
 9568   9005   
                               /* ServerBuilderGenerator.kt:343 */
 9569         -
        pub fn long_in_query(mut self, input: ::std::option::Option<i64>) -> Self {
        9006  +
        pub fn query_integer_set(
        9007  +
            mut self,
        9008  +
            input: ::std::option::Option<crate::model::IntegerSet>,
        9009  +
        ) -> Self {
 9570   9010   
            /* ServerBuilderGenerator.kt:344 */
 9571         -
            self.long_in_query =
 9572         -
                /* ServerBuilderGenerator.kt:376 */input
        9011  +
            self.query_integer_set =
        9012  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
 9573   9013   
            /* ServerBuilderGenerator.kt:344 */;
 9574   9014   
            self
 9575   9015   
            /* ServerBuilderGenerator.kt:343 */
 9576   9016   
        }
 9577   9017   
        /* ServerBuilderGenerator.kt:426 */
 9578   9018   
        #[allow(missing_docs)] // documentation missing in model
 9579   9019   
                               /* ServerBuilderGenerator.kt:428 */
 9580         -
        pub(crate) fn set_long_in_query(
        9020  +
        pub(crate) fn set_query_integer_set(
 9581   9021   
            mut self,
 9582         -
            input: Option<impl ::std::convert::Into<i64>>,
        9022  +
            input: Option<
        9023  +
                impl ::std::convert::Into<
        9024  +
                    crate::constrained::MaybeConstrained<crate::model::IntegerSet>,
        9025  +
                >,
        9026  +
            >,
 9583   9027   
        ) -> Self {
 9584   9028   
            /* ServerBuilderGenerator.kt:429 */
 9585         -
            self.long_in_query = input.map(|v| v.into());
        9029  +
            self.query_integer_set = input.map(|v| v.into());
 9586   9030   
            self
 9587   9031   
            /* ServerBuilderGenerator.kt:428 */
 9588   9032   
        }
 9589   9033   
        /* ServerBuilderGenerator.kt:331 */
 9590   9034   
        #[allow(missing_docs)] // documentation missing in model
 9591   9035   
                               /* ServerBuilderGenerator.kt:343 */
 9592         -
        pub fn long_in_header(mut self, input: ::std::option::Option<i64>) -> Self {
        9036  +
        pub fn query_long(mut self, input: ::std::option::Option<i64>) -> Self {
 9593   9037   
            /* ServerBuilderGenerator.kt:344 */
 9594         -
            self.long_in_header =
        9038  +
            self.query_long =
 9595   9039   
                /* ServerBuilderGenerator.kt:376 */input
 9596   9040   
            /* ServerBuilderGenerator.kt:344 */;
 9597   9041   
            self
 9598   9042   
            /* ServerBuilderGenerator.kt:343 */
 9599   9043   
        }
 9600   9044   
        /* ServerBuilderGenerator.kt:426 */
 9601   9045   
        #[allow(missing_docs)] // documentation missing in model
 9602   9046   
                               /* ServerBuilderGenerator.kt:428 */
 9603         -
        pub(crate) fn set_long_in_header(
        9047  +
        pub(crate) fn set_query_long(
 9604   9048   
            mut self,
 9605   9049   
            input: Option<impl ::std::convert::Into<i64>>,
 9606   9050   
        ) -> Self {
 9607   9051   
            /* ServerBuilderGenerator.kt:429 */
 9608         -
            self.long_in_header = input.map(|v| v.into());
        9052  +
            self.query_long = input.map(|v| v.into());
 9609   9053   
            self
 9610   9054   
            /* ServerBuilderGenerator.kt:428 */
 9611   9055   
        }
 9612         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedLongInput`](crate::input::MalformedLongInput).
 9613         -
        /// /* ServerBuilderGenerator.kt:260 */
 9614         -
        /// The builder fails to construct a [`MalformedLongInput`](crate::input::MalformedLongInput) if a [`ConstraintViolation`] occurs.
 9615         -
        ///
 9616         -
        /* ServerBuilderGenerator.kt:271 */
 9617         -
        pub fn build(self) -> Result<crate::input::MalformedLongInput, ConstraintViolation> {
 9618         -
            self.build_enforcing_all_constraints()
        9056  +
        /* ServerBuilderGenerator.kt:331 */
        9057  +
        #[allow(missing_docs)] // documentation missing in model
        9058  +
                               /* ServerBuilderGenerator.kt:343 */
        9059  +
        pub fn query_float(mut self, input: ::std::option::Option<f32>) -> Self {
        9060  +
            /* ServerBuilderGenerator.kt:344 */
        9061  +
            self.query_float =
        9062  +
                /* ServerBuilderGenerator.kt:376 */input
        9063  +
            /* ServerBuilderGenerator.kt:344 */;
        9064  +
            self
        9065  +
            /* ServerBuilderGenerator.kt:343 */
 9619   9066   
        }
 9620         -
        /* ServerBuilderGenerator.kt:283 */
 9621         -
        fn build_enforcing_all_constraints(
 9622         -
            self,
 9623         -
        ) -> Result<crate::input::MalformedLongInput, ConstraintViolation> {
 9624         -
            /* ServerBuilderGenerator.kt:287 */
 9625         -
            Ok(
 9626         -
                /* ServerBuilderGenerator.kt:542 */
 9627         -
                crate::input::MalformedLongInput {
 9628         -
                    /* ServerBuilderGenerator.kt:546 */
 9629         -
                    long_in_body: self.long_in_body,
 9630         -
                    /* ServerBuilderGenerator.kt:546 */
 9631         -
                    long_in_path: self
 9632         -
                        .long_in_path
 9633         -
                        /* ServerBuilderGenerator.kt:569 */
 9634         -
                        .ok_or(ConstraintViolation::MissingLongInPath)?,
 9635         -
                    /* ServerBuilderGenerator.kt:546 */
 9636         -
                    long_in_query: self.long_in_query,
 9637         -
                    /* ServerBuilderGenerator.kt:546 */
 9638         -
                    long_in_header: self.long_in_header,
 9639         -
                    /* ServerBuilderGenerator.kt:542 */
 9640         -
                }, /* ServerBuilderGenerator.kt:287 */
 9641         -
            )
 9642         -
            /* ServerBuilderGenerator.kt:283 */
        9067  +
        /* ServerBuilderGenerator.kt:426 */
        9068  +
        #[allow(missing_docs)] // documentation missing in model
        9069  +
                               /* ServerBuilderGenerator.kt:428 */
        9070  +
        pub(crate) fn set_query_float(
        9071  +
            mut self,
        9072  +
            input: Option<impl ::std::convert::Into<f32>>,
        9073  +
        ) -> Self {
        9074  +
            /* ServerBuilderGenerator.kt:429 */
        9075  +
            self.query_float = input.map(|v| v.into());
        9076  +
            self
        9077  +
            /* ServerBuilderGenerator.kt:428 */
 9643   9078   
        }
 9644         -
        /* ServerBuilderGenerator.kt:215 */
        9079  +
        /* ServerBuilderGenerator.kt:331 */
        9080  +
        #[allow(missing_docs)] // documentation missing in model
        9081  +
                               /* ServerBuilderGenerator.kt:343 */
        9082  +
        pub fn query_double(mut self, input: ::std::option::Option<f64>) -> Self {
        9083  +
            /* ServerBuilderGenerator.kt:344 */
        9084  +
            self.query_double =
        9085  +
                /* ServerBuilderGenerator.kt:376 */input
        9086  +
            /* ServerBuilderGenerator.kt:344 */;
        9087  +
            self
        9088  +
            /* ServerBuilderGenerator.kt:343 */
 9645   9089   
        }
 9646         -
 9647         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 9648         -
}
 9649         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedShortInput`](crate::input::MalformedShortInput).
 9650         -
pub mod malformed_short_input {
 9651         -
 9652         -
    /* RustType.kt:534 */
 9653         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 9654         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 9655         -
    /* RustType.kt:534 */
 9656         -
    #[non_exhaustive]
 9657         -
    /* ServerBuilderConstraintViolations.kt:75 */
 9658         -
    #[allow(clippy::enum_variant_names)]
 9659         -
    pub enum ConstraintViolation {
 9660         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`short_in_path` was not provided but it is required when building `MalformedShortInput`.
 9661         -
        /* ServerBuilderConstraintViolations.kt:144 */
 9662         -
        MissingShortInPath,
 9663         -
        /* ServerBuilderConstraintViolations.kt:75 */
        9090  +
        /* ServerBuilderGenerator.kt:426 */
        9091  +
        #[allow(missing_docs)] // documentation missing in model
        9092  +
                               /* ServerBuilderGenerator.kt:428 */
        9093  +
        pub(crate) fn set_query_double(
        9094  +
            mut self,
        9095  +
            input: Option<impl ::std::convert::Into<f64>>,
        9096  +
        ) -> Self {
        9097  +
            /* ServerBuilderGenerator.kt:429 */
        9098  +
            self.query_double = input.map(|v| v.into());
        9099  +
            self
        9100  +
            /* ServerBuilderGenerator.kt:428 */
 9664   9101   
        }
 9665         -
    /* ServerBuilderConstraintViolations.kt:116 */
 9666         -
    impl ::std::fmt::Display for ConstraintViolation {
 9667         -
        /* ServerBuilderConstraintViolations.kt:117 */
 9668         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 9669         -
            /* ServerBuilderConstraintViolations.kt:118 */
 9670         -
            match self {
 9671         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingShortInPath => write!(f, "`short_in_path` was not provided but it is required when building `MalformedShortInput`"),
 9672         -
            /* ServerBuilderConstraintViolations.kt:118 */}
 9673         -
            /* ServerBuilderConstraintViolations.kt:117 */
        9102  +
        /* ServerBuilderGenerator.kt:331 */
        9103  +
        #[allow(missing_docs)] // documentation missing in model
        9104  +
                               /* ServerBuilderGenerator.kt:343 */
        9105  +
        pub fn query_double_list(
        9106  +
            mut self,
        9107  +
            input: ::std::option::Option<::std::vec::Vec<f64>>,
        9108  +
        ) -> Self {
        9109  +
            /* ServerBuilderGenerator.kt:344 */
        9110  +
            self.query_double_list =
        9111  +
                /* ServerBuilderGenerator.kt:376 */input
        9112  +
            /* ServerBuilderGenerator.kt:344 */;
        9113  +
            self
        9114  +
            /* ServerBuilderGenerator.kt:343 */
 9674   9115   
        }
 9675         -
        /* ServerBuilderConstraintViolations.kt:116 */
        9116  +
        /* ServerBuilderGenerator.kt:426 */
        9117  +
        #[allow(missing_docs)] // documentation missing in model
        9118  +
                               /* ServerBuilderGenerator.kt:428 */
        9119  +
        pub(crate) fn set_query_double_list(
        9120  +
            mut self,
        9121  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<f64>>>,
        9122  +
        ) -> Self {
        9123  +
            /* ServerBuilderGenerator.kt:429 */
        9124  +
            self.query_double_list = input.map(|v| v.into());
        9125  +
            self
        9126  +
            /* ServerBuilderGenerator.kt:428 */
 9676   9127   
        }
 9677         -
    /* ServerBuilderConstraintViolations.kt:83 */
 9678         -
    impl ::std::error::Error for ConstraintViolation {}
 9679         -
    /* ServerBuilderConstraintViolations.kt:172 */
 9680         -
    impl ConstraintViolation {
 9681         -
        pub(crate) fn as_validation_exception_field(
 9682         -
            self,
 9683         -
            path: ::std::string::String,
 9684         -
        ) -> crate::model::ValidationExceptionField {
 9685         -
            match self {
 9686         -
            ConstraintViolation::MissingShortInPath => crate::model::ValidationExceptionField {
 9687         -
                                                message: format!("Value at '{}/shortInPath' failed to satisfy constraint: Member must not be null", path),
 9688         -
                                                path: path + "/shortInPath",
 9689         -
                                            },
        9128  +
        /* ServerBuilderGenerator.kt:331 */
        9129  +
        #[allow(missing_docs)] // documentation missing in model
        9130  +
                               /* ServerBuilderGenerator.kt:343 */
        9131  +
        pub fn query_boolean(mut self, input: ::std::option::Option<bool>) -> Self {
        9132  +
            /* ServerBuilderGenerator.kt:344 */
        9133  +
            self.query_boolean =
        9134  +
                /* ServerBuilderGenerator.kt:376 */input
        9135  +
            /* ServerBuilderGenerator.kt:344 */;
        9136  +
            self
        9137  +
            /* ServerBuilderGenerator.kt:343 */
 9690   9138   
        }
        9139  +
        /* ServerBuilderGenerator.kt:426 */
        9140  +
        #[allow(missing_docs)] // documentation missing in model
        9141  +
                               /* ServerBuilderGenerator.kt:428 */
        9142  +
        pub(crate) fn set_query_boolean(
        9143  +
            mut self,
        9144  +
            input: Option<impl ::std::convert::Into<bool>>,
        9145  +
        ) -> Self {
        9146  +
            /* ServerBuilderGenerator.kt:429 */
        9147  +
            self.query_boolean = input.map(|v| v.into());
        9148  +
            self
        9149  +
            /* ServerBuilderGenerator.kt:428 */
 9691   9150   
        }
        9151  +
        /* ServerBuilderGenerator.kt:331 */
        9152  +
        #[allow(missing_docs)] // documentation missing in model
        9153  +
                               /* ServerBuilderGenerator.kt:343 */
        9154  +
        pub fn query_boolean_list(
        9155  +
            mut self,
        9156  +
            input: ::std::option::Option<::std::vec::Vec<bool>>,
        9157  +
        ) -> Self {
        9158  +
            /* ServerBuilderGenerator.kt:344 */
        9159  +
            self.query_boolean_list =
        9160  +
                /* ServerBuilderGenerator.kt:376 */input
        9161  +
            /* ServerBuilderGenerator.kt:344 */;
        9162  +
            self
        9163  +
            /* ServerBuilderGenerator.kt:343 */
 9692   9164   
        }
 9693         -
    /* ServerBuilderGenerator.kt:234 */
 9694         -
    impl ::std::convert::From<ConstraintViolation>
 9695         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 9696         -
    {
 9697         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
 9698         -
            let first_validation_exception_field =
 9699         -
                constraint_violation.as_validation_exception_field("".to_owned());
 9700         -
            let validation_exception = crate::error::ValidationException {
 9701         -
                message: format!(
 9702         -
                    "1 validation error detected. {}",
 9703         -
                    &first_validation_exception_field.message
 9704         -
                ),
 9705         -
                field_list: Some(vec![first_validation_exception_field]),
 9706         -
            };
 9707         -
            Self::ConstraintViolation(
 9708         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 9709         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 9710         -
                            )
        9165  +
        /* ServerBuilderGenerator.kt:426 */
        9166  +
        #[allow(missing_docs)] // documentation missing in model
        9167  +
                               /* ServerBuilderGenerator.kt:428 */
        9168  +
        pub(crate) fn set_query_boolean_list(
        9169  +
            mut self,
        9170  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<bool>>>,
        9171  +
        ) -> Self {
        9172  +
            /* ServerBuilderGenerator.kt:429 */
        9173  +
            self.query_boolean_list = input.map(|v| v.into());
        9174  +
            self
        9175  +
            /* ServerBuilderGenerator.kt:428 */
 9711   9176   
        }
        9177  +
        /* ServerBuilderGenerator.kt:331 */
        9178  +
        #[allow(missing_docs)] // documentation missing in model
        9179  +
                               /* ServerBuilderGenerator.kt:343 */
        9180  +
        pub fn query_timestamp(
        9181  +
            mut self,
        9182  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
        9183  +
        ) -> Self {
        9184  +
            /* ServerBuilderGenerator.kt:344 */
        9185  +
            self.query_timestamp =
        9186  +
                /* ServerBuilderGenerator.kt:376 */input
        9187  +
            /* ServerBuilderGenerator.kt:344 */;
        9188  +
            self
        9189  +
            /* ServerBuilderGenerator.kt:343 */
 9712   9190   
        }
 9713         -
    /* ServerBuilderGenerator.kt:244 */
 9714         -
    impl ::std::convert::From<Builder>
 9715         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedShortInput>
 9716         -
    {
 9717         -
        fn from(builder: Builder) -> Self {
 9718         -
            Self::Unconstrained(builder)
        9191  +
        /* ServerBuilderGenerator.kt:426 */
        9192  +
        #[allow(missing_docs)] // documentation missing in model
        9193  +
                               /* ServerBuilderGenerator.kt:428 */
        9194  +
        pub(crate) fn set_query_timestamp(
        9195  +
            mut self,
        9196  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
        9197  +
        ) -> Self {
        9198  +
            /* ServerBuilderGenerator.kt:429 */
        9199  +
            self.query_timestamp = input.map(|v| v.into());
        9200  +
            self
        9201  +
            /* ServerBuilderGenerator.kt:428 */
 9719   9202   
        }
        9203  +
        /* ServerBuilderGenerator.kt:331 */
        9204  +
        #[allow(missing_docs)] // documentation missing in model
        9205  +
                               /* ServerBuilderGenerator.kt:343 */
        9206  +
        pub fn query_timestamp_list(
        9207  +
            mut self,
        9208  +
            input: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
        9209  +
        ) -> Self {
        9210  +
            /* ServerBuilderGenerator.kt:344 */
        9211  +
            self.query_timestamp_list =
        9212  +
                /* ServerBuilderGenerator.kt:376 */input
        9213  +
            /* ServerBuilderGenerator.kt:344 */;
        9214  +
            self
        9215  +
            /* ServerBuilderGenerator.kt:343 */
 9720   9216   
        }
 9721         -
    /* ServerBuilderGenerator.kt:446 */
 9722         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedShortInput {
 9723         -
        type Error = ConstraintViolation;
 9724         -
 9725         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 9726         -
            builder.build()
        9217  +
        /* ServerBuilderGenerator.kt:426 */
        9218  +
        #[allow(missing_docs)] // documentation missing in model
        9219  +
                               /* ServerBuilderGenerator.kt:428 */
        9220  +
        pub(crate) fn set_query_timestamp_list(
        9221  +
            mut self,
        9222  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::aws_smithy_types::DateTime>>>,
        9223  +
        ) -> Self {
        9224  +
            /* ServerBuilderGenerator.kt:429 */
        9225  +
            self.query_timestamp_list = input.map(|v| v.into());
        9226  +
            self
        9227  +
            /* ServerBuilderGenerator.kt:428 */
 9727   9228   
        }
        9229  +
        /* ServerBuilderGenerator.kt:331 */
        9230  +
        #[allow(missing_docs)] // documentation missing in model
        9231  +
                               /* ServerBuilderGenerator.kt:343 */
        9232  +
        pub fn query_enum(mut self, input: ::std::option::Option<crate::model::FooEnum>) -> Self {
        9233  +
            /* ServerBuilderGenerator.kt:344 */
        9234  +
            self.query_enum =
        9235  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
        9236  +
            /* ServerBuilderGenerator.kt:344 */;
        9237  +
            self
        9238  +
            /* ServerBuilderGenerator.kt:343 */
 9728   9239   
        }
 9729         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedShortInput`](crate::input::MalformedShortInput).
 9730         -
    /* RustType.kt:534 */
 9731         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 9732         -
    /* ServerBuilderGenerator.kt:211 */
 9733         -
    pub struct Builder {
 9734         -
        /* ServerBuilderGenerator.kt:308 */
 9735         -
        pub(crate) short_in_body: ::std::option::Option<i16>,
 9736         -
        /* ServerBuilderGenerator.kt:308 */
 9737         -
        pub(crate) short_in_path: ::std::option::Option<i16>,
 9738         -
        /* ServerBuilderGenerator.kt:308 */
 9739         -
        pub(crate) short_in_query: ::std::option::Option<i16>,
 9740         -
        /* ServerBuilderGenerator.kt:308 */
 9741         -
        pub(crate) short_in_header: ::std::option::Option<i16>,
 9742         -
        /* ServerBuilderGenerator.kt:211 */
        9240  +
        /* ServerBuilderGenerator.kt:426 */
        9241  +
        #[allow(missing_docs)] // documentation missing in model
        9242  +
                               /* ServerBuilderGenerator.kt:428 */
        9243  +
        pub(crate) fn set_query_enum(
        9244  +
            mut self,
        9245  +
            input: Option<
        9246  +
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
        9247  +
            >,
        9248  +
        ) -> Self {
        9249  +
            /* ServerBuilderGenerator.kt:429 */
        9250  +
            self.query_enum = input.map(|v| v.into());
        9251  +
            self
        9252  +
            /* ServerBuilderGenerator.kt:428 */
 9743   9253   
        }
 9744         -
    /* ServerBuilderGenerator.kt:215 */
 9745         -
    impl Builder {
 9746   9254   
        /* ServerBuilderGenerator.kt:331 */
 9747   9255   
        #[allow(missing_docs)] // documentation missing in model
 9748   9256   
                               /* ServerBuilderGenerator.kt:343 */
 9749         -
        pub fn short_in_body(mut self, input: ::std::option::Option<i16>) -> Self {
        9257  +
        pub fn query_enum_list(
        9258  +
            mut self,
        9259  +
            input: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
        9260  +
        ) -> Self {
 9750   9261   
            /* ServerBuilderGenerator.kt:344 */
 9751         -
            self.short_in_body =
 9752         -
                /* ServerBuilderGenerator.kt:376 */input
        9262  +
            self.query_enum_list =
        9263  +
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
        9264  +
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
        9265  +
                /* ServerBuilderGenerator.kt:363 */)
 9753   9266   
            /* ServerBuilderGenerator.kt:344 */;
 9754   9267   
            self
 9755   9268   
            /* ServerBuilderGenerator.kt:343 */
 9756   9269   
        }
 9757   9270   
        /* ServerBuilderGenerator.kt:426 */
 9758   9271   
        #[allow(missing_docs)] // documentation missing in model
 9759   9272   
                               /* ServerBuilderGenerator.kt:428 */
 9760         -
        pub(crate) fn set_short_in_body(
        9273  +
        pub(crate) fn set_query_enum_list(
 9761   9274   
            mut self,
 9762         -
            input: Option<impl ::std::convert::Into<i16>>,
        9275  +
            input: Option<
        9276  +
                impl ::std::convert::Into<
        9277  +
                    crate::constrained::MaybeConstrained<
        9278  +
                        crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
        9279  +
                    >,
        9280  +
                >,
        9281  +
            >,
 9763   9282   
        ) -> Self {
 9764   9283   
            /* ServerBuilderGenerator.kt:429 */
 9765         -
            self.short_in_body = input.map(|v| v.into());
        9284  +
            self.query_enum_list = input.map(|v| v.into());
 9766   9285   
            self
 9767   9286   
            /* ServerBuilderGenerator.kt:428 */
 9768   9287   
        }
 9769   9288   
        /* ServerBuilderGenerator.kt:331 */
 9770   9289   
        #[allow(missing_docs)] // documentation missing in model
 9771   9290   
                               /* ServerBuilderGenerator.kt:343 */
 9772         -
        pub fn short_in_path(mut self, input: i16) -> Self {
        9291  +
        pub fn query_integer_enum(mut self, input: ::std::option::Option<i32>) -> Self {
 9773   9292   
            /* ServerBuilderGenerator.kt:344 */
 9774         -
            self.short_in_path =
 9775         -
                /* ServerBuilderGenerator.kt:345 */Some(
        9293  +
            self.query_integer_enum =
 9776   9294   
                /* ServerBuilderGenerator.kt:376 */input
 9777         -
                /* ServerBuilderGenerator.kt:345 */)
 9778   9295   
            /* ServerBuilderGenerator.kt:344 */;
 9779   9296   
            self
 9780   9297   
            /* ServerBuilderGenerator.kt:343 */
 9781   9298   
        }
 9782   9299   
        /* ServerBuilderGenerator.kt:426 */
 9783   9300   
        #[allow(missing_docs)] // documentation missing in model
 9784   9301   
                               /* ServerBuilderGenerator.kt:428 */
 9785         -
        pub(crate) fn set_short_in_path(mut self, input: impl ::std::convert::Into<i16>) -> Self {
        9302  +
        pub(crate) fn set_query_integer_enum(
        9303  +
            mut self,
        9304  +
            input: Option<impl ::std::convert::Into<i32>>,
        9305  +
        ) -> Self {
 9786   9306   
            /* ServerBuilderGenerator.kt:429 */
 9787         -
            self.short_in_path = Some(input.into());
        9307  +
            self.query_integer_enum = input.map(|v| v.into());
 9788   9308   
            self
 9789   9309   
            /* ServerBuilderGenerator.kt:428 */
 9790   9310   
        }
 9791   9311   
        /* ServerBuilderGenerator.kt:331 */
 9792   9312   
        #[allow(missing_docs)] // documentation missing in model
 9793   9313   
                               /* ServerBuilderGenerator.kt:343 */
 9794         -
        pub fn short_in_query(mut self, input: ::std::option::Option<i16>) -> Self {
        9314  +
        pub fn query_integer_enum_list(
        9315  +
            mut self,
        9316  +
            input: ::std::option::Option<::std::vec::Vec<i32>>,
        9317  +
        ) -> Self {
 9795   9318   
            /* ServerBuilderGenerator.kt:344 */
 9796         -
            self.short_in_query =
        9319  +
            self.query_integer_enum_list =
 9797   9320   
                /* ServerBuilderGenerator.kt:376 */input
 9798   9321   
            /* ServerBuilderGenerator.kt:344 */;
 9799   9322   
            self
 9800   9323   
            /* ServerBuilderGenerator.kt:343 */
 9801   9324   
        }
 9802   9325   
        /* ServerBuilderGenerator.kt:426 */
 9803   9326   
        #[allow(missing_docs)] // documentation missing in model
 9804   9327   
                               /* ServerBuilderGenerator.kt:428 */
 9805         -
        pub(crate) fn set_short_in_query(
        9328  +
        pub(crate) fn set_query_integer_enum_list(
 9806   9329   
            mut self,
 9807         -
            input: Option<impl ::std::convert::Into<i16>>,
        9330  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
 9808   9331   
        ) -> Self {
 9809   9332   
            /* ServerBuilderGenerator.kt:429 */
 9810         -
            self.short_in_query = input.map(|v| v.into());
        9333  +
            self.query_integer_enum_list = input.map(|v| v.into());
 9811   9334   
            self
 9812   9335   
            /* ServerBuilderGenerator.kt:428 */
 9813   9336   
        }
 9814   9337   
        /* ServerBuilderGenerator.kt:331 */
 9815   9338   
        #[allow(missing_docs)] // documentation missing in model
 9816   9339   
                               /* ServerBuilderGenerator.kt:343 */
 9817         -
        pub fn short_in_header(mut self, input: ::std::option::Option<i16>) -> Self {
        9340  +
        pub fn query_params_map_of_string_list(
        9341  +
            mut self,
        9342  +
            input: ::std::option::Option<
        9343  +
                ::std::collections::HashMap<
        9344  +
                    ::std::string::String,
        9345  +
                    ::std::vec::Vec<::std::string::String>,
        9346  +
                >,
        9347  +
            >,
        9348  +
        ) -> Self {
 9818   9349   
            /* ServerBuilderGenerator.kt:344 */
 9819         -
            self.short_in_header =
        9350  +
            self.query_params_map_of_string_list =
 9820   9351   
                /* ServerBuilderGenerator.kt:376 */input
 9821   9352   
            /* ServerBuilderGenerator.kt:344 */;
 9822   9353   
            self
 9823   9354   
            /* ServerBuilderGenerator.kt:343 */
 9824   9355   
        }
 9825   9356   
        /* ServerBuilderGenerator.kt:426 */
 9826   9357   
        #[allow(missing_docs)] // documentation missing in model
 9827   9358   
                               /* ServerBuilderGenerator.kt:428 */
 9828         -
        pub(crate) fn set_short_in_header(
        9359  +
        pub(crate) fn set_query_params_map_of_string_list(
 9829   9360   
            mut self,
 9830         -
            input: Option<impl ::std::convert::Into<i16>>,
        9361  +
            input: Option<
        9362  +
                impl ::std::convert::Into<
        9363  +
                    ::std::collections::HashMap<
        9364  +
                        ::std::string::String,
        9365  +
                        ::std::vec::Vec<::std::string::String>,
        9366  +
                    >,
        9367  +
                >,
        9368  +
            >,
 9831   9369   
        ) -> Self {
 9832   9370   
            /* ServerBuilderGenerator.kt:429 */
 9833         -
            self.short_in_header = input.map(|v| v.into());
        9371  +
            self.query_params_map_of_string_list = input.map(|v| v.into());
 9834   9372   
            self
 9835   9373   
            /* ServerBuilderGenerator.kt:428 */
 9836   9374   
        }
 9837         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedShortInput`](crate::input::MalformedShortInput).
        9375  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`AllQueryStringTypesInput`](crate::input::AllQueryStringTypesInput).
 9838   9376   
        /// /* ServerBuilderGenerator.kt:260 */
 9839         -
        /// The builder fails to construct a [`MalformedShortInput`](crate::input::MalformedShortInput) if a [`ConstraintViolation`] occurs.
        9377  +
        /// The builder fails to construct a [`AllQueryStringTypesInput`](crate::input::AllQueryStringTypesInput) if a [`ConstraintViolation`] occurs.
 9840   9378   
        ///
        9379  +
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
 9841   9380   
        /* ServerBuilderGenerator.kt:271 */
 9842         -
        pub fn build(self) -> Result<crate::input::MalformedShortInput, ConstraintViolation> {
        9381  +
        pub fn build(self) -> Result<crate::input::AllQueryStringTypesInput, ConstraintViolation> {
 9843   9382   
            self.build_enforcing_all_constraints()
 9844   9383   
        }
 9845   9384   
        /* ServerBuilderGenerator.kt:283 */
 9846   9385   
        fn build_enforcing_all_constraints(
 9847   9386   
            self,
 9848         -
        ) -> Result<crate::input::MalformedShortInput, ConstraintViolation> {
        9387  +
        ) -> Result<crate::input::AllQueryStringTypesInput, ConstraintViolation> {
 9849   9388   
            /* ServerBuilderGenerator.kt:287 */
 9850   9389   
            Ok(
 9851   9390   
                /* ServerBuilderGenerator.kt:542 */
 9852         -
                crate::input::MalformedShortInput {
        9391  +
                crate::input::AllQueryStringTypesInput {
 9853   9392   
                    /* ServerBuilderGenerator.kt:546 */
 9854         -
                    short_in_body: self.short_in_body,
        9393  +
                    query_string: self.query_string,
        9394  +
                    /* ServerBuilderGenerator.kt:546 */
        9395  +
                    query_string_list: self.query_string_list,
        9396  +
                    /* ServerBuilderGenerator.kt:546 */
        9397  +
                    query_string_set: self
        9398  +
                        .query_string_set
        9399  +
                        /* ServerBuilderGenerator.kt:602 */
        9400  +
                        .map(|v| match v {
        9401  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
        9402  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
        9403  +
                        })
        9404  +
                        /* ServerBuilderGenerator.kt:614 */
        9405  +
                        .map(|res| res.map_err(ConstraintViolation::QueryStringSet))
        9406  +
                        .transpose()?,
        9407  +
                    /* ServerBuilderGenerator.kt:546 */
        9408  +
                    query_byte: self.query_byte,
        9409  +
                    /* ServerBuilderGenerator.kt:546 */
        9410  +
                    query_short: self.query_short,
        9411  +
                    /* ServerBuilderGenerator.kt:546 */
        9412  +
                    query_integer: self.query_integer,
        9413  +
                    /* ServerBuilderGenerator.kt:546 */
        9414  +
                    query_integer_list: self.query_integer_list,
        9415  +
                    /* ServerBuilderGenerator.kt:546 */
        9416  +
                    query_integer_set: self
        9417  +
                        .query_integer_set
        9418  +
                        /* ServerBuilderGenerator.kt:602 */
        9419  +
                        .map(|v| match v {
        9420  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
        9421  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
        9422  +
                        })
        9423  +
                        /* ServerBuilderGenerator.kt:614 */
        9424  +
                        .map(|res| res.map_err(ConstraintViolation::QueryIntegerSet))
        9425  +
                        .transpose()?,
        9426  +
                    /* ServerBuilderGenerator.kt:546 */
        9427  +
                    query_long: self.query_long,
        9428  +
                    /* ServerBuilderGenerator.kt:546 */
        9429  +
                    query_float: self.query_float,
        9430  +
                    /* ServerBuilderGenerator.kt:546 */
        9431  +
                    query_double: self.query_double,
        9432  +
                    /* ServerBuilderGenerator.kt:546 */
        9433  +
                    query_double_list: self.query_double_list,
        9434  +
                    /* ServerBuilderGenerator.kt:546 */
        9435  +
                    query_boolean: self.query_boolean,
        9436  +
                    /* ServerBuilderGenerator.kt:546 */
        9437  +
                    query_boolean_list: self.query_boolean_list,
        9438  +
                    /* ServerBuilderGenerator.kt:546 */
        9439  +
                    query_timestamp: self.query_timestamp,
        9440  +
                    /* ServerBuilderGenerator.kt:546 */
        9441  +
                    query_timestamp_list: self.query_timestamp_list,
        9442  +
                    /* ServerBuilderGenerator.kt:546 */
        9443  +
                    query_enum: self
        9444  +
                        .query_enum
        9445  +
                        /* ServerBuilderGenerator.kt:602 */
        9446  +
                        .map(|v| match v {
        9447  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
        9448  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
        9449  +
                        })
        9450  +
                        /* ServerBuilderGenerator.kt:614 */
        9451  +
                        .map(|res| res.map_err(ConstraintViolation::QueryEnum))
        9452  +
                        .transpose()?,
        9453  +
                    /* ServerBuilderGenerator.kt:546 */
        9454  +
                    query_enum_list: self
        9455  +
                        .query_enum_list
        9456  +
                        /* ServerBuilderGenerator.kt:602 */
        9457  +
                        .map(|v| match v {
        9458  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
        9459  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
        9460  +
                        })
        9461  +
                        /* ServerBuilderGenerator.kt:614 */
        9462  +
                        .map(|res| {
        9463  +
                            res.map(|v| v.into())
        9464  +
                                .map_err(ConstraintViolation::QueryEnumList)
        9465  +
                        })
        9466  +
                        .transpose()?,
 9855   9467   
                    /* ServerBuilderGenerator.kt:546 */
 9856         -
                    short_in_path: self
 9857         -
                        .short_in_path
 9858         -
                        /* ServerBuilderGenerator.kt:569 */
 9859         -
                        .ok_or(ConstraintViolation::MissingShortInPath)?,
        9468  +
                    query_integer_enum: self.query_integer_enum,
 9860   9469   
                    /* ServerBuilderGenerator.kt:546 */
 9861         -
                    short_in_query: self.short_in_query,
        9470  +
                    query_integer_enum_list: self.query_integer_enum_list,
 9862   9471   
                    /* ServerBuilderGenerator.kt:546 */
 9863         -
                    short_in_header: self.short_in_header,
        9472  +
                    query_params_map_of_string_list: self.query_params_map_of_string_list,
 9864   9473   
                    /* ServerBuilderGenerator.kt:542 */
 9865   9474   
                }, /* ServerBuilderGenerator.kt:287 */
 9866   9475   
            )
 9867   9476   
            /* ServerBuilderGenerator.kt:283 */
 9868   9477   
        }
 9869   9478   
        /* ServerBuilderGenerator.kt:215 */
 9870   9479   
    }
 9871   9480   
 9872   9481   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
 9873   9482   
}
 9874         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedByteInput`](crate::input::MalformedByteInput).
 9875         -
pub mod malformed_byte_input {
        9483  +
/// /* ServerBuilderGenerator.kt:171 */See [`ConstantQueryStringInput`](crate::input::ConstantQueryStringInput).
        9484  +
pub mod constant_query_string_input {
 9876   9485   
 9877   9486   
    /* RustType.kt:534 */
 9878   9487   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 9879   9488   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
 9880   9489   
    /* RustType.kt:534 */
 9881   9490   
    #[non_exhaustive]
 9882   9491   
    /* ServerBuilderConstraintViolations.kt:75 */
 9883   9492   
    #[allow(clippy::enum_variant_names)]
 9884   9493   
    pub enum ConstraintViolation {
 9885         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`byte_in_path` was not provided but it is required when building `MalformedByteInput`.
        9494  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`hello` was not provided but it is required when building `ConstantQueryStringInput`.
 9886   9495   
        /* ServerBuilderConstraintViolations.kt:144 */
 9887         -
        MissingByteInPath,
        9496  +
        MissingHello,
 9888   9497   
        /* ServerBuilderConstraintViolations.kt:75 */
 9889   9498   
    }
 9890   9499   
    /* ServerBuilderConstraintViolations.kt:116 */
 9891   9500   
    impl ::std::fmt::Display for ConstraintViolation {
 9892   9501   
        /* ServerBuilderConstraintViolations.kt:117 */
 9893   9502   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 9894   9503   
            /* ServerBuilderConstraintViolations.kt:118 */
 9895   9504   
            match self {
 9896         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingByteInPath => write!(f, "`byte_in_path` was not provided but it is required when building `MalformedByteInput`"),
        9505  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingHello => write!(f, "`hello` was not provided but it is required when building `ConstantQueryStringInput`"),
 9897   9506   
            /* ServerBuilderConstraintViolations.kt:118 */}
 9898   9507   
            /* ServerBuilderConstraintViolations.kt:117 */
 9899   9508   
        }
 9900   9509   
        /* ServerBuilderConstraintViolations.kt:116 */
 9901   9510   
    }
 9902   9511   
    /* ServerBuilderConstraintViolations.kt:83 */
 9903   9512   
    impl ::std::error::Error for ConstraintViolation {}
 9904   9513   
    /* ServerBuilderConstraintViolations.kt:172 */
 9905   9514   
    impl ConstraintViolation {
 9906   9515   
        pub(crate) fn as_validation_exception_field(
 9907   9516   
            self,
 9908   9517   
            path: ::std::string::String,
 9909   9518   
        ) -> crate::model::ValidationExceptionField {
 9910   9519   
            match self {
 9911         -
            ConstraintViolation::MissingByteInPath => crate::model::ValidationExceptionField {
 9912         -
                                                message: format!("Value at '{}/byteInPath' failed to satisfy constraint: Member must not be null", path),
 9913         -
                                                path: path + "/byteInPath",
        9520  +
                ConstraintViolation::MissingHello => crate::model::ValidationExceptionField {
        9521  +
                    message: format!(
        9522  +
                        "Value at '{}/hello' failed to satisfy constraint: Member must not be null",
        9523  +
                        path
        9524  +
                    ),
        9525  +
                    path: path + "/hello",
 9914   9526   
                },
 9915   9527   
            }
 9916   9528   
        }
 9917   9529   
    }
 9918   9530   
    /* ServerBuilderGenerator.kt:234 */
 9919   9531   
    impl ::std::convert::From<ConstraintViolation>
 9920   9532   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
 9921   9533   
    {
 9922   9534   
        fn from(constraint_violation: ConstraintViolation) -> Self {
 9923   9535   
            let first_validation_exception_field =
 9924   9536   
                constraint_violation.as_validation_exception_field("".to_owned());
 9925   9537   
            let validation_exception = crate::error::ValidationException {
 9926   9538   
                message: format!(
 9927   9539   
                    "1 validation error detected. {}",
 9928   9540   
                    &first_validation_exception_field.message
 9929   9541   
                ),
 9930   9542   
                field_list: Some(vec![first_validation_exception_field]),
 9931   9543   
            };
 9932   9544   
            Self::ConstraintViolation(
 9933   9545   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
 9934   9546   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
 9935   9547   
                            )
 9936   9548   
        }
 9937   9549   
    }
 9938   9550   
    /* ServerBuilderGenerator.kt:244 */
 9939   9551   
    impl ::std::convert::From<Builder>
 9940         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedByteInput>
        9552  +
        for crate::constrained::MaybeConstrained<crate::input::ConstantQueryStringInput>
 9941   9553   
    {
 9942   9554   
        fn from(builder: Builder) -> Self {
 9943   9555   
            Self::Unconstrained(builder)
 9944   9556   
        }
 9945   9557   
    }
 9946   9558   
    /* ServerBuilderGenerator.kt:446 */
 9947         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedByteInput {
        9559  +
    impl ::std::convert::TryFrom<Builder> for crate::input::ConstantQueryStringInput {
 9948   9560   
        type Error = ConstraintViolation;
 9949   9561   
 9950   9562   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 9951   9563   
            builder.build()
 9952   9564   
        }
 9953   9565   
    }
 9954         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedByteInput`](crate::input::MalformedByteInput).
        9566  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`ConstantQueryStringInput`](crate::input::ConstantQueryStringInput).
 9955   9567   
    /* RustType.kt:534 */
 9956   9568   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
 9957   9569   
    /* ServerBuilderGenerator.kt:211 */
 9958   9570   
    pub struct Builder {
 9959   9571   
        /* ServerBuilderGenerator.kt:308 */
 9960         -
        pub(crate) byte_in_body: ::std::option::Option<i8>,
 9961         -
        /* ServerBuilderGenerator.kt:308 */
 9962         -
        pub(crate) byte_in_path: ::std::option::Option<i8>,
 9963         -
        /* ServerBuilderGenerator.kt:308 */
 9964         -
        pub(crate) byte_in_query: ::std::option::Option<i8>,
 9965         -
        /* ServerBuilderGenerator.kt:308 */
 9966         -
        pub(crate) byte_in_header: ::std::option::Option<i8>,
        9572  +
        pub(crate) hello: ::std::option::Option<::std::string::String>,
 9967   9573   
        /* ServerBuilderGenerator.kt:211 */
 9968   9574   
    }
 9969   9575   
    /* ServerBuilderGenerator.kt:215 */
 9970   9576   
    impl Builder {
 9971   9577   
        /* ServerBuilderGenerator.kt:331 */
 9972   9578   
        #[allow(missing_docs)] // documentation missing in model
 9973   9579   
                               /* ServerBuilderGenerator.kt:343 */
 9974         -
        pub fn byte_in_body(mut self, input: ::std::option::Option<i8>) -> Self {
 9975         -
            /* ServerBuilderGenerator.kt:344 */
 9976         -
            self.byte_in_body =
 9977         -
                /* ServerBuilderGenerator.kt:376 */input
 9978         -
            /* ServerBuilderGenerator.kt:344 */;
 9979         -
            self
 9980         -
            /* ServerBuilderGenerator.kt:343 */
 9981         -
        }
 9982         -
        /* ServerBuilderGenerator.kt:426 */
 9983         -
        #[allow(missing_docs)] // documentation missing in model
 9984         -
                               /* ServerBuilderGenerator.kt:428 */
 9985         -
        pub(crate) fn set_byte_in_body(
 9986         -
            mut self,
 9987         -
            input: Option<impl ::std::convert::Into<i8>>,
 9988         -
        ) -> Self {
 9989         -
            /* ServerBuilderGenerator.kt:429 */
 9990         -
            self.byte_in_body = input.map(|v| v.into());
 9991         -
            self
 9992         -
            /* ServerBuilderGenerator.kt:428 */
 9993         -
        }
 9994         -
        /* ServerBuilderGenerator.kt:331 */
 9995         -
        #[allow(missing_docs)] // documentation missing in model
 9996         -
                               /* ServerBuilderGenerator.kt:343 */
 9997         -
        pub fn byte_in_path(mut self, input: i8) -> Self {
        9580  +
        pub fn hello(mut self, input: ::std::string::String) -> Self {
 9998   9581   
            /* ServerBuilderGenerator.kt:344 */
 9999         -
            self.byte_in_path =
        9582  +
            self.hello =
10000   9583   
                /* ServerBuilderGenerator.kt:345 */Some(
10001   9584   
                    /* ServerBuilderGenerator.kt:376 */input
10002   9585   
                /* ServerBuilderGenerator.kt:345 */)
10003   9586   
            /* ServerBuilderGenerator.kt:344 */;
10004   9587   
            self
10005   9588   
            /* ServerBuilderGenerator.kt:343 */
10006   9589   
        }
10007   9590   
        /* ServerBuilderGenerator.kt:426 */
10008   9591   
        #[allow(missing_docs)] // documentation missing in model
10009   9592   
                               /* ServerBuilderGenerator.kt:428 */
10010         -
        pub(crate) fn set_byte_in_path(mut self, input: impl ::std::convert::Into<i8>) -> Self {
10011         -
            /* ServerBuilderGenerator.kt:429 */
10012         -
            self.byte_in_path = Some(input.into());
10013         -
            self
10014         -
            /* ServerBuilderGenerator.kt:428 */
10015         -
        }
10016         -
        /* ServerBuilderGenerator.kt:331 */
10017         -
        #[allow(missing_docs)] // documentation missing in model
10018         -
                               /* ServerBuilderGenerator.kt:343 */
10019         -
        pub fn byte_in_query(mut self, input: ::std::option::Option<i8>) -> Self {
10020         -
            /* ServerBuilderGenerator.kt:344 */
10021         -
            self.byte_in_query =
10022         -
                /* ServerBuilderGenerator.kt:376 */input
10023         -
            /* ServerBuilderGenerator.kt:344 */;
10024         -
            self
10025         -
            /* ServerBuilderGenerator.kt:343 */
10026         -
        }
10027         -
        /* ServerBuilderGenerator.kt:426 */
10028         -
        #[allow(missing_docs)] // documentation missing in model
10029         -
                               /* ServerBuilderGenerator.kt:428 */
10030         -
        pub(crate) fn set_byte_in_query(
10031         -
            mut self,
10032         -
            input: Option<impl ::std::convert::Into<i8>>,
10033         -
        ) -> Self {
10034         -
            /* ServerBuilderGenerator.kt:429 */
10035         -
            self.byte_in_query = input.map(|v| v.into());
10036         -
            self
10037         -
            /* ServerBuilderGenerator.kt:428 */
10038         -
        }
10039         -
        /* ServerBuilderGenerator.kt:331 */
10040         -
        #[allow(missing_docs)] // documentation missing in model
10041         -
                               /* ServerBuilderGenerator.kt:343 */
10042         -
        pub fn byte_in_header(mut self, input: ::std::option::Option<i8>) -> Self {
10043         -
            /* ServerBuilderGenerator.kt:344 */
10044         -
            self.byte_in_header =
10045         -
                /* ServerBuilderGenerator.kt:376 */input
10046         -
            /* ServerBuilderGenerator.kt:344 */;
10047         -
            self
10048         -
            /* ServerBuilderGenerator.kt:343 */
10049         -
        }
10050         -
        /* ServerBuilderGenerator.kt:426 */
10051         -
        #[allow(missing_docs)] // documentation missing in model
10052         -
                               /* ServerBuilderGenerator.kt:428 */
10053         -
        pub(crate) fn set_byte_in_header(
        9593  +
        pub(crate) fn set_hello(
10054   9594   
            mut self,
10055         -
            input: Option<impl ::std::convert::Into<i8>>,
        9595  +
            input: impl ::std::convert::Into<::std::string::String>,
10056   9596   
        ) -> Self {
10057   9597   
            /* ServerBuilderGenerator.kt:429 */
10058         -
            self.byte_in_header = input.map(|v| v.into());
        9598  +
            self.hello = Some(input.into());
10059   9599   
            self
10060   9600   
            /* ServerBuilderGenerator.kt:428 */
10061   9601   
        }
10062         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedByteInput`](crate::input::MalformedByteInput).
        9602  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`ConstantQueryStringInput`](crate::input::ConstantQueryStringInput).
10063   9603   
        /// /* ServerBuilderGenerator.kt:260 */
10064         -
        /// The builder fails to construct a [`MalformedByteInput`](crate::input::MalformedByteInput) if a [`ConstraintViolation`] occurs.
        9604  +
        /// The builder fails to construct a [`ConstantQueryStringInput`](crate::input::ConstantQueryStringInput) if a [`ConstraintViolation`] occurs.
10065   9605   
        ///
10066   9606   
        /* ServerBuilderGenerator.kt:271 */
10067         -
        pub fn build(self) -> Result<crate::input::MalformedByteInput, ConstraintViolation> {
        9607  +
        pub fn build(self) -> Result<crate::input::ConstantQueryStringInput, ConstraintViolation> {
10068   9608   
            self.build_enforcing_all_constraints()
10069   9609   
        }
10070   9610   
        /* ServerBuilderGenerator.kt:283 */
10071   9611   
        fn build_enforcing_all_constraints(
10072   9612   
            self,
10073         -
        ) -> Result<crate::input::MalformedByteInput, ConstraintViolation> {
        9613  +
        ) -> Result<crate::input::ConstantQueryStringInput, ConstraintViolation> {
10074   9614   
            /* ServerBuilderGenerator.kt:287 */
10075   9615   
            Ok(
10076   9616   
                /* ServerBuilderGenerator.kt:542 */
10077         -
                crate::input::MalformedByteInput {
10078         -
                    /* ServerBuilderGenerator.kt:546 */
10079         -
                    byte_in_body: self.byte_in_body,
        9617  +
                crate::input::ConstantQueryStringInput {
10080   9618   
                    /* ServerBuilderGenerator.kt:546 */
10081         -
                    byte_in_path: self
10082         -
                        .byte_in_path
        9619  +
                    hello: self
        9620  +
                        .hello
10083   9621   
                        /* ServerBuilderGenerator.kt:569 */
10084         -
                        .ok_or(ConstraintViolation::MissingByteInPath)?,
10085         -
                    /* ServerBuilderGenerator.kt:546 */
10086         -
                    byte_in_query: self.byte_in_query,
10087         -
                    /* ServerBuilderGenerator.kt:546 */
10088         -
                    byte_in_header: self.byte_in_header,
        9622  +
                        .ok_or(ConstraintViolation::MissingHello)?,
10089   9623   
                    /* ServerBuilderGenerator.kt:542 */
10090   9624   
                }, /* ServerBuilderGenerator.kt:287 */
10091   9625   
            )
10092   9626   
            /* ServerBuilderGenerator.kt:283 */
10093   9627   
        }
10094   9628   
        /* ServerBuilderGenerator.kt:215 */
10095   9629   
    }
10096   9630   
10097   9631   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
10098   9632   
}
10099         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedBlobInput`](crate::input::MalformedBlobInput).
10100         -
pub mod malformed_blob_input {
        9633  +
/// /* ServerBuilderGenerator.kt:171 */See [`ConstantAndVariableQueryStringInput`](crate::input::ConstantAndVariableQueryStringInput).
        9634  +
pub mod constant_and_variable_query_string_input {
10101   9635   
10102   9636   
    /* ServerBuilderGenerator.kt:461 */
10103         -
    impl ::std::convert::From<Builder> for crate::input::MalformedBlobInput {
        9637  +
    impl ::std::convert::From<Builder> for crate::input::ConstantAndVariableQueryStringInput {
10104   9638   
        fn from(builder: Builder) -> Self {
10105   9639   
            builder.build()
10106   9640   
        }
10107   9641   
    }
10108         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedBlobInput`](crate::input::MalformedBlobInput).
        9642  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`ConstantAndVariableQueryStringInput`](crate::input::ConstantAndVariableQueryStringInput).
10109   9643   
    /* RustType.kt:534 */
10110   9644   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
10111   9645   
    /* ServerBuilderGenerator.kt:211 */
10112   9646   
    pub struct Builder {
10113   9647   
        /* ServerBuilderGenerator.kt:308 */
10114         -
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::Blob>,
        9648  +
        pub(crate) baz: ::std::option::Option<::std::string::String>,
        9649  +
        /* ServerBuilderGenerator.kt:308 */
        9650  +
        pub(crate) maybe_set: ::std::option::Option<::std::string::String>,
10115   9651   
        /* ServerBuilderGenerator.kt:211 */
10116   9652   
    }
10117   9653   
    /* ServerBuilderGenerator.kt:215 */
10118   9654   
    impl Builder {
10119   9655   
        /* ServerBuilderGenerator.kt:331 */
10120   9656   
        #[allow(missing_docs)] // documentation missing in model
10121   9657   
                               /* ServerBuilderGenerator.kt:343 */
10122         -
        pub fn blob(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
        9658  +
        pub fn baz(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
10123   9659   
            /* ServerBuilderGenerator.kt:344 */
10124         -
            self.blob =
        9660  +
            self.baz =
10125   9661   
                /* ServerBuilderGenerator.kt:376 */input
10126   9662   
            /* ServerBuilderGenerator.kt:344 */;
10127   9663   
            self
10128   9664   
            /* ServerBuilderGenerator.kt:343 */
10129   9665   
        }
10130   9666   
        /* ServerBuilderGenerator.kt:426 */
10131   9667   
        #[allow(missing_docs)] // documentation missing in model
10132   9668   
                               /* ServerBuilderGenerator.kt:428 */
10133         -
        pub(crate) fn set_blob(
        9669  +
        pub(crate) fn set_baz(
10134   9670   
            mut self,
10135         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
        9671  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
10136   9672   
        ) -> Self {
10137   9673   
            /* ServerBuilderGenerator.kt:429 */
10138         -
            self.blob = input.map(|v| v.into());
        9674  +
            self.baz = input.map(|v| v.into());
10139   9675   
            self
10140   9676   
            /* ServerBuilderGenerator.kt:428 */
10141   9677   
        }
10142         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedBlobInput`](crate::input::MalformedBlobInput).
        9678  +
        /* ServerBuilderGenerator.kt:331 */
        9679  +
        #[allow(missing_docs)] // documentation missing in model
        9680  +
                               /* ServerBuilderGenerator.kt:343 */
        9681  +
        pub fn maybe_set(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        9682  +
            /* ServerBuilderGenerator.kt:344 */
        9683  +
            self.maybe_set =
        9684  +
                /* ServerBuilderGenerator.kt:376 */input
        9685  +
            /* ServerBuilderGenerator.kt:344 */;
        9686  +
            self
        9687  +
            /* ServerBuilderGenerator.kt:343 */
        9688  +
        }
        9689  +
        /* ServerBuilderGenerator.kt:426 */
        9690  +
        #[allow(missing_docs)] // documentation missing in model
        9691  +
                               /* ServerBuilderGenerator.kt:428 */
        9692  +
        pub(crate) fn set_maybe_set(
        9693  +
            mut self,
        9694  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
        9695  +
        ) -> Self {
        9696  +
            /* ServerBuilderGenerator.kt:429 */
        9697  +
            self.maybe_set = input.map(|v| v.into());
        9698  +
            self
        9699  +
            /* ServerBuilderGenerator.kt:428 */
        9700  +
        }
        9701  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`ConstantAndVariableQueryStringInput`](crate::input::ConstantAndVariableQueryStringInput).
10143   9702   
        /* ServerBuilderGenerator.kt:271 */
10144         -
        pub fn build(self) -> crate::input::MalformedBlobInput {
        9703  +
        pub fn build(self) -> crate::input::ConstantAndVariableQueryStringInput {
10145   9704   
            self.build_enforcing_all_constraints()
10146   9705   
        }
10147   9706   
        /* ServerBuilderGenerator.kt:283 */
10148         -
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedBlobInput {
        9707  +
        fn build_enforcing_all_constraints(
        9708  +
            self,
        9709  +
        ) -> crate::input::ConstantAndVariableQueryStringInput {
10149   9710   
            /* ServerBuilderGenerator.kt:542 */
10150         -
            crate::input::MalformedBlobInput {
        9711  +
            crate::input::ConstantAndVariableQueryStringInput {
10151   9712   
                /* ServerBuilderGenerator.kt:546 */
10152         -
                blob: self.blob,
        9713  +
                baz: self.baz,
        9714  +
                /* ServerBuilderGenerator.kt:546 */
        9715  +
                maybe_set: self.maybe_set,
10153   9716   
                /* ServerBuilderGenerator.kt:542 */
10154   9717   
            }
10155   9718   
            /* ServerBuilderGenerator.kt:283 */
10156   9719   
        }
10157   9720   
        /* ServerBuilderGenerator.kt:215 */
10158   9721   
    }
10159   9722   
10160   9723   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
10161   9724   
}
10162         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedMapInput`](crate::input::MalformedMapInput).
10163         -
pub mod malformed_map_input {
        9725  +
/// /* ServerBuilderGenerator.kt:171 */See [`IgnoreQueryParamsInResponseInput`](crate::input::IgnoreQueryParamsInResponseInput).
        9726  +
pub mod ignore_query_params_in_response_input {
10164   9727   
10165   9728   
    /* ServerBuilderGenerator.kt:461 */
10166         -
    impl ::std::convert::From<Builder> for crate::input::MalformedMapInput {
        9729  +
    impl ::std::convert::From<Builder> for crate::input::IgnoreQueryParamsInResponseInput {
10167   9730   
        fn from(builder: Builder) -> Self {
10168   9731   
            builder.build()
10169   9732   
        }
10170   9733   
    }
10171         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedMapInput`](crate::input::MalformedMapInput).
10172         -
    /* RustType.kt:534 */
10173         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
10174         -
    /* ServerBuilderGenerator.kt:211 */
10175         -
    pub struct Builder {
10176         -
        /* ServerBuilderGenerator.kt:308 */
10177         -
        pub(crate) body_map: ::std::option::Option<
10178         -
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
10179         -
        >,
10180         -
        /* ServerBuilderGenerator.kt:211 */
10181         -
    }
10182         -
    /* ServerBuilderGenerator.kt:215 */
10183         -
    impl Builder {
10184         -
        /* ServerBuilderGenerator.kt:331 */
10185         -
        #[allow(missing_docs)] // documentation missing in model
10186         -
                               /* ServerBuilderGenerator.kt:343 */
10187         -
        pub fn body_map(
10188         -
            mut self,
10189         -
            input: ::std::option::Option<
10190         -
                ::std::collections::HashMap<::std::string::String, ::std::string::String>,
10191         -
            >,
10192         -
        ) -> Self {
10193         -
            /* ServerBuilderGenerator.kt:344 */
10194         -
            self.body_map =
10195         -
                /* ServerBuilderGenerator.kt:376 */input
10196         -
            /* ServerBuilderGenerator.kt:344 */;
10197         -
            self
10198         -
            /* ServerBuilderGenerator.kt:343 */
10199         -
        }
10200         -
        /* ServerBuilderGenerator.kt:426 */
10201         -
        #[allow(missing_docs)] // documentation missing in model
10202         -
                               /* ServerBuilderGenerator.kt:428 */
10203         -
        pub(crate) fn set_body_map(
10204         -
            mut self,
10205         -
            input: Option<
10206         -
                impl ::std::convert::Into<
10207         -
                    ::std::collections::HashMap<::std::string::String, ::std::string::String>,
10208         -
                >,
10209         -
            >,
10210         -
        ) -> Self {
10211         -
            /* ServerBuilderGenerator.kt:429 */
10212         -
            self.body_map = input.map(|v| v.into());
10213         -
            self
10214         -
            /* ServerBuilderGenerator.kt:428 */
10215         -
        }
10216         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedMapInput`](crate::input::MalformedMapInput).
        9734  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`IgnoreQueryParamsInResponseInput`](crate::input::IgnoreQueryParamsInResponseInput).
        9735  +
    /* RustType.kt:534 */
        9736  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        9737  +
    /* ServerBuilderGenerator.kt:211 */
        9738  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
        9739  +
    /* ServerBuilderGenerator.kt:215 */
        9740  +
    impl Builder {
        9741  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`IgnoreQueryParamsInResponseInput`](crate::input::IgnoreQueryParamsInResponseInput).
10217   9742   
        /* ServerBuilderGenerator.kt:271 */
10218         -
        pub fn build(self) -> crate::input::MalformedMapInput {
        9743  +
        pub fn build(self) -> crate::input::IgnoreQueryParamsInResponseInput {
10219   9744   
            self.build_enforcing_all_constraints()
10220   9745   
        }
10221   9746   
        /* ServerBuilderGenerator.kt:283 */
10222         -
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedMapInput {
10223         -
            /* ServerBuilderGenerator.kt:542 */
10224         -
            crate::input::MalformedMapInput {
10225         -
                /* ServerBuilderGenerator.kt:546 */
10226         -
                body_map: self.body_map,
        9747  +
        fn build_enforcing_all_constraints(self) -> crate::input::IgnoreQueryParamsInResponseInput {
10227   9748   
            /* ServerBuilderGenerator.kt:542 */
10228         -
            }
        9749  +
            crate::input::IgnoreQueryParamsInResponseInput {
        9750  +
            /* ServerBuilderGenerator.kt:542 */}
10229   9751   
            /* ServerBuilderGenerator.kt:283 */
10230   9752   
        }
10231   9753   
        /* ServerBuilderGenerator.kt:215 */
10232   9754   
    }
10233   9755   
10234   9756   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
10235   9757   
}
10236         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedListInput`](crate::input::MalformedListInput).
10237         -
pub mod malformed_list_input {
        9758  +
/// /* ServerBuilderGenerator.kt:171 */See [`OmitsNullSerializesEmptyStringInput`](crate::input::OmitsNullSerializesEmptyStringInput).
        9759  +
pub mod omits_null_serializes_empty_string_input {
10238   9760   
10239   9761   
    /* ServerBuilderGenerator.kt:461 */
10240         -
    impl ::std::convert::From<Builder> for crate::input::MalformedListInput {
        9762  +
    impl ::std::convert::From<Builder> for crate::input::OmitsNullSerializesEmptyStringInput {
10241   9763   
        fn from(builder: Builder) -> Self {
10242   9764   
            builder.build()
10243   9765   
        }
10244   9766   
    }
10245         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedListInput`](crate::input::MalformedListInput).
        9767  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OmitsNullSerializesEmptyStringInput`](crate::input::OmitsNullSerializesEmptyStringInput).
10246   9768   
    /* RustType.kt:534 */
10247   9769   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
10248   9770   
    /* ServerBuilderGenerator.kt:211 */
10249   9771   
    pub struct Builder {
10250   9772   
        /* ServerBuilderGenerator.kt:308 */
10251         -
        pub(crate) body_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        9773  +
        pub(crate) null_value: ::std::option::Option<::std::string::String>,
        9774  +
        /* ServerBuilderGenerator.kt:308 */
        9775  +
        pub(crate) empty_string: ::std::option::Option<::std::string::String>,
10252   9776   
        /* ServerBuilderGenerator.kt:211 */
10253   9777   
    }
10254   9778   
    /* ServerBuilderGenerator.kt:215 */
10255   9779   
    impl Builder {
10256   9780   
        /* ServerBuilderGenerator.kt:331 */
10257   9781   
        #[allow(missing_docs)] // documentation missing in model
10258   9782   
                               /* ServerBuilderGenerator.kt:343 */
10259         -
        pub fn body_list(
        9783  +
        pub fn null_value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        9784  +
            /* ServerBuilderGenerator.kt:344 */
        9785  +
            self.null_value =
        9786  +
                /* ServerBuilderGenerator.kt:376 */input
        9787  +
            /* ServerBuilderGenerator.kt:344 */;
        9788  +
            self
        9789  +
            /* ServerBuilderGenerator.kt:343 */
        9790  +
        }
        9791  +
        /* ServerBuilderGenerator.kt:426 */
        9792  +
        #[allow(missing_docs)] // documentation missing in model
        9793  +
                               /* ServerBuilderGenerator.kt:428 */
        9794  +
        pub(crate) fn set_null_value(
10260   9795   
            mut self,
10261         -
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        9796  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
10262   9797   
        ) -> Self {
        9798  +
            /* ServerBuilderGenerator.kt:429 */
        9799  +
            self.null_value = input.map(|v| v.into());
        9800  +
            self
        9801  +
            /* ServerBuilderGenerator.kt:428 */
        9802  +
        }
        9803  +
        /* ServerBuilderGenerator.kt:331 */
        9804  +
        #[allow(missing_docs)] // documentation missing in model
        9805  +
                               /* ServerBuilderGenerator.kt:343 */
        9806  +
        pub fn empty_string(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
10263   9807   
            /* ServerBuilderGenerator.kt:344 */
10264         -
            self.body_list =
        9808  +
            self.empty_string =
10265   9809   
                /* ServerBuilderGenerator.kt:376 */input
10266   9810   
            /* ServerBuilderGenerator.kt:344 */;
10267   9811   
            self
10268   9812   
            /* ServerBuilderGenerator.kt:343 */
10269   9813   
        }
10270   9814   
        /* ServerBuilderGenerator.kt:426 */
10271   9815   
        #[allow(missing_docs)] // documentation missing in model
10272   9816   
                               /* ServerBuilderGenerator.kt:428 */
10273         -
        pub(crate) fn set_body_list(
        9817  +
        pub(crate) fn set_empty_string(
10274   9818   
            mut self,
10275         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
        9819  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
10276   9820   
        ) -> Self {
10277   9821   
            /* ServerBuilderGenerator.kt:429 */
10278         -
            self.body_list = input.map(|v| v.into());
        9822  +
            self.empty_string = input.map(|v| v.into());
10279   9823   
            self
10280   9824   
            /* ServerBuilderGenerator.kt:428 */
10281   9825   
        }
10282         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedListInput`](crate::input::MalformedListInput).
        9826  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OmitsNullSerializesEmptyStringInput`](crate::input::OmitsNullSerializesEmptyStringInput).
10283   9827   
        /* ServerBuilderGenerator.kt:271 */
10284         -
        pub fn build(self) -> crate::input::MalformedListInput {
        9828  +
        pub fn build(self) -> crate::input::OmitsNullSerializesEmptyStringInput {
10285   9829   
            self.build_enforcing_all_constraints()
10286   9830   
        }
10287   9831   
        /* ServerBuilderGenerator.kt:283 */
10288         -
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedListInput {
        9832  +
        fn build_enforcing_all_constraints(
        9833  +
            self,
        9834  +
        ) -> crate::input::OmitsNullSerializesEmptyStringInput {
10289   9835   
            /* ServerBuilderGenerator.kt:542 */
10290         -
            crate::input::MalformedListInput {
        9836  +
            crate::input::OmitsNullSerializesEmptyStringInput {
10291   9837   
                /* ServerBuilderGenerator.kt:546 */
10292         -
                body_list: self.body_list,
        9838  +
                null_value: self.null_value,
        9839  +
                /* ServerBuilderGenerator.kt:546 */
        9840  +
                empty_string: self.empty_string,
10293   9841   
                /* ServerBuilderGenerator.kt:542 */
10294   9842   
            }
10295   9843   
            /* ServerBuilderGenerator.kt:283 */
10296   9844   
        }
10297   9845   
        /* ServerBuilderGenerator.kt:215 */
10298   9846   
    }
10299   9847   
10300   9848   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
10301   9849   
}
10302         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedBooleanInput`](crate::input::MalformedBooleanInput).
10303         -
pub mod malformed_boolean_input {
        9850  +
/// /* ServerBuilderGenerator.kt:171 */See [`OmitsSerializingEmptyListsInput`](crate::input::OmitsSerializingEmptyListsInput).
        9851  +
pub mod omits_serializing_empty_lists_input {
10304   9852   
10305   9853   
    /* RustType.kt:534 */
10306   9854   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
10307   9855   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
10308   9856   
    /* RustType.kt:534 */
10309   9857   
    #[non_exhaustive]
10310   9858   
    /* ServerBuilderConstraintViolations.kt:75 */
10311   9859   
    #[allow(clippy::enum_variant_names)]
10312   9860   
    pub enum ConstraintViolation {
10313         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`boolean_in_path` was not provided but it is required when building `MalformedBooleanInput`.
10314         -
        /* ServerBuilderConstraintViolations.kt:144 */
10315         -
        MissingBooleanInPath,
        9861  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `query_enum_list` when building `OmitsSerializingEmptyListsInput`.
        9862  +
        /* RustType.kt:534 */
        9863  +
        #[doc(hidden)]
        9864  +
        /* ServerBuilderConstraintViolations.kt:165 */
        9865  +
        QueryEnumList(crate::model::foo_enum_list::ConstraintViolation),
10316   9866   
        /* ServerBuilderConstraintViolations.kt:75 */
10317   9867   
    }
10318   9868   
    /* ServerBuilderConstraintViolations.kt:116 */
10319   9869   
    impl ::std::fmt::Display for ConstraintViolation {
10320   9870   
        /* ServerBuilderConstraintViolations.kt:117 */
10321   9871   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
10322   9872   
            /* ServerBuilderConstraintViolations.kt:118 */
10323   9873   
            match self {
10324         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingBooleanInPath => write!(f, "`boolean_in_path` was not provided but it is required when building `MalformedBooleanInput`"),
        9874  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::QueryEnumList(_) => write!(f, "constraint violation occurred building member `query_enum_list` when building `OmitsSerializingEmptyListsInput`"),
10325   9875   
            /* ServerBuilderConstraintViolations.kt:118 */}
10326   9876   
            /* ServerBuilderConstraintViolations.kt:117 */
10327   9877   
        }
10328   9878   
        /* ServerBuilderConstraintViolations.kt:116 */
10329   9879   
    }
10330   9880   
    /* ServerBuilderConstraintViolations.kt:83 */
10331   9881   
    impl ::std::error::Error for ConstraintViolation {}
10332   9882   
    /* ServerBuilderConstraintViolations.kt:172 */
10333   9883   
    impl ConstraintViolation {
10334   9884   
        pub(crate) fn as_validation_exception_field(
10335   9885   
            self,
10336   9886   
            path: ::std::string::String,
10337   9887   
        ) -> crate::model::ValidationExceptionField {
10338   9888   
            match self {
10339         -
            ConstraintViolation::MissingBooleanInPath => crate::model::ValidationExceptionField {
10340         -
                                                message: format!("Value at '{}/booleanInPath' failed to satisfy constraint: Member must not be null", path),
10341         -
                                                path: path + "/booleanInPath",
10342         -
                                            },
        9889  +
                ConstraintViolation::QueryEnumList(inner) => {
        9890  +
                    inner.as_validation_exception_field(path + "/queryEnumList")
        9891  +
                }
10343   9892   
            }
10344   9893   
        }
10345   9894   
    }
10346   9895   
    /* ServerBuilderGenerator.kt:234 */
10347   9896   
    impl ::std::convert::From<ConstraintViolation>
10348   9897   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
10349   9898   
    {
10350   9899   
        fn from(constraint_violation: ConstraintViolation) -> Self {
10351   9900   
            let first_validation_exception_field =
10352   9901   
                constraint_violation.as_validation_exception_field("".to_owned());
10353   9902   
            let validation_exception = crate::error::ValidationException {
10354   9903   
                message: format!(
10355   9904   
                    "1 validation error detected. {}",
10356   9905   
                    &first_validation_exception_field.message
10357   9906   
                ),
10358   9907   
                field_list: Some(vec![first_validation_exception_field]),
10359   9908   
            };
10360   9909   
            Self::ConstraintViolation(
10361   9910   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
10362   9911   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
10363   9912   
                            )
10364   9913   
        }
10365   9914   
    }
10366   9915   
    /* ServerBuilderGenerator.kt:244 */
10367   9916   
    impl ::std::convert::From<Builder>
10368         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedBooleanInput>
        9917  +
        for crate::constrained::MaybeConstrained<crate::input::OmitsSerializingEmptyListsInput>
10369   9918   
    {
10370   9919   
        fn from(builder: Builder) -> Self {
10371   9920   
            Self::Unconstrained(builder)
10372   9921   
        }
10373   9922   
    }
10374   9923   
    /* ServerBuilderGenerator.kt:446 */
10375         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedBooleanInput {
        9924  +
    impl ::std::convert::TryFrom<Builder> for crate::input::OmitsSerializingEmptyListsInput {
10376   9925   
        type Error = ConstraintViolation;
10377   9926   
10378   9927   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
10379   9928   
            builder.build()
10380   9929   
        }
10381   9930   
    }
10382         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedBooleanInput`](crate::input::MalformedBooleanInput).
        9931  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OmitsSerializingEmptyListsInput`](crate::input::OmitsSerializingEmptyListsInput).
10383   9932   
    /* RustType.kt:534 */
10384   9933   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
10385   9934   
    /* ServerBuilderGenerator.kt:211 */
10386   9935   
    pub struct Builder {
10387   9936   
        /* ServerBuilderGenerator.kt:308 */
10388         -
        pub(crate) boolean_in_body: ::std::option::Option<bool>,
        9937  +
        pub(crate) query_string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
10389   9938   
        /* ServerBuilderGenerator.kt:308 */
10390         -
        pub(crate) boolean_in_path: ::std::option::Option<bool>,
        9939  +
        pub(crate) query_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
10391   9940   
        /* ServerBuilderGenerator.kt:308 */
10392         -
        pub(crate) boolean_in_query: ::std::option::Option<bool>,
        9941  +
        pub(crate) query_double_list: ::std::option::Option<::std::vec::Vec<f64>>,
10393   9942   
        /* ServerBuilderGenerator.kt:308 */
10394         -
        pub(crate) boolean_in_header: ::std::option::Option<bool>,
        9943  +
        pub(crate) query_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
        9944  +
        /* ServerBuilderGenerator.kt:308 */
        9945  +
        pub(crate) query_timestamp_list:
        9946  +
            ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
        9947  +
        /* ServerBuilderGenerator.kt:308 */
        9948  +
        pub(crate) query_enum_list: ::std::option::Option<
        9949  +
            crate::constrained::MaybeConstrained<
        9950  +
                crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
        9951  +
            >,
        9952  +
        >,
        9953  +
        /* ServerBuilderGenerator.kt:308 */
        9954  +
        pub(crate) query_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
10395   9955   
        /* ServerBuilderGenerator.kt:211 */
10396   9956   
    }
10397   9957   
    /* ServerBuilderGenerator.kt:215 */
10398   9958   
    impl Builder {
10399   9959   
        /* ServerBuilderGenerator.kt:331 */
10400   9960   
        #[allow(missing_docs)] // documentation missing in model
10401   9961   
                               /* ServerBuilderGenerator.kt:343 */
10402         -
        pub fn boolean_in_body(mut self, input: ::std::option::Option<bool>) -> Self {
        9962  +
        pub fn query_string_list(
        9963  +
            mut self,
        9964  +
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
        9965  +
        ) -> Self {
10403   9966   
            /* ServerBuilderGenerator.kt:344 */
10404         -
            self.boolean_in_body =
        9967  +
            self.query_string_list =
10405   9968   
                /* ServerBuilderGenerator.kt:376 */input
10406   9969   
            /* ServerBuilderGenerator.kt:344 */;
10407   9970   
            self
10408   9971   
            /* ServerBuilderGenerator.kt:343 */
10409   9972   
        }
10410   9973   
        /* ServerBuilderGenerator.kt:426 */
10411   9974   
        #[allow(missing_docs)] // documentation missing in model
10412   9975   
                               /* ServerBuilderGenerator.kt:428 */
10413         -
        pub(crate) fn set_boolean_in_body(
        9976  +
        pub(crate) fn set_query_string_list(
10414   9977   
            mut self,
10415         -
            input: Option<impl ::std::convert::Into<bool>>,
        9978  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
10416   9979   
        ) -> Self {
10417   9980   
            /* ServerBuilderGenerator.kt:429 */
10418         -
            self.boolean_in_body = input.map(|v| v.into());
        9981  +
            self.query_string_list = input.map(|v| v.into());
10419   9982   
            self
10420   9983   
            /* ServerBuilderGenerator.kt:428 */
10421   9984   
        }
10422   9985   
        /* ServerBuilderGenerator.kt:331 */
10423   9986   
        #[allow(missing_docs)] // documentation missing in model
10424   9987   
                               /* ServerBuilderGenerator.kt:343 */
10425         -
        pub fn boolean_in_path(mut self, input: bool) -> Self {
        9988  +
        pub fn query_integer_list(
        9989  +
            mut self,
        9990  +
            input: ::std::option::Option<::std::vec::Vec<i32>>,
        9991  +
        ) -> Self {
10426   9992   
            /* ServerBuilderGenerator.kt:344 */
10427         -
            self.boolean_in_path =
10428         -
                /* ServerBuilderGenerator.kt:345 */Some(
        9993  +
            self.query_integer_list =
10429   9994   
                /* ServerBuilderGenerator.kt:376 */input
10430         -
                /* ServerBuilderGenerator.kt:345 */)
10431   9995   
            /* ServerBuilderGenerator.kt:344 */;
10432   9996   
            self
10433   9997   
            /* ServerBuilderGenerator.kt:343 */
10434   9998   
        }
10435   9999   
        /* ServerBuilderGenerator.kt:426 */
10436  10000   
        #[allow(missing_docs)] // documentation missing in model
10437  10001   
                               /* ServerBuilderGenerator.kt:428 */
10438         -
        pub(crate) fn set_boolean_in_path(
       10002  +
        pub(crate) fn set_query_integer_list(
10439  10003   
            mut self,
10440         -
            input: impl ::std::convert::Into<bool>,
       10004  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
10441  10005   
        ) -> Self {
10442  10006   
            /* ServerBuilderGenerator.kt:429 */
10443         -
            self.boolean_in_path = Some(input.into());
       10007  +
            self.query_integer_list = input.map(|v| v.into());
10444  10008   
            self
10445  10009   
            /* ServerBuilderGenerator.kt:428 */
10446  10010   
        }
10447  10011   
        /* ServerBuilderGenerator.kt:331 */
10448  10012   
        #[allow(missing_docs)] // documentation missing in model
10449  10013   
                               /* ServerBuilderGenerator.kt:343 */
10450         -
        pub fn boolean_in_query(mut self, input: ::std::option::Option<bool>) -> Self {
       10014  +
        pub fn query_double_list(
       10015  +
            mut self,
       10016  +
            input: ::std::option::Option<::std::vec::Vec<f64>>,
       10017  +
        ) -> Self {
10451  10018   
            /* ServerBuilderGenerator.kt:344 */
10452         -
            self.boolean_in_query =
       10019  +
            self.query_double_list =
10453  10020   
                /* ServerBuilderGenerator.kt:376 */input
10454  10021   
            /* ServerBuilderGenerator.kt:344 */;
10455  10022   
            self
10456  10023   
            /* ServerBuilderGenerator.kt:343 */
10457  10024   
        }
10458  10025   
        /* ServerBuilderGenerator.kt:426 */
10459  10026   
        #[allow(missing_docs)] // documentation missing in model
10460  10027   
                               /* ServerBuilderGenerator.kt:428 */
10461         -
        pub(crate) fn set_boolean_in_query(
       10028  +
        pub(crate) fn set_query_double_list(
10462  10029   
            mut self,
10463         -
            input: Option<impl ::std::convert::Into<bool>>,
       10030  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<f64>>>,
10464  10031   
        ) -> Self {
10465  10032   
            /* ServerBuilderGenerator.kt:429 */
10466         -
            self.boolean_in_query = input.map(|v| v.into());
       10033  +
            self.query_double_list = input.map(|v| v.into());
10467  10034   
            self
10468  10035   
            /* ServerBuilderGenerator.kt:428 */
10469  10036   
        }
10470  10037   
        /* ServerBuilderGenerator.kt:331 */
10471  10038   
        #[allow(missing_docs)] // documentation missing in model
10472  10039   
                               /* ServerBuilderGenerator.kt:343 */
10473         -
        pub fn boolean_in_header(mut self, input: ::std::option::Option<bool>) -> Self {
       10040  +
        pub fn query_boolean_list(
       10041  +
            mut self,
       10042  +
            input: ::std::option::Option<::std::vec::Vec<bool>>,
       10043  +
        ) -> Self {
       10044  +
            /* ServerBuilderGenerator.kt:344 */
       10045  +
            self.query_boolean_list =
       10046  +
                /* ServerBuilderGenerator.kt:376 */input
       10047  +
            /* ServerBuilderGenerator.kt:344 */;
       10048  +
            self
       10049  +
            /* ServerBuilderGenerator.kt:343 */
       10050  +
        }
       10051  +
        /* ServerBuilderGenerator.kt:426 */
       10052  +
        #[allow(missing_docs)] // documentation missing in model
       10053  +
                               /* ServerBuilderGenerator.kt:428 */
       10054  +
        pub(crate) fn set_query_boolean_list(
       10055  +
            mut self,
       10056  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<bool>>>,
       10057  +
        ) -> Self {
       10058  +
            /* ServerBuilderGenerator.kt:429 */
       10059  +
            self.query_boolean_list = input.map(|v| v.into());
       10060  +
            self
       10061  +
            /* ServerBuilderGenerator.kt:428 */
       10062  +
        }
       10063  +
        /* ServerBuilderGenerator.kt:331 */
       10064  +
        #[allow(missing_docs)] // documentation missing in model
       10065  +
                               /* ServerBuilderGenerator.kt:343 */
       10066  +
        pub fn query_timestamp_list(
       10067  +
            mut self,
       10068  +
            input: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
       10069  +
        ) -> Self {
       10070  +
            /* ServerBuilderGenerator.kt:344 */
       10071  +
            self.query_timestamp_list =
       10072  +
                /* ServerBuilderGenerator.kt:376 */input
       10073  +
            /* ServerBuilderGenerator.kt:344 */;
       10074  +
            self
       10075  +
            /* ServerBuilderGenerator.kt:343 */
       10076  +
        }
       10077  +
        /* ServerBuilderGenerator.kt:426 */
       10078  +
        #[allow(missing_docs)] // documentation missing in model
       10079  +
                               /* ServerBuilderGenerator.kt:428 */
       10080  +
        pub(crate) fn set_query_timestamp_list(
       10081  +
            mut self,
       10082  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::aws_smithy_types::DateTime>>>,
       10083  +
        ) -> Self {
       10084  +
            /* ServerBuilderGenerator.kt:429 */
       10085  +
            self.query_timestamp_list = input.map(|v| v.into());
       10086  +
            self
       10087  +
            /* ServerBuilderGenerator.kt:428 */
       10088  +
        }
       10089  +
        /* ServerBuilderGenerator.kt:331 */
       10090  +
        #[allow(missing_docs)] // documentation missing in model
       10091  +
                               /* ServerBuilderGenerator.kt:343 */
       10092  +
        pub fn query_enum_list(
       10093  +
            mut self,
       10094  +
            input: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
       10095  +
        ) -> Self {
       10096  +
            /* ServerBuilderGenerator.kt:344 */
       10097  +
            self.query_enum_list =
       10098  +
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
       10099  +
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
       10100  +
                /* ServerBuilderGenerator.kt:363 */)
       10101  +
            /* ServerBuilderGenerator.kt:344 */;
       10102  +
            self
       10103  +
            /* ServerBuilderGenerator.kt:343 */
       10104  +
        }
       10105  +
        /* ServerBuilderGenerator.kt:426 */
       10106  +
        #[allow(missing_docs)] // documentation missing in model
       10107  +
                               /* ServerBuilderGenerator.kt:428 */
       10108  +
        pub(crate) fn set_query_enum_list(
       10109  +
            mut self,
       10110  +
            input: Option<
       10111  +
                impl ::std::convert::Into<
       10112  +
                    crate::constrained::MaybeConstrained<
       10113  +
                        crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
       10114  +
                    >,
       10115  +
                >,
       10116  +
            >,
       10117  +
        ) -> Self {
       10118  +
            /* ServerBuilderGenerator.kt:429 */
       10119  +
            self.query_enum_list = input.map(|v| v.into());
       10120  +
            self
       10121  +
            /* ServerBuilderGenerator.kt:428 */
       10122  +
        }
       10123  +
        /* ServerBuilderGenerator.kt:331 */
       10124  +
        #[allow(missing_docs)] // documentation missing in model
       10125  +
                               /* ServerBuilderGenerator.kt:343 */
       10126  +
        pub fn query_integer_enum_list(
       10127  +
            mut self,
       10128  +
            input: ::std::option::Option<::std::vec::Vec<i32>>,
       10129  +
        ) -> Self {
10474  10130   
            /* ServerBuilderGenerator.kt:344 */
10475         -
            self.boolean_in_header =
       10131  +
            self.query_integer_enum_list =
10476  10132   
                /* ServerBuilderGenerator.kt:376 */input
10477  10133   
            /* ServerBuilderGenerator.kt:344 */;
10478  10134   
            self
10479  10135   
            /* ServerBuilderGenerator.kt:343 */
10480  10136   
        }
10481  10137   
        /* ServerBuilderGenerator.kt:426 */
10482  10138   
        #[allow(missing_docs)] // documentation missing in model
10483  10139   
                               /* ServerBuilderGenerator.kt:428 */
10484         -
        pub(crate) fn set_boolean_in_header(
       10140  +
        pub(crate) fn set_query_integer_enum_list(
10485  10141   
            mut self,
10486         -
            input: Option<impl ::std::convert::Into<bool>>,
       10142  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
10487  10143   
        ) -> Self {
10488  10144   
            /* ServerBuilderGenerator.kt:429 */
10489         -
            self.boolean_in_header = input.map(|v| v.into());
       10145  +
            self.query_integer_enum_list = input.map(|v| v.into());
10490  10146   
            self
10491  10147   
            /* ServerBuilderGenerator.kt:428 */
10492  10148   
        }
10493         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedBooleanInput`](crate::input::MalformedBooleanInput).
       10149  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OmitsSerializingEmptyListsInput`](crate::input::OmitsSerializingEmptyListsInput).
10494  10150   
        /// /* ServerBuilderGenerator.kt:260 */
10495         -
        /// The builder fails to construct a [`MalformedBooleanInput`](crate::input::MalformedBooleanInput) if a [`ConstraintViolation`] occurs.
       10151  +
        /// The builder fails to construct a [`OmitsSerializingEmptyListsInput`](crate::input::OmitsSerializingEmptyListsInput) if a [`ConstraintViolation`] occurs.
10496  10152   
        ///
10497  10153   
        /* ServerBuilderGenerator.kt:271 */
10498         -
        pub fn build(self) -> Result<crate::input::MalformedBooleanInput, ConstraintViolation> {
       10154  +
        pub fn build(
       10155  +
            self,
       10156  +
        ) -> Result<crate::input::OmitsSerializingEmptyListsInput, ConstraintViolation> {
10499  10157   
            self.build_enforcing_all_constraints()
10500  10158   
        }
10501  10159   
        /* ServerBuilderGenerator.kt:283 */
10502  10160   
        fn build_enforcing_all_constraints(
10503  10161   
            self,
10504         -
        ) -> Result<crate::input::MalformedBooleanInput, ConstraintViolation> {
       10162  +
        ) -> Result<crate::input::OmitsSerializingEmptyListsInput, ConstraintViolation> {
10505  10163   
            /* ServerBuilderGenerator.kt:287 */
10506  10164   
            Ok(
10507  10165   
                /* ServerBuilderGenerator.kt:542 */
10508         -
                crate::input::MalformedBooleanInput {
       10166  +
                crate::input::OmitsSerializingEmptyListsInput {
10509  10167   
                    /* ServerBuilderGenerator.kt:546 */
10510         -
                    boolean_in_body: self.boolean_in_body,
       10168  +
                    query_string_list: self.query_string_list,
10511  10169   
                    /* ServerBuilderGenerator.kt:546 */
10512         -
                    boolean_in_path: self
10513         -
                        .boolean_in_path
10514         -
                        /* ServerBuilderGenerator.kt:569 */
10515         -
                        .ok_or(ConstraintViolation::MissingBooleanInPath)?,
       10170  +
                    query_integer_list: self.query_integer_list,
10516  10171   
                    /* ServerBuilderGenerator.kt:546 */
10517         -
                    boolean_in_query: self.boolean_in_query,
       10172  +
                    query_double_list: self.query_double_list,
10518  10173   
                    /* ServerBuilderGenerator.kt:546 */
10519         -
                    boolean_in_header: self.boolean_in_header,
       10174  +
                    query_boolean_list: self.query_boolean_list,
       10175  +
                    /* ServerBuilderGenerator.kt:546 */
       10176  +
                    query_timestamp_list: self.query_timestamp_list,
       10177  +
                    /* ServerBuilderGenerator.kt:546 */
       10178  +
                    query_enum_list: self
       10179  +
                        .query_enum_list
       10180  +
                        /* ServerBuilderGenerator.kt:602 */
       10181  +
                        .map(|v| match v {
       10182  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       10183  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       10184  +
                        })
       10185  +
                        /* ServerBuilderGenerator.kt:614 */
       10186  +
                        .map(|res| {
       10187  +
                            res.map(|v| v.into())
       10188  +
                                .map_err(ConstraintViolation::QueryEnumList)
       10189  +
                        })
       10190  +
                        .transpose()?,
       10191  +
                    /* ServerBuilderGenerator.kt:546 */
       10192  +
                    query_integer_enum_list: self.query_integer_enum_list,
10520  10193   
                    /* ServerBuilderGenerator.kt:542 */
10521  10194   
                }, /* ServerBuilderGenerator.kt:287 */
10522  10195   
            )
10523  10196   
            /* ServerBuilderGenerator.kt:283 */
10524  10197   
        }
10525  10198   
        /* ServerBuilderGenerator.kt:215 */
10526  10199   
    }
10527  10200   
10528  10201   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
10529  10202   
}
10530         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedUnionInput`](crate::input::MalformedUnionInput).
10531         -
pub mod malformed_union_input {
       10203  +
/// /* ServerBuilderGenerator.kt:171 */See [`QueryIdempotencyTokenAutoFillInput`](crate::input::QueryIdempotencyTokenAutoFillInput).
       10204  +
pub mod query_idempotency_token_auto_fill_input {
10532  10205   
10533  10206   
    /* ServerBuilderGenerator.kt:461 */
10534         -
    impl ::std::convert::From<Builder> for crate::input::MalformedUnionInput {
       10207  +
    impl ::std::convert::From<Builder> for crate::input::QueryIdempotencyTokenAutoFillInput {
10535  10208   
        fn from(builder: Builder) -> Self {
10536  10209   
            builder.build()
10537  10210   
        }
10538  10211   
    }
10539         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedUnionInput`](crate::input::MalformedUnionInput).
       10212  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`QueryIdempotencyTokenAutoFillInput`](crate::input::QueryIdempotencyTokenAutoFillInput).
10540  10213   
    /* RustType.kt:534 */
10541  10214   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
10542  10215   
    /* ServerBuilderGenerator.kt:211 */
10543  10216   
    pub struct Builder {
10544  10217   
        /* ServerBuilderGenerator.kt:308 */
10545         -
        pub(crate) union: ::std::option::Option<crate::model::SimpleUnion>,
       10218  +
        pub(crate) token: ::std::option::Option<::std::string::String>,
10546  10219   
        /* ServerBuilderGenerator.kt:211 */
10547  10220   
    }
10548  10221   
    /* ServerBuilderGenerator.kt:215 */
10549  10222   
    impl Builder {
10550  10223   
        /* ServerBuilderGenerator.kt:331 */
10551  10224   
        #[allow(missing_docs)] // documentation missing in model
10552  10225   
                               /* ServerBuilderGenerator.kt:343 */
10553         -
        pub fn union(mut self, input: ::std::option::Option<crate::model::SimpleUnion>) -> Self {
       10226  +
        pub fn token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
10554  10227   
            /* ServerBuilderGenerator.kt:344 */
10555         -
            self.union =
       10228  +
            self.token =
10556  10229   
                /* ServerBuilderGenerator.kt:376 */input
10557  10230   
            /* ServerBuilderGenerator.kt:344 */;
10558  10231   
            self
10559  10232   
            /* ServerBuilderGenerator.kt:343 */
10560  10233   
        }
10561  10234   
        /* ServerBuilderGenerator.kt:426 */
10562  10235   
        #[allow(missing_docs)] // documentation missing in model
10563  10236   
                               /* ServerBuilderGenerator.kt:428 */
10564         -
        pub(crate) fn set_union(
       10237  +
        pub(crate) fn set_token(
10565  10238   
            mut self,
10566         -
            input: Option<impl ::std::convert::Into<crate::model::SimpleUnion>>,
       10239  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
10567  10240   
        ) -> Self {
10568  10241   
            /* ServerBuilderGenerator.kt:429 */
10569         -
            self.union = input.map(|v| v.into());
       10242  +
            self.token = input.map(|v| v.into());
10570  10243   
            self
10571  10244   
            /* ServerBuilderGenerator.kt:428 */
10572  10245   
        }
10573         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedUnionInput`](crate::input::MalformedUnionInput).
       10246  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`QueryIdempotencyTokenAutoFillInput`](crate::input::QueryIdempotencyTokenAutoFillInput).
10574  10247   
        /* ServerBuilderGenerator.kt:271 */
10575         -
        pub fn build(self) -> crate::input::MalformedUnionInput {
       10248  +
        pub fn build(self) -> crate::input::QueryIdempotencyTokenAutoFillInput {
10576  10249   
            self.build_enforcing_all_constraints()
10577  10250   
        }
10578  10251   
        /* ServerBuilderGenerator.kt:283 */
10579         -
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedUnionInput {
       10252  +
        fn build_enforcing_all_constraints(
       10253  +
            self,
       10254  +
        ) -> crate::input::QueryIdempotencyTokenAutoFillInput {
10580  10255   
            /* ServerBuilderGenerator.kt:542 */
10581         -
            crate::input::MalformedUnionInput {
       10256  +
            crate::input::QueryIdempotencyTokenAutoFillInput {
10582  10257   
                /* ServerBuilderGenerator.kt:546 */
10583         -
                union: self.union,
       10258  +
                token: self.token,
10584  10259   
                /* ServerBuilderGenerator.kt:542 */
10585  10260   
            }
10586  10261   
            /* ServerBuilderGenerator.kt:283 */
10587  10262   
        }
10588  10263   
        /* ServerBuilderGenerator.kt:215 */
10589  10264   
    }
10590  10265   
10591  10266   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
10592  10267   
}
10593         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedIntegerInput`](crate::input::MalformedIntegerInput).
10594         -
pub mod malformed_integer_input {
       10268  +
/// /* ServerBuilderGenerator.kt:171 */See [`QueryPrecedenceInput`](crate::input::QueryPrecedenceInput).
       10269  +
pub mod query_precedence_input {
10595  10270   
10596         -
    /* RustType.kt:534 */
10597         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
10598         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
10599         -
    /* RustType.kt:534 */
10600         -
    #[non_exhaustive]
10601         -
    /* ServerBuilderConstraintViolations.kt:75 */
10602         -
    #[allow(clippy::enum_variant_names)]
10603         -
    pub enum ConstraintViolation {
10604         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`integer_in_path` was not provided but it is required when building `MalformedIntegerInput`.
10605         -
        /* ServerBuilderConstraintViolations.kt:144 */
10606         -
        MissingIntegerInPath,
10607         -
        /* ServerBuilderConstraintViolations.kt:75 */
10608         -
    }
10609         -
    /* ServerBuilderConstraintViolations.kt:116 */
10610         -
    impl ::std::fmt::Display for ConstraintViolation {
10611         -
        /* ServerBuilderConstraintViolations.kt:117 */
10612         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
10613         -
            /* ServerBuilderConstraintViolations.kt:118 */
10614         -
            match self {
10615         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingIntegerInPath => write!(f, "`integer_in_path` was not provided but it is required when building `MalformedIntegerInput`"),
10616         -
            /* ServerBuilderConstraintViolations.kt:118 */}
10617         -
            /* ServerBuilderConstraintViolations.kt:117 */
10618         -
        }
10619         -
        /* ServerBuilderConstraintViolations.kt:116 */
10620         -
    }
10621         -
    /* ServerBuilderConstraintViolations.kt:83 */
10622         -
    impl ::std::error::Error for ConstraintViolation {}
10623         -
    /* ServerBuilderConstraintViolations.kt:172 */
10624         -
    impl ConstraintViolation {
10625         -
        pub(crate) fn as_validation_exception_field(
10626         -
            self,
10627         -
            path: ::std::string::String,
10628         -
        ) -> crate::model::ValidationExceptionField {
10629         -
            match self {
10630         -
            ConstraintViolation::MissingIntegerInPath => crate::model::ValidationExceptionField {
10631         -
                                                message: format!("Value at '{}/integerInPath' failed to satisfy constraint: Member must not be null", path),
10632         -
                                                path: path + "/integerInPath",
10633         -
                                            },
10634         -
        }
10635         -
        }
10636         -
    }
10637         -
    /* ServerBuilderGenerator.kt:234 */
10638         -
    impl ::std::convert::From<ConstraintViolation>
10639         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
10640         -
    {
10641         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
10642         -
            let first_validation_exception_field =
10643         -
                constraint_violation.as_validation_exception_field("".to_owned());
10644         -
            let validation_exception = crate::error::ValidationException {
10645         -
                message: format!(
10646         -
                    "1 validation error detected. {}",
10647         -
                    &first_validation_exception_field.message
10648         -
                ),
10649         -
                field_list: Some(vec![first_validation_exception_field]),
10650         -
            };
10651         -
            Self::ConstraintViolation(
10652         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
10653         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
10654         -
                            )
10655         -
        }
10656         -
    }
10657         -
    /* ServerBuilderGenerator.kt:244 */
10658         -
    impl ::std::convert::From<Builder>
10659         -
        for crate::constrained::MaybeConstrained<crate::input::MalformedIntegerInput>
10660         -
    {
       10271  +
    /* ServerBuilderGenerator.kt:461 */
       10272  +
    impl ::std::convert::From<Builder> for crate::input::QueryPrecedenceInput {
10661  10273   
        fn from(builder: Builder) -> Self {
10662         -
            Self::Unconstrained(builder)
10663         -
        }
10664         -
    }
10665         -
    /* ServerBuilderGenerator.kt:446 */
10666         -
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedIntegerInput {
10667         -
        type Error = ConstraintViolation;
10668         -
10669         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
10670  10274   
            builder.build()
10671  10275   
        }
10672  10276   
    }
10673         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedIntegerInput`](crate::input::MalformedIntegerInput).
       10277  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`QueryPrecedenceInput`](crate::input::QueryPrecedenceInput).
10674  10278   
    /* RustType.kt:534 */
10675  10279   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
10676  10280   
    /* ServerBuilderGenerator.kt:211 */
10677  10281   
    pub struct Builder {
10678  10282   
        /* ServerBuilderGenerator.kt:308 */
10679         -
        pub(crate) integer_in_body: ::std::option::Option<i32>,
10680         -
        /* ServerBuilderGenerator.kt:308 */
10681         -
        pub(crate) integer_in_path: ::std::option::Option<i32>,
10682         -
        /* ServerBuilderGenerator.kt:308 */
10683         -
        pub(crate) integer_in_query: ::std::option::Option<i32>,
       10283  +
        pub(crate) foo: ::std::option::Option<::std::string::String>,
10684  10284   
        /* ServerBuilderGenerator.kt:308 */
10685         -
        pub(crate) integer_in_header: ::std::option::Option<i32>,
       10285  +
        pub(crate) baz: ::std::option::Option<
       10286  +
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10287  +
        >,
10686  10288   
        /* ServerBuilderGenerator.kt:211 */
10687  10289   
    }
10688  10290   
    /* ServerBuilderGenerator.kt:215 */
10689  10291   
    impl Builder {
10690  10292   
        /* ServerBuilderGenerator.kt:331 */
10691  10293   
        #[allow(missing_docs)] // documentation missing in model
10692  10294   
                               /* ServerBuilderGenerator.kt:343 */
10693         -
        pub fn integer_in_body(mut self, input: ::std::option::Option<i32>) -> Self {
       10295  +
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
10694  10296   
            /* ServerBuilderGenerator.kt:344 */
10695         -
            self.integer_in_body =
       10297  +
            self.foo =
10696  10298   
                /* ServerBuilderGenerator.kt:376 */input
10697  10299   
            /* ServerBuilderGenerator.kt:344 */;
10698  10300   
            self
10699  10301   
            /* ServerBuilderGenerator.kt:343 */
10700  10302   
        }
10701  10303   
        /* ServerBuilderGenerator.kt:426 */
10702  10304   
        #[allow(missing_docs)] // documentation missing in model
10703  10305   
                               /* ServerBuilderGenerator.kt:428 */
10704         -
        pub(crate) fn set_integer_in_body(
       10306  +
        pub(crate) fn set_foo(
10705  10307   
            mut self,
10706         -
            input: Option<impl ::std::convert::Into<i32>>,
       10308  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
10707  10309   
        ) -> Self {
10708  10310   
            /* ServerBuilderGenerator.kt:429 */
10709         -
            self.integer_in_body = input.map(|v| v.into());
10710         -
            self
10711         -
            /* ServerBuilderGenerator.kt:428 */
10712         -
        }
10713         -
        /* ServerBuilderGenerator.kt:331 */
10714         -
        #[allow(missing_docs)] // documentation missing in model
10715         -
                               /* ServerBuilderGenerator.kt:343 */
10716         -
        pub fn integer_in_path(mut self, input: i32) -> Self {
10717         -
            /* ServerBuilderGenerator.kt:344 */
10718         -
            self.integer_in_path =
10719         -
                /* ServerBuilderGenerator.kt:345 */Some(
10720         -
                    /* ServerBuilderGenerator.kt:376 */input
10721         -
                /* ServerBuilderGenerator.kt:345 */)
10722         -
            /* ServerBuilderGenerator.kt:344 */;
10723         -
            self
10724         -
            /* ServerBuilderGenerator.kt:343 */
10725         -
        }
10726         -
        /* ServerBuilderGenerator.kt:426 */
10727         -
        #[allow(missing_docs)] // documentation missing in model
10728         -
                               /* ServerBuilderGenerator.kt:428 */
10729         -
        pub(crate) fn set_integer_in_path(mut self, input: impl ::std::convert::Into<i32>) -> Self {
10730         -
            /* ServerBuilderGenerator.kt:429 */
10731         -
            self.integer_in_path = Some(input.into());
       10311  +
            self.foo = input.map(|v| v.into());
10732  10312   
            self
10733  10313   
            /* ServerBuilderGenerator.kt:428 */
10734  10314   
        }
10735  10315   
        /* ServerBuilderGenerator.kt:331 */
10736  10316   
        #[allow(missing_docs)] // documentation missing in model
10737  10317   
                               /* ServerBuilderGenerator.kt:343 */
10738         -
        pub fn integer_in_query(mut self, input: ::std::option::Option<i32>) -> Self {
       10318  +
        pub fn baz(
       10319  +
            mut self,
       10320  +
            input: ::std::option::Option<
       10321  +
                ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10322  +
            >,
       10323  +
        ) -> Self {
10739  10324   
            /* ServerBuilderGenerator.kt:344 */
10740         -
            self.integer_in_query =
       10325  +
            self.baz =
10741  10326   
                /* ServerBuilderGenerator.kt:376 */input
10742  10327   
            /* ServerBuilderGenerator.kt:344 */;
10743  10328   
            self
10744  10329   
            /* ServerBuilderGenerator.kt:343 */
10745  10330   
        }
10746  10331   
        /* ServerBuilderGenerator.kt:426 */
10747  10332   
        #[allow(missing_docs)] // documentation missing in model
10748  10333   
                               /* ServerBuilderGenerator.kt:428 */
10749         -
        pub(crate) fn set_integer_in_query(
       10334  +
        pub(crate) fn set_baz(
10750  10335   
            mut self,
10751         -
            input: Option<impl ::std::convert::Into<i32>>,
       10336  +
            input: Option<
       10337  +
                impl ::std::convert::Into<
       10338  +
                    ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10339  +
                >,
       10340  +
            >,
10752  10341   
        ) -> Self {
10753  10342   
            /* ServerBuilderGenerator.kt:429 */
10754         -
            self.integer_in_query = input.map(|v| v.into());
       10343  +
            self.baz = input.map(|v| v.into());
10755  10344   
            self
10756  10345   
            /* ServerBuilderGenerator.kt:428 */
10757  10346   
        }
       10347  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`QueryPrecedenceInput`](crate::input::QueryPrecedenceInput).
       10348  +
        /* ServerBuilderGenerator.kt:271 */
       10349  +
        pub fn build(self) -> crate::input::QueryPrecedenceInput {
       10350  +
            self.build_enforcing_all_constraints()
       10351  +
        }
       10352  +
        /* ServerBuilderGenerator.kt:283 */
       10353  +
        fn build_enforcing_all_constraints(self) -> crate::input::QueryPrecedenceInput {
       10354  +
            /* ServerBuilderGenerator.kt:542 */
       10355  +
            crate::input::QueryPrecedenceInput {
       10356  +
                /* ServerBuilderGenerator.kt:546 */
       10357  +
                foo: self.foo,
       10358  +
                /* ServerBuilderGenerator.kt:546 */
       10359  +
                baz: self.baz,
       10360  +
                /* ServerBuilderGenerator.kt:542 */
       10361  +
            }
       10362  +
            /* ServerBuilderGenerator.kt:283 */
       10363  +
        }
       10364  +
        /* ServerBuilderGenerator.kt:215 */
       10365  +
    }
       10366  +
       10367  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       10368  +
}
       10369  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpQueryParamsOnlyOperationInput`](crate::input::HttpQueryParamsOnlyOperationInput).
       10370  +
pub mod http_query_params_only_operation_input {
       10371  +
       10372  +
    /* ServerBuilderGenerator.kt:461 */
       10373  +
    impl ::std::convert::From<Builder> for crate::input::HttpQueryParamsOnlyOperationInput {
       10374  +
        fn from(builder: Builder) -> Self {
       10375  +
            builder.build()
       10376  +
        }
       10377  +
    }
       10378  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpQueryParamsOnlyOperationInput`](crate::input::HttpQueryParamsOnlyOperationInput).
       10379  +
    /* RustType.kt:534 */
       10380  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       10381  +
    /* ServerBuilderGenerator.kt:211 */
       10382  +
    pub struct Builder {
       10383  +
        /* ServerBuilderGenerator.kt:308 */
       10384  +
        pub(crate) query_map: ::std::option::Option<
       10385  +
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10386  +
        >,
       10387  +
        /* ServerBuilderGenerator.kt:211 */
       10388  +
    }
       10389  +
    /* ServerBuilderGenerator.kt:215 */
       10390  +
    impl Builder {
10758  10391   
        /* ServerBuilderGenerator.kt:331 */
10759  10392   
        #[allow(missing_docs)] // documentation missing in model
10760  10393   
                               /* ServerBuilderGenerator.kt:343 */
10761         -
        pub fn integer_in_header(mut self, input: ::std::option::Option<i32>) -> Self {
       10394  +
        pub fn query_map(
       10395  +
            mut self,
       10396  +
            input: ::std::option::Option<
       10397  +
                ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10398  +
            >,
       10399  +
        ) -> Self {
10762  10400   
            /* ServerBuilderGenerator.kt:344 */
10763         -
            self.integer_in_header =
       10401  +
            self.query_map =
10764  10402   
                /* ServerBuilderGenerator.kt:376 */input
10765  10403   
            /* ServerBuilderGenerator.kt:344 */;
10766  10404   
            self
10767  10405   
            /* ServerBuilderGenerator.kt:343 */
10768  10406   
        }
10769  10407   
        /* ServerBuilderGenerator.kt:426 */
10770  10408   
        #[allow(missing_docs)] // documentation missing in model
10771  10409   
                               /* ServerBuilderGenerator.kt:428 */
10772         -
        pub(crate) fn set_integer_in_header(
       10410  +
        pub(crate) fn set_query_map(
10773  10411   
            mut self,
10774         -
            input: Option<impl ::std::convert::Into<i32>>,
       10412  +
            input: Option<
       10413  +
                impl ::std::convert::Into<
       10414  +
                    ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10415  +
                >,
       10416  +
            >,
10775  10417   
        ) -> Self {
10776  10418   
            /* ServerBuilderGenerator.kt:429 */
10777         -
            self.integer_in_header = input.map(|v| v.into());
       10419  +
            self.query_map = input.map(|v| v.into());
10778  10420   
            self
10779  10421   
            /* ServerBuilderGenerator.kt:428 */
10780  10422   
        }
10781         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedIntegerInput`](crate::input::MalformedIntegerInput).
10782         -
        /// /* ServerBuilderGenerator.kt:260 */
10783         -
        /// The builder fails to construct a [`MalformedIntegerInput`](crate::input::MalformedIntegerInput) if a [`ConstraintViolation`] occurs.
10784         -
        ///
       10423  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpQueryParamsOnlyOperationInput`](crate::input::HttpQueryParamsOnlyOperationInput).
10785  10424   
        /* ServerBuilderGenerator.kt:271 */
10786         -
        pub fn build(self) -> Result<crate::input::MalformedIntegerInput, ConstraintViolation> {
       10425  +
        pub fn build(self) -> crate::input::HttpQueryParamsOnlyOperationInput {
10787  10426   
            self.build_enforcing_all_constraints()
10788  10427   
        }
10789  10428   
        /* ServerBuilderGenerator.kt:283 */
10790  10429   
        fn build_enforcing_all_constraints(
10791  10430   
            self,
10792         -
        ) -> Result<crate::input::MalformedIntegerInput, ConstraintViolation> {
10793         -
            /* ServerBuilderGenerator.kt:287 */
10794         -
            Ok(
       10431  +
        ) -> crate::input::HttpQueryParamsOnlyOperationInput {
10795  10432   
            /* ServerBuilderGenerator.kt:542 */
10796         -
                crate::input::MalformedIntegerInput {
10797         -
                    /* ServerBuilderGenerator.kt:546 */
10798         -
                    integer_in_body: self.integer_in_body,
       10433  +
            crate::input::HttpQueryParamsOnlyOperationInput {
10799  10434   
                /* ServerBuilderGenerator.kt:546 */
10800         -
                    integer_in_path: self
10801         -
                        .integer_in_path
10802         -
                        /* ServerBuilderGenerator.kt:569 */
10803         -
                        .ok_or(ConstraintViolation::MissingIntegerInPath)?,
10804         -
                    /* ServerBuilderGenerator.kt:546 */
10805         -
                    integer_in_query: self.integer_in_query,
10806         -
                    /* ServerBuilderGenerator.kt:546 */
10807         -
                    integer_in_header: self.integer_in_header,
       10435  +
                query_map: self.query_map,
10808  10436   
                /* ServerBuilderGenerator.kt:542 */
10809         -
                }, /* ServerBuilderGenerator.kt:287 */
10810         -
            )
       10437  +
            }
10811  10438   
            /* ServerBuilderGenerator.kt:283 */
10812  10439   
        }
10813  10440   
        /* ServerBuilderGenerator.kt:215 */
10814  10441   
    }
10815  10442   
10816  10443   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
10817  10444   
}
10818         -
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedRequestBodyInput`](crate::input::MalformedRequestBodyInput).
10819         -
pub mod malformed_request_body_input {
       10445  +
/// /* ServerBuilderGenerator.kt:171 */See [`QueryParamsAsStringListMapInput`](crate::input::QueryParamsAsStringListMapInput).
       10446  +
pub mod query_params_as_string_list_map_input {
10820  10447   
10821  10448   
    /* ServerBuilderGenerator.kt:461 */
10822         -
    impl ::std::convert::From<Builder> for crate::input::MalformedRequestBodyInput {
       10449  +
    impl ::std::convert::From<Builder> for crate::input::QueryParamsAsStringListMapInput {
10823  10450   
        fn from(builder: Builder) -> Self {
10824  10451   
            builder.build()
10825  10452   
        }
10826  10453   
    }
10827         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedRequestBodyInput`](crate::input::MalformedRequestBodyInput).
       10454  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`QueryParamsAsStringListMapInput`](crate::input::QueryParamsAsStringListMapInput).
10828  10455   
    /* RustType.kt:534 */
10829  10456   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
10830  10457   
    /* ServerBuilderGenerator.kt:211 */
10831  10458   
    pub struct Builder {
10832         -
        /* ServerBuilderGenerator.kt:308 */ pub(crate) int: ::std::option::Option<i32>,
10833  10459   
        /* ServerBuilderGenerator.kt:308 */
10834         -
        pub(crate) float: ::std::option::Option<f32>,
       10460  +
        pub(crate) qux: ::std::option::Option<::std::string::String>,
       10461  +
        /* ServerBuilderGenerator.kt:308 */
       10462  +
        pub(crate) foo: ::std::option::Option<
       10463  +
            ::std::collections::HashMap<
       10464  +
                ::std::string::String,
       10465  +
                ::std::vec::Vec<::std::string::String>,
       10466  +
            >,
       10467  +
        >,
10835  10468   
        /* ServerBuilderGenerator.kt:211 */
10836  10469   
    }
10837  10470   
    /* ServerBuilderGenerator.kt:215 */
10838  10471   
    impl Builder {
10839  10472   
        /* ServerBuilderGenerator.kt:331 */
10840  10473   
        #[allow(missing_docs)] // documentation missing in model
10841  10474   
                               /* ServerBuilderGenerator.kt:343 */
10842         -
        pub fn int(mut self, input: ::std::option::Option<i32>) -> Self {
       10475  +
        pub fn qux(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
10843  10476   
            /* ServerBuilderGenerator.kt:344 */
10844         -
            self.int =
       10477  +
            self.qux =
10845  10478   
                /* ServerBuilderGenerator.kt:376 */input
10846  10479   
            /* ServerBuilderGenerator.kt:344 */;
10847  10480   
            self
10848  10481   
            /* ServerBuilderGenerator.kt:343 */
10849  10482   
        }
10850  10483   
        /* ServerBuilderGenerator.kt:426 */
10851  10484   
        #[allow(missing_docs)] // documentation missing in model
10852  10485   
                               /* ServerBuilderGenerator.kt:428 */
10853         -
        pub(crate) fn set_int(mut self, input: Option<impl ::std::convert::Into<i32>>) -> Self {
       10486  +
        pub(crate) fn set_qux(
       10487  +
            mut self,
       10488  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       10489  +
        ) -> Self {
10854  10490   
            /* ServerBuilderGenerator.kt:429 */
10855         -
            self.int = input.map(|v| v.into());
       10491  +
            self.qux = input.map(|v| v.into());
10856  10492   
            self
10857  10493   
            /* ServerBuilderGenerator.kt:428 */
10858  10494   
        }
10859  10495   
        /* ServerBuilderGenerator.kt:331 */
10860  10496   
        #[allow(missing_docs)] // documentation missing in model
10861  10497   
                               /* ServerBuilderGenerator.kt:343 */
10862         -
        pub fn float(mut self, input: ::std::option::Option<f32>) -> Self {
       10498  +
        pub fn foo(
       10499  +
            mut self,
       10500  +
            input: ::std::option::Option<
       10501  +
                ::std::collections::HashMap<
       10502  +
                    ::std::string::String,
       10503  +
                    ::std::vec::Vec<::std::string::String>,
       10504  +
                >,
       10505  +
            >,
       10506  +
        ) -> Self {
10863  10507   
            /* ServerBuilderGenerator.kt:344 */
10864         -
            self.float =
       10508  +
            self.foo =
10865  10509   
                /* ServerBuilderGenerator.kt:376 */input
10866  10510   
            /* ServerBuilderGenerator.kt:344 */;
10867  10511   
            self
10868  10512   
            /* ServerBuilderGenerator.kt:343 */
10869  10513   
        }
10870  10514   
        /* ServerBuilderGenerator.kt:426 */
10871  10515   
        #[allow(missing_docs)] // documentation missing in model
10872  10516   
                               /* ServerBuilderGenerator.kt:428 */
10873         -
        pub(crate) fn set_float(mut self, input: Option<impl ::std::convert::Into<f32>>) -> Self {
       10517  +
        pub(crate) fn set_foo(
       10518  +
            mut self,
       10519  +
            input: Option<
       10520  +
                impl ::std::convert::Into<
       10521  +
                    ::std::collections::HashMap<
       10522  +
                        ::std::string::String,
       10523  +
                        ::std::vec::Vec<::std::string::String>,
       10524  +
                    >,
       10525  +
                >,
       10526  +
            >,
       10527  +
        ) -> Self {
10874  10528   
            /* ServerBuilderGenerator.kt:429 */
10875         -
            self.float = input.map(|v| v.into());
       10529  +
            self.foo = input.map(|v| v.into());
10876  10530   
            self
10877  10531   
            /* ServerBuilderGenerator.kt:428 */
10878  10532   
        }
10879         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedRequestBodyInput`](crate::input::MalformedRequestBodyInput).
       10533  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`QueryParamsAsStringListMapInput`](crate::input::QueryParamsAsStringListMapInput).
10880  10534   
        /* ServerBuilderGenerator.kt:271 */
10881         -
        pub fn build(self) -> crate::input::MalformedRequestBodyInput {
       10535  +
        pub fn build(self) -> crate::input::QueryParamsAsStringListMapInput {
10882  10536   
            self.build_enforcing_all_constraints()
10883  10537   
        }
10884  10538   
        /* ServerBuilderGenerator.kt:283 */
10885         -
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedRequestBodyInput {
       10539  +
        fn build_enforcing_all_constraints(self) -> crate::input::QueryParamsAsStringListMapInput {
10886  10540   
            /* ServerBuilderGenerator.kt:542 */
10887         -
            crate::input::MalformedRequestBodyInput {
       10541  +
            crate::input::QueryParamsAsStringListMapInput {
10888  10542   
                /* ServerBuilderGenerator.kt:546 */
10889         -
                int: self.int,
       10543  +
                qux: self.qux,
10890  10544   
                /* ServerBuilderGenerator.kt:546 */
10891         -
                float: self.float,
       10545  +
                foo: self.foo,
10892  10546   
                /* ServerBuilderGenerator.kt:542 */
10893  10547   
            }
10894  10548   
            /* ServerBuilderGenerator.kt:283 */
10895  10549   
        }
10896  10550   
        /* ServerBuilderGenerator.kt:215 */
10897  10551   
    }
10898  10552   
10899  10553   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
10900  10554   
}
10901         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpChecksumRequiredInput`](crate::input::HttpChecksumRequiredInput).
10902         -
pub mod http_checksum_required_input {
       10555  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPrefixHeadersInput`](crate::input::HttpPrefixHeadersInput).
       10556  +
pub mod http_prefix_headers_input {
10903  10557   
10904  10558   
    /* ServerBuilderGenerator.kt:461 */
10905         -
    impl ::std::convert::From<Builder> for crate::input::HttpChecksumRequiredInput {
       10559  +
    impl ::std::convert::From<Builder> for crate::input::HttpPrefixHeadersInput {
10906  10560   
        fn from(builder: Builder) -> Self {
10907  10561   
            builder.build()
10908  10562   
        }
10909  10563   
    }
10910         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpChecksumRequiredInput`](crate::input::HttpChecksumRequiredInput).
       10564  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPrefixHeadersInput`](crate::input::HttpPrefixHeadersInput).
10911  10565   
    /* RustType.kt:534 */
10912  10566   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
10913  10567   
    /* ServerBuilderGenerator.kt:211 */
10914  10568   
    pub struct Builder {
10915  10569   
        /* ServerBuilderGenerator.kt:308 */
10916  10570   
        pub(crate) foo: ::std::option::Option<::std::string::String>,
       10571  +
        /* ServerBuilderGenerator.kt:308 */
       10572  +
        pub(crate) foo_map: ::std::option::Option<
       10573  +
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10574  +
        >,
10917  10575   
        /* ServerBuilderGenerator.kt:211 */
10918  10576   
    }
10919  10577   
    /* ServerBuilderGenerator.kt:215 */
10920  10578   
    impl Builder {
10921  10579   
        /* ServerBuilderGenerator.kt:331 */
10922  10580   
        #[allow(missing_docs)] // documentation missing in model
10923  10581   
                               /* ServerBuilderGenerator.kt:343 */
10924  10582   
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
10925  10583   
            /* ServerBuilderGenerator.kt:344 */
10926  10584   
            self.foo =
10927  10585   
                /* ServerBuilderGenerator.kt:376 */input
10928  10586   
            /* ServerBuilderGenerator.kt:344 */;
10929  10587   
            self
10930  10588   
            /* ServerBuilderGenerator.kt:343 */
10931  10589   
        }
10932  10590   
        /* ServerBuilderGenerator.kt:426 */
10933  10591   
        #[allow(missing_docs)] // documentation missing in model
10934  10592   
                               /* ServerBuilderGenerator.kt:428 */
10935  10593   
        pub(crate) fn set_foo(
10936  10594   
            mut self,
10937  10595   
            input: Option<impl ::std::convert::Into<::std::string::String>>,
10938  10596   
        ) -> Self {
10939  10597   
            /* ServerBuilderGenerator.kt:429 */
10940  10598   
            self.foo = input.map(|v| v.into());
10941  10599   
            self
10942  10600   
            /* ServerBuilderGenerator.kt:428 */
10943  10601   
        }
10944         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpChecksumRequiredInput`](crate::input::HttpChecksumRequiredInput).
       10602  +
        /* ServerBuilderGenerator.kt:331 */
       10603  +
        #[allow(missing_docs)] // documentation missing in model
       10604  +
                               /* ServerBuilderGenerator.kt:343 */
       10605  +
        pub fn foo_map(
       10606  +
            mut self,
       10607  +
            input: ::std::option::Option<
       10608  +
                ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10609  +
            >,
       10610  +
        ) -> Self {
       10611  +
            /* ServerBuilderGenerator.kt:344 */
       10612  +
            self.foo_map =
       10613  +
                /* ServerBuilderGenerator.kt:376 */input
       10614  +
            /* ServerBuilderGenerator.kt:344 */;
       10615  +
            self
       10616  +
            /* ServerBuilderGenerator.kt:343 */
       10617  +
        }
       10618  +
        /* ServerBuilderGenerator.kt:426 */
       10619  +
        #[allow(missing_docs)] // documentation missing in model
       10620  +
                               /* ServerBuilderGenerator.kt:428 */
       10621  +
        pub(crate) fn set_foo_map(
       10622  +
            mut self,
       10623  +
            input: Option<
       10624  +
                impl ::std::convert::Into<
       10625  +
                    ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10626  +
                >,
       10627  +
            >,
       10628  +
        ) -> Self {
       10629  +
            /* ServerBuilderGenerator.kt:429 */
       10630  +
            self.foo_map = input.map(|v| v.into());
       10631  +
            self
       10632  +
            /* ServerBuilderGenerator.kt:428 */
       10633  +
        }
       10634  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPrefixHeadersInput`](crate::input::HttpPrefixHeadersInput).
10945  10635   
        /* ServerBuilderGenerator.kt:271 */
10946         -
        pub fn build(self) -> crate::input::HttpChecksumRequiredInput {
       10636  +
        pub fn build(self) -> crate::input::HttpPrefixHeadersInput {
10947  10637   
            self.build_enforcing_all_constraints()
10948  10638   
        }
10949  10639   
        /* ServerBuilderGenerator.kt:283 */
10950         -
        fn build_enforcing_all_constraints(self) -> crate::input::HttpChecksumRequiredInput {
       10640  +
        fn build_enforcing_all_constraints(self) -> crate::input::HttpPrefixHeadersInput {
10951  10641   
            /* ServerBuilderGenerator.kt:542 */
10952         -
            crate::input::HttpChecksumRequiredInput {
       10642  +
            crate::input::HttpPrefixHeadersInput {
10953  10643   
                /* ServerBuilderGenerator.kt:546 */
10954  10644   
                foo: self.foo,
       10645  +
                /* ServerBuilderGenerator.kt:546 */
       10646  +
                foo_map: self.foo_map,
10955  10647   
                /* ServerBuilderGenerator.kt:542 */
10956  10648   
            }
10957  10649   
            /* ServerBuilderGenerator.kt:283 */
10958  10650   
        }
10959  10651   
        /* ServerBuilderGenerator.kt:215 */
10960  10652   
    }
10961  10653   
10962  10654   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
10963  10655   
}
10964         -
/// /* ServerBuilderGenerator.kt:171 */See [`HostWithPathOperationInput`](crate::input::HostWithPathOperationInput).
10965         -
pub mod host_with_path_operation_input {
       10656  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPrefixHeadersInResponseInput`](crate::input::HttpPrefixHeadersInResponseInput).
       10657  +
pub mod http_prefix_headers_in_response_input {
10966  10658   
10967  10659   
    /* ServerBuilderGenerator.kt:461 */
10968         -
    impl ::std::convert::From<Builder> for crate::input::HostWithPathOperationInput {
       10660  +
    impl ::std::convert::From<Builder> for crate::input::HttpPrefixHeadersInResponseInput {
10969  10661   
        fn from(builder: Builder) -> Self {
10970  10662   
            builder.build()
10971  10663   
        }
10972  10664   
    }
10973         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HostWithPathOperationInput`](crate::input::HostWithPathOperationInput).
       10665  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPrefixHeadersInResponseInput`](crate::input::HttpPrefixHeadersInResponseInput).
10974  10666   
    /* RustType.kt:534 */
10975  10667   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
10976  10668   
    /* ServerBuilderGenerator.kt:211 */
10977  10669   
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
10978  10670   
    /* ServerBuilderGenerator.kt:215 */
10979  10671   
    impl Builder {
10980         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HostWithPathOperationInput`](crate::input::HostWithPathOperationInput).
       10672  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPrefixHeadersInResponseInput`](crate::input::HttpPrefixHeadersInResponseInput).
10981  10673   
        /* ServerBuilderGenerator.kt:271 */
10982         -
        pub fn build(self) -> crate::input::HostWithPathOperationInput {
10983         -
            self.build_enforcing_all_constraints()
10984         -
        }
10985         -
        /* ServerBuilderGenerator.kt:283 */
10986         -
        fn build_enforcing_all_constraints(self) -> crate::input::HostWithPathOperationInput {
10987         -
            /* ServerBuilderGenerator.kt:542 */
10988         -
            crate::input::HostWithPathOperationInput {
10989         -
            /* ServerBuilderGenerator.kt:542 */}
10990         -
            /* ServerBuilderGenerator.kt:283 */
10991         -
        }
10992         -
        /* ServerBuilderGenerator.kt:215 */
10993         -
    }
10994         -
10995         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
10996         -
}
10997         -
/// /* ServerBuilderGenerator.kt:171 */See [`EndpointWithHostLabelOperationInput`](crate::input::EndpointWithHostLabelOperationInput).
10998         -
pub mod endpoint_with_host_label_operation_input {
10999         -
11000         -
    /* RustType.kt:534 */
11001         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
11002         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
11003         -
    /* RustType.kt:534 */
11004         -
    #[non_exhaustive]
11005         -
    /* ServerBuilderConstraintViolations.kt:75 */
11006         -
    #[allow(clippy::enum_variant_names)]
11007         -
    pub enum ConstraintViolation {
11008         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`label` was not provided but it is required when building `EndpointWithHostLabelOperationInput`.
11009         -
        /* ServerBuilderConstraintViolations.kt:144 */
11010         -
        MissingLabel,
11011         -
        /* ServerBuilderConstraintViolations.kt:75 */
11012         -
    }
11013         -
    /* ServerBuilderConstraintViolations.kt:116 */
11014         -
    impl ::std::fmt::Display for ConstraintViolation {
11015         -
        /* ServerBuilderConstraintViolations.kt:117 */
11016         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
11017         -
            /* ServerBuilderConstraintViolations.kt:118 */
11018         -
            match self {
11019         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingLabel => write!(f, "`label` was not provided but it is required when building `EndpointWithHostLabelOperationInput`"),
11020         -
            /* ServerBuilderConstraintViolations.kt:118 */}
11021         -
            /* ServerBuilderConstraintViolations.kt:117 */
11022         -
        }
11023         -
        /* ServerBuilderConstraintViolations.kt:116 */
11024         -
    }
11025         -
    /* ServerBuilderConstraintViolations.kt:83 */
11026         -
    impl ::std::error::Error for ConstraintViolation {}
11027         -
    /* ServerBuilderConstraintViolations.kt:172 */
11028         -
    impl ConstraintViolation {
11029         -
        pub(crate) fn as_validation_exception_field(
11030         -
            self,
11031         -
            path: ::std::string::String,
11032         -
        ) -> crate::model::ValidationExceptionField {
11033         -
            match self {
11034         -
                ConstraintViolation::MissingLabel => crate::model::ValidationExceptionField {
11035         -
                    message: format!(
11036         -
                        "Value at '{}/label' failed to satisfy constraint: Member must not be null",
11037         -
                        path
11038         -
                    ),
11039         -
                    path: path + "/label",
11040         -
                },
11041         -
            }
11042         -
        }
11043         -
    }
11044         -
    /* ServerBuilderGenerator.kt:234 */
11045         -
    impl ::std::convert::From<ConstraintViolation>
11046         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
11047         -
    {
11048         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
11049         -
            let first_validation_exception_field =
11050         -
                constraint_violation.as_validation_exception_field("".to_owned());
11051         -
            let validation_exception = crate::error::ValidationException {
11052         -
                message: format!(
11053         -
                    "1 validation error detected. {}",
11054         -
                    &first_validation_exception_field.message
11055         -
                ),
11056         -
                field_list: Some(vec![first_validation_exception_field]),
11057         -
            };
11058         -
            Self::ConstraintViolation(
11059         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
11060         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
11061         -
                            )
11062         -
        }
       10674  +
        pub fn build(self) -> crate::input::HttpPrefixHeadersInResponseInput {
       10675  +
            self.build_enforcing_all_constraints()
11063  10676   
        }
11064         -
    /* ServerBuilderGenerator.kt:244 */
11065         -
    impl ::std::convert::From<Builder>
11066         -
        for crate::constrained::MaybeConstrained<crate::input::EndpointWithHostLabelOperationInput>
11067         -
    {
11068         -
        fn from(builder: Builder) -> Self {
11069         -
            Self::Unconstrained(builder)
       10677  +
        /* ServerBuilderGenerator.kt:283 */
       10678  +
        fn build_enforcing_all_constraints(self) -> crate::input::HttpPrefixHeadersInResponseInput {
       10679  +
            /* ServerBuilderGenerator.kt:542 */
       10680  +
            crate::input::HttpPrefixHeadersInResponseInput {
       10681  +
            /* ServerBuilderGenerator.kt:542 */}
       10682  +
            /* ServerBuilderGenerator.kt:283 */
11070  10683   
        }
       10684  +
        /* ServerBuilderGenerator.kt:215 */
11071  10685   
    }
11072         -
    /* ServerBuilderGenerator.kt:446 */
11073         -
    impl ::std::convert::TryFrom<Builder> for crate::input::EndpointWithHostLabelOperationInput {
11074         -
        type Error = ConstraintViolation;
11075  10686   
11076         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       10687  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       10688  +
}
       10689  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpEmptyPrefixHeadersInput`](crate::input::HttpEmptyPrefixHeadersInput).
       10690  +
pub mod http_empty_prefix_headers_input {
       10691  +
       10692  +
    /* ServerBuilderGenerator.kt:461 */
       10693  +
    impl ::std::convert::From<Builder> for crate::input::HttpEmptyPrefixHeadersInput {
       10694  +
        fn from(builder: Builder) -> Self {
11077  10695   
            builder.build()
11078  10696   
        }
11079  10697   
    }
11080         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`EndpointWithHostLabelOperationInput`](crate::input::EndpointWithHostLabelOperationInput).
       10698  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpEmptyPrefixHeadersInput`](crate::input::HttpEmptyPrefixHeadersInput).
11081  10699   
    /* RustType.kt:534 */
11082  10700   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
11083  10701   
    /* ServerBuilderGenerator.kt:211 */
11084  10702   
    pub struct Builder {
11085  10703   
        /* ServerBuilderGenerator.kt:308 */
11086         -
        pub(crate) label: ::std::option::Option<::std::string::String>,
       10704  +
        pub(crate) prefix_headers: ::std::option::Option<
       10705  +
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10706  +
        >,
       10707  +
        /* ServerBuilderGenerator.kt:308 */
       10708  +
        pub(crate) specific_header: ::std::option::Option<::std::string::String>,
11087  10709   
        /* ServerBuilderGenerator.kt:211 */
11088  10710   
    }
11089  10711   
    /* ServerBuilderGenerator.kt:215 */
11090  10712   
    impl Builder {
11091  10713   
        /* ServerBuilderGenerator.kt:331 */
11092  10714   
        #[allow(missing_docs)] // documentation missing in model
11093  10715   
                               /* ServerBuilderGenerator.kt:343 */
11094         -
        pub fn label(mut self, input: ::std::string::String) -> Self {
       10716  +
        pub fn prefix_headers(
       10717  +
            mut self,
       10718  +
            input: ::std::option::Option<
       10719  +
                ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10720  +
            >,
       10721  +
        ) -> Self {
11095  10722   
            /* ServerBuilderGenerator.kt:344 */
11096         -
            self.label =
11097         -
                /* ServerBuilderGenerator.kt:345 */Some(
       10723  +
            self.prefix_headers =
11098  10724   
                /* ServerBuilderGenerator.kt:376 */input
11099         -
                /* ServerBuilderGenerator.kt:345 */)
11100  10725   
            /* ServerBuilderGenerator.kt:344 */;
11101  10726   
            self
11102  10727   
            /* ServerBuilderGenerator.kt:343 */
11103  10728   
        }
11104  10729   
        /* ServerBuilderGenerator.kt:426 */
11105  10730   
        #[allow(missing_docs)] // documentation missing in model
11106  10731   
                               /* ServerBuilderGenerator.kt:428 */
11107         -
        pub(crate) fn set_label(
       10732  +
        pub(crate) fn set_prefix_headers(
11108  10733   
            mut self,
11109         -
            input: impl ::std::convert::Into<::std::string::String>,
       10734  +
            input: Option<
       10735  +
                impl ::std::convert::Into<
       10736  +
                    ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       10737  +
                >,
       10738  +
            >,
11110  10739   
        ) -> Self {
11111  10740   
            /* ServerBuilderGenerator.kt:429 */
11112         -
            self.label = Some(input.into());
       10741  +
            self.prefix_headers = input.map(|v| v.into());
11113  10742   
            self
11114  10743   
            /* ServerBuilderGenerator.kt:428 */
11115  10744   
        }
11116         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`EndpointWithHostLabelOperationInput`](crate::input::EndpointWithHostLabelOperationInput).
11117         -
        /// /* ServerBuilderGenerator.kt:260 */
11118         -
        /// The builder fails to construct a [`EndpointWithHostLabelOperationInput`](crate::input::EndpointWithHostLabelOperationInput) if a [`ConstraintViolation`] occurs.
11119         -
        ///
       10745  +
        /* ServerBuilderGenerator.kt:331 */
       10746  +
        #[allow(missing_docs)] // documentation missing in model
       10747  +
                               /* ServerBuilderGenerator.kt:343 */
       10748  +
        pub fn specific_header(
       10749  +
            mut self,
       10750  +
            input: ::std::option::Option<::std::string::String>,
       10751  +
        ) -> Self {
       10752  +
            /* ServerBuilderGenerator.kt:344 */
       10753  +
            self.specific_header =
       10754  +
                /* ServerBuilderGenerator.kt:376 */input
       10755  +
            /* ServerBuilderGenerator.kt:344 */;
       10756  +
            self
       10757  +
            /* ServerBuilderGenerator.kt:343 */
       10758  +
        }
       10759  +
        /* ServerBuilderGenerator.kt:426 */
       10760  +
        #[allow(missing_docs)] // documentation missing in model
       10761  +
                               /* ServerBuilderGenerator.kt:428 */
       10762  +
        pub(crate) fn set_specific_header(
       10763  +
            mut self,
       10764  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       10765  +
        ) -> Self {
       10766  +
            /* ServerBuilderGenerator.kt:429 */
       10767  +
            self.specific_header = input.map(|v| v.into());
       10768  +
            self
       10769  +
            /* ServerBuilderGenerator.kt:428 */
       10770  +
        }
       10771  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpEmptyPrefixHeadersInput`](crate::input::HttpEmptyPrefixHeadersInput).
11120  10772   
        /* ServerBuilderGenerator.kt:271 */
11121         -
        pub fn build(
11122         -
            self,
11123         -
        ) -> Result<crate::input::EndpointWithHostLabelOperationInput, ConstraintViolation>
11124         -
        {
       10773  +
        pub fn build(self) -> crate::input::HttpEmptyPrefixHeadersInput {
11125  10774   
            self.build_enforcing_all_constraints()
11126  10775   
        }
11127  10776   
        /* ServerBuilderGenerator.kt:283 */
11128         -
        fn build_enforcing_all_constraints(
11129         -
            self,
11130         -
        ) -> Result<crate::input::EndpointWithHostLabelOperationInput, ConstraintViolation>
11131         -
        {
11132         -
            /* ServerBuilderGenerator.kt:287 */
11133         -
            Ok(
       10777  +
        fn build_enforcing_all_constraints(self) -> crate::input::HttpEmptyPrefixHeadersInput {
11134  10778   
            /* ServerBuilderGenerator.kt:542 */
11135         -
                crate::input::EndpointWithHostLabelOperationInput {
       10779  +
            crate::input::HttpEmptyPrefixHeadersInput {
11136  10780   
                /* ServerBuilderGenerator.kt:546 */
11137         -
                    label: self
11138         -
                        .label
11139         -
                        /* ServerBuilderGenerator.kt:569 */
11140         -
                        .ok_or(ConstraintViolation::MissingLabel)?,
       10781  +
                prefix_headers: self.prefix_headers,
       10782  +
                /* ServerBuilderGenerator.kt:546 */
       10783  +
                specific_header: self.specific_header,
11141  10784   
                /* ServerBuilderGenerator.kt:542 */
11142         -
                }, /* ServerBuilderGenerator.kt:287 */
11143         -
            )
       10785  +
            }
11144  10786   
            /* ServerBuilderGenerator.kt:283 */
11145  10787   
        }
11146  10788   
        /* ServerBuilderGenerator.kt:215 */
11147  10789   
    }
11148  10790   
11149  10791   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
11150  10792   
}
11151         -
/// /* ServerBuilderGenerator.kt:171 */See [`EndpointOperationInput`](crate::input::EndpointOperationInput).
11152         -
pub mod endpoint_operation_input {
       10793  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPayloadTraitsInput`](crate::input::HttpPayloadTraitsInput).
       10794  +
pub mod http_payload_traits_input {
11153  10795   
11154  10796   
    /* ServerBuilderGenerator.kt:461 */
11155         -
    impl ::std::convert::From<Builder> for crate::input::EndpointOperationInput {
       10797  +
    impl ::std::convert::From<Builder> for crate::input::HttpPayloadTraitsInput {
11156  10798   
        fn from(builder: Builder) -> Self {
11157  10799   
            builder.build()
11158  10800   
        }
11159  10801   
    }
11160         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`EndpointOperationInput`](crate::input::EndpointOperationInput).
       10802  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPayloadTraitsInput`](crate::input::HttpPayloadTraitsInput).
11161  10803   
    /* RustType.kt:534 */
11162  10804   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
11163  10805   
    /* ServerBuilderGenerator.kt:211 */
11164         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       10806  +
    pub struct Builder {
       10807  +
        /* ServerBuilderGenerator.kt:308 */
       10808  +
        pub(crate) foo: ::std::option::Option<::std::string::String>,
       10809  +
        /* ServerBuilderGenerator.kt:308 */
       10810  +
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::Blob>,
       10811  +
        /* ServerBuilderGenerator.kt:211 */
       10812  +
    }
11165  10813   
    /* ServerBuilderGenerator.kt:215 */
11166  10814   
    impl Builder {
11167         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`EndpointOperationInput`](crate::input::EndpointOperationInput).
       10815  +
        /* ServerBuilderGenerator.kt:331 */
       10816  +
        #[allow(missing_docs)] // documentation missing in model
       10817  +
                               /* ServerBuilderGenerator.kt:343 */
       10818  +
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       10819  +
            /* ServerBuilderGenerator.kt:344 */
       10820  +
            self.foo =
       10821  +
                /* ServerBuilderGenerator.kt:376 */input
       10822  +
            /* ServerBuilderGenerator.kt:344 */;
       10823  +
            self
       10824  +
            /* ServerBuilderGenerator.kt:343 */
       10825  +
        }
       10826  +
        /* ServerBuilderGenerator.kt:426 */
       10827  +
        #[allow(missing_docs)] // documentation missing in model
       10828  +
                               /* ServerBuilderGenerator.kt:428 */
       10829  +
        pub(crate) fn set_foo(
       10830  +
            mut self,
       10831  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       10832  +
        ) -> Self {
       10833  +
            /* ServerBuilderGenerator.kt:429 */
       10834  +
            self.foo = input.map(|v| v.into());
       10835  +
            self
       10836  +
            /* ServerBuilderGenerator.kt:428 */
       10837  +
        }
       10838  +
        /* ServerBuilderGenerator.kt:331 */
       10839  +
        #[allow(missing_docs)] // documentation missing in model
       10840  +
                               /* ServerBuilderGenerator.kt:343 */
       10841  +
        pub fn blob(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
       10842  +
            /* ServerBuilderGenerator.kt:344 */
       10843  +
            self.blob =
       10844  +
                /* ServerBuilderGenerator.kt:376 */input
       10845  +
            /* ServerBuilderGenerator.kt:344 */;
       10846  +
            self
       10847  +
            /* ServerBuilderGenerator.kt:343 */
       10848  +
        }
       10849  +
        /* ServerBuilderGenerator.kt:426 */
       10850  +
        #[allow(missing_docs)] // documentation missing in model
       10851  +
                               /* ServerBuilderGenerator.kt:428 */
       10852  +
        pub(crate) fn set_blob(
       10853  +
            mut self,
       10854  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
       10855  +
        ) -> Self {
       10856  +
            /* ServerBuilderGenerator.kt:429 */
       10857  +
            self.blob = input.map(|v| v.into());
       10858  +
            self
       10859  +
            /* ServerBuilderGenerator.kt:428 */
       10860  +
        }
       10861  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPayloadTraitsInput`](crate::input::HttpPayloadTraitsInput).
11168  10862   
        /* ServerBuilderGenerator.kt:271 */
11169         -
        pub fn build(self) -> crate::input::EndpointOperationInput {
       10863  +
        pub fn build(self) -> crate::input::HttpPayloadTraitsInput {
11170  10864   
            self.build_enforcing_all_constraints()
11171  10865   
        }
11172  10866   
        /* ServerBuilderGenerator.kt:283 */
11173         -
        fn build_enforcing_all_constraints(self) -> crate::input::EndpointOperationInput {
       10867  +
        fn build_enforcing_all_constraints(self) -> crate::input::HttpPayloadTraitsInput {
11174  10868   
            /* ServerBuilderGenerator.kt:542 */
11175         -
            crate::input::EndpointOperationInput {
11176         -
            /* ServerBuilderGenerator.kt:542 */}
       10869  +
            crate::input::HttpPayloadTraitsInput {
       10870  +
                /* ServerBuilderGenerator.kt:546 */
       10871  +
                foo: self.foo,
       10872  +
                /* ServerBuilderGenerator.kt:546 */
       10873  +
                blob: self.blob,
       10874  +
                /* ServerBuilderGenerator.kt:542 */
       10875  +
            }
11177  10876   
            /* ServerBuilderGenerator.kt:283 */
11178  10877   
        }
11179  10878   
        /* ServerBuilderGenerator.kt:215 */
11180  10879   
    }
11181  10880   
11182  10881   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
11183  10882   
}
11184         -
/// /* ServerBuilderGenerator.kt:171 */See [`PostUnionWithJsonNameInput`](crate::input::PostUnionWithJsonNameInput).
11185         -
pub mod post_union_with_json_name_input {
       10883  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPayloadTraitsWithMediaTypeInput`](crate::input::HttpPayloadTraitsWithMediaTypeInput).
       10884  +
pub mod http_payload_traits_with_media_type_input {
11186  10885   
11187  10886   
    /* ServerBuilderGenerator.kt:461 */
11188         -
    impl ::std::convert::From<Builder> for crate::input::PostUnionWithJsonNameInput {
       10887  +
    impl ::std::convert::From<Builder> for crate::input::HttpPayloadTraitsWithMediaTypeInput {
11189  10888   
        fn from(builder: Builder) -> Self {
11190  10889   
            builder.build()
11191  10890   
        }
11192  10891   
    }
11193         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`PostUnionWithJsonNameInput`](crate::input::PostUnionWithJsonNameInput).
       10892  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPayloadTraitsWithMediaTypeInput`](crate::input::HttpPayloadTraitsWithMediaTypeInput).
11194  10893   
    /* RustType.kt:534 */
11195  10894   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
11196  10895   
    /* ServerBuilderGenerator.kt:211 */
11197  10896   
    pub struct Builder {
11198  10897   
        /* ServerBuilderGenerator.kt:308 */
11199         -
        pub(crate) value: ::std::option::Option<crate::model::UnionWithJsonName>,
       10898  +
        pub(crate) foo: ::std::option::Option<::std::string::String>,
       10899  +
        /* ServerBuilderGenerator.kt:308 */
       10900  +
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::Blob>,
11200  10901   
        /* ServerBuilderGenerator.kt:211 */
11201  10902   
    }
11202  10903   
    /* ServerBuilderGenerator.kt:215 */
11203  10904   
    impl Builder {
11204  10905   
        /* ServerBuilderGenerator.kt:331 */
11205  10906   
        #[allow(missing_docs)] // documentation missing in model
11206  10907   
                               /* ServerBuilderGenerator.kt:343 */
11207         -
        pub fn value(
       10908  +
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       10909  +
            /* ServerBuilderGenerator.kt:344 */
       10910  +
            self.foo =
       10911  +
                /* ServerBuilderGenerator.kt:376 */input
       10912  +
            /* ServerBuilderGenerator.kt:344 */;
       10913  +
            self
       10914  +
            /* ServerBuilderGenerator.kt:343 */
       10915  +
        }
       10916  +
        /* ServerBuilderGenerator.kt:426 */
       10917  +
        #[allow(missing_docs)] // documentation missing in model
       10918  +
                               /* ServerBuilderGenerator.kt:428 */
       10919  +
        pub(crate) fn set_foo(
11208  10920   
            mut self,
11209         -
            input: ::std::option::Option<crate::model::UnionWithJsonName>,
       10921  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
11210  10922   
        ) -> Self {
       10923  +
            /* ServerBuilderGenerator.kt:429 */
       10924  +
            self.foo = input.map(|v| v.into());
       10925  +
            self
       10926  +
            /* ServerBuilderGenerator.kt:428 */
       10927  +
        }
       10928  +
        /* ServerBuilderGenerator.kt:331 */
       10929  +
        #[allow(missing_docs)] // documentation missing in model
       10930  +
                               /* ServerBuilderGenerator.kt:343 */
       10931  +
        pub fn blob(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
11211  10932   
            /* ServerBuilderGenerator.kt:344 */
11212         -
            self.value =
       10933  +
            self.blob =
11213  10934   
                /* ServerBuilderGenerator.kt:376 */input
11214  10935   
            /* ServerBuilderGenerator.kt:344 */;
11215  10936   
            self
11216  10937   
            /* ServerBuilderGenerator.kt:343 */
11217  10938   
        }
11218  10939   
        /* ServerBuilderGenerator.kt:426 */
11219  10940   
        #[allow(missing_docs)] // documentation missing in model
11220  10941   
                               /* ServerBuilderGenerator.kt:428 */
11221         -
        pub(crate) fn set_value(
       10942  +
        pub(crate) fn set_blob(
11222  10943   
            mut self,
11223         -
            input: Option<impl ::std::convert::Into<crate::model::UnionWithJsonName>>,
       10944  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
11224  10945   
        ) -> Self {
11225  10946   
            /* ServerBuilderGenerator.kt:429 */
11226         -
            self.value = input.map(|v| v.into());
       10947  +
            self.blob = input.map(|v| v.into());
11227  10948   
            self
11228  10949   
            /* ServerBuilderGenerator.kt:428 */
11229  10950   
        }
11230         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`PostUnionWithJsonNameInput`](crate::input::PostUnionWithJsonNameInput).
       10951  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPayloadTraitsWithMediaTypeInput`](crate::input::HttpPayloadTraitsWithMediaTypeInput).
11231  10952   
        /* ServerBuilderGenerator.kt:271 */
11232         -
        pub fn build(self) -> crate::input::PostUnionWithJsonNameInput {
       10953  +
        pub fn build(self) -> crate::input::HttpPayloadTraitsWithMediaTypeInput {
11233  10954   
            self.build_enforcing_all_constraints()
11234  10955   
        }
11235  10956   
        /* ServerBuilderGenerator.kt:283 */
11236         -
        fn build_enforcing_all_constraints(self) -> crate::input::PostUnionWithJsonNameInput {
       10957  +
        fn build_enforcing_all_constraints(
       10958  +
            self,
       10959  +
        ) -> crate::input::HttpPayloadTraitsWithMediaTypeInput {
11237  10960   
            /* ServerBuilderGenerator.kt:542 */
11238         -
            crate::input::PostUnionWithJsonNameInput {
       10961  +
            crate::input::HttpPayloadTraitsWithMediaTypeInput {
11239  10962   
                /* ServerBuilderGenerator.kt:546 */
11240         -
                value: self.value,
       10963  +
                foo: self.foo,
       10964  +
                /* ServerBuilderGenerator.kt:546 */
       10965  +
                blob: self.blob,
11241  10966   
                /* ServerBuilderGenerator.kt:542 */
11242  10967   
            }
11243  10968   
            /* ServerBuilderGenerator.kt:283 */
11244  10969   
        }
11245  10970   
        /* ServerBuilderGenerator.kt:215 */
11246  10971   
    }
11247  10972   
11248  10973   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
11249  10974   
}
11250         -
/// /* ServerBuilderGenerator.kt:171 */See [`PostPlayerActionInput`](crate::input::PostPlayerActionInput).
11251         -
pub mod post_player_action_input {
       10975  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPayloadWithStructureInput`](crate::input::HttpPayloadWithStructureInput).
       10976  +
pub mod http_payload_with_structure_input {
11252  10977   
11253  10978   
    /* ServerBuilderGenerator.kt:461 */
11254         -
    impl ::std::convert::From<Builder> for crate::input::PostPlayerActionInput {
       10979  +
    impl ::std::convert::From<Builder> for crate::input::HttpPayloadWithStructureInput {
11255  10980   
        fn from(builder: Builder) -> Self {
11256  10981   
            builder.build()
11257  10982   
        }
11258  10983   
    }
11259         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`PostPlayerActionInput`](crate::input::PostPlayerActionInput).
       10984  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPayloadWithStructureInput`](crate::input::HttpPayloadWithStructureInput).
11260  10985   
    /* RustType.kt:534 */
11261  10986   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
11262  10987   
    /* ServerBuilderGenerator.kt:211 */
11263  10988   
    pub struct Builder {
11264  10989   
        /* ServerBuilderGenerator.kt:308 */
11265         -
        pub(crate) action: ::std::option::Option<crate::model::PlayerAction>,
       10990  +
        pub(crate) nested: ::std::option::Option<crate::model::NestedPayload>,
11266  10991   
        /* ServerBuilderGenerator.kt:211 */
11267  10992   
    }
11268  10993   
    /* ServerBuilderGenerator.kt:215 */
11269  10994   
    impl Builder {
11270  10995   
        /* ServerBuilderGenerator.kt:331 */
11271  10996   
        #[allow(missing_docs)] // documentation missing in model
11272  10997   
                               /* ServerBuilderGenerator.kt:343 */
11273         -
        pub fn action(mut self, input: ::std::option::Option<crate::model::PlayerAction>) -> Self {
       10998  +
        pub fn nested(mut self, input: ::std::option::Option<crate::model::NestedPayload>) -> Self {
11274  10999   
            /* ServerBuilderGenerator.kt:344 */
11275         -
            self.action =
       11000  +
            self.nested =
11276  11001   
                /* ServerBuilderGenerator.kt:376 */input
11277  11002   
            /* ServerBuilderGenerator.kt:344 */;
11278  11003   
            self
11279  11004   
            /* ServerBuilderGenerator.kt:343 */
11280  11005   
        }
11281  11006   
        /* ServerBuilderGenerator.kt:426 */
11282  11007   
        #[allow(missing_docs)] // documentation missing in model
11283  11008   
                               /* ServerBuilderGenerator.kt:428 */
11284         -
        pub(crate) fn set_action(
       11009  +
        pub(crate) fn set_nested(
11285  11010   
            mut self,
11286         -
            input: Option<impl ::std::convert::Into<crate::model::PlayerAction>>,
       11011  +
            input: Option<impl ::std::convert::Into<crate::model::NestedPayload>>,
11287  11012   
        ) -> Self {
11288  11013   
            /* ServerBuilderGenerator.kt:429 */
11289         -
            self.action = input.map(|v| v.into());
       11014  +
            self.nested = input.map(|v| v.into());
11290  11015   
            self
11291  11016   
            /* ServerBuilderGenerator.kt:428 */
11292  11017   
        }
11293         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`PostPlayerActionInput`](crate::input::PostPlayerActionInput).
       11018  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPayloadWithStructureInput`](crate::input::HttpPayloadWithStructureInput).
11294  11019   
        /* ServerBuilderGenerator.kt:271 */
11295         -
        pub fn build(self) -> crate::input::PostPlayerActionInput {
       11020  +
        pub fn build(self) -> crate::input::HttpPayloadWithStructureInput {
11296  11021   
            self.build_enforcing_all_constraints()
11297  11022   
        }
11298  11023   
        /* ServerBuilderGenerator.kt:283 */
11299         -
        fn build_enforcing_all_constraints(self) -> crate::input::PostPlayerActionInput {
       11024  +
        fn build_enforcing_all_constraints(self) -> crate::input::HttpPayloadWithStructureInput {
11300  11025   
            /* ServerBuilderGenerator.kt:542 */
11301         -
            crate::input::PostPlayerActionInput {
       11026  +
            crate::input::HttpPayloadWithStructureInput {
11302  11027   
                /* ServerBuilderGenerator.kt:546 */
11303         -
                action: self.action,
       11028  +
                nested: self.nested,
11304  11029   
                /* ServerBuilderGenerator.kt:542 */
11305  11030   
            }
11306  11031   
            /* ServerBuilderGenerator.kt:283 */
11307  11032   
        }
11308  11033   
        /* ServerBuilderGenerator.kt:215 */
11309  11034   
    }
11310  11035   
11311  11036   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
11312  11037   
}
11313         -
/// /* ServerBuilderGenerator.kt:171 */See [`JsonUnionsInput`](crate::input::JsonUnionsInput).
11314         -
pub mod json_unions_input {
       11038  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpEnumPayloadInput`](crate::input::HttpEnumPayloadInput).
       11039  +
pub mod http_enum_payload_input {
11315  11040   
11316  11041   
    /* RustType.kt:534 */
11317  11042   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
11318  11043   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
11319  11044   
    /* RustType.kt:534 */
11320  11045   
    #[non_exhaustive]
11321  11046   
    /* ServerBuilderConstraintViolations.kt:75 */
11322  11047   
    #[allow(clippy::enum_variant_names)]
11323  11048   
    pub enum ConstraintViolation {
11324         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `contents` when building `JsonUnionsInput`.
       11049  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `payload` when building `HttpEnumPayloadInput`.
11325  11050   
        /* RustType.kt:534 */
11326  11051   
        #[doc(hidden)]
11327  11052   
        /* ServerBuilderConstraintViolations.kt:165 */
11328         -
        Contents(crate::model::my_union::ConstraintViolation),
       11053  +
        Payload(crate::model::string_enum::ConstraintViolation),
11329  11054   
        /* ServerBuilderConstraintViolations.kt:75 */
11330  11055   
    }
11331  11056   
    /* ServerBuilderConstraintViolations.kt:116 */
11332  11057   
    impl ::std::fmt::Display for ConstraintViolation {
11333  11058   
        /* ServerBuilderConstraintViolations.kt:117 */
11334  11059   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
11335  11060   
            /* ServerBuilderConstraintViolations.kt:118 */
11336  11061   
            match self {
11337         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::Contents(_) => write!(f, "constraint violation occurred building member `contents` when building `JsonUnionsInput`"),
       11062  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::Payload(_) => write!(f, "constraint violation occurred building member `payload` when building `HttpEnumPayloadInput`"),
11338  11063   
            /* ServerBuilderConstraintViolations.kt:118 */}
11339  11064   
            /* ServerBuilderConstraintViolations.kt:117 */
11340  11065   
        }
11341  11066   
        /* ServerBuilderConstraintViolations.kt:116 */
11342  11067   
    }
11343  11068   
    /* ServerBuilderConstraintViolations.kt:83 */
11344  11069   
    impl ::std::error::Error for ConstraintViolation {}
11345  11070   
    /* ServerBuilderConstraintViolations.kt:172 */
11346  11071   
    impl ConstraintViolation {
11347  11072   
        pub(crate) fn as_validation_exception_field(
11348  11073   
            self,
11349  11074   
            path: ::std::string::String,
11350  11075   
        ) -> crate::model::ValidationExceptionField {
11351  11076   
            match self {
11352         -
                ConstraintViolation::Contents(inner) => {
11353         -
                    inner.as_validation_exception_field(path + "/contents")
       11077  +
                ConstraintViolation::Payload(inner) => {
       11078  +
                    inner.as_validation_exception_field(path + "/payload")
11354  11079   
                }
11355  11080   
            }
11356  11081   
        }
11357  11082   
    }
11358  11083   
    /* ServerBuilderGenerator.kt:234 */
11359  11084   
    impl ::std::convert::From<ConstraintViolation>
11360  11085   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
11361  11086   
    {
11362  11087   
        fn from(constraint_violation: ConstraintViolation) -> Self {
11363  11088   
            let first_validation_exception_field =
11364  11089   
                constraint_violation.as_validation_exception_field("".to_owned());
11365  11090   
            let validation_exception = crate::error::ValidationException {
11366  11091   
                message: format!(
11367  11092   
                    "1 validation error detected. {}",
11368  11093   
                    &first_validation_exception_field.message
11369  11094   
                ),
11370  11095   
                field_list: Some(vec![first_validation_exception_field]),
11371  11096   
            };
11372  11097   
            Self::ConstraintViolation(
11373  11098   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
11374  11099   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
11375  11100   
                            )
11376  11101   
        }
11377  11102   
    }
11378  11103   
    /* ServerBuilderGenerator.kt:244 */
11379  11104   
    impl ::std::convert::From<Builder>
11380         -
        for crate::constrained::MaybeConstrained<crate::input::JsonUnionsInput>
       11105  +
        for crate::constrained::MaybeConstrained<crate::input::HttpEnumPayloadInput>
11381  11106   
    {
11382  11107   
        fn from(builder: Builder) -> Self {
11383  11108   
            Self::Unconstrained(builder)
11384  11109   
        }
11385  11110   
    }
11386  11111   
    /* ServerBuilderGenerator.kt:446 */
11387         -
    impl ::std::convert::TryFrom<Builder> for crate::input::JsonUnionsInput {
       11112  +
    impl ::std::convert::TryFrom<Builder> for crate::input::HttpEnumPayloadInput {
11388  11113   
        type Error = ConstraintViolation;
11389  11114   
11390  11115   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
11391  11116   
            builder.build()
11392  11117   
        }
11393  11118   
    }
11394         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonUnionsInput`](crate::input::JsonUnionsInput).
       11119  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpEnumPayloadInput`](crate::input::HttpEnumPayloadInput).
11395  11120   
    /* RustType.kt:534 */
11396  11121   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
11397  11122   
    /* ServerBuilderGenerator.kt:211 */
11398  11123   
    pub struct Builder {
11399  11124   
        /* ServerBuilderGenerator.kt:308 */
11400         -
        pub(crate) contents:
11401         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::MyUnion>>,
       11125  +
        pub(crate) payload:
       11126  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::StringEnum>>,
11402  11127   
        /* ServerBuilderGenerator.kt:211 */
11403  11128   
    }
11404  11129   
    /* ServerBuilderGenerator.kt:215 */
11405  11130   
    impl Builder {
11406         -
        /// /* ServerBuilderGenerator.kt:331 */A union with a representative set of types for members.
       11131  +
        /* ServerBuilderGenerator.kt:331 */
       11132  +
        #[allow(missing_docs)] // documentation missing in model
11407  11133   
                               /* ServerBuilderGenerator.kt:343 */
11408         -
        pub fn contents(mut self, input: ::std::option::Option<crate::model::MyUnion>) -> Self {
       11134  +
        pub fn payload(mut self, input: ::std::option::Option<crate::model::StringEnum>) -> Self {
11409  11135   
            /* ServerBuilderGenerator.kt:344 */
11410         -
            self.contents =
       11136  +
            self.payload =
11411  11137   
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
11412  11138   
            /* ServerBuilderGenerator.kt:344 */;
11413  11139   
            self
11414  11140   
            /* ServerBuilderGenerator.kt:343 */
11415  11141   
        }
11416         -
        /// /* ServerBuilderGenerator.kt:426 */A union with a representative set of types for members.
       11142  +
        /* ServerBuilderGenerator.kt:426 */
       11143  +
        #[allow(missing_docs)] // documentation missing in model
11417  11144   
                               /* ServerBuilderGenerator.kt:428 */
11418         -
        pub(crate) fn set_contents(
       11145  +
        pub(crate) fn set_payload(
11419  11146   
            mut self,
11420  11147   
            input: Option<
11421         -
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::MyUnion>>,
       11148  +
                impl ::std::convert::Into<
       11149  +
                    crate::constrained::MaybeConstrained<crate::model::StringEnum>,
       11150  +
                >,
11422  11151   
            >,
11423  11152   
        ) -> Self {
11424  11153   
            /* ServerBuilderGenerator.kt:429 */
11425         -
            self.contents = input.map(|v| v.into());
       11154  +
            self.payload = input.map(|v| v.into());
11426  11155   
            self
11427  11156   
            /* ServerBuilderGenerator.kt:428 */
11428  11157   
        }
11429         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonUnionsInput`](crate::input::JsonUnionsInput).
       11158  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpEnumPayloadInput`](crate::input::HttpEnumPayloadInput).
11430  11159   
        /// /* ServerBuilderGenerator.kt:260 */
11431         -
        /// The builder fails to construct a [`JsonUnionsInput`](crate::input::JsonUnionsInput) if a [`ConstraintViolation`] occurs.
       11160  +
        /// The builder fails to construct a [`HttpEnumPayloadInput`](crate::input::HttpEnumPayloadInput) if a [`ConstraintViolation`] occurs.
11432  11161   
        ///
11433  11162   
        /* ServerBuilderGenerator.kt:271 */
11434         -
        pub fn build(self) -> Result<crate::input::JsonUnionsInput, ConstraintViolation> {
       11163  +
        pub fn build(self) -> Result<crate::input::HttpEnumPayloadInput, ConstraintViolation> {
11435  11164   
            self.build_enforcing_all_constraints()
11436  11165   
        }
11437  11166   
        /* ServerBuilderGenerator.kt:283 */
11438  11167   
        fn build_enforcing_all_constraints(
11439  11168   
            self,
11440         -
        ) -> Result<crate::input::JsonUnionsInput, ConstraintViolation> {
       11169  +
        ) -> Result<crate::input::HttpEnumPayloadInput, ConstraintViolation> {
11441  11170   
            /* ServerBuilderGenerator.kt:287 */
11442  11171   
            Ok(
11443  11172   
                /* ServerBuilderGenerator.kt:542 */
11444         -
                crate::input::JsonUnionsInput {
       11173  +
                crate::input::HttpEnumPayloadInput {
11445  11174   
                    /* ServerBuilderGenerator.kt:546 */
11446         -
                    contents: self
11447         -
                        .contents
       11175  +
                    payload: self
       11176  +
                        .payload
11448  11177   
                        /* ServerBuilderGenerator.kt:602 */
11449  11178   
                        .map(|v| match v {
11450  11179   
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
11451  11180   
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
11452  11181   
                        })
11453  11182   
                        /* ServerBuilderGenerator.kt:614 */
11454         -
                        .map(|res| res.map_err(ConstraintViolation::Contents))
       11183  +
                        .map(|res| res.map_err(ConstraintViolation::Payload))
11455  11184   
                        .transpose()?,
11456  11185   
                    /* ServerBuilderGenerator.kt:542 */
11457  11186   
                }, /* ServerBuilderGenerator.kt:287 */
11458  11187   
            )
11459  11188   
            /* ServerBuilderGenerator.kt:283 */
11460  11189   
        }
11461  11190   
        /* ServerBuilderGenerator.kt:215 */
11462  11191   
    }
11463  11192   
11464  11193   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
11465  11194   
}
11466         -
/// /* ServerBuilderGenerator.kt:171 */See [`DocumentTypeAsMapValueInput`](crate::input::DocumentTypeAsMapValueInput).
11467         -
pub mod document_type_as_map_value_input {
       11195  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpStringPayloadInput`](crate::input::HttpStringPayloadInput).
       11196  +
pub mod http_string_payload_input {
11468  11197   
11469  11198   
    /* ServerBuilderGenerator.kt:461 */
11470         -
    impl ::std::convert::From<Builder> for crate::input::DocumentTypeAsMapValueInput {
       11199  +
    impl ::std::convert::From<Builder> for crate::input::HttpStringPayloadInput {
11471  11200   
        fn from(builder: Builder) -> Self {
11472  11201   
            builder.build()
11473  11202   
        }
11474  11203   
    }
11475         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`DocumentTypeAsMapValueInput`](crate::input::DocumentTypeAsMapValueInput).
       11204  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpStringPayloadInput`](crate::input::HttpStringPayloadInput).
11476  11205   
    /* RustType.kt:534 */
11477  11206   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
11478  11207   
    /* ServerBuilderGenerator.kt:211 */
11479  11208   
    pub struct Builder {
11480  11209   
        /* ServerBuilderGenerator.kt:308 */
11481         -
        pub(crate) doc_valued_map: ::std::option::Option<
11482         -
            ::std::collections::HashMap<::std::string::String, ::aws_smithy_types::Document>,
11483         -
        >,
       11210  +
        pub(crate) payload: ::std::option::Option<::std::string::String>,
11484  11211   
        /* ServerBuilderGenerator.kt:211 */
11485  11212   
    }
11486  11213   
    /* ServerBuilderGenerator.kt:215 */
11487  11214   
    impl Builder {
11488  11215   
        /* ServerBuilderGenerator.kt:331 */
11489  11216   
        #[allow(missing_docs)] // documentation missing in model
11490  11217   
                               /* ServerBuilderGenerator.kt:343 */
11491         -
        pub fn doc_valued_map(
11492         -
            mut self,
11493         -
            input: ::std::option::Option<
11494         -
                ::std::collections::HashMap<::std::string::String, ::aws_smithy_types::Document>,
11495         -
            >,
11496         -
        ) -> Self {
       11218  +
        pub fn payload(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
11497  11219   
            /* ServerBuilderGenerator.kt:344 */
11498         -
            self.doc_valued_map =
       11220  +
            self.payload =
11499  11221   
                /* ServerBuilderGenerator.kt:376 */input
11500  11222   
            /* ServerBuilderGenerator.kt:344 */;
11501  11223   
            self
11502  11224   
            /* ServerBuilderGenerator.kt:343 */
11503  11225   
        }
11504  11226   
        /* ServerBuilderGenerator.kt:426 */
11505  11227   
        #[allow(missing_docs)] // documentation missing in model
11506  11228   
                               /* ServerBuilderGenerator.kt:428 */
11507         -
        pub(crate) fn set_doc_valued_map(
       11229  +
        pub(crate) fn set_payload(
11508  11230   
            mut self,
11509         -
            input: Option<
11510         -
                impl ::std::convert::Into<
11511         -
                    ::std::collections::HashMap<
11512         -
                        ::std::string::String,
11513         -
                        ::aws_smithy_types::Document,
11514         -
                    >,
11515         -
                >,
11516         -
            >,
       11231  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
11517  11232   
        ) -> Self {
11518  11233   
            /* ServerBuilderGenerator.kt:429 */
11519         -
            self.doc_valued_map = input.map(|v| v.into());
       11234  +
            self.payload = input.map(|v| v.into());
11520  11235   
            self
11521  11236   
            /* ServerBuilderGenerator.kt:428 */
11522  11237   
        }
11523         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`DocumentTypeAsMapValueInput`](crate::input::DocumentTypeAsMapValueInput).
       11238  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpStringPayloadInput`](crate::input::HttpStringPayloadInput).
11524  11239   
        /* ServerBuilderGenerator.kt:271 */
11525         -
        pub fn build(self) -> crate::input::DocumentTypeAsMapValueInput {
       11240  +
        pub fn build(self) -> crate::input::HttpStringPayloadInput {
11526  11241   
            self.build_enforcing_all_constraints()
11527  11242   
        }
11528  11243   
        /* ServerBuilderGenerator.kt:283 */
11529         -
        fn build_enforcing_all_constraints(self) -> crate::input::DocumentTypeAsMapValueInput {
       11244  +
        fn build_enforcing_all_constraints(self) -> crate::input::HttpStringPayloadInput {
11530  11245   
            /* ServerBuilderGenerator.kt:542 */
11531         -
            crate::input::DocumentTypeAsMapValueInput {
       11246  +
            crate::input::HttpStringPayloadInput {
11532  11247   
                /* ServerBuilderGenerator.kt:546 */
11533         -
                doc_valued_map: self.doc_valued_map,
       11248  +
                payload: self.payload,
11534  11249   
                /* ServerBuilderGenerator.kt:542 */
11535  11250   
            }
11536  11251   
            /* ServerBuilderGenerator.kt:283 */
11537  11252   
        }
11538  11253   
        /* ServerBuilderGenerator.kt:215 */
11539  11254   
    }
11540  11255   
11541  11256   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
11542  11257   
}
11543         -
/// /* ServerBuilderGenerator.kt:171 */See [`DocumentTypeAsPayloadInput`](crate::input::DocumentTypeAsPayloadInput).
11544         -
pub mod document_type_as_payload_input {
       11258  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPayloadWithUnionInput`](crate::input::HttpPayloadWithUnionInput).
       11259  +
pub mod http_payload_with_union_input {
11545  11260   
11546  11261   
    /* ServerBuilderGenerator.kt:461 */
11547         -
    impl ::std::convert::From<Builder> for crate::input::DocumentTypeAsPayloadInput {
       11262  +
    impl ::std::convert::From<Builder> for crate::input::HttpPayloadWithUnionInput {
11548  11263   
        fn from(builder: Builder) -> Self {
11549  11264   
            builder.build()
11550  11265   
        }
11551  11266   
    }
11552         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`DocumentTypeAsPayloadInput`](crate::input::DocumentTypeAsPayloadInput).
       11267  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPayloadWithUnionInput`](crate::input::HttpPayloadWithUnionInput).
11553  11268   
    /* RustType.kt:534 */
11554  11269   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
11555  11270   
    /* ServerBuilderGenerator.kt:211 */
11556  11271   
    pub struct Builder {
11557  11272   
        /* ServerBuilderGenerator.kt:308 */
11558         -
        pub(crate) document_value: ::std::option::Option<::aws_smithy_types::Document>,
       11273  +
        pub(crate) nested: ::std::option::Option<crate::model::UnionPayload>,
11559  11274   
        /* ServerBuilderGenerator.kt:211 */
11560  11275   
    }
11561  11276   
    /* ServerBuilderGenerator.kt:215 */
11562  11277   
    impl Builder {
11563  11278   
        /* ServerBuilderGenerator.kt:331 */
11564  11279   
        #[allow(missing_docs)] // documentation missing in model
11565  11280   
                               /* ServerBuilderGenerator.kt:343 */
11566         -
        pub fn document_value(
11567         -
            mut self,
11568         -
            input: ::std::option::Option<::aws_smithy_types::Document>,
11569         -
        ) -> Self {
       11281  +
        pub fn nested(mut self, input: ::std::option::Option<crate::model::UnionPayload>) -> Self {
11570  11282   
            /* ServerBuilderGenerator.kt:344 */
11571         -
            self.document_value =
       11283  +
            self.nested =
11572  11284   
                /* ServerBuilderGenerator.kt:376 */input
11573  11285   
            /* ServerBuilderGenerator.kt:344 */;
11574  11286   
            self
11575  11287   
            /* ServerBuilderGenerator.kt:343 */
11576  11288   
        }
11577  11289   
        /* ServerBuilderGenerator.kt:426 */
11578  11290   
        #[allow(missing_docs)] // documentation missing in model
11579  11291   
                               /* ServerBuilderGenerator.kt:428 */
11580         -
        pub(crate) fn set_document_value(
       11292  +
        pub(crate) fn set_nested(
11581  11293   
            mut self,
11582         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Document>>,
       11294  +
            input: Option<impl ::std::convert::Into<crate::model::UnionPayload>>,
11583  11295   
        ) -> Self {
11584  11296   
            /* ServerBuilderGenerator.kt:429 */
11585         -
            self.document_value = input.map(|v| v.into());
       11297  +
            self.nested = input.map(|v| v.into());
11586  11298   
            self
11587  11299   
            /* ServerBuilderGenerator.kt:428 */
11588  11300   
        }
11589         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`DocumentTypeAsPayloadInput`](crate::input::DocumentTypeAsPayloadInput).
       11301  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPayloadWithUnionInput`](crate::input::HttpPayloadWithUnionInput).
11590  11302   
        /* ServerBuilderGenerator.kt:271 */
11591         -
        pub fn build(self) -> crate::input::DocumentTypeAsPayloadInput {
       11303  +
        pub fn build(self) -> crate::input::HttpPayloadWithUnionInput {
11592  11304   
            self.build_enforcing_all_constraints()
11593  11305   
        }
11594  11306   
        /* ServerBuilderGenerator.kt:283 */
11595         -
        fn build_enforcing_all_constraints(self) -> crate::input::DocumentTypeAsPayloadInput {
       11307  +
        fn build_enforcing_all_constraints(self) -> crate::input::HttpPayloadWithUnionInput {
11596  11308   
            /* ServerBuilderGenerator.kt:542 */
11597         -
            crate::input::DocumentTypeAsPayloadInput {
       11309  +
            crate::input::HttpPayloadWithUnionInput {
11598  11310   
                /* ServerBuilderGenerator.kt:546 */
11599         -
                document_value: self.document_value,
       11311  +
                nested: self.nested,
11600  11312   
                /* ServerBuilderGenerator.kt:542 */
11601  11313   
            }
11602  11314   
            /* ServerBuilderGenerator.kt:283 */
11603  11315   
        }
11604  11316   
        /* ServerBuilderGenerator.kt:215 */
11605  11317   
    }
11606  11318   
11607  11319   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
11608  11320   
}
11609         -
/// /* ServerBuilderGenerator.kt:171 */See [`DocumentTypeInput`](crate::input::DocumentTypeInput).
11610         -
pub mod document_type_input {
       11321  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpResponseCodeInput`](crate::input::HttpResponseCodeInput).
       11322  +
pub mod http_response_code_input {
11611  11323   
11612  11324   
    /* ServerBuilderGenerator.kt:461 */
11613         -
    impl ::std::convert::From<Builder> for crate::input::DocumentTypeInput {
       11325  +
    impl ::std::convert::From<Builder> for crate::input::HttpResponseCodeInput {
11614  11326   
        fn from(builder: Builder) -> Self {
11615  11327   
            builder.build()
11616  11328   
        }
11617  11329   
    }
11618         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`DocumentTypeInput`](crate::input::DocumentTypeInput).
       11330  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpResponseCodeInput`](crate::input::HttpResponseCodeInput).
11619  11331   
    /* RustType.kt:534 */
11620  11332   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
11621  11333   
    /* ServerBuilderGenerator.kt:211 */
11622         -
    pub struct Builder {
11623         -
        /* ServerBuilderGenerator.kt:308 */
11624         -
        pub(crate) string_value: ::std::option::Option<::std::string::String>,
11625         -
        /* ServerBuilderGenerator.kt:308 */
11626         -
        pub(crate) document_value: ::std::option::Option<::aws_smithy_types::Document>,
11627         -
        /* ServerBuilderGenerator.kt:211 */
       11334  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       11335  +
    /* ServerBuilderGenerator.kt:215 */
       11336  +
    impl Builder {
       11337  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpResponseCodeInput`](crate::input::HttpResponseCodeInput).
       11338  +
        /* ServerBuilderGenerator.kt:271 */
       11339  +
        pub fn build(self) -> crate::input::HttpResponseCodeInput {
       11340  +
            self.build_enforcing_all_constraints()
       11341  +
        }
       11342  +
        /* ServerBuilderGenerator.kt:283 */
       11343  +
        fn build_enforcing_all_constraints(self) -> crate::input::HttpResponseCodeInput {
       11344  +
            /* ServerBuilderGenerator.kt:542 */
       11345  +
            crate::input::HttpResponseCodeInput {
       11346  +
            /* ServerBuilderGenerator.kt:542 */}
       11347  +
            /* ServerBuilderGenerator.kt:283 */
       11348  +
        }
       11349  +
        /* ServerBuilderGenerator.kt:215 */
       11350  +
    }
       11351  +
       11352  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       11353  +
}
       11354  +
/// /* ServerBuilderGenerator.kt:171 */See [`ResponseCodeRequiredInput`](crate::input::ResponseCodeRequiredInput).
       11355  +
pub mod response_code_required_input {
       11356  +
       11357  +
    /* ServerBuilderGenerator.kt:461 */
       11358  +
    impl ::std::convert::From<Builder> for crate::input::ResponseCodeRequiredInput {
       11359  +
        fn from(builder: Builder) -> Self {
       11360  +
            builder.build()
       11361  +
        }
11628  11362   
    }
       11363  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`ResponseCodeRequiredInput`](crate::input::ResponseCodeRequiredInput).
       11364  +
    /* RustType.kt:534 */
       11365  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       11366  +
    /* ServerBuilderGenerator.kt:211 */
       11367  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
11629  11368   
    /* ServerBuilderGenerator.kt:215 */
11630  11369   
    impl Builder {
11631         -
        /* ServerBuilderGenerator.kt:331 */
11632         -
        #[allow(missing_docs)] // documentation missing in model
11633         -
                               /* ServerBuilderGenerator.kt:343 */
11634         -
        pub fn string_value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
11635         -
            /* ServerBuilderGenerator.kt:344 */
11636         -
            self.string_value =
11637         -
                /* ServerBuilderGenerator.kt:376 */input
11638         -
            /* ServerBuilderGenerator.kt:344 */;
11639         -
            self
11640         -
            /* ServerBuilderGenerator.kt:343 */
       11370  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`ResponseCodeRequiredInput`](crate::input::ResponseCodeRequiredInput).
       11371  +
        /* ServerBuilderGenerator.kt:271 */
       11372  +
        pub fn build(self) -> crate::input::ResponseCodeRequiredInput {
       11373  +
            self.build_enforcing_all_constraints()
11641  11374   
        }
11642         -
        /* ServerBuilderGenerator.kt:426 */
11643         -
        #[allow(missing_docs)] // documentation missing in model
11644         -
                               /* ServerBuilderGenerator.kt:428 */
11645         -
        pub(crate) fn set_string_value(
11646         -
            mut self,
11647         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
11648         -
        ) -> Self {
11649         -
            /* ServerBuilderGenerator.kt:429 */
11650         -
            self.string_value = input.map(|v| v.into());
11651         -
            self
11652         -
            /* ServerBuilderGenerator.kt:428 */
       11375  +
        /* ServerBuilderGenerator.kt:283 */
       11376  +
        fn build_enforcing_all_constraints(self) -> crate::input::ResponseCodeRequiredInput {
       11377  +
            /* ServerBuilderGenerator.kt:542 */
       11378  +
            crate::input::ResponseCodeRequiredInput {
       11379  +
            /* ServerBuilderGenerator.kt:542 */}
       11380  +
            /* ServerBuilderGenerator.kt:283 */
11653  11381   
        }
11654         -
        /* ServerBuilderGenerator.kt:331 */
11655         -
        #[allow(missing_docs)] // documentation missing in model
11656         -
                               /* ServerBuilderGenerator.kt:343 */
11657         -
        pub fn document_value(
11658         -
            mut self,
11659         -
            input: ::std::option::Option<::aws_smithy_types::Document>,
11660         -
        ) -> Self {
11661         -
            /* ServerBuilderGenerator.kt:344 */
11662         -
            self.document_value =
11663         -
                /* ServerBuilderGenerator.kt:376 */input
11664         -
            /* ServerBuilderGenerator.kt:344 */;
11665         -
            self
11666         -
            /* ServerBuilderGenerator.kt:343 */
       11382  +
        /* ServerBuilderGenerator.kt:215 */
       11383  +
    }
       11384  +
       11385  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       11386  +
}
       11387  +
/// /* ServerBuilderGenerator.kt:171 */See [`ResponseCodeHttpFallbackInput`](crate::input::ResponseCodeHttpFallbackInput).
       11388  +
pub mod response_code_http_fallback_input {
       11389  +
       11390  +
    /* ServerBuilderGenerator.kt:461 */
       11391  +
    impl ::std::convert::From<Builder> for crate::input::ResponseCodeHttpFallbackInput {
       11392  +
        fn from(builder: Builder) -> Self {
       11393  +
            builder.build()
11667  11394   
        }
11668         -
        /* ServerBuilderGenerator.kt:426 */
11669         -
        #[allow(missing_docs)] // documentation missing in model
11670         -
                               /* ServerBuilderGenerator.kt:428 */
11671         -
        pub(crate) fn set_document_value(
11672         -
            mut self,
11673         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Document>>,
11674         -
        ) -> Self {
11675         -
            /* ServerBuilderGenerator.kt:429 */
11676         -
            self.document_value = input.map(|v| v.into());
11677         -
            self
11678         -
            /* ServerBuilderGenerator.kt:428 */
11679  11395   
    }
11680         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`DocumentTypeInput`](crate::input::DocumentTypeInput).
       11396  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`ResponseCodeHttpFallbackInput`](crate::input::ResponseCodeHttpFallbackInput).
       11397  +
    /* RustType.kt:534 */
       11398  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       11399  +
    /* ServerBuilderGenerator.kt:211 */
       11400  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       11401  +
    /* ServerBuilderGenerator.kt:215 */
       11402  +
    impl Builder {
       11403  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`ResponseCodeHttpFallbackInput`](crate::input::ResponseCodeHttpFallbackInput).
11681  11404   
        /* ServerBuilderGenerator.kt:271 */
11682         -
        pub fn build(self) -> crate::input::DocumentTypeInput {
       11405  +
        pub fn build(self) -> crate::input::ResponseCodeHttpFallbackInput {
11683  11406   
            self.build_enforcing_all_constraints()
11684  11407   
        }
11685  11408   
        /* ServerBuilderGenerator.kt:283 */
11686         -
        fn build_enforcing_all_constraints(self) -> crate::input::DocumentTypeInput {
11687         -
            /* ServerBuilderGenerator.kt:542 */
11688         -
            crate::input::DocumentTypeInput {
11689         -
                /* ServerBuilderGenerator.kt:546 */
11690         -
                string_value: self.string_value,
11691         -
                /* ServerBuilderGenerator.kt:546 */
11692         -
                document_value: self.document_value,
       11409  +
        fn build_enforcing_all_constraints(self) -> crate::input::ResponseCodeHttpFallbackInput {
11693  11410   
            /* ServerBuilderGenerator.kt:542 */
11694         -
            }
       11411  +
            crate::input::ResponseCodeHttpFallbackInput {
       11412  +
            /* ServerBuilderGenerator.kt:542 */}
11695  11413   
            /* ServerBuilderGenerator.kt:283 */
11696  11414   
        }
11697  11415   
        /* ServerBuilderGenerator.kt:215 */
11698  11416   
    }
11699  11417   
11700  11418   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
11701  11419   
}
11702         -
/// /* ServerBuilderGenerator.kt:171 */See [`JsonBlobsInput`](crate::input::JsonBlobsInput).
11703         -
pub mod json_blobs_input {
       11420  +
/// /* ServerBuilderGenerator.kt:171 */See [`StreamingTraitsInput`](crate::input::StreamingTraitsInput).
       11421  +
pub mod streaming_traits_input {
11704  11422   
11705  11423   
    /* ServerBuilderGenerator.kt:461 */
11706         -
    impl ::std::convert::From<Builder> for crate::input::JsonBlobsInput {
       11424  +
    impl ::std::convert::From<Builder> for crate::input::StreamingTraitsInput {
11707  11425   
        fn from(builder: Builder) -> Self {
11708  11426   
            builder.build()
11709  11427   
        }
11710  11428   
    }
11711         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonBlobsInput`](crate::input::JsonBlobsInput).
       11429  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`StreamingTraitsInput`](crate::input::StreamingTraitsInput).
11712  11430   
    /* RustType.kt:534 */
11713         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       11431  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
11714  11432   
    /* ServerBuilderGenerator.kt:211 */
11715  11433   
    pub struct Builder {
11716  11434   
        /* ServerBuilderGenerator.kt:308 */
11717         -
        pub(crate) data: ::std::option::Option<::aws_smithy_types::Blob>,
       11435  +
        pub(crate) foo: ::std::option::Option<::std::string::String>,
       11436  +
        /* ServerBuilderGenerator.kt:308 */
       11437  +
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::byte_stream::ByteStream>,
11718  11438   
        /* ServerBuilderGenerator.kt:211 */
11719  11439   
    }
11720  11440   
    /* ServerBuilderGenerator.kt:215 */
11721  11441   
    impl Builder {
11722  11442   
        /* ServerBuilderGenerator.kt:331 */
11723  11443   
        #[allow(missing_docs)] // documentation missing in model
11724  11444   
                               /* ServerBuilderGenerator.kt:343 */
11725         -
        pub fn data(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
       11445  +
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
11726  11446   
            /* ServerBuilderGenerator.kt:344 */
11727         -
            self.data =
       11447  +
            self.foo =
11728  11448   
                /* ServerBuilderGenerator.kt:376 */input
11729  11449   
            /* ServerBuilderGenerator.kt:344 */;
11730  11450   
            self
11731  11451   
            /* ServerBuilderGenerator.kt:343 */
11732  11452   
        }
11733  11453   
        /* ServerBuilderGenerator.kt:426 */
11734  11454   
        #[allow(missing_docs)] // documentation missing in model
11735  11455   
                               /* ServerBuilderGenerator.kt:428 */
11736         -
        pub(crate) fn set_data(
       11456  +
        pub(crate) fn set_foo(
11737  11457   
            mut self,
11738         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
       11458  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
11739  11459   
        ) -> Self {
11740  11460   
            /* ServerBuilderGenerator.kt:429 */
11741         -
            self.data = input.map(|v| v.into());
       11461  +
            self.foo = input.map(|v| v.into());
11742  11462   
            self
11743  11463   
            /* ServerBuilderGenerator.kt:428 */
11744  11464   
        }
11745         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonBlobsInput`](crate::input::JsonBlobsInput).
       11465  +
        /* ServerBuilderGenerator.kt:331 */
       11466  +
        #[allow(missing_docs)] // documentation missing in model
       11467  +
                               /* ServerBuilderGenerator.kt:343 */
       11468  +
        pub fn blob(mut self, input: ::aws_smithy_types::byte_stream::ByteStream) -> Self {
       11469  +
            /* ServerBuilderGenerator.kt:344 */
       11470  +
            self.blob =
       11471  +
                /* ServerBuilderGenerator.kt:345 */Some(
       11472  +
                    /* ServerBuilderGenerator.kt:376 */input
       11473  +
                /* ServerBuilderGenerator.kt:345 */)
       11474  +
            /* ServerBuilderGenerator.kt:344 */;
       11475  +
            self
       11476  +
            /* ServerBuilderGenerator.kt:343 */
       11477  +
        }
       11478  +
        /* ServerBuilderGenerator.kt:426 */
       11479  +
        #[allow(missing_docs)] // documentation missing in model
       11480  +
                               /* ServerBuilderGenerator.kt:428 */
       11481  +
        pub(crate) fn set_blob(
       11482  +
            mut self,
       11483  +
            input: impl ::std::convert::Into<::aws_smithy_types::byte_stream::ByteStream>,
       11484  +
        ) -> Self {
       11485  +
            /* ServerBuilderGenerator.kt:429 */
       11486  +
            self.blob = Some(input.into());
       11487  +
            self
       11488  +
            /* ServerBuilderGenerator.kt:428 */
       11489  +
        }
       11490  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`StreamingTraitsInput`](crate::input::StreamingTraitsInput).
11746  11491   
        /* ServerBuilderGenerator.kt:271 */
11747         -
        pub fn build(self) -> crate::input::JsonBlobsInput {
       11492  +
        pub fn build(self) -> crate::input::StreamingTraitsInput {
11748  11493   
            self.build_enforcing_all_constraints()
11749  11494   
        }
11750  11495   
        /* ServerBuilderGenerator.kt:283 */
11751         -
        fn build_enforcing_all_constraints(self) -> crate::input::JsonBlobsInput {
       11496  +
        fn build_enforcing_all_constraints(self) -> crate::input::StreamingTraitsInput {
11752  11497   
            /* ServerBuilderGenerator.kt:542 */
11753         -
            crate::input::JsonBlobsInput {
       11498  +
            crate::input::StreamingTraitsInput {
11754  11499   
                /* ServerBuilderGenerator.kt:546 */
11755         -
                data: self.data,
       11500  +
                foo: self.foo,
       11501  +
                /* ServerBuilderGenerator.kt:546 */
       11502  +
                blob: self
       11503  +
                    .blob
       11504  +
                    /* ServerBuilderGeneratorCommon.kt:95 */
       11505  +
                    .unwrap_or_default(),
11756  11506   
                /* ServerBuilderGenerator.kt:542 */
11757  11507   
            }
11758  11508   
            /* ServerBuilderGenerator.kt:283 */
11759  11509   
        }
11760  11510   
        /* ServerBuilderGenerator.kt:215 */
11761  11511   
    }
11762  11512   
11763  11513   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
11764  11514   
}
11765         -
/// /* ServerBuilderGenerator.kt:171 */See [`SparseJsonMapsInput`](crate::input::SparseJsonMapsInput).
11766         -
pub mod sparse_json_maps_input {
       11515  +
/// /* ServerBuilderGenerator.kt:171 */See [`StreamingTraitsRequireLengthInput`](crate::input::StreamingTraitsRequireLengthInput).
       11516  +
pub mod streaming_traits_require_length_input {
11767  11517   
11768         -
    /* RustType.kt:534 */
11769         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
11770         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
11771         -
    /* RustType.kt:534 */
11772         -
    #[non_exhaustive]
11773         -
    /* ServerBuilderConstraintViolations.kt:75 */
11774         -
    #[allow(clippy::enum_variant_names)]
11775         -
    pub enum ConstraintViolation {
11776         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `sparse_set_map` when building `SparseJsonMapsInput`.
11777         -
        /* RustType.kt:534 */
11778         -
        #[doc(hidden)]
11779         -
        /* ServerBuilderConstraintViolations.kt:165 */
11780         -
        SparseSetMap(crate::model::sparse_set_map::ConstraintViolation),
11781         -
        /* ServerBuilderConstraintViolations.kt:75 */
11782         -
    }
11783         -
    /* ServerBuilderConstraintViolations.kt:116 */
11784         -
    impl ::std::fmt::Display for ConstraintViolation {
11785         -
        /* ServerBuilderConstraintViolations.kt:117 */
11786         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
11787         -
            /* ServerBuilderConstraintViolations.kt:118 */
11788         -
            match self {
11789         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::SparseSetMap(_) => write!(f, "constraint violation occurred building member `sparse_set_map` when building `SparseJsonMapsInput`"),
11790         -
            /* ServerBuilderConstraintViolations.kt:118 */}
11791         -
            /* ServerBuilderConstraintViolations.kt:117 */
11792         -
        }
11793         -
        /* ServerBuilderConstraintViolations.kt:116 */
11794         -
    }
11795         -
    /* ServerBuilderConstraintViolations.kt:83 */
11796         -
    impl ::std::error::Error for ConstraintViolation {}
11797         -
    /* ServerBuilderConstraintViolations.kt:172 */
11798         -
    impl ConstraintViolation {
11799         -
        pub(crate) fn as_validation_exception_field(
11800         -
            self,
11801         -
            path: ::std::string::String,
11802         -
        ) -> crate::model::ValidationExceptionField {
11803         -
            match self {
11804         -
                ConstraintViolation::SparseSetMap(inner) => {
11805         -
                    inner.as_validation_exception_field(path + "/sparseSetMap")
11806         -
                }
11807         -
            }
11808         -
        }
11809         -
    }
11810         -
    /* ServerBuilderGenerator.kt:234 */
11811         -
    impl ::std::convert::From<ConstraintViolation>
11812         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
11813         -
    {
11814         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
11815         -
            let first_validation_exception_field =
11816         -
                constraint_violation.as_validation_exception_field("".to_owned());
11817         -
            let validation_exception = crate::error::ValidationException {
11818         -
                message: format!(
11819         -
                    "1 validation error detected. {}",
11820         -
                    &first_validation_exception_field.message
11821         -
                ),
11822         -
                field_list: Some(vec![first_validation_exception_field]),
11823         -
            };
11824         -
            Self::ConstraintViolation(
11825         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
11826         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
11827         -
                            )
11828         -
        }
11829         -
    }
11830         -
    /* ServerBuilderGenerator.kt:244 */
11831         -
    impl ::std::convert::From<Builder>
11832         -
        for crate::constrained::MaybeConstrained<crate::input::SparseJsonMapsInput>
11833         -
    {
       11518  +
    /* ServerBuilderGenerator.kt:461 */
       11519  +
    impl ::std::convert::From<Builder> for crate::input::StreamingTraitsRequireLengthInput {
11834  11520   
        fn from(builder: Builder) -> Self {
11835         -
            Self::Unconstrained(builder)
11836         -
        }
11837         -
    }
11838         -
    /* ServerBuilderGenerator.kt:446 */
11839         -
    impl ::std::convert::TryFrom<Builder> for crate::input::SparseJsonMapsInput {
11840         -
        type Error = ConstraintViolation;
11841         -
11842         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
11843  11521   
            builder.build()
11844  11522   
        }
11845  11523   
    }
11846         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`SparseJsonMapsInput`](crate::input::SparseJsonMapsInput).
       11524  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`StreamingTraitsRequireLengthInput`](crate::input::StreamingTraitsRequireLengthInput).
11847  11525   
    /* RustType.kt:534 */
11848         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       11526  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
11849  11527   
    /* ServerBuilderGenerator.kt:211 */
11850  11528   
    pub struct Builder {
11851  11529   
        /* ServerBuilderGenerator.kt:308 */
11852         -
        pub(crate) sparse_struct_map: ::std::option::Option<
11853         -
            ::std::collections::HashMap<
11854         -
                ::std::string::String,
11855         -
                ::std::option::Option<crate::model::GreetingStruct>,
11856         -
            >,
11857         -
        >,
11858         -
        /* ServerBuilderGenerator.kt:308 */
11859         -
        pub(crate) sparse_number_map: ::std::option::Option<
11860         -
            ::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
11861         -
        >,
11862         -
        /* ServerBuilderGenerator.kt:308 */
11863         -
        pub(crate) sparse_boolean_map: ::std::option::Option<
11864         -
            ::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
11865         -
        >,
11866         -
        /* ServerBuilderGenerator.kt:308 */
11867         -
        pub(crate) sparse_string_map: ::std::option::Option<
11868         -
            ::std::collections::HashMap<
11869         -
                ::std::string::String,
11870         -
                ::std::option::Option<::std::string::String>,
11871         -
            >,
11872         -
        >,
       11530  +
        pub(crate) foo: ::std::option::Option<::std::string::String>,
11873  11531   
        /* ServerBuilderGenerator.kt:308 */
11874         -
        pub(crate) sparse_set_map: ::std::option::Option<
11875         -
            crate::constrained::MaybeConstrained<
11876         -
                crate::constrained::sparse_set_map_constrained::SparseSetMapConstrained,
11877         -
            >,
11878         -
        >,
       11532  +
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::byte_stream::ByteStream>,
11879  11533   
        /* ServerBuilderGenerator.kt:211 */
11880  11534   
    }
11881  11535   
    /* ServerBuilderGenerator.kt:215 */
11882  11536   
    impl Builder {
11883  11537   
        /* ServerBuilderGenerator.kt:331 */
11884         -
        #[allow(missing_docs)] // documentation missing in model
11885         -
                               /* ServerBuilderGenerator.kt:343 */
11886         -
        pub fn sparse_struct_map(
11887         -
            mut self,
11888         -
            input: ::std::option::Option<
11889         -
                ::std::collections::HashMap<
11890         -
                    ::std::string::String,
11891         -
                    ::std::option::Option<crate::model::GreetingStruct>,
11892         -
                >,
11893         -
            >,
11894         -
        ) -> Self {
11895         -
            /* ServerBuilderGenerator.kt:344 */
11896         -
            self.sparse_struct_map =
11897         -
                /* ServerBuilderGenerator.kt:376 */input
11898         -
            /* ServerBuilderGenerator.kt:344 */;
11899         -
            self
11900         -
            /* ServerBuilderGenerator.kt:343 */
11901         -
        }
11902         -
        /* ServerBuilderGenerator.kt:426 */
11903         -
        #[allow(missing_docs)] // documentation missing in model
11904         -
                               /* ServerBuilderGenerator.kt:428 */
11905         -
        pub(crate) fn set_sparse_struct_map(
11906         -
            mut self,
11907         -
            input: Option<
11908         -
                impl ::std::convert::Into<
11909         -
                    ::std::collections::HashMap<
11910         -
                        ::std::string::String,
11911         -
                        ::std::option::Option<crate::model::GreetingStruct>,
11912         -
                    >,
11913         -
                >,
11914         -
            >,
11915         -
        ) -> Self {
11916         -
            /* ServerBuilderGenerator.kt:429 */
11917         -
            self.sparse_struct_map = input.map(|v| v.into());
11918         -
            self
11919         -
            /* ServerBuilderGenerator.kt:428 */
11920         -
        }
11921         -
        /* ServerBuilderGenerator.kt:331 */
11922         -
        #[allow(missing_docs)] // documentation missing in model
11923         -
                               /* ServerBuilderGenerator.kt:343 */
11924         -
        pub fn sparse_number_map(
11925         -
            mut self,
11926         -
            input: ::std::option::Option<
11927         -
                ::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
11928         -
            >,
11929         -
        ) -> Self {
       11538  +
        #[allow(missing_docs)] // documentation missing in model
       11539  +
                               /* ServerBuilderGenerator.kt:343 */
       11540  +
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
11930  11541   
            /* ServerBuilderGenerator.kt:344 */
11931         -
            self.sparse_number_map =
       11542  +
            self.foo =
11932  11543   
                /* ServerBuilderGenerator.kt:376 */input
11933  11544   
            /* ServerBuilderGenerator.kt:344 */;
11934  11545   
            self
11935  11546   
            /* ServerBuilderGenerator.kt:343 */
11936  11547   
        }
11937  11548   
        /* ServerBuilderGenerator.kt:426 */
11938  11549   
        #[allow(missing_docs)] // documentation missing in model
11939  11550   
                               /* ServerBuilderGenerator.kt:428 */
11940         -
        pub(crate) fn set_sparse_number_map(
       11551  +
        pub(crate) fn set_foo(
11941  11552   
            mut self,
11942         -
            input: Option<
11943         -
                impl ::std::convert::Into<
11944         -
                    ::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
11945         -
                >,
11946         -
            >,
       11553  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
11947  11554   
        ) -> Self {
11948  11555   
            /* ServerBuilderGenerator.kt:429 */
11949         -
            self.sparse_number_map = input.map(|v| v.into());
       11556  +
            self.foo = input.map(|v| v.into());
11950  11557   
            self
11951  11558   
            /* ServerBuilderGenerator.kt:428 */
11952  11559   
        }
11953  11560   
        /* ServerBuilderGenerator.kt:331 */
11954  11561   
        #[allow(missing_docs)] // documentation missing in model
11955  11562   
                               /* ServerBuilderGenerator.kt:343 */
11956         -
        pub fn sparse_boolean_map(
11957         -
            mut self,
11958         -
            input: ::std::option::Option<
11959         -
                ::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
11960         -
            >,
11961         -
        ) -> Self {
       11563  +
        pub fn blob(mut self, input: ::aws_smithy_types::byte_stream::ByteStream) -> Self {
11962  11564   
            /* ServerBuilderGenerator.kt:344 */
11963         -
            self.sparse_boolean_map =
       11565  +
            self.blob =
       11566  +
                /* ServerBuilderGenerator.kt:345 */Some(
11964  11567   
                    /* ServerBuilderGenerator.kt:376 */input
       11568  +
                /* ServerBuilderGenerator.kt:345 */)
11965  11569   
            /* ServerBuilderGenerator.kt:344 */;
11966  11570   
            self
11967  11571   
            /* ServerBuilderGenerator.kt:343 */
11968  11572   
        }
11969  11573   
        /* ServerBuilderGenerator.kt:426 */
11970  11574   
        #[allow(missing_docs)] // documentation missing in model
11971  11575   
                               /* ServerBuilderGenerator.kt:428 */
11972         -
        pub(crate) fn set_sparse_boolean_map(
       11576  +
        pub(crate) fn set_blob(
11973  11577   
            mut self,
11974         -
            input: Option<
11975         -
                impl ::std::convert::Into<
11976         -
                    ::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
11977         -
                >,
11978         -
            >,
       11578  +
            input: impl ::std::convert::Into<::aws_smithy_types::byte_stream::ByteStream>,
11979  11579   
        ) -> Self {
11980  11580   
            /* ServerBuilderGenerator.kt:429 */
11981         -
            self.sparse_boolean_map = input.map(|v| v.into());
       11581  +
            self.blob = Some(input.into());
11982  11582   
            self
11983  11583   
            /* ServerBuilderGenerator.kt:428 */
11984  11584   
        }
       11585  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`StreamingTraitsRequireLengthInput`](crate::input::StreamingTraitsRequireLengthInput).
       11586  +
        /* ServerBuilderGenerator.kt:271 */
       11587  +
        pub fn build(self) -> crate::input::StreamingTraitsRequireLengthInput {
       11588  +
            self.build_enforcing_all_constraints()
       11589  +
        }
       11590  +
        /* ServerBuilderGenerator.kt:283 */
       11591  +
        fn build_enforcing_all_constraints(
       11592  +
            self,
       11593  +
        ) -> crate::input::StreamingTraitsRequireLengthInput {
       11594  +
            /* ServerBuilderGenerator.kt:542 */
       11595  +
            crate::input::StreamingTraitsRequireLengthInput {
       11596  +
                /* ServerBuilderGenerator.kt:546 */
       11597  +
                foo: self.foo,
       11598  +
                /* ServerBuilderGenerator.kt:546 */
       11599  +
                blob: self
       11600  +
                    .blob
       11601  +
                    /* ServerBuilderGeneratorCommon.kt:95 */
       11602  +
                    .unwrap_or_default(),
       11603  +
                /* ServerBuilderGenerator.kt:542 */
       11604  +
            }
       11605  +
            /* ServerBuilderGenerator.kt:283 */
       11606  +
        }
       11607  +
        /* ServerBuilderGenerator.kt:215 */
       11608  +
    }
       11609  +
       11610  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       11611  +
}
       11612  +
/// /* ServerBuilderGenerator.kt:171 */See [`StreamingTraitsWithMediaTypeInput`](crate::input::StreamingTraitsWithMediaTypeInput).
       11613  +
pub mod streaming_traits_with_media_type_input {
       11614  +
       11615  +
    /* ServerBuilderGenerator.kt:461 */
       11616  +
    impl ::std::convert::From<Builder> for crate::input::StreamingTraitsWithMediaTypeInput {
       11617  +
        fn from(builder: Builder) -> Self {
       11618  +
            builder.build()
       11619  +
        }
       11620  +
    }
       11621  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`StreamingTraitsWithMediaTypeInput`](crate::input::StreamingTraitsWithMediaTypeInput).
       11622  +
    /* RustType.kt:534 */
       11623  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
       11624  +
    /* ServerBuilderGenerator.kt:211 */
       11625  +
    pub struct Builder {
       11626  +
        /* ServerBuilderGenerator.kt:308 */
       11627  +
        pub(crate) foo: ::std::option::Option<::std::string::String>,
       11628  +
        /* ServerBuilderGenerator.kt:308 */
       11629  +
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::byte_stream::ByteStream>,
       11630  +
        /* ServerBuilderGenerator.kt:211 */
       11631  +
    }
       11632  +
    /* ServerBuilderGenerator.kt:215 */
       11633  +
    impl Builder {
11985  11634   
        /* ServerBuilderGenerator.kt:331 */
11986  11635   
        #[allow(missing_docs)] // documentation missing in model
11987  11636   
                               /* ServerBuilderGenerator.kt:343 */
11988         -
        pub fn sparse_string_map(
11989         -
            mut self,
11990         -
            input: ::std::option::Option<
11991         -
                ::std::collections::HashMap<
11992         -
                    ::std::string::String,
11993         -
                    ::std::option::Option<::std::string::String>,
11994         -
                >,
11995         -
            >,
11996         -
        ) -> Self {
       11637  +
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
11997  11638   
            /* ServerBuilderGenerator.kt:344 */
11998         -
            self.sparse_string_map =
       11639  +
            self.foo =
11999  11640   
                /* ServerBuilderGenerator.kt:376 */input
12000  11641   
            /* ServerBuilderGenerator.kt:344 */;
12001  11642   
            self
12002  11643   
            /* ServerBuilderGenerator.kt:343 */
12003  11644   
        }
12004  11645   
        /* ServerBuilderGenerator.kt:426 */
12005  11646   
        #[allow(missing_docs)] // documentation missing in model
12006  11647   
                               /* ServerBuilderGenerator.kt:428 */
12007         -
        pub(crate) fn set_sparse_string_map(
       11648  +
        pub(crate) fn set_foo(
12008  11649   
            mut self,
12009         -
            input: Option<
12010         -
                impl ::std::convert::Into<
12011         -
                    ::std::collections::HashMap<
12012         -
                        ::std::string::String,
12013         -
                        ::std::option::Option<::std::string::String>,
12014         -
                    >,
12015         -
                >,
12016         -
            >,
       11650  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
12017  11651   
        ) -> Self {
12018  11652   
            /* ServerBuilderGenerator.kt:429 */
12019         -
            self.sparse_string_map = input.map(|v| v.into());
       11653  +
            self.foo = input.map(|v| v.into());
12020  11654   
            self
12021  11655   
            /* ServerBuilderGenerator.kt:428 */
12022  11656   
        }
12023  11657   
        /* ServerBuilderGenerator.kt:331 */
12024  11658   
        #[allow(missing_docs)] // documentation missing in model
12025  11659   
                               /* ServerBuilderGenerator.kt:343 */
12026         -
        pub fn sparse_set_map(
12027         -
            mut self,
12028         -
            input: ::std::option::Option<
12029         -
                ::std::collections::HashMap<
12030         -
                    ::std::string::String,
12031         -
                    ::std::option::Option<crate::model::StringSet>,
12032         -
                >,
12033         -
            >,
12034         -
        ) -> Self {
       11660  +
        pub fn blob(mut self, input: ::aws_smithy_types::byte_stream::ByteStream) -> Self {
12035  11661   
            /* ServerBuilderGenerator.kt:344 */
12036         -
            self.sparse_set_map =
12037         -
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
12038         -
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
12039         -
                /* ServerBuilderGenerator.kt:363 */)
       11662  +
            self.blob =
       11663  +
                /* ServerBuilderGenerator.kt:345 */Some(
       11664  +
                    /* ServerBuilderGenerator.kt:376 */input
       11665  +
                /* ServerBuilderGenerator.kt:345 */)
12040  11666   
            /* ServerBuilderGenerator.kt:344 */;
12041  11667   
            self
12042  11668   
            /* ServerBuilderGenerator.kt:343 */
12043  11669   
        }
12044  11670   
        /* ServerBuilderGenerator.kt:426 */
12045  11671   
        #[allow(missing_docs)] // documentation missing in model
12046  11672   
                               /* ServerBuilderGenerator.kt:428 */
12047         -
        pub(crate) fn set_sparse_set_map(
       11673  +
        pub(crate) fn set_blob(
12048  11674   
            mut self,
12049         -
            input: Option<
12050         -
                impl ::std::convert::Into<
12051         -
                    crate::constrained::MaybeConstrained<
12052         -
                        crate::constrained::sparse_set_map_constrained::SparseSetMapConstrained,
12053         -
                    >,
12054         -
                >,
12055         -
            >,
       11675  +
            input: impl ::std::convert::Into<::aws_smithy_types::byte_stream::ByteStream>,
12056  11676   
        ) -> Self {
12057  11677   
            /* ServerBuilderGenerator.kt:429 */
12058         -
            self.sparse_set_map = input.map(|v| v.into());
       11678  +
            self.blob = Some(input.into());
12059  11679   
            self
12060  11680   
            /* ServerBuilderGenerator.kt:428 */
12061  11681   
        }
12062         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`SparseJsonMapsInput`](crate::input::SparseJsonMapsInput).
12063         -
        /// /* ServerBuilderGenerator.kt:260 */
12064         -
        /// The builder fails to construct a [`SparseJsonMapsInput`](crate::input::SparseJsonMapsInput) if a [`ConstraintViolation`] occurs.
12065         -
        ///
       11682  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`StreamingTraitsWithMediaTypeInput`](crate::input::StreamingTraitsWithMediaTypeInput).
12066  11683   
        /* ServerBuilderGenerator.kt:271 */
12067         -
        pub fn build(self) -> Result<crate::input::SparseJsonMapsInput, ConstraintViolation> {
       11684  +
        pub fn build(self) -> crate::input::StreamingTraitsWithMediaTypeInput {
12068  11685   
            self.build_enforcing_all_constraints()
12069  11686   
        }
12070  11687   
        /* ServerBuilderGenerator.kt:283 */
12071  11688   
        fn build_enforcing_all_constraints(
12072  11689   
            self,
12073         -
        ) -> Result<crate::input::SparseJsonMapsInput, ConstraintViolation> {
12074         -
            /* ServerBuilderGenerator.kt:287 */
12075         -
            Ok(
       11690  +
        ) -> crate::input::StreamingTraitsWithMediaTypeInput {
12076  11691   
            /* ServerBuilderGenerator.kt:542 */
12077         -
                crate::input::SparseJsonMapsInput {
12078         -
                    /* ServerBuilderGenerator.kt:546 */
12079         -
                    sparse_struct_map: self.sparse_struct_map,
12080         -
                    /* ServerBuilderGenerator.kt:546 */
12081         -
                    sparse_number_map: self.sparse_number_map,
12082         -
                    /* ServerBuilderGenerator.kt:546 */
12083         -
                    sparse_boolean_map: self.sparse_boolean_map,
       11692  +
            crate::input::StreamingTraitsWithMediaTypeInput {
12084  11693   
                /* ServerBuilderGenerator.kt:546 */
12085         -
                    sparse_string_map: self.sparse_string_map,
       11694  +
                foo: self.foo,
12086  11695   
                /* ServerBuilderGenerator.kt:546 */
12087         -
                    sparse_set_map: self
12088         -
                        .sparse_set_map
12089         -
                        /* ServerBuilderGenerator.kt:602 */
12090         -
                        .map(|v| match v {
12091         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
12092         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
12093         -
                        })
12094         -
                        /* ServerBuilderGenerator.kt:614 */
12095         -
                        .map(|res| {
12096         -
                            res.map(|v| v.into())
12097         -
                                .map_err(ConstraintViolation::SparseSetMap)
12098         -
                        })
12099         -
                        .transpose()?,
       11696  +
                blob: self
       11697  +
                    .blob
       11698  +
                    /* ServerBuilderGeneratorCommon.kt:95 */
       11699  +
                    .unwrap_or_default(),
12100  11700   
                /* ServerBuilderGenerator.kt:542 */
12101         -
                }, /* ServerBuilderGenerator.kt:287 */
12102         -
            )
       11701  +
            }
12103  11702   
            /* ServerBuilderGenerator.kt:283 */
12104  11703   
        }
12105  11704   
        /* ServerBuilderGenerator.kt:215 */
12106  11705   
    }
12107  11706   
12108  11707   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
12109  11708   
}
12110         -
/// /* ServerBuilderGenerator.kt:171 */See [`JsonMapsInput`](crate::input::JsonMapsInput).
12111         -
pub mod json_maps_input {
       11709  +
/// /* ServerBuilderGenerator.kt:171 */See [`GreetingWithErrorsInput`](crate::input::GreetingWithErrorsInput).
       11710  +
pub mod greeting_with_errors_input {
12112  11711   
12113         -
    /* RustType.kt:534 */
12114         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
12115         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
12116         -
    /* RustType.kt:534 */
12117         -
    #[non_exhaustive]
12118         -
    /* ServerBuilderConstraintViolations.kt:75 */
12119         -
    #[allow(clippy::enum_variant_names)]
12120         -
    pub enum ConstraintViolation {
12121         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `dense_set_map` when building `JsonMapsInput`.
12122         -
        /* RustType.kt:534 */
12123         -
        #[doc(hidden)]
12124         -
        /* ServerBuilderConstraintViolations.kt:165 */
12125         -
        DenseSetMap(crate::model::dense_set_map::ConstraintViolation),
12126         -
        /* ServerBuilderConstraintViolations.kt:75 */
12127         -
    }
12128         -
    /* ServerBuilderConstraintViolations.kt:116 */
12129         -
    impl ::std::fmt::Display for ConstraintViolation {
12130         -
        /* ServerBuilderConstraintViolations.kt:117 */
12131         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
12132         -
            /* ServerBuilderConstraintViolations.kt:118 */
12133         -
            match self {
12134         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::DenseSetMap(_) => write!(f, "constraint violation occurred building member `dense_set_map` when building `JsonMapsInput`"),
12135         -
            /* ServerBuilderConstraintViolations.kt:118 */}
12136         -
            /* ServerBuilderConstraintViolations.kt:117 */
12137         -
        }
12138         -
        /* ServerBuilderConstraintViolations.kt:116 */
12139         -
    }
12140         -
    /* ServerBuilderConstraintViolations.kt:83 */
12141         -
    impl ::std::error::Error for ConstraintViolation {}
12142         -
    /* ServerBuilderConstraintViolations.kt:172 */
12143         -
    impl ConstraintViolation {
12144         -
        pub(crate) fn as_validation_exception_field(
12145         -
            self,
12146         -
            path: ::std::string::String,
12147         -
        ) -> crate::model::ValidationExceptionField {
12148         -
            match self {
12149         -
                ConstraintViolation::DenseSetMap(inner) => {
12150         -
                    inner.as_validation_exception_field(path + "/denseSetMap")
12151         -
                }
12152         -
            }
12153         -
        }
       11712  +
    /* ServerBuilderGenerator.kt:461 */
       11713  +
    impl ::std::convert::From<Builder> for crate::input::GreetingWithErrorsInput {
       11714  +
        fn from(builder: Builder) -> Self {
       11715  +
            builder.build()
12154  11716   
        }
12155         -
    /* ServerBuilderGenerator.kt:234 */
12156         -
    impl ::std::convert::From<ConstraintViolation>
12157         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
12158         -
    {
12159         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
12160         -
            let first_validation_exception_field =
12161         -
                constraint_violation.as_validation_exception_field("".to_owned());
12162         -
            let validation_exception = crate::error::ValidationException {
12163         -
                message: format!(
12164         -
                    "1 validation error detected. {}",
12165         -
                    &first_validation_exception_field.message
12166         -
                ),
12167         -
                field_list: Some(vec![first_validation_exception_field]),
12168         -
            };
12169         -
            Self::ConstraintViolation(
12170         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
12171         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
12172         -
                            )
12173  11717   
    }
       11718  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`GreetingWithErrorsInput`](crate::input::GreetingWithErrorsInput).
       11719  +
    /* RustType.kt:534 */
       11720  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       11721  +
    /* ServerBuilderGenerator.kt:211 */
       11722  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       11723  +
    /* ServerBuilderGenerator.kt:215 */
       11724  +
    impl Builder {
       11725  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`GreetingWithErrorsInput`](crate::input::GreetingWithErrorsInput).
       11726  +
        /* ServerBuilderGenerator.kt:271 */
       11727  +
        pub fn build(self) -> crate::input::GreetingWithErrorsInput {
       11728  +
            self.build_enforcing_all_constraints()
12174  11729   
        }
12175         -
    /* ServerBuilderGenerator.kt:244 */
12176         -
    impl ::std::convert::From<Builder>
12177         -
        for crate::constrained::MaybeConstrained<crate::input::JsonMapsInput>
12178         -
    {
12179         -
        fn from(builder: Builder) -> Self {
12180         -
            Self::Unconstrained(builder)
       11730  +
        /* ServerBuilderGenerator.kt:283 */
       11731  +
        fn build_enforcing_all_constraints(self) -> crate::input::GreetingWithErrorsInput {
       11732  +
            /* ServerBuilderGenerator.kt:542 */
       11733  +
            crate::input::GreetingWithErrorsInput {
       11734  +
            /* ServerBuilderGenerator.kt:542 */}
       11735  +
            /* ServerBuilderGenerator.kt:283 */
12181  11736   
        }
       11737  +
        /* ServerBuilderGenerator.kt:215 */
12182  11738   
    }
12183         -
    /* ServerBuilderGenerator.kt:446 */
12184         -
    impl ::std::convert::TryFrom<Builder> for crate::input::JsonMapsInput {
12185         -
        type Error = ConstraintViolation;
12186  11739   
12187         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       11740  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       11741  +
}
       11742  +
/// /* ServerBuilderGenerator.kt:171 */See [`SimpleScalarPropertiesInput`](crate::input::SimpleScalarPropertiesInput).
       11743  +
pub mod simple_scalar_properties_input {
       11744  +
       11745  +
    /* ServerBuilderGenerator.kt:461 */
       11746  +
    impl ::std::convert::From<Builder> for crate::input::SimpleScalarPropertiesInput {
       11747  +
        fn from(builder: Builder) -> Self {
12188  11748   
            builder.build()
12189  11749   
        }
12190  11750   
    }
12191         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonMapsInput`](crate::input::JsonMapsInput).
       11751  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`SimpleScalarPropertiesInput`](crate::input::SimpleScalarPropertiesInput).
12192  11752   
    /* RustType.kt:534 */
12193  11753   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
12194  11754   
    /* ServerBuilderGenerator.kt:211 */
12195  11755   
    pub struct Builder {
12196  11756   
        /* ServerBuilderGenerator.kt:308 */
12197         -
        pub(crate) dense_struct_map: ::std::option::Option<
12198         -
            ::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
12199         -
        >,
       11757  +
        pub(crate) foo: ::std::option::Option<::std::string::String>,
12200  11758   
        /* ServerBuilderGenerator.kt:308 */
12201         -
        pub(crate) dense_number_map:
12202         -
            ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
       11759  +
        pub(crate) string_value: ::std::option::Option<::std::string::String>,
12203  11760   
        /* ServerBuilderGenerator.kt:308 */
12204         -
        pub(crate) dense_boolean_map:
12205         -
            ::std::option::Option<::std::collections::HashMap<::std::string::String, bool>>,
       11761  +
        pub(crate) true_boolean_value: ::std::option::Option<bool>,
12206  11762   
        /* ServerBuilderGenerator.kt:308 */
12207         -
        pub(crate) dense_string_map: ::std::option::Option<
12208         -
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
12209         -
        >,
       11763  +
        pub(crate) false_boolean_value: ::std::option::Option<bool>,
       11764  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) byte_value: ::std::option::Option<i8>,
12210  11765   
        /* ServerBuilderGenerator.kt:308 */
12211         -
        pub(crate) dense_set_map: ::std::option::Option<
12212         -
            crate::constrained::MaybeConstrained<
12213         -
                crate::constrained::dense_set_map_constrained::DenseSetMapConstrained,
12214         -
            >,
12215         -
        >,
       11766  +
        pub(crate) short_value: ::std::option::Option<i16>,
       11767  +
        /* ServerBuilderGenerator.kt:308 */
       11768  +
        pub(crate) integer_value: ::std::option::Option<i32>,
       11769  +
        /* ServerBuilderGenerator.kt:308 */
       11770  +
        pub(crate) long_value: ::std::option::Option<i64>,
       11771  +
        /* ServerBuilderGenerator.kt:308 */
       11772  +
        pub(crate) float_value: ::std::option::Option<f32>,
       11773  +
        /* ServerBuilderGenerator.kt:308 */
       11774  +
        pub(crate) double_value: ::std::option::Option<f64>,
12216  11775   
        /* ServerBuilderGenerator.kt:211 */
12217  11776   
    }
12218  11777   
    /* ServerBuilderGenerator.kt:215 */
12219  11778   
    impl Builder {
12220  11779   
        /* ServerBuilderGenerator.kt:331 */
12221  11780   
        #[allow(missing_docs)] // documentation missing in model
12222  11781   
                               /* ServerBuilderGenerator.kt:343 */
12223         -
        pub fn dense_struct_map(
12224         -
            mut self,
12225         -
            input: ::std::option::Option<
12226         -
                ::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
12227         -
            >,
12228         -
        ) -> Self {
       11782  +
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
12229  11783   
            /* ServerBuilderGenerator.kt:344 */
12230         -
            self.dense_struct_map =
       11784  +
            self.foo =
12231  11785   
                /* ServerBuilderGenerator.kt:376 */input
12232  11786   
            /* ServerBuilderGenerator.kt:344 */;
12233  11787   
            self
12234  11788   
            /* ServerBuilderGenerator.kt:343 */
12235  11789   
        }
12236  11790   
        /* ServerBuilderGenerator.kt:426 */
12237  11791   
        #[allow(missing_docs)] // documentation missing in model
12238  11792   
                               /* ServerBuilderGenerator.kt:428 */
12239         -
        pub(crate) fn set_dense_struct_map(
       11793  +
        pub(crate) fn set_foo(
12240  11794   
            mut self,
12241         -
            input: Option<
12242         -
                impl ::std::convert::Into<
12243         -
                    ::std::collections::HashMap<
12244         -
                        ::std::string::String,
12245         -
                        crate::model::GreetingStruct,
12246         -
                    >,
12247         -
                >,
12248         -
            >,
       11795  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
12249  11796   
        ) -> Self {
12250  11797   
            /* ServerBuilderGenerator.kt:429 */
12251         -
            self.dense_struct_map = input.map(|v| v.into());
       11798  +
            self.foo = input.map(|v| v.into());
12252  11799   
            self
12253  11800   
            /* ServerBuilderGenerator.kt:428 */
12254  11801   
        }
12255  11802   
        /* ServerBuilderGenerator.kt:331 */
12256  11803   
        #[allow(missing_docs)] // documentation missing in model
12257  11804   
                               /* ServerBuilderGenerator.kt:343 */
12258         -
        pub fn dense_number_map(
12259         -
            mut self,
12260         -
            input: ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
12261         -
        ) -> Self {
       11805  +
        pub fn string_value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
12262  11806   
            /* ServerBuilderGenerator.kt:344 */
12263         -
            self.dense_number_map =
       11807  +
            self.string_value =
12264  11808   
                /* ServerBuilderGenerator.kt:376 */input
12265  11809   
            /* ServerBuilderGenerator.kt:344 */;
12266  11810   
            self
12267  11811   
            /* ServerBuilderGenerator.kt:343 */
12268  11812   
        }
12269  11813   
        /* ServerBuilderGenerator.kt:426 */
12270  11814   
        #[allow(missing_docs)] // documentation missing in model
12271  11815   
                               /* ServerBuilderGenerator.kt:428 */
12272         -
        pub(crate) fn set_dense_number_map(
       11816  +
        pub(crate) fn set_string_value(
12273  11817   
            mut self,
12274         -
            input: Option<
12275         -
                impl ::std::convert::Into<::std::collections::HashMap<::std::string::String, i32>>,
12276         -
            >,
       11818  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
12277  11819   
        ) -> Self {
12278  11820   
            /* ServerBuilderGenerator.kt:429 */
12279         -
            self.dense_number_map = input.map(|v| v.into());
       11821  +
            self.string_value = input.map(|v| v.into());
12280  11822   
            self
12281  11823   
            /* ServerBuilderGenerator.kt:428 */
12282  11824   
        }
12283  11825   
        /* ServerBuilderGenerator.kt:331 */
12284  11826   
        #[allow(missing_docs)] // documentation missing in model
12285  11827   
                               /* ServerBuilderGenerator.kt:343 */
12286         -
        pub fn dense_boolean_map(
12287         -
            mut self,
12288         -
            input: ::std::option::Option<::std::collections::HashMap<::std::string::String, bool>>,
12289         -
        ) -> Self {
       11828  +
        pub fn true_boolean_value(mut self, input: ::std::option::Option<bool>) -> Self {
12290  11829   
            /* ServerBuilderGenerator.kt:344 */
12291         -
            self.dense_boolean_map =
       11830  +
            self.true_boolean_value =
12292  11831   
                /* ServerBuilderGenerator.kt:376 */input
12293  11832   
            /* ServerBuilderGenerator.kt:344 */;
12294  11833   
            self
12295  11834   
            /* ServerBuilderGenerator.kt:343 */
12296  11835   
        }
12297  11836   
        /* ServerBuilderGenerator.kt:426 */
12298  11837   
        #[allow(missing_docs)] // documentation missing in model
12299  11838   
                               /* ServerBuilderGenerator.kt:428 */
12300         -
        pub(crate) fn set_dense_boolean_map(
       11839  +
        pub(crate) fn set_true_boolean_value(
12301  11840   
            mut self,
12302         -
            input: Option<
12303         -
                impl ::std::convert::Into<::std::collections::HashMap<::std::string::String, bool>>,
12304         -
            >,
       11841  +
            input: Option<impl ::std::convert::Into<bool>>,
12305  11842   
        ) -> Self {
12306  11843   
            /* ServerBuilderGenerator.kt:429 */
12307         -
            self.dense_boolean_map = input.map(|v| v.into());
       11844  +
            self.true_boolean_value = input.map(|v| v.into());
12308  11845   
            self
12309  11846   
            /* ServerBuilderGenerator.kt:428 */
12310  11847   
        }
12311  11848   
        /* ServerBuilderGenerator.kt:331 */
12312  11849   
        #[allow(missing_docs)] // documentation missing in model
12313  11850   
                               /* ServerBuilderGenerator.kt:343 */
12314         -
        pub fn dense_string_map(
12315         -
            mut self,
12316         -
            input: ::std::option::Option<
12317         -
                ::std::collections::HashMap<::std::string::String, ::std::string::String>,
12318         -
            >,
12319         -
        ) -> Self {
       11851  +
        pub fn false_boolean_value(mut self, input: ::std::option::Option<bool>) -> Self {
12320  11852   
            /* ServerBuilderGenerator.kt:344 */
12321         -
            self.dense_string_map =
       11853  +
            self.false_boolean_value =
12322  11854   
                /* ServerBuilderGenerator.kt:376 */input
12323  11855   
            /* ServerBuilderGenerator.kt:344 */;
12324  11856   
            self
12325  11857   
            /* ServerBuilderGenerator.kt:343 */
12326  11858   
        }
12327  11859   
        /* ServerBuilderGenerator.kt:426 */
12328  11860   
        #[allow(missing_docs)] // documentation missing in model
12329  11861   
                               /* ServerBuilderGenerator.kt:428 */
12330         -
        pub(crate) fn set_dense_string_map(
       11862  +
        pub(crate) fn set_false_boolean_value(
12331  11863   
            mut self,
12332         -
            input: Option<
12333         -
                impl ::std::convert::Into<
12334         -
                    ::std::collections::HashMap<::std::string::String, ::std::string::String>,
12335         -
                >,
12336         -
            >,
       11864  +
            input: Option<impl ::std::convert::Into<bool>>,
12337  11865   
        ) -> Self {
12338  11866   
            /* ServerBuilderGenerator.kt:429 */
12339         -
            self.dense_string_map = input.map(|v| v.into());
       11867  +
            self.false_boolean_value = input.map(|v| v.into());
12340  11868   
            self
12341  11869   
            /* ServerBuilderGenerator.kt:428 */
12342  11870   
        }
12343  11871   
        /* ServerBuilderGenerator.kt:331 */
12344  11872   
        #[allow(missing_docs)] // documentation missing in model
12345  11873   
                               /* ServerBuilderGenerator.kt:343 */
12346         -
        pub fn dense_set_map(
12347         -
            mut self,
12348         -
            input: ::std::option::Option<
12349         -
                ::std::collections::HashMap<::std::string::String, crate::model::StringSet>,
12350         -
            >,
12351         -
        ) -> Self {
       11874  +
        pub fn byte_value(mut self, input: ::std::option::Option<i8>) -> Self {
12352  11875   
            /* ServerBuilderGenerator.kt:344 */
12353         -
            self.dense_set_map =
12354         -
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
12355         -
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
12356         -
                /* ServerBuilderGenerator.kt:363 */)
       11876  +
            self.byte_value =
       11877  +
                /* ServerBuilderGenerator.kt:376 */input
12357  11878   
            /* ServerBuilderGenerator.kt:344 */;
12358  11879   
            self
12359  11880   
            /* ServerBuilderGenerator.kt:343 */
12360  11881   
        }
12361  11882   
        /* ServerBuilderGenerator.kt:426 */
12362  11883   
        #[allow(missing_docs)] // documentation missing in model
12363  11884   
                               /* ServerBuilderGenerator.kt:428 */
12364         -
        pub(crate) fn set_dense_set_map(
       11885  +
        pub(crate) fn set_byte_value(
12365  11886   
            mut self,
12366         -
            input: Option<
12367         -
                impl ::std::convert::Into<
12368         -
                    crate::constrained::MaybeConstrained<
12369         -
                        crate::constrained::dense_set_map_constrained::DenseSetMapConstrained,
12370         -
                    >,
12371         -
                >,
12372         -
            >,
       11887  +
            input: Option<impl ::std::convert::Into<i8>>,
12373  11888   
        ) -> Self {
12374  11889   
            /* ServerBuilderGenerator.kt:429 */
12375         -
            self.dense_set_map = input.map(|v| v.into());
       11890  +
            self.byte_value = input.map(|v| v.into());
12376  11891   
            self
12377  11892   
            /* ServerBuilderGenerator.kt:428 */
12378  11893   
        }
12379         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonMapsInput`](crate::input::JsonMapsInput).
12380         -
        /// /* ServerBuilderGenerator.kt:260 */
12381         -
        /// The builder fails to construct a [`JsonMapsInput`](crate::input::JsonMapsInput) if a [`ConstraintViolation`] occurs.
12382         -
        ///
12383         -
        /* ServerBuilderGenerator.kt:271 */
12384         -
        pub fn build(self) -> Result<crate::input::JsonMapsInput, ConstraintViolation> {
12385         -
            self.build_enforcing_all_constraints()
12386         -
        }
12387         -
        /* ServerBuilderGenerator.kt:283 */
12388         -
        fn build_enforcing_all_constraints(
12389         -
            self,
12390         -
        ) -> Result<crate::input::JsonMapsInput, ConstraintViolation> {
12391         -
            /* ServerBuilderGenerator.kt:287 */
12392         -
            Ok(
12393         -
                /* ServerBuilderGenerator.kt:542 */
12394         -
                crate::input::JsonMapsInput {
12395         -
                    /* ServerBuilderGenerator.kt:546 */
12396         -
                    dense_struct_map: self.dense_struct_map,
12397         -
                    /* ServerBuilderGenerator.kt:546 */
12398         -
                    dense_number_map: self.dense_number_map,
12399         -
                    /* ServerBuilderGenerator.kt:546 */
12400         -
                    dense_boolean_map: self.dense_boolean_map,
12401         -
                    /* ServerBuilderGenerator.kt:546 */
12402         -
                    dense_string_map: self.dense_string_map,
12403         -
                    /* ServerBuilderGenerator.kt:546 */
12404         -
                    dense_set_map: self
12405         -
                        .dense_set_map
12406         -
                        /* ServerBuilderGenerator.kt:602 */
12407         -
                        .map(|v| match v {
12408         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
12409         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
12410         -
                        })
12411         -
                        /* ServerBuilderGenerator.kt:614 */
12412         -
                        .map(|res| {
12413         -
                            res.map(|v| v.into())
12414         -
                                .map_err(ConstraintViolation::DenseSetMap)
12415         -
                        })
12416         -
                        .transpose()?,
12417         -
                    /* ServerBuilderGenerator.kt:542 */
12418         -
                }, /* ServerBuilderGenerator.kt:287 */
12419         -
            )
12420         -
            /* ServerBuilderGenerator.kt:283 */
12421         -
        }
12422         -
        /* ServerBuilderGenerator.kt:215 */
       11894  +
        /* ServerBuilderGenerator.kt:331 */
       11895  +
        #[allow(missing_docs)] // documentation missing in model
       11896  +
                               /* ServerBuilderGenerator.kt:343 */
       11897  +
        pub fn short_value(mut self, input: ::std::option::Option<i16>) -> Self {
       11898  +
            /* ServerBuilderGenerator.kt:344 */
       11899  +
            self.short_value =
       11900  +
                /* ServerBuilderGenerator.kt:376 */input
       11901  +
            /* ServerBuilderGenerator.kt:344 */;
       11902  +
            self
       11903  +
            /* ServerBuilderGenerator.kt:343 */
12423  11904   
        }
12424         -
12425         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
12426         -
}
12427         -
/// /* ServerBuilderGenerator.kt:171 */See [`SparseJsonListsInput`](crate::input::SparseJsonListsInput).
12428         -
pub mod sparse_json_lists_input {
12429         -
12430         -
    /* ServerBuilderGenerator.kt:461 */
12431         -
    impl ::std::convert::From<Builder> for crate::input::SparseJsonListsInput {
12432         -
        fn from(builder: Builder) -> Self {
12433         -
            builder.build()
       11905  +
        /* ServerBuilderGenerator.kt:426 */
       11906  +
        #[allow(missing_docs)] // documentation missing in model
       11907  +
                               /* ServerBuilderGenerator.kt:428 */
       11908  +
        pub(crate) fn set_short_value(
       11909  +
            mut self,
       11910  +
            input: Option<impl ::std::convert::Into<i16>>,
       11911  +
        ) -> Self {
       11912  +
            /* ServerBuilderGenerator.kt:429 */
       11913  +
            self.short_value = input.map(|v| v.into());
       11914  +
            self
       11915  +
            /* ServerBuilderGenerator.kt:428 */
12434  11916   
        }
       11917  +
        /* ServerBuilderGenerator.kt:331 */
       11918  +
        #[allow(missing_docs)] // documentation missing in model
       11919  +
                               /* ServerBuilderGenerator.kt:343 */
       11920  +
        pub fn integer_value(mut self, input: ::std::option::Option<i32>) -> Self {
       11921  +
            /* ServerBuilderGenerator.kt:344 */
       11922  +
            self.integer_value =
       11923  +
                /* ServerBuilderGenerator.kt:376 */input
       11924  +
            /* ServerBuilderGenerator.kt:344 */;
       11925  +
            self
       11926  +
            /* ServerBuilderGenerator.kt:343 */
12435  11927   
        }
12436         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`SparseJsonListsInput`](crate::input::SparseJsonListsInput).
12437         -
    /* RustType.kt:534 */
12438         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
12439         -
    /* ServerBuilderGenerator.kt:211 */
12440         -
    pub struct Builder {
12441         -
        /* ServerBuilderGenerator.kt:308 */
12442         -
        pub(crate) sparse_string_list:
12443         -
            ::std::option::Option<::std::vec::Vec<::std::option::Option<::std::string::String>>>,
12444         -
        /* ServerBuilderGenerator.kt:308 */
12445         -
        pub(crate) sparse_short_list:
12446         -
            ::std::option::Option<::std::vec::Vec<::std::option::Option<i16>>>,
12447         -
        /* ServerBuilderGenerator.kt:211 */
       11928  +
        /* ServerBuilderGenerator.kt:426 */
       11929  +
        #[allow(missing_docs)] // documentation missing in model
       11930  +
                               /* ServerBuilderGenerator.kt:428 */
       11931  +
        pub(crate) fn set_integer_value(
       11932  +
            mut self,
       11933  +
            input: Option<impl ::std::convert::Into<i32>>,
       11934  +
        ) -> Self {
       11935  +
            /* ServerBuilderGenerator.kt:429 */
       11936  +
            self.integer_value = input.map(|v| v.into());
       11937  +
            self
       11938  +
            /* ServerBuilderGenerator.kt:428 */
12448  11939   
        }
12449         -
    /* ServerBuilderGenerator.kt:215 */
12450         -
    impl Builder {
12451  11940   
        /* ServerBuilderGenerator.kt:331 */
12452  11941   
        #[allow(missing_docs)] // documentation missing in model
12453  11942   
                               /* ServerBuilderGenerator.kt:343 */
12454         -
        pub fn sparse_string_list(
12455         -
            mut self,
12456         -
            input: ::std::option::Option<
12457         -
                ::std::vec::Vec<::std::option::Option<::std::string::String>>,
12458         -
            >,
12459         -
        ) -> Self {
       11943  +
        pub fn long_value(mut self, input: ::std::option::Option<i64>) -> Self {
12460  11944   
            /* ServerBuilderGenerator.kt:344 */
12461         -
            self.sparse_string_list =
       11945  +
            self.long_value =
12462  11946   
                /* ServerBuilderGenerator.kt:376 */input
12463  11947   
            /* ServerBuilderGenerator.kt:344 */;
12464  11948   
            self
12465  11949   
            /* ServerBuilderGenerator.kt:343 */
12466  11950   
        }
12467  11951   
        /* ServerBuilderGenerator.kt:426 */
12468  11952   
        #[allow(missing_docs)] // documentation missing in model
12469  11953   
                               /* ServerBuilderGenerator.kt:428 */
12470         -
        pub(crate) fn set_sparse_string_list(
       11954  +
        pub(crate) fn set_long_value(
12471  11955   
            mut self,
12472         -
            input: Option<
12473         -
                impl ::std::convert::Into<::std::vec::Vec<::std::option::Option<::std::string::String>>>,
12474         -
            >,
       11956  +
            input: Option<impl ::std::convert::Into<i64>>,
12475  11957   
        ) -> Self {
12476  11958   
            /* ServerBuilderGenerator.kt:429 */
12477         -
            self.sparse_string_list = input.map(|v| v.into());
       11959  +
            self.long_value = input.map(|v| v.into());
12478  11960   
            self
12479  11961   
            /* ServerBuilderGenerator.kt:428 */
12480  11962   
        }
12481  11963   
        /* ServerBuilderGenerator.kt:331 */
12482  11964   
        #[allow(missing_docs)] // documentation missing in model
12483  11965   
                               /* ServerBuilderGenerator.kt:343 */
12484         -
        pub fn sparse_short_list(
       11966  +
        pub fn float_value(mut self, input: ::std::option::Option<f32>) -> Self {
       11967  +
            /* ServerBuilderGenerator.kt:344 */
       11968  +
            self.float_value =
       11969  +
                /* ServerBuilderGenerator.kt:376 */input
       11970  +
            /* ServerBuilderGenerator.kt:344 */;
       11971  +
            self
       11972  +
            /* ServerBuilderGenerator.kt:343 */
       11973  +
        }
       11974  +
        /* ServerBuilderGenerator.kt:426 */
       11975  +
        #[allow(missing_docs)] // documentation missing in model
       11976  +
                               /* ServerBuilderGenerator.kt:428 */
       11977  +
        pub(crate) fn set_float_value(
12485  11978   
            mut self,
12486         -
            input: ::std::option::Option<::std::vec::Vec<::std::option::Option<i16>>>,
       11979  +
            input: Option<impl ::std::convert::Into<f32>>,
12487  11980   
        ) -> Self {
       11981  +
            /* ServerBuilderGenerator.kt:429 */
       11982  +
            self.float_value = input.map(|v| v.into());
       11983  +
            self
       11984  +
            /* ServerBuilderGenerator.kt:428 */
       11985  +
        }
       11986  +
        /* ServerBuilderGenerator.kt:331 */
       11987  +
        #[allow(missing_docs)] // documentation missing in model
       11988  +
                               /* ServerBuilderGenerator.kt:343 */
       11989  +
        pub fn double_value(mut self, input: ::std::option::Option<f64>) -> Self {
12488  11990   
            /* ServerBuilderGenerator.kt:344 */
12489         -
            self.sparse_short_list =
       11991  +
            self.double_value =
12490  11992   
                /* ServerBuilderGenerator.kt:376 */input
12491  11993   
            /* ServerBuilderGenerator.kt:344 */;
12492  11994   
            self
12493  11995   
            /* ServerBuilderGenerator.kt:343 */
12494  11996   
        }
12495  11997   
        /* ServerBuilderGenerator.kt:426 */
12496  11998   
        #[allow(missing_docs)] // documentation missing in model
12497  11999   
                               /* ServerBuilderGenerator.kt:428 */
12498         -
        pub(crate) fn set_sparse_short_list(
       12000  +
        pub(crate) fn set_double_value(
12499  12001   
            mut self,
12500         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::option::Option<i16>>>>,
       12002  +
            input: Option<impl ::std::convert::Into<f64>>,
12501  12003   
        ) -> Self {
12502  12004   
            /* ServerBuilderGenerator.kt:429 */
12503         -
            self.sparse_short_list = input.map(|v| v.into());
       12005  +
            self.double_value = input.map(|v| v.into());
12504  12006   
            self
12505  12007   
            /* ServerBuilderGenerator.kt:428 */
12506  12008   
        }
12507         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`SparseJsonListsInput`](crate::input::SparseJsonListsInput).
       12009  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`SimpleScalarPropertiesInput`](crate::input::SimpleScalarPropertiesInput).
12508  12010   
        /* ServerBuilderGenerator.kt:271 */
12509         -
        pub fn build(self) -> crate::input::SparseJsonListsInput {
       12011  +
        pub fn build(self) -> crate::input::SimpleScalarPropertiesInput {
12510  12012   
            self.build_enforcing_all_constraints()
12511  12013   
        }
12512  12014   
        /* ServerBuilderGenerator.kt:283 */
12513         -
        fn build_enforcing_all_constraints(self) -> crate::input::SparseJsonListsInput {
       12015  +
        fn build_enforcing_all_constraints(self) -> crate::input::SimpleScalarPropertiesInput {
12514  12016   
            /* ServerBuilderGenerator.kt:542 */
12515         -
            crate::input::SparseJsonListsInput {
       12017  +
            crate::input::SimpleScalarPropertiesInput {
12516  12018   
                /* ServerBuilderGenerator.kt:546 */
12517         -
                sparse_string_list: self.sparse_string_list,
       12019  +
                foo: self.foo,
12518  12020   
                /* ServerBuilderGenerator.kt:546 */
12519         -
                sparse_short_list: self.sparse_short_list,
       12021  +
                string_value: self.string_value,
       12022  +
                /* ServerBuilderGenerator.kt:546 */
       12023  +
                true_boolean_value: self.true_boolean_value,
       12024  +
                /* ServerBuilderGenerator.kt:546 */
       12025  +
                false_boolean_value: self.false_boolean_value,
       12026  +
                /* ServerBuilderGenerator.kt:546 */
       12027  +
                byte_value: self.byte_value,
       12028  +
                /* ServerBuilderGenerator.kt:546 */
       12029  +
                short_value: self.short_value,
       12030  +
                /* ServerBuilderGenerator.kt:546 */
       12031  +
                integer_value: self.integer_value,
       12032  +
                /* ServerBuilderGenerator.kt:546 */
       12033  +
                long_value: self.long_value,
       12034  +
                /* ServerBuilderGenerator.kt:546 */
       12035  +
                float_value: self.float_value,
       12036  +
                /* ServerBuilderGenerator.kt:546 */
       12037  +
                double_value: self.double_value,
12520  12038   
                /* ServerBuilderGenerator.kt:542 */
12521  12039   
            }
12522  12040   
            /* ServerBuilderGenerator.kt:283 */
12523  12041   
        }
12524  12042   
        /* ServerBuilderGenerator.kt:215 */
12525  12043   
    }
12526  12044   
12527  12045   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
12528  12046   
}
12529         -
/// /* ServerBuilderGenerator.kt:171 */See [`JsonListsInput`](crate::input::JsonListsInput).
12530         -
pub mod json_lists_input {
       12047  +
/// /* ServerBuilderGenerator.kt:171 */See [`JsonTimestampsInput`](crate::input::JsonTimestampsInput).
       12048  +
pub mod json_timestamps_input {
12531  12049   
12532         -
    /* RustType.kt:534 */
12533         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
12534         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
12535         -
    /* RustType.kt:534 */
12536         -
    #[non_exhaustive]
12537         -
    /* ServerBuilderConstraintViolations.kt:75 */
12538         -
    #[allow(clippy::enum_variant_names)]
12539         -
    pub enum ConstraintViolation {
12540         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `string_set` when building `JsonListsInput`.
12541         -
        /* RustType.kt:534 */
12542         -
        #[doc(hidden)]
12543         -
        /* ServerBuilderConstraintViolations.kt:165 */
12544         -
        StringSet(crate::model::string_set::ConstraintViolation),
12545         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `enum_list` when building `JsonListsInput`.
12546         -
        /* RustType.kt:534 */
12547         -
        #[doc(hidden)]
12548         -
        /* ServerBuilderConstraintViolations.kt:165 */
12549         -
        EnumList(crate::model::foo_enum_list::ConstraintViolation),
12550         -
        /* ServerBuilderConstraintViolations.kt:75 */
12551         -
    }
12552         -
    /* ServerBuilderConstraintViolations.kt:116 */
12553         -
    impl ::std::fmt::Display for ConstraintViolation {
12554         -
        /* ServerBuilderConstraintViolations.kt:117 */
12555         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
12556         -
            /* ServerBuilderConstraintViolations.kt:118 */
12557         -
            match self {
12558         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::StringSet(_) => write!(f, "constraint violation occurred building member `string_set` when building `JsonListsInput`"),
12559         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::EnumList(_) => write!(f, "constraint violation occurred building member `enum_list` when building `JsonListsInput`"),
12560         -
            /* ServerBuilderConstraintViolations.kt:118 */}
12561         -
            /* ServerBuilderConstraintViolations.kt:117 */
12562         -
        }
12563         -
        /* ServerBuilderConstraintViolations.kt:116 */
12564         -
    }
12565         -
    /* ServerBuilderConstraintViolations.kt:83 */
12566         -
    impl ::std::error::Error for ConstraintViolation {}
12567         -
    /* ServerBuilderConstraintViolations.kt:172 */
12568         -
    impl ConstraintViolation {
12569         -
        pub(crate) fn as_validation_exception_field(
12570         -
            self,
12571         -
            path: ::std::string::String,
12572         -
        ) -> crate::model::ValidationExceptionField {
12573         -
            match self {
12574         -
                ConstraintViolation::StringSet(inner) => {
12575         -
                    inner.as_validation_exception_field(path + "/stringSet")
12576         -
                }
12577         -
                ConstraintViolation::EnumList(inner) => {
12578         -
                    inner.as_validation_exception_field(path + "/enumList")
12579         -
                }
12580         -
            }
12581         -
        }
12582         -
    }
12583         -
    /* ServerBuilderGenerator.kt:234 */
12584         -
    impl ::std::convert::From<ConstraintViolation>
12585         -
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
12586         -
    {
12587         -
        fn from(constraint_violation: ConstraintViolation) -> Self {
12588         -
            let first_validation_exception_field =
12589         -
                constraint_violation.as_validation_exception_field("".to_owned());
12590         -
            let validation_exception = crate::error::ValidationException {
12591         -
                message: format!(
12592         -
                    "1 validation error detected. {}",
12593         -
                    &first_validation_exception_field.message
12594         -
                ),
12595         -
                field_list: Some(vec![first_validation_exception_field]),
12596         -
            };
12597         -
            Self::ConstraintViolation(
12598         -
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
12599         -
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
12600         -
                            )
12601         -
        }
12602         -
    }
12603         -
    /* ServerBuilderGenerator.kt:244 */
12604         -
    impl ::std::convert::From<Builder>
12605         -
        for crate::constrained::MaybeConstrained<crate::input::JsonListsInput>
12606         -
    {
       12050  +
    /* ServerBuilderGenerator.kt:461 */
       12051  +
    impl ::std::convert::From<Builder> for crate::input::JsonTimestampsInput {
12607  12052   
        fn from(builder: Builder) -> Self {
12608         -
            Self::Unconstrained(builder)
12609         -
        }
12610         -
    }
12611         -
    /* ServerBuilderGenerator.kt:446 */
12612         -
    impl ::std::convert::TryFrom<Builder> for crate::input::JsonListsInput {
12613         -
        type Error = ConstraintViolation;
12614         -
12615         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
12616  12053   
            builder.build()
12617  12054   
        }
12618  12055   
    }
12619         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonListsInput`](crate::input::JsonListsInput).
       12056  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonTimestampsInput`](crate::input::JsonTimestampsInput).
12620  12057   
    /* RustType.kt:534 */
12621  12058   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
12622  12059   
    /* ServerBuilderGenerator.kt:211 */
12623  12060   
    pub struct Builder {
12624  12061   
        /* ServerBuilderGenerator.kt:308 */
12625         -
        pub(crate) string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
12626         -
        /* ServerBuilderGenerator.kt:308 */
12627         -
        pub(crate) string_set:
12628         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
12629         -
        /* ServerBuilderGenerator.kt:308 */
12630         -
        pub(crate) integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
       12062  +
        pub(crate) normal: ::std::option::Option<::aws_smithy_types::DateTime>,
12631  12063   
        /* ServerBuilderGenerator.kt:308 */
12632         -
        pub(crate) boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
       12064  +
        pub(crate) date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
12633  12065   
        /* ServerBuilderGenerator.kt:308 */
12634         -
        pub(crate) timestamp_list:
12635         -
            ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
       12066  +
        pub(crate) date_time_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
12636  12067   
        /* ServerBuilderGenerator.kt:308 */
12637         -
        pub(crate) enum_list: ::std::option::Option<
12638         -
            crate::constrained::MaybeConstrained<
12639         -
                crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
12640         -
            >,
12641         -
        >,
       12068  +
        pub(crate) epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
12642  12069   
        /* ServerBuilderGenerator.kt:308 */
12643         -
        pub(crate) int_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
       12070  +
        pub(crate) epoch_seconds_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
12644  12071   
        /* ServerBuilderGenerator.kt:308 */
12645         -
        pub(crate) nested_string_list:
12646         -
            ::std::option::Option<::std::vec::Vec<::std::vec::Vec<::std::string::String>>>,
       12072  +
        pub(crate) http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
12647  12073   
        /* ServerBuilderGenerator.kt:308 */
12648         -
        pub(crate) structure_list:
12649         -
            ::std::option::Option<::std::vec::Vec<crate::model::StructureListMember>>,
12650         -
        /* ServerBuilderGenerator.kt:211 */
12651         -
    }
12652         -
    /* ServerBuilderGenerator.kt:215 */
12653         -
    impl Builder {
12654         -
        /* ServerBuilderGenerator.kt:331 */
12655         -
        #[allow(missing_docs)] // documentation missing in model
12656         -
                               /* ServerBuilderGenerator.kt:343 */
12657         -
        pub fn string_list(
12658         -
            mut self,
12659         -
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
12660         -
        ) -> Self {
12661         -
            /* ServerBuilderGenerator.kt:344 */
12662         -
            self.string_list =
12663         -
                /* ServerBuilderGenerator.kt:376 */input
12664         -
            /* ServerBuilderGenerator.kt:344 */;
12665         -
            self
12666         -
            /* ServerBuilderGenerator.kt:343 */
12667         -
        }
12668         -
        /* ServerBuilderGenerator.kt:426 */
12669         -
        #[allow(missing_docs)] // documentation missing in model
12670         -
                               /* ServerBuilderGenerator.kt:428 */
12671         -
        pub(crate) fn set_string_list(
12672         -
            mut self,
12673         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
12674         -
        ) -> Self {
12675         -
            /* ServerBuilderGenerator.kt:429 */
12676         -
            self.string_list = input.map(|v| v.into());
12677         -
            self
12678         -
            /* ServerBuilderGenerator.kt:428 */
12679         -
        }
12680         -
        /* ServerBuilderGenerator.kt:331 */
12681         -
        #[allow(missing_docs)] // documentation missing in model
12682         -
                               /* ServerBuilderGenerator.kt:343 */
12683         -
        pub fn string_set(mut self, input: ::std::option::Option<crate::model::StringSet>) -> Self {
12684         -
            /* ServerBuilderGenerator.kt:344 */
12685         -
            self.string_set =
12686         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
12687         -
            /* ServerBuilderGenerator.kt:344 */;
12688         -
            self
12689         -
            /* ServerBuilderGenerator.kt:343 */
12690         -
        }
12691         -
        /* ServerBuilderGenerator.kt:426 */
12692         -
        #[allow(missing_docs)] // documentation missing in model
12693         -
                               /* ServerBuilderGenerator.kt:428 */
12694         -
        pub(crate) fn set_string_set(
12695         -
            mut self,
12696         -
            input: Option<
12697         -
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
12698         -
            >,
12699         -
        ) -> Self {
12700         -
            /* ServerBuilderGenerator.kt:429 */
12701         -
            self.string_set = input.map(|v| v.into());
12702         -
            self
12703         -
            /* ServerBuilderGenerator.kt:428 */
       12074  +
        pub(crate) http_date_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
       12075  +
        /* ServerBuilderGenerator.kt:211 */
12704  12076   
    }
       12077  +
    /* ServerBuilderGenerator.kt:215 */
       12078  +
    impl Builder {
12705  12079   
        /* ServerBuilderGenerator.kt:331 */
12706  12080   
        #[allow(missing_docs)] // documentation missing in model
12707  12081   
                               /* ServerBuilderGenerator.kt:343 */
12708         -
        pub fn integer_list(mut self, input: ::std::option::Option<::std::vec::Vec<i32>>) -> Self {
       12082  +
        pub fn normal(
       12083  +
            mut self,
       12084  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
       12085  +
        ) -> Self {
12709  12086   
            /* ServerBuilderGenerator.kt:344 */
12710         -
            self.integer_list =
       12087  +
            self.normal =
12711  12088   
                /* ServerBuilderGenerator.kt:376 */input
12712  12089   
            /* ServerBuilderGenerator.kt:344 */;
12713  12090   
            self
12714  12091   
            /* ServerBuilderGenerator.kt:343 */
12715  12092   
        }
12716  12093   
        /* ServerBuilderGenerator.kt:426 */
12717  12094   
        #[allow(missing_docs)] // documentation missing in model
12718  12095   
                               /* ServerBuilderGenerator.kt:428 */
12719         -
        pub(crate) fn set_integer_list(
       12096  +
        pub(crate) fn set_normal(
12720  12097   
            mut self,
12721         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
       12098  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
12722  12099   
        ) -> Self {
12723  12100   
            /* ServerBuilderGenerator.kt:429 */
12724         -
            self.integer_list = input.map(|v| v.into());
       12101  +
            self.normal = input.map(|v| v.into());
12725  12102   
            self
12726  12103   
            /* ServerBuilderGenerator.kt:428 */
12727  12104   
        }
12728  12105   
        /* ServerBuilderGenerator.kt:331 */
12729  12106   
        #[allow(missing_docs)] // documentation missing in model
12730  12107   
                               /* ServerBuilderGenerator.kt:343 */
12731         -
        pub fn boolean_list(mut self, input: ::std::option::Option<::std::vec::Vec<bool>>) -> Self {
       12108  +
        pub fn date_time(
       12109  +
            mut self,
       12110  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
       12111  +
        ) -> Self {
12732  12112   
            /* ServerBuilderGenerator.kt:344 */
12733         -
            self.boolean_list =
       12113  +
            self.date_time =
12734  12114   
                /* ServerBuilderGenerator.kt:376 */input
12735  12115   
            /* ServerBuilderGenerator.kt:344 */;
12736  12116   
            self
12737  12117   
            /* ServerBuilderGenerator.kt:343 */
12738  12118   
        }
12739  12119   
        /* ServerBuilderGenerator.kt:426 */
12740  12120   
        #[allow(missing_docs)] // documentation missing in model
12741  12121   
                               /* ServerBuilderGenerator.kt:428 */
12742         -
        pub(crate) fn set_boolean_list(
       12122  +
        pub(crate) fn set_date_time(
12743  12123   
            mut self,
12744         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<bool>>>,
       12124  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
12745  12125   
        ) -> Self {
12746  12126   
            /* ServerBuilderGenerator.kt:429 */
12747         -
            self.boolean_list = input.map(|v| v.into());
       12127  +
            self.date_time = input.map(|v| v.into());
12748  12128   
            self
12749  12129   
            /* ServerBuilderGenerator.kt:428 */
12750  12130   
        }
12751  12131   
        /* ServerBuilderGenerator.kt:331 */
12752  12132   
        #[allow(missing_docs)] // documentation missing in model
12753  12133   
                               /* ServerBuilderGenerator.kt:343 */
12754         -
        pub fn timestamp_list(
       12134  +
        pub fn date_time_on_target(
12755  12135   
            mut self,
12756         -
            input: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
       12136  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
12757  12137   
        ) -> Self {
12758  12138   
            /* ServerBuilderGenerator.kt:344 */
12759         -
            self.timestamp_list =
       12139  +
            self.date_time_on_target =
12760  12140   
                /* ServerBuilderGenerator.kt:376 */input
12761  12141   
            /* ServerBuilderGenerator.kt:344 */;
12762  12142   
            self
12763  12143   
            /* ServerBuilderGenerator.kt:343 */
12764  12144   
        }
12765  12145   
        /* ServerBuilderGenerator.kt:426 */
12766  12146   
        #[allow(missing_docs)] // documentation missing in model
12767  12147   
                               /* ServerBuilderGenerator.kt:428 */
12768         -
        pub(crate) fn set_timestamp_list(
       12148  +
        pub(crate) fn set_date_time_on_target(
12769  12149   
            mut self,
12770         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::aws_smithy_types::DateTime>>>,
       12150  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
12771  12151   
        ) -> Self {
12772  12152   
            /* ServerBuilderGenerator.kt:429 */
12773         -
            self.timestamp_list = input.map(|v| v.into());
       12153  +
            self.date_time_on_target = input.map(|v| v.into());
12774  12154   
            self
12775  12155   
            /* ServerBuilderGenerator.kt:428 */
12776  12156   
        }
12777  12157   
        /* ServerBuilderGenerator.kt:331 */
12778  12158   
        #[allow(missing_docs)] // documentation missing in model
12779  12159   
                               /* ServerBuilderGenerator.kt:343 */
12780         -
        pub fn enum_list(
       12160  +
        pub fn epoch_seconds(
12781  12161   
            mut self,
12782         -
            input: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
       12162  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
12783  12163   
        ) -> Self {
12784  12164   
            /* ServerBuilderGenerator.kt:344 */
12785         -
            self.enum_list =
12786         -
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
12787         -
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
12788         -
                /* ServerBuilderGenerator.kt:363 */)
       12165  +
            self.epoch_seconds =
       12166  +
                /* ServerBuilderGenerator.kt:376 */input
12789  12167   
            /* ServerBuilderGenerator.kt:344 */;
12790  12168   
            self
12791  12169   
            /* ServerBuilderGenerator.kt:343 */
12792  12170   
        }
12793  12171   
        /* ServerBuilderGenerator.kt:426 */
12794  12172   
        #[allow(missing_docs)] // documentation missing in model
12795  12173   
                               /* ServerBuilderGenerator.kt:428 */
12796         -
        pub(crate) fn set_enum_list(
       12174  +
        pub(crate) fn set_epoch_seconds(
12797  12175   
            mut self,
12798         -
            input: Option<
12799         -
                impl ::std::convert::Into<
12800         -
                    crate::constrained::MaybeConstrained<
12801         -
                        crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
12802         -
                    >,
12803         -
                >,
12804         -
            >,
       12176  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
12805  12177   
        ) -> Self {
12806  12178   
            /* ServerBuilderGenerator.kt:429 */
12807         -
            self.enum_list = input.map(|v| v.into());
       12179  +
            self.epoch_seconds = input.map(|v| v.into());
12808  12180   
            self
12809  12181   
            /* ServerBuilderGenerator.kt:428 */
12810  12182   
        }
12811  12183   
        /* ServerBuilderGenerator.kt:331 */
12812  12184   
        #[allow(missing_docs)] // documentation missing in model
12813  12185   
                               /* ServerBuilderGenerator.kt:343 */
12814         -
        pub fn int_enum_list(mut self, input: ::std::option::Option<::std::vec::Vec<i32>>) -> Self {
       12186  +
        pub fn epoch_seconds_on_target(
       12187  +
            mut self,
       12188  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
       12189  +
        ) -> Self {
12815  12190   
            /* ServerBuilderGenerator.kt:344 */
12816         -
            self.int_enum_list =
       12191  +
            self.epoch_seconds_on_target =
12817  12192   
                /* ServerBuilderGenerator.kt:376 */input
12818  12193   
            /* ServerBuilderGenerator.kt:344 */;
12819  12194   
            self
12820  12195   
            /* ServerBuilderGenerator.kt:343 */
12821  12196   
        }
12822  12197   
        /* ServerBuilderGenerator.kt:426 */
12823  12198   
        #[allow(missing_docs)] // documentation missing in model
12824  12199   
                               /* ServerBuilderGenerator.kt:428 */
12825         -
        pub(crate) fn set_int_enum_list(
       12200  +
        pub(crate) fn set_epoch_seconds_on_target(
12826  12201   
            mut self,
12827         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
       12202  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
12828  12203   
        ) -> Self {
12829  12204   
            /* ServerBuilderGenerator.kt:429 */
12830         -
            self.int_enum_list = input.map(|v| v.into());
       12205  +
            self.epoch_seconds_on_target = input.map(|v| v.into());
12831  12206   
            self
12832  12207   
            /* ServerBuilderGenerator.kt:428 */
12833  12208   
        }
12834         -
        /// /* ServerBuilderGenerator.kt:331 */A list of lists of strings.
       12209  +
        /* ServerBuilderGenerator.kt:331 */
       12210  +
        #[allow(missing_docs)] // documentation missing in model
12835  12211   
                               /* ServerBuilderGenerator.kt:343 */
12836         -
        pub fn nested_string_list(
       12212  +
        pub fn http_date(
12837  12213   
            mut self,
12838         -
            input: ::std::option::Option<::std::vec::Vec<::std::vec::Vec<::std::string::String>>>,
       12214  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
12839  12215   
        ) -> Self {
12840  12216   
            /* ServerBuilderGenerator.kt:344 */
12841         -
            self.nested_string_list =
       12217  +
            self.http_date =
12842  12218   
                /* ServerBuilderGenerator.kt:376 */input
12843  12219   
            /* ServerBuilderGenerator.kt:344 */;
12844  12220   
            self
12845  12221   
            /* ServerBuilderGenerator.kt:343 */
12846  12222   
        }
12847         -
        /// /* ServerBuilderGenerator.kt:426 */A list of lists of strings.
       12223  +
        /* ServerBuilderGenerator.kt:426 */
       12224  +
        #[allow(missing_docs)] // documentation missing in model
12848  12225   
                               /* ServerBuilderGenerator.kt:428 */
12849         -
        pub(crate) fn set_nested_string_list(
       12226  +
        pub(crate) fn set_http_date(
12850  12227   
            mut self,
12851         -
            input: Option<
12852         -
                impl ::std::convert::Into<::std::vec::Vec<::std::vec::Vec<::std::string::String>>>,
12853         -
            >,
       12228  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
12854  12229   
        ) -> Self {
12855  12230   
            /* ServerBuilderGenerator.kt:429 */
12856         -
            self.nested_string_list = input.map(|v| v.into());
       12231  +
            self.http_date = input.map(|v| v.into());
12857  12232   
            self
12858  12233   
            /* ServerBuilderGenerator.kt:428 */
12859  12234   
        }
12860  12235   
        /* ServerBuilderGenerator.kt:331 */
12861  12236   
        #[allow(missing_docs)] // documentation missing in model
12862  12237   
                               /* ServerBuilderGenerator.kt:343 */
12863         -
        pub fn structure_list(
       12238  +
        pub fn http_date_on_target(
12864  12239   
            mut self,
12865         -
            input: ::std::option::Option<::std::vec::Vec<crate::model::StructureListMember>>,
       12240  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
12866  12241   
        ) -> Self {
12867  12242   
            /* ServerBuilderGenerator.kt:344 */
12868         -
            self.structure_list =
       12243  +
            self.http_date_on_target =
12869  12244   
                /* ServerBuilderGenerator.kt:376 */input
12870  12245   
            /* ServerBuilderGenerator.kt:344 */;
12871  12246   
            self
12872  12247   
            /* ServerBuilderGenerator.kt:343 */
12873  12248   
        }
12874  12249   
        /* ServerBuilderGenerator.kt:426 */
12875  12250   
        #[allow(missing_docs)] // documentation missing in model
12876  12251   
                               /* ServerBuilderGenerator.kt:428 */
12877         -
        pub(crate) fn set_structure_list(
       12252  +
        pub(crate) fn set_http_date_on_target(
12878  12253   
            mut self,
12879         -
            input: Option<
12880         -
                impl ::std::convert::Into<::std::vec::Vec<crate::model::StructureListMember>>,
12881         -
            >,
       12254  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
12882  12255   
        ) -> Self {
12883  12256   
            /* ServerBuilderGenerator.kt:429 */
12884         -
            self.structure_list = input.map(|v| v.into());
       12257  +
            self.http_date_on_target = input.map(|v| v.into());
12885  12258   
            self
12886  12259   
            /* ServerBuilderGenerator.kt:428 */
12887  12260   
        }
12888         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonListsInput`](crate::input::JsonListsInput).
12889         -
        /// /* ServerBuilderGenerator.kt:260 */
12890         -
        /// The builder fails to construct a [`JsonListsInput`](crate::input::JsonListsInput) if a [`ConstraintViolation`] occurs.
12891         -
        ///
12892         -
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
       12261  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonTimestampsInput`](crate::input::JsonTimestampsInput).
12893  12262   
        /* ServerBuilderGenerator.kt:271 */
12894         -
        pub fn build(self) -> Result<crate::input::JsonListsInput, ConstraintViolation> {
       12263  +
        pub fn build(self) -> crate::input::JsonTimestampsInput {
12895  12264   
            self.build_enforcing_all_constraints()
12896  12265   
        }
12897  12266   
        /* ServerBuilderGenerator.kt:283 */
12898         -
        fn build_enforcing_all_constraints(
12899         -
            self,
12900         -
        ) -> Result<crate::input::JsonListsInput, ConstraintViolation> {
12901         -
            /* ServerBuilderGenerator.kt:287 */
12902         -
            Ok(
       12267  +
        fn build_enforcing_all_constraints(self) -> crate::input::JsonTimestampsInput {
12903  12268   
            /* ServerBuilderGenerator.kt:542 */
12904         -
                crate::input::JsonListsInput {
12905         -
                    /* ServerBuilderGenerator.kt:546 */
12906         -
                    string_list: self.string_list,
12907         -
                    /* ServerBuilderGenerator.kt:546 */
12908         -
                    string_set: self
12909         -
                        .string_set
12910         -
                        /* ServerBuilderGenerator.kt:602 */
12911         -
                        .map(|v| match v {
12912         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
12913         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
12914         -
                        })
12915         -
                        /* ServerBuilderGenerator.kt:614 */
12916         -
                        .map(|res| res.map_err(ConstraintViolation::StringSet))
12917         -
                        .transpose()?,
12918         -
                    /* ServerBuilderGenerator.kt:546 */
12919         -
                    integer_list: self.integer_list,
       12269  +
            crate::input::JsonTimestampsInput {
12920  12270   
                /* ServerBuilderGenerator.kt:546 */
12921         -
                    boolean_list: self.boolean_list,
       12271  +
                normal: self.normal,
12922  12272   
                /* ServerBuilderGenerator.kt:546 */
12923         -
                    timestamp_list: self.timestamp_list,
       12273  +
                date_time: self.date_time,
12924  12274   
                /* ServerBuilderGenerator.kt:546 */
12925         -
                    enum_list: self
12926         -
                        .enum_list
12927         -
                        /* ServerBuilderGenerator.kt:602 */
12928         -
                        .map(|v| match v {
12929         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
12930         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
12931         -
                        })
12932         -
                        /* ServerBuilderGenerator.kt:614 */
12933         -
                        .map(|res| res.map(|v| v.into()).map_err(ConstraintViolation::EnumList))
12934         -
                        .transpose()?,
       12275  +
                date_time_on_target: self.date_time_on_target,
12935  12276   
                /* ServerBuilderGenerator.kt:546 */
12936         -
                    int_enum_list: self.int_enum_list,
       12277  +
                epoch_seconds: self.epoch_seconds,
12937  12278   
                /* ServerBuilderGenerator.kt:546 */
12938         -
                    nested_string_list: self.nested_string_list,
       12279  +
                epoch_seconds_on_target: self.epoch_seconds_on_target,
12939  12280   
                /* ServerBuilderGenerator.kt:546 */
12940         -
                    structure_list: self.structure_list,
12941         -
                    /* ServerBuilderGenerator.kt:542 */
12942         -
                }, /* ServerBuilderGenerator.kt:287 */
12943         -
            )
12944         -
            /* ServerBuilderGenerator.kt:283 */
12945         -
        }
12946         -
        /* ServerBuilderGenerator.kt:215 */
12947         -
    }
12948         -
12949         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
12950         -
}
12951         -
/// /* ServerBuilderGenerator.kt:171 */See [`RecursiveShapesInput`](crate::input::RecursiveShapesInput).
12952         -
pub mod recursive_shapes_input {
12953         -
12954         -
    /* ServerBuilderGenerator.kt:461 */
12955         -
    impl ::std::convert::From<Builder> for crate::input::RecursiveShapesInput {
12956         -
        fn from(builder: Builder) -> Self {
12957         -
            builder.build()
12958         -
        }
12959         -
    }
12960         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`RecursiveShapesInput`](crate::input::RecursiveShapesInput).
12961         -
    /* RustType.kt:534 */
12962         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
12963         -
    /* ServerBuilderGenerator.kt:211 */
12964         -
    pub struct Builder {
12965         -
        /* ServerBuilderGenerator.kt:308 */
12966         -
        pub(crate) nested: ::std::option::Option<crate::model::RecursiveShapesInputOutputNested1>,
12967         -
        /* ServerBuilderGenerator.kt:211 */
12968         -
    }
12969         -
    /* ServerBuilderGenerator.kt:215 */
12970         -
    impl Builder {
12971         -
        /* ServerBuilderGenerator.kt:331 */
12972         -
        #[allow(missing_docs)] // documentation missing in model
12973         -
                               /* ServerBuilderGenerator.kt:343 */
12974         -
        pub fn nested(
12975         -
            mut self,
12976         -
            input: ::std::option::Option<crate::model::RecursiveShapesInputOutputNested1>,
12977         -
        ) -> Self {
12978         -
            /* ServerBuilderGenerator.kt:344 */
12979         -
            self.nested =
12980         -
                /* ServerBuilderGenerator.kt:376 */input
12981         -
            /* ServerBuilderGenerator.kt:344 */;
12982         -
            self
12983         -
            /* ServerBuilderGenerator.kt:343 */
12984         -
        }
12985         -
        /* ServerBuilderGenerator.kt:426 */
12986         -
        #[allow(missing_docs)] // documentation missing in model
12987         -
                               /* ServerBuilderGenerator.kt:428 */
12988         -
        pub(crate) fn set_nested(
12989         -
            mut self,
12990         -
            input: Option<
12991         -
                impl ::std::convert::Into<crate::model::RecursiveShapesInputOutputNested1>,
12992         -
            >,
12993         -
        ) -> Self {
12994         -
            /* ServerBuilderGenerator.kt:429 */
12995         -
            self.nested = input.map(|v| v.into());
12996         -
            self
12997         -
            /* ServerBuilderGenerator.kt:428 */
12998         -
        }
12999         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`RecursiveShapesInput`](crate::input::RecursiveShapesInput).
13000         -
        /* ServerBuilderGenerator.kt:271 */
13001         -
        pub fn build(self) -> crate::input::RecursiveShapesInput {
13002         -
            self.build_enforcing_all_constraints()
13003         -
        }
13004         -
        /* ServerBuilderGenerator.kt:283 */
13005         -
        fn build_enforcing_all_constraints(self) -> crate::input::RecursiveShapesInput {
13006         -
            /* ServerBuilderGenerator.kt:542 */
13007         -
            crate::input::RecursiveShapesInput {
       12281  +
                http_date: self.http_date,
13008  12282   
                /* ServerBuilderGenerator.kt:546 */
13009         -
                nested: self.nested,
       12283  +
                http_date_on_target: self.http_date_on_target,
13010  12284   
                /* ServerBuilderGenerator.kt:542 */
13011  12285   
            }
13012  12286   
            /* ServerBuilderGenerator.kt:283 */
13013  12287   
        }
13014  12288   
        /* ServerBuilderGenerator.kt:215 */
13015  12289   
    }
13016  12290   
13017  12291   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
13018  12292   
}
13019         -
/// /* ServerBuilderGenerator.kt:171 */See [`JsonIntEnumsInput`](crate::input::JsonIntEnumsInput).
13020         -
pub mod json_int_enums_input {
       12293  +
/// /* ServerBuilderGenerator.kt:171 */See [`JsonEnumsInput`](crate::input::JsonEnumsInput).
       12294  +
pub mod json_enums_input {
13021  12295   
13022  12296   
    /* RustType.kt:534 */
13023         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
13024         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       12297  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       12298  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       12299  +
    /* RustType.kt:534 */
       12300  +
    #[non_exhaustive]
       12301  +
    /* ServerBuilderConstraintViolations.kt:75 */
       12302  +
    #[allow(clippy::enum_variant_names)]
       12303  +
    pub enum ConstraintViolation {
       12304  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum1` when building `JsonEnumsInput`.
       12305  +
        /* RustType.kt:534 */
       12306  +
        #[doc(hidden)]
       12307  +
        /* ServerBuilderConstraintViolations.kt:165 */
       12308  +
        FooEnum1(crate::model::foo_enum::ConstraintViolation),
       12309  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum2` when building `JsonEnumsInput`.
       12310  +
        /* RustType.kt:534 */
       12311  +
        #[doc(hidden)]
       12312  +
        /* ServerBuilderConstraintViolations.kt:165 */
       12313  +
        FooEnum2(crate::model::foo_enum::ConstraintViolation),
       12314  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum3` when building `JsonEnumsInput`.
       12315  +
        /* RustType.kt:534 */
       12316  +
        #[doc(hidden)]
       12317  +
        /* ServerBuilderConstraintViolations.kt:165 */
       12318  +
        FooEnum3(crate::model::foo_enum::ConstraintViolation),
       12319  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum_list` when building `JsonEnumsInput`.
       12320  +
        /* RustType.kt:534 */
       12321  +
        #[doc(hidden)]
       12322  +
        /* ServerBuilderConstraintViolations.kt:165 */
       12323  +
        FooEnumList(crate::model::foo_enum_list::ConstraintViolation),
       12324  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum_set` when building `JsonEnumsInput`.
13025  12325   
        /* RustType.kt:534 */
13026         -
    #[non_exhaustive]
13027         -
    /* ServerBuilderConstraintViolations.kt:75 */
13028         -
    #[allow(clippy::enum_variant_names)]
13029         -
    pub enum ConstraintViolation {
13030         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `integer_enum_set` when building `JsonIntEnumsInput`.
       12326  +
        #[doc(hidden)]
       12327  +
        /* ServerBuilderConstraintViolations.kt:165 */
       12328  +
        FooEnumSet(crate::model::foo_enum_set::ConstraintViolation),
       12329  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum_map` when building `JsonEnumsInput`.
13031  12330   
        /* RustType.kt:534 */
13032  12331   
        #[doc(hidden)]
13033  12332   
        /* ServerBuilderConstraintViolations.kt:165 */
13034         -
        IntegerEnumSet(crate::model::integer_enum_set::ConstraintViolation),
       12333  +
        FooEnumMap(crate::model::foo_enum_map::ConstraintViolation),
13035  12334   
        /* ServerBuilderConstraintViolations.kt:75 */
13036  12335   
    }
13037  12336   
    /* ServerBuilderConstraintViolations.kt:116 */
13038  12337   
    impl ::std::fmt::Display for ConstraintViolation {
13039  12338   
        /* ServerBuilderConstraintViolations.kt:117 */
13040  12339   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
13041  12340   
            /* ServerBuilderConstraintViolations.kt:118 */
13042  12341   
            match self {
13043         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::IntegerEnumSet(_) => write!(f, "constraint violation occurred building member `integer_enum_set` when building `JsonIntEnumsInput`"),
       12342  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnum1(_) => write!(f, "constraint violation occurred building member `foo_enum1` when building `JsonEnumsInput`"),
       12343  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnum2(_) => write!(f, "constraint violation occurred building member `foo_enum2` when building `JsonEnumsInput`"),
       12344  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnum3(_) => write!(f, "constraint violation occurred building member `foo_enum3` when building `JsonEnumsInput`"),
       12345  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnumList(_) => write!(f, "constraint violation occurred building member `foo_enum_list` when building `JsonEnumsInput`"),
       12346  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnumSet(_) => write!(f, "constraint violation occurred building member `foo_enum_set` when building `JsonEnumsInput`"),
       12347  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnumMap(_) => write!(f, "constraint violation occurred building member `foo_enum_map` when building `JsonEnumsInput`"),
13044  12348   
            /* ServerBuilderConstraintViolations.kt:118 */}
13045  12349   
            /* ServerBuilderConstraintViolations.kt:117 */
13046  12350   
        }
13047  12351   
        /* ServerBuilderConstraintViolations.kt:116 */
13048  12352   
    }
13049  12353   
    /* ServerBuilderConstraintViolations.kt:83 */
13050  12354   
    impl ::std::error::Error for ConstraintViolation {}
13051  12355   
    /* ServerBuilderConstraintViolations.kt:172 */
13052  12356   
    impl ConstraintViolation {
13053  12357   
        pub(crate) fn as_validation_exception_field(
13054  12358   
            self,
13055  12359   
            path: ::std::string::String,
13056  12360   
        ) -> crate::model::ValidationExceptionField {
13057  12361   
            match self {
13058         -
                ConstraintViolation::IntegerEnumSet(inner) => {
13059         -
                    inner.as_validation_exception_field(path + "/integerEnumSet")
       12362  +
                ConstraintViolation::FooEnum1(inner) => {
       12363  +
                    inner.as_validation_exception_field(path + "/fooEnum1")
       12364  +
                }
       12365  +
                ConstraintViolation::FooEnum2(inner) => {
       12366  +
                    inner.as_validation_exception_field(path + "/fooEnum2")
       12367  +
                }
       12368  +
                ConstraintViolation::FooEnum3(inner) => {
       12369  +
                    inner.as_validation_exception_field(path + "/fooEnum3")
       12370  +
                }
       12371  +
                ConstraintViolation::FooEnumList(inner) => {
       12372  +
                    inner.as_validation_exception_field(path + "/fooEnumList")
       12373  +
                }
       12374  +
                ConstraintViolation::FooEnumSet(inner) => {
       12375  +
                    inner.as_validation_exception_field(path + "/fooEnumSet")
       12376  +
                }
       12377  +
                ConstraintViolation::FooEnumMap(inner) => {
       12378  +
                    inner.as_validation_exception_field(path + "/fooEnumMap")
13060  12379   
                }
13061  12380   
            }
13062  12381   
        }
13063  12382   
    }
13064  12383   
    /* ServerBuilderGenerator.kt:234 */
13065  12384   
    impl ::std::convert::From<ConstraintViolation>
13066  12385   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
13067  12386   
    {
13068  12387   
        fn from(constraint_violation: ConstraintViolation) -> Self {
13069  12388   
            let first_validation_exception_field =
13070  12389   
                constraint_violation.as_validation_exception_field("".to_owned());
13071  12390   
            let validation_exception = crate::error::ValidationException {
13072  12391   
                message: format!(
13073  12392   
                    "1 validation error detected. {}",
13074  12393   
                    &first_validation_exception_field.message
13075  12394   
                ),
13076  12395   
                field_list: Some(vec![first_validation_exception_field]),
13077  12396   
            };
13078  12397   
            Self::ConstraintViolation(
13079  12398   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
13080  12399   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
13081  12400   
                            )
13082  12401   
        }
13083  12402   
    }
13084  12403   
    /* ServerBuilderGenerator.kt:244 */
13085  12404   
    impl ::std::convert::From<Builder>
13086         -
        for crate::constrained::MaybeConstrained<crate::input::JsonIntEnumsInput>
       12405  +
        for crate::constrained::MaybeConstrained<crate::input::JsonEnumsInput>
13087  12406   
    {
13088  12407   
        fn from(builder: Builder) -> Self {
13089  12408   
            Self::Unconstrained(builder)
13090  12409   
        }
13091  12410   
    }
13092  12411   
    /* ServerBuilderGenerator.kt:446 */
13093         -
    impl ::std::convert::TryFrom<Builder> for crate::input::JsonIntEnumsInput {
       12412  +
    impl ::std::convert::TryFrom<Builder> for crate::input::JsonEnumsInput {
13094  12413   
        type Error = ConstraintViolation;
13095  12414   
13096  12415   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
13097  12416   
            builder.build()
13098  12417   
        }
13099  12418   
    }
13100         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonIntEnumsInput`](crate::input::JsonIntEnumsInput).
       12419  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonEnumsInput`](crate::input::JsonEnumsInput).
13101  12420   
    /* RustType.kt:534 */
13102  12421   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
13103  12422   
    /* ServerBuilderGenerator.kt:211 */
13104  12423   
    pub struct Builder {
13105  12424   
        /* ServerBuilderGenerator.kt:308 */
13106         -
        pub(crate) integer_enum1: ::std::option::Option<i32>,
13107         -
        /* ServerBuilderGenerator.kt:308 */
13108         -
        pub(crate) integer_enum2: ::std::option::Option<i32>,
       12425  +
        pub(crate) foo_enum1:
       12426  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
13109  12427   
        /* ServerBuilderGenerator.kt:308 */
13110         -
        pub(crate) integer_enum3: ::std::option::Option<i32>,
       12428  +
        pub(crate) foo_enum2:
       12429  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
13111  12430   
        /* ServerBuilderGenerator.kt:308 */
13112         -
        pub(crate) integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
       12431  +
        pub(crate) foo_enum3:
       12432  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
13113  12433   
        /* ServerBuilderGenerator.kt:308 */
13114         -
        pub(crate) integer_enum_set: ::std::option::Option<
13115         -
            crate::constrained::MaybeConstrained<crate::model::IntegerEnumSet>,
       12434  +
        pub(crate) foo_enum_list: ::std::option::Option<
       12435  +
            crate::constrained::MaybeConstrained<
       12436  +
                crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
       12437  +
            >,
13116  12438   
        >,
13117  12439   
        /* ServerBuilderGenerator.kt:308 */
13118         -
        pub(crate) integer_enum_map:
13119         -
            ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
       12440  +
        pub(crate) foo_enum_set:
       12441  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnumSet>>,
       12442  +
        /* ServerBuilderGenerator.kt:308 */
       12443  +
        pub(crate) foo_enum_map: ::std::option::Option<
       12444  +
            crate::constrained::MaybeConstrained<
       12445  +
                crate::constrained::foo_enum_map_constrained::FooEnumMapConstrained,
       12446  +
            >,
       12447  +
        >,
13120  12448   
        /* ServerBuilderGenerator.kt:211 */
13121  12449   
    }
13122  12450   
    /* ServerBuilderGenerator.kt:215 */
13123  12451   
    impl Builder {
13124  12452   
        /* ServerBuilderGenerator.kt:331 */
13125  12453   
        #[allow(missing_docs)] // documentation missing in model
13126  12454   
                               /* ServerBuilderGenerator.kt:343 */
13127         -
        pub fn integer_enum1(mut self, input: ::std::option::Option<i32>) -> Self {
       12455  +
        pub fn foo_enum1(mut self, input: ::std::option::Option<crate::model::FooEnum>) -> Self {
13128  12456   
            /* ServerBuilderGenerator.kt:344 */
13129         -
            self.integer_enum1 =
13130         -
                /* ServerBuilderGenerator.kt:376 */input
       12457  +
            self.foo_enum1 =
       12458  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
13131  12459   
            /* ServerBuilderGenerator.kt:344 */;
13132  12460   
            self
13133  12461   
            /* ServerBuilderGenerator.kt:343 */
13134  12462   
        }
13135  12463   
        /* ServerBuilderGenerator.kt:426 */
13136  12464   
        #[allow(missing_docs)] // documentation missing in model
13137  12465   
                               /* ServerBuilderGenerator.kt:428 */
13138         -
        pub(crate) fn set_integer_enum1(
       12466  +
        pub(crate) fn set_foo_enum1(
13139  12467   
            mut self,
13140         -
            input: Option<impl ::std::convert::Into<i32>>,
       12468  +
            input: Option<
       12469  +
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
       12470  +
            >,
13141  12471   
        ) -> Self {
13142  12472   
            /* ServerBuilderGenerator.kt:429 */
13143         -
            self.integer_enum1 = input.map(|v| v.into());
       12473  +
            self.foo_enum1 = input.map(|v| v.into());
13144  12474   
            self
13145  12475   
            /* ServerBuilderGenerator.kt:428 */
13146  12476   
        }
13147  12477   
        /* ServerBuilderGenerator.kt:331 */
13148  12478   
        #[allow(missing_docs)] // documentation missing in model
13149  12479   
                               /* ServerBuilderGenerator.kt:343 */
13150         -
        pub fn integer_enum2(mut self, input: ::std::option::Option<i32>) -> Self {
       12480  +
        pub fn foo_enum2(mut self, input: ::std::option::Option<crate::model::FooEnum>) -> Self {
13151  12481   
            /* ServerBuilderGenerator.kt:344 */
13152         -
            self.integer_enum2 =
13153         -
                /* ServerBuilderGenerator.kt:376 */input
       12482  +
            self.foo_enum2 =
       12483  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
13154  12484   
            /* ServerBuilderGenerator.kt:344 */;
13155  12485   
            self
13156  12486   
            /* ServerBuilderGenerator.kt:343 */
13157  12487   
        }
13158  12488   
        /* ServerBuilderGenerator.kt:426 */
13159  12489   
        #[allow(missing_docs)] // documentation missing in model
13160  12490   
                               /* ServerBuilderGenerator.kt:428 */
13161         -
        pub(crate) fn set_integer_enum2(
       12491  +
        pub(crate) fn set_foo_enum2(
13162  12492   
            mut self,
13163         -
            input: Option<impl ::std::convert::Into<i32>>,
       12493  +
            input: Option<
       12494  +
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
       12495  +
            >,
13164  12496   
        ) -> Self {
13165  12497   
            /* ServerBuilderGenerator.kt:429 */
13166         -
            self.integer_enum2 = input.map(|v| v.into());
       12498  +
            self.foo_enum2 = input.map(|v| v.into());
13167  12499   
            self
13168  12500   
            /* ServerBuilderGenerator.kt:428 */
13169  12501   
        }
13170  12502   
        /* ServerBuilderGenerator.kt:331 */
13171  12503   
        #[allow(missing_docs)] // documentation missing in model
13172  12504   
                               /* ServerBuilderGenerator.kt:343 */
13173         -
        pub fn integer_enum3(mut self, input: ::std::option::Option<i32>) -> Self {
       12505  +
        pub fn foo_enum3(mut self, input: ::std::option::Option<crate::model::FooEnum>) -> Self {
13174  12506   
            /* ServerBuilderGenerator.kt:344 */
13175         -
            self.integer_enum3 =
13176         -
                /* ServerBuilderGenerator.kt:376 */input
       12507  +
            self.foo_enum3 =
       12508  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
13177  12509   
            /* ServerBuilderGenerator.kt:344 */;
13178  12510   
            self
13179  12511   
            /* ServerBuilderGenerator.kt:343 */
13180  12512   
        }
13181  12513   
        /* ServerBuilderGenerator.kt:426 */
13182  12514   
        #[allow(missing_docs)] // documentation missing in model
13183  12515   
                               /* ServerBuilderGenerator.kt:428 */
13184         -
        pub(crate) fn set_integer_enum3(
       12516  +
        pub(crate) fn set_foo_enum3(
13185  12517   
            mut self,
13186         -
            input: Option<impl ::std::convert::Into<i32>>,
       12518  +
            input: Option<
       12519  +
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
       12520  +
            >,
13187  12521   
        ) -> Self {
13188  12522   
            /* ServerBuilderGenerator.kt:429 */
13189         -
            self.integer_enum3 = input.map(|v| v.into());
       12523  +
            self.foo_enum3 = input.map(|v| v.into());
13190  12524   
            self
13191  12525   
            /* ServerBuilderGenerator.kt:428 */
13192  12526   
        }
13193  12527   
        /* ServerBuilderGenerator.kt:331 */
13194  12528   
        #[allow(missing_docs)] // documentation missing in model
13195  12529   
                               /* ServerBuilderGenerator.kt:343 */
13196         -
        pub fn integer_enum_list(
       12530  +
        pub fn foo_enum_list(
13197  12531   
            mut self,
13198         -
            input: ::std::option::Option<::std::vec::Vec<i32>>,
       12532  +
            input: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
13199  12533   
        ) -> Self {
13200  12534   
            /* ServerBuilderGenerator.kt:344 */
13201         -
            self.integer_enum_list =
13202         -
                /* ServerBuilderGenerator.kt:376 */input
       12535  +
            self.foo_enum_list =
       12536  +
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
       12537  +
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
       12538  +
                /* ServerBuilderGenerator.kt:363 */)
13203  12539   
            /* ServerBuilderGenerator.kt:344 */;
13204  12540   
            self
13205  12541   
            /* ServerBuilderGenerator.kt:343 */
13206  12542   
        }
13207  12543   
        /* ServerBuilderGenerator.kt:426 */
13208  12544   
        #[allow(missing_docs)] // documentation missing in model
13209  12545   
                               /* ServerBuilderGenerator.kt:428 */
13210         -
        pub(crate) fn set_integer_enum_list(
       12546  +
        pub(crate) fn set_foo_enum_list(
13211  12547   
            mut self,
13212         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
       12548  +
            input: Option<
       12549  +
                impl ::std::convert::Into<
       12550  +
                    crate::constrained::MaybeConstrained<
       12551  +
                        crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
       12552  +
                    >,
       12553  +
                >,
       12554  +
            >,
13213  12555   
        ) -> Self {
13214  12556   
            /* ServerBuilderGenerator.kt:429 */
13215         -
            self.integer_enum_list = input.map(|v| v.into());
       12557  +
            self.foo_enum_list = input.map(|v| v.into());
13216  12558   
            self
13217  12559   
            /* ServerBuilderGenerator.kt:428 */
13218  12560   
        }
13219  12561   
        /* ServerBuilderGenerator.kt:331 */
13220  12562   
        #[allow(missing_docs)] // documentation missing in model
13221  12563   
                               /* ServerBuilderGenerator.kt:343 */
13222         -
        pub fn integer_enum_set(
       12564  +
        pub fn foo_enum_set(
13223  12565   
            mut self,
13224         -
            input: ::std::option::Option<crate::model::IntegerEnumSet>,
       12566  +
            input: ::std::option::Option<crate::model::FooEnumSet>,
13225  12567   
        ) -> Self {
13226  12568   
            /* ServerBuilderGenerator.kt:344 */
13227         -
            self.integer_enum_set =
       12569  +
            self.foo_enum_set =
13228  12570   
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
13229  12571   
            /* ServerBuilderGenerator.kt:344 */;
13230  12572   
            self
13231  12573   
            /* ServerBuilderGenerator.kt:343 */
13232  12574   
        }
13233  12575   
        /* ServerBuilderGenerator.kt:426 */
13234  12576   
        #[allow(missing_docs)] // documentation missing in model
13235  12577   
                               /* ServerBuilderGenerator.kt:428 */
13236         -
        pub(crate) fn set_integer_enum_set(
       12578  +
        pub(crate) fn set_foo_enum_set(
13237  12579   
            mut self,
13238  12580   
            input: Option<
13239  12581   
                impl ::std::convert::Into<
13240         -
                    crate::constrained::MaybeConstrained<crate::model::IntegerEnumSet>,
       12582  +
                    crate::constrained::MaybeConstrained<crate::model::FooEnumSet>,
13241  12583   
                >,
13242  12584   
            >,
13243  12585   
        ) -> Self {
13244  12586   
            /* ServerBuilderGenerator.kt:429 */
13245         -
            self.integer_enum_set = input.map(|v| v.into());
       12587  +
            self.foo_enum_set = input.map(|v| v.into());
13246  12588   
            self
13247  12589   
            /* ServerBuilderGenerator.kt:428 */
13248  12590   
        }
13249  12591   
        /* ServerBuilderGenerator.kt:331 */
13250  12592   
        #[allow(missing_docs)] // documentation missing in model
13251  12593   
                               /* ServerBuilderGenerator.kt:343 */
13252         -
        pub fn integer_enum_map(
       12594  +
        pub fn foo_enum_map(
13253  12595   
            mut self,
13254         -
            input: ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
       12596  +
            input: ::std::option::Option<
       12597  +
                ::std::collections::HashMap<::std::string::String, crate::model::FooEnum>,
       12598  +
            >,
13255  12599   
        ) -> Self {
13256  12600   
            /* ServerBuilderGenerator.kt:344 */
13257         -
            self.integer_enum_map =
13258         -
                /* ServerBuilderGenerator.kt:376 */input
       12601  +
            self.foo_enum_map =
       12602  +
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
       12603  +
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
       12604  +
                /* ServerBuilderGenerator.kt:363 */)
13259  12605   
            /* ServerBuilderGenerator.kt:344 */;
13260  12606   
            self
13261  12607   
            /* ServerBuilderGenerator.kt:343 */
13262  12608   
        }
13263  12609   
        /* ServerBuilderGenerator.kt:426 */
13264  12610   
        #[allow(missing_docs)] // documentation missing in model
13265  12611   
                               /* ServerBuilderGenerator.kt:428 */
13266         -
        pub(crate) fn set_integer_enum_map(
       12612  +
        pub(crate) fn set_foo_enum_map(
13267  12613   
            mut self,
13268  12614   
            input: Option<
13269         -
                impl ::std::convert::Into<::std::collections::HashMap<::std::string::String, i32>>,
       12615  +
                impl ::std::convert::Into<
       12616  +
                    crate::constrained::MaybeConstrained<
       12617  +
                        crate::constrained::foo_enum_map_constrained::FooEnumMapConstrained,
       12618  +
                    >,
       12619  +
                >,
13270  12620   
            >,
13271  12621   
        ) -> Self {
13272  12622   
            /* ServerBuilderGenerator.kt:429 */
13273         -
            self.integer_enum_map = input.map(|v| v.into());
       12623  +
            self.foo_enum_map = input.map(|v| v.into());
13274  12624   
            self
13275  12625   
            /* ServerBuilderGenerator.kt:428 */
13276  12626   
        }
13277         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonIntEnumsInput`](crate::input::JsonIntEnumsInput).
       12627  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonEnumsInput`](crate::input::JsonEnumsInput).
13278  12628   
        /// /* ServerBuilderGenerator.kt:260 */
13279         -
        /// The builder fails to construct a [`JsonIntEnumsInput`](crate::input::JsonIntEnumsInput) if a [`ConstraintViolation`] occurs.
       12629  +
        /// The builder fails to construct a [`JsonEnumsInput`](crate::input::JsonEnumsInput) if a [`ConstraintViolation`] occurs.
13280  12630   
        ///
       12631  +
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
13281  12632   
        /* ServerBuilderGenerator.kt:271 */
13282         -
        pub fn build(self) -> Result<crate::input::JsonIntEnumsInput, ConstraintViolation> {
       12633  +
        pub fn build(self) -> Result<crate::input::JsonEnumsInput, ConstraintViolation> {
13283  12634   
            self.build_enforcing_all_constraints()
13284  12635   
        }
13285  12636   
        /* ServerBuilderGenerator.kt:283 */
13286  12637   
        fn build_enforcing_all_constraints(
13287  12638   
            self,
13288         -
        ) -> Result<crate::input::JsonIntEnumsInput, ConstraintViolation> {
       12639  +
        ) -> Result<crate::input::JsonEnumsInput, ConstraintViolation> {
13289  12640   
            /* ServerBuilderGenerator.kt:287 */
13290  12641   
            Ok(
13291  12642   
                /* ServerBuilderGenerator.kt:542 */
13292         -
                crate::input::JsonIntEnumsInput {
       12643  +
                crate::input::JsonEnumsInput {
13293  12644   
                    /* ServerBuilderGenerator.kt:546 */
13294         -
                    integer_enum1: self.integer_enum1,
       12645  +
                    foo_enum1: self
       12646  +
                        .foo_enum1
       12647  +
                        /* ServerBuilderGenerator.kt:602 */
       12648  +
                        .map(|v| match v {
       12649  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       12650  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       12651  +
                        })
       12652  +
                        /* ServerBuilderGenerator.kt:614 */
       12653  +
                        .map(|res| res.map_err(ConstraintViolation::FooEnum1))
       12654  +
                        .transpose()?,
13295  12655   
                    /* ServerBuilderGenerator.kt:546 */
13296         -
                    integer_enum2: self.integer_enum2,
       12656  +
                    foo_enum2: self
       12657  +
                        .foo_enum2
       12658  +
                        /* ServerBuilderGenerator.kt:602 */
       12659  +
                        .map(|v| match v {
       12660  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       12661  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       12662  +
                        })
       12663  +
                        /* ServerBuilderGenerator.kt:614 */
       12664  +
                        .map(|res| res.map_err(ConstraintViolation::FooEnum2))
       12665  +
                        .transpose()?,
13297  12666   
                    /* ServerBuilderGenerator.kt:546 */
13298         -
                    integer_enum3: self.integer_enum3,
       12667  +
                    foo_enum3: self
       12668  +
                        .foo_enum3
       12669  +
                        /* ServerBuilderGenerator.kt:602 */
       12670  +
                        .map(|v| match v {
       12671  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       12672  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       12673  +
                        })
       12674  +
                        /* ServerBuilderGenerator.kt:614 */
       12675  +
                        .map(|res| res.map_err(ConstraintViolation::FooEnum3))
       12676  +
                        .transpose()?,
13299  12677   
                    /* ServerBuilderGenerator.kt:546 */
13300         -
                    integer_enum_list: self.integer_enum_list,
       12678  +
                    foo_enum_list: self
       12679  +
                        .foo_enum_list
       12680  +
                        /* ServerBuilderGenerator.kt:602 */
       12681  +
                        .map(|v| match v {
       12682  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       12683  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       12684  +
                        })
       12685  +
                        /* ServerBuilderGenerator.kt:614 */
       12686  +
                        .map(|res| {
       12687  +
                            res.map(|v| v.into())
       12688  +
                                .map_err(ConstraintViolation::FooEnumList)
       12689  +
                        })
       12690  +
                        .transpose()?,
13301  12691   
                    /* ServerBuilderGenerator.kt:546 */
13302         -
                    integer_enum_set: self
13303         -
                        .integer_enum_set
       12692  +
                    foo_enum_set: self
       12693  +
                        .foo_enum_set
13304  12694   
                        /* ServerBuilderGenerator.kt:602 */
13305  12695   
                        .map(|v| match v {
13306  12696   
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
13307  12697   
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
13308  12698   
                        })
13309  12699   
                        /* ServerBuilderGenerator.kt:614 */
13310         -
                        .map(|res| res.map_err(ConstraintViolation::IntegerEnumSet))
       12700  +
                        .map(|res| res.map_err(ConstraintViolation::FooEnumSet))
13311  12701   
                        .transpose()?,
13312  12702   
                    /* ServerBuilderGenerator.kt:546 */
13313         -
                    integer_enum_map: self.integer_enum_map,
       12703  +
                    foo_enum_map: self
       12704  +
                        .foo_enum_map
       12705  +
                        /* ServerBuilderGenerator.kt:602 */
       12706  +
                        .map(|v| match v {
       12707  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       12708  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       12709  +
                        })
       12710  +
                        /* ServerBuilderGenerator.kt:614 */
       12711  +
                        .map(|res| {
       12712  +
                            res.map(|v| v.into())
       12713  +
                                .map_err(ConstraintViolation::FooEnumMap)
       12714  +
                        })
       12715  +
                        .transpose()?,
13314  12716   
                    /* ServerBuilderGenerator.kt:542 */
13315  12717   
                }, /* ServerBuilderGenerator.kt:287 */
13316  12718   
            )
13317  12719   
            /* ServerBuilderGenerator.kt:283 */
13318  12720   
        }
13319  12721   
        /* ServerBuilderGenerator.kt:215 */
13320  12722   
    }
13321  12723   
13322  12724   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
13323  12725   
}
13324         -
/// /* ServerBuilderGenerator.kt:171 */See [`JsonEnumsInput`](crate::input::JsonEnumsInput).
13325         -
pub mod json_enums_input {
       12726  +
/// /* ServerBuilderGenerator.kt:171 */See [`JsonIntEnumsInput`](crate::input::JsonIntEnumsInput).
       12727  +
pub mod json_int_enums_input {
13326  12728   
13327  12729   
    /* RustType.kt:534 */
13328  12730   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
13329  12731   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
13330  12732   
    /* RustType.kt:534 */
13331  12733   
    #[non_exhaustive]
13332  12734   
    /* ServerBuilderConstraintViolations.kt:75 */
13333  12735   
    #[allow(clippy::enum_variant_names)]
13334  12736   
    pub enum ConstraintViolation {
13335         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum1` when building `JsonEnumsInput`.
13336         -
        /* RustType.kt:534 */
13337         -
        #[doc(hidden)]
13338         -
        /* ServerBuilderConstraintViolations.kt:165 */
13339         -
        FooEnum1(crate::model::foo_enum::ConstraintViolation),
13340         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum2` when building `JsonEnumsInput`.
13341         -
        /* RustType.kt:534 */
13342         -
        #[doc(hidden)]
13343         -
        /* ServerBuilderConstraintViolations.kt:165 */
13344         -
        FooEnum2(crate::model::foo_enum::ConstraintViolation),
13345         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum3` when building `JsonEnumsInput`.
13346         -
        /* RustType.kt:534 */
13347         -
        #[doc(hidden)]
13348         -
        /* ServerBuilderConstraintViolations.kt:165 */
13349         -
        FooEnum3(crate::model::foo_enum::ConstraintViolation),
13350         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum_list` when building `JsonEnumsInput`.
13351         -
        /* RustType.kt:534 */
13352         -
        #[doc(hidden)]
13353         -
        /* ServerBuilderConstraintViolations.kt:165 */
13354         -
        FooEnumList(crate::model::foo_enum_list::ConstraintViolation),
13355         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum_set` when building `JsonEnumsInput`.
13356         -
        /* RustType.kt:534 */
13357         -
        #[doc(hidden)]
13358         -
        /* ServerBuilderConstraintViolations.kt:165 */
13359         -
        FooEnumSet(crate::model::foo_enum_set::ConstraintViolation),
13360         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `foo_enum_map` when building `JsonEnumsInput`.
       12737  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `integer_enum_set` when building `JsonIntEnumsInput`.
13361  12738   
        /* RustType.kt:534 */
13362  12739   
        #[doc(hidden)]
13363  12740   
        /* ServerBuilderConstraintViolations.kt:165 */
13364         -
        FooEnumMap(crate::model::foo_enum_map::ConstraintViolation),
       12741  +
        IntegerEnumSet(crate::model::integer_enum_set::ConstraintViolation),
13365  12742   
        /* ServerBuilderConstraintViolations.kt:75 */
13366  12743   
    }
13367  12744   
    /* ServerBuilderConstraintViolations.kt:116 */
13368  12745   
    impl ::std::fmt::Display for ConstraintViolation {
13369  12746   
        /* ServerBuilderConstraintViolations.kt:117 */
13370  12747   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
13371  12748   
            /* ServerBuilderConstraintViolations.kt:118 */
13372  12749   
            match self {
13373         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnum1(_) => write!(f, "constraint violation occurred building member `foo_enum1` when building `JsonEnumsInput`"),
13374         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnum2(_) => write!(f, "constraint violation occurred building member `foo_enum2` when building `JsonEnumsInput`"),
13375         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnum3(_) => write!(f, "constraint violation occurred building member `foo_enum3` when building `JsonEnumsInput`"),
13376         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnumList(_) => write!(f, "constraint violation occurred building member `foo_enum_list` when building `JsonEnumsInput`"),
13377         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnumSet(_) => write!(f, "constraint violation occurred building member `foo_enum_set` when building `JsonEnumsInput`"),
13378         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::FooEnumMap(_) => write!(f, "constraint violation occurred building member `foo_enum_map` when building `JsonEnumsInput`"),
       12750  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::IntegerEnumSet(_) => write!(f, "constraint violation occurred building member `integer_enum_set` when building `JsonIntEnumsInput`"),
13379  12751   
            /* ServerBuilderConstraintViolations.kt:118 */}
13380  12752   
            /* ServerBuilderConstraintViolations.kt:117 */
13381  12753   
        }
13382  12754   
        /* ServerBuilderConstraintViolations.kt:116 */
13383  12755   
    }
13384  12756   
    /* ServerBuilderConstraintViolations.kt:83 */
13385  12757   
    impl ::std::error::Error for ConstraintViolation {}
13386  12758   
    /* ServerBuilderConstraintViolations.kt:172 */
13387  12759   
    impl ConstraintViolation {
13388  12760   
        pub(crate) fn as_validation_exception_field(
13389  12761   
            self,
13390  12762   
            path: ::std::string::String,
13391  12763   
        ) -> crate::model::ValidationExceptionField {
13392  12764   
            match self {
13393         -
                ConstraintViolation::FooEnum1(inner) => {
13394         -
                    inner.as_validation_exception_field(path + "/fooEnum1")
13395         -
                }
13396         -
                ConstraintViolation::FooEnum2(inner) => {
13397         -
                    inner.as_validation_exception_field(path + "/fooEnum2")
13398         -
                }
13399         -
                ConstraintViolation::FooEnum3(inner) => {
13400         -
                    inner.as_validation_exception_field(path + "/fooEnum3")
13401         -
                }
13402         -
                ConstraintViolation::FooEnumList(inner) => {
13403         -
                    inner.as_validation_exception_field(path + "/fooEnumList")
13404         -
                }
13405         -
                ConstraintViolation::FooEnumSet(inner) => {
13406         -
                    inner.as_validation_exception_field(path + "/fooEnumSet")
13407         -
                }
13408         -
                ConstraintViolation::FooEnumMap(inner) => {
13409         -
                    inner.as_validation_exception_field(path + "/fooEnumMap")
       12765  +
                ConstraintViolation::IntegerEnumSet(inner) => {
       12766  +
                    inner.as_validation_exception_field(path + "/integerEnumSet")
13410  12767   
                }
13411  12768   
            }
13412  12769   
        }
13413  12770   
    }
13414  12771   
    /* ServerBuilderGenerator.kt:234 */
13415  12772   
    impl ::std::convert::From<ConstraintViolation>
13416  12773   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
13417  12774   
    {
13418  12775   
        fn from(constraint_violation: ConstraintViolation) -> Self {
13419  12776   
            let first_validation_exception_field =
13420  12777   
                constraint_violation.as_validation_exception_field("".to_owned());
13421  12778   
            let validation_exception = crate::error::ValidationException {
13422  12779   
                message: format!(
13423  12780   
                    "1 validation error detected. {}",
13424  12781   
                    &first_validation_exception_field.message
13425  12782   
                ),
13426  12783   
                field_list: Some(vec![first_validation_exception_field]),
13427  12784   
            };
13428  12785   
            Self::ConstraintViolation(
13429  12786   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
13430  12787   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
13431  12788   
                            )
13432  12789   
        }
13433  12790   
    }
13434  12791   
    /* ServerBuilderGenerator.kt:244 */
13435  12792   
    impl ::std::convert::From<Builder>
13436         -
        for crate::constrained::MaybeConstrained<crate::input::JsonEnumsInput>
       12793  +
        for crate::constrained::MaybeConstrained<crate::input::JsonIntEnumsInput>
13437  12794   
    {
13438  12795   
        fn from(builder: Builder) -> Self {
13439  12796   
            Self::Unconstrained(builder)
13440  12797   
        }
13441  12798   
    }
13442  12799   
    /* ServerBuilderGenerator.kt:446 */
13443         -
    impl ::std::convert::TryFrom<Builder> for crate::input::JsonEnumsInput {
       12800  +
    impl ::std::convert::TryFrom<Builder> for crate::input::JsonIntEnumsInput {
13444  12801   
        type Error = ConstraintViolation;
13445  12802   
13446  12803   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
13447  12804   
            builder.build()
13448  12805   
        }
13449  12806   
    }
13450         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonEnumsInput`](crate::input::JsonEnumsInput).
       12807  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonIntEnumsInput`](crate::input::JsonIntEnumsInput).
13451  12808   
    /* RustType.kt:534 */
13452  12809   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
13453  12810   
    /* ServerBuilderGenerator.kt:211 */
13454  12811   
    pub struct Builder {
13455  12812   
        /* ServerBuilderGenerator.kt:308 */
13456         -
        pub(crate) foo_enum1:
13457         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
13458         -
        /* ServerBuilderGenerator.kt:308 */
13459         -
        pub(crate) foo_enum2:
13460         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
       12813  +
        pub(crate) integer_enum1: ::std::option::Option<i32>,
13461  12814   
        /* ServerBuilderGenerator.kt:308 */
13462         -
        pub(crate) foo_enum3:
13463         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
       12815  +
        pub(crate) integer_enum2: ::std::option::Option<i32>,
13464  12816   
        /* ServerBuilderGenerator.kt:308 */
13465         -
        pub(crate) foo_enum_list: ::std::option::Option<
13466         -
            crate::constrained::MaybeConstrained<
13467         -
                crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
13468         -
            >,
13469         -
        >,
       12817  +
        pub(crate) integer_enum3: ::std::option::Option<i32>,
13470  12818   
        /* ServerBuilderGenerator.kt:308 */
13471         -
        pub(crate) foo_enum_set:
13472         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnumSet>>,
       12819  +
        pub(crate) integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
13473  12820   
        /* ServerBuilderGenerator.kt:308 */
13474         -
        pub(crate) foo_enum_map: ::std::option::Option<
13475         -
            crate::constrained::MaybeConstrained<
13476         -
                crate::constrained::foo_enum_map_constrained::FooEnumMapConstrained,
13477         -
            >,
       12821  +
        pub(crate) integer_enum_set: ::std::option::Option<
       12822  +
            crate::constrained::MaybeConstrained<crate::model::IntegerEnumSet>,
13478  12823   
        >,
       12824  +
        /* ServerBuilderGenerator.kt:308 */
       12825  +
        pub(crate) integer_enum_map:
       12826  +
            ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
13479  12827   
        /* ServerBuilderGenerator.kt:211 */
13480  12828   
    }
13481  12829   
    /* ServerBuilderGenerator.kt:215 */
13482  12830   
    impl Builder {
13483  12831   
        /* ServerBuilderGenerator.kt:331 */
13484  12832   
        #[allow(missing_docs)] // documentation missing in model
13485  12833   
                               /* ServerBuilderGenerator.kt:343 */
13486         -
        pub fn foo_enum1(mut self, input: ::std::option::Option<crate::model::FooEnum>) -> Self {
       12834  +
        pub fn integer_enum1(mut self, input: ::std::option::Option<i32>) -> Self {
13487  12835   
            /* ServerBuilderGenerator.kt:344 */
13488         -
            self.foo_enum1 =
13489         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
       12836  +
            self.integer_enum1 =
       12837  +
                /* ServerBuilderGenerator.kt:376 */input
13490  12838   
            /* ServerBuilderGenerator.kt:344 */;
13491  12839   
            self
13492  12840   
            /* ServerBuilderGenerator.kt:343 */
13493  12841   
        }
13494  12842   
        /* ServerBuilderGenerator.kt:426 */
13495  12843   
        #[allow(missing_docs)] // documentation missing in model
13496  12844   
                               /* ServerBuilderGenerator.kt:428 */
13497         -
        pub(crate) fn set_foo_enum1(
       12845  +
        pub(crate) fn set_integer_enum1(
13498  12846   
            mut self,
13499         -
            input: Option<
13500         -
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
13501         -
            >,
       12847  +
            input: Option<impl ::std::convert::Into<i32>>,
13502  12848   
        ) -> Self {
13503  12849   
            /* ServerBuilderGenerator.kt:429 */
13504         -
            self.foo_enum1 = input.map(|v| v.into());
       12850  +
            self.integer_enum1 = input.map(|v| v.into());
13505  12851   
            self
13506  12852   
            /* ServerBuilderGenerator.kt:428 */
13507  12853   
        }
13508  12854   
        /* ServerBuilderGenerator.kt:331 */
13509  12855   
        #[allow(missing_docs)] // documentation missing in model
13510  12856   
                               /* ServerBuilderGenerator.kt:343 */
13511         -
        pub fn foo_enum2(mut self, input: ::std::option::Option<crate::model::FooEnum>) -> Self {
       12857  +
        pub fn integer_enum2(mut self, input: ::std::option::Option<i32>) -> Self {
13512  12858   
            /* ServerBuilderGenerator.kt:344 */
13513         -
            self.foo_enum2 =
13514         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
       12859  +
            self.integer_enum2 =
       12860  +
                /* ServerBuilderGenerator.kt:376 */input
13515  12861   
            /* ServerBuilderGenerator.kt:344 */;
13516  12862   
            self
13517  12863   
            /* ServerBuilderGenerator.kt:343 */
13518  12864   
        }
13519  12865   
        /* ServerBuilderGenerator.kt:426 */
13520  12866   
        #[allow(missing_docs)] // documentation missing in model
13521  12867   
                               /* ServerBuilderGenerator.kt:428 */
13522         -
        pub(crate) fn set_foo_enum2(
       12868  +
        pub(crate) fn set_integer_enum2(
13523  12869   
            mut self,
13524         -
            input: Option<
13525         -
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
13526         -
            >,
       12870  +
            input: Option<impl ::std::convert::Into<i32>>,
13527  12871   
        ) -> Self {
13528  12872   
            /* ServerBuilderGenerator.kt:429 */
13529         -
            self.foo_enum2 = input.map(|v| v.into());
       12873  +
            self.integer_enum2 = input.map(|v| v.into());
13530  12874   
            self
13531  12875   
            /* ServerBuilderGenerator.kt:428 */
13532  12876   
        }
13533  12877   
        /* ServerBuilderGenerator.kt:331 */
13534  12878   
        #[allow(missing_docs)] // documentation missing in model
13535  12879   
                               /* ServerBuilderGenerator.kt:343 */
13536         -
        pub fn foo_enum3(mut self, input: ::std::option::Option<crate::model::FooEnum>) -> Self {
       12880  +
        pub fn integer_enum3(mut self, input: ::std::option::Option<i32>) -> Self {
13537  12881   
            /* ServerBuilderGenerator.kt:344 */
13538         -
            self.foo_enum3 =
13539         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
       12882  +
            self.integer_enum3 =
       12883  +
                /* ServerBuilderGenerator.kt:376 */input
13540  12884   
            /* ServerBuilderGenerator.kt:344 */;
13541  12885   
            self
13542  12886   
            /* ServerBuilderGenerator.kt:343 */
13543  12887   
        }
13544  12888   
        /* ServerBuilderGenerator.kt:426 */
13545  12889   
        #[allow(missing_docs)] // documentation missing in model
13546  12890   
                               /* ServerBuilderGenerator.kt:428 */
13547         -
        pub(crate) fn set_foo_enum3(
       12891  +
        pub(crate) fn set_integer_enum3(
13548  12892   
            mut self,
13549         -
            input: Option<
13550         -
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
13551         -
            >,
       12893  +
            input: Option<impl ::std::convert::Into<i32>>,
13552  12894   
        ) -> Self {
13553  12895   
            /* ServerBuilderGenerator.kt:429 */
13554         -
            self.foo_enum3 = input.map(|v| v.into());
       12896  +
            self.integer_enum3 = input.map(|v| v.into());
13555  12897   
            self
13556  12898   
            /* ServerBuilderGenerator.kt:428 */
13557  12899   
        }
13558  12900   
        /* ServerBuilderGenerator.kt:331 */
13559  12901   
        #[allow(missing_docs)] // documentation missing in model
13560  12902   
                               /* ServerBuilderGenerator.kt:343 */
13561         -
        pub fn foo_enum_list(
       12903  +
        pub fn integer_enum_list(
13562  12904   
            mut self,
13563         -
            input: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
       12905  +
            input: ::std::option::Option<::std::vec::Vec<i32>>,
13564  12906   
        ) -> Self {
13565  12907   
            /* ServerBuilderGenerator.kt:344 */
13566         -
            self.foo_enum_list =
13567         -
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
13568         -
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
13569         -
                /* ServerBuilderGenerator.kt:363 */)
       12908  +
            self.integer_enum_list =
       12909  +
                /* ServerBuilderGenerator.kt:376 */input
13570  12910   
            /* ServerBuilderGenerator.kt:344 */;
13571  12911   
            self
13572  12912   
            /* ServerBuilderGenerator.kt:343 */
13573  12913   
        }
13574  12914   
        /* ServerBuilderGenerator.kt:426 */
13575  12915   
        #[allow(missing_docs)] // documentation missing in model
13576  12916   
                               /* ServerBuilderGenerator.kt:428 */
13577         -
        pub(crate) fn set_foo_enum_list(
       12917  +
        pub(crate) fn set_integer_enum_list(
       12918  +
            mut self,
       12919  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
       12920  +
        ) -> Self {
       12921  +
            /* ServerBuilderGenerator.kt:429 */
       12922  +
            self.integer_enum_list = input.map(|v| v.into());
       12923  +
            self
       12924  +
            /* ServerBuilderGenerator.kt:428 */
       12925  +
        }
       12926  +
        /* ServerBuilderGenerator.kt:331 */
       12927  +
        #[allow(missing_docs)] // documentation missing in model
       12928  +
                               /* ServerBuilderGenerator.kt:343 */
       12929  +
        pub fn integer_enum_set(
       12930  +
            mut self,
       12931  +
            input: ::std::option::Option<crate::model::IntegerEnumSet>,
       12932  +
        ) -> Self {
       12933  +
            /* ServerBuilderGenerator.kt:344 */
       12934  +
            self.integer_enum_set =
       12935  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
       12936  +
            /* ServerBuilderGenerator.kt:344 */;
       12937  +
            self
       12938  +
            /* ServerBuilderGenerator.kt:343 */
       12939  +
        }
       12940  +
        /* ServerBuilderGenerator.kt:426 */
       12941  +
        #[allow(missing_docs)] // documentation missing in model
       12942  +
                               /* ServerBuilderGenerator.kt:428 */
       12943  +
        pub(crate) fn set_integer_enum_set(
13578  12944   
            mut self,
13579  12945   
            input: Option<
13580  12946   
                impl ::std::convert::Into<
13581         -
                    crate::constrained::MaybeConstrained<
13582         -
                        crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
13583         -
                    >,
       12947  +
                    crate::constrained::MaybeConstrained<crate::model::IntegerEnumSet>,
13584  12948   
                >,
13585  12949   
            >,
13586  12950   
        ) -> Self {
13587  12951   
            /* ServerBuilderGenerator.kt:429 */
13588         -
            self.foo_enum_list = input.map(|v| v.into());
       12952  +
            self.integer_enum_set = input.map(|v| v.into());
13589  12953   
            self
13590  12954   
            /* ServerBuilderGenerator.kt:428 */
13591  12955   
        }
13592  12956   
        /* ServerBuilderGenerator.kt:331 */
13593  12957   
        #[allow(missing_docs)] // documentation missing in model
13594  12958   
                               /* ServerBuilderGenerator.kt:343 */
13595         -
        pub fn foo_enum_set(
       12959  +
        pub fn integer_enum_map(
13596  12960   
            mut self,
13597         -
            input: ::std::option::Option<crate::model::FooEnumSet>,
       12961  +
            input: ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
13598  12962   
        ) -> Self {
13599  12963   
            /* ServerBuilderGenerator.kt:344 */
13600         -
            self.foo_enum_set =
13601         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
       12964  +
            self.integer_enum_map =
       12965  +
                /* ServerBuilderGenerator.kt:376 */input
13602  12966   
            /* ServerBuilderGenerator.kt:344 */;
13603  12967   
            self
13604  12968   
            /* ServerBuilderGenerator.kt:343 */
13605  12969   
        }
13606         -
        /* ServerBuilderGenerator.kt:426 */
13607         -
        #[allow(missing_docs)] // documentation missing in model
13608         -
                               /* ServerBuilderGenerator.kt:428 */
13609         -
        pub(crate) fn set_foo_enum_set(
13610         -
            mut self,
13611         -
            input: Option<
13612         -
                impl ::std::convert::Into<
13613         -
                    crate::constrained::MaybeConstrained<crate::model::FooEnumSet>,
13614         -
                >,
13615         -
            >,
13616         -
        ) -> Self {
13617         -
            /* ServerBuilderGenerator.kt:429 */
13618         -
            self.foo_enum_set = input.map(|v| v.into());
13619         -
            self
13620         -
            /* ServerBuilderGenerator.kt:428 */
       12970  +
        /* ServerBuilderGenerator.kt:426 */
       12971  +
        #[allow(missing_docs)] // documentation missing in model
       12972  +
                               /* ServerBuilderGenerator.kt:428 */
       12973  +
        pub(crate) fn set_integer_enum_map(
       12974  +
            mut self,
       12975  +
            input: Option<
       12976  +
                impl ::std::convert::Into<::std::collections::HashMap<::std::string::String, i32>>,
       12977  +
            >,
       12978  +
        ) -> Self {
       12979  +
            /* ServerBuilderGenerator.kt:429 */
       12980  +
            self.integer_enum_map = input.map(|v| v.into());
       12981  +
            self
       12982  +
            /* ServerBuilderGenerator.kt:428 */
       12983  +
        }
       12984  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonIntEnumsInput`](crate::input::JsonIntEnumsInput).
       12985  +
        /// /* ServerBuilderGenerator.kt:260 */
       12986  +
        /// The builder fails to construct a [`JsonIntEnumsInput`](crate::input::JsonIntEnumsInput) if a [`ConstraintViolation`] occurs.
       12987  +
        ///
       12988  +
        /* ServerBuilderGenerator.kt:271 */
       12989  +
        pub fn build(self) -> Result<crate::input::JsonIntEnumsInput, ConstraintViolation> {
       12990  +
            self.build_enforcing_all_constraints()
       12991  +
        }
       12992  +
        /* ServerBuilderGenerator.kt:283 */
       12993  +
        fn build_enforcing_all_constraints(
       12994  +
            self,
       12995  +
        ) -> Result<crate::input::JsonIntEnumsInput, ConstraintViolation> {
       12996  +
            /* ServerBuilderGenerator.kt:287 */
       12997  +
            Ok(
       12998  +
                /* ServerBuilderGenerator.kt:542 */
       12999  +
                crate::input::JsonIntEnumsInput {
       13000  +
                    /* ServerBuilderGenerator.kt:546 */
       13001  +
                    integer_enum1: self.integer_enum1,
       13002  +
                    /* ServerBuilderGenerator.kt:546 */
       13003  +
                    integer_enum2: self.integer_enum2,
       13004  +
                    /* ServerBuilderGenerator.kt:546 */
       13005  +
                    integer_enum3: self.integer_enum3,
       13006  +
                    /* ServerBuilderGenerator.kt:546 */
       13007  +
                    integer_enum_list: self.integer_enum_list,
       13008  +
                    /* ServerBuilderGenerator.kt:546 */
       13009  +
                    integer_enum_set: self
       13010  +
                        .integer_enum_set
       13011  +
                        /* ServerBuilderGenerator.kt:602 */
       13012  +
                        .map(|v| match v {
       13013  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       13014  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       13015  +
                        })
       13016  +
                        /* ServerBuilderGenerator.kt:614 */
       13017  +
                        .map(|res| res.map_err(ConstraintViolation::IntegerEnumSet))
       13018  +
                        .transpose()?,
       13019  +
                    /* ServerBuilderGenerator.kt:546 */
       13020  +
                    integer_enum_map: self.integer_enum_map,
       13021  +
                    /* ServerBuilderGenerator.kt:542 */
       13022  +
                }, /* ServerBuilderGenerator.kt:287 */
       13023  +
            )
       13024  +
            /* ServerBuilderGenerator.kt:283 */
       13025  +
        }
       13026  +
        /* ServerBuilderGenerator.kt:215 */
       13027  +
    }
       13028  +
       13029  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       13030  +
}
       13031  +
/// /* ServerBuilderGenerator.kt:171 */See [`RecursiveShapesInput`](crate::input::RecursiveShapesInput).
       13032  +
pub mod recursive_shapes_input {
       13033  +
       13034  +
    /* ServerBuilderGenerator.kt:461 */
       13035  +
    impl ::std::convert::From<Builder> for crate::input::RecursiveShapesInput {
       13036  +
        fn from(builder: Builder) -> Self {
       13037  +
            builder.build()
       13038  +
        }
       13039  +
    }
       13040  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`RecursiveShapesInput`](crate::input::RecursiveShapesInput).
       13041  +
    /* RustType.kt:534 */
       13042  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       13043  +
    /* ServerBuilderGenerator.kt:211 */
       13044  +
    pub struct Builder {
       13045  +
        /* ServerBuilderGenerator.kt:308 */
       13046  +
        pub(crate) nested: ::std::option::Option<crate::model::RecursiveShapesInputOutputNested1>,
       13047  +
        /* ServerBuilderGenerator.kt:211 */
13621  13048   
    }
       13049  +
    /* ServerBuilderGenerator.kt:215 */
       13050  +
    impl Builder {
13622  13051   
        /* ServerBuilderGenerator.kt:331 */
13623  13052   
        #[allow(missing_docs)] // documentation missing in model
13624  13053   
                               /* ServerBuilderGenerator.kt:343 */
13625         -
        pub fn foo_enum_map(
       13054  +
        pub fn nested(
13626  13055   
            mut self,
13627         -
            input: ::std::option::Option<
13628         -
                ::std::collections::HashMap<::std::string::String, crate::model::FooEnum>,
13629         -
            >,
       13056  +
            input: ::std::option::Option<crate::model::RecursiveShapesInputOutputNested1>,
13630  13057   
        ) -> Self {
13631  13058   
            /* ServerBuilderGenerator.kt:344 */
13632         -
            self.foo_enum_map =
13633         -
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
13634         -
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
13635         -
                /* ServerBuilderGenerator.kt:363 */)
       13059  +
            self.nested =
       13060  +
                /* ServerBuilderGenerator.kt:376 */input
13636  13061   
            /* ServerBuilderGenerator.kt:344 */;
13637  13062   
            self
13638  13063   
            /* ServerBuilderGenerator.kt:343 */
13639  13064   
        }
13640  13065   
        /* ServerBuilderGenerator.kt:426 */
13641  13066   
        #[allow(missing_docs)] // documentation missing in model
13642  13067   
                               /* ServerBuilderGenerator.kt:428 */
13643         -
        pub(crate) fn set_foo_enum_map(
       13068  +
        pub(crate) fn set_nested(
13644  13069   
            mut self,
13645  13070   
            input: Option<
13646         -
                impl ::std::convert::Into<
13647         -
                    crate::constrained::MaybeConstrained<
13648         -
                        crate::constrained::foo_enum_map_constrained::FooEnumMapConstrained,
13649         -
                    >,
13650         -
                >,
       13071  +
                impl ::std::convert::Into<crate::model::RecursiveShapesInputOutputNested1>,
13651  13072   
            >,
13652  13073   
        ) -> Self {
13653  13074   
            /* ServerBuilderGenerator.kt:429 */
13654         -
            self.foo_enum_map = input.map(|v| v.into());
       13075  +
            self.nested = input.map(|v| v.into());
13655  13076   
            self
13656  13077   
            /* ServerBuilderGenerator.kt:428 */
13657  13078   
        }
13658         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonEnumsInput`](crate::input::JsonEnumsInput).
13659         -
        /// /* ServerBuilderGenerator.kt:260 */
13660         -
        /// The builder fails to construct a [`JsonEnumsInput`](crate::input::JsonEnumsInput) if a [`ConstraintViolation`] occurs.
13661         -
        ///
13662         -
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
       13079  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`RecursiveShapesInput`](crate::input::RecursiveShapesInput).
13663  13080   
        /* ServerBuilderGenerator.kt:271 */
13664         -
        pub fn build(self) -> Result<crate::input::JsonEnumsInput, ConstraintViolation> {
       13081  +
        pub fn build(self) -> crate::input::RecursiveShapesInput {
13665  13082   
            self.build_enforcing_all_constraints()
13666  13083   
        }
13667  13084   
        /* ServerBuilderGenerator.kt:283 */
13668         -
        fn build_enforcing_all_constraints(
13669         -
            self,
13670         -
        ) -> Result<crate::input::JsonEnumsInput, ConstraintViolation> {
13671         -
            /* ServerBuilderGenerator.kt:287 */
13672         -
            Ok(
       13085  +
        fn build_enforcing_all_constraints(self) -> crate::input::RecursiveShapesInput {
13673  13086   
            /* ServerBuilderGenerator.kt:542 */
13674         -
                crate::input::JsonEnumsInput {
13675         -
                    /* ServerBuilderGenerator.kt:546 */
13676         -
                    foo_enum1: self
13677         -
                        .foo_enum1
13678         -
                        /* ServerBuilderGenerator.kt:602 */
13679         -
                        .map(|v| match v {
13680         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
13681         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
13682         -
                        })
13683         -
                        /* ServerBuilderGenerator.kt:614 */
13684         -
                        .map(|res| res.map_err(ConstraintViolation::FooEnum1))
13685         -
                        .transpose()?,
13686         -
                    /* ServerBuilderGenerator.kt:546 */
13687         -
                    foo_enum2: self
13688         -
                        .foo_enum2
13689         -
                        /* ServerBuilderGenerator.kt:602 */
13690         -
                        .map(|v| match v {
13691         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
13692         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
13693         -
                        })
13694         -
                        /* ServerBuilderGenerator.kt:614 */
13695         -
                        .map(|res| res.map_err(ConstraintViolation::FooEnum2))
13696         -
                        .transpose()?,
13697         -
                    /* ServerBuilderGenerator.kt:546 */
13698         -
                    foo_enum3: self
13699         -
                        .foo_enum3
13700         -
                        /* ServerBuilderGenerator.kt:602 */
13701         -
                        .map(|v| match v {
13702         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
13703         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
13704         -
                        })
13705         -
                        /* ServerBuilderGenerator.kt:614 */
13706         -
                        .map(|res| res.map_err(ConstraintViolation::FooEnum3))
13707         -
                        .transpose()?,
13708         -
                    /* ServerBuilderGenerator.kt:546 */
13709         -
                    foo_enum_list: self
13710         -
                        .foo_enum_list
13711         -
                        /* ServerBuilderGenerator.kt:602 */
13712         -
                        .map(|v| match v {
13713         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
13714         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
13715         -
                        })
13716         -
                        /* ServerBuilderGenerator.kt:614 */
13717         -
                        .map(|res| {
13718         -
                            res.map(|v| v.into())
13719         -
                                .map_err(ConstraintViolation::FooEnumList)
13720         -
                        })
13721         -
                        .transpose()?,
13722         -
                    /* ServerBuilderGenerator.kt:546 */
13723         -
                    foo_enum_set: self
13724         -
                        .foo_enum_set
13725         -
                        /* ServerBuilderGenerator.kt:602 */
13726         -
                        .map(|v| match v {
13727         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
13728         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
13729         -
                        })
13730         -
                        /* ServerBuilderGenerator.kt:614 */
13731         -
                        .map(|res| res.map_err(ConstraintViolation::FooEnumSet))
13732         -
                        .transpose()?,
       13087  +
            crate::input::RecursiveShapesInput {
13733  13088   
                /* ServerBuilderGenerator.kt:546 */
13734         -
                    foo_enum_map: self
13735         -
                        .foo_enum_map
13736         -
                        /* ServerBuilderGenerator.kt:602 */
13737         -
                        .map(|v| match v {
13738         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
13739         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
13740         -
                        })
13741         -
                        /* ServerBuilderGenerator.kt:614 */
13742         -
                        .map(|res| {
13743         -
                            res.map(|v| v.into())
13744         -
                                .map_err(ConstraintViolation::FooEnumMap)
13745         -
                        })
13746         -
                        .transpose()?,
       13089  +
                nested: self.nested,
13747  13090   
                /* ServerBuilderGenerator.kt:542 */
13748         -
                }, /* ServerBuilderGenerator.kt:287 */
13749         -
            )
       13091  +
            }
13750  13092   
            /* ServerBuilderGenerator.kt:283 */
13751  13093   
        }
13752  13094   
        /* ServerBuilderGenerator.kt:215 */
13753  13095   
    }
13754  13096   
13755  13097   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
13756  13098   
}
13757         -
/// /* ServerBuilderGenerator.kt:171 */See [`JsonTimestampsInput`](crate::input::JsonTimestampsInput).
13758         -
pub mod json_timestamps_input {
       13099  +
/// /* ServerBuilderGenerator.kt:171 */See [`JsonListsInput`](crate::input::JsonListsInput).
       13100  +
pub mod json_lists_input {
13759  13101   
13760         -
    /* ServerBuilderGenerator.kt:461 */
13761         -
    impl ::std::convert::From<Builder> for crate::input::JsonTimestampsInput {
       13102  +
    /* RustType.kt:534 */
       13103  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       13104  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       13105  +
    /* RustType.kt:534 */
       13106  +
    #[non_exhaustive]
       13107  +
    /* ServerBuilderConstraintViolations.kt:75 */
       13108  +
    #[allow(clippy::enum_variant_names)]
       13109  +
    pub enum ConstraintViolation {
       13110  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `string_set` when building `JsonListsInput`.
       13111  +
        /* RustType.kt:534 */
       13112  +
        #[doc(hidden)]
       13113  +
        /* ServerBuilderConstraintViolations.kt:165 */
       13114  +
        StringSet(crate::model::string_set::ConstraintViolation),
       13115  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `enum_list` when building `JsonListsInput`.
       13116  +
        /* RustType.kt:534 */
       13117  +
        #[doc(hidden)]
       13118  +
        /* ServerBuilderConstraintViolations.kt:165 */
       13119  +
        EnumList(crate::model::foo_enum_list::ConstraintViolation),
       13120  +
        /* ServerBuilderConstraintViolations.kt:75 */
       13121  +
    }
       13122  +
    /* ServerBuilderConstraintViolations.kt:116 */
       13123  +
    impl ::std::fmt::Display for ConstraintViolation {
       13124  +
        /* ServerBuilderConstraintViolations.kt:117 */
       13125  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       13126  +
            /* ServerBuilderConstraintViolations.kt:118 */
       13127  +
            match self {
       13128  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::StringSet(_) => write!(f, "constraint violation occurred building member `string_set` when building `JsonListsInput`"),
       13129  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::EnumList(_) => write!(f, "constraint violation occurred building member `enum_list` when building `JsonListsInput`"),
       13130  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       13131  +
            /* ServerBuilderConstraintViolations.kt:117 */
       13132  +
        }
       13133  +
        /* ServerBuilderConstraintViolations.kt:116 */
       13134  +
    }
       13135  +
    /* ServerBuilderConstraintViolations.kt:83 */
       13136  +
    impl ::std::error::Error for ConstraintViolation {}
       13137  +
    /* ServerBuilderConstraintViolations.kt:172 */
       13138  +
    impl ConstraintViolation {
       13139  +
        pub(crate) fn as_validation_exception_field(
       13140  +
            self,
       13141  +
            path: ::std::string::String,
       13142  +
        ) -> crate::model::ValidationExceptionField {
       13143  +
            match self {
       13144  +
                ConstraintViolation::StringSet(inner) => {
       13145  +
                    inner.as_validation_exception_field(path + "/stringSet")
       13146  +
                }
       13147  +
                ConstraintViolation::EnumList(inner) => {
       13148  +
                    inner.as_validation_exception_field(path + "/enumList")
       13149  +
                }
       13150  +
            }
       13151  +
        }
       13152  +
    }
       13153  +
    /* ServerBuilderGenerator.kt:234 */
       13154  +
    impl ::std::convert::From<ConstraintViolation>
       13155  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       13156  +
    {
       13157  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       13158  +
            let first_validation_exception_field =
       13159  +
                constraint_violation.as_validation_exception_field("".to_owned());
       13160  +
            let validation_exception = crate::error::ValidationException {
       13161  +
                message: format!(
       13162  +
                    "1 validation error detected. {}",
       13163  +
                    &first_validation_exception_field.message
       13164  +
                ),
       13165  +
                field_list: Some(vec![first_validation_exception_field]),
       13166  +
            };
       13167  +
            Self::ConstraintViolation(
       13168  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       13169  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       13170  +
                            )
       13171  +
        }
       13172  +
    }
       13173  +
    /* ServerBuilderGenerator.kt:244 */
       13174  +
    impl ::std::convert::From<Builder>
       13175  +
        for crate::constrained::MaybeConstrained<crate::input::JsonListsInput>
       13176  +
    {
13762  13177   
        fn from(builder: Builder) -> Self {
       13178  +
            Self::Unconstrained(builder)
       13179  +
        }
       13180  +
    }
       13181  +
    /* ServerBuilderGenerator.kt:446 */
       13182  +
    impl ::std::convert::TryFrom<Builder> for crate::input::JsonListsInput {
       13183  +
        type Error = ConstraintViolation;
       13184  +
       13185  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
13763  13186   
            builder.build()
13764  13187   
        }
13765  13188   
    }
13766         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonTimestampsInput`](crate::input::JsonTimestampsInput).
       13189  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonListsInput`](crate::input::JsonListsInput).
13767  13190   
    /* RustType.kt:534 */
13768  13191   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
13769  13192   
    /* ServerBuilderGenerator.kt:211 */
13770  13193   
    pub struct Builder {
13771  13194   
        /* ServerBuilderGenerator.kt:308 */
13772         -
        pub(crate) normal: ::std::option::Option<::aws_smithy_types::DateTime>,
       13195  +
        pub(crate) string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
13773  13196   
        /* ServerBuilderGenerator.kt:308 */
13774         -
        pub(crate) date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
       13197  +
        pub(crate) string_set:
       13198  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
13775  13199   
        /* ServerBuilderGenerator.kt:308 */
13776         -
        pub(crate) date_time_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
       13200  +
        pub(crate) integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
13777  13201   
        /* ServerBuilderGenerator.kt:308 */
13778         -
        pub(crate) epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
       13202  +
        pub(crate) boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
13779  13203   
        /* ServerBuilderGenerator.kt:308 */
13780         -
        pub(crate) epoch_seconds_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
       13204  +
        pub(crate) timestamp_list:
       13205  +
            ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
13781  13206   
        /* ServerBuilderGenerator.kt:308 */
13782         -
        pub(crate) http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
       13207  +
        pub(crate) enum_list: ::std::option::Option<
       13208  +
            crate::constrained::MaybeConstrained<
       13209  +
                crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
       13210  +
            >,
       13211  +
        >,
13783  13212   
        /* ServerBuilderGenerator.kt:308 */
13784         -
        pub(crate) http_date_on_target: ::std::option::Option<::aws_smithy_types::DateTime>,
       13213  +
        pub(crate) int_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
       13214  +
        /* ServerBuilderGenerator.kt:308 */
       13215  +
        pub(crate) nested_string_list:
       13216  +
            ::std::option::Option<::std::vec::Vec<::std::vec::Vec<::std::string::String>>>,
       13217  +
        /* ServerBuilderGenerator.kt:308 */
       13218  +
        pub(crate) structure_list:
       13219  +
            ::std::option::Option<::std::vec::Vec<crate::model::StructureListMember>>,
13785  13220   
        /* ServerBuilderGenerator.kt:211 */
13786  13221   
    }
13787  13222   
    /* ServerBuilderGenerator.kt:215 */
13788  13223   
    impl Builder {
13789  13224   
        /* ServerBuilderGenerator.kt:331 */
13790  13225   
        #[allow(missing_docs)] // documentation missing in model
13791  13226   
                               /* ServerBuilderGenerator.kt:343 */
13792         -
        pub fn normal(
       13227  +
        pub fn string_list(
13793  13228   
            mut self,
13794         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
       13229  +
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
13795  13230   
        ) -> Self {
13796  13231   
            /* ServerBuilderGenerator.kt:344 */
13797         -
            self.normal =
       13232  +
            self.string_list =
13798  13233   
                /* ServerBuilderGenerator.kt:376 */input
13799  13234   
            /* ServerBuilderGenerator.kt:344 */;
13800  13235   
            self
13801  13236   
            /* ServerBuilderGenerator.kt:343 */
13802  13237   
        }
13803  13238   
        /* ServerBuilderGenerator.kt:426 */
13804  13239   
        #[allow(missing_docs)] // documentation missing in model
13805  13240   
                               /* ServerBuilderGenerator.kt:428 */
13806         -
        pub(crate) fn set_normal(
       13241  +
        pub(crate) fn set_string_list(
13807  13242   
            mut self,
13808         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       13243  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
13809  13244   
        ) -> Self {
13810  13245   
            /* ServerBuilderGenerator.kt:429 */
13811         -
            self.normal = input.map(|v| v.into());
       13246  +
            self.string_list = input.map(|v| v.into());
13812  13247   
            self
13813  13248   
            /* ServerBuilderGenerator.kt:428 */
13814  13249   
        }
13815  13250   
        /* ServerBuilderGenerator.kt:331 */
13816  13251   
        #[allow(missing_docs)] // documentation missing in model
13817  13252   
                               /* ServerBuilderGenerator.kt:343 */
13818         -
        pub fn date_time(
       13253  +
        pub fn string_set(mut self, input: ::std::option::Option<crate::model::StringSet>) -> Self {
       13254  +
            /* ServerBuilderGenerator.kt:344 */
       13255  +
            self.string_set =
       13256  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
       13257  +
            /* ServerBuilderGenerator.kt:344 */;
       13258  +
            self
       13259  +
            /* ServerBuilderGenerator.kt:343 */
       13260  +
        }
       13261  +
        /* ServerBuilderGenerator.kt:426 */
       13262  +
        #[allow(missing_docs)] // documentation missing in model
       13263  +
                               /* ServerBuilderGenerator.kt:428 */
       13264  +
        pub(crate) fn set_string_set(
13819  13265   
            mut self,
13820         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
       13266  +
            input: Option<
       13267  +
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
       13268  +
            >,
13821  13269   
        ) -> Self {
       13270  +
            /* ServerBuilderGenerator.kt:429 */
       13271  +
            self.string_set = input.map(|v| v.into());
       13272  +
            self
       13273  +
            /* ServerBuilderGenerator.kt:428 */
       13274  +
        }
       13275  +
        /* ServerBuilderGenerator.kt:331 */
       13276  +
        #[allow(missing_docs)] // documentation missing in model
       13277  +
                               /* ServerBuilderGenerator.kt:343 */
       13278  +
        pub fn integer_list(mut self, input: ::std::option::Option<::std::vec::Vec<i32>>) -> Self {
13822  13279   
            /* ServerBuilderGenerator.kt:344 */
13823         -
            self.date_time =
       13280  +
            self.integer_list =
13824  13281   
                /* ServerBuilderGenerator.kt:376 */input
13825  13282   
            /* ServerBuilderGenerator.kt:344 */;
13826  13283   
            self
13827  13284   
            /* ServerBuilderGenerator.kt:343 */
13828  13285   
        }
13829  13286   
        /* ServerBuilderGenerator.kt:426 */
13830  13287   
        #[allow(missing_docs)] // documentation missing in model
13831  13288   
                               /* ServerBuilderGenerator.kt:428 */
13832         -
        pub(crate) fn set_date_time(
       13289  +
        pub(crate) fn set_integer_list(
13833  13290   
            mut self,
13834         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       13291  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
13835  13292   
        ) -> Self {
13836  13293   
            /* ServerBuilderGenerator.kt:429 */
13837         -
            self.date_time = input.map(|v| v.into());
       13294  +
            self.integer_list = input.map(|v| v.into());
13838  13295   
            self
13839  13296   
            /* ServerBuilderGenerator.kt:428 */
13840  13297   
        }
13841  13298   
        /* ServerBuilderGenerator.kt:331 */
13842  13299   
        #[allow(missing_docs)] // documentation missing in model
13843  13300   
                               /* ServerBuilderGenerator.kt:343 */
13844         -
        pub fn date_time_on_target(
13845         -
            mut self,
13846         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
13847         -
        ) -> Self {
       13301  +
        pub fn boolean_list(mut self, input: ::std::option::Option<::std::vec::Vec<bool>>) -> Self {
13848  13302   
            /* ServerBuilderGenerator.kt:344 */
13849         -
            self.date_time_on_target =
       13303  +
            self.boolean_list =
13850  13304   
                /* ServerBuilderGenerator.kt:376 */input
13851  13305   
            /* ServerBuilderGenerator.kt:344 */;
13852  13306   
            self
13853  13307   
            /* ServerBuilderGenerator.kt:343 */
13854  13308   
        }
13855  13309   
        /* ServerBuilderGenerator.kt:426 */
13856  13310   
        #[allow(missing_docs)] // documentation missing in model
13857  13311   
                               /* ServerBuilderGenerator.kt:428 */
13858         -
        pub(crate) fn set_date_time_on_target(
       13312  +
        pub(crate) fn set_boolean_list(
13859  13313   
            mut self,
13860         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       13314  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<bool>>>,
13861  13315   
        ) -> Self {
13862  13316   
            /* ServerBuilderGenerator.kt:429 */
13863         -
            self.date_time_on_target = input.map(|v| v.into());
       13317  +
            self.boolean_list = input.map(|v| v.into());
13864  13318   
            self
13865  13319   
            /* ServerBuilderGenerator.kt:428 */
13866  13320   
        }
13867  13321   
        /* ServerBuilderGenerator.kt:331 */
13868  13322   
        #[allow(missing_docs)] // documentation missing in model
13869  13323   
                               /* ServerBuilderGenerator.kt:343 */
13870         -
        pub fn epoch_seconds(
       13324  +
        pub fn timestamp_list(
13871  13325   
            mut self,
13872         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
       13326  +
            input: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
13873  13327   
        ) -> Self {
13874  13328   
            /* ServerBuilderGenerator.kt:344 */
13875         -
            self.epoch_seconds =
       13329  +
            self.timestamp_list =
13876  13330   
                /* ServerBuilderGenerator.kt:376 */input
13877  13331   
            /* ServerBuilderGenerator.kt:344 */;
13878  13332   
            self
13879  13333   
            /* ServerBuilderGenerator.kt:343 */
13880  13334   
        }
13881  13335   
        /* ServerBuilderGenerator.kt:426 */
13882  13336   
        #[allow(missing_docs)] // documentation missing in model
13883  13337   
                               /* ServerBuilderGenerator.kt:428 */
13884         -
        pub(crate) fn set_epoch_seconds(
       13338  +
        pub(crate) fn set_timestamp_list(
13885  13339   
            mut self,
13886         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       13340  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::aws_smithy_types::DateTime>>>,
13887  13341   
        ) -> Self {
13888  13342   
            /* ServerBuilderGenerator.kt:429 */
13889         -
            self.epoch_seconds = input.map(|v| v.into());
       13343  +
            self.timestamp_list = input.map(|v| v.into());
13890  13344   
            self
13891  13345   
            /* ServerBuilderGenerator.kt:428 */
13892  13346   
        }
13893  13347   
        /* ServerBuilderGenerator.kt:331 */
13894  13348   
        #[allow(missing_docs)] // documentation missing in model
13895  13349   
                               /* ServerBuilderGenerator.kt:343 */
13896         -
        pub fn epoch_seconds_on_target(
       13350  +
        pub fn enum_list(
13897  13351   
            mut self,
13898         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
       13352  +
            input: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
13899  13353   
        ) -> Self {
13900  13354   
            /* ServerBuilderGenerator.kt:344 */
13901         -
            self.epoch_seconds_on_target =
13902         -
                /* ServerBuilderGenerator.kt:376 */input
       13355  +
            self.enum_list =
       13356  +
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
       13357  +
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
       13358  +
                /* ServerBuilderGenerator.kt:363 */)
13903  13359   
            /* ServerBuilderGenerator.kt:344 */;
13904  13360   
            self
13905  13361   
            /* ServerBuilderGenerator.kt:343 */
13906  13362   
        }
13907  13363   
        /* ServerBuilderGenerator.kt:426 */
13908  13364   
        #[allow(missing_docs)] // documentation missing in model
13909  13365   
                               /* ServerBuilderGenerator.kt:428 */
13910         -
        pub(crate) fn set_epoch_seconds_on_target(
       13366  +
        pub(crate) fn set_enum_list(
13911  13367   
            mut self,
13912         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       13368  +
            input: Option<
       13369  +
                impl ::std::convert::Into<
       13370  +
                    crate::constrained::MaybeConstrained<
       13371  +
                        crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
       13372  +
                    >,
       13373  +
                >,
       13374  +
            >,
13913  13375   
        ) -> Self {
13914  13376   
            /* ServerBuilderGenerator.kt:429 */
13915         -
            self.epoch_seconds_on_target = input.map(|v| v.into());
       13377  +
            self.enum_list = input.map(|v| v.into());
13916  13378   
            self
13917  13379   
            /* ServerBuilderGenerator.kt:428 */
13918  13380   
        }
13919  13381   
        /* ServerBuilderGenerator.kt:331 */
13920  13382   
        #[allow(missing_docs)] // documentation missing in model
13921  13383   
                               /* ServerBuilderGenerator.kt:343 */
13922         -
        pub fn http_date(
13923         -
            mut self,
13924         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
13925         -
        ) -> Self {
       13384  +
        pub fn int_enum_list(mut self, input: ::std::option::Option<::std::vec::Vec<i32>>) -> Self {
13926  13385   
            /* ServerBuilderGenerator.kt:344 */
13927         -
            self.http_date =
       13386  +
            self.int_enum_list =
13928  13387   
                /* ServerBuilderGenerator.kt:376 */input
13929  13388   
            /* ServerBuilderGenerator.kt:344 */;
13930  13389   
            self
13931  13390   
            /* ServerBuilderGenerator.kt:343 */
13932  13391   
        }
13933  13392   
        /* ServerBuilderGenerator.kt:426 */
13934  13393   
        #[allow(missing_docs)] // documentation missing in model
13935  13394   
                               /* ServerBuilderGenerator.kt:428 */
13936         -
        pub(crate) fn set_http_date(
       13395  +
        pub(crate) fn set_int_enum_list(
13937  13396   
            mut self,
13938         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       13397  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
13939  13398   
        ) -> Self {
13940  13399   
            /* ServerBuilderGenerator.kt:429 */
13941         -
            self.http_date = input.map(|v| v.into());
       13400  +
            self.int_enum_list = input.map(|v| v.into());
       13401  +
            self
       13402  +
            /* ServerBuilderGenerator.kt:428 */
       13403  +
        }
       13404  +
        /// /* ServerBuilderGenerator.kt:331 */A list of lists of strings.
       13405  +
        /* ServerBuilderGenerator.kt:343 */
       13406  +
        pub fn nested_string_list(
       13407  +
            mut self,
       13408  +
            input: ::std::option::Option<::std::vec::Vec<::std::vec::Vec<::std::string::String>>>,
       13409  +
        ) -> Self {
       13410  +
            /* ServerBuilderGenerator.kt:344 */
       13411  +
            self.nested_string_list =
       13412  +
                /* ServerBuilderGenerator.kt:376 */input
       13413  +
            /* ServerBuilderGenerator.kt:344 */;
       13414  +
            self
       13415  +
            /* ServerBuilderGenerator.kt:343 */
       13416  +
        }
       13417  +
        /// /* ServerBuilderGenerator.kt:426 */A list of lists of strings.
       13418  +
        /* ServerBuilderGenerator.kt:428 */
       13419  +
        pub(crate) fn set_nested_string_list(
       13420  +
            mut self,
       13421  +
            input: Option<
       13422  +
                impl ::std::convert::Into<::std::vec::Vec<::std::vec::Vec<::std::string::String>>>,
       13423  +
            >,
       13424  +
        ) -> Self {
       13425  +
            /* ServerBuilderGenerator.kt:429 */
       13426  +
            self.nested_string_list = input.map(|v| v.into());
13942  13427   
            self
13943  13428   
            /* ServerBuilderGenerator.kt:428 */
13944  13429   
        }
13945  13430   
        /* ServerBuilderGenerator.kt:331 */
13946  13431   
        #[allow(missing_docs)] // documentation missing in model
13947  13432   
                               /* ServerBuilderGenerator.kt:343 */
13948         -
        pub fn http_date_on_target(
       13433  +
        pub fn structure_list(
13949  13434   
            mut self,
13950         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
       13435  +
            input: ::std::option::Option<::std::vec::Vec<crate::model::StructureListMember>>,
13951  13436   
        ) -> Self {
13952  13437   
            /* ServerBuilderGenerator.kt:344 */
13953         -
            self.http_date_on_target =
       13438  +
            self.structure_list =
13954  13439   
                /* ServerBuilderGenerator.kt:376 */input
13955  13440   
            /* ServerBuilderGenerator.kt:344 */;
13956  13441   
            self
13957  13442   
            /* ServerBuilderGenerator.kt:343 */
13958  13443   
        }
13959  13444   
        /* ServerBuilderGenerator.kt:426 */
13960  13445   
        #[allow(missing_docs)] // documentation missing in model
13961  13446   
                               /* ServerBuilderGenerator.kt:428 */
13962         -
        pub(crate) fn set_http_date_on_target(
       13447  +
        pub(crate) fn set_structure_list(
13963  13448   
            mut self,
13964         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       13449  +
            input: Option<
       13450  +
                impl ::std::convert::Into<::std::vec::Vec<crate::model::StructureListMember>>,
       13451  +
            >,
13965  13452   
        ) -> Self {
13966  13453   
            /* ServerBuilderGenerator.kt:429 */
13967         -
            self.http_date_on_target = input.map(|v| v.into());
       13454  +
            self.structure_list = input.map(|v| v.into());
13968  13455   
            self
13969  13456   
            /* ServerBuilderGenerator.kt:428 */
13970  13457   
        }
13971         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonTimestampsInput`](crate::input::JsonTimestampsInput).
       13458  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonListsInput`](crate::input::JsonListsInput).
       13459  +
        /// /* ServerBuilderGenerator.kt:260 */
       13460  +
        /// The builder fails to construct a [`JsonListsInput`](crate::input::JsonListsInput) if a [`ConstraintViolation`] occurs.
       13461  +
        ///
       13462  +
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
13972  13463   
        /* ServerBuilderGenerator.kt:271 */
13973         -
        pub fn build(self) -> crate::input::JsonTimestampsInput {
       13464  +
        pub fn build(self) -> Result<crate::input::JsonListsInput, ConstraintViolation> {
13974  13465   
            self.build_enforcing_all_constraints()
13975  13466   
        }
13976  13467   
        /* ServerBuilderGenerator.kt:283 */
13977         -
        fn build_enforcing_all_constraints(self) -> crate::input::JsonTimestampsInput {
       13468  +
        fn build_enforcing_all_constraints(
       13469  +
            self,
       13470  +
        ) -> Result<crate::input::JsonListsInput, ConstraintViolation> {
       13471  +
            /* ServerBuilderGenerator.kt:287 */
       13472  +
            Ok(
13978  13473   
                /* ServerBuilderGenerator.kt:542 */
13979         -
            crate::input::JsonTimestampsInput {
       13474  +
                crate::input::JsonListsInput {
13980  13475   
                    /* ServerBuilderGenerator.kt:546 */
13981         -
                normal: self.normal,
       13476  +
                    string_list: self.string_list,
13982  13477   
                    /* ServerBuilderGenerator.kt:546 */
13983         -
                date_time: self.date_time,
       13478  +
                    string_set: self
       13479  +
                        .string_set
       13480  +
                        /* ServerBuilderGenerator.kt:602 */
       13481  +
                        .map(|v| match v {
       13482  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       13483  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       13484  +
                        })
       13485  +
                        /* ServerBuilderGenerator.kt:614 */
       13486  +
                        .map(|res| res.map_err(ConstraintViolation::StringSet))
       13487  +
                        .transpose()?,
13984  13488   
                    /* ServerBuilderGenerator.kt:546 */
13985         -
                date_time_on_target: self.date_time_on_target,
       13489  +
                    integer_list: self.integer_list,
13986  13490   
                    /* ServerBuilderGenerator.kt:546 */
13987         -
                epoch_seconds: self.epoch_seconds,
       13491  +
                    boolean_list: self.boolean_list,
13988  13492   
                    /* ServerBuilderGenerator.kt:546 */
13989         -
                epoch_seconds_on_target: self.epoch_seconds_on_target,
       13493  +
                    timestamp_list: self.timestamp_list,
13990  13494   
                    /* ServerBuilderGenerator.kt:546 */
13991         -
                http_date: self.http_date,
       13495  +
                    enum_list: self
       13496  +
                        .enum_list
       13497  +
                        /* ServerBuilderGenerator.kt:602 */
       13498  +
                        .map(|v| match v {
       13499  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       13500  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       13501  +
                        })
       13502  +
                        /* ServerBuilderGenerator.kt:614 */
       13503  +
                        .map(|res| res.map(|v| v.into()).map_err(ConstraintViolation::EnumList))
       13504  +
                        .transpose()?,
13992  13505   
                    /* ServerBuilderGenerator.kt:546 */
13993         -
                http_date_on_target: self.http_date_on_target,
       13506  +
                    int_enum_list: self.int_enum_list,
       13507  +
                    /* ServerBuilderGenerator.kt:546 */
       13508  +
                    nested_string_list: self.nested_string_list,
       13509  +
                    /* ServerBuilderGenerator.kt:546 */
       13510  +
                    structure_list: self.structure_list,
13994  13511   
                    /* ServerBuilderGenerator.kt:542 */
13995         -
            }
       13512  +
                }, /* ServerBuilderGenerator.kt:287 */
       13513  +
            )
13996  13514   
            /* ServerBuilderGenerator.kt:283 */
13997  13515   
        }
13998  13516   
        /* ServerBuilderGenerator.kt:215 */
13999  13517   
    }
14000  13518   
14001  13519   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
14002  13520   
}
14003         -
/// /* ServerBuilderGenerator.kt:171 */See [`SimpleScalarPropertiesInput`](crate::input::SimpleScalarPropertiesInput).
14004         -
pub mod simple_scalar_properties_input {
       13521  +
/// /* ServerBuilderGenerator.kt:171 */See [`SparseJsonListsInput`](crate::input::SparseJsonListsInput).
       13522  +
pub mod sparse_json_lists_input {
14005  13523   
14006  13524   
    /* ServerBuilderGenerator.kt:461 */
14007         -
    impl ::std::convert::From<Builder> for crate::input::SimpleScalarPropertiesInput {
       13525  +
    impl ::std::convert::From<Builder> for crate::input::SparseJsonListsInput {
14008  13526   
        fn from(builder: Builder) -> Self {
14009  13527   
            builder.build()
14010  13528   
        }
14011  13529   
    }
14012         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`SimpleScalarPropertiesInput`](crate::input::SimpleScalarPropertiesInput).
14013         -
    /* RustType.kt:534 */
14014         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
14015         -
    /* ServerBuilderGenerator.kt:211 */
14016         -
    pub struct Builder {
14017         -
        /* ServerBuilderGenerator.kt:308 */
14018         -
        pub(crate) foo: ::std::option::Option<::std::string::String>,
14019         -
        /* ServerBuilderGenerator.kt:308 */
14020         -
        pub(crate) string_value: ::std::option::Option<::std::string::String>,
14021         -
        /* ServerBuilderGenerator.kt:308 */
14022         -
        pub(crate) true_boolean_value: ::std::option::Option<bool>,
14023         -
        /* ServerBuilderGenerator.kt:308 */
14024         -
        pub(crate) false_boolean_value: ::std::option::Option<bool>,
14025         -
        /* ServerBuilderGenerator.kt:308 */ pub(crate) byte_value: ::std::option::Option<i8>,
14026         -
        /* ServerBuilderGenerator.kt:308 */
14027         -
        pub(crate) short_value: ::std::option::Option<i16>,
14028         -
        /* ServerBuilderGenerator.kt:308 */
14029         -
        pub(crate) integer_value: ::std::option::Option<i32>,
14030         -
        /* ServerBuilderGenerator.kt:308 */
14031         -
        pub(crate) long_value: ::std::option::Option<i64>,
14032         -
        /* ServerBuilderGenerator.kt:308 */
14033         -
        pub(crate) float_value: ::std::option::Option<f32>,
14034         -
        /* ServerBuilderGenerator.kt:308 */
14035         -
        pub(crate) double_value: ::std::option::Option<f64>,
14036         -
        /* ServerBuilderGenerator.kt:211 */
14037         -
    }
14038         -
    /* ServerBuilderGenerator.kt:215 */
14039         -
    impl Builder {
14040         -
        /* ServerBuilderGenerator.kt:331 */
14041         -
        #[allow(missing_docs)] // documentation missing in model
14042         -
                               /* ServerBuilderGenerator.kt:343 */
14043         -
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
14044         -
            /* ServerBuilderGenerator.kt:344 */
14045         -
            self.foo =
14046         -
                /* ServerBuilderGenerator.kt:376 */input
14047         -
            /* ServerBuilderGenerator.kt:344 */;
14048         -
            self
14049         -
            /* ServerBuilderGenerator.kt:343 */
14050         -
        }
14051         -
        /* ServerBuilderGenerator.kt:426 */
14052         -
        #[allow(missing_docs)] // documentation missing in model
14053         -
                               /* ServerBuilderGenerator.kt:428 */
14054         -
        pub(crate) fn set_foo(
14055         -
            mut self,
14056         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
14057         -
        ) -> Self {
14058         -
            /* ServerBuilderGenerator.kt:429 */
14059         -
            self.foo = input.map(|v| v.into());
14060         -
            self
14061         -
            /* ServerBuilderGenerator.kt:428 */
       13530  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`SparseJsonListsInput`](crate::input::SparseJsonListsInput).
       13531  +
    /* RustType.kt:534 */
       13532  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       13533  +
    /* ServerBuilderGenerator.kt:211 */
       13534  +
    pub struct Builder {
       13535  +
        /* ServerBuilderGenerator.kt:308 */
       13536  +
        pub(crate) sparse_string_list:
       13537  +
            ::std::option::Option<::std::vec::Vec<::std::option::Option<::std::string::String>>>,
       13538  +
        /* ServerBuilderGenerator.kt:308 */
       13539  +
        pub(crate) sparse_short_list:
       13540  +
            ::std::option::Option<::std::vec::Vec<::std::option::Option<i16>>>,
       13541  +
        /* ServerBuilderGenerator.kt:211 */
14062  13542   
    }
       13543  +
    /* ServerBuilderGenerator.kt:215 */
       13544  +
    impl Builder {
14063  13545   
        /* ServerBuilderGenerator.kt:331 */
14064  13546   
        #[allow(missing_docs)] // documentation missing in model
14065  13547   
                               /* ServerBuilderGenerator.kt:343 */
14066         -
        pub fn string_value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
14067         -
            /* ServerBuilderGenerator.kt:344 */
14068         -
            self.string_value =
14069         -
                /* ServerBuilderGenerator.kt:376 */input
14070         -
            /* ServerBuilderGenerator.kt:344 */;
14071         -
            self
14072         -
            /* ServerBuilderGenerator.kt:343 */
14073         -
        }
14074         -
        /* ServerBuilderGenerator.kt:426 */
14075         -
        #[allow(missing_docs)] // documentation missing in model
14076         -
                               /* ServerBuilderGenerator.kt:428 */
14077         -
        pub(crate) fn set_string_value(
       13548  +
        pub fn sparse_string_list(
14078  13549   
            mut self,
14079         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       13550  +
            input: ::std::option::Option<
       13551  +
                ::std::vec::Vec<::std::option::Option<::std::string::String>>,
       13552  +
            >,
14080  13553   
        ) -> Self {
14081         -
            /* ServerBuilderGenerator.kt:429 */
14082         -
            self.string_value = input.map(|v| v.into());
14083         -
            self
14084         -
            /* ServerBuilderGenerator.kt:428 */
14085         -
        }
14086         -
        /* ServerBuilderGenerator.kt:331 */
14087         -
        #[allow(missing_docs)] // documentation missing in model
14088         -
                               /* ServerBuilderGenerator.kt:343 */
14089         -
        pub fn true_boolean_value(mut self, input: ::std::option::Option<bool>) -> Self {
14090  13554   
            /* ServerBuilderGenerator.kt:344 */
14091         -
            self.true_boolean_value =
       13555  +
            self.sparse_string_list =
14092  13556   
                /* ServerBuilderGenerator.kt:376 */input
14093  13557   
            /* ServerBuilderGenerator.kt:344 */;
14094  13558   
            self
14095  13559   
            /* ServerBuilderGenerator.kt:343 */
14096  13560   
        }
14097  13561   
        /* ServerBuilderGenerator.kt:426 */
14098  13562   
        #[allow(missing_docs)] // documentation missing in model
14099  13563   
                               /* ServerBuilderGenerator.kt:428 */
14100         -
        pub(crate) fn set_true_boolean_value(
       13564  +
        pub(crate) fn set_sparse_string_list(
14101  13565   
            mut self,
14102         -
            input: Option<impl ::std::convert::Into<bool>>,
       13566  +
            input: Option<
       13567  +
                impl ::std::convert::Into<::std::vec::Vec<::std::option::Option<::std::string::String>>>,
       13568  +
            >,
14103  13569   
        ) -> Self {
14104  13570   
            /* ServerBuilderGenerator.kt:429 */
14105         -
            self.true_boolean_value = input.map(|v| v.into());
       13571  +
            self.sparse_string_list = input.map(|v| v.into());
14106  13572   
            self
14107  13573   
            /* ServerBuilderGenerator.kt:428 */
14108  13574   
        }
14109  13575   
        /* ServerBuilderGenerator.kt:331 */
14110  13576   
        #[allow(missing_docs)] // documentation missing in model
14111  13577   
                               /* ServerBuilderGenerator.kt:343 */
14112         -
        pub fn false_boolean_value(mut self, input: ::std::option::Option<bool>) -> Self {
14113         -
            /* ServerBuilderGenerator.kt:344 */
14114         -
            self.false_boolean_value =
14115         -
                /* ServerBuilderGenerator.kt:376 */input
14116         -
            /* ServerBuilderGenerator.kt:344 */;
14117         -
            self
14118         -
            /* ServerBuilderGenerator.kt:343 */
14119         -
        }
14120         -
        /* ServerBuilderGenerator.kt:426 */
14121         -
        #[allow(missing_docs)] // documentation missing in model
14122         -
                               /* ServerBuilderGenerator.kt:428 */
14123         -
        pub(crate) fn set_false_boolean_value(
       13578  +
        pub fn sparse_short_list(
14124  13579   
            mut self,
14125         -
            input: Option<impl ::std::convert::Into<bool>>,
       13580  +
            input: ::std::option::Option<::std::vec::Vec<::std::option::Option<i16>>>,
14126  13581   
        ) -> Self {
14127         -
            /* ServerBuilderGenerator.kt:429 */
14128         -
            self.false_boolean_value = input.map(|v| v.into());
14129         -
            self
14130         -
            /* ServerBuilderGenerator.kt:428 */
14131         -
        }
14132         -
        /* ServerBuilderGenerator.kt:331 */
14133         -
        #[allow(missing_docs)] // documentation missing in model
14134         -
                               /* ServerBuilderGenerator.kt:343 */
14135         -
        pub fn byte_value(mut self, input: ::std::option::Option<i8>) -> Self {
14136  13582   
            /* ServerBuilderGenerator.kt:344 */
14137         -
            self.byte_value =
       13583  +
            self.sparse_short_list =
14138  13584   
                /* ServerBuilderGenerator.kt:376 */input
14139  13585   
            /* ServerBuilderGenerator.kt:344 */;
14140  13586   
            self
14141  13587   
            /* ServerBuilderGenerator.kt:343 */
14142  13588   
        }
14143  13589   
        /* ServerBuilderGenerator.kt:426 */
14144  13590   
        #[allow(missing_docs)] // documentation missing in model
14145  13591   
                               /* ServerBuilderGenerator.kt:428 */
14146         -
        pub(crate) fn set_byte_value(
       13592  +
        pub(crate) fn set_sparse_short_list(
14147  13593   
            mut self,
14148         -
            input: Option<impl ::std::convert::Into<i8>>,
       13594  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::option::Option<i16>>>>,
14149  13595   
        ) -> Self {
14150  13596   
            /* ServerBuilderGenerator.kt:429 */
14151         -
            self.byte_value = input.map(|v| v.into());
       13597  +
            self.sparse_short_list = input.map(|v| v.into());
14152  13598   
            self
14153  13599   
            /* ServerBuilderGenerator.kt:428 */
14154  13600   
        }
       13601  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`SparseJsonListsInput`](crate::input::SparseJsonListsInput).
       13602  +
        /* ServerBuilderGenerator.kt:271 */
       13603  +
        pub fn build(self) -> crate::input::SparseJsonListsInput {
       13604  +
            self.build_enforcing_all_constraints()
       13605  +
        }
       13606  +
        /* ServerBuilderGenerator.kt:283 */
       13607  +
        fn build_enforcing_all_constraints(self) -> crate::input::SparseJsonListsInput {
       13608  +
            /* ServerBuilderGenerator.kt:542 */
       13609  +
            crate::input::SparseJsonListsInput {
       13610  +
                /* ServerBuilderGenerator.kt:546 */
       13611  +
                sparse_string_list: self.sparse_string_list,
       13612  +
                /* ServerBuilderGenerator.kt:546 */
       13613  +
                sparse_short_list: self.sparse_short_list,
       13614  +
                /* ServerBuilderGenerator.kt:542 */
       13615  +
            }
       13616  +
            /* ServerBuilderGenerator.kt:283 */
       13617  +
        }
       13618  +
        /* ServerBuilderGenerator.kt:215 */
       13619  +
    }
       13620  +
       13621  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       13622  +
}
       13623  +
/// /* ServerBuilderGenerator.kt:171 */See [`JsonMapsInput`](crate::input::JsonMapsInput).
       13624  +
pub mod json_maps_input {
       13625  +
       13626  +
    /* RustType.kt:534 */
       13627  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       13628  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       13629  +
    /* RustType.kt:534 */
       13630  +
    #[non_exhaustive]
       13631  +
    /* ServerBuilderConstraintViolations.kt:75 */
       13632  +
    #[allow(clippy::enum_variant_names)]
       13633  +
    pub enum ConstraintViolation {
       13634  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `dense_set_map` when building `JsonMapsInput`.
       13635  +
        /* RustType.kt:534 */
       13636  +
        #[doc(hidden)]
       13637  +
        /* ServerBuilderConstraintViolations.kt:165 */
       13638  +
        DenseSetMap(crate::model::dense_set_map::ConstraintViolation),
       13639  +
        /* ServerBuilderConstraintViolations.kt:75 */
       13640  +
    }
       13641  +
    /* ServerBuilderConstraintViolations.kt:116 */
       13642  +
    impl ::std::fmt::Display for ConstraintViolation {
       13643  +
        /* ServerBuilderConstraintViolations.kt:117 */
       13644  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       13645  +
            /* ServerBuilderConstraintViolations.kt:118 */
       13646  +
            match self {
       13647  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::DenseSetMap(_) => write!(f, "constraint violation occurred building member `dense_set_map` when building `JsonMapsInput`"),
       13648  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       13649  +
            /* ServerBuilderConstraintViolations.kt:117 */
       13650  +
        }
       13651  +
        /* ServerBuilderConstraintViolations.kt:116 */
       13652  +
    }
       13653  +
    /* ServerBuilderConstraintViolations.kt:83 */
       13654  +
    impl ::std::error::Error for ConstraintViolation {}
       13655  +
    /* ServerBuilderConstraintViolations.kt:172 */
       13656  +
    impl ConstraintViolation {
       13657  +
        pub(crate) fn as_validation_exception_field(
       13658  +
            self,
       13659  +
            path: ::std::string::String,
       13660  +
        ) -> crate::model::ValidationExceptionField {
       13661  +
            match self {
       13662  +
                ConstraintViolation::DenseSetMap(inner) => {
       13663  +
                    inner.as_validation_exception_field(path + "/denseSetMap")
       13664  +
                }
       13665  +
            }
       13666  +
        }
       13667  +
    }
       13668  +
    /* ServerBuilderGenerator.kt:234 */
       13669  +
    impl ::std::convert::From<ConstraintViolation>
       13670  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       13671  +
    {
       13672  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       13673  +
            let first_validation_exception_field =
       13674  +
                constraint_violation.as_validation_exception_field("".to_owned());
       13675  +
            let validation_exception = crate::error::ValidationException {
       13676  +
                message: format!(
       13677  +
                    "1 validation error detected. {}",
       13678  +
                    &first_validation_exception_field.message
       13679  +
                ),
       13680  +
                field_list: Some(vec![first_validation_exception_field]),
       13681  +
            };
       13682  +
            Self::ConstraintViolation(
       13683  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       13684  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       13685  +
                            )
       13686  +
        }
       13687  +
    }
       13688  +
    /* ServerBuilderGenerator.kt:244 */
       13689  +
    impl ::std::convert::From<Builder>
       13690  +
        for crate::constrained::MaybeConstrained<crate::input::JsonMapsInput>
       13691  +
    {
       13692  +
        fn from(builder: Builder) -> Self {
       13693  +
            Self::Unconstrained(builder)
       13694  +
        }
       13695  +
    }
       13696  +
    /* ServerBuilderGenerator.kt:446 */
       13697  +
    impl ::std::convert::TryFrom<Builder> for crate::input::JsonMapsInput {
       13698  +
        type Error = ConstraintViolation;
       13699  +
       13700  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       13701  +
            builder.build()
       13702  +
        }
       13703  +
    }
       13704  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonMapsInput`](crate::input::JsonMapsInput).
       13705  +
    /* RustType.kt:534 */
       13706  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       13707  +
    /* ServerBuilderGenerator.kt:211 */
       13708  +
    pub struct Builder {
       13709  +
        /* ServerBuilderGenerator.kt:308 */
       13710  +
        pub(crate) dense_struct_map: ::std::option::Option<
       13711  +
            ::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
       13712  +
        >,
       13713  +
        /* ServerBuilderGenerator.kt:308 */
       13714  +
        pub(crate) dense_number_map:
       13715  +
            ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
       13716  +
        /* ServerBuilderGenerator.kt:308 */
       13717  +
        pub(crate) dense_boolean_map:
       13718  +
            ::std::option::Option<::std::collections::HashMap<::std::string::String, bool>>,
       13719  +
        /* ServerBuilderGenerator.kt:308 */
       13720  +
        pub(crate) dense_string_map: ::std::option::Option<
       13721  +
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       13722  +
        >,
       13723  +
        /* ServerBuilderGenerator.kt:308 */
       13724  +
        pub(crate) dense_set_map: ::std::option::Option<
       13725  +
            crate::constrained::MaybeConstrained<
       13726  +
                crate::constrained::dense_set_map_constrained::DenseSetMapConstrained,
       13727  +
            >,
       13728  +
        >,
       13729  +
        /* ServerBuilderGenerator.kt:211 */
       13730  +
    }
       13731  +
    /* ServerBuilderGenerator.kt:215 */
       13732  +
    impl Builder {
14155  13733   
        /* ServerBuilderGenerator.kt:331 */
14156  13734   
        #[allow(missing_docs)] // documentation missing in model
14157  13735   
                               /* ServerBuilderGenerator.kt:343 */
14158         -
        pub fn short_value(mut self, input: ::std::option::Option<i16>) -> Self {
       13736  +
        pub fn dense_struct_map(
       13737  +
            mut self,
       13738  +
            input: ::std::option::Option<
       13739  +
                ::std::collections::HashMap<::std::string::String, crate::model::GreetingStruct>,
       13740  +
            >,
       13741  +
        ) -> Self {
14159  13742   
            /* ServerBuilderGenerator.kt:344 */
14160         -
            self.short_value =
       13743  +
            self.dense_struct_map =
14161  13744   
                /* ServerBuilderGenerator.kt:376 */input
14162  13745   
            /* ServerBuilderGenerator.kt:344 */;
14163  13746   
            self
14164  13747   
            /* ServerBuilderGenerator.kt:343 */
14165  13748   
        }
14166  13749   
        /* ServerBuilderGenerator.kt:426 */
14167  13750   
        #[allow(missing_docs)] // documentation missing in model
14168  13751   
                               /* ServerBuilderGenerator.kt:428 */
14169         -
        pub(crate) fn set_short_value(
       13752  +
        pub(crate) fn set_dense_struct_map(
14170  13753   
            mut self,
14171         -
            input: Option<impl ::std::convert::Into<i16>>,
       13754  +
            input: Option<
       13755  +
                impl ::std::convert::Into<
       13756  +
                    ::std::collections::HashMap<
       13757  +
                        ::std::string::String,
       13758  +
                        crate::model::GreetingStruct,
       13759  +
                    >,
       13760  +
                >,
       13761  +
            >,
14172  13762   
        ) -> Self {
14173  13763   
            /* ServerBuilderGenerator.kt:429 */
14174         -
            self.short_value = input.map(|v| v.into());
       13764  +
            self.dense_struct_map = input.map(|v| v.into());
14175  13765   
            self
14176  13766   
            /* ServerBuilderGenerator.kt:428 */
14177  13767   
        }
14178  13768   
        /* ServerBuilderGenerator.kt:331 */
14179  13769   
        #[allow(missing_docs)] // documentation missing in model
14180  13770   
                               /* ServerBuilderGenerator.kt:343 */
14181         -
        pub fn integer_value(mut self, input: ::std::option::Option<i32>) -> Self {
       13771  +
        pub fn dense_number_map(
       13772  +
            mut self,
       13773  +
            input: ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
       13774  +
        ) -> Self {
14182  13775   
            /* ServerBuilderGenerator.kt:344 */
14183         -
            self.integer_value =
       13776  +
            self.dense_number_map =
14184  13777   
                /* ServerBuilderGenerator.kt:376 */input
14185  13778   
            /* ServerBuilderGenerator.kt:344 */;
14186  13779   
            self
14187  13780   
            /* ServerBuilderGenerator.kt:343 */
14188  13781   
        }
14189  13782   
        /* ServerBuilderGenerator.kt:426 */
14190  13783   
        #[allow(missing_docs)] // documentation missing in model
14191  13784   
                               /* ServerBuilderGenerator.kt:428 */
14192         -
        pub(crate) fn set_integer_value(
       13785  +
        pub(crate) fn set_dense_number_map(
14193  13786   
            mut self,
14194         -
            input: Option<impl ::std::convert::Into<i32>>,
       13787  +
            input: Option<
       13788  +
                impl ::std::convert::Into<::std::collections::HashMap<::std::string::String, i32>>,
       13789  +
            >,
14195  13790   
        ) -> Self {
14196  13791   
            /* ServerBuilderGenerator.kt:429 */
14197         -
            self.integer_value = input.map(|v| v.into());
       13792  +
            self.dense_number_map = input.map(|v| v.into());
14198  13793   
            self
14199  13794   
            /* ServerBuilderGenerator.kt:428 */
14200  13795   
        }
14201  13796   
        /* ServerBuilderGenerator.kt:331 */
14202  13797   
        #[allow(missing_docs)] // documentation missing in model
14203  13798   
                               /* ServerBuilderGenerator.kt:343 */
14204         -
        pub fn long_value(mut self, input: ::std::option::Option<i64>) -> Self {
       13799  +
        pub fn dense_boolean_map(
       13800  +
            mut self,
       13801  +
            input: ::std::option::Option<::std::collections::HashMap<::std::string::String, bool>>,
       13802  +
        ) -> Self {
14205  13803   
            /* ServerBuilderGenerator.kt:344 */
14206         -
            self.long_value =
       13804  +
            self.dense_boolean_map =
14207  13805   
                /* ServerBuilderGenerator.kt:376 */input
14208  13806   
            /* ServerBuilderGenerator.kt:344 */;
14209  13807   
            self
14210  13808   
            /* ServerBuilderGenerator.kt:343 */
14211  13809   
        }
14212  13810   
        /* ServerBuilderGenerator.kt:426 */
14213  13811   
        #[allow(missing_docs)] // documentation missing in model
14214  13812   
                               /* ServerBuilderGenerator.kt:428 */
14215         -
        pub(crate) fn set_long_value(
       13813  +
        pub(crate) fn set_dense_boolean_map(
14216  13814   
            mut self,
14217         -
            input: Option<impl ::std::convert::Into<i64>>,
       13815  +
            input: Option<
       13816  +
                impl ::std::convert::Into<::std::collections::HashMap<::std::string::String, bool>>,
       13817  +
            >,
14218  13818   
        ) -> Self {
14219  13819   
            /* ServerBuilderGenerator.kt:429 */
14220         -
            self.long_value = input.map(|v| v.into());
       13820  +
            self.dense_boolean_map = input.map(|v| v.into());
14221  13821   
            self
14222  13822   
            /* ServerBuilderGenerator.kt:428 */
14223  13823   
        }
14224  13824   
        /* ServerBuilderGenerator.kt:331 */
14225  13825   
        #[allow(missing_docs)] // documentation missing in model
14226  13826   
                               /* ServerBuilderGenerator.kt:343 */
14227         -
        pub fn float_value(mut self, input: ::std::option::Option<f32>) -> Self {
       13827  +
        pub fn dense_string_map(
       13828  +
            mut self,
       13829  +
            input: ::std::option::Option<
       13830  +
                ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       13831  +
            >,
       13832  +
        ) -> Self {
14228  13833   
            /* ServerBuilderGenerator.kt:344 */
14229         -
            self.float_value =
       13834  +
            self.dense_string_map =
14230  13835   
                /* ServerBuilderGenerator.kt:376 */input
14231  13836   
            /* ServerBuilderGenerator.kt:344 */;
14232  13837   
            self
14233  13838   
            /* ServerBuilderGenerator.kt:343 */
14234  13839   
        }
14235  13840   
        /* ServerBuilderGenerator.kt:426 */
14236  13841   
        #[allow(missing_docs)] // documentation missing in model
14237  13842   
                               /* ServerBuilderGenerator.kt:428 */
14238         -
        pub(crate) fn set_float_value(
       13843  +
        pub(crate) fn set_dense_string_map(
14239  13844   
            mut self,
14240         -
            input: Option<impl ::std::convert::Into<f32>>,
       13845  +
            input: Option<
       13846  +
                impl ::std::convert::Into<
       13847  +
                    ::std::collections::HashMap<::std::string::String, ::std::string::String>,
       13848  +
                >,
       13849  +
            >,
14241  13850   
        ) -> Self {
14242  13851   
            /* ServerBuilderGenerator.kt:429 */
14243         -
            self.float_value = input.map(|v| v.into());
       13852  +
            self.dense_string_map = input.map(|v| v.into());
14244  13853   
            self
14245  13854   
            /* ServerBuilderGenerator.kt:428 */
14246  13855   
        }
14247  13856   
        /* ServerBuilderGenerator.kt:331 */
14248  13857   
        #[allow(missing_docs)] // documentation missing in model
14249  13858   
                               /* ServerBuilderGenerator.kt:343 */
14250         -
        pub fn double_value(mut self, input: ::std::option::Option<f64>) -> Self {
       13859  +
        pub fn dense_set_map(
       13860  +
            mut self,
       13861  +
            input: ::std::option::Option<
       13862  +
                ::std::collections::HashMap<::std::string::String, crate::model::StringSet>,
       13863  +
            >,
       13864  +
        ) -> Self {
14251  13865   
            /* ServerBuilderGenerator.kt:344 */
14252         -
            self.double_value =
14253         -
                /* ServerBuilderGenerator.kt:376 */input
       13866  +
            self.dense_set_map =
       13867  +
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
       13868  +
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
       13869  +
                /* ServerBuilderGenerator.kt:363 */)
14254  13870   
            /* ServerBuilderGenerator.kt:344 */;
14255  13871   
            self
14256  13872   
            /* ServerBuilderGenerator.kt:343 */
14257  13873   
        }
14258  13874   
        /* ServerBuilderGenerator.kt:426 */
14259  13875   
        #[allow(missing_docs)] // documentation missing in model
14260  13876   
                               /* ServerBuilderGenerator.kt:428 */
14261         -
        pub(crate) fn set_double_value(
       13877  +
        pub(crate) fn set_dense_set_map(
14262  13878   
            mut self,
14263         -
            input: Option<impl ::std::convert::Into<f64>>,
       13879  +
            input: Option<
       13880  +
                impl ::std::convert::Into<
       13881  +
                    crate::constrained::MaybeConstrained<
       13882  +
                        crate::constrained::dense_set_map_constrained::DenseSetMapConstrained,
       13883  +
                    >,
       13884  +
                >,
       13885  +
            >,
14264  13886   
        ) -> Self {
14265  13887   
            /* ServerBuilderGenerator.kt:429 */
14266         -
            self.double_value = input.map(|v| v.into());
       13888  +
            self.dense_set_map = input.map(|v| v.into());
14267  13889   
            self
14268  13890   
            /* ServerBuilderGenerator.kt:428 */
14269  13891   
        }
14270         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`SimpleScalarPropertiesInput`](crate::input::SimpleScalarPropertiesInput).
       13892  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonMapsInput`](crate::input::JsonMapsInput).
       13893  +
        /// /* ServerBuilderGenerator.kt:260 */
       13894  +
        /// The builder fails to construct a [`JsonMapsInput`](crate::input::JsonMapsInput) if a [`ConstraintViolation`] occurs.
       13895  +
        ///
14271  13896   
        /* ServerBuilderGenerator.kt:271 */
14272         -
        pub fn build(self) -> crate::input::SimpleScalarPropertiesInput {
       13897  +
        pub fn build(self) -> Result<crate::input::JsonMapsInput, ConstraintViolation> {
14273  13898   
            self.build_enforcing_all_constraints()
14274  13899   
        }
14275  13900   
        /* ServerBuilderGenerator.kt:283 */
14276         -
        fn build_enforcing_all_constraints(self) -> crate::input::SimpleScalarPropertiesInput {
       13901  +
        fn build_enforcing_all_constraints(
       13902  +
            self,
       13903  +
        ) -> Result<crate::input::JsonMapsInput, ConstraintViolation> {
       13904  +
            /* ServerBuilderGenerator.kt:287 */
       13905  +
            Ok(
14277  13906   
                /* ServerBuilderGenerator.kt:542 */
14278         -
            crate::input::SimpleScalarPropertiesInput {
14279         -
                /* ServerBuilderGenerator.kt:546 */
14280         -
                foo: self.foo,
14281         -
                /* ServerBuilderGenerator.kt:546 */
14282         -
                string_value: self.string_value,
14283         -
                /* ServerBuilderGenerator.kt:546 */
14284         -
                true_boolean_value: self.true_boolean_value,
14285         -
                /* ServerBuilderGenerator.kt:546 */
14286         -
                false_boolean_value: self.false_boolean_value,
14287         -
                /* ServerBuilderGenerator.kt:546 */
14288         -
                byte_value: self.byte_value,
       13907  +
                crate::input::JsonMapsInput {
14289  13908   
                    /* ServerBuilderGenerator.kt:546 */
14290         -
                short_value: self.short_value,
       13909  +
                    dense_struct_map: self.dense_struct_map,
14291  13910   
                    /* ServerBuilderGenerator.kt:546 */
14292         -
                integer_value: self.integer_value,
       13911  +
                    dense_number_map: self.dense_number_map,
14293  13912   
                    /* ServerBuilderGenerator.kt:546 */
14294         -
                long_value: self.long_value,
       13913  +
                    dense_boolean_map: self.dense_boolean_map,
14295  13914   
                    /* ServerBuilderGenerator.kt:546 */
14296         -
                float_value: self.float_value,
       13915  +
                    dense_string_map: self.dense_string_map,
14297  13916   
                    /* ServerBuilderGenerator.kt:546 */
14298         -
                double_value: self.double_value,
       13917  +
                    dense_set_map: self
       13918  +
                        .dense_set_map
       13919  +
                        /* ServerBuilderGenerator.kt:602 */
       13920  +
                        .map(|v| match v {
       13921  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       13922  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       13923  +
                        })
       13924  +
                        /* ServerBuilderGenerator.kt:614 */
       13925  +
                        .map(|res| {
       13926  +
                            res.map(|v| v.into())
       13927  +
                                .map_err(ConstraintViolation::DenseSetMap)
       13928  +
                        })
       13929  +
                        .transpose()?,
14299  13930   
                    /* ServerBuilderGenerator.kt:542 */
14300         -
            }
       13931  +
                }, /* ServerBuilderGenerator.kt:287 */
       13932  +
            )
14301  13933   
            /* ServerBuilderGenerator.kt:283 */
14302  13934   
        }
14303  13935   
        /* ServerBuilderGenerator.kt:215 */
14304  13936   
    }
14305  13937   
14306  13938   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
14307  13939   
}
14308         -
/// /* ServerBuilderGenerator.kt:171 */See [`GreetingWithErrorsInput`](crate::input::GreetingWithErrorsInput).
14309         -
pub mod greeting_with_errors_input {
       13940  +
/// /* ServerBuilderGenerator.kt:171 */See [`SparseJsonMapsInput`](crate::input::SparseJsonMapsInput).
       13941  +
pub mod sparse_json_maps_input {
14310  13942   
14311         -
    /* ServerBuilderGenerator.kt:461 */
14312         -
    impl ::std::convert::From<Builder> for crate::input::GreetingWithErrorsInput {
       13943  +
    /* RustType.kt:534 */
       13944  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       13945  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       13946  +
    /* RustType.kt:534 */
       13947  +
    #[non_exhaustive]
       13948  +
    /* ServerBuilderConstraintViolations.kt:75 */
       13949  +
    #[allow(clippy::enum_variant_names)]
       13950  +
    pub enum ConstraintViolation {
       13951  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `sparse_set_map` when building `SparseJsonMapsInput`.
       13952  +
        /* RustType.kt:534 */
       13953  +
        #[doc(hidden)]
       13954  +
        /* ServerBuilderConstraintViolations.kt:165 */
       13955  +
        SparseSetMap(crate::model::sparse_set_map::ConstraintViolation),
       13956  +
        /* ServerBuilderConstraintViolations.kt:75 */
       13957  +
    }
       13958  +
    /* ServerBuilderConstraintViolations.kt:116 */
       13959  +
    impl ::std::fmt::Display for ConstraintViolation {
       13960  +
        /* ServerBuilderConstraintViolations.kt:117 */
       13961  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       13962  +
            /* ServerBuilderConstraintViolations.kt:118 */
       13963  +
            match self {
       13964  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::SparseSetMap(_) => write!(f, "constraint violation occurred building member `sparse_set_map` when building `SparseJsonMapsInput`"),
       13965  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       13966  +
            /* ServerBuilderConstraintViolations.kt:117 */
       13967  +
        }
       13968  +
        /* ServerBuilderConstraintViolations.kt:116 */
       13969  +
    }
       13970  +
    /* ServerBuilderConstraintViolations.kt:83 */
       13971  +
    impl ::std::error::Error for ConstraintViolation {}
       13972  +
    /* ServerBuilderConstraintViolations.kt:172 */
       13973  +
    impl ConstraintViolation {
       13974  +
        pub(crate) fn as_validation_exception_field(
       13975  +
            self,
       13976  +
            path: ::std::string::String,
       13977  +
        ) -> crate::model::ValidationExceptionField {
       13978  +
            match self {
       13979  +
                ConstraintViolation::SparseSetMap(inner) => {
       13980  +
                    inner.as_validation_exception_field(path + "/sparseSetMap")
       13981  +
                }
       13982  +
            }
       13983  +
        }
       13984  +
    }
       13985  +
    /* ServerBuilderGenerator.kt:234 */
       13986  +
    impl ::std::convert::From<ConstraintViolation>
       13987  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       13988  +
    {
       13989  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       13990  +
            let first_validation_exception_field =
       13991  +
                constraint_violation.as_validation_exception_field("".to_owned());
       13992  +
            let validation_exception = crate::error::ValidationException {
       13993  +
                message: format!(
       13994  +
                    "1 validation error detected. {}",
       13995  +
                    &first_validation_exception_field.message
       13996  +
                ),
       13997  +
                field_list: Some(vec![first_validation_exception_field]),
       13998  +
            };
       13999  +
            Self::ConstraintViolation(
       14000  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       14001  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       14002  +
                            )
       14003  +
        }
       14004  +
    }
       14005  +
    /* ServerBuilderGenerator.kt:244 */
       14006  +
    impl ::std::convert::From<Builder>
       14007  +
        for crate::constrained::MaybeConstrained<crate::input::SparseJsonMapsInput>
       14008  +
    {
14313  14009   
        fn from(builder: Builder) -> Self {
       14010  +
            Self::Unconstrained(builder)
       14011  +
        }
       14012  +
    }
       14013  +
    /* ServerBuilderGenerator.kt:446 */
       14014  +
    impl ::std::convert::TryFrom<Builder> for crate::input::SparseJsonMapsInput {
       14015  +
        type Error = ConstraintViolation;
       14016  +
       14017  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
14314  14018   
            builder.build()
14315  14019   
        }
14316  14020   
    }
14317         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`GreetingWithErrorsInput`](crate::input::GreetingWithErrorsInput).
       14021  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`SparseJsonMapsInput`](crate::input::SparseJsonMapsInput).
14318  14022   
    /* RustType.kt:534 */
14319  14023   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
14320  14024   
    /* ServerBuilderGenerator.kt:211 */
14321         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       14025  +
    pub struct Builder {
       14026  +
        /* ServerBuilderGenerator.kt:308 */
       14027  +
        pub(crate) sparse_struct_map: ::std::option::Option<
       14028  +
            ::std::collections::HashMap<
       14029  +
                ::std::string::String,
       14030  +
                ::std::option::Option<crate::model::GreetingStruct>,
       14031  +
            >,
       14032  +
        >,
       14033  +
        /* ServerBuilderGenerator.kt:308 */
       14034  +
        pub(crate) sparse_number_map: ::std::option::Option<
       14035  +
            ::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
       14036  +
        >,
       14037  +
        /* ServerBuilderGenerator.kt:308 */
       14038  +
        pub(crate) sparse_boolean_map: ::std::option::Option<
       14039  +
            ::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
       14040  +
        >,
       14041  +
        /* ServerBuilderGenerator.kt:308 */
       14042  +
        pub(crate) sparse_string_map: ::std::option::Option<
       14043  +
            ::std::collections::HashMap<
       14044  +
                ::std::string::String,
       14045  +
                ::std::option::Option<::std::string::String>,
       14046  +
            >,
       14047  +
        >,
       14048  +
        /* ServerBuilderGenerator.kt:308 */
       14049  +
        pub(crate) sparse_set_map: ::std::option::Option<
       14050  +
            crate::constrained::MaybeConstrained<
       14051  +
                crate::constrained::sparse_set_map_constrained::SparseSetMapConstrained,
       14052  +
            >,
       14053  +
        >,
       14054  +
        /* ServerBuilderGenerator.kt:211 */
       14055  +
    }
14322  14056   
    /* ServerBuilderGenerator.kt:215 */
14323  14057   
    impl Builder {
14324         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`GreetingWithErrorsInput`](crate::input::GreetingWithErrorsInput).
14325         -
        /* ServerBuilderGenerator.kt:271 */
14326         -
        pub fn build(self) -> crate::input::GreetingWithErrorsInput {
14327         -
            self.build_enforcing_all_constraints()
       14058  +
        /* ServerBuilderGenerator.kt:331 */
       14059  +
        #[allow(missing_docs)] // documentation missing in model
       14060  +
                               /* ServerBuilderGenerator.kt:343 */
       14061  +
        pub fn sparse_struct_map(
       14062  +
            mut self,
       14063  +
            input: ::std::option::Option<
       14064  +
                ::std::collections::HashMap<
       14065  +
                    ::std::string::String,
       14066  +
                    ::std::option::Option<crate::model::GreetingStruct>,
       14067  +
                >,
       14068  +
            >,
       14069  +
        ) -> Self {
       14070  +
            /* ServerBuilderGenerator.kt:344 */
       14071  +
            self.sparse_struct_map =
       14072  +
                /* ServerBuilderGenerator.kt:376 */input
       14073  +
            /* ServerBuilderGenerator.kt:344 */;
       14074  +
            self
       14075  +
            /* ServerBuilderGenerator.kt:343 */
14328  14076   
        }
14329         -
        /* ServerBuilderGenerator.kt:283 */
14330         -
        fn build_enforcing_all_constraints(self) -> crate::input::GreetingWithErrorsInput {
14331         -
            /* ServerBuilderGenerator.kt:542 */
14332         -
            crate::input::GreetingWithErrorsInput {
14333         -
            /* ServerBuilderGenerator.kt:542 */}
14334         -
            /* ServerBuilderGenerator.kt:283 */
       14077  +
        /* ServerBuilderGenerator.kt:426 */
       14078  +
        #[allow(missing_docs)] // documentation missing in model
       14079  +
                               /* ServerBuilderGenerator.kt:428 */
       14080  +
        pub(crate) fn set_sparse_struct_map(
       14081  +
            mut self,
       14082  +
            input: Option<
       14083  +
                impl ::std::convert::Into<
       14084  +
                    ::std::collections::HashMap<
       14085  +
                        ::std::string::String,
       14086  +
                        ::std::option::Option<crate::model::GreetingStruct>,
       14087  +
                    >,
       14088  +
                >,
       14089  +
            >,
       14090  +
        ) -> Self {
       14091  +
            /* ServerBuilderGenerator.kt:429 */
       14092  +
            self.sparse_struct_map = input.map(|v| v.into());
       14093  +
            self
       14094  +
            /* ServerBuilderGenerator.kt:428 */
14335  14095   
        }
14336         -
        /* ServerBuilderGenerator.kt:215 */
       14096  +
        /* ServerBuilderGenerator.kt:331 */
       14097  +
        #[allow(missing_docs)] // documentation missing in model
       14098  +
                               /* ServerBuilderGenerator.kt:343 */
       14099  +
        pub fn sparse_number_map(
       14100  +
            mut self,
       14101  +
            input: ::std::option::Option<
       14102  +
                ::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
       14103  +
            >,
       14104  +
        ) -> Self {
       14105  +
            /* ServerBuilderGenerator.kt:344 */
       14106  +
            self.sparse_number_map =
       14107  +
                /* ServerBuilderGenerator.kt:376 */input
       14108  +
            /* ServerBuilderGenerator.kt:344 */;
       14109  +
            self
       14110  +
            /* ServerBuilderGenerator.kt:343 */
14337  14111   
        }
14338         -
14339         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
14340         -
}
14341         -
/// /* ServerBuilderGenerator.kt:171 */See [`StreamingTraitsWithMediaTypeInput`](crate::input::StreamingTraitsWithMediaTypeInput).
14342         -
pub mod streaming_traits_with_media_type_input {
14343         -
14344         -
    /* ServerBuilderGenerator.kt:461 */
14345         -
    impl ::std::convert::From<Builder> for crate::input::StreamingTraitsWithMediaTypeInput {
14346         -
        fn from(builder: Builder) -> Self {
14347         -
            builder.build()
       14112  +
        /* ServerBuilderGenerator.kt:426 */
       14113  +
        #[allow(missing_docs)] // documentation missing in model
       14114  +
                               /* ServerBuilderGenerator.kt:428 */
       14115  +
        pub(crate) fn set_sparse_number_map(
       14116  +
            mut self,
       14117  +
            input: Option<
       14118  +
                impl ::std::convert::Into<
       14119  +
                    ::std::collections::HashMap<::std::string::String, ::std::option::Option<i32>>,
       14120  +
                >,
       14121  +
            >,
       14122  +
        ) -> Self {
       14123  +
            /* ServerBuilderGenerator.kt:429 */
       14124  +
            self.sparse_number_map = input.map(|v| v.into());
       14125  +
            self
       14126  +
            /* ServerBuilderGenerator.kt:428 */
14348  14127   
        }
       14128  +
        /* ServerBuilderGenerator.kt:331 */
       14129  +
        #[allow(missing_docs)] // documentation missing in model
       14130  +
                               /* ServerBuilderGenerator.kt:343 */
       14131  +
        pub fn sparse_boolean_map(
       14132  +
            mut self,
       14133  +
            input: ::std::option::Option<
       14134  +
                ::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
       14135  +
            >,
       14136  +
        ) -> Self {
       14137  +
            /* ServerBuilderGenerator.kt:344 */
       14138  +
            self.sparse_boolean_map =
       14139  +
                /* ServerBuilderGenerator.kt:376 */input
       14140  +
            /* ServerBuilderGenerator.kt:344 */;
       14141  +
            self
       14142  +
            /* ServerBuilderGenerator.kt:343 */
14349  14143   
        }
14350         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`StreamingTraitsWithMediaTypeInput`](crate::input::StreamingTraitsWithMediaTypeInput).
14351         -
    /* RustType.kt:534 */
14352         -
    #[derive(::std::default::Default, ::std::fmt::Debug)]
14353         -
    /* ServerBuilderGenerator.kt:211 */
14354         -
    pub struct Builder {
14355         -
        /* ServerBuilderGenerator.kt:308 */
14356         -
        pub(crate) foo: ::std::option::Option<::std::string::String>,
14357         -
        /* ServerBuilderGenerator.kt:308 */
14358         -
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::byte_stream::ByteStream>,
14359         -
        /* ServerBuilderGenerator.kt:211 */
       14144  +
        /* ServerBuilderGenerator.kt:426 */
       14145  +
        #[allow(missing_docs)] // documentation missing in model
       14146  +
                               /* ServerBuilderGenerator.kt:428 */
       14147  +
        pub(crate) fn set_sparse_boolean_map(
       14148  +
            mut self,
       14149  +
            input: Option<
       14150  +
                impl ::std::convert::Into<
       14151  +
                    ::std::collections::HashMap<::std::string::String, ::std::option::Option<bool>>,
       14152  +
                >,
       14153  +
            >,
       14154  +
        ) -> Self {
       14155  +
            /* ServerBuilderGenerator.kt:429 */
       14156  +
            self.sparse_boolean_map = input.map(|v| v.into());
       14157  +
            self
       14158  +
            /* ServerBuilderGenerator.kt:428 */
14360  14159   
        }
14361         -
    /* ServerBuilderGenerator.kt:215 */
14362         -
    impl Builder {
14363  14160   
        /* ServerBuilderGenerator.kt:331 */
14364  14161   
        #[allow(missing_docs)] // documentation missing in model
14365  14162   
                               /* ServerBuilderGenerator.kt:343 */
14366         -
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       14163  +
        pub fn sparse_string_map(
       14164  +
            mut self,
       14165  +
            input: ::std::option::Option<
       14166  +
                ::std::collections::HashMap<
       14167  +
                    ::std::string::String,
       14168  +
                    ::std::option::Option<::std::string::String>,
       14169  +
                >,
       14170  +
            >,
       14171  +
        ) -> Self {
14367  14172   
            /* ServerBuilderGenerator.kt:344 */
14368         -
            self.foo =
       14173  +
            self.sparse_string_map =
14369  14174   
                /* ServerBuilderGenerator.kt:376 */input
14370  14175   
            /* ServerBuilderGenerator.kt:344 */;
14371  14176   
            self
14372  14177   
            /* ServerBuilderGenerator.kt:343 */
14373  14178   
        }
14374  14179   
        /* ServerBuilderGenerator.kt:426 */
14375  14180   
        #[allow(missing_docs)] // documentation missing in model
14376  14181   
                               /* ServerBuilderGenerator.kt:428 */
14377         -
        pub(crate) fn set_foo(
       14182  +
        pub(crate) fn set_sparse_string_map(
14378  14183   
            mut self,
14379         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       14184  +
            input: Option<
       14185  +
                impl ::std::convert::Into<
       14186  +
                    ::std::collections::HashMap<
       14187  +
                        ::std::string::String,
       14188  +
                        ::std::option::Option<::std::string::String>,
       14189  +
                    >,
       14190  +
                >,
       14191  +
            >,
14380  14192   
        ) -> Self {
14381  14193   
            /* ServerBuilderGenerator.kt:429 */
14382         -
            self.foo = input.map(|v| v.into());
       14194  +
            self.sparse_string_map = input.map(|v| v.into());
14383  14195   
            self
14384  14196   
            /* ServerBuilderGenerator.kt:428 */
14385  14197   
        }
14386  14198   
        /* ServerBuilderGenerator.kt:331 */
14387  14199   
        #[allow(missing_docs)] // documentation missing in model
14388  14200   
                               /* ServerBuilderGenerator.kt:343 */
14389         -
        pub fn blob(mut self, input: ::aws_smithy_types::byte_stream::ByteStream) -> Self {
       14201  +
        pub fn sparse_set_map(
       14202  +
            mut self,
       14203  +
            input: ::std::option::Option<
       14204  +
                ::std::collections::HashMap<
       14205  +
                    ::std::string::String,
       14206  +
                    ::std::option::Option<crate::model::StringSet>,
       14207  +
                >,
       14208  +
            >,
       14209  +
        ) -> Self {
14390  14210   
            /* ServerBuilderGenerator.kt:344 */
14391         -
            self.blob =
14392         -
                /* ServerBuilderGenerator.kt:345 */Some(
14393         -
                    /* ServerBuilderGenerator.kt:376 */input
14394         -
                /* ServerBuilderGenerator.kt:345 */)
       14211  +
            self.sparse_set_map =
       14212  +
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
       14213  +
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
       14214  +
                /* ServerBuilderGenerator.kt:363 */)
14395  14215   
            /* ServerBuilderGenerator.kt:344 */;
14396  14216   
            self
14397  14217   
            /* ServerBuilderGenerator.kt:343 */
14398  14218   
        }
14399  14219   
        /* ServerBuilderGenerator.kt:426 */
14400  14220   
        #[allow(missing_docs)] // documentation missing in model
14401  14221   
                               /* ServerBuilderGenerator.kt:428 */
14402         -
        pub(crate) fn set_blob(
       14222  +
        pub(crate) fn set_sparse_set_map(
14403  14223   
            mut self,
14404         -
            input: impl ::std::convert::Into<::aws_smithy_types::byte_stream::ByteStream>,
       14224  +
            input: Option<
       14225  +
                impl ::std::convert::Into<
       14226  +
                    crate::constrained::MaybeConstrained<
       14227  +
                        crate::constrained::sparse_set_map_constrained::SparseSetMapConstrained,
       14228  +
                    >,
       14229  +
                >,
       14230  +
            >,
14405  14231   
        ) -> Self {
14406  14232   
            /* ServerBuilderGenerator.kt:429 */
14407         -
            self.blob = Some(input.into());
       14233  +
            self.sparse_set_map = input.map(|v| v.into());
14408  14234   
            self
14409  14235   
            /* ServerBuilderGenerator.kt:428 */
14410  14236   
        }
14411         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`StreamingTraitsWithMediaTypeInput`](crate::input::StreamingTraitsWithMediaTypeInput).
       14237  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`SparseJsonMapsInput`](crate::input::SparseJsonMapsInput).
       14238  +
        /// /* ServerBuilderGenerator.kt:260 */
       14239  +
        /// The builder fails to construct a [`SparseJsonMapsInput`](crate::input::SparseJsonMapsInput) if a [`ConstraintViolation`] occurs.
       14240  +
        ///
14412  14241   
        /* ServerBuilderGenerator.kt:271 */
14413         -
        pub fn build(self) -> crate::input::StreamingTraitsWithMediaTypeInput {
       14242  +
        pub fn build(self) -> Result<crate::input::SparseJsonMapsInput, ConstraintViolation> {
14414  14243   
            self.build_enforcing_all_constraints()
14415  14244   
        }
14416  14245   
        /* ServerBuilderGenerator.kt:283 */
14417  14246   
        fn build_enforcing_all_constraints(
14418  14247   
            self,
14419         -
        ) -> crate::input::StreamingTraitsWithMediaTypeInput {
       14248  +
        ) -> Result<crate::input::SparseJsonMapsInput, ConstraintViolation> {
       14249  +
            /* ServerBuilderGenerator.kt:287 */
       14250  +
            Ok(
14420  14251   
                /* ServerBuilderGenerator.kt:542 */
14421         -
            crate::input::StreamingTraitsWithMediaTypeInput {
       14252  +
                crate::input::SparseJsonMapsInput {
14422  14253   
                    /* ServerBuilderGenerator.kt:546 */
14423         -
                foo: self.foo,
       14254  +
                    sparse_struct_map: self.sparse_struct_map,
14424  14255   
                    /* ServerBuilderGenerator.kt:546 */
14425         -
                blob: self
14426         -
                    .blob
14427         -
                    /* ServerBuilderGeneratorCommon.kt:95 */
14428         -
                    .unwrap_or_default(),
       14256  +
                    sparse_number_map: self.sparse_number_map,
       14257  +
                    /* ServerBuilderGenerator.kt:546 */
       14258  +
                    sparse_boolean_map: self.sparse_boolean_map,
       14259  +
                    /* ServerBuilderGenerator.kt:546 */
       14260  +
                    sparse_string_map: self.sparse_string_map,
       14261  +
                    /* ServerBuilderGenerator.kt:546 */
       14262  +
                    sparse_set_map: self
       14263  +
                        .sparse_set_map
       14264  +
                        /* ServerBuilderGenerator.kt:602 */
       14265  +
                        .map(|v| match v {
       14266  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       14267  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       14268  +
                        })
       14269  +
                        /* ServerBuilderGenerator.kt:614 */
       14270  +
                        .map(|res| {
       14271  +
                            res.map(|v| v.into())
       14272  +
                                .map_err(ConstraintViolation::SparseSetMap)
       14273  +
                        })
       14274  +
                        .transpose()?,
14429  14275   
                    /* ServerBuilderGenerator.kt:542 */
14430         -
            }
       14276  +
                }, /* ServerBuilderGenerator.kt:287 */
       14277  +
            )
14431  14278   
            /* ServerBuilderGenerator.kt:283 */
14432  14279   
        }
14433  14280   
        /* ServerBuilderGenerator.kt:215 */
14434  14281   
    }
14435  14282   
14436  14283   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
14437  14284   
}
14438         -
/// /* ServerBuilderGenerator.kt:171 */See [`StreamingTraitsRequireLengthInput`](crate::input::StreamingTraitsRequireLengthInput).
14439         -
pub mod streaming_traits_require_length_input {
       14285  +
/// /* ServerBuilderGenerator.kt:171 */See [`JsonBlobsInput`](crate::input::JsonBlobsInput).
       14286  +
pub mod json_blobs_input {
14440  14287   
14441  14288   
    /* ServerBuilderGenerator.kt:461 */
14442         -
    impl ::std::convert::From<Builder> for crate::input::StreamingTraitsRequireLengthInput {
       14289  +
    impl ::std::convert::From<Builder> for crate::input::JsonBlobsInput {
14443  14290   
        fn from(builder: Builder) -> Self {
14444  14291   
            builder.build()
14445  14292   
        }
14446  14293   
    }
14447         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`StreamingTraitsRequireLengthInput`](crate::input::StreamingTraitsRequireLengthInput).
       14294  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonBlobsInput`](crate::input::JsonBlobsInput).
14448  14295   
    /* RustType.kt:534 */
14449         -
    #[derive(::std::default::Default, ::std::fmt::Debug)]
       14296  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
14450  14297   
    /* ServerBuilderGenerator.kt:211 */
14451  14298   
    pub struct Builder {
14452  14299   
        /* ServerBuilderGenerator.kt:308 */
14453         -
        pub(crate) foo: ::std::option::Option<::std::string::String>,
14454         -
        /* ServerBuilderGenerator.kt:308 */
14455         -
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::byte_stream::ByteStream>,
       14300  +
        pub(crate) data: ::std::option::Option<::aws_smithy_types::Blob>,
14456  14301   
        /* ServerBuilderGenerator.kt:211 */
14457  14302   
    }
14458  14303   
    /* ServerBuilderGenerator.kt:215 */
14459  14304   
    impl Builder {
14460  14305   
        /* ServerBuilderGenerator.kt:331 */
14461  14306   
        #[allow(missing_docs)] // documentation missing in model
14462  14307   
                               /* ServerBuilderGenerator.kt:343 */
14463         -
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
14464         -
            /* ServerBuilderGenerator.kt:344 */
14465         -
            self.foo =
14466         -
                /* ServerBuilderGenerator.kt:376 */input
14467         -
            /* ServerBuilderGenerator.kt:344 */;
14468         -
            self
14469         -
            /* ServerBuilderGenerator.kt:343 */
14470         -
        }
14471         -
        /* ServerBuilderGenerator.kt:426 */
14472         -
        #[allow(missing_docs)] // documentation missing in model
14473         -
                               /* ServerBuilderGenerator.kt:428 */
14474         -
        pub(crate) fn set_foo(
14475         -
            mut self,
14476         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
14477         -
        ) -> Self {
14478         -
            /* ServerBuilderGenerator.kt:429 */
14479         -
            self.foo = input.map(|v| v.into());
14480         -
            self
14481         -
            /* ServerBuilderGenerator.kt:428 */
14482         -
        }
14483         -
        /* ServerBuilderGenerator.kt:331 */
14484         -
        #[allow(missing_docs)] // documentation missing in model
14485         -
                               /* ServerBuilderGenerator.kt:343 */
14486         -
        pub fn blob(mut self, input: ::aws_smithy_types::byte_stream::ByteStream) -> Self {
       14308  +
        pub fn data(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
14487  14309   
            /* ServerBuilderGenerator.kt:344 */
14488         -
            self.blob =
14489         -
                /* ServerBuilderGenerator.kt:345 */Some(
       14310  +
            self.data =
14490  14311   
                /* ServerBuilderGenerator.kt:376 */input
14491         -
                /* ServerBuilderGenerator.kt:345 */)
14492  14312   
            /* ServerBuilderGenerator.kt:344 */;
14493  14313   
            self
14494  14314   
            /* ServerBuilderGenerator.kt:343 */
14495  14315   
        }
14496  14316   
        /* ServerBuilderGenerator.kt:426 */
14497  14317   
        #[allow(missing_docs)] // documentation missing in model
14498  14318   
                               /* ServerBuilderGenerator.kt:428 */
14499         -
        pub(crate) fn set_blob(
       14319  +
        pub(crate) fn set_data(
14500  14320   
            mut self,
14501         -
            input: impl ::std::convert::Into<::aws_smithy_types::byte_stream::ByteStream>,
       14321  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
14502  14322   
        ) -> Self {
14503  14323   
            /* ServerBuilderGenerator.kt:429 */
14504         -
            self.blob = Some(input.into());
       14324  +
            self.data = input.map(|v| v.into());
14505  14325   
            self
14506  14326   
            /* ServerBuilderGenerator.kt:428 */
14507  14327   
        }
14508         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`StreamingTraitsRequireLengthInput`](crate::input::StreamingTraitsRequireLengthInput).
       14328  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonBlobsInput`](crate::input::JsonBlobsInput).
14509  14329   
        /* ServerBuilderGenerator.kt:271 */
14510         -
        pub fn build(self) -> crate::input::StreamingTraitsRequireLengthInput {
       14330  +
        pub fn build(self) -> crate::input::JsonBlobsInput {
14511  14331   
            self.build_enforcing_all_constraints()
14512  14332   
        }
14513  14333   
        /* ServerBuilderGenerator.kt:283 */
14514         -
        fn build_enforcing_all_constraints(
14515         -
            self,
14516         -
        ) -> crate::input::StreamingTraitsRequireLengthInput {
       14334  +
        fn build_enforcing_all_constraints(self) -> crate::input::JsonBlobsInput {
14517  14335   
            /* ServerBuilderGenerator.kt:542 */
14518         -
            crate::input::StreamingTraitsRequireLengthInput {
14519         -
                /* ServerBuilderGenerator.kt:546 */
14520         -
                foo: self.foo,
       14336  +
            crate::input::JsonBlobsInput {
14521  14337   
                /* ServerBuilderGenerator.kt:546 */
14522         -
                blob: self
14523         -
                    .blob
14524         -
                    /* ServerBuilderGeneratorCommon.kt:95 */
14525         -
                    .unwrap_or_default(),
       14338  +
                data: self.data,
14526  14339   
                /* ServerBuilderGenerator.kt:542 */
14527  14340   
            }
14528  14341   
            /* ServerBuilderGenerator.kt:283 */
14529  14342   
        }
14530  14343   
        /* ServerBuilderGenerator.kt:215 */
14531  14344   
    }
14532  14345   
14533  14346   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
14534         -
}
14535         -
/// /* ServerBuilderGenerator.kt:171 */See [`StreamingTraitsInput`](crate::input::StreamingTraitsInput).
14536         -
pub mod streaming_traits_input {
       14347  +
}
       14348  +
/// /* ServerBuilderGenerator.kt:171 */See [`DocumentTypeInput`](crate::input::DocumentTypeInput).
       14349  +
pub mod document_type_input {
14537  14350   
14538  14351   
    /* ServerBuilderGenerator.kt:461 */
14539         -
    impl ::std::convert::From<Builder> for crate::input::StreamingTraitsInput {
       14352  +
    impl ::std::convert::From<Builder> for crate::input::DocumentTypeInput {
14540  14353   
        fn from(builder: Builder) -> Self {
14541  14354   
            builder.build()
14542  14355   
        }
14543  14356   
    }
14544         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`StreamingTraitsInput`](crate::input::StreamingTraitsInput).
       14357  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`DocumentTypeInput`](crate::input::DocumentTypeInput).
14545  14358   
    /* RustType.kt:534 */
14546         -
    #[derive(::std::default::Default, ::std::fmt::Debug)]
       14359  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
14547  14360   
    /* ServerBuilderGenerator.kt:211 */
14548  14361   
    pub struct Builder {
14549  14362   
        /* ServerBuilderGenerator.kt:308 */
14550         -
        pub(crate) foo: ::std::option::Option<::std::string::String>,
       14363  +
        pub(crate) string_value: ::std::option::Option<::std::string::String>,
14551  14364   
        /* ServerBuilderGenerator.kt:308 */
14552         -
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::byte_stream::ByteStream>,
       14365  +
        pub(crate) document_value: ::std::option::Option<::aws_smithy_types::Document>,
14553  14366   
        /* ServerBuilderGenerator.kt:211 */
14554  14367   
    }
14555  14368   
    /* ServerBuilderGenerator.kt:215 */
14556  14369   
    impl Builder {
14557  14370   
        /* ServerBuilderGenerator.kt:331 */
14558  14371   
        #[allow(missing_docs)] // documentation missing in model
14559  14372   
                               /* ServerBuilderGenerator.kt:343 */
14560         -
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       14373  +
        pub fn string_value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
14561  14374   
            /* ServerBuilderGenerator.kt:344 */
14562         -
            self.foo =
       14375  +
            self.string_value =
14563  14376   
                /* ServerBuilderGenerator.kt:376 */input
14564  14377   
            /* ServerBuilderGenerator.kt:344 */;
14565  14378   
            self
14566  14379   
            /* ServerBuilderGenerator.kt:343 */
14567  14380   
        }
14568  14381   
        /* ServerBuilderGenerator.kt:426 */
14569  14382   
        #[allow(missing_docs)] // documentation missing in model
14570  14383   
                               /* ServerBuilderGenerator.kt:428 */
14571         -
        pub(crate) fn set_foo(
       14384  +
        pub(crate) fn set_string_value(
14572  14385   
            mut self,
14573  14386   
            input: Option<impl ::std::convert::Into<::std::string::String>>,
14574  14387   
        ) -> Self {
14575  14388   
            /* ServerBuilderGenerator.kt:429 */
14576         -
            self.foo = input.map(|v| v.into());
       14389  +
            self.string_value = input.map(|v| v.into());
14577  14390   
            self
14578  14391   
            /* ServerBuilderGenerator.kt:428 */
14579  14392   
        }
14580  14393   
        /* ServerBuilderGenerator.kt:331 */
14581  14394   
        #[allow(missing_docs)] // documentation missing in model
14582  14395   
                               /* ServerBuilderGenerator.kt:343 */
14583         -
        pub fn blob(mut self, input: ::aws_smithy_types::byte_stream::ByteStream) -> Self {
       14396  +
        pub fn document_value(
       14397  +
            mut self,
       14398  +
            input: ::std::option::Option<::aws_smithy_types::Document>,
       14399  +
        ) -> Self {
14584  14400   
            /* ServerBuilderGenerator.kt:344 */
14585         -
            self.blob =
14586         -
                /* ServerBuilderGenerator.kt:345 */Some(
       14401  +
            self.document_value =
14587  14402   
                /* ServerBuilderGenerator.kt:376 */input
14588         -
                /* ServerBuilderGenerator.kt:345 */)
14589  14403   
            /* ServerBuilderGenerator.kt:344 */;
14590  14404   
            self
14591  14405   
            /* ServerBuilderGenerator.kt:343 */
14592  14406   
        }
14593  14407   
        /* ServerBuilderGenerator.kt:426 */
14594  14408   
        #[allow(missing_docs)] // documentation missing in model
14595  14409   
                               /* ServerBuilderGenerator.kt:428 */
14596         -
        pub(crate) fn set_blob(
       14410  +
        pub(crate) fn set_document_value(
14597  14411   
            mut self,
14598         -
            input: impl ::std::convert::Into<::aws_smithy_types::byte_stream::ByteStream>,
       14412  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Document>>,
14599  14413   
        ) -> Self {
14600  14414   
            /* ServerBuilderGenerator.kt:429 */
14601         -
            self.blob = Some(input.into());
       14415  +
            self.document_value = input.map(|v| v.into());
14602  14416   
            self
14603  14417   
            /* ServerBuilderGenerator.kt:428 */
14604  14418   
        }
14605         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`StreamingTraitsInput`](crate::input::StreamingTraitsInput).
       14419  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`DocumentTypeInput`](crate::input::DocumentTypeInput).
14606  14420   
        /* ServerBuilderGenerator.kt:271 */
14607         -
        pub fn build(self) -> crate::input::StreamingTraitsInput {
       14421  +
        pub fn build(self) -> crate::input::DocumentTypeInput {
14608  14422   
            self.build_enforcing_all_constraints()
14609  14423   
        }
14610  14424   
        /* ServerBuilderGenerator.kt:283 */
14611         -
        fn build_enforcing_all_constraints(self) -> crate::input::StreamingTraitsInput {
       14425  +
        fn build_enforcing_all_constraints(self) -> crate::input::DocumentTypeInput {
14612  14426   
            /* ServerBuilderGenerator.kt:542 */
14613         -
            crate::input::StreamingTraitsInput {
       14427  +
            crate::input::DocumentTypeInput {
14614  14428   
                /* ServerBuilderGenerator.kt:546 */
14615         -
                foo: self.foo,
       14429  +
                string_value: self.string_value,
14616  14430   
                /* ServerBuilderGenerator.kt:546 */
14617         -
                blob: self
14618         -
                    .blob
14619         -
                    /* ServerBuilderGeneratorCommon.kt:95 */
14620         -
                    .unwrap_or_default(),
       14431  +
                document_value: self.document_value,
14621  14432   
                /* ServerBuilderGenerator.kt:542 */
14622  14433   
            }
14623  14434   
            /* ServerBuilderGenerator.kt:283 */
14624  14435   
        }
14625  14436   
        /* ServerBuilderGenerator.kt:215 */
14626  14437   
    }
14627  14438   
14628  14439   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
14629  14440   
}
14630         -
/// /* ServerBuilderGenerator.kt:171 */See [`ResponseCodeHttpFallbackInput`](crate::input::ResponseCodeHttpFallbackInput).
14631         -
pub mod response_code_http_fallback_input {
       14441  +
/// /* ServerBuilderGenerator.kt:171 */See [`DocumentTypeAsPayloadInput`](crate::input::DocumentTypeAsPayloadInput).
       14442  +
pub mod document_type_as_payload_input {
14632  14443   
14633  14444   
    /* ServerBuilderGenerator.kt:461 */
14634         -
    impl ::std::convert::From<Builder> for crate::input::ResponseCodeHttpFallbackInput {
       14445  +
    impl ::std::convert::From<Builder> for crate::input::DocumentTypeAsPayloadInput {
14635  14446   
        fn from(builder: Builder) -> Self {
14636  14447   
            builder.build()
14637  14448   
        }
14638  14449   
    }
14639         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`ResponseCodeHttpFallbackInput`](crate::input::ResponseCodeHttpFallbackInput).
       14450  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`DocumentTypeAsPayloadInput`](crate::input::DocumentTypeAsPayloadInput).
14640  14451   
    /* RustType.kt:534 */
14641  14452   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
14642  14453   
    /* ServerBuilderGenerator.kt:211 */
14643         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       14454  +
    pub struct Builder {
       14455  +
        /* ServerBuilderGenerator.kt:308 */
       14456  +
        pub(crate) document_value: ::std::option::Option<::aws_smithy_types::Document>,
       14457  +
        /* ServerBuilderGenerator.kt:211 */
       14458  +
    }
14644  14459   
    /* ServerBuilderGenerator.kt:215 */
14645  14460   
    impl Builder {
14646         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`ResponseCodeHttpFallbackInput`](crate::input::ResponseCodeHttpFallbackInput).
       14461  +
        /* ServerBuilderGenerator.kt:331 */
       14462  +
        #[allow(missing_docs)] // documentation missing in model
       14463  +
                               /* ServerBuilderGenerator.kt:343 */
       14464  +
        pub fn document_value(
       14465  +
            mut self,
       14466  +
            input: ::std::option::Option<::aws_smithy_types::Document>,
       14467  +
        ) -> Self {
       14468  +
            /* ServerBuilderGenerator.kt:344 */
       14469  +
            self.document_value =
       14470  +
                /* ServerBuilderGenerator.kt:376 */input
       14471  +
            /* ServerBuilderGenerator.kt:344 */;
       14472  +
            self
       14473  +
            /* ServerBuilderGenerator.kt:343 */
       14474  +
        }
       14475  +
        /* ServerBuilderGenerator.kt:426 */
       14476  +
        #[allow(missing_docs)] // documentation missing in model
       14477  +
                               /* ServerBuilderGenerator.kt:428 */
       14478  +
        pub(crate) fn set_document_value(
       14479  +
            mut self,
       14480  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Document>>,
       14481  +
        ) -> Self {
       14482  +
            /* ServerBuilderGenerator.kt:429 */
       14483  +
            self.document_value = input.map(|v| v.into());
       14484  +
            self
       14485  +
            /* ServerBuilderGenerator.kt:428 */
       14486  +
        }
       14487  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`DocumentTypeAsPayloadInput`](crate::input::DocumentTypeAsPayloadInput).
14647  14488   
        /* ServerBuilderGenerator.kt:271 */
14648         -
        pub fn build(self) -> crate::input::ResponseCodeHttpFallbackInput {
       14489  +
        pub fn build(self) -> crate::input::DocumentTypeAsPayloadInput {
14649  14490   
            self.build_enforcing_all_constraints()
14650  14491   
        }
14651  14492   
        /* ServerBuilderGenerator.kt:283 */
14652         -
        fn build_enforcing_all_constraints(self) -> crate::input::ResponseCodeHttpFallbackInput {
       14493  +
        fn build_enforcing_all_constraints(self) -> crate::input::DocumentTypeAsPayloadInput {
14653  14494   
            /* ServerBuilderGenerator.kt:542 */
14654         -
            crate::input::ResponseCodeHttpFallbackInput {
14655         -
            /* ServerBuilderGenerator.kt:542 */}
       14495  +
            crate::input::DocumentTypeAsPayloadInput {
       14496  +
                /* ServerBuilderGenerator.kt:546 */
       14497  +
                document_value: self.document_value,
       14498  +
                /* ServerBuilderGenerator.kt:542 */
       14499  +
            }
14656  14500   
            /* ServerBuilderGenerator.kt:283 */
14657  14501   
        }
14658  14502   
        /* ServerBuilderGenerator.kt:215 */
14659  14503   
    }
14660  14504   
14661  14505   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
14662  14506   
}
14663         -
/// /* ServerBuilderGenerator.kt:171 */See [`ResponseCodeRequiredInput`](crate::input::ResponseCodeRequiredInput).
14664         -
pub mod response_code_required_input {
       14507  +
/// /* ServerBuilderGenerator.kt:171 */See [`DocumentTypeAsMapValueInput`](crate::input::DocumentTypeAsMapValueInput).
       14508  +
pub mod document_type_as_map_value_input {
14665  14509   
14666  14510   
    /* ServerBuilderGenerator.kt:461 */
14667         -
    impl ::std::convert::From<Builder> for crate::input::ResponseCodeRequiredInput {
       14511  +
    impl ::std::convert::From<Builder> for crate::input::DocumentTypeAsMapValueInput {
14668  14512   
        fn from(builder: Builder) -> Self {
14669  14513   
            builder.build()
14670  14514   
        }
14671  14515   
    }
14672         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`ResponseCodeRequiredInput`](crate::input::ResponseCodeRequiredInput).
       14516  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`DocumentTypeAsMapValueInput`](crate::input::DocumentTypeAsMapValueInput).
14673  14517   
    /* RustType.kt:534 */
14674  14518   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
14675  14519   
    /* ServerBuilderGenerator.kt:211 */
14676         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       14520  +
    pub struct Builder {
       14521  +
        /* ServerBuilderGenerator.kt:308 */
       14522  +
        pub(crate) doc_valued_map: ::std::option::Option<
       14523  +
            ::std::collections::HashMap<::std::string::String, ::aws_smithy_types::Document>,
       14524  +
        >,
       14525  +
        /* ServerBuilderGenerator.kt:211 */
       14526  +
    }
14677  14527   
    /* ServerBuilderGenerator.kt:215 */
14678  14528   
    impl Builder {
14679         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`ResponseCodeRequiredInput`](crate::input::ResponseCodeRequiredInput).
       14529  +
        /* ServerBuilderGenerator.kt:331 */
       14530  +
        #[allow(missing_docs)] // documentation missing in model
       14531  +
                               /* ServerBuilderGenerator.kt:343 */
       14532  +
        pub fn doc_valued_map(
       14533  +
            mut self,
       14534  +
            input: ::std::option::Option<
       14535  +
                ::std::collections::HashMap<::std::string::String, ::aws_smithy_types::Document>,
       14536  +
            >,
       14537  +
        ) -> Self {
       14538  +
            /* ServerBuilderGenerator.kt:344 */
       14539  +
            self.doc_valued_map =
       14540  +
                /* ServerBuilderGenerator.kt:376 */input
       14541  +
            /* ServerBuilderGenerator.kt:344 */;
       14542  +
            self
       14543  +
            /* ServerBuilderGenerator.kt:343 */
       14544  +
        }
       14545  +
        /* ServerBuilderGenerator.kt:426 */
       14546  +
        #[allow(missing_docs)] // documentation missing in model
       14547  +
                               /* ServerBuilderGenerator.kt:428 */
       14548  +
        pub(crate) fn set_doc_valued_map(
       14549  +
            mut self,
       14550  +
            input: Option<
       14551  +
                impl ::std::convert::Into<
       14552  +
                    ::std::collections::HashMap<
       14553  +
                        ::std::string::String,
       14554  +
                        ::aws_smithy_types::Document,
       14555  +
                    >,
       14556  +
                >,
       14557  +
            >,
       14558  +
        ) -> Self {
       14559  +
            /* ServerBuilderGenerator.kt:429 */
       14560  +
            self.doc_valued_map = input.map(|v| v.into());
       14561  +
            self
       14562  +
            /* ServerBuilderGenerator.kt:428 */
       14563  +
        }
       14564  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`DocumentTypeAsMapValueInput`](crate::input::DocumentTypeAsMapValueInput).
14680  14565   
        /* ServerBuilderGenerator.kt:271 */
14681         -
        pub fn build(self) -> crate::input::ResponseCodeRequiredInput {
       14566  +
        pub fn build(self) -> crate::input::DocumentTypeAsMapValueInput {
14682  14567   
            self.build_enforcing_all_constraints()
14683  14568   
        }
14684  14569   
        /* ServerBuilderGenerator.kt:283 */
14685         -
        fn build_enforcing_all_constraints(self) -> crate::input::ResponseCodeRequiredInput {
       14570  +
        fn build_enforcing_all_constraints(self) -> crate::input::DocumentTypeAsMapValueInput {
14686  14571   
            /* ServerBuilderGenerator.kt:542 */
14687         -
            crate::input::ResponseCodeRequiredInput {
14688         -
            /* ServerBuilderGenerator.kt:542 */}
       14572  +
            crate::input::DocumentTypeAsMapValueInput {
       14573  +
                /* ServerBuilderGenerator.kt:546 */
       14574  +
                doc_valued_map: self.doc_valued_map,
       14575  +
                /* ServerBuilderGenerator.kt:542 */
       14576  +
            }
14689  14577   
            /* ServerBuilderGenerator.kt:283 */
14690  14578   
        }
14691  14579   
        /* ServerBuilderGenerator.kt:215 */
14692  14580   
    }
14693  14581   
14694  14582   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
14695  14583   
}
14696         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpResponseCodeInput`](crate::input::HttpResponseCodeInput).
14697         -
pub mod http_response_code_input {
       14584  +
/// /* ServerBuilderGenerator.kt:171 */See [`JsonUnionsInput`](crate::input::JsonUnionsInput).
       14585  +
pub mod json_unions_input {
14698  14586   
14699         -
    /* ServerBuilderGenerator.kt:461 */
14700         -
    impl ::std::convert::From<Builder> for crate::input::HttpResponseCodeInput {
       14587  +
    /* RustType.kt:534 */
       14588  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       14589  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       14590  +
    /* RustType.kt:534 */
       14591  +
    #[non_exhaustive]
       14592  +
    /* ServerBuilderConstraintViolations.kt:75 */
       14593  +
    #[allow(clippy::enum_variant_names)]
       14594  +
    pub enum ConstraintViolation {
       14595  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `contents` when building `JsonUnionsInput`.
       14596  +
        /* RustType.kt:534 */
       14597  +
        #[doc(hidden)]
       14598  +
        /* ServerBuilderConstraintViolations.kt:165 */
       14599  +
        Contents(crate::model::my_union::ConstraintViolation),
       14600  +
        /* ServerBuilderConstraintViolations.kt:75 */
       14601  +
    }
       14602  +
    /* ServerBuilderConstraintViolations.kt:116 */
       14603  +
    impl ::std::fmt::Display for ConstraintViolation {
       14604  +
        /* ServerBuilderConstraintViolations.kt:117 */
       14605  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       14606  +
            /* ServerBuilderConstraintViolations.kt:118 */
       14607  +
            match self {
       14608  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::Contents(_) => write!(f, "constraint violation occurred building member `contents` when building `JsonUnionsInput`"),
       14609  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       14610  +
            /* ServerBuilderConstraintViolations.kt:117 */
       14611  +
        }
       14612  +
        /* ServerBuilderConstraintViolations.kt:116 */
       14613  +
    }
       14614  +
    /* ServerBuilderConstraintViolations.kt:83 */
       14615  +
    impl ::std::error::Error for ConstraintViolation {}
       14616  +
    /* ServerBuilderConstraintViolations.kt:172 */
       14617  +
    impl ConstraintViolation {
       14618  +
        pub(crate) fn as_validation_exception_field(
       14619  +
            self,
       14620  +
            path: ::std::string::String,
       14621  +
        ) -> crate::model::ValidationExceptionField {
       14622  +
            match self {
       14623  +
                ConstraintViolation::Contents(inner) => {
       14624  +
                    inner.as_validation_exception_field(path + "/contents")
       14625  +
                }
       14626  +
            }
       14627  +
        }
       14628  +
    }
       14629  +
    /* ServerBuilderGenerator.kt:234 */
       14630  +
    impl ::std::convert::From<ConstraintViolation>
       14631  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       14632  +
    {
       14633  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       14634  +
            let first_validation_exception_field =
       14635  +
                constraint_violation.as_validation_exception_field("".to_owned());
       14636  +
            let validation_exception = crate::error::ValidationException {
       14637  +
                message: format!(
       14638  +
                    "1 validation error detected. {}",
       14639  +
                    &first_validation_exception_field.message
       14640  +
                ),
       14641  +
                field_list: Some(vec![first_validation_exception_field]),
       14642  +
            };
       14643  +
            Self::ConstraintViolation(
       14644  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       14645  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       14646  +
                            )
       14647  +
        }
       14648  +
    }
       14649  +
    /* ServerBuilderGenerator.kt:244 */
       14650  +
    impl ::std::convert::From<Builder>
       14651  +
        for crate::constrained::MaybeConstrained<crate::input::JsonUnionsInput>
       14652  +
    {
14701  14653   
        fn from(builder: Builder) -> Self {
       14654  +
            Self::Unconstrained(builder)
       14655  +
        }
       14656  +
    }
       14657  +
    /* ServerBuilderGenerator.kt:446 */
       14658  +
    impl ::std::convert::TryFrom<Builder> for crate::input::JsonUnionsInput {
       14659  +
        type Error = ConstraintViolation;
       14660  +
       14661  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
14702  14662   
            builder.build()
14703  14663   
        }
14704  14664   
    }
14705         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpResponseCodeInput`](crate::input::HttpResponseCodeInput).
       14665  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`JsonUnionsInput`](crate::input::JsonUnionsInput).
14706  14666   
    /* RustType.kt:534 */
14707  14667   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
14708  14668   
    /* ServerBuilderGenerator.kt:211 */
14709         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       14669  +
    pub struct Builder {
       14670  +
        /* ServerBuilderGenerator.kt:308 */
       14671  +
        pub(crate) contents:
       14672  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::MyUnion>>,
       14673  +
        /* ServerBuilderGenerator.kt:211 */
       14674  +
    }
14710  14675   
    /* ServerBuilderGenerator.kt:215 */
14711  14676   
    impl Builder {
14712         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpResponseCodeInput`](crate::input::HttpResponseCodeInput).
       14677  +
        /// /* ServerBuilderGenerator.kt:331 */A union with a representative set of types for members.
       14678  +
        /* ServerBuilderGenerator.kt:343 */
       14679  +
        pub fn contents(mut self, input: ::std::option::Option<crate::model::MyUnion>) -> Self {
       14680  +
            /* ServerBuilderGenerator.kt:344 */
       14681  +
            self.contents =
       14682  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
       14683  +
            /* ServerBuilderGenerator.kt:344 */;
       14684  +
            self
       14685  +
            /* ServerBuilderGenerator.kt:343 */
       14686  +
        }
       14687  +
        /// /* ServerBuilderGenerator.kt:426 */A union with a representative set of types for members.
       14688  +
        /* ServerBuilderGenerator.kt:428 */
       14689  +
        pub(crate) fn set_contents(
       14690  +
            mut self,
       14691  +
            input: Option<
       14692  +
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::MyUnion>>,
       14693  +
            >,
       14694  +
        ) -> Self {
       14695  +
            /* ServerBuilderGenerator.kt:429 */
       14696  +
            self.contents = input.map(|v| v.into());
       14697  +
            self
       14698  +
            /* ServerBuilderGenerator.kt:428 */
       14699  +
        }
       14700  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`JsonUnionsInput`](crate::input::JsonUnionsInput).
       14701  +
        /// /* ServerBuilderGenerator.kt:260 */
       14702  +
        /// The builder fails to construct a [`JsonUnionsInput`](crate::input::JsonUnionsInput) if a [`ConstraintViolation`] occurs.
       14703  +
        ///
14713  14704   
        /* ServerBuilderGenerator.kt:271 */
14714         -
        pub fn build(self) -> crate::input::HttpResponseCodeInput {
       14705  +
        pub fn build(self) -> Result<crate::input::JsonUnionsInput, ConstraintViolation> {
14715  14706   
            self.build_enforcing_all_constraints()
14716  14707   
        }
14717  14708   
        /* ServerBuilderGenerator.kt:283 */
14718         -
        fn build_enforcing_all_constraints(self) -> crate::input::HttpResponseCodeInput {
       14709  +
        fn build_enforcing_all_constraints(
       14710  +
            self,
       14711  +
        ) -> Result<crate::input::JsonUnionsInput, ConstraintViolation> {
       14712  +
            /* ServerBuilderGenerator.kt:287 */
       14713  +
            Ok(
14719  14714   
                /* ServerBuilderGenerator.kt:542 */
14720         -
            crate::input::HttpResponseCodeInput {
14721         -
            /* ServerBuilderGenerator.kt:542 */}
       14715  +
                crate::input::JsonUnionsInput {
       14716  +
                    /* ServerBuilderGenerator.kt:546 */
       14717  +
                    contents: self
       14718  +
                        .contents
       14719  +
                        /* ServerBuilderGenerator.kt:602 */
       14720  +
                        .map(|v| match v {
       14721  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       14722  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       14723  +
                        })
       14724  +
                        /* ServerBuilderGenerator.kt:614 */
       14725  +
                        .map(|res| res.map_err(ConstraintViolation::Contents))
       14726  +
                        .transpose()?,
       14727  +
                    /* ServerBuilderGenerator.kt:542 */
       14728  +
                }, /* ServerBuilderGenerator.kt:287 */
       14729  +
            )
14722  14730   
            /* ServerBuilderGenerator.kt:283 */
14723  14731   
        }
14724  14732   
        /* ServerBuilderGenerator.kt:215 */
14725  14733   
    }
14726  14734   
14727  14735   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
14728  14736   
}
14729         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPayloadWithUnionInput`](crate::input::HttpPayloadWithUnionInput).
14730         -
pub mod http_payload_with_union_input {
       14737  +
/// /* ServerBuilderGenerator.kt:171 */See [`PostPlayerActionInput`](crate::input::PostPlayerActionInput).
       14738  +
pub mod post_player_action_input {
14731  14739   
14732  14740   
    /* ServerBuilderGenerator.kt:461 */
14733         -
    impl ::std::convert::From<Builder> for crate::input::HttpPayloadWithUnionInput {
       14741  +
    impl ::std::convert::From<Builder> for crate::input::PostPlayerActionInput {
14734  14742   
        fn from(builder: Builder) -> Self {
14735  14743   
            builder.build()
14736  14744   
        }
14737  14745   
    }
14738         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPayloadWithUnionInput`](crate::input::HttpPayloadWithUnionInput).
       14746  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`PostPlayerActionInput`](crate::input::PostPlayerActionInput).
14739  14747   
    /* RustType.kt:534 */
14740  14748   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
14741  14749   
    /* ServerBuilderGenerator.kt:211 */
14742  14750   
    pub struct Builder {
14743  14751   
        /* ServerBuilderGenerator.kt:308 */
14744         -
        pub(crate) nested: ::std::option::Option<crate::model::UnionPayload>,
       14752  +
        pub(crate) action: ::std::option::Option<crate::model::PlayerAction>,
14745  14753   
        /* ServerBuilderGenerator.kt:211 */
14746  14754   
    }
14747  14755   
    /* ServerBuilderGenerator.kt:215 */
14748  14756   
    impl Builder {
14749  14757   
        /* ServerBuilderGenerator.kt:331 */
14750  14758   
        #[allow(missing_docs)] // documentation missing in model
14751  14759   
                               /* ServerBuilderGenerator.kt:343 */
14752         -
        pub fn nested(mut self, input: ::std::option::Option<crate::model::UnionPayload>) -> Self {
       14760  +
        pub fn action(mut self, input: ::std::option::Option<crate::model::PlayerAction>) -> Self {
14753  14761   
            /* ServerBuilderGenerator.kt:344 */
14754         -
            self.nested =
       14762  +
            self.action =
14755  14763   
                /* ServerBuilderGenerator.kt:376 */input
14756  14764   
            /* ServerBuilderGenerator.kt:344 */;
14757  14765   
            self
14758  14766   
            /* ServerBuilderGenerator.kt:343 */
14759  14767   
        }
14760  14768   
        /* ServerBuilderGenerator.kt:426 */
14761  14769   
        #[allow(missing_docs)] // documentation missing in model
14762  14770   
                               /* ServerBuilderGenerator.kt:428 */
14763         -
        pub(crate) fn set_nested(
       14771  +
        pub(crate) fn set_action(
14764  14772   
            mut self,
14765         -
            input: Option<impl ::std::convert::Into<crate::model::UnionPayload>>,
       14773  +
            input: Option<impl ::std::convert::Into<crate::model::PlayerAction>>,
14766  14774   
        ) -> Self {
14767  14775   
            /* ServerBuilderGenerator.kt:429 */
14768         -
            self.nested = input.map(|v| v.into());
       14776  +
            self.action = input.map(|v| v.into());
14769  14777   
            self
14770  14778   
            /* ServerBuilderGenerator.kt:428 */
14771  14779   
        }
14772         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPayloadWithUnionInput`](crate::input::HttpPayloadWithUnionInput).
       14780  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`PostPlayerActionInput`](crate::input::PostPlayerActionInput).
14773  14781   
        /* ServerBuilderGenerator.kt:271 */
14774         -
        pub fn build(self) -> crate::input::HttpPayloadWithUnionInput {
       14782  +
        pub fn build(self) -> crate::input::PostPlayerActionInput {
14775  14783   
            self.build_enforcing_all_constraints()
14776  14784   
        }
14777  14785   
        /* ServerBuilderGenerator.kt:283 */
14778         -
        fn build_enforcing_all_constraints(self) -> crate::input::HttpPayloadWithUnionInput {
       14786  +
        fn build_enforcing_all_constraints(self) -> crate::input::PostPlayerActionInput {
14779  14787   
            /* ServerBuilderGenerator.kt:542 */
14780         -
            crate::input::HttpPayloadWithUnionInput {
       14788  +
            crate::input::PostPlayerActionInput {
14781  14789   
                /* ServerBuilderGenerator.kt:546 */
14782         -
                nested: self.nested,
       14790  +
                action: self.action,
14783  14791   
                /* ServerBuilderGenerator.kt:542 */
14784  14792   
            }
14785  14793   
            /* ServerBuilderGenerator.kt:283 */
14786  14794   
        }
14787  14795   
        /* ServerBuilderGenerator.kt:215 */
14788  14796   
    }
14789  14797   
14790  14798   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
14791  14799   
}
14792         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpStringPayloadInput`](crate::input::HttpStringPayloadInput).
14793         -
pub mod http_string_payload_input {
       14800  +
/// /* ServerBuilderGenerator.kt:171 */See [`PostUnionWithJsonNameInput`](crate::input::PostUnionWithJsonNameInput).
       14801  +
pub mod post_union_with_json_name_input {
14794  14802   
14795  14803   
    /* ServerBuilderGenerator.kt:461 */
14796         -
    impl ::std::convert::From<Builder> for crate::input::HttpStringPayloadInput {
       14804  +
    impl ::std::convert::From<Builder> for crate::input::PostUnionWithJsonNameInput {
14797  14805   
        fn from(builder: Builder) -> Self {
14798  14806   
            builder.build()
14799  14807   
        }
14800  14808   
    }
14801         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpStringPayloadInput`](crate::input::HttpStringPayloadInput).
       14809  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`PostUnionWithJsonNameInput`](crate::input::PostUnionWithJsonNameInput).
14802  14810   
    /* RustType.kt:534 */
14803  14811   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
14804  14812   
    /* ServerBuilderGenerator.kt:211 */
14805  14813   
    pub struct Builder {
14806  14814   
        /* ServerBuilderGenerator.kt:308 */
14807         -
        pub(crate) payload: ::std::option::Option<::std::string::String>,
       14815  +
        pub(crate) value: ::std::option::Option<crate::model::UnionWithJsonName>,
14808  14816   
        /* ServerBuilderGenerator.kt:211 */
14809  14817   
    }
14810  14818   
    /* ServerBuilderGenerator.kt:215 */
14811  14819   
    impl Builder {
14812  14820   
        /* ServerBuilderGenerator.kt:331 */
14813  14821   
        #[allow(missing_docs)] // documentation missing in model
14814  14822   
                               /* ServerBuilderGenerator.kt:343 */
14815         -
        pub fn payload(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       14823  +
        pub fn value(
       14824  +
            mut self,
       14825  +
            input: ::std::option::Option<crate::model::UnionWithJsonName>,
       14826  +
        ) -> Self {
14816  14827   
            /* ServerBuilderGenerator.kt:344 */
14817         -
            self.payload =
       14828  +
            self.value =
14818  14829   
                /* ServerBuilderGenerator.kt:376 */input
14819  14830   
            /* ServerBuilderGenerator.kt:344 */;
14820  14831   
            self
14821  14832   
            /* ServerBuilderGenerator.kt:343 */
14822  14833   
        }
14823  14834   
        /* ServerBuilderGenerator.kt:426 */
14824  14835   
        #[allow(missing_docs)] // documentation missing in model
14825  14836   
                               /* ServerBuilderGenerator.kt:428 */
14826         -
        pub(crate) fn set_payload(
       14837  +
        pub(crate) fn set_value(
14827  14838   
            mut self,
14828         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       14839  +
            input: Option<impl ::std::convert::Into<crate::model::UnionWithJsonName>>,
14829  14840   
        ) -> Self {
14830  14841   
            /* ServerBuilderGenerator.kt:429 */
14831         -
            self.payload = input.map(|v| v.into());
       14842  +
            self.value = input.map(|v| v.into());
14832  14843   
            self
14833  14844   
            /* ServerBuilderGenerator.kt:428 */
14834  14845   
        }
14835         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpStringPayloadInput`](crate::input::HttpStringPayloadInput).
       14846  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`PostUnionWithJsonNameInput`](crate::input::PostUnionWithJsonNameInput).
14836  14847   
        /* ServerBuilderGenerator.kt:271 */
14837         -
        pub fn build(self) -> crate::input::HttpStringPayloadInput {
       14848  +
        pub fn build(self) -> crate::input::PostUnionWithJsonNameInput {
14838  14849   
            self.build_enforcing_all_constraints()
14839  14850   
        }
14840  14851   
        /* ServerBuilderGenerator.kt:283 */
14841         -
        fn build_enforcing_all_constraints(self) -> crate::input::HttpStringPayloadInput {
       14852  +
        fn build_enforcing_all_constraints(self) -> crate::input::PostUnionWithJsonNameInput {
14842  14853   
            /* ServerBuilderGenerator.kt:542 */
14843         -
            crate::input::HttpStringPayloadInput {
       14854  +
            crate::input::PostUnionWithJsonNameInput {
14844  14855   
                /* ServerBuilderGenerator.kt:546 */
14845         -
                payload: self.payload,
       14856  +
                value: self.value,
14846  14857   
                /* ServerBuilderGenerator.kt:542 */
14847  14858   
            }
14848  14859   
            /* ServerBuilderGenerator.kt:283 */
14849  14860   
        }
14850  14861   
        /* ServerBuilderGenerator.kt:215 */
14851  14862   
    }
14852  14863   
14853  14864   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
14854  14865   
}
14855         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpEnumPayloadInput`](crate::input::HttpEnumPayloadInput).
14856         -
pub mod http_enum_payload_input {
       14866  +
/// /* ServerBuilderGenerator.kt:171 */See [`EndpointOperationInput`](crate::input::EndpointOperationInput).
       14867  +
pub mod endpoint_operation_input {
       14868  +
       14869  +
    /* ServerBuilderGenerator.kt:461 */
       14870  +
    impl ::std::convert::From<Builder> for crate::input::EndpointOperationInput {
       14871  +
        fn from(builder: Builder) -> Self {
       14872  +
            builder.build()
       14873  +
        }
       14874  +
    }
       14875  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`EndpointOperationInput`](crate::input::EndpointOperationInput).
       14876  +
    /* RustType.kt:534 */
       14877  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       14878  +
    /* ServerBuilderGenerator.kt:211 */
       14879  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       14880  +
    /* ServerBuilderGenerator.kt:215 */
       14881  +
    impl Builder {
       14882  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`EndpointOperationInput`](crate::input::EndpointOperationInput).
       14883  +
        /* ServerBuilderGenerator.kt:271 */
       14884  +
        pub fn build(self) -> crate::input::EndpointOperationInput {
       14885  +
            self.build_enforcing_all_constraints()
       14886  +
        }
       14887  +
        /* ServerBuilderGenerator.kt:283 */
       14888  +
        fn build_enforcing_all_constraints(self) -> crate::input::EndpointOperationInput {
       14889  +
            /* ServerBuilderGenerator.kt:542 */
       14890  +
            crate::input::EndpointOperationInput {
       14891  +
            /* ServerBuilderGenerator.kt:542 */}
       14892  +
            /* ServerBuilderGenerator.kt:283 */
       14893  +
        }
       14894  +
        /* ServerBuilderGenerator.kt:215 */
       14895  +
    }
       14896  +
       14897  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       14898  +
}
       14899  +
/// /* ServerBuilderGenerator.kt:171 */See [`EndpointWithHostLabelOperationInput`](crate::input::EndpointWithHostLabelOperationInput).
       14900  +
pub mod endpoint_with_host_label_operation_input {
14857  14901   
14858  14902   
    /* RustType.kt:534 */
14859  14903   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
14860  14904   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
14861  14905   
    /* RustType.kt:534 */
14862  14906   
    #[non_exhaustive]
14863  14907   
    /* ServerBuilderConstraintViolations.kt:75 */
14864  14908   
    #[allow(clippy::enum_variant_names)]
14865  14909   
    pub enum ConstraintViolation {
14866         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `payload` when building `HttpEnumPayloadInput`.
14867         -
        /* RustType.kt:534 */
14868         -
        #[doc(hidden)]
14869         -
        /* ServerBuilderConstraintViolations.kt:165 */
14870         -
        Payload(crate::model::string_enum::ConstraintViolation),
       14910  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`label` was not provided but it is required when building `EndpointWithHostLabelOperationInput`.
       14911  +
        /* ServerBuilderConstraintViolations.kt:144 */
       14912  +
        MissingLabel,
14871  14913   
        /* ServerBuilderConstraintViolations.kt:75 */
14872  14914   
    }
14873  14915   
    /* ServerBuilderConstraintViolations.kt:116 */
14874  14916   
    impl ::std::fmt::Display for ConstraintViolation {
14875  14917   
        /* ServerBuilderConstraintViolations.kt:117 */
14876  14918   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
14877  14919   
            /* ServerBuilderConstraintViolations.kt:118 */
14878  14920   
            match self {
14879         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::Payload(_) => write!(f, "constraint violation occurred building member `payload` when building `HttpEnumPayloadInput`"),
       14921  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingLabel => write!(f, "`label` was not provided but it is required when building `EndpointWithHostLabelOperationInput`"),
14880  14922   
            /* ServerBuilderConstraintViolations.kt:118 */}
14881  14923   
            /* ServerBuilderConstraintViolations.kt:117 */
14882  14924   
        }
14883  14925   
        /* ServerBuilderConstraintViolations.kt:116 */
14884  14926   
    }
14885  14927   
    /* ServerBuilderConstraintViolations.kt:83 */
14886  14928   
    impl ::std::error::Error for ConstraintViolation {}
14887  14929   
    /* ServerBuilderConstraintViolations.kt:172 */
14888  14930   
    impl ConstraintViolation {
14889  14931   
        pub(crate) fn as_validation_exception_field(
14890  14932   
            self,
14891  14933   
            path: ::std::string::String,
14892  14934   
        ) -> crate::model::ValidationExceptionField {
14893  14935   
            match self {
14894         -
                ConstraintViolation::Payload(inner) => {
14895         -
                    inner.as_validation_exception_field(path + "/payload")
14896         -
                }
       14936  +
                ConstraintViolation::MissingLabel => crate::model::ValidationExceptionField {
       14937  +
                    message: format!(
       14938  +
                        "Value at '{}/label' failed to satisfy constraint: Member must not be null",
       14939  +
                        path
       14940  +
                    ),
       14941  +
                    path: path + "/label",
       14942  +
                },
14897  14943   
            }
14898  14944   
        }
14899  14945   
    }
14900  14946   
    /* ServerBuilderGenerator.kt:234 */
14901  14947   
    impl ::std::convert::From<ConstraintViolation>
14902  14948   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
14903  14949   
    {
14904  14950   
        fn from(constraint_violation: ConstraintViolation) -> Self {
14905  14951   
            let first_validation_exception_field =
14906  14952   
                constraint_violation.as_validation_exception_field("".to_owned());
14907  14953   
            let validation_exception = crate::error::ValidationException {
14908  14954   
                message: format!(
14909  14955   
                    "1 validation error detected. {}",
14910  14956   
                    &first_validation_exception_field.message
14911  14957   
                ),
14912  14958   
                field_list: Some(vec![first_validation_exception_field]),
14913  14959   
            };
14914  14960   
            Self::ConstraintViolation(
14915  14961   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
14916  14962   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
14917  14963   
                            )
14918  14964   
        }
14919  14965   
    }
14920  14966   
    /* ServerBuilderGenerator.kt:244 */
14921  14967   
    impl ::std::convert::From<Builder>
14922         -
        for crate::constrained::MaybeConstrained<crate::input::HttpEnumPayloadInput>
       14968  +
        for crate::constrained::MaybeConstrained<crate::input::EndpointWithHostLabelOperationInput>
14923  14969   
    {
14924  14970   
        fn from(builder: Builder) -> Self {
14925  14971   
            Self::Unconstrained(builder)
14926  14972   
        }
14927  14973   
    }
14928  14974   
    /* ServerBuilderGenerator.kt:446 */
14929         -
    impl ::std::convert::TryFrom<Builder> for crate::input::HttpEnumPayloadInput {
       14975  +
    impl ::std::convert::TryFrom<Builder> for crate::input::EndpointWithHostLabelOperationInput {
14930  14976   
        type Error = ConstraintViolation;
14931  14977   
14932  14978   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
14933  14979   
            builder.build()
14934  14980   
        }
14935  14981   
    }
14936         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpEnumPayloadInput`](crate::input::HttpEnumPayloadInput).
       14982  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`EndpointWithHostLabelOperationInput`](crate::input::EndpointWithHostLabelOperationInput).
14937  14983   
    /* RustType.kt:534 */
14938  14984   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
14939  14985   
    /* ServerBuilderGenerator.kt:211 */
14940  14986   
    pub struct Builder {
14941  14987   
        /* ServerBuilderGenerator.kt:308 */
14942         -
        pub(crate) payload:
14943         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::StringEnum>>,
       14988  +
        pub(crate) label: ::std::option::Option<::std::string::String>,
14944  14989   
        /* ServerBuilderGenerator.kt:211 */
14945  14990   
    }
14946  14991   
    /* ServerBuilderGenerator.kt:215 */
14947  14992   
    impl Builder {
14948  14993   
        /* ServerBuilderGenerator.kt:331 */
14949  14994   
        #[allow(missing_docs)] // documentation missing in model
14950  14995   
                               /* ServerBuilderGenerator.kt:343 */
14951         -
        pub fn payload(mut self, input: ::std::option::Option<crate::model::StringEnum>) -> Self {
       14996  +
        pub fn label(mut self, input: ::std::string::String) -> Self {
14952  14997   
            /* ServerBuilderGenerator.kt:344 */
14953         -
            self.payload =
14954         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
       14998  +
            self.label =
       14999  +
                /* ServerBuilderGenerator.kt:345 */Some(
       15000  +
                    /* ServerBuilderGenerator.kt:376 */input
       15001  +
                /* ServerBuilderGenerator.kt:345 */)
14955  15002   
            /* ServerBuilderGenerator.kt:344 */;
14956  15003   
            self
14957  15004   
            /* ServerBuilderGenerator.kt:343 */
14958  15005   
        }
14959  15006   
        /* ServerBuilderGenerator.kt:426 */
14960  15007   
        #[allow(missing_docs)] // documentation missing in model
14961  15008   
                               /* ServerBuilderGenerator.kt:428 */
14962         -
        pub(crate) fn set_payload(
       15009  +
        pub(crate) fn set_label(
14963  15010   
            mut self,
14964         -
            input: Option<
14965         -
                impl ::std::convert::Into<
14966         -
                    crate::constrained::MaybeConstrained<crate::model::StringEnum>,
14967         -
                >,
14968         -
            >,
       15011  +
            input: impl ::std::convert::Into<::std::string::String>,
14969  15012   
        ) -> Self {
14970  15013   
            /* ServerBuilderGenerator.kt:429 */
14971         -
            self.payload = input.map(|v| v.into());
       15014  +
            self.label = Some(input.into());
14972  15015   
            self
14973  15016   
            /* ServerBuilderGenerator.kt:428 */
14974  15017   
        }
14975         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpEnumPayloadInput`](crate::input::HttpEnumPayloadInput).
       15018  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`EndpointWithHostLabelOperationInput`](crate::input::EndpointWithHostLabelOperationInput).
14976  15019   
        /// /* ServerBuilderGenerator.kt:260 */
14977         -
        /// The builder fails to construct a [`HttpEnumPayloadInput`](crate::input::HttpEnumPayloadInput) if a [`ConstraintViolation`] occurs.
       15020  +
        /// The builder fails to construct a [`EndpointWithHostLabelOperationInput`](crate::input::EndpointWithHostLabelOperationInput) if a [`ConstraintViolation`] occurs.
14978  15021   
        ///
14979  15022   
        /* ServerBuilderGenerator.kt:271 */
14980         -
        pub fn build(self) -> Result<crate::input::HttpEnumPayloadInput, ConstraintViolation> {
       15023  +
        pub fn build(
       15024  +
            self,
       15025  +
        ) -> Result<crate::input::EndpointWithHostLabelOperationInput, ConstraintViolation>
       15026  +
        {
14981  15027   
            self.build_enforcing_all_constraints()
14982  15028   
        }
14983  15029   
        /* ServerBuilderGenerator.kt:283 */
14984  15030   
        fn build_enforcing_all_constraints(
14985  15031   
            self,
14986         -
        ) -> Result<crate::input::HttpEnumPayloadInput, ConstraintViolation> {
       15032  +
        ) -> Result<crate::input::EndpointWithHostLabelOperationInput, ConstraintViolation>
       15033  +
        {
14987  15034   
            /* ServerBuilderGenerator.kt:287 */
14988  15035   
            Ok(
14989  15036   
                /* ServerBuilderGenerator.kt:542 */
14990         -
                crate::input::HttpEnumPayloadInput {
       15037  +
                crate::input::EndpointWithHostLabelOperationInput {
14991  15038   
                    /* ServerBuilderGenerator.kt:546 */
14992         -
                    payload: self
14993         -
                        .payload
14994         -
                        /* ServerBuilderGenerator.kt:602 */
14995         -
                        .map(|v| match v {
14996         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
14997         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
14998         -
                        })
14999         -
                        /* ServerBuilderGenerator.kt:614 */
15000         -
                        .map(|res| res.map_err(ConstraintViolation::Payload))
15001         -
                        .transpose()?,
       15039  +
                    label: self
       15040  +
                        .label
       15041  +
                        /* ServerBuilderGenerator.kt:569 */
       15042  +
                        .ok_or(ConstraintViolation::MissingLabel)?,
       15043  +
                    /* ServerBuilderGenerator.kt:542 */
       15044  +
                }, /* ServerBuilderGenerator.kt:287 */
       15045  +
            )
       15046  +
            /* ServerBuilderGenerator.kt:283 */
       15047  +
        }
       15048  +
        /* ServerBuilderGenerator.kt:215 */
       15049  +
    }
       15050  +
       15051  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       15052  +
}
       15053  +
/// /* ServerBuilderGenerator.kt:171 */See [`HostWithPathOperationInput`](crate::input::HostWithPathOperationInput).
       15054  +
pub mod host_with_path_operation_input {
       15055  +
       15056  +
    /* ServerBuilderGenerator.kt:461 */
       15057  +
    impl ::std::convert::From<Builder> for crate::input::HostWithPathOperationInput {
       15058  +
        fn from(builder: Builder) -> Self {
       15059  +
            builder.build()
       15060  +
        }
       15061  +
    }
       15062  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HostWithPathOperationInput`](crate::input::HostWithPathOperationInput).
       15063  +
    /* RustType.kt:534 */
       15064  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       15065  +
    /* ServerBuilderGenerator.kt:211 */
       15066  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       15067  +
    /* ServerBuilderGenerator.kt:215 */
       15068  +
    impl Builder {
       15069  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HostWithPathOperationInput`](crate::input::HostWithPathOperationInput).
       15070  +
        /* ServerBuilderGenerator.kt:271 */
       15071  +
        pub fn build(self) -> crate::input::HostWithPathOperationInput {
       15072  +
            self.build_enforcing_all_constraints()
       15073  +
        }
       15074  +
        /* ServerBuilderGenerator.kt:283 */
       15075  +
        fn build_enforcing_all_constraints(self) -> crate::input::HostWithPathOperationInput {
15002  15076   
            /* ServerBuilderGenerator.kt:542 */
15003         -
                }, /* ServerBuilderGenerator.kt:287 */
15004         -
            )
       15077  +
            crate::input::HostWithPathOperationInput {
       15078  +
            /* ServerBuilderGenerator.kt:542 */}
15005  15079   
            /* ServerBuilderGenerator.kt:283 */
15006  15080   
        }
15007  15081   
        /* ServerBuilderGenerator.kt:215 */
15008  15082   
    }
15009  15083   
15010  15084   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
15011  15085   
}
15012         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPayloadWithStructureInput`](crate::input::HttpPayloadWithStructureInput).
15013         -
pub mod http_payload_with_structure_input {
       15086  +
/// /* ServerBuilderGenerator.kt:171 */See [`HttpChecksumRequiredInput`](crate::input::HttpChecksumRequiredInput).
       15087  +
pub mod http_checksum_required_input {
15014  15088   
15015  15089   
    /* ServerBuilderGenerator.kt:461 */
15016         -
    impl ::std::convert::From<Builder> for crate::input::HttpPayloadWithStructureInput {
       15090  +
    impl ::std::convert::From<Builder> for crate::input::HttpChecksumRequiredInput {
15017  15091   
        fn from(builder: Builder) -> Self {
15018  15092   
            builder.build()
15019  15093   
        }
15020  15094   
    }
15021         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPayloadWithStructureInput`](crate::input::HttpPayloadWithStructureInput).
       15095  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpChecksumRequiredInput`](crate::input::HttpChecksumRequiredInput).
15022  15096   
    /* RustType.kt:534 */
15023  15097   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
15024  15098   
    /* ServerBuilderGenerator.kt:211 */
15025  15099   
    pub struct Builder {
15026  15100   
        /* ServerBuilderGenerator.kt:308 */
15027         -
        pub(crate) nested: ::std::option::Option<crate::model::NestedPayload>,
       15101  +
        pub(crate) foo: ::std::option::Option<::std::string::String>,
15028  15102   
        /* ServerBuilderGenerator.kt:211 */
15029  15103   
    }
15030  15104   
    /* ServerBuilderGenerator.kt:215 */
15031  15105   
    impl Builder {
15032  15106   
        /* ServerBuilderGenerator.kt:331 */
15033  15107   
        #[allow(missing_docs)] // documentation missing in model
15034  15108   
                               /* ServerBuilderGenerator.kt:343 */
15035         -
        pub fn nested(mut self, input: ::std::option::Option<crate::model::NestedPayload>) -> Self {
       15109  +
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
15036  15110   
            /* ServerBuilderGenerator.kt:344 */
15037         -
            self.nested =
       15111  +
            self.foo =
15038  15112   
                /* ServerBuilderGenerator.kt:376 */input
15039  15113   
            /* ServerBuilderGenerator.kt:344 */;
15040  15114   
            self
15041  15115   
            /* ServerBuilderGenerator.kt:343 */
15042  15116   
        }
15043  15117   
        /* ServerBuilderGenerator.kt:426 */
15044  15118   
        #[allow(missing_docs)] // documentation missing in model
15045  15119   
                               /* ServerBuilderGenerator.kt:428 */
15046         -
        pub(crate) fn set_nested(
       15120  +
        pub(crate) fn set_foo(
15047  15121   
            mut self,
15048         -
            input: Option<impl ::std::convert::Into<crate::model::NestedPayload>>,
       15122  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
15049  15123   
        ) -> Self {
15050  15124   
            /* ServerBuilderGenerator.kt:429 */
15051         -
            self.nested = input.map(|v| v.into());
       15125  +
            self.foo = input.map(|v| v.into());
15052  15126   
            self
15053  15127   
            /* ServerBuilderGenerator.kt:428 */
15054  15128   
        }
15055         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPayloadWithStructureInput`](crate::input::HttpPayloadWithStructureInput).
       15129  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpChecksumRequiredInput`](crate::input::HttpChecksumRequiredInput).
15056  15130   
        /* ServerBuilderGenerator.kt:271 */
15057         -
        pub fn build(self) -> crate::input::HttpPayloadWithStructureInput {
       15131  +
        pub fn build(self) -> crate::input::HttpChecksumRequiredInput {
15058  15132   
            self.build_enforcing_all_constraints()
15059  15133   
        }
15060  15134   
        /* ServerBuilderGenerator.kt:283 */
15061         -
        fn build_enforcing_all_constraints(self) -> crate::input::HttpPayloadWithStructureInput {
       15135  +
        fn build_enforcing_all_constraints(self) -> crate::input::HttpChecksumRequiredInput {
15062  15136   
            /* ServerBuilderGenerator.kt:542 */
15063         -
            crate::input::HttpPayloadWithStructureInput {
       15137  +
            crate::input::HttpChecksumRequiredInput {
15064  15138   
                /* ServerBuilderGenerator.kt:546 */
15065         -
                nested: self.nested,
       15139  +
                foo: self.foo,
15066  15140   
                /* ServerBuilderGenerator.kt:542 */
15067  15141   
            }
15068  15142   
            /* ServerBuilderGenerator.kt:283 */
15069  15143   
        }
15070  15144   
        /* ServerBuilderGenerator.kt:215 */
15071  15145   
    }
15072  15146   
15073  15147   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
15074  15148   
}
15075         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPayloadTraitsWithMediaTypeInput`](crate::input::HttpPayloadTraitsWithMediaTypeInput).
15076         -
pub mod http_payload_traits_with_media_type_input {
       15149  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedRequestBodyInput`](crate::input::MalformedRequestBodyInput).
       15150  +
pub mod malformed_request_body_input {
15077  15151   
15078  15152   
    /* ServerBuilderGenerator.kt:461 */
15079         -
    impl ::std::convert::From<Builder> for crate::input::HttpPayloadTraitsWithMediaTypeInput {
       15153  +
    impl ::std::convert::From<Builder> for crate::input::MalformedRequestBodyInput {
15080  15154   
        fn from(builder: Builder) -> Self {
15081  15155   
            builder.build()
15082  15156   
        }
15083  15157   
    }
15084         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPayloadTraitsWithMediaTypeInput`](crate::input::HttpPayloadTraitsWithMediaTypeInput).
       15158  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedRequestBodyInput`](crate::input::MalformedRequestBodyInput).
15085  15159   
    /* RustType.kt:534 */
15086  15160   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
15087  15161   
    /* ServerBuilderGenerator.kt:211 */
15088  15162   
    pub struct Builder {
       15163  +
        /* ServerBuilderGenerator.kt:308 */ pub(crate) int: ::std::option::Option<i32>,
15089  15164   
        /* ServerBuilderGenerator.kt:308 */
15090         -
        pub(crate) foo: ::std::option::Option<::std::string::String>,
15091         -
        /* ServerBuilderGenerator.kt:308 */
15092         -
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::Blob>,
       15165  +
        pub(crate) float: ::std::option::Option<f32>,
15093  15166   
        /* ServerBuilderGenerator.kt:211 */
15094  15167   
    }
15095  15168   
    /* ServerBuilderGenerator.kt:215 */
15096  15169   
    impl Builder {
15097  15170   
        /* ServerBuilderGenerator.kt:331 */
15098  15171   
        #[allow(missing_docs)] // documentation missing in model
15099  15172   
                               /* ServerBuilderGenerator.kt:343 */
15100         -
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       15173  +
        pub fn int(mut self, input: ::std::option::Option<i32>) -> Self {
15101  15174   
            /* ServerBuilderGenerator.kt:344 */
15102         -
            self.foo =
       15175  +
            self.int =
15103  15176   
                /* ServerBuilderGenerator.kt:376 */input
15104  15177   
            /* ServerBuilderGenerator.kt:344 */;
15105  15178   
            self
15106  15179   
            /* ServerBuilderGenerator.kt:343 */
15107  15180   
        }
15108  15181   
        /* ServerBuilderGenerator.kt:426 */
15109  15182   
        #[allow(missing_docs)] // documentation missing in model
15110  15183   
                               /* ServerBuilderGenerator.kt:428 */
15111         -
        pub(crate) fn set_foo(
15112         -
            mut self,
15113         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
15114         -
        ) -> Self {
       15184  +
        pub(crate) fn set_int(mut self, input: Option<impl ::std::convert::Into<i32>>) -> Self {
15115  15185   
            /* ServerBuilderGenerator.kt:429 */
15116         -
            self.foo = input.map(|v| v.into());
       15186  +
            self.int = input.map(|v| v.into());
15117  15187   
            self
15118  15188   
            /* ServerBuilderGenerator.kt:428 */
15119  15189   
        }
15120  15190   
        /* ServerBuilderGenerator.kt:331 */
15121  15191   
        #[allow(missing_docs)] // documentation missing in model
15122  15192   
                               /* ServerBuilderGenerator.kt:343 */
15123         -
        pub fn blob(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
       15193  +
        pub fn float(mut self, input: ::std::option::Option<f32>) -> Self {
15124  15194   
            /* ServerBuilderGenerator.kt:344 */
15125         -
            self.blob =
       15195  +
            self.float =
15126  15196   
                /* ServerBuilderGenerator.kt:376 */input
15127  15197   
            /* ServerBuilderGenerator.kt:344 */;
15128  15198   
            self
15129  15199   
            /* ServerBuilderGenerator.kt:343 */
15130  15200   
        }
15131  15201   
        /* ServerBuilderGenerator.kt:426 */
15132  15202   
        #[allow(missing_docs)] // documentation missing in model
15133  15203   
                               /* ServerBuilderGenerator.kt:428 */
15134         -
        pub(crate) fn set_blob(
15135         -
            mut self,
15136         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
15137         -
        ) -> Self {
       15204  +
        pub(crate) fn set_float(mut self, input: Option<impl ::std::convert::Into<f32>>) -> Self {
15138  15205   
            /* ServerBuilderGenerator.kt:429 */
15139         -
            self.blob = input.map(|v| v.into());
       15206  +
            self.float = input.map(|v| v.into());
15140  15207   
            self
15141  15208   
            /* ServerBuilderGenerator.kt:428 */
15142  15209   
        }
15143         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPayloadTraitsWithMediaTypeInput`](crate::input::HttpPayloadTraitsWithMediaTypeInput).
       15210  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedRequestBodyInput`](crate::input::MalformedRequestBodyInput).
15144  15211   
        /* ServerBuilderGenerator.kt:271 */
15145         -
        pub fn build(self) -> crate::input::HttpPayloadTraitsWithMediaTypeInput {
       15212  +
        pub fn build(self) -> crate::input::MalformedRequestBodyInput {
15146  15213   
            self.build_enforcing_all_constraints()
15147  15214   
        }
15148  15215   
        /* ServerBuilderGenerator.kt:283 */
15149         -
        fn build_enforcing_all_constraints(
15150         -
            self,
15151         -
        ) -> crate::input::HttpPayloadTraitsWithMediaTypeInput {
       15216  +
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedRequestBodyInput {
15152  15217   
            /* ServerBuilderGenerator.kt:542 */
15153         -
            crate::input::HttpPayloadTraitsWithMediaTypeInput {
       15218  +
            crate::input::MalformedRequestBodyInput {
15154  15219   
                /* ServerBuilderGenerator.kt:546 */
15155         -
                foo: self.foo,
       15220  +
                int: self.int,
15156  15221   
                /* ServerBuilderGenerator.kt:546 */
15157         -
                blob: self.blob,
       15222  +
                float: self.float,
15158  15223   
                /* ServerBuilderGenerator.kt:542 */
15159  15224   
            }
15160  15225   
            /* ServerBuilderGenerator.kt:283 */
15161  15226   
        }
15162  15227   
        /* ServerBuilderGenerator.kt:215 */
15163  15228   
    }
15164  15229   
15165  15230   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
15166  15231   
}
15167         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPayloadTraitsInput`](crate::input::HttpPayloadTraitsInput).
15168         -
pub mod http_payload_traits_input {
       15232  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedIntegerInput`](crate::input::MalformedIntegerInput).
       15233  +
pub mod malformed_integer_input {
15169  15234   
15170         -
    /* ServerBuilderGenerator.kt:461 */
15171         -
    impl ::std::convert::From<Builder> for crate::input::HttpPayloadTraitsInput {
       15235  +
    /* RustType.kt:534 */
       15236  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       15237  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       15238  +
    /* RustType.kt:534 */
       15239  +
    #[non_exhaustive]
       15240  +
    /* ServerBuilderConstraintViolations.kt:75 */
       15241  +
    #[allow(clippy::enum_variant_names)]
       15242  +
    pub enum ConstraintViolation {
       15243  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`integer_in_path` was not provided but it is required when building `MalformedIntegerInput`.
       15244  +
        /* ServerBuilderConstraintViolations.kt:144 */
       15245  +
        MissingIntegerInPath,
       15246  +
        /* ServerBuilderConstraintViolations.kt:75 */
       15247  +
    }
       15248  +
    /* ServerBuilderConstraintViolations.kt:116 */
       15249  +
    impl ::std::fmt::Display for ConstraintViolation {
       15250  +
        /* ServerBuilderConstraintViolations.kt:117 */
       15251  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       15252  +
            /* ServerBuilderConstraintViolations.kt:118 */
       15253  +
            match self {
       15254  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingIntegerInPath => write!(f, "`integer_in_path` was not provided but it is required when building `MalformedIntegerInput`"),
       15255  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       15256  +
            /* ServerBuilderConstraintViolations.kt:117 */
       15257  +
        }
       15258  +
        /* ServerBuilderConstraintViolations.kt:116 */
       15259  +
    }
       15260  +
    /* ServerBuilderConstraintViolations.kt:83 */
       15261  +
    impl ::std::error::Error for ConstraintViolation {}
       15262  +
    /* ServerBuilderConstraintViolations.kt:172 */
       15263  +
    impl ConstraintViolation {
       15264  +
        pub(crate) fn as_validation_exception_field(
       15265  +
            self,
       15266  +
            path: ::std::string::String,
       15267  +
        ) -> crate::model::ValidationExceptionField {
       15268  +
            match self {
       15269  +
            ConstraintViolation::MissingIntegerInPath => crate::model::ValidationExceptionField {
       15270  +
                                                message: format!("Value at '{}/integerInPath' failed to satisfy constraint: Member must not be null", path),
       15271  +
                                                path: path + "/integerInPath",
       15272  +
                                            },
       15273  +
        }
       15274  +
        }
       15275  +
    }
       15276  +
    /* ServerBuilderGenerator.kt:234 */
       15277  +
    impl ::std::convert::From<ConstraintViolation>
       15278  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       15279  +
    {
       15280  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       15281  +
            let first_validation_exception_field =
       15282  +
                constraint_violation.as_validation_exception_field("".to_owned());
       15283  +
            let validation_exception = crate::error::ValidationException {
       15284  +
                message: format!(
       15285  +
                    "1 validation error detected. {}",
       15286  +
                    &first_validation_exception_field.message
       15287  +
                ),
       15288  +
                field_list: Some(vec![first_validation_exception_field]),
       15289  +
            };
       15290  +
            Self::ConstraintViolation(
       15291  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       15292  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       15293  +
                            )
       15294  +
        }
       15295  +
    }
       15296  +
    /* ServerBuilderGenerator.kt:244 */
       15297  +
    impl ::std::convert::From<Builder>
       15298  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedIntegerInput>
       15299  +
    {
15172  15300   
        fn from(builder: Builder) -> Self {
       15301  +
            Self::Unconstrained(builder)
       15302  +
        }
       15303  +
    }
       15304  +
    /* ServerBuilderGenerator.kt:446 */
       15305  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedIntegerInput {
       15306  +
        type Error = ConstraintViolation;
       15307  +
       15308  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
15173  15309   
            builder.build()
15174  15310   
        }
15175  15311   
    }
15176         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPayloadTraitsInput`](crate::input::HttpPayloadTraitsInput).
       15312  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedIntegerInput`](crate::input::MalformedIntegerInput).
15177  15313   
    /* RustType.kt:534 */
15178  15314   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
15179  15315   
    /* ServerBuilderGenerator.kt:211 */
15180  15316   
    pub struct Builder {
15181  15317   
        /* ServerBuilderGenerator.kt:308 */
15182         -
        pub(crate) foo: ::std::option::Option<::std::string::String>,
       15318  +
        pub(crate) integer_in_body: ::std::option::Option<i32>,
15183  15319   
        /* ServerBuilderGenerator.kt:308 */
15184         -
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::Blob>,
       15320  +
        pub(crate) integer_in_path: ::std::option::Option<i32>,
       15321  +
        /* ServerBuilderGenerator.kt:308 */
       15322  +
        pub(crate) integer_in_query: ::std::option::Option<i32>,
       15323  +
        /* ServerBuilderGenerator.kt:308 */
       15324  +
        pub(crate) integer_in_header: ::std::option::Option<i32>,
15185  15325   
        /* ServerBuilderGenerator.kt:211 */
15186  15326   
    }
15187  15327   
    /* ServerBuilderGenerator.kt:215 */
15188  15328   
    impl Builder {
15189  15329   
        /* ServerBuilderGenerator.kt:331 */
15190  15330   
        #[allow(missing_docs)] // documentation missing in model
15191  15331   
                               /* ServerBuilderGenerator.kt:343 */
15192         -
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       15332  +
        pub fn integer_in_body(mut self, input: ::std::option::Option<i32>) -> Self {
15193  15333   
            /* ServerBuilderGenerator.kt:344 */
15194         -
            self.foo =
       15334  +
            self.integer_in_body =
15195  15335   
                /* ServerBuilderGenerator.kt:376 */input
15196  15336   
            /* ServerBuilderGenerator.kt:344 */;
15197  15337   
            self
15198  15338   
            /* ServerBuilderGenerator.kt:343 */
15199  15339   
        }
15200  15340   
        /* ServerBuilderGenerator.kt:426 */
15201  15341   
        #[allow(missing_docs)] // documentation missing in model
15202  15342   
                               /* ServerBuilderGenerator.kt:428 */
15203         -
        pub(crate) fn set_foo(
       15343  +
        pub(crate) fn set_integer_in_body(
15204  15344   
            mut self,
15205         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       15345  +
            input: Option<impl ::std::convert::Into<i32>>,
15206  15346   
        ) -> Self {
15207  15347   
            /* ServerBuilderGenerator.kt:429 */
15208         -
            self.foo = input.map(|v| v.into());
       15348  +
            self.integer_in_body = input.map(|v| v.into());
15209  15349   
            self
15210  15350   
            /* ServerBuilderGenerator.kt:428 */
15211  15351   
        }
15212  15352   
        /* ServerBuilderGenerator.kt:331 */
15213  15353   
        #[allow(missing_docs)] // documentation missing in model
15214  15354   
                               /* ServerBuilderGenerator.kt:343 */
15215         -
        pub fn blob(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
       15355  +
        pub fn integer_in_path(mut self, input: i32) -> Self {
15216  15356   
            /* ServerBuilderGenerator.kt:344 */
15217         -
            self.blob =
       15357  +
            self.integer_in_path =
       15358  +
                /* ServerBuilderGenerator.kt:345 */Some(
15218  15359   
                    /* ServerBuilderGenerator.kt:376 */input
       15360  +
                /* ServerBuilderGenerator.kt:345 */)
15219  15361   
            /* ServerBuilderGenerator.kt:344 */;
15220  15362   
            self
15221  15363   
            /* ServerBuilderGenerator.kt:343 */
15222  15364   
        }
15223  15365   
        /* ServerBuilderGenerator.kt:426 */
15224  15366   
        #[allow(missing_docs)] // documentation missing in model
15225  15367   
                               /* ServerBuilderGenerator.kt:428 */
15226         -
        pub(crate) fn set_blob(
15227         -
            mut self,
15228         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
15229         -
        ) -> Self {
       15368  +
        pub(crate) fn set_integer_in_path(mut self, input: impl ::std::convert::Into<i32>) -> Self {
15230  15369   
            /* ServerBuilderGenerator.kt:429 */
15231         -
            self.blob = input.map(|v| v.into());
       15370  +
            self.integer_in_path = Some(input.into());
15232  15371   
            self
15233  15372   
            /* ServerBuilderGenerator.kt:428 */
15234  15373   
        }
15235         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPayloadTraitsInput`](crate::input::HttpPayloadTraitsInput).
15236         -
        /* ServerBuilderGenerator.kt:271 */
15237         -
        pub fn build(self) -> crate::input::HttpPayloadTraitsInput {
15238         -
            self.build_enforcing_all_constraints()
15239         -
        }
15240         -
        /* ServerBuilderGenerator.kt:283 */
15241         -
        fn build_enforcing_all_constraints(self) -> crate::input::HttpPayloadTraitsInput {
15242         -
            /* ServerBuilderGenerator.kt:542 */
15243         -
            crate::input::HttpPayloadTraitsInput {
15244         -
                /* ServerBuilderGenerator.kt:546 */
15245         -
                foo: self.foo,
15246         -
                /* ServerBuilderGenerator.kt:546 */
15247         -
                blob: self.blob,
15248         -
                /* ServerBuilderGenerator.kt:542 */
15249         -
            }
15250         -
            /* ServerBuilderGenerator.kt:283 */
15251         -
        }
15252         -
        /* ServerBuilderGenerator.kt:215 */
15253         -
    }
15254         -
15255         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
15256         -
}
15257         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpEmptyPrefixHeadersInput`](crate::input::HttpEmptyPrefixHeadersInput).
15258         -
pub mod http_empty_prefix_headers_input {
15259         -
15260         -
    /* ServerBuilderGenerator.kt:461 */
15261         -
    impl ::std::convert::From<Builder> for crate::input::HttpEmptyPrefixHeadersInput {
15262         -
        fn from(builder: Builder) -> Self {
15263         -
            builder.build()
15264         -
        }
15265         -
    }
15266         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpEmptyPrefixHeadersInput`](crate::input::HttpEmptyPrefixHeadersInput).
15267         -
    /* RustType.kt:534 */
15268         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
15269         -
    /* ServerBuilderGenerator.kt:211 */
15270         -
    pub struct Builder {
15271         -
        /* ServerBuilderGenerator.kt:308 */
15272         -
        pub(crate) prefix_headers: ::std::option::Option<
15273         -
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
15274         -
        >,
15275         -
        /* ServerBuilderGenerator.kt:308 */
15276         -
        pub(crate) specific_header: ::std::option::Option<::std::string::String>,
15277         -
        /* ServerBuilderGenerator.kt:211 */
15278         -
    }
15279         -
    /* ServerBuilderGenerator.kt:215 */
15280         -
    impl Builder {
15281         -
        /* ServerBuilderGenerator.kt:331 */
15282         -
        #[allow(missing_docs)] // documentation missing in model
15283         -
                               /* ServerBuilderGenerator.kt:343 */
15284         -
        pub fn prefix_headers(
15285         -
            mut self,
15286         -
            input: ::std::option::Option<
15287         -
                ::std::collections::HashMap<::std::string::String, ::std::string::String>,
15288         -
            >,
15289         -
        ) -> Self {
       15374  +
        /* ServerBuilderGenerator.kt:331 */
       15375  +
        #[allow(missing_docs)] // documentation missing in model
       15376  +
                               /* ServerBuilderGenerator.kt:343 */
       15377  +
        pub fn integer_in_query(mut self, input: ::std::option::Option<i32>) -> Self {
15290  15378   
            /* ServerBuilderGenerator.kt:344 */
15291         -
            self.prefix_headers =
       15379  +
            self.integer_in_query =
15292  15380   
                /* ServerBuilderGenerator.kt:376 */input
15293  15381   
            /* ServerBuilderGenerator.kt:344 */;
15294  15382   
            self
15295  15383   
            /* ServerBuilderGenerator.kt:343 */
15296  15384   
        }
15297  15385   
        /* ServerBuilderGenerator.kt:426 */
15298  15386   
        #[allow(missing_docs)] // documentation missing in model
15299  15387   
                               /* ServerBuilderGenerator.kt:428 */
15300         -
        pub(crate) fn set_prefix_headers(
       15388  +
        pub(crate) fn set_integer_in_query(
15301  15389   
            mut self,
15302         -
            input: Option<
15303         -
                impl ::std::convert::Into<
15304         -
                    ::std::collections::HashMap<::std::string::String, ::std::string::String>,
15305         -
                >,
15306         -
            >,
       15390  +
            input: Option<impl ::std::convert::Into<i32>>,
15307  15391   
        ) -> Self {
15308  15392   
            /* ServerBuilderGenerator.kt:429 */
15309         -
            self.prefix_headers = input.map(|v| v.into());
       15393  +
            self.integer_in_query = input.map(|v| v.into());
15310  15394   
            self
15311  15395   
            /* ServerBuilderGenerator.kt:428 */
15312  15396   
        }
15313  15397   
        /* ServerBuilderGenerator.kt:331 */
15314  15398   
        #[allow(missing_docs)] // documentation missing in model
15315  15399   
                               /* ServerBuilderGenerator.kt:343 */
15316         -
        pub fn specific_header(
15317         -
            mut self,
15318         -
            input: ::std::option::Option<::std::string::String>,
15319         -
        ) -> Self {
       15400  +
        pub fn integer_in_header(mut self, input: ::std::option::Option<i32>) -> Self {
15320  15401   
            /* ServerBuilderGenerator.kt:344 */
15321         -
            self.specific_header =
       15402  +
            self.integer_in_header =
15322  15403   
                /* ServerBuilderGenerator.kt:376 */input
15323  15404   
            /* ServerBuilderGenerator.kt:344 */;
15324  15405   
            self
15325  15406   
            /* ServerBuilderGenerator.kt:343 */
15326  15407   
        }
15327  15408   
        /* ServerBuilderGenerator.kt:426 */
15328  15409   
        #[allow(missing_docs)] // documentation missing in model
15329  15410   
                               /* ServerBuilderGenerator.kt:428 */
15330         -
        pub(crate) fn set_specific_header(
       15411  +
        pub(crate) fn set_integer_in_header(
15331  15412   
            mut self,
15332         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       15413  +
            input: Option<impl ::std::convert::Into<i32>>,
15333  15414   
        ) -> Self {
15334  15415   
            /* ServerBuilderGenerator.kt:429 */
15335         -
            self.specific_header = input.map(|v| v.into());
       15416  +
            self.integer_in_header = input.map(|v| v.into());
15336  15417   
            self
15337  15418   
            /* ServerBuilderGenerator.kt:428 */
15338  15419   
        }
15339         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpEmptyPrefixHeadersInput`](crate::input::HttpEmptyPrefixHeadersInput).
       15420  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedIntegerInput`](crate::input::MalformedIntegerInput).
       15421  +
        /// /* ServerBuilderGenerator.kt:260 */
       15422  +
        /// The builder fails to construct a [`MalformedIntegerInput`](crate::input::MalformedIntegerInput) if a [`ConstraintViolation`] occurs.
       15423  +
        ///
15340  15424   
        /* ServerBuilderGenerator.kt:271 */
15341         -
        pub fn build(self) -> crate::input::HttpEmptyPrefixHeadersInput {
       15425  +
        pub fn build(self) -> Result<crate::input::MalformedIntegerInput, ConstraintViolation> {
15342  15426   
            self.build_enforcing_all_constraints()
15343  15427   
        }
15344  15428   
        /* ServerBuilderGenerator.kt:283 */
15345         -
        fn build_enforcing_all_constraints(self) -> crate::input::HttpEmptyPrefixHeadersInput {
       15429  +
        fn build_enforcing_all_constraints(
       15430  +
            self,
       15431  +
        ) -> Result<crate::input::MalformedIntegerInput, ConstraintViolation> {
       15432  +
            /* ServerBuilderGenerator.kt:287 */
       15433  +
            Ok(
15346  15434   
                /* ServerBuilderGenerator.kt:542 */
15347         -
            crate::input::HttpEmptyPrefixHeadersInput {
       15435  +
                crate::input::MalformedIntegerInput {
15348  15436   
                    /* ServerBuilderGenerator.kt:546 */
15349         -
                prefix_headers: self.prefix_headers,
       15437  +
                    integer_in_body: self.integer_in_body,
15350  15438   
                    /* ServerBuilderGenerator.kt:546 */
15351         -
                specific_header: self.specific_header,
       15439  +
                    integer_in_path: self
       15440  +
                        .integer_in_path
       15441  +
                        /* ServerBuilderGenerator.kt:569 */
       15442  +
                        .ok_or(ConstraintViolation::MissingIntegerInPath)?,
       15443  +
                    /* ServerBuilderGenerator.kt:546 */
       15444  +
                    integer_in_query: self.integer_in_query,
       15445  +
                    /* ServerBuilderGenerator.kt:546 */
       15446  +
                    integer_in_header: self.integer_in_header,
15352  15447   
                    /* ServerBuilderGenerator.kt:542 */
15353         -
            }
       15448  +
                }, /* ServerBuilderGenerator.kt:287 */
       15449  +
            )
15354  15450   
            /* ServerBuilderGenerator.kt:283 */
15355  15451   
        }
15356  15452   
        /* ServerBuilderGenerator.kt:215 */
15357  15453   
    }
15358  15454   
15359  15455   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
15360  15456   
}
15361         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPrefixHeadersInResponseInput`](crate::input::HttpPrefixHeadersInResponseInput).
15362         -
pub mod http_prefix_headers_in_response_input {
       15457  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedUnionInput`](crate::input::MalformedUnionInput).
       15458  +
pub mod malformed_union_input {
15363  15459   
15364  15460   
    /* ServerBuilderGenerator.kt:461 */
15365         -
    impl ::std::convert::From<Builder> for crate::input::HttpPrefixHeadersInResponseInput {
       15461  +
    impl ::std::convert::From<Builder> for crate::input::MalformedUnionInput {
15366  15462   
        fn from(builder: Builder) -> Self {
15367  15463   
            builder.build()
15368  15464   
        }
15369  15465   
    }
15370         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPrefixHeadersInResponseInput`](crate::input::HttpPrefixHeadersInResponseInput).
       15466  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedUnionInput`](crate::input::MalformedUnionInput).
15371  15467   
    /* RustType.kt:534 */
15372  15468   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
15373  15469   
    /* ServerBuilderGenerator.kt:211 */
15374         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       15470  +
    pub struct Builder {
       15471  +
        /* ServerBuilderGenerator.kt:308 */
       15472  +
        pub(crate) union: ::std::option::Option<crate::model::SimpleUnion>,
       15473  +
        /* ServerBuilderGenerator.kt:211 */
       15474  +
    }
15375  15475   
    /* ServerBuilderGenerator.kt:215 */
15376  15476   
    impl Builder {
15377         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPrefixHeadersInResponseInput`](crate::input::HttpPrefixHeadersInResponseInput).
       15477  +
        /* ServerBuilderGenerator.kt:331 */
       15478  +
        #[allow(missing_docs)] // documentation missing in model
       15479  +
                               /* ServerBuilderGenerator.kt:343 */
       15480  +
        pub fn union(mut self, input: ::std::option::Option<crate::model::SimpleUnion>) -> Self {
       15481  +
            /* ServerBuilderGenerator.kt:344 */
       15482  +
            self.union =
       15483  +
                /* ServerBuilderGenerator.kt:376 */input
       15484  +
            /* ServerBuilderGenerator.kt:344 */;
       15485  +
            self
       15486  +
            /* ServerBuilderGenerator.kt:343 */
       15487  +
        }
       15488  +
        /* ServerBuilderGenerator.kt:426 */
       15489  +
        #[allow(missing_docs)] // documentation missing in model
       15490  +
                               /* ServerBuilderGenerator.kt:428 */
       15491  +
        pub(crate) fn set_union(
       15492  +
            mut self,
       15493  +
            input: Option<impl ::std::convert::Into<crate::model::SimpleUnion>>,
       15494  +
        ) -> Self {
       15495  +
            /* ServerBuilderGenerator.kt:429 */
       15496  +
            self.union = input.map(|v| v.into());
       15497  +
            self
       15498  +
            /* ServerBuilderGenerator.kt:428 */
       15499  +
        }
       15500  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedUnionInput`](crate::input::MalformedUnionInput).
15378  15501   
        /* ServerBuilderGenerator.kt:271 */
15379         -
        pub fn build(self) -> crate::input::HttpPrefixHeadersInResponseInput {
       15502  +
        pub fn build(self) -> crate::input::MalformedUnionInput {
15380  15503   
            self.build_enforcing_all_constraints()
15381  15504   
        }
15382  15505   
        /* ServerBuilderGenerator.kt:283 */
15383         -
        fn build_enforcing_all_constraints(self) -> crate::input::HttpPrefixHeadersInResponseInput {
       15506  +
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedUnionInput {
15384  15507   
            /* ServerBuilderGenerator.kt:542 */
15385         -
            crate::input::HttpPrefixHeadersInResponseInput {
15386         -
            /* ServerBuilderGenerator.kt:542 */}
       15508  +
            crate::input::MalformedUnionInput {
       15509  +
                /* ServerBuilderGenerator.kt:546 */
       15510  +
                union: self.union,
       15511  +
                /* ServerBuilderGenerator.kt:542 */
       15512  +
            }
15387  15513   
            /* ServerBuilderGenerator.kt:283 */
15388  15514   
        }
15389  15515   
        /* ServerBuilderGenerator.kt:215 */
15390  15516   
    }
15391  15517   
15392  15518   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
15393  15519   
}
15394         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpPrefixHeadersInput`](crate::input::HttpPrefixHeadersInput).
15395         -
pub mod http_prefix_headers_input {
       15520  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedBooleanInput`](crate::input::MalformedBooleanInput).
       15521  +
pub mod malformed_boolean_input {
15396  15522   
15397         -
    /* ServerBuilderGenerator.kt:461 */
15398         -
    impl ::std::convert::From<Builder> for crate::input::HttpPrefixHeadersInput {
       15523  +
    /* RustType.kt:534 */
       15524  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       15525  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       15526  +
    /* RustType.kt:534 */
       15527  +
    #[non_exhaustive]
       15528  +
    /* ServerBuilderConstraintViolations.kt:75 */
       15529  +
    #[allow(clippy::enum_variant_names)]
       15530  +
    pub enum ConstraintViolation {
       15531  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`boolean_in_path` was not provided but it is required when building `MalformedBooleanInput`.
       15532  +
        /* ServerBuilderConstraintViolations.kt:144 */
       15533  +
        MissingBooleanInPath,
       15534  +
        /* ServerBuilderConstraintViolations.kt:75 */
       15535  +
    }
       15536  +
    /* ServerBuilderConstraintViolations.kt:116 */
       15537  +
    impl ::std::fmt::Display for ConstraintViolation {
       15538  +
        /* ServerBuilderConstraintViolations.kt:117 */
       15539  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       15540  +
            /* ServerBuilderConstraintViolations.kt:118 */
       15541  +
            match self {
       15542  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingBooleanInPath => write!(f, "`boolean_in_path` was not provided but it is required when building `MalformedBooleanInput`"),
       15543  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       15544  +
            /* ServerBuilderConstraintViolations.kt:117 */
       15545  +
        }
       15546  +
        /* ServerBuilderConstraintViolations.kt:116 */
       15547  +
    }
       15548  +
    /* ServerBuilderConstraintViolations.kt:83 */
       15549  +
    impl ::std::error::Error for ConstraintViolation {}
       15550  +
    /* ServerBuilderConstraintViolations.kt:172 */
       15551  +
    impl ConstraintViolation {
       15552  +
        pub(crate) fn as_validation_exception_field(
       15553  +
            self,
       15554  +
            path: ::std::string::String,
       15555  +
        ) -> crate::model::ValidationExceptionField {
       15556  +
            match self {
       15557  +
            ConstraintViolation::MissingBooleanInPath => crate::model::ValidationExceptionField {
       15558  +
                                                message: format!("Value at '{}/booleanInPath' failed to satisfy constraint: Member must not be null", path),
       15559  +
                                                path: path + "/booleanInPath",
       15560  +
                                            },
       15561  +
        }
       15562  +
        }
       15563  +
    }
       15564  +
    /* ServerBuilderGenerator.kt:234 */
       15565  +
    impl ::std::convert::From<ConstraintViolation>
       15566  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       15567  +
    {
       15568  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       15569  +
            let first_validation_exception_field =
       15570  +
                constraint_violation.as_validation_exception_field("".to_owned());
       15571  +
            let validation_exception = crate::error::ValidationException {
       15572  +
                message: format!(
       15573  +
                    "1 validation error detected. {}",
       15574  +
                    &first_validation_exception_field.message
       15575  +
                ),
       15576  +
                field_list: Some(vec![first_validation_exception_field]),
       15577  +
            };
       15578  +
            Self::ConstraintViolation(
       15579  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       15580  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       15581  +
                            )
       15582  +
        }
       15583  +
    }
       15584  +
    /* ServerBuilderGenerator.kt:244 */
       15585  +
    impl ::std::convert::From<Builder>
       15586  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedBooleanInput>
       15587  +
    {
15399  15588   
        fn from(builder: Builder) -> Self {
       15589  +
            Self::Unconstrained(builder)
       15590  +
        }
       15591  +
    }
       15592  +
    /* ServerBuilderGenerator.kt:446 */
       15593  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedBooleanInput {
       15594  +
        type Error = ConstraintViolation;
       15595  +
       15596  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
15400  15597   
            builder.build()
15401  15598   
        }
15402  15599   
    }
15403         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpPrefixHeadersInput`](crate::input::HttpPrefixHeadersInput).
       15600  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedBooleanInput`](crate::input::MalformedBooleanInput).
15404  15601   
    /* RustType.kt:534 */
15405  15602   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
15406  15603   
    /* ServerBuilderGenerator.kt:211 */
15407  15604   
    pub struct Builder {
15408  15605   
        /* ServerBuilderGenerator.kt:308 */
15409         -
        pub(crate) foo: ::std::option::Option<::std::string::String>,
       15606  +
        pub(crate) boolean_in_body: ::std::option::Option<bool>,
15410  15607   
        /* ServerBuilderGenerator.kt:308 */
15411         -
        pub(crate) foo_map: ::std::option::Option<
15412         -
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
15413         -
        >,
       15608  +
        pub(crate) boolean_in_path: ::std::option::Option<bool>,
       15609  +
        /* ServerBuilderGenerator.kt:308 */
       15610  +
        pub(crate) boolean_in_query: ::std::option::Option<bool>,
       15611  +
        /* ServerBuilderGenerator.kt:308 */
       15612  +
        pub(crate) boolean_in_header: ::std::option::Option<bool>,
15414  15613   
        /* ServerBuilderGenerator.kt:211 */
15415  15614   
    }
15416  15615   
    /* ServerBuilderGenerator.kt:215 */
15417  15616   
    impl Builder {
15418  15617   
        /* ServerBuilderGenerator.kt:331 */
15419  15618   
        #[allow(missing_docs)] // documentation missing in model
15420  15619   
                               /* ServerBuilderGenerator.kt:343 */
15421         -
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       15620  +
        pub fn boolean_in_body(mut self, input: ::std::option::Option<bool>) -> Self {
15422  15621   
            /* ServerBuilderGenerator.kt:344 */
15423         -
            self.foo =
       15622  +
            self.boolean_in_body =
15424  15623   
                /* ServerBuilderGenerator.kt:376 */input
15425  15624   
            /* ServerBuilderGenerator.kt:344 */;
15426  15625   
            self
15427  15626   
            /* ServerBuilderGenerator.kt:343 */
15428  15627   
        }
15429  15628   
        /* ServerBuilderGenerator.kt:426 */
15430  15629   
        #[allow(missing_docs)] // documentation missing in model
15431  15630   
                               /* ServerBuilderGenerator.kt:428 */
15432         -
        pub(crate) fn set_foo(
       15631  +
        pub(crate) fn set_boolean_in_body(
15433  15632   
            mut self,
15434         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       15633  +
            input: Option<impl ::std::convert::Into<bool>>,
15435  15634   
        ) -> Self {
15436  15635   
            /* ServerBuilderGenerator.kt:429 */
15437         -
            self.foo = input.map(|v| v.into());
       15636  +
            self.boolean_in_body = input.map(|v| v.into());
       15637  +
            self
       15638  +
            /* ServerBuilderGenerator.kt:428 */
       15639  +
        }
       15640  +
        /* ServerBuilderGenerator.kt:331 */
       15641  +
        #[allow(missing_docs)] // documentation missing in model
       15642  +
                               /* ServerBuilderGenerator.kt:343 */
       15643  +
        pub fn boolean_in_path(mut self, input: bool) -> Self {
       15644  +
            /* ServerBuilderGenerator.kt:344 */
       15645  +
            self.boolean_in_path =
       15646  +
                /* ServerBuilderGenerator.kt:345 */Some(
       15647  +
                    /* ServerBuilderGenerator.kt:376 */input
       15648  +
                /* ServerBuilderGenerator.kt:345 */)
       15649  +
            /* ServerBuilderGenerator.kt:344 */;
       15650  +
            self
       15651  +
            /* ServerBuilderGenerator.kt:343 */
       15652  +
        }
       15653  +
        /* ServerBuilderGenerator.kt:426 */
       15654  +
        #[allow(missing_docs)] // documentation missing in model
       15655  +
                               /* ServerBuilderGenerator.kt:428 */
       15656  +
        pub(crate) fn set_boolean_in_path(
       15657  +
            mut self,
       15658  +
            input: impl ::std::convert::Into<bool>,
       15659  +
        ) -> Self {
       15660  +
            /* ServerBuilderGenerator.kt:429 */
       15661  +
            self.boolean_in_path = Some(input.into());
       15662  +
            self
       15663  +
            /* ServerBuilderGenerator.kt:428 */
       15664  +
        }
       15665  +
        /* ServerBuilderGenerator.kt:331 */
       15666  +
        #[allow(missing_docs)] // documentation missing in model
       15667  +
                               /* ServerBuilderGenerator.kt:343 */
       15668  +
        pub fn boolean_in_query(mut self, input: ::std::option::Option<bool>) -> Self {
       15669  +
            /* ServerBuilderGenerator.kt:344 */
       15670  +
            self.boolean_in_query =
       15671  +
                /* ServerBuilderGenerator.kt:376 */input
       15672  +
            /* ServerBuilderGenerator.kt:344 */;
       15673  +
            self
       15674  +
            /* ServerBuilderGenerator.kt:343 */
       15675  +
        }
       15676  +
        /* ServerBuilderGenerator.kt:426 */
       15677  +
        #[allow(missing_docs)] // documentation missing in model
       15678  +
                               /* ServerBuilderGenerator.kt:428 */
       15679  +
        pub(crate) fn set_boolean_in_query(
       15680  +
            mut self,
       15681  +
            input: Option<impl ::std::convert::Into<bool>>,
       15682  +
        ) -> Self {
       15683  +
            /* ServerBuilderGenerator.kt:429 */
       15684  +
            self.boolean_in_query = input.map(|v| v.into());
15438  15685   
            self
15439  15686   
            /* ServerBuilderGenerator.kt:428 */
15440  15687   
        }
15441  15688   
        /* ServerBuilderGenerator.kt:331 */
15442  15689   
        #[allow(missing_docs)] // documentation missing in model
15443  15690   
                               /* ServerBuilderGenerator.kt:343 */
15444         -
        pub fn foo_map(
15445         -
            mut self,
15446         -
            input: ::std::option::Option<
15447         -
                ::std::collections::HashMap<::std::string::String, ::std::string::String>,
15448         -
            >,
15449         -
        ) -> Self {
       15691  +
        pub fn boolean_in_header(mut self, input: ::std::option::Option<bool>) -> Self {
15450  15692   
            /* ServerBuilderGenerator.kt:344 */
15451         -
            self.foo_map =
       15693  +
            self.boolean_in_header =
15452  15694   
                /* ServerBuilderGenerator.kt:376 */input
15453  15695   
            /* ServerBuilderGenerator.kt:344 */;
15454  15696   
            self
15455  15697   
            /* ServerBuilderGenerator.kt:343 */
15456  15698   
        }
15457  15699   
        /* ServerBuilderGenerator.kt:426 */
15458  15700   
        #[allow(missing_docs)] // documentation missing in model
15459  15701   
                               /* ServerBuilderGenerator.kt:428 */
15460         -
        pub(crate) fn set_foo_map(
       15702  +
        pub(crate) fn set_boolean_in_header(
15461  15703   
            mut self,
15462         -
            input: Option<
15463         -
                impl ::std::convert::Into<
15464         -
                    ::std::collections::HashMap<::std::string::String, ::std::string::String>,
15465         -
                >,
15466         -
            >,
       15704  +
            input: Option<impl ::std::convert::Into<bool>>,
15467  15705   
        ) -> Self {
15468  15706   
            /* ServerBuilderGenerator.kt:429 */
15469         -
            self.foo_map = input.map(|v| v.into());
       15707  +
            self.boolean_in_header = input.map(|v| v.into());
15470  15708   
            self
15471  15709   
            /* ServerBuilderGenerator.kt:428 */
15472  15710   
        }
15473         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpPrefixHeadersInput`](crate::input::HttpPrefixHeadersInput).
       15711  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedBooleanInput`](crate::input::MalformedBooleanInput).
       15712  +
        /// /* ServerBuilderGenerator.kt:260 */
       15713  +
        /// The builder fails to construct a [`MalformedBooleanInput`](crate::input::MalformedBooleanInput) if a [`ConstraintViolation`] occurs.
       15714  +
        ///
15474  15715   
        /* ServerBuilderGenerator.kt:271 */
15475         -
        pub fn build(self) -> crate::input::HttpPrefixHeadersInput {
       15716  +
        pub fn build(self) -> Result<crate::input::MalformedBooleanInput, ConstraintViolation> {
15476  15717   
            self.build_enforcing_all_constraints()
15477  15718   
        }
15478  15719   
        /* ServerBuilderGenerator.kt:283 */
15479         -
        fn build_enforcing_all_constraints(self) -> crate::input::HttpPrefixHeadersInput {
       15720  +
        fn build_enforcing_all_constraints(
       15721  +
            self,
       15722  +
        ) -> Result<crate::input::MalformedBooleanInput, ConstraintViolation> {
       15723  +
            /* ServerBuilderGenerator.kt:287 */
       15724  +
            Ok(
15480  15725   
                /* ServerBuilderGenerator.kt:542 */
15481         -
            crate::input::HttpPrefixHeadersInput {
       15726  +
                crate::input::MalformedBooleanInput {
15482  15727   
                    /* ServerBuilderGenerator.kt:546 */
15483         -
                foo: self.foo,
       15728  +
                    boolean_in_body: self.boolean_in_body,
15484  15729   
                    /* ServerBuilderGenerator.kt:546 */
15485         -
                foo_map: self.foo_map,
       15730  +
                    boolean_in_path: self
       15731  +
                        .boolean_in_path
       15732  +
                        /* ServerBuilderGenerator.kt:569 */
       15733  +
                        .ok_or(ConstraintViolation::MissingBooleanInPath)?,
       15734  +
                    /* ServerBuilderGenerator.kt:546 */
       15735  +
                    boolean_in_query: self.boolean_in_query,
       15736  +
                    /* ServerBuilderGenerator.kt:546 */
       15737  +
                    boolean_in_header: self.boolean_in_header,
15486  15738   
                    /* ServerBuilderGenerator.kt:542 */
15487         -
            }
       15739  +
                }, /* ServerBuilderGenerator.kt:287 */
       15740  +
            )
15488  15741   
            /* ServerBuilderGenerator.kt:283 */
15489  15742   
        }
15490  15743   
        /* ServerBuilderGenerator.kt:215 */
15491  15744   
    }
15492  15745   
15493  15746   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
15494  15747   
}
15495         -
/// /* ServerBuilderGenerator.kt:171 */See [`QueryParamsAsStringListMapInput`](crate::input::QueryParamsAsStringListMapInput).
15496         -
pub mod query_params_as_string_list_map_input {
       15748  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedListInput`](crate::input::MalformedListInput).
       15749  +
pub mod malformed_list_input {
15497  15750   
15498  15751   
    /* ServerBuilderGenerator.kt:461 */
15499         -
    impl ::std::convert::From<Builder> for crate::input::QueryParamsAsStringListMapInput {
       15752  +
    impl ::std::convert::From<Builder> for crate::input::MalformedListInput {
15500  15753   
        fn from(builder: Builder) -> Self {
15501  15754   
            builder.build()
15502  15755   
        }
15503  15756   
    }
15504         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`QueryParamsAsStringListMapInput`](crate::input::QueryParamsAsStringListMapInput).
       15757  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedListInput`](crate::input::MalformedListInput).
15505  15758   
    /* RustType.kt:534 */
15506  15759   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
15507  15760   
    /* ServerBuilderGenerator.kt:211 */
15508  15761   
    pub struct Builder {
15509  15762   
        /* ServerBuilderGenerator.kt:308 */
15510         -
        pub(crate) qux: ::std::option::Option<::std::string::String>,
15511         -
        /* ServerBuilderGenerator.kt:308 */
15512         -
        pub(crate) foo: ::std::option::Option<
15513         -
            ::std::collections::HashMap<
15514         -
                ::std::string::String,
15515         -
                ::std::vec::Vec<::std::string::String>,
15516         -
            >,
15517         -
        >,
       15763  +
        pub(crate) body_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
15518  15764   
        /* ServerBuilderGenerator.kt:211 */
15519  15765   
    }
15520  15766   
    /* ServerBuilderGenerator.kt:215 */
15521  15767   
    impl Builder {
15522  15768   
        /* ServerBuilderGenerator.kt:331 */
15523  15769   
        #[allow(missing_docs)] // documentation missing in model
15524  15770   
                               /* ServerBuilderGenerator.kt:343 */
15525         -
        pub fn qux(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
15526         -
            /* ServerBuilderGenerator.kt:344 */
15527         -
            self.qux =
15528         -
                /* ServerBuilderGenerator.kt:376 */input
15529         -
            /* ServerBuilderGenerator.kt:344 */;
15530         -
            self
15531         -
            /* ServerBuilderGenerator.kt:343 */
15532         -
        }
15533         -
        /* ServerBuilderGenerator.kt:426 */
15534         -
        #[allow(missing_docs)] // documentation missing in model
15535         -
                               /* ServerBuilderGenerator.kt:428 */
15536         -
        pub(crate) fn set_qux(
15537         -
            mut self,
15538         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
15539         -
        ) -> Self {
15540         -
            /* ServerBuilderGenerator.kt:429 */
15541         -
            self.qux = input.map(|v| v.into());
15542         -
            self
15543         -
            /* ServerBuilderGenerator.kt:428 */
15544         -
        }
15545         -
        /* ServerBuilderGenerator.kt:331 */
15546         -
        #[allow(missing_docs)] // documentation missing in model
15547         -
                               /* ServerBuilderGenerator.kt:343 */
15548         -
        pub fn foo(
       15771  +
        pub fn body_list(
15549  15772   
            mut self,
15550         -
            input: ::std::option::Option<
15551         -
                ::std::collections::HashMap<
15552         -
                    ::std::string::String,
15553         -
                    ::std::vec::Vec<::std::string::String>,
15554         -
                >,
15555         -
            >,
       15773  +
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
15556  15774   
        ) -> Self {
15557  15775   
            /* ServerBuilderGenerator.kt:344 */
15558         -
            self.foo =
       15776  +
            self.body_list =
15559  15777   
                /* ServerBuilderGenerator.kt:376 */input
15560  15778   
            /* ServerBuilderGenerator.kt:344 */;
15561  15779   
            self
15562  15780   
            /* ServerBuilderGenerator.kt:343 */
15563  15781   
        }
15564  15782   
        /* ServerBuilderGenerator.kt:426 */
15565  15783   
        #[allow(missing_docs)] // documentation missing in model
15566  15784   
                               /* ServerBuilderGenerator.kt:428 */
15567         -
        pub(crate) fn set_foo(
       15785  +
        pub(crate) fn set_body_list(
15568  15786   
            mut self,
15569         -
            input: Option<
15570         -
                impl ::std::convert::Into<
15571         -
                    ::std::collections::HashMap<
15572         -
                        ::std::string::String,
15573         -
                        ::std::vec::Vec<::std::string::String>,
15574         -
                    >,
15575         -
                >,
15576         -
            >,
       15787  +
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
15577  15788   
        ) -> Self {
15578  15789   
            /* ServerBuilderGenerator.kt:429 */
15579         -
            self.foo = input.map(|v| v.into());
       15790  +
            self.body_list = input.map(|v| v.into());
15580  15791   
            self
15581  15792   
            /* ServerBuilderGenerator.kt:428 */
15582  15793   
        }
15583         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`QueryParamsAsStringListMapInput`](crate::input::QueryParamsAsStringListMapInput).
       15794  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedListInput`](crate::input::MalformedListInput).
15584  15795   
        /* ServerBuilderGenerator.kt:271 */
15585         -
        pub fn build(self) -> crate::input::QueryParamsAsStringListMapInput {
       15796  +
        pub fn build(self) -> crate::input::MalformedListInput {
15586  15797   
            self.build_enforcing_all_constraints()
15587  15798   
        }
15588  15799   
        /* ServerBuilderGenerator.kt:283 */
15589         -
        fn build_enforcing_all_constraints(self) -> crate::input::QueryParamsAsStringListMapInput {
       15800  +
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedListInput {
15590  15801   
            /* ServerBuilderGenerator.kt:542 */
15591         -
            crate::input::QueryParamsAsStringListMapInput {
15592         -
                /* ServerBuilderGenerator.kt:546 */
15593         -
                qux: self.qux,
       15802  +
            crate::input::MalformedListInput {
15594  15803   
                /* ServerBuilderGenerator.kt:546 */
15595         -
                foo: self.foo,
       15804  +
                body_list: self.body_list,
15596  15805   
                /* ServerBuilderGenerator.kt:542 */
15597  15806   
            }
15598  15807   
            /* ServerBuilderGenerator.kt:283 */
15599  15808   
        }
15600  15809   
        /* ServerBuilderGenerator.kt:215 */
15601  15810   
    }
15602  15811   
15603  15812   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
15604  15813   
}
15605         -
/// /* ServerBuilderGenerator.kt:171 */See [`QueryPrecedenceInput`](crate::input::QueryPrecedenceInput).
15606         -
pub mod query_precedence_input {
       15814  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedMapInput`](crate::input::MalformedMapInput).
       15815  +
pub mod malformed_map_input {
15607  15816   
15608  15817   
    /* ServerBuilderGenerator.kt:461 */
15609         -
    impl ::std::convert::From<Builder> for crate::input::QueryPrecedenceInput {
       15818  +
    impl ::std::convert::From<Builder> for crate::input::MalformedMapInput {
15610  15819   
        fn from(builder: Builder) -> Self {
15611  15820   
            builder.build()
15612  15821   
        }
15613  15822   
    }
15614         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`QueryPrecedenceInput`](crate::input::QueryPrecedenceInput).
       15823  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedMapInput`](crate::input::MalformedMapInput).
15615  15824   
    /* RustType.kt:534 */
15616  15825   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
15617  15826   
    /* ServerBuilderGenerator.kt:211 */
15618  15827   
    pub struct Builder {
15619  15828   
        /* ServerBuilderGenerator.kt:308 */
15620         -
        pub(crate) foo: ::std::option::Option<::std::string::String>,
15621         -
        /* ServerBuilderGenerator.kt:308 */
15622         -
        pub(crate) baz: ::std::option::Option<
       15829  +
        pub(crate) body_map: ::std::option::Option<
15623  15830   
            ::std::collections::HashMap<::std::string::String, ::std::string::String>,
15624  15831   
        >,
15625  15832   
        /* ServerBuilderGenerator.kt:211 */
15626  15833   
    }
15627  15834   
    /* ServerBuilderGenerator.kt:215 */
15628  15835   
    impl Builder {
15629  15836   
        /* ServerBuilderGenerator.kt:331 */
15630  15837   
        #[allow(missing_docs)] // documentation missing in model
15631  15838   
                               /* ServerBuilderGenerator.kt:343 */
15632         -
        pub fn foo(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
15633         -
            /* ServerBuilderGenerator.kt:344 */
15634         -
            self.foo =
15635         -
                /* ServerBuilderGenerator.kt:376 */input
15636         -
            /* ServerBuilderGenerator.kt:344 */;
15637         -
            self
15638         -
            /* ServerBuilderGenerator.kt:343 */
15639         -
        }
15640         -
        /* ServerBuilderGenerator.kt:426 */
15641         -
        #[allow(missing_docs)] // documentation missing in model
15642         -
                               /* ServerBuilderGenerator.kt:428 */
15643         -
        pub(crate) fn set_foo(
15644         -
            mut self,
15645         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
15646         -
        ) -> Self {
15647         -
            /* ServerBuilderGenerator.kt:429 */
15648         -
            self.foo = input.map(|v| v.into());
15649         -
            self
15650         -
            /* ServerBuilderGenerator.kt:428 */
15651         -
        }
15652         -
        /* ServerBuilderGenerator.kt:331 */
15653         -
        #[allow(missing_docs)] // documentation missing in model
15654         -
                               /* ServerBuilderGenerator.kt:343 */
15655         -
        pub fn baz(
       15839  +
        pub fn body_map(
15656  15840   
            mut self,
15657  15841   
            input: ::std::option::Option<
15658  15842   
                ::std::collections::HashMap<::std::string::String, ::std::string::String>,
15659  15843   
            >,
15660  15844   
        ) -> Self {
15661  15845   
            /* ServerBuilderGenerator.kt:344 */
15662         -
            self.baz =
       15846  +
            self.body_map =
15663  15847   
                /* ServerBuilderGenerator.kt:376 */input
15664  15848   
            /* ServerBuilderGenerator.kt:344 */;
15665  15849   
            self
15666  15850   
            /* ServerBuilderGenerator.kt:343 */
15667  15851   
        }
15668  15852   
        /* ServerBuilderGenerator.kt:426 */
15669  15853   
        #[allow(missing_docs)] // documentation missing in model
15670  15854   
                               /* ServerBuilderGenerator.kt:428 */
15671         -
        pub(crate) fn set_baz(
       15855  +
        pub(crate) fn set_body_map(
15672  15856   
            mut self,
15673  15857   
            input: Option<
15674  15858   
                impl ::std::convert::Into<
15675  15859   
                    ::std::collections::HashMap<::std::string::String, ::std::string::String>,
15676  15860   
                >,
15677  15861   
            >,
15678  15862   
        ) -> Self {
15679  15863   
            /* ServerBuilderGenerator.kt:429 */
15680         -
            self.baz = input.map(|v| v.into());
       15864  +
            self.body_map = input.map(|v| v.into());
15681  15865   
            self
15682  15866   
            /* ServerBuilderGenerator.kt:428 */
15683  15867   
        }
15684         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`QueryPrecedenceInput`](crate::input::QueryPrecedenceInput).
       15868  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedMapInput`](crate::input::MalformedMapInput).
15685  15869   
        /* ServerBuilderGenerator.kt:271 */
15686         -
        pub fn build(self) -> crate::input::QueryPrecedenceInput {
       15870  +
        pub fn build(self) -> crate::input::MalformedMapInput {
15687  15871   
            self.build_enforcing_all_constraints()
15688  15872   
        }
15689  15873   
        /* ServerBuilderGenerator.kt:283 */
15690         -
        fn build_enforcing_all_constraints(self) -> crate::input::QueryPrecedenceInput {
       15874  +
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedMapInput {
15691  15875   
            /* ServerBuilderGenerator.kt:542 */
15692         -
            crate::input::QueryPrecedenceInput {
15693         -
                /* ServerBuilderGenerator.kt:546 */
15694         -
                foo: self.foo,
       15876  +
            crate::input::MalformedMapInput {
15695  15877   
                /* ServerBuilderGenerator.kt:546 */
15696         -
                baz: self.baz,
       15878  +
                body_map: self.body_map,
15697  15879   
                /* ServerBuilderGenerator.kt:542 */
15698  15880   
            }
15699  15881   
            /* ServerBuilderGenerator.kt:283 */
15700  15882   
        }
15701  15883   
        /* ServerBuilderGenerator.kt:215 */
15702  15884   
    }
15703  15885   
15704  15886   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
15705  15887   
}
15706         -
/// /* ServerBuilderGenerator.kt:171 */See [`QueryIdempotencyTokenAutoFillInput`](crate::input::QueryIdempotencyTokenAutoFillInput).
15707         -
pub mod query_idempotency_token_auto_fill_input {
       15888  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedBlobInput`](crate::input::MalformedBlobInput).
       15889  +
pub mod malformed_blob_input {
15708  15890   
15709  15891   
    /* ServerBuilderGenerator.kt:461 */
15710         -
    impl ::std::convert::From<Builder> for crate::input::QueryIdempotencyTokenAutoFillInput {
       15892  +
    impl ::std::convert::From<Builder> for crate::input::MalformedBlobInput {
15711  15893   
        fn from(builder: Builder) -> Self {
15712  15894   
            builder.build()
15713  15895   
        }
15714  15896   
    }
15715         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`QueryIdempotencyTokenAutoFillInput`](crate::input::QueryIdempotencyTokenAutoFillInput).
       15897  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedBlobInput`](crate::input::MalformedBlobInput).
15716  15898   
    /* RustType.kt:534 */
15717  15899   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
15718  15900   
    /* ServerBuilderGenerator.kt:211 */
15719  15901   
    pub struct Builder {
15720  15902   
        /* ServerBuilderGenerator.kt:308 */
15721         -
        pub(crate) token: ::std::option::Option<::std::string::String>,
       15903  +
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::Blob>,
15722  15904   
        /* ServerBuilderGenerator.kt:211 */
15723  15905   
    }
15724  15906   
    /* ServerBuilderGenerator.kt:215 */
15725  15907   
    impl Builder {
15726  15908   
        /* ServerBuilderGenerator.kt:331 */
15727  15909   
        #[allow(missing_docs)] // documentation missing in model
15728  15910   
                               /* ServerBuilderGenerator.kt:343 */
15729         -
        pub fn token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       15911  +
        pub fn blob(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
15730  15912   
            /* ServerBuilderGenerator.kt:344 */
15731         -
            self.token =
       15913  +
            self.blob =
15732  15914   
                /* ServerBuilderGenerator.kt:376 */input
15733  15915   
            /* ServerBuilderGenerator.kt:344 */;
15734  15916   
            self
15735  15917   
            /* ServerBuilderGenerator.kt:343 */
15736  15918   
        }
15737  15919   
        /* ServerBuilderGenerator.kt:426 */
15738  15920   
        #[allow(missing_docs)] // documentation missing in model
15739  15921   
                               /* ServerBuilderGenerator.kt:428 */
15740         -
        pub(crate) fn set_token(
       15922  +
        pub(crate) fn set_blob(
15741  15923   
            mut self,
15742         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       15924  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
15743  15925   
        ) -> Self {
15744  15926   
            /* ServerBuilderGenerator.kt:429 */
15745         -
            self.token = input.map(|v| v.into());
       15927  +
            self.blob = input.map(|v| v.into());
15746  15928   
            self
15747  15929   
            /* ServerBuilderGenerator.kt:428 */
15748  15930   
        }
15749         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`QueryIdempotencyTokenAutoFillInput`](crate::input::QueryIdempotencyTokenAutoFillInput).
       15931  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedBlobInput`](crate::input::MalformedBlobInput).
15750  15932   
        /* ServerBuilderGenerator.kt:271 */
15751         -
        pub fn build(self) -> crate::input::QueryIdempotencyTokenAutoFillInput {
       15933  +
        pub fn build(self) -> crate::input::MalformedBlobInput {
15752  15934   
            self.build_enforcing_all_constraints()
15753  15935   
        }
15754  15936   
        /* ServerBuilderGenerator.kt:283 */
15755         -
        fn build_enforcing_all_constraints(
15756         -
            self,
15757         -
        ) -> crate::input::QueryIdempotencyTokenAutoFillInput {
       15937  +
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedBlobInput {
15758  15938   
            /* ServerBuilderGenerator.kt:542 */
15759         -
            crate::input::QueryIdempotencyTokenAutoFillInput {
       15939  +
            crate::input::MalformedBlobInput {
15760  15940   
                /* ServerBuilderGenerator.kt:546 */
15761         -
                token: self.token,
       15941  +
                blob: self.blob,
15762  15942   
                /* ServerBuilderGenerator.kt:542 */
15763  15943   
            }
15764  15944   
            /* ServerBuilderGenerator.kt:283 */
15765  15945   
        }
15766  15946   
        /* ServerBuilderGenerator.kt:215 */
15767  15947   
    }
15768  15948   
15769  15949   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
15770  15950   
}
15771         -
/// /* ServerBuilderGenerator.kt:171 */See [`OmitsSerializingEmptyListsInput`](crate::input::OmitsSerializingEmptyListsInput).
15772         -
pub mod omits_serializing_empty_lists_input {
       15951  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedByteInput`](crate::input::MalformedByteInput).
       15952  +
pub mod malformed_byte_input {
15773  15953   
15774  15954   
    /* RustType.kt:534 */
15775  15955   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
15776  15956   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
15777  15957   
    /* RustType.kt:534 */
15778  15958   
    #[non_exhaustive]
15779  15959   
    /* ServerBuilderConstraintViolations.kt:75 */
15780  15960   
    #[allow(clippy::enum_variant_names)]
15781  15961   
    pub enum ConstraintViolation {
15782         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `query_enum_list` when building `OmitsSerializingEmptyListsInput`.
15783         -
        /* RustType.kt:534 */
15784         -
        #[doc(hidden)]
15785         -
        /* ServerBuilderConstraintViolations.kt:165 */
15786         -
        QueryEnumList(crate::model::foo_enum_list::ConstraintViolation),
       15962  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`byte_in_path` was not provided but it is required when building `MalformedByteInput`.
       15963  +
        /* ServerBuilderConstraintViolations.kt:144 */
       15964  +
        MissingByteInPath,
15787  15965   
        /* ServerBuilderConstraintViolations.kt:75 */
15788  15966   
    }
15789  15967   
    /* ServerBuilderConstraintViolations.kt:116 */
15790  15968   
    impl ::std::fmt::Display for ConstraintViolation {
15791  15969   
        /* ServerBuilderConstraintViolations.kt:117 */
15792  15970   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
15793  15971   
            /* ServerBuilderConstraintViolations.kt:118 */
15794  15972   
            match self {
15795         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::QueryEnumList(_) => write!(f, "constraint violation occurred building member `query_enum_list` when building `OmitsSerializingEmptyListsInput`"),
       15973  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingByteInPath => write!(f, "`byte_in_path` was not provided but it is required when building `MalformedByteInput`"),
15796  15974   
            /* ServerBuilderConstraintViolations.kt:118 */}
15797  15975   
            /* ServerBuilderConstraintViolations.kt:117 */
15798  15976   
        }
15799  15977   
        /* ServerBuilderConstraintViolations.kt:116 */
15800  15978   
    }
15801  15979   
    /* ServerBuilderConstraintViolations.kt:83 */
15802  15980   
    impl ::std::error::Error for ConstraintViolation {}
15803  15981   
    /* ServerBuilderConstraintViolations.kt:172 */
15804  15982   
    impl ConstraintViolation {
15805  15983   
        pub(crate) fn as_validation_exception_field(
15806  15984   
            self,
15807  15985   
            path: ::std::string::String,
15808  15986   
        ) -> crate::model::ValidationExceptionField {
15809  15987   
            match self {
15810         -
                ConstraintViolation::QueryEnumList(inner) => {
15811         -
                    inner.as_validation_exception_field(path + "/queryEnumList")
15812         -
                }
       15988  +
            ConstraintViolation::MissingByteInPath => crate::model::ValidationExceptionField {
       15989  +
                                                message: format!("Value at '{}/byteInPath' failed to satisfy constraint: Member must not be null", path),
       15990  +
                                                path: path + "/byteInPath",
       15991  +
                                            },
15813  15992   
        }
15814  15993   
        }
15815  15994   
    }
15816  15995   
    /* ServerBuilderGenerator.kt:234 */
15817  15996   
    impl ::std::convert::From<ConstraintViolation>
15818  15997   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
15819  15998   
    {
15820  15999   
        fn from(constraint_violation: ConstraintViolation) -> Self {
15821  16000   
            let first_validation_exception_field =
15822  16001   
                constraint_violation.as_validation_exception_field("".to_owned());
15823  16002   
            let validation_exception = crate::error::ValidationException {
15824  16003   
                message: format!(
15825  16004   
                    "1 validation error detected. {}",
15826  16005   
                    &first_validation_exception_field.message
15827  16006   
                ),
15828  16007   
                field_list: Some(vec![first_validation_exception_field]),
15829  16008   
            };
15830  16009   
            Self::ConstraintViolation(
15831  16010   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
15832  16011   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
15833  16012   
                            )
15834  16013   
        }
15835  16014   
    }
15836  16015   
    /* ServerBuilderGenerator.kt:244 */
15837  16016   
    impl ::std::convert::From<Builder>
15838         -
        for crate::constrained::MaybeConstrained<crate::input::OmitsSerializingEmptyListsInput>
       16017  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedByteInput>
15839  16018   
    {
15840  16019   
        fn from(builder: Builder) -> Self {
15841  16020   
            Self::Unconstrained(builder)
15842  16021   
        }
15843  16022   
    }
15844  16023   
    /* ServerBuilderGenerator.kt:446 */
15845         -
    impl ::std::convert::TryFrom<Builder> for crate::input::OmitsSerializingEmptyListsInput {
       16024  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedByteInput {
15846  16025   
        type Error = ConstraintViolation;
15847  16026   
15848  16027   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
15849  16028   
            builder.build()
15850  16029   
        }
15851  16030   
    }
15852         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OmitsSerializingEmptyListsInput`](crate::input::OmitsSerializingEmptyListsInput).
       16031  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedByteInput`](crate::input::MalformedByteInput).
15853  16032   
    /* RustType.kt:534 */
15854  16033   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
15855  16034   
    /* ServerBuilderGenerator.kt:211 */
15856  16035   
    pub struct Builder {
15857  16036   
        /* ServerBuilderGenerator.kt:308 */
15858         -
        pub(crate) query_string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
15859         -
        /* ServerBuilderGenerator.kt:308 */
15860         -
        pub(crate) query_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
15861         -
        /* ServerBuilderGenerator.kt:308 */
15862         -
        pub(crate) query_double_list: ::std::option::Option<::std::vec::Vec<f64>>,
15863         -
        /* ServerBuilderGenerator.kt:308 */
15864         -
        pub(crate) query_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
15865         -
        /* ServerBuilderGenerator.kt:308 */
15866         -
        pub(crate) query_timestamp_list:
15867         -
            ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
15868         -
        /* ServerBuilderGenerator.kt:308 */
15869         -
        pub(crate) query_enum_list: ::std::option::Option<
15870         -
            crate::constrained::MaybeConstrained<
15871         -
                crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
15872         -
            >,
15873         -
        >,
       16037  +
        pub(crate) byte_in_body: ::std::option::Option<i8>,
15874  16038   
        /* ServerBuilderGenerator.kt:308 */
15875         -
        pub(crate) query_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
       16039  +
        pub(crate) byte_in_path: ::std::option::Option<i8>,
       16040  +
        /* ServerBuilderGenerator.kt:308 */
       16041  +
        pub(crate) byte_in_query: ::std::option::Option<i8>,
       16042  +
        /* ServerBuilderGenerator.kt:308 */
       16043  +
        pub(crate) byte_in_header: ::std::option::Option<i8>,
15876  16044   
        /* ServerBuilderGenerator.kt:211 */
15877  16045   
    }
15878  16046   
    /* ServerBuilderGenerator.kt:215 */
15879  16047   
    impl Builder {
15880  16048   
        /* ServerBuilderGenerator.kt:331 */
15881  16049   
        #[allow(missing_docs)] // documentation missing in model
15882  16050   
                               /* ServerBuilderGenerator.kt:343 */
15883         -
        pub fn query_string_list(
15884         -
            mut self,
15885         -
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
15886         -
        ) -> Self {
15887         -
            /* ServerBuilderGenerator.kt:344 */
15888         -
            self.query_string_list =
15889         -
                /* ServerBuilderGenerator.kt:376 */input
15890         -
            /* ServerBuilderGenerator.kt:344 */;
15891         -
            self
15892         -
            /* ServerBuilderGenerator.kt:343 */
15893         -
        }
15894         -
        /* ServerBuilderGenerator.kt:426 */
15895         -
        #[allow(missing_docs)] // documentation missing in model
15896         -
                               /* ServerBuilderGenerator.kt:428 */
15897         -
        pub(crate) fn set_query_string_list(
15898         -
            mut self,
15899         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
15900         -
        ) -> Self {
15901         -
            /* ServerBuilderGenerator.kt:429 */
15902         -
            self.query_string_list = input.map(|v| v.into());
15903         -
            self
15904         -
            /* ServerBuilderGenerator.kt:428 */
15905         -
        }
15906         -
        /* ServerBuilderGenerator.kt:331 */
15907         -
        #[allow(missing_docs)] // documentation missing in model
15908         -
                               /* ServerBuilderGenerator.kt:343 */
15909         -
        pub fn query_integer_list(
15910         -
            mut self,
15911         -
            input: ::std::option::Option<::std::vec::Vec<i32>>,
15912         -
        ) -> Self {
15913         -
            /* ServerBuilderGenerator.kt:344 */
15914         -
            self.query_integer_list =
15915         -
                /* ServerBuilderGenerator.kt:376 */input
15916         -
            /* ServerBuilderGenerator.kt:344 */;
15917         -
            self
15918         -
            /* ServerBuilderGenerator.kt:343 */
15919         -
        }
15920         -
        /* ServerBuilderGenerator.kt:426 */
15921         -
        #[allow(missing_docs)] // documentation missing in model
15922         -
                               /* ServerBuilderGenerator.kt:428 */
15923         -
        pub(crate) fn set_query_integer_list(
15924         -
            mut self,
15925         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
15926         -
        ) -> Self {
15927         -
            /* ServerBuilderGenerator.kt:429 */
15928         -
            self.query_integer_list = input.map(|v| v.into());
15929         -
            self
15930         -
            /* ServerBuilderGenerator.kt:428 */
15931         -
        }
15932         -
        /* ServerBuilderGenerator.kt:331 */
15933         -
        #[allow(missing_docs)] // documentation missing in model
15934         -
                               /* ServerBuilderGenerator.kt:343 */
15935         -
        pub fn query_double_list(
15936         -
            mut self,
15937         -
            input: ::std::option::Option<::std::vec::Vec<f64>>,
15938         -
        ) -> Self {
       16051  +
        pub fn byte_in_body(mut self, input: ::std::option::Option<i8>) -> Self {
15939  16052   
            /* ServerBuilderGenerator.kt:344 */
15940         -
            self.query_double_list =
       16053  +
            self.byte_in_body =
15941  16054   
                /* ServerBuilderGenerator.kt:376 */input
15942  16055   
            /* ServerBuilderGenerator.kt:344 */;
15943  16056   
            self
15944  16057   
            /* ServerBuilderGenerator.kt:343 */
15945  16058   
        }
15946  16059   
        /* ServerBuilderGenerator.kt:426 */
15947  16060   
        #[allow(missing_docs)] // documentation missing in model
15948  16061   
                               /* ServerBuilderGenerator.kt:428 */
15949         -
        pub(crate) fn set_query_double_list(
       16062  +
        pub(crate) fn set_byte_in_body(
15950  16063   
            mut self,
15951         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<f64>>>,
       16064  +
            input: Option<impl ::std::convert::Into<i8>>,
15952  16065   
        ) -> Self {
15953  16066   
            /* ServerBuilderGenerator.kt:429 */
15954         -
            self.query_double_list = input.map(|v| v.into());
       16067  +
            self.byte_in_body = input.map(|v| v.into());
15955  16068   
            self
15956  16069   
            /* ServerBuilderGenerator.kt:428 */
15957  16070   
        }
15958  16071   
        /* ServerBuilderGenerator.kt:331 */
15959  16072   
        #[allow(missing_docs)] // documentation missing in model
15960  16073   
                               /* ServerBuilderGenerator.kt:343 */
15961         -
        pub fn query_boolean_list(
15962         -
            mut self,
15963         -
            input: ::std::option::Option<::std::vec::Vec<bool>>,
15964         -
        ) -> Self {
       16074  +
        pub fn byte_in_path(mut self, input: i8) -> Self {
15965  16075   
            /* ServerBuilderGenerator.kt:344 */
15966         -
            self.query_boolean_list =
       16076  +
            self.byte_in_path =
       16077  +
                /* ServerBuilderGenerator.kt:345 */Some(
15967  16078   
                    /* ServerBuilderGenerator.kt:376 */input
       16079  +
                /* ServerBuilderGenerator.kt:345 */)
15968  16080   
            /* ServerBuilderGenerator.kt:344 */;
15969  16081   
            self
15970  16082   
            /* ServerBuilderGenerator.kt:343 */
15971  16083   
        }
15972  16084   
        /* ServerBuilderGenerator.kt:426 */
15973  16085   
        #[allow(missing_docs)] // documentation missing in model
15974  16086   
                               /* ServerBuilderGenerator.kt:428 */
15975         -
        pub(crate) fn set_query_boolean_list(
15976         -
            mut self,
15977         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<bool>>>,
15978         -
        ) -> Self {
       16087  +
        pub(crate) fn set_byte_in_path(mut self, input: impl ::std::convert::Into<i8>) -> Self {
15979  16088   
            /* ServerBuilderGenerator.kt:429 */
15980         -
            self.query_boolean_list = input.map(|v| v.into());
       16089  +
            self.byte_in_path = Some(input.into());
15981  16090   
            self
15982  16091   
            /* ServerBuilderGenerator.kt:428 */
15983  16092   
        }
15984  16093   
        /* ServerBuilderGenerator.kt:331 */
15985  16094   
        #[allow(missing_docs)] // documentation missing in model
15986  16095   
                               /* ServerBuilderGenerator.kt:343 */
15987         -
        pub fn query_timestamp_list(
15988         -
            mut self,
15989         -
            input: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
15990         -
        ) -> Self {
       16096  +
        pub fn byte_in_query(mut self, input: ::std::option::Option<i8>) -> Self {
15991  16097   
            /* ServerBuilderGenerator.kt:344 */
15992         -
            self.query_timestamp_list =
       16098  +
            self.byte_in_query =
15993  16099   
                /* ServerBuilderGenerator.kt:376 */input
15994  16100   
            /* ServerBuilderGenerator.kt:344 */;
15995  16101   
            self
15996  16102   
            /* ServerBuilderGenerator.kt:343 */
15997  16103   
        }
15998  16104   
        /* ServerBuilderGenerator.kt:426 */
15999  16105   
        #[allow(missing_docs)] // documentation missing in model
16000  16106   
                               /* ServerBuilderGenerator.kt:428 */
16001         -
        pub(crate) fn set_query_timestamp_list(
16002         -
            mut self,
16003         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::aws_smithy_types::DateTime>>>,
16004         -
        ) -> Self {
16005         -
            /* ServerBuilderGenerator.kt:429 */
16006         -
            self.query_timestamp_list = input.map(|v| v.into());
16007         -
            self
16008         -
            /* ServerBuilderGenerator.kt:428 */
16009         -
        }
16010         -
        /* ServerBuilderGenerator.kt:331 */
16011         -
        #[allow(missing_docs)] // documentation missing in model
16012         -
                               /* ServerBuilderGenerator.kt:343 */
16013         -
        pub fn query_enum_list(
16014         -
            mut self,
16015         -
            input: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
16016         -
        ) -> Self {
16017         -
            /* ServerBuilderGenerator.kt:344 */
16018         -
            self.query_enum_list =
16019         -
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
16020         -
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
16021         -
                /* ServerBuilderGenerator.kt:363 */)
16022         -
            /* ServerBuilderGenerator.kt:344 */;
16023         -
            self
16024         -
            /* ServerBuilderGenerator.kt:343 */
16025         -
        }
16026         -
        /* ServerBuilderGenerator.kt:426 */
16027         -
        #[allow(missing_docs)] // documentation missing in model
16028         -
                               /* ServerBuilderGenerator.kt:428 */
16029         -
        pub(crate) fn set_query_enum_list(
       16107  +
        pub(crate) fn set_byte_in_query(
16030  16108   
            mut self,
16031         -
            input: Option<
16032         -
                impl ::std::convert::Into<
16033         -
                    crate::constrained::MaybeConstrained<
16034         -
                        crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
16035         -
                    >,
16036         -
                >,
16037         -
            >,
       16109  +
            input: Option<impl ::std::convert::Into<i8>>,
16038  16110   
        ) -> Self {
16039  16111   
            /* ServerBuilderGenerator.kt:429 */
16040         -
            self.query_enum_list = input.map(|v| v.into());
       16112  +
            self.byte_in_query = input.map(|v| v.into());
16041  16113   
            self
16042  16114   
            /* ServerBuilderGenerator.kt:428 */
16043  16115   
        }
16044  16116   
        /* ServerBuilderGenerator.kt:331 */
16045  16117   
        #[allow(missing_docs)] // documentation missing in model
16046  16118   
                               /* ServerBuilderGenerator.kt:343 */
16047         -
        pub fn query_integer_enum_list(
16048         -
            mut self,
16049         -
            input: ::std::option::Option<::std::vec::Vec<i32>>,
16050         -
        ) -> Self {
       16119  +
        pub fn byte_in_header(mut self, input: ::std::option::Option<i8>) -> Self {
16051  16120   
            /* ServerBuilderGenerator.kt:344 */
16052         -
            self.query_integer_enum_list =
       16121  +
            self.byte_in_header =
16053  16122   
                /* ServerBuilderGenerator.kt:376 */input
16054  16123   
            /* ServerBuilderGenerator.kt:344 */;
16055  16124   
            self
16056  16125   
            /* ServerBuilderGenerator.kt:343 */
16057  16126   
        }
16058  16127   
        /* ServerBuilderGenerator.kt:426 */
16059  16128   
        #[allow(missing_docs)] // documentation missing in model
16060  16129   
                               /* ServerBuilderGenerator.kt:428 */
16061         -
        pub(crate) fn set_query_integer_enum_list(
       16130  +
        pub(crate) fn set_byte_in_header(
16062  16131   
            mut self,
16063         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
       16132  +
            input: Option<impl ::std::convert::Into<i8>>,
16064  16133   
        ) -> Self {
16065  16134   
            /* ServerBuilderGenerator.kt:429 */
16066         -
            self.query_integer_enum_list = input.map(|v| v.into());
       16135  +
            self.byte_in_header = input.map(|v| v.into());
16067  16136   
            self
16068  16137   
            /* ServerBuilderGenerator.kt:428 */
16069  16138   
        }
16070         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OmitsSerializingEmptyListsInput`](crate::input::OmitsSerializingEmptyListsInput).
       16139  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedByteInput`](crate::input::MalformedByteInput).
16071  16140   
        /// /* ServerBuilderGenerator.kt:260 */
16072         -
        /// The builder fails to construct a [`OmitsSerializingEmptyListsInput`](crate::input::OmitsSerializingEmptyListsInput) if a [`ConstraintViolation`] occurs.
       16141  +
        /// The builder fails to construct a [`MalformedByteInput`](crate::input::MalformedByteInput) if a [`ConstraintViolation`] occurs.
16073  16142   
        ///
16074  16143   
        /* ServerBuilderGenerator.kt:271 */
16075         -
        pub fn build(
16076         -
            self,
16077         -
        ) -> Result<crate::input::OmitsSerializingEmptyListsInput, ConstraintViolation> {
       16144  +
        pub fn build(self) -> Result<crate::input::MalformedByteInput, ConstraintViolation> {
16078  16145   
            self.build_enforcing_all_constraints()
16079  16146   
        }
16080  16147   
        /* ServerBuilderGenerator.kt:283 */
16081  16148   
        fn build_enforcing_all_constraints(
16082  16149   
            self,
16083         -
        ) -> Result<crate::input::OmitsSerializingEmptyListsInput, ConstraintViolation> {
       16150  +
        ) -> Result<crate::input::MalformedByteInput, ConstraintViolation> {
16084  16151   
            /* ServerBuilderGenerator.kt:287 */
16085  16152   
            Ok(
16086  16153   
                /* ServerBuilderGenerator.kt:542 */
16087         -
                crate::input::OmitsSerializingEmptyListsInput {
16088         -
                    /* ServerBuilderGenerator.kt:546 */
16089         -
                    query_string_list: self.query_string_list,
16090         -
                    /* ServerBuilderGenerator.kt:546 */
16091         -
                    query_integer_list: self.query_integer_list,
16092         -
                    /* ServerBuilderGenerator.kt:546 */
16093         -
                    query_double_list: self.query_double_list,
       16154  +
                crate::input::MalformedByteInput {
16094  16155   
                    /* ServerBuilderGenerator.kt:546 */
16095         -
                    query_boolean_list: self.query_boolean_list,
       16156  +
                    byte_in_body: self.byte_in_body,
16096  16157   
                    /* ServerBuilderGenerator.kt:546 */
16097         -
                    query_timestamp_list: self.query_timestamp_list,
       16158  +
                    byte_in_path: self
       16159  +
                        .byte_in_path
       16160  +
                        /* ServerBuilderGenerator.kt:569 */
       16161  +
                        .ok_or(ConstraintViolation::MissingByteInPath)?,
16098  16162   
                    /* ServerBuilderGenerator.kt:546 */
16099         -
                    query_enum_list: self
16100         -
                        .query_enum_list
16101         -
                        /* ServerBuilderGenerator.kt:602 */
16102         -
                        .map(|v| match v {
16103         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
16104         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
16105         -
                        })
16106         -
                        /* ServerBuilderGenerator.kt:614 */
16107         -
                        .map(|res| {
16108         -
                            res.map(|v| v.into())
16109         -
                                .map_err(ConstraintViolation::QueryEnumList)
16110         -
                        })
16111         -
                        .transpose()?,
       16163  +
                    byte_in_query: self.byte_in_query,
16112  16164   
                    /* ServerBuilderGenerator.kt:546 */
16113         -
                    query_integer_enum_list: self.query_integer_enum_list,
       16165  +
                    byte_in_header: self.byte_in_header,
16114  16166   
                    /* ServerBuilderGenerator.kt:542 */
16115  16167   
                }, /* ServerBuilderGenerator.kt:287 */
16116  16168   
            )
16117         -
            /* ServerBuilderGenerator.kt:283 */
       16169  +
            /* ServerBuilderGenerator.kt:283 */
       16170  +
        }
       16171  +
        /* ServerBuilderGenerator.kt:215 */
       16172  +
    }
       16173  +
       16174  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       16175  +
}
       16176  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedShortInput`](crate::input::MalformedShortInput).
       16177  +
pub mod malformed_short_input {
       16178  +
       16179  +
    /* RustType.kt:534 */
       16180  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       16181  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       16182  +
    /* RustType.kt:534 */
       16183  +
    #[non_exhaustive]
       16184  +
    /* ServerBuilderConstraintViolations.kt:75 */
       16185  +
    #[allow(clippy::enum_variant_names)]
       16186  +
    pub enum ConstraintViolation {
       16187  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`short_in_path` was not provided but it is required when building `MalformedShortInput`.
       16188  +
        /* ServerBuilderConstraintViolations.kt:144 */
       16189  +
        MissingShortInPath,
       16190  +
        /* ServerBuilderConstraintViolations.kt:75 */
       16191  +
    }
       16192  +
    /* ServerBuilderConstraintViolations.kt:116 */
       16193  +
    impl ::std::fmt::Display for ConstraintViolation {
       16194  +
        /* ServerBuilderConstraintViolations.kt:117 */
       16195  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       16196  +
            /* ServerBuilderConstraintViolations.kt:118 */
       16197  +
            match self {
       16198  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingShortInPath => write!(f, "`short_in_path` was not provided but it is required when building `MalformedShortInput`"),
       16199  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       16200  +
            /* ServerBuilderConstraintViolations.kt:117 */
       16201  +
        }
       16202  +
        /* ServerBuilderConstraintViolations.kt:116 */
       16203  +
    }
       16204  +
    /* ServerBuilderConstraintViolations.kt:83 */
       16205  +
    impl ::std::error::Error for ConstraintViolation {}
       16206  +
    /* ServerBuilderConstraintViolations.kt:172 */
       16207  +
    impl ConstraintViolation {
       16208  +
        pub(crate) fn as_validation_exception_field(
       16209  +
            self,
       16210  +
            path: ::std::string::String,
       16211  +
        ) -> crate::model::ValidationExceptionField {
       16212  +
            match self {
       16213  +
            ConstraintViolation::MissingShortInPath => crate::model::ValidationExceptionField {
       16214  +
                                                message: format!("Value at '{}/shortInPath' failed to satisfy constraint: Member must not be null", path),
       16215  +
                                                path: path + "/shortInPath",
       16216  +
                                            },
       16217  +
        }
       16218  +
        }
       16219  +
    }
       16220  +
    /* ServerBuilderGenerator.kt:234 */
       16221  +
    impl ::std::convert::From<ConstraintViolation>
       16222  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       16223  +
    {
       16224  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       16225  +
            let first_validation_exception_field =
       16226  +
                constraint_violation.as_validation_exception_field("".to_owned());
       16227  +
            let validation_exception = crate::error::ValidationException {
       16228  +
                message: format!(
       16229  +
                    "1 validation error detected. {}",
       16230  +
                    &first_validation_exception_field.message
       16231  +
                ),
       16232  +
                field_list: Some(vec![first_validation_exception_field]),
       16233  +
            };
       16234  +
            Self::ConstraintViolation(
       16235  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       16236  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       16237  +
                            )
16118  16238   
        }
16119         -
        /* ServerBuilderGenerator.kt:215 */
16120  16239   
    }
16121         -
16122         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
16123         -
}
16124         -
/// /* ServerBuilderGenerator.kt:171 */See [`OmitsNullSerializesEmptyStringInput`](crate::input::OmitsNullSerializesEmptyStringInput).
16125         -
pub mod omits_null_serializes_empty_string_input {
16126         -
16127         -
    /* ServerBuilderGenerator.kt:461 */
16128         -
    impl ::std::convert::From<Builder> for crate::input::OmitsNullSerializesEmptyStringInput {
       16240  +
    /* ServerBuilderGenerator.kt:244 */
       16241  +
    impl ::std::convert::From<Builder>
       16242  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedShortInput>
       16243  +
    {
16129  16244   
        fn from(builder: Builder) -> Self {
       16245  +
            Self::Unconstrained(builder)
       16246  +
        }
       16247  +
    }
       16248  +
    /* ServerBuilderGenerator.kt:446 */
       16249  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedShortInput {
       16250  +
        type Error = ConstraintViolation;
       16251  +
       16252  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
16130  16253   
            builder.build()
16131  16254   
        }
16132  16255   
    }
16133         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OmitsNullSerializesEmptyStringInput`](crate::input::OmitsNullSerializesEmptyStringInput).
       16256  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedShortInput`](crate::input::MalformedShortInput).
16134  16257   
    /* RustType.kt:534 */
16135  16258   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
16136  16259   
    /* ServerBuilderGenerator.kt:211 */
16137  16260   
    pub struct Builder {
16138  16261   
        /* ServerBuilderGenerator.kt:308 */
16139         -
        pub(crate) null_value: ::std::option::Option<::std::string::String>,
       16262  +
        pub(crate) short_in_body: ::std::option::Option<i16>,
16140  16263   
        /* ServerBuilderGenerator.kt:308 */
16141         -
        pub(crate) empty_string: ::std::option::Option<::std::string::String>,
       16264  +
        pub(crate) short_in_path: ::std::option::Option<i16>,
       16265  +
        /* ServerBuilderGenerator.kt:308 */
       16266  +
        pub(crate) short_in_query: ::std::option::Option<i16>,
       16267  +
        /* ServerBuilderGenerator.kt:308 */
       16268  +
        pub(crate) short_in_header: ::std::option::Option<i16>,
16142  16269   
        /* ServerBuilderGenerator.kt:211 */
16143  16270   
    }
16144  16271   
    /* ServerBuilderGenerator.kt:215 */
16145  16272   
    impl Builder {
16146  16273   
        /* ServerBuilderGenerator.kt:331 */
16147  16274   
        #[allow(missing_docs)] // documentation missing in model
16148  16275   
                               /* ServerBuilderGenerator.kt:343 */
16149         -
        pub fn null_value(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       16276  +
        pub fn short_in_body(mut self, input: ::std::option::Option<i16>) -> Self {
16150  16277   
            /* ServerBuilderGenerator.kt:344 */
16151         -
            self.null_value =
       16278  +
            self.short_in_body =
16152  16279   
                /* ServerBuilderGenerator.kt:376 */input
16153  16280   
            /* ServerBuilderGenerator.kt:344 */;
16154  16281   
            self
16155  16282   
            /* ServerBuilderGenerator.kt:343 */
16156  16283   
        }
16157  16284   
        /* ServerBuilderGenerator.kt:426 */
16158  16285   
        #[allow(missing_docs)] // documentation missing in model
16159  16286   
                               /* ServerBuilderGenerator.kt:428 */
16160         -
        pub(crate) fn set_null_value(
       16287  +
        pub(crate) fn set_short_in_body(
16161  16288   
            mut self,
16162         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       16289  +
            input: Option<impl ::std::convert::Into<i16>>,
16163  16290   
        ) -> Self {
16164  16291   
            /* ServerBuilderGenerator.kt:429 */
16165         -
            self.null_value = input.map(|v| v.into());
       16292  +
            self.short_in_body = input.map(|v| v.into());
16166  16293   
            self
16167  16294   
            /* ServerBuilderGenerator.kt:428 */
16168  16295   
        }
16169  16296   
        /* ServerBuilderGenerator.kt:331 */
16170  16297   
        #[allow(missing_docs)] // documentation missing in model
16171  16298   
                               /* ServerBuilderGenerator.kt:343 */
16172         -
        pub fn empty_string(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       16299  +
        pub fn short_in_path(mut self, input: i16) -> Self {
16173  16300   
            /* ServerBuilderGenerator.kt:344 */
16174         -
            self.empty_string =
       16301  +
            self.short_in_path =
       16302  +
                /* ServerBuilderGenerator.kt:345 */Some(
16175  16303   
                    /* ServerBuilderGenerator.kt:376 */input
       16304  +
                /* ServerBuilderGenerator.kt:345 */)
16176  16305   
            /* ServerBuilderGenerator.kt:344 */;
16177  16306   
            self
16178  16307   
            /* ServerBuilderGenerator.kt:343 */
16179  16308   
        }
16180  16309   
        /* ServerBuilderGenerator.kt:426 */
16181  16310   
        #[allow(missing_docs)] // documentation missing in model
16182  16311   
                               /* ServerBuilderGenerator.kt:428 */
16183         -
        pub(crate) fn set_empty_string(
16184         -
            mut self,
16185         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
16186         -
        ) -> Self {
       16312  +
        pub(crate) fn set_short_in_path(mut self, input: impl ::std::convert::Into<i16>) -> Self {
16187  16313   
            /* ServerBuilderGenerator.kt:429 */
16188         -
            self.empty_string = input.map(|v| v.into());
       16314  +
            self.short_in_path = Some(input.into());
16189  16315   
            self
16190  16316   
            /* ServerBuilderGenerator.kt:428 */
16191  16317   
        }
16192         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OmitsNullSerializesEmptyStringInput`](crate::input::OmitsNullSerializesEmptyStringInput).
16193         -
        /* ServerBuilderGenerator.kt:271 */
16194         -
        pub fn build(self) -> crate::input::OmitsNullSerializesEmptyStringInput {
16195         -
            self.build_enforcing_all_constraints()
16196         -
        }
16197         -
        /* ServerBuilderGenerator.kt:283 */
16198         -
        fn build_enforcing_all_constraints(
16199         -
            self,
16200         -
        ) -> crate::input::OmitsNullSerializesEmptyStringInput {
16201         -
            /* ServerBuilderGenerator.kt:542 */
16202         -
            crate::input::OmitsNullSerializesEmptyStringInput {
16203         -
                /* ServerBuilderGenerator.kt:546 */
16204         -
                null_value: self.null_value,
16205         -
                /* ServerBuilderGenerator.kt:546 */
16206         -
                empty_string: self.empty_string,
16207         -
                /* ServerBuilderGenerator.kt:542 */
16208         -
            }
16209         -
            /* ServerBuilderGenerator.kt:283 */
16210         -
        }
16211         -
        /* ServerBuilderGenerator.kt:215 */
16212         -
    }
16213         -
16214         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
16215         -
}
16216         -
/// /* ServerBuilderGenerator.kt:171 */See [`IgnoreQueryParamsInResponseInput`](crate::input::IgnoreQueryParamsInResponseInput).
16217         -
pub mod ignore_query_params_in_response_input {
16218         -
16219         -
    /* ServerBuilderGenerator.kt:461 */
16220         -
    impl ::std::convert::From<Builder> for crate::input::IgnoreQueryParamsInResponseInput {
16221         -
        fn from(builder: Builder) -> Self {
16222         -
            builder.build()
16223         -
        }
16224         -
    }
16225         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`IgnoreQueryParamsInResponseInput`](crate::input::IgnoreQueryParamsInResponseInput).
16226         -
    /* RustType.kt:534 */
16227         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
16228         -
    /* ServerBuilderGenerator.kt:211 */
16229         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
16230         -
    /* ServerBuilderGenerator.kt:215 */
16231         -
    impl Builder {
16232         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`IgnoreQueryParamsInResponseInput`](crate::input::IgnoreQueryParamsInResponseInput).
16233         -
        /* ServerBuilderGenerator.kt:271 */
16234         -
        pub fn build(self) -> crate::input::IgnoreQueryParamsInResponseInput {
16235         -
            self.build_enforcing_all_constraints()
16236         -
        }
16237         -
        /* ServerBuilderGenerator.kt:283 */
16238         -
        fn build_enforcing_all_constraints(self) -> crate::input::IgnoreQueryParamsInResponseInput {
16239         -
            /* ServerBuilderGenerator.kt:542 */
16240         -
            crate::input::IgnoreQueryParamsInResponseInput {
16241         -
            /* ServerBuilderGenerator.kt:542 */}
16242         -
            /* ServerBuilderGenerator.kt:283 */
16243         -
        }
16244         -
        /* ServerBuilderGenerator.kt:215 */
16245         -
    }
16246         -
16247         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
16248         -
}
16249         -
/// /* ServerBuilderGenerator.kt:171 */See [`ConstantAndVariableQueryStringInput`](crate::input::ConstantAndVariableQueryStringInput).
16250         -
pub mod constant_and_variable_query_string_input {
16251         -
16252         -
    /* ServerBuilderGenerator.kt:461 */
16253         -
    impl ::std::convert::From<Builder> for crate::input::ConstantAndVariableQueryStringInput {
16254         -
        fn from(builder: Builder) -> Self {
16255         -
            builder.build()
16256         -
        }
16257         -
    }
16258         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`ConstantAndVariableQueryStringInput`](crate::input::ConstantAndVariableQueryStringInput).
16259         -
    /* RustType.kt:534 */
16260         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
16261         -
    /* ServerBuilderGenerator.kt:211 */
16262         -
    pub struct Builder {
16263         -
        /* ServerBuilderGenerator.kt:308 */
16264         -
        pub(crate) baz: ::std::option::Option<::std::string::String>,
16265         -
        /* ServerBuilderGenerator.kt:308 */
16266         -
        pub(crate) maybe_set: ::std::option::Option<::std::string::String>,
16267         -
        /* ServerBuilderGenerator.kt:211 */
16268         -
    }
16269         -
    /* ServerBuilderGenerator.kt:215 */
16270         -
    impl Builder {
16271  16318   
        /* ServerBuilderGenerator.kt:331 */
16272  16319   
        #[allow(missing_docs)] // documentation missing in model
16273  16320   
                               /* ServerBuilderGenerator.kt:343 */
16274         -
        pub fn baz(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       16321  +
        pub fn short_in_query(mut self, input: ::std::option::Option<i16>) -> Self {
16275  16322   
            /* ServerBuilderGenerator.kt:344 */
16276         -
            self.baz =
       16323  +
            self.short_in_query =
16277  16324   
                /* ServerBuilderGenerator.kt:376 */input
16278  16325   
            /* ServerBuilderGenerator.kt:344 */;
16279  16326   
            self
16280  16327   
            /* ServerBuilderGenerator.kt:343 */
16281  16328   
        }
16282  16329   
        /* ServerBuilderGenerator.kt:426 */
16283  16330   
        #[allow(missing_docs)] // documentation missing in model
16284  16331   
                               /* ServerBuilderGenerator.kt:428 */
16285         -
        pub(crate) fn set_baz(
       16332  +
        pub(crate) fn set_short_in_query(
16286  16333   
            mut self,
16287         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       16334  +
            input: Option<impl ::std::convert::Into<i16>>,
16288  16335   
        ) -> Self {
16289  16336   
            /* ServerBuilderGenerator.kt:429 */
16290         -
            self.baz = input.map(|v| v.into());
       16337  +
            self.short_in_query = input.map(|v| v.into());
16291  16338   
            self
16292  16339   
            /* ServerBuilderGenerator.kt:428 */
16293  16340   
        }
16294  16341   
        /* ServerBuilderGenerator.kt:331 */
16295  16342   
        #[allow(missing_docs)] // documentation missing in model
16296  16343   
                               /* ServerBuilderGenerator.kt:343 */
16297         -
        pub fn maybe_set(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       16344  +
        pub fn short_in_header(mut self, input: ::std::option::Option<i16>) -> Self {
16298  16345   
            /* ServerBuilderGenerator.kt:344 */
16299         -
            self.maybe_set =
       16346  +
            self.short_in_header =
16300  16347   
                /* ServerBuilderGenerator.kt:376 */input
16301  16348   
            /* ServerBuilderGenerator.kt:344 */;
16302  16349   
            self
16303  16350   
            /* ServerBuilderGenerator.kt:343 */
16304  16351   
        }
16305  16352   
        /* ServerBuilderGenerator.kt:426 */
16306  16353   
        #[allow(missing_docs)] // documentation missing in model
16307  16354   
                               /* ServerBuilderGenerator.kt:428 */
16308         -
        pub(crate) fn set_maybe_set(
       16355  +
        pub(crate) fn set_short_in_header(
16309  16356   
            mut self,
16310         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       16357  +
            input: Option<impl ::std::convert::Into<i16>>,
16311  16358   
        ) -> Self {
16312  16359   
            /* ServerBuilderGenerator.kt:429 */
16313         -
            self.maybe_set = input.map(|v| v.into());
       16360  +
            self.short_in_header = input.map(|v| v.into());
16314  16361   
            self
16315  16362   
            /* ServerBuilderGenerator.kt:428 */
16316  16363   
        }
16317         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`ConstantAndVariableQueryStringInput`](crate::input::ConstantAndVariableQueryStringInput).
       16364  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedShortInput`](crate::input::MalformedShortInput).
       16365  +
        /// /* ServerBuilderGenerator.kt:260 */
       16366  +
        /// The builder fails to construct a [`MalformedShortInput`](crate::input::MalformedShortInput) if a [`ConstraintViolation`] occurs.
       16367  +
        ///
16318  16368   
        /* ServerBuilderGenerator.kt:271 */
16319         -
        pub fn build(self) -> crate::input::ConstantAndVariableQueryStringInput {
       16369  +
        pub fn build(self) -> Result<crate::input::MalformedShortInput, ConstraintViolation> {
16320  16370   
            self.build_enforcing_all_constraints()
16321  16371   
        }
16322  16372   
        /* ServerBuilderGenerator.kt:283 */
16323  16373   
        fn build_enforcing_all_constraints(
16324  16374   
            self,
16325         -
        ) -> crate::input::ConstantAndVariableQueryStringInput {
       16375  +
        ) -> Result<crate::input::MalformedShortInput, ConstraintViolation> {
       16376  +
            /* ServerBuilderGenerator.kt:287 */
       16377  +
            Ok(
16326  16378   
                /* ServerBuilderGenerator.kt:542 */
16327         -
            crate::input::ConstantAndVariableQueryStringInput {
       16379  +
                crate::input::MalformedShortInput {
16328  16380   
                    /* ServerBuilderGenerator.kt:546 */
16329         -
                baz: self.baz,
       16381  +
                    short_in_body: self.short_in_body,
16330  16382   
                    /* ServerBuilderGenerator.kt:546 */
16331         -
                maybe_set: self.maybe_set,
       16383  +
                    short_in_path: self
       16384  +
                        .short_in_path
       16385  +
                        /* ServerBuilderGenerator.kt:569 */
       16386  +
                        .ok_or(ConstraintViolation::MissingShortInPath)?,
       16387  +
                    /* ServerBuilderGenerator.kt:546 */
       16388  +
                    short_in_query: self.short_in_query,
       16389  +
                    /* ServerBuilderGenerator.kt:546 */
       16390  +
                    short_in_header: self.short_in_header,
16332  16391   
                    /* ServerBuilderGenerator.kt:542 */
16333         -
            }
       16392  +
                }, /* ServerBuilderGenerator.kt:287 */
       16393  +
            )
16334  16394   
            /* ServerBuilderGenerator.kt:283 */
16335  16395   
        }
16336  16396   
        /* ServerBuilderGenerator.kt:215 */
16337  16397   
    }
16338  16398   
16339  16399   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
16340  16400   
}
16341         -
/// /* ServerBuilderGenerator.kt:171 */See [`ConstantQueryStringInput`](crate::input::ConstantQueryStringInput).
16342         -
pub mod constant_query_string_input {
       16401  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedLongInput`](crate::input::MalformedLongInput).
       16402  +
pub mod malformed_long_input {
16343  16403   
16344  16404   
    /* RustType.kt:534 */
16345  16405   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
16346  16406   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
16347  16407   
    /* RustType.kt:534 */
16348  16408   
    #[non_exhaustive]
16349  16409   
    /* ServerBuilderConstraintViolations.kt:75 */
16350  16410   
    #[allow(clippy::enum_variant_names)]
16351  16411   
    pub enum ConstraintViolation {
16352         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`hello` was not provided but it is required when building `ConstantQueryStringInput`.
       16412  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`long_in_path` was not provided but it is required when building `MalformedLongInput`.
16353  16413   
        /* ServerBuilderConstraintViolations.kt:144 */
16354         -
        MissingHello,
       16414  +
        MissingLongInPath,
16355  16415   
        /* ServerBuilderConstraintViolations.kt:75 */
16356  16416   
    }
16357  16417   
    /* ServerBuilderConstraintViolations.kt:116 */
16358  16418   
    impl ::std::fmt::Display for ConstraintViolation {
16359  16419   
        /* ServerBuilderConstraintViolations.kt:117 */
16360  16420   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
16361  16421   
            /* ServerBuilderConstraintViolations.kt:118 */
16362  16422   
            match self {
16363         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingHello => write!(f, "`hello` was not provided but it is required when building `ConstantQueryStringInput`"),
       16423  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingLongInPath => write!(f, "`long_in_path` was not provided but it is required when building `MalformedLongInput`"),
16364  16424   
            /* ServerBuilderConstraintViolations.kt:118 */}
16365  16425   
            /* ServerBuilderConstraintViolations.kt:117 */
16366  16426   
        }
16367  16427   
        /* ServerBuilderConstraintViolations.kt:116 */
16368  16428   
    }
16369  16429   
    /* ServerBuilderConstraintViolations.kt:83 */
16370  16430   
    impl ::std::error::Error for ConstraintViolation {}
16371  16431   
    /* ServerBuilderConstraintViolations.kt:172 */
16372  16432   
    impl ConstraintViolation {
16373  16433   
        pub(crate) fn as_validation_exception_field(
16374  16434   
            self,
16375  16435   
            path: ::std::string::String,
16376  16436   
        ) -> crate::model::ValidationExceptionField {
16377  16437   
            match self {
16378         -
                ConstraintViolation::MissingHello => crate::model::ValidationExceptionField {
16379         -
                    message: format!(
16380         -
                        "Value at '{}/hello' failed to satisfy constraint: Member must not be null",
16381         -
                        path
16382         -
                    ),
16383         -
                    path: path + "/hello",
       16438  +
            ConstraintViolation::MissingLongInPath => crate::model::ValidationExceptionField {
       16439  +
                                                message: format!("Value at '{}/longInPath' failed to satisfy constraint: Member must not be null", path),
       16440  +
                                                path: path + "/longInPath",
16384  16441   
                                            },
16385  16442   
        }
16386  16443   
        }
16387  16444   
    }
16388  16445   
    /* ServerBuilderGenerator.kt:234 */
16389  16446   
    impl ::std::convert::From<ConstraintViolation>
16390  16447   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
16391  16448   
    {
16392  16449   
        fn from(constraint_violation: ConstraintViolation) -> Self {
16393  16450   
            let first_validation_exception_field =
16394  16451   
                constraint_violation.as_validation_exception_field("".to_owned());
16395  16452   
            let validation_exception = crate::error::ValidationException {
16396  16453   
                message: format!(
16397  16454   
                    "1 validation error detected. {}",
16398  16455   
                    &first_validation_exception_field.message
16399  16456   
                ),
16400  16457   
                field_list: Some(vec![first_validation_exception_field]),
16401  16458   
            };
16402  16459   
            Self::ConstraintViolation(
16403  16460   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
16404  16461   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
16405  16462   
                            )
16406  16463   
        }
16407  16464   
    }
16408  16465   
    /* ServerBuilderGenerator.kt:244 */
16409  16466   
    impl ::std::convert::From<Builder>
16410         -
        for crate::constrained::MaybeConstrained<crate::input::ConstantQueryStringInput>
       16467  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedLongInput>
16411  16468   
    {
16412  16469   
        fn from(builder: Builder) -> Self {
16413  16470   
            Self::Unconstrained(builder)
16414  16471   
        }
16415  16472   
    }
16416         -
    /* ServerBuilderGenerator.kt:446 */
16417         -
    impl ::std::convert::TryFrom<Builder> for crate::input::ConstantQueryStringInput {
16418         -
        type Error = ConstraintViolation;
16419         -
16420         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
16421         -
            builder.build()
       16473  +
    /* ServerBuilderGenerator.kt:446 */
       16474  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedLongInput {
       16475  +
        type Error = ConstraintViolation;
       16476  +
       16477  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       16478  +
            builder.build()
       16479  +
        }
       16480  +
    }
       16481  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedLongInput`](crate::input::MalformedLongInput).
       16482  +
    /* RustType.kt:534 */
       16483  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       16484  +
    /* ServerBuilderGenerator.kt:211 */
       16485  +
    pub struct Builder {
       16486  +
        /* ServerBuilderGenerator.kt:308 */
       16487  +
        pub(crate) long_in_body: ::std::option::Option<i64>,
       16488  +
        /* ServerBuilderGenerator.kt:308 */
       16489  +
        pub(crate) long_in_path: ::std::option::Option<i64>,
       16490  +
        /* ServerBuilderGenerator.kt:308 */
       16491  +
        pub(crate) long_in_query: ::std::option::Option<i64>,
       16492  +
        /* ServerBuilderGenerator.kt:308 */
       16493  +
        pub(crate) long_in_header: ::std::option::Option<i64>,
       16494  +
        /* ServerBuilderGenerator.kt:211 */
       16495  +
    }
       16496  +
    /* ServerBuilderGenerator.kt:215 */
       16497  +
    impl Builder {
       16498  +
        /* ServerBuilderGenerator.kt:331 */
       16499  +
        #[allow(missing_docs)] // documentation missing in model
       16500  +
                               /* ServerBuilderGenerator.kt:343 */
       16501  +
        pub fn long_in_body(mut self, input: ::std::option::Option<i64>) -> Self {
       16502  +
            /* ServerBuilderGenerator.kt:344 */
       16503  +
            self.long_in_body =
       16504  +
                /* ServerBuilderGenerator.kt:376 */input
       16505  +
            /* ServerBuilderGenerator.kt:344 */;
       16506  +
            self
       16507  +
            /* ServerBuilderGenerator.kt:343 */
       16508  +
        }
       16509  +
        /* ServerBuilderGenerator.kt:426 */
       16510  +
        #[allow(missing_docs)] // documentation missing in model
       16511  +
                               /* ServerBuilderGenerator.kt:428 */
       16512  +
        pub(crate) fn set_long_in_body(
       16513  +
            mut self,
       16514  +
            input: Option<impl ::std::convert::Into<i64>>,
       16515  +
        ) -> Self {
       16516  +
            /* ServerBuilderGenerator.kt:429 */
       16517  +
            self.long_in_body = input.map(|v| v.into());
       16518  +
            self
       16519  +
            /* ServerBuilderGenerator.kt:428 */
       16520  +
        }
       16521  +
        /* ServerBuilderGenerator.kt:331 */
       16522  +
        #[allow(missing_docs)] // documentation missing in model
       16523  +
                               /* ServerBuilderGenerator.kt:343 */
       16524  +
        pub fn long_in_path(mut self, input: i64) -> Self {
       16525  +
            /* ServerBuilderGenerator.kt:344 */
       16526  +
            self.long_in_path =
       16527  +
                /* ServerBuilderGenerator.kt:345 */Some(
       16528  +
                    /* ServerBuilderGenerator.kt:376 */input
       16529  +
                /* ServerBuilderGenerator.kt:345 */)
       16530  +
            /* ServerBuilderGenerator.kt:344 */;
       16531  +
            self
       16532  +
            /* ServerBuilderGenerator.kt:343 */
       16533  +
        }
       16534  +
        /* ServerBuilderGenerator.kt:426 */
       16535  +
        #[allow(missing_docs)] // documentation missing in model
       16536  +
                               /* ServerBuilderGenerator.kt:428 */
       16537  +
        pub(crate) fn set_long_in_path(mut self, input: impl ::std::convert::Into<i64>) -> Self {
       16538  +
            /* ServerBuilderGenerator.kt:429 */
       16539  +
            self.long_in_path = Some(input.into());
       16540  +
            self
       16541  +
            /* ServerBuilderGenerator.kt:428 */
16422  16542   
        }
       16543  +
        /* ServerBuilderGenerator.kt:331 */
       16544  +
        #[allow(missing_docs)] // documentation missing in model
       16545  +
                               /* ServerBuilderGenerator.kt:343 */
       16546  +
        pub fn long_in_query(mut self, input: ::std::option::Option<i64>) -> Self {
       16547  +
            /* ServerBuilderGenerator.kt:344 */
       16548  +
            self.long_in_query =
       16549  +
                /* ServerBuilderGenerator.kt:376 */input
       16550  +
            /* ServerBuilderGenerator.kt:344 */;
       16551  +
            self
       16552  +
            /* ServerBuilderGenerator.kt:343 */
16423  16553   
        }
16424         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`ConstantQueryStringInput`](crate::input::ConstantQueryStringInput).
16425         -
    /* RustType.kt:534 */
16426         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
16427         -
    /* ServerBuilderGenerator.kt:211 */
16428         -
    pub struct Builder {
16429         -
        /* ServerBuilderGenerator.kt:308 */
16430         -
        pub(crate) hello: ::std::option::Option<::std::string::String>,
16431         -
        /* ServerBuilderGenerator.kt:211 */
       16554  +
        /* ServerBuilderGenerator.kt:426 */
       16555  +
        #[allow(missing_docs)] // documentation missing in model
       16556  +
                               /* ServerBuilderGenerator.kt:428 */
       16557  +
        pub(crate) fn set_long_in_query(
       16558  +
            mut self,
       16559  +
            input: Option<impl ::std::convert::Into<i64>>,
       16560  +
        ) -> Self {
       16561  +
            /* ServerBuilderGenerator.kt:429 */
       16562  +
            self.long_in_query = input.map(|v| v.into());
       16563  +
            self
       16564  +
            /* ServerBuilderGenerator.kt:428 */
16432  16565   
        }
16433         -
    /* ServerBuilderGenerator.kt:215 */
16434         -
    impl Builder {
16435  16566   
        /* ServerBuilderGenerator.kt:331 */
16436  16567   
        #[allow(missing_docs)] // documentation missing in model
16437  16568   
                               /* ServerBuilderGenerator.kt:343 */
16438         -
        pub fn hello(mut self, input: ::std::string::String) -> Self {
       16569  +
        pub fn long_in_header(mut self, input: ::std::option::Option<i64>) -> Self {
16439  16570   
            /* ServerBuilderGenerator.kt:344 */
16440         -
            self.hello =
16441         -
                /* ServerBuilderGenerator.kt:345 */Some(
       16571  +
            self.long_in_header =
16442  16572   
                /* ServerBuilderGenerator.kt:376 */input
16443         -
                /* ServerBuilderGenerator.kt:345 */)
16444  16573   
            /* ServerBuilderGenerator.kt:344 */;
16445  16574   
            self
16446  16575   
            /* ServerBuilderGenerator.kt:343 */
16447  16576   
        }
16448  16577   
        /* ServerBuilderGenerator.kt:426 */
16449  16578   
        #[allow(missing_docs)] // documentation missing in model
16450  16579   
                               /* ServerBuilderGenerator.kt:428 */
16451         -
        pub(crate) fn set_hello(
       16580  +
        pub(crate) fn set_long_in_header(
16452  16581   
            mut self,
16453         -
            input: impl ::std::convert::Into<::std::string::String>,
       16582  +
            input: Option<impl ::std::convert::Into<i64>>,
16454  16583   
        ) -> Self {
16455  16584   
            /* ServerBuilderGenerator.kt:429 */
16456         -
            self.hello = Some(input.into());
       16585  +
            self.long_in_header = input.map(|v| v.into());
16457  16586   
            self
16458  16587   
            /* ServerBuilderGenerator.kt:428 */
16459  16588   
        }
16460         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`ConstantQueryStringInput`](crate::input::ConstantQueryStringInput).
       16589  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedLongInput`](crate::input::MalformedLongInput).
16461  16590   
        /// /* ServerBuilderGenerator.kt:260 */
16462         -
        /// The builder fails to construct a [`ConstantQueryStringInput`](crate::input::ConstantQueryStringInput) if a [`ConstraintViolation`] occurs.
       16591  +
        /// The builder fails to construct a [`MalformedLongInput`](crate::input::MalformedLongInput) if a [`ConstraintViolation`] occurs.
16463  16592   
        ///
16464  16593   
        /* ServerBuilderGenerator.kt:271 */
16465         -
        pub fn build(self) -> Result<crate::input::ConstantQueryStringInput, ConstraintViolation> {
       16594  +
        pub fn build(self) -> Result<crate::input::MalformedLongInput, ConstraintViolation> {
16466  16595   
            self.build_enforcing_all_constraints()
16467  16596   
        }
16468  16597   
        /* ServerBuilderGenerator.kt:283 */
16469  16598   
        fn build_enforcing_all_constraints(
16470  16599   
            self,
16471         -
        ) -> Result<crate::input::ConstantQueryStringInput, ConstraintViolation> {
       16600  +
        ) -> Result<crate::input::MalformedLongInput, ConstraintViolation> {
16472  16601   
            /* ServerBuilderGenerator.kt:287 */
16473  16602   
            Ok(
16474  16603   
                /* ServerBuilderGenerator.kt:542 */
16475         -
                crate::input::ConstantQueryStringInput {
       16604  +
                crate::input::MalformedLongInput {
16476  16605   
                    /* ServerBuilderGenerator.kt:546 */
16477         -
                    hello: self
16478         -
                        .hello
       16606  +
                    long_in_body: self.long_in_body,
       16607  +
                    /* ServerBuilderGenerator.kt:546 */
       16608  +
                    long_in_path: self
       16609  +
                        .long_in_path
16479  16610   
                        /* ServerBuilderGenerator.kt:569 */
16480         -
                        .ok_or(ConstraintViolation::MissingHello)?,
       16611  +
                        .ok_or(ConstraintViolation::MissingLongInPath)?,
       16612  +
                    /* ServerBuilderGenerator.kt:546 */
       16613  +
                    long_in_query: self.long_in_query,
       16614  +
                    /* ServerBuilderGenerator.kt:546 */
       16615  +
                    long_in_header: self.long_in_header,
16481  16616   
                    /* ServerBuilderGenerator.kt:542 */
16482  16617   
                }, /* ServerBuilderGenerator.kt:287 */
16483  16618   
            )
16484  16619   
            /* ServerBuilderGenerator.kt:283 */
16485  16620   
        }
16486  16621   
        /* ServerBuilderGenerator.kt:215 */
16487  16622   
    }
16488  16623   
16489  16624   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
16490  16625   
}
16491         -
/// /* ServerBuilderGenerator.kt:171 */See [`AllQueryStringTypesInput`](crate::input::AllQueryStringTypesInput).
16492         -
pub mod all_query_string_types_input {
       16626  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedFloatInput`](crate::input::MalformedFloatInput).
       16627  +
pub mod malformed_float_input {
16493  16628   
16494  16629   
    /* RustType.kt:534 */
16495  16630   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
16496  16631   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
16497  16632   
    /* RustType.kt:534 */
16498  16633   
    #[non_exhaustive]
16499  16634   
    /* ServerBuilderConstraintViolations.kt:75 */
16500  16635   
    #[allow(clippy::enum_variant_names)]
16501  16636   
    pub enum ConstraintViolation {
16502         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `query_string_set` when building `AllQueryStringTypesInput`.
16503         -
        /* RustType.kt:534 */
16504         -
        #[doc(hidden)]
16505         -
        /* ServerBuilderConstraintViolations.kt:165 */
16506         -
        QueryStringSet(crate::model::string_set::ConstraintViolation),
16507         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `query_integer_set` when building `AllQueryStringTypesInput`.
16508         -
        /* RustType.kt:534 */
16509         -
        #[doc(hidden)]
16510         -
        /* ServerBuilderConstraintViolations.kt:165 */
16511         -
        QueryIntegerSet(crate::model::integer_set::ConstraintViolation),
16512         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `query_enum` when building `AllQueryStringTypesInput`.
16513         -
        /* RustType.kt:534 */
16514         -
        #[doc(hidden)]
16515         -
        /* ServerBuilderConstraintViolations.kt:165 */
16516         -
        QueryEnum(crate::model::foo_enum::ConstraintViolation),
16517         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `query_enum_list` when building `AllQueryStringTypesInput`.
16518         -
        /* RustType.kt:534 */
16519         -
        #[doc(hidden)]
16520         -
        /* ServerBuilderConstraintViolations.kt:165 */
16521         -
        QueryEnumList(crate::model::foo_enum_list::ConstraintViolation),
       16637  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`float_in_path` was not provided but it is required when building `MalformedFloatInput`.
       16638  +
        /* ServerBuilderConstraintViolations.kt:144 */
       16639  +
        MissingFloatInPath,
16522  16640   
        /* ServerBuilderConstraintViolations.kt:75 */
16523  16641   
    }
16524  16642   
    /* ServerBuilderConstraintViolations.kt:116 */
16525  16643   
    impl ::std::fmt::Display for ConstraintViolation {
16526  16644   
        /* ServerBuilderConstraintViolations.kt:117 */
16527  16645   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
16528  16646   
            /* ServerBuilderConstraintViolations.kt:118 */
16529  16647   
            match self {
16530         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::QueryStringSet(_) => write!(f, "constraint violation occurred building member `query_string_set` when building `AllQueryStringTypesInput`"),
16531         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::QueryIntegerSet(_) => write!(f, "constraint violation occurred building member `query_integer_set` when building `AllQueryStringTypesInput`"),
16532         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::QueryEnum(_) => write!(f, "constraint violation occurred building member `query_enum` when building `AllQueryStringTypesInput`"),
16533         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::QueryEnumList(_) => write!(f, "constraint violation occurred building member `query_enum_list` when building `AllQueryStringTypesInput`"),
       16648  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingFloatInPath => write!(f, "`float_in_path` was not provided but it is required when building `MalformedFloatInput`"),
16534  16649   
            /* ServerBuilderConstraintViolations.kt:118 */}
16535  16650   
            /* ServerBuilderConstraintViolations.kt:117 */
16536  16651   
        }
16537  16652   
        /* ServerBuilderConstraintViolations.kt:116 */
16538  16653   
    }
16539  16654   
    /* ServerBuilderConstraintViolations.kt:83 */
16540  16655   
    impl ::std::error::Error for ConstraintViolation {}
16541  16656   
    /* ServerBuilderConstraintViolations.kt:172 */
16542  16657   
    impl ConstraintViolation {
16543  16658   
        pub(crate) fn as_validation_exception_field(
16544  16659   
            self,
16545  16660   
            path: ::std::string::String,
16546  16661   
        ) -> crate::model::ValidationExceptionField {
16547  16662   
            match self {
16548         -
                ConstraintViolation::QueryStringSet(inner) => {
16549         -
                    inner.as_validation_exception_field(path + "/queryStringSet")
16550         -
                }
16551         -
                ConstraintViolation::QueryIntegerSet(inner) => {
16552         -
                    inner.as_validation_exception_field(path + "/queryIntegerSet")
16553         -
                }
16554         -
                ConstraintViolation::QueryEnum(inner) => {
16555         -
                    inner.as_validation_exception_field(path + "/queryEnum")
16556         -
                }
16557         -
                ConstraintViolation::QueryEnumList(inner) => {
16558         -
                    inner.as_validation_exception_field(path + "/queryEnumList")
16559         -
                }
       16663  +
            ConstraintViolation::MissingFloatInPath => crate::model::ValidationExceptionField {
       16664  +
                                                message: format!("Value at '{}/floatInPath' failed to satisfy constraint: Member must not be null", path),
       16665  +
                                                path: path + "/floatInPath",
       16666  +
                                            },
16560  16667   
        }
16561  16668   
        }
16562  16669   
    }
16563  16670   
    /* ServerBuilderGenerator.kt:234 */
16564  16671   
    impl ::std::convert::From<ConstraintViolation>
16565  16672   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
16566  16673   
    {
16567  16674   
        fn from(constraint_violation: ConstraintViolation) -> Self {
16568  16675   
            let first_validation_exception_field =
16569  16676   
                constraint_violation.as_validation_exception_field("".to_owned());
16570  16677   
            let validation_exception = crate::error::ValidationException {
16571  16678   
                message: format!(
16572  16679   
                    "1 validation error detected. {}",
16573  16680   
                    &first_validation_exception_field.message
16574  16681   
                ),
16575  16682   
                field_list: Some(vec![first_validation_exception_field]),
16576  16683   
            };
16577  16684   
            Self::ConstraintViolation(
16578  16685   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
16579  16686   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
16580  16687   
                            )
16581  16688   
        }
16582  16689   
    }
16583  16690   
    /* ServerBuilderGenerator.kt:244 */
16584  16691   
    impl ::std::convert::From<Builder>
16585         -
        for crate::constrained::MaybeConstrained<crate::input::AllQueryStringTypesInput>
       16692  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedFloatInput>
16586  16693   
    {
16587  16694   
        fn from(builder: Builder) -> Self {
16588  16695   
            Self::Unconstrained(builder)
16589  16696   
        }
16590  16697   
    }
16591  16698   
    /* ServerBuilderGenerator.kt:446 */
16592         -
    impl ::std::convert::TryFrom<Builder> for crate::input::AllQueryStringTypesInput {
       16699  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedFloatInput {
16593  16700   
        type Error = ConstraintViolation;
16594  16701   
16595  16702   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
16596  16703   
            builder.build()
16597  16704   
        }
16598  16705   
    }
16599         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`AllQueryStringTypesInput`](crate::input::AllQueryStringTypesInput).
       16706  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedFloatInput`](crate::input::MalformedFloatInput).
16600  16707   
    /* RustType.kt:534 */
16601  16708   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
16602  16709   
    /* ServerBuilderGenerator.kt:211 */
16603  16710   
    pub struct Builder {
16604  16711   
        /* ServerBuilderGenerator.kt:308 */
16605         -
        pub(crate) query_string: ::std::option::Option<::std::string::String>,
16606         -
        /* ServerBuilderGenerator.kt:308 */
16607         -
        pub(crate) query_string_list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
16608         -
        /* ServerBuilderGenerator.kt:308 */
16609         -
        pub(crate) query_string_set:
16610         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
16611         -
        /* ServerBuilderGenerator.kt:308 */ pub(crate) query_byte: ::std::option::Option<i8>,
16612         -
        /* ServerBuilderGenerator.kt:308 */
16613         -
        pub(crate) query_short: ::std::option::Option<i16>,
16614         -
        /* ServerBuilderGenerator.kt:308 */
16615         -
        pub(crate) query_integer: ::std::option::Option<i32>,
16616         -
        /* ServerBuilderGenerator.kt:308 */
16617         -
        pub(crate) query_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
16618         -
        /* ServerBuilderGenerator.kt:308 */
16619         -
        pub(crate) query_integer_set:
16620         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::IntegerSet>>,
16621         -
        /* ServerBuilderGenerator.kt:308 */
16622         -
        pub(crate) query_long: ::std::option::Option<i64>,
16623         -
        /* ServerBuilderGenerator.kt:308 */
16624         -
        pub(crate) query_float: ::std::option::Option<f32>,
16625         -
        /* ServerBuilderGenerator.kt:308 */
16626         -
        pub(crate) query_double: ::std::option::Option<f64>,
16627         -
        /* ServerBuilderGenerator.kt:308 */
16628         -
        pub(crate) query_double_list: ::std::option::Option<::std::vec::Vec<f64>>,
16629         -
        /* ServerBuilderGenerator.kt:308 */
16630         -
        pub(crate) query_boolean: ::std::option::Option<bool>,
16631         -
        /* ServerBuilderGenerator.kt:308 */
16632         -
        pub(crate) query_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
16633         -
        /* ServerBuilderGenerator.kt:308 */
16634         -
        pub(crate) query_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
16635         -
        /* ServerBuilderGenerator.kt:308 */
16636         -
        pub(crate) query_timestamp_list:
16637         -
            ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
16638         -
        /* ServerBuilderGenerator.kt:308 */
16639         -
        pub(crate) query_enum:
16640         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
16641         -
        /* ServerBuilderGenerator.kt:308 */
16642         -
        pub(crate) query_enum_list: ::std::option::Option<
16643         -
            crate::constrained::MaybeConstrained<
16644         -
                crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
16645         -
            >,
16646         -
        >,
       16712  +
        pub(crate) float_in_body: ::std::option::Option<f32>,
16647  16713   
        /* ServerBuilderGenerator.kt:308 */
16648         -
        pub(crate) query_integer_enum: ::std::option::Option<i32>,
       16714  +
        pub(crate) float_in_path: ::std::option::Option<f32>,
16649  16715   
        /* ServerBuilderGenerator.kt:308 */
16650         -
        pub(crate) query_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
       16716  +
        pub(crate) float_in_query: ::std::option::Option<f32>,
16651  16717   
        /* ServerBuilderGenerator.kt:308 */
16652         -
        pub(crate) query_params_map_of_string_list: ::std::option::Option<
16653         -
            ::std::collections::HashMap<
16654         -
                ::std::string::String,
16655         -
                ::std::vec::Vec<::std::string::String>,
16656         -
            >,
16657         -
        >,
       16718  +
        pub(crate) float_in_header: ::std::option::Option<f32>,
16658  16719   
        /* ServerBuilderGenerator.kt:211 */
16659  16720   
    }
16660  16721   
    /* ServerBuilderGenerator.kt:215 */
16661  16722   
    impl Builder {
16662  16723   
        /* ServerBuilderGenerator.kt:331 */
16663  16724   
        #[allow(missing_docs)] // documentation missing in model
16664  16725   
                               /* ServerBuilderGenerator.kt:343 */
16665         -
        pub fn query_string(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       16726  +
        pub fn float_in_body(mut self, input: ::std::option::Option<f32>) -> Self {
16666  16727   
            /* ServerBuilderGenerator.kt:344 */
16667         -
            self.query_string =
       16728  +
            self.float_in_body =
16668  16729   
                /* ServerBuilderGenerator.kt:376 */input
16669  16730   
            /* ServerBuilderGenerator.kt:344 */;
16670  16731   
            self
16671  16732   
            /* ServerBuilderGenerator.kt:343 */
16672  16733   
        }
16673  16734   
        /* ServerBuilderGenerator.kt:426 */
16674  16735   
        #[allow(missing_docs)] // documentation missing in model
16675  16736   
                               /* ServerBuilderGenerator.kt:428 */
16676         -
        pub(crate) fn set_query_string(
       16737  +
        pub(crate) fn set_float_in_body(
16677  16738   
            mut self,
16678         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       16739  +
            input: Option<impl ::std::convert::Into<f32>>,
16679  16740   
        ) -> Self {
16680  16741   
            /* ServerBuilderGenerator.kt:429 */
16681         -
            self.query_string = input.map(|v| v.into());
       16742  +
            self.float_in_body = input.map(|v| v.into());
16682  16743   
            self
16683  16744   
            /* ServerBuilderGenerator.kt:428 */
16684  16745   
        }
16685  16746   
        /* ServerBuilderGenerator.kt:331 */
16686  16747   
        #[allow(missing_docs)] // documentation missing in model
16687  16748   
                               /* ServerBuilderGenerator.kt:343 */
16688         -
        pub fn query_string_list(
16689         -
            mut self,
16690         -
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
16691         -
        ) -> Self {
       16749  +
        pub fn float_in_path(mut self, input: f32) -> Self {
16692  16750   
            /* ServerBuilderGenerator.kt:344 */
16693         -
            self.query_string_list =
       16751  +
            self.float_in_path =
       16752  +
                /* ServerBuilderGenerator.kt:345 */Some(
16694  16753   
                    /* ServerBuilderGenerator.kt:376 */input
       16754  +
                /* ServerBuilderGenerator.kt:345 */)
16695  16755   
            /* ServerBuilderGenerator.kt:344 */;
16696  16756   
            self
16697  16757   
            /* ServerBuilderGenerator.kt:343 */
16698  16758   
        }
16699  16759   
        /* ServerBuilderGenerator.kt:426 */
16700  16760   
        #[allow(missing_docs)] // documentation missing in model
16701  16761   
                               /* ServerBuilderGenerator.kt:428 */
16702         -
        pub(crate) fn set_query_string_list(
16703         -
            mut self,
16704         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
16705         -
        ) -> Self {
16706         -
            /* ServerBuilderGenerator.kt:429 */
16707         -
            self.query_string_list = input.map(|v| v.into());
16708         -
            self
16709         -
            /* ServerBuilderGenerator.kt:428 */
16710         -
        }
16711         -
        /* ServerBuilderGenerator.kt:331 */
16712         -
        #[allow(missing_docs)] // documentation missing in model
16713         -
                               /* ServerBuilderGenerator.kt:343 */
16714         -
        pub fn query_string_set(
16715         -
            mut self,
16716         -
            input: ::std::option::Option<crate::model::StringSet>,
16717         -
        ) -> Self {
16718         -
            /* ServerBuilderGenerator.kt:344 */
16719         -
            self.query_string_set =
16720         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
16721         -
            /* ServerBuilderGenerator.kt:344 */;
16722         -
            self
16723         -
            /* ServerBuilderGenerator.kt:343 */
16724         -
        }
16725         -
        /* ServerBuilderGenerator.kt:426 */
16726         -
        #[allow(missing_docs)] // documentation missing in model
16727         -
                               /* ServerBuilderGenerator.kt:428 */
16728         -
        pub(crate) fn set_query_string_set(
16729         -
            mut self,
16730         -
            input: Option<
16731         -
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
16732         -
            >,
16733         -
        ) -> Self {
       16762  +
        pub(crate) fn set_float_in_path(mut self, input: impl ::std::convert::Into<f32>) -> Self {
16734  16763   
            /* ServerBuilderGenerator.kt:429 */
16735         -
            self.query_string_set = input.map(|v| v.into());
       16764  +
            self.float_in_path = Some(input.into());
16736  16765   
            self
16737  16766   
            /* ServerBuilderGenerator.kt:428 */
16738  16767   
        }
16739  16768   
        /* ServerBuilderGenerator.kt:331 */
16740  16769   
        #[allow(missing_docs)] // documentation missing in model
16741  16770   
                               /* ServerBuilderGenerator.kt:343 */
16742         -
        pub fn query_byte(mut self, input: ::std::option::Option<i8>) -> Self {
       16771  +
        pub fn float_in_query(mut self, input: ::std::option::Option<f32>) -> Self {
16743  16772   
            /* ServerBuilderGenerator.kt:344 */
16744         -
            self.query_byte =
       16773  +
            self.float_in_query =
16745  16774   
                /* ServerBuilderGenerator.kt:376 */input
16746  16775   
            /* ServerBuilderGenerator.kt:344 */;
16747  16776   
            self
16748  16777   
            /* ServerBuilderGenerator.kt:343 */
16749  16778   
        }
16750  16779   
        /* ServerBuilderGenerator.kt:426 */
16751  16780   
        #[allow(missing_docs)] // documentation missing in model
16752  16781   
                               /* ServerBuilderGenerator.kt:428 */
16753         -
        pub(crate) fn set_query_byte(
       16782  +
        pub(crate) fn set_float_in_query(
16754  16783   
            mut self,
16755         -
            input: Option<impl ::std::convert::Into<i8>>,
       16784  +
            input: Option<impl ::std::convert::Into<f32>>,
16756  16785   
        ) -> Self {
16757  16786   
            /* ServerBuilderGenerator.kt:429 */
16758         -
            self.query_byte = input.map(|v| v.into());
       16787  +
            self.float_in_query = input.map(|v| v.into());
16759  16788   
            self
16760  16789   
            /* ServerBuilderGenerator.kt:428 */
16761  16790   
        }
16762  16791   
        /* ServerBuilderGenerator.kt:331 */
16763  16792   
        #[allow(missing_docs)] // documentation missing in model
16764  16793   
                               /* ServerBuilderGenerator.kt:343 */
16765         -
        pub fn query_short(mut self, input: ::std::option::Option<i16>) -> Self {
       16794  +
        pub fn float_in_header(mut self, input: ::std::option::Option<f32>) -> Self {
16766  16795   
            /* ServerBuilderGenerator.kt:344 */
16767         -
            self.query_short =
       16796  +
            self.float_in_header =
16768  16797   
                /* ServerBuilderGenerator.kt:376 */input
16769  16798   
            /* ServerBuilderGenerator.kt:344 */;
16770  16799   
            self
16771  16800   
            /* ServerBuilderGenerator.kt:343 */
16772  16801   
        }
16773  16802   
        /* ServerBuilderGenerator.kt:426 */
16774  16803   
        #[allow(missing_docs)] // documentation missing in model
16775  16804   
                               /* ServerBuilderGenerator.kt:428 */
16776         -
        pub(crate) fn set_query_short(
       16805  +
        pub(crate) fn set_float_in_header(
16777  16806   
            mut self,
16778         -
            input: Option<impl ::std::convert::Into<i16>>,
       16807  +
            input: Option<impl ::std::convert::Into<f32>>,
16779  16808   
        ) -> Self {
16780  16809   
            /* ServerBuilderGenerator.kt:429 */
16781         -
            self.query_short = input.map(|v| v.into());
       16810  +
            self.float_in_header = input.map(|v| v.into());
16782  16811   
            self
16783  16812   
            /* ServerBuilderGenerator.kt:428 */
16784  16813   
        }
       16814  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedFloatInput`](crate::input::MalformedFloatInput).
       16815  +
        /// /* ServerBuilderGenerator.kt:260 */
       16816  +
        /// The builder fails to construct a [`MalformedFloatInput`](crate::input::MalformedFloatInput) if a [`ConstraintViolation`] occurs.
       16817  +
        ///
       16818  +
        /* ServerBuilderGenerator.kt:271 */
       16819  +
        pub fn build(self) -> Result<crate::input::MalformedFloatInput, ConstraintViolation> {
       16820  +
            self.build_enforcing_all_constraints()
       16821  +
        }
       16822  +
        /* ServerBuilderGenerator.kt:283 */
       16823  +
        fn build_enforcing_all_constraints(
       16824  +
            self,
       16825  +
        ) -> Result<crate::input::MalformedFloatInput, ConstraintViolation> {
       16826  +
            /* ServerBuilderGenerator.kt:287 */
       16827  +
            Ok(
       16828  +
                /* ServerBuilderGenerator.kt:542 */
       16829  +
                crate::input::MalformedFloatInput {
       16830  +
                    /* ServerBuilderGenerator.kt:546 */
       16831  +
                    float_in_body: self.float_in_body,
       16832  +
                    /* ServerBuilderGenerator.kt:546 */
       16833  +
                    float_in_path: self
       16834  +
                        .float_in_path
       16835  +
                        /* ServerBuilderGenerator.kt:569 */
       16836  +
                        .ok_or(ConstraintViolation::MissingFloatInPath)?,
       16837  +
                    /* ServerBuilderGenerator.kt:546 */
       16838  +
                    float_in_query: self.float_in_query,
       16839  +
                    /* ServerBuilderGenerator.kt:546 */
       16840  +
                    float_in_header: self.float_in_header,
       16841  +
                    /* ServerBuilderGenerator.kt:542 */
       16842  +
                }, /* ServerBuilderGenerator.kt:287 */
       16843  +
            )
       16844  +
            /* ServerBuilderGenerator.kt:283 */
       16845  +
        }
       16846  +
        /* ServerBuilderGenerator.kt:215 */
       16847  +
    }
       16848  +
       16849  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       16850  +
}
       16851  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedDoubleInput`](crate::input::MalformedDoubleInput).
       16852  +
pub mod malformed_double_input {
       16853  +
       16854  +
    /* RustType.kt:534 */
       16855  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       16856  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       16857  +
    /* RustType.kt:534 */
       16858  +
    #[non_exhaustive]
       16859  +
    /* ServerBuilderConstraintViolations.kt:75 */
       16860  +
    #[allow(clippy::enum_variant_names)]
       16861  +
    pub enum ConstraintViolation {
       16862  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`double_in_path` was not provided but it is required when building `MalformedDoubleInput`.
       16863  +
        /* ServerBuilderConstraintViolations.kt:144 */
       16864  +
        MissingDoubleInPath,
       16865  +
        /* ServerBuilderConstraintViolations.kt:75 */
       16866  +
    }
       16867  +
    /* ServerBuilderConstraintViolations.kt:116 */
       16868  +
    impl ::std::fmt::Display for ConstraintViolation {
       16869  +
        /* ServerBuilderConstraintViolations.kt:117 */
       16870  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       16871  +
            /* ServerBuilderConstraintViolations.kt:118 */
       16872  +
            match self {
       16873  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingDoubleInPath => write!(f, "`double_in_path` was not provided but it is required when building `MalformedDoubleInput`"),
       16874  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       16875  +
            /* ServerBuilderConstraintViolations.kt:117 */
       16876  +
        }
       16877  +
        /* ServerBuilderConstraintViolations.kt:116 */
       16878  +
    }
       16879  +
    /* ServerBuilderConstraintViolations.kt:83 */
       16880  +
    impl ::std::error::Error for ConstraintViolation {}
       16881  +
    /* ServerBuilderConstraintViolations.kt:172 */
       16882  +
    impl ConstraintViolation {
       16883  +
        pub(crate) fn as_validation_exception_field(
       16884  +
            self,
       16885  +
            path: ::std::string::String,
       16886  +
        ) -> crate::model::ValidationExceptionField {
       16887  +
            match self {
       16888  +
            ConstraintViolation::MissingDoubleInPath => crate::model::ValidationExceptionField {
       16889  +
                                                message: format!("Value at '{}/doubleInPath' failed to satisfy constraint: Member must not be null", path),
       16890  +
                                                path: path + "/doubleInPath",
       16891  +
                                            },
       16892  +
        }
       16893  +
        }
       16894  +
    }
       16895  +
    /* ServerBuilderGenerator.kt:234 */
       16896  +
    impl ::std::convert::From<ConstraintViolation>
       16897  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       16898  +
    {
       16899  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       16900  +
            let first_validation_exception_field =
       16901  +
                constraint_violation.as_validation_exception_field("".to_owned());
       16902  +
            let validation_exception = crate::error::ValidationException {
       16903  +
                message: format!(
       16904  +
                    "1 validation error detected. {}",
       16905  +
                    &first_validation_exception_field.message
       16906  +
                ),
       16907  +
                field_list: Some(vec![first_validation_exception_field]),
       16908  +
            };
       16909  +
            Self::ConstraintViolation(
       16910  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       16911  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       16912  +
                            )
       16913  +
        }
       16914  +
    }
       16915  +
    /* ServerBuilderGenerator.kt:244 */
       16916  +
    impl ::std::convert::From<Builder>
       16917  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedDoubleInput>
       16918  +
    {
       16919  +
        fn from(builder: Builder) -> Self {
       16920  +
            Self::Unconstrained(builder)
       16921  +
        }
       16922  +
    }
       16923  +
    /* ServerBuilderGenerator.kt:446 */
       16924  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedDoubleInput {
       16925  +
        type Error = ConstraintViolation;
       16926  +
       16927  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       16928  +
            builder.build()
       16929  +
        }
       16930  +
    }
       16931  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedDoubleInput`](crate::input::MalformedDoubleInput).
       16932  +
    /* RustType.kt:534 */
       16933  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       16934  +
    /* ServerBuilderGenerator.kt:211 */
       16935  +
    pub struct Builder {
       16936  +
        /* ServerBuilderGenerator.kt:308 */
       16937  +
        pub(crate) double_in_body: ::std::option::Option<f64>,
       16938  +
        /* ServerBuilderGenerator.kt:308 */
       16939  +
        pub(crate) double_in_path: ::std::option::Option<f64>,
       16940  +
        /* ServerBuilderGenerator.kt:308 */
       16941  +
        pub(crate) double_in_query: ::std::option::Option<f64>,
       16942  +
        /* ServerBuilderGenerator.kt:308 */
       16943  +
        pub(crate) double_in_header: ::std::option::Option<f64>,
       16944  +
        /* ServerBuilderGenerator.kt:211 */
       16945  +
    }
       16946  +
    /* ServerBuilderGenerator.kt:215 */
       16947  +
    impl Builder {
16785  16948   
        /* ServerBuilderGenerator.kt:331 */
16786  16949   
        #[allow(missing_docs)] // documentation missing in model
16787  16950   
                               /* ServerBuilderGenerator.kt:343 */
16788         -
        pub fn query_integer(mut self, input: ::std::option::Option<i32>) -> Self {
       16951  +
        pub fn double_in_body(mut self, input: ::std::option::Option<f64>) -> Self {
16789  16952   
            /* ServerBuilderGenerator.kt:344 */
16790         -
            self.query_integer =
       16953  +
            self.double_in_body =
16791  16954   
                /* ServerBuilderGenerator.kt:376 */input
16792  16955   
            /* ServerBuilderGenerator.kt:344 */;
16793  16956   
            self
16794  16957   
            /* ServerBuilderGenerator.kt:343 */
16795  16958   
        }
16796  16959   
        /* ServerBuilderGenerator.kt:426 */
16797  16960   
        #[allow(missing_docs)] // documentation missing in model
16798  16961   
                               /* ServerBuilderGenerator.kt:428 */
16799         -
        pub(crate) fn set_query_integer(
       16962  +
        pub(crate) fn set_double_in_body(
16800  16963   
            mut self,
16801         -
            input: Option<impl ::std::convert::Into<i32>>,
       16964  +
            input: Option<impl ::std::convert::Into<f64>>,
16802  16965   
        ) -> Self {
16803  16966   
            /* ServerBuilderGenerator.kt:429 */
16804         -
            self.query_integer = input.map(|v| v.into());
       16967  +
            self.double_in_body = input.map(|v| v.into());
16805  16968   
            self
16806  16969   
            /* ServerBuilderGenerator.kt:428 */
16807  16970   
        }
16808  16971   
        /* ServerBuilderGenerator.kt:331 */
16809  16972   
        #[allow(missing_docs)] // documentation missing in model
16810  16973   
                               /* ServerBuilderGenerator.kt:343 */
16811         -
        pub fn query_integer_list(
16812         -
            mut self,
16813         -
            input: ::std::option::Option<::std::vec::Vec<i32>>,
16814         -
        ) -> Self {
       16974  +
        pub fn double_in_path(mut self, input: f64) -> Self {
16815  16975   
            /* ServerBuilderGenerator.kt:344 */
16816         -
            self.query_integer_list =
       16976  +
            self.double_in_path =
       16977  +
                /* ServerBuilderGenerator.kt:345 */Some(
16817  16978   
                    /* ServerBuilderGenerator.kt:376 */input
       16979  +
                /* ServerBuilderGenerator.kt:345 */)
16818  16980   
            /* ServerBuilderGenerator.kt:344 */;
16819  16981   
            self
16820  16982   
            /* ServerBuilderGenerator.kt:343 */
16821  16983   
        }
16822  16984   
        /* ServerBuilderGenerator.kt:426 */
16823  16985   
        #[allow(missing_docs)] // documentation missing in model
16824  16986   
                               /* ServerBuilderGenerator.kt:428 */
16825         -
        pub(crate) fn set_query_integer_list(
16826         -
            mut self,
16827         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
16828         -
        ) -> Self {
       16987  +
        pub(crate) fn set_double_in_path(mut self, input: impl ::std::convert::Into<f64>) -> Self {
16829  16988   
            /* ServerBuilderGenerator.kt:429 */
16830         -
            self.query_integer_list = input.map(|v| v.into());
       16989  +
            self.double_in_path = Some(input.into());
16831  16990   
            self
16832  16991   
            /* ServerBuilderGenerator.kt:428 */
16833  16992   
        }
16834  16993   
        /* ServerBuilderGenerator.kt:331 */
16835  16994   
        #[allow(missing_docs)] // documentation missing in model
16836  16995   
                               /* ServerBuilderGenerator.kt:343 */
16837         -
        pub fn query_integer_set(
16838         -
            mut self,
16839         -
            input: ::std::option::Option<crate::model::IntegerSet>,
16840         -
        ) -> Self {
       16996  +
        pub fn double_in_query(mut self, input: ::std::option::Option<f64>) -> Self {
16841  16997   
            /* ServerBuilderGenerator.kt:344 */
16842         -
            self.query_integer_set =
16843         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
       16998  +
            self.double_in_query =
       16999  +
                /* ServerBuilderGenerator.kt:376 */input
16844  17000   
            /* ServerBuilderGenerator.kt:344 */;
16845  17001   
            self
16846  17002   
            /* ServerBuilderGenerator.kt:343 */
16847  17003   
        }
16848  17004   
        /* ServerBuilderGenerator.kt:426 */
16849  17005   
        #[allow(missing_docs)] // documentation missing in model
16850  17006   
                               /* ServerBuilderGenerator.kt:428 */
16851         -
        pub(crate) fn set_query_integer_set(
       17007  +
        pub(crate) fn set_double_in_query(
16852  17008   
            mut self,
16853         -
            input: Option<
16854         -
                impl ::std::convert::Into<
16855         -
                    crate::constrained::MaybeConstrained<crate::model::IntegerSet>,
16856         -
                >,
16857         -
            >,
       17009  +
            input: Option<impl ::std::convert::Into<f64>>,
16858  17010   
        ) -> Self {
16859  17011   
            /* ServerBuilderGenerator.kt:429 */
16860         -
            self.query_integer_set = input.map(|v| v.into());
       17012  +
            self.double_in_query = input.map(|v| v.into());
16861  17013   
            self
16862  17014   
            /* ServerBuilderGenerator.kt:428 */
16863  17015   
        }
16864  17016   
        /* ServerBuilderGenerator.kt:331 */
16865  17017   
        #[allow(missing_docs)] // documentation missing in model
16866  17018   
                               /* ServerBuilderGenerator.kt:343 */
16867         -
        pub fn query_long(mut self, input: ::std::option::Option<i64>) -> Self {
       17019  +
        pub fn double_in_header(mut self, input: ::std::option::Option<f64>) -> Self {
16868  17020   
            /* ServerBuilderGenerator.kt:344 */
16869         -
            self.query_long =
       17021  +
            self.double_in_header =
16870  17022   
                /* ServerBuilderGenerator.kt:376 */input
16871  17023   
            /* ServerBuilderGenerator.kt:344 */;
16872  17024   
            self
16873  17025   
            /* ServerBuilderGenerator.kt:343 */
16874  17026   
        }
16875  17027   
        /* ServerBuilderGenerator.kt:426 */
16876  17028   
        #[allow(missing_docs)] // documentation missing in model
16877  17029   
                               /* ServerBuilderGenerator.kt:428 */
16878         -
        pub(crate) fn set_query_long(
       17030  +
        pub(crate) fn set_double_in_header(
16879  17031   
            mut self,
16880         -
            input: Option<impl ::std::convert::Into<i64>>,
       17032  +
            input: Option<impl ::std::convert::Into<f64>>,
16881  17033   
        ) -> Self {
16882  17034   
            /* ServerBuilderGenerator.kt:429 */
16883         -
            self.query_long = input.map(|v| v.into());
       17035  +
            self.double_in_header = input.map(|v| v.into());
16884  17036   
            self
16885  17037   
            /* ServerBuilderGenerator.kt:428 */
16886  17038   
        }
       17039  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedDoubleInput`](crate::input::MalformedDoubleInput).
       17040  +
        /// /* ServerBuilderGenerator.kt:260 */
       17041  +
        /// The builder fails to construct a [`MalformedDoubleInput`](crate::input::MalformedDoubleInput) if a [`ConstraintViolation`] occurs.
       17042  +
        ///
       17043  +
        /* ServerBuilderGenerator.kt:271 */
       17044  +
        pub fn build(self) -> Result<crate::input::MalformedDoubleInput, ConstraintViolation> {
       17045  +
            self.build_enforcing_all_constraints()
       17046  +
        }
       17047  +
        /* ServerBuilderGenerator.kt:283 */
       17048  +
        fn build_enforcing_all_constraints(
       17049  +
            self,
       17050  +
        ) -> Result<crate::input::MalformedDoubleInput, ConstraintViolation> {
       17051  +
            /* ServerBuilderGenerator.kt:287 */
       17052  +
            Ok(
       17053  +
                /* ServerBuilderGenerator.kt:542 */
       17054  +
                crate::input::MalformedDoubleInput {
       17055  +
                    /* ServerBuilderGenerator.kt:546 */
       17056  +
                    double_in_body: self.double_in_body,
       17057  +
                    /* ServerBuilderGenerator.kt:546 */
       17058  +
                    double_in_path: self
       17059  +
                        .double_in_path
       17060  +
                        /* ServerBuilderGenerator.kt:569 */
       17061  +
                        .ok_or(ConstraintViolation::MissingDoubleInPath)?,
       17062  +
                    /* ServerBuilderGenerator.kt:546 */
       17063  +
                    double_in_query: self.double_in_query,
       17064  +
                    /* ServerBuilderGenerator.kt:546 */
       17065  +
                    double_in_header: self.double_in_header,
       17066  +
                    /* ServerBuilderGenerator.kt:542 */
       17067  +
                }, /* ServerBuilderGenerator.kt:287 */
       17068  +
            )
       17069  +
            /* ServerBuilderGenerator.kt:283 */
       17070  +
        }
       17071  +
        /* ServerBuilderGenerator.kt:215 */
       17072  +
    }
       17073  +
       17074  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       17075  +
}
       17076  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedStringInput`](crate::input::MalformedStringInput).
       17077  +
pub mod malformed_string_input {
       17078  +
       17079  +
    /* ServerBuilderGenerator.kt:461 */
       17080  +
    impl ::std::convert::From<Builder> for crate::input::MalformedStringInput {
       17081  +
        fn from(builder: Builder) -> Self {
       17082  +
            builder.build()
       17083  +
        }
       17084  +
    }
       17085  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedStringInput`](crate::input::MalformedStringInput).
       17086  +
    /* RustType.kt:534 */
       17087  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       17088  +
    /* ServerBuilderGenerator.kt:211 */
       17089  +
    pub struct Builder {
       17090  +
        /* ServerBuilderGenerator.kt:308 */
       17091  +
        pub(crate) blob: ::std::option::Option<::std::string::String>,
       17092  +
        /* ServerBuilderGenerator.kt:211 */
       17093  +
    }
       17094  +
    /* ServerBuilderGenerator.kt:215 */
       17095  +
    impl Builder {
16887  17096   
        /* ServerBuilderGenerator.kt:331 */
16888  17097   
        #[allow(missing_docs)] // documentation missing in model
16889  17098   
                               /* ServerBuilderGenerator.kt:343 */
16890         -
        pub fn query_float(mut self, input: ::std::option::Option<f32>) -> Self {
       17099  +
        pub fn blob(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
16891  17100   
            /* ServerBuilderGenerator.kt:344 */
16892         -
            self.query_float =
       17101  +
            self.blob =
16893  17102   
                /* ServerBuilderGenerator.kt:376 */input
16894  17103   
            /* ServerBuilderGenerator.kt:344 */;
16895  17104   
            self
16896  17105   
            /* ServerBuilderGenerator.kt:343 */
16897  17106   
        }
16898  17107   
        /* ServerBuilderGenerator.kt:426 */
16899  17108   
        #[allow(missing_docs)] // documentation missing in model
16900  17109   
                               /* ServerBuilderGenerator.kt:428 */
16901         -
        pub(crate) fn set_query_float(
       17110  +
        pub(crate) fn set_blob(
16902  17111   
            mut self,
16903         -
            input: Option<impl ::std::convert::Into<f32>>,
       17112  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
16904  17113   
        ) -> Self {
16905  17114   
            /* ServerBuilderGenerator.kt:429 */
16906         -
            self.query_float = input.map(|v| v.into());
       17115  +
            self.blob = input.map(|v| v.into());
16907  17116   
            self
16908  17117   
            /* ServerBuilderGenerator.kt:428 */
16909  17118   
        }
       17119  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedStringInput`](crate::input::MalformedStringInput).
       17120  +
        /* ServerBuilderGenerator.kt:271 */
       17121  +
        pub fn build(self) -> crate::input::MalformedStringInput {
       17122  +
            self.build_enforcing_all_constraints()
       17123  +
        }
       17124  +
        /* ServerBuilderGenerator.kt:283 */
       17125  +
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedStringInput {
       17126  +
            /* ServerBuilderGenerator.kt:542 */
       17127  +
            crate::input::MalformedStringInput {
       17128  +
                /* ServerBuilderGenerator.kt:546 */
       17129  +
                blob: self.blob,
       17130  +
                /* ServerBuilderGenerator.kt:542 */
       17131  +
            }
       17132  +
            /* ServerBuilderGenerator.kt:283 */
       17133  +
        }
       17134  +
        /* ServerBuilderGenerator.kt:215 */
       17135  +
    }
       17136  +
       17137  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       17138  +
}
       17139  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampPathDefaultInput`](crate::input::MalformedTimestampPathDefaultInput).
       17140  +
pub mod malformed_timestamp_path_default_input {
       17141  +
       17142  +
    /* RustType.kt:534 */
       17143  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       17144  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       17145  +
    /* RustType.kt:534 */
       17146  +
    #[non_exhaustive]
       17147  +
    /* ServerBuilderConstraintViolations.kt:75 */
       17148  +
    #[allow(clippy::enum_variant_names)]
       17149  +
    pub enum ConstraintViolation {
       17150  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampPathDefaultInput`.
       17151  +
        /* ServerBuilderConstraintViolations.kt:144 */
       17152  +
        MissingTimestamp,
       17153  +
        /* ServerBuilderConstraintViolations.kt:75 */
       17154  +
    }
       17155  +
    /* ServerBuilderConstraintViolations.kt:116 */
       17156  +
    impl ::std::fmt::Display for ConstraintViolation {
       17157  +
        /* ServerBuilderConstraintViolations.kt:117 */
       17158  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       17159  +
            /* ServerBuilderConstraintViolations.kt:118 */
       17160  +
            match self {
       17161  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampPathDefaultInput`"),
       17162  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       17163  +
            /* ServerBuilderConstraintViolations.kt:117 */
       17164  +
        }
       17165  +
        /* ServerBuilderConstraintViolations.kt:116 */
       17166  +
    }
       17167  +
    /* ServerBuilderConstraintViolations.kt:83 */
       17168  +
    impl ::std::error::Error for ConstraintViolation {}
       17169  +
    /* ServerBuilderConstraintViolations.kt:172 */
       17170  +
    impl ConstraintViolation {
       17171  +
        pub(crate) fn as_validation_exception_field(
       17172  +
            self,
       17173  +
            path: ::std::string::String,
       17174  +
        ) -> crate::model::ValidationExceptionField {
       17175  +
            match self {
       17176  +
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
       17177  +
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
       17178  +
                                                path: path + "/timestamp",
       17179  +
                                            },
       17180  +
        }
       17181  +
        }
       17182  +
    }
       17183  +
    /* ServerBuilderGenerator.kt:234 */
       17184  +
    impl ::std::convert::From<ConstraintViolation>
       17185  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       17186  +
    {
       17187  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       17188  +
            let first_validation_exception_field =
       17189  +
                constraint_violation.as_validation_exception_field("".to_owned());
       17190  +
            let validation_exception = crate::error::ValidationException {
       17191  +
                message: format!(
       17192  +
                    "1 validation error detected. {}",
       17193  +
                    &first_validation_exception_field.message
       17194  +
                ),
       17195  +
                field_list: Some(vec![first_validation_exception_field]),
       17196  +
            };
       17197  +
            Self::ConstraintViolation(
       17198  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       17199  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       17200  +
                            )
       17201  +
        }
       17202  +
    }
       17203  +
    /* ServerBuilderGenerator.kt:244 */
       17204  +
    impl ::std::convert::From<Builder>
       17205  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampPathDefaultInput>
       17206  +
    {
       17207  +
        fn from(builder: Builder) -> Self {
       17208  +
            Self::Unconstrained(builder)
       17209  +
        }
       17210  +
    }
       17211  +
    /* ServerBuilderGenerator.kt:446 */
       17212  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampPathDefaultInput {
       17213  +
        type Error = ConstraintViolation;
       17214  +
       17215  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       17216  +
            builder.build()
       17217  +
        }
       17218  +
    }
       17219  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampPathDefaultInput`](crate::input::MalformedTimestampPathDefaultInput).
       17220  +
    /* RustType.kt:534 */
       17221  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       17222  +
    /* ServerBuilderGenerator.kt:211 */
       17223  +
    pub struct Builder {
       17224  +
        /* ServerBuilderGenerator.kt:308 */
       17225  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
       17226  +
        /* ServerBuilderGenerator.kt:211 */
       17227  +
    }
       17228  +
    /* ServerBuilderGenerator.kt:215 */
       17229  +
    impl Builder {
16910  17230   
        /* ServerBuilderGenerator.kt:331 */
16911  17231   
        #[allow(missing_docs)] // documentation missing in model
16912  17232   
                               /* ServerBuilderGenerator.kt:343 */
16913         -
        pub fn query_double(mut self, input: ::std::option::Option<f64>) -> Self {
       17233  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
16914  17234   
            /* ServerBuilderGenerator.kt:344 */
16915         -
            self.query_double =
       17235  +
            self.timestamp =
       17236  +
                /* ServerBuilderGenerator.kt:345 */Some(
16916  17237   
                    /* ServerBuilderGenerator.kt:376 */input
       17238  +
                /* ServerBuilderGenerator.kt:345 */)
16917  17239   
            /* ServerBuilderGenerator.kt:344 */;
16918  17240   
            self
16919  17241   
            /* ServerBuilderGenerator.kt:343 */
16920  17242   
        }
16921  17243   
        /* ServerBuilderGenerator.kt:426 */
16922  17244   
        #[allow(missing_docs)] // documentation missing in model
16923  17245   
                               /* ServerBuilderGenerator.kt:428 */
16924         -
        pub(crate) fn set_query_double(
       17246  +
        pub(crate) fn set_timestamp(
16925  17247   
            mut self,
16926         -
            input: Option<impl ::std::convert::Into<f64>>,
       17248  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
16927  17249   
        ) -> Self {
16928  17250   
            /* ServerBuilderGenerator.kt:429 */
16929         -
            self.query_double = input.map(|v| v.into());
       17251  +
            self.timestamp = Some(input.into());
16930  17252   
            self
16931  17253   
            /* ServerBuilderGenerator.kt:428 */
16932  17254   
        }
       17255  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampPathDefaultInput`](crate::input::MalformedTimestampPathDefaultInput).
       17256  +
        /// /* ServerBuilderGenerator.kt:260 */
       17257  +
        /// The builder fails to construct a [`MalformedTimestampPathDefaultInput`](crate::input::MalformedTimestampPathDefaultInput) if a [`ConstraintViolation`] occurs.
       17258  +
        ///
       17259  +
        /* ServerBuilderGenerator.kt:271 */
       17260  +
        pub fn build(
       17261  +
            self,
       17262  +
        ) -> Result<crate::input::MalformedTimestampPathDefaultInput, ConstraintViolation> {
       17263  +
            self.build_enforcing_all_constraints()
       17264  +
        }
       17265  +
        /* ServerBuilderGenerator.kt:283 */
       17266  +
        fn build_enforcing_all_constraints(
       17267  +
            self,
       17268  +
        ) -> Result<crate::input::MalformedTimestampPathDefaultInput, ConstraintViolation> {
       17269  +
            /* ServerBuilderGenerator.kt:287 */
       17270  +
            Ok(
       17271  +
                /* ServerBuilderGenerator.kt:542 */
       17272  +
                crate::input::MalformedTimestampPathDefaultInput {
       17273  +
                    /* ServerBuilderGenerator.kt:546 */
       17274  +
                    timestamp: self
       17275  +
                        .timestamp
       17276  +
                        /* ServerBuilderGenerator.kt:569 */
       17277  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
       17278  +
                    /* ServerBuilderGenerator.kt:542 */
       17279  +
                }, /* ServerBuilderGenerator.kt:287 */
       17280  +
            )
       17281  +
            /* ServerBuilderGenerator.kt:283 */
       17282  +
        }
       17283  +
        /* ServerBuilderGenerator.kt:215 */
       17284  +
    }
       17285  +
       17286  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       17287  +
}
       17288  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampPathHttpDateInput`](crate::input::MalformedTimestampPathHttpDateInput).
       17289  +
pub mod malformed_timestamp_path_http_date_input {
       17290  +
       17291  +
    /* RustType.kt:534 */
       17292  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       17293  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       17294  +
    /* RustType.kt:534 */
       17295  +
    #[non_exhaustive]
       17296  +
    /* ServerBuilderConstraintViolations.kt:75 */
       17297  +
    #[allow(clippy::enum_variant_names)]
       17298  +
    pub enum ConstraintViolation {
       17299  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampPathHttpDateInput`.
       17300  +
        /* ServerBuilderConstraintViolations.kt:144 */
       17301  +
        MissingTimestamp,
       17302  +
        /* ServerBuilderConstraintViolations.kt:75 */
       17303  +
    }
       17304  +
    /* ServerBuilderConstraintViolations.kt:116 */
       17305  +
    impl ::std::fmt::Display for ConstraintViolation {
       17306  +
        /* ServerBuilderConstraintViolations.kt:117 */
       17307  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       17308  +
            /* ServerBuilderConstraintViolations.kt:118 */
       17309  +
            match self {
       17310  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampPathHttpDateInput`"),
       17311  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       17312  +
            /* ServerBuilderConstraintViolations.kt:117 */
       17313  +
        }
       17314  +
        /* ServerBuilderConstraintViolations.kt:116 */
       17315  +
    }
       17316  +
    /* ServerBuilderConstraintViolations.kt:83 */
       17317  +
    impl ::std::error::Error for ConstraintViolation {}
       17318  +
    /* ServerBuilderConstraintViolations.kt:172 */
       17319  +
    impl ConstraintViolation {
       17320  +
        pub(crate) fn as_validation_exception_field(
       17321  +
            self,
       17322  +
            path: ::std::string::String,
       17323  +
        ) -> crate::model::ValidationExceptionField {
       17324  +
            match self {
       17325  +
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
       17326  +
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
       17327  +
                                                path: path + "/timestamp",
       17328  +
                                            },
       17329  +
        }
       17330  +
        }
       17331  +
    }
       17332  +
    /* ServerBuilderGenerator.kt:234 */
       17333  +
    impl ::std::convert::From<ConstraintViolation>
       17334  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       17335  +
    {
       17336  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       17337  +
            let first_validation_exception_field =
       17338  +
                constraint_violation.as_validation_exception_field("".to_owned());
       17339  +
            let validation_exception = crate::error::ValidationException {
       17340  +
                message: format!(
       17341  +
                    "1 validation error detected. {}",
       17342  +
                    &first_validation_exception_field.message
       17343  +
                ),
       17344  +
                field_list: Some(vec![first_validation_exception_field]),
       17345  +
            };
       17346  +
            Self::ConstraintViolation(
       17347  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       17348  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       17349  +
                            )
       17350  +
        }
       17351  +
    }
       17352  +
    /* ServerBuilderGenerator.kt:244 */
       17353  +
    impl ::std::convert::From<Builder>
       17354  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampPathHttpDateInput>
       17355  +
    {
       17356  +
        fn from(builder: Builder) -> Self {
       17357  +
            Self::Unconstrained(builder)
       17358  +
        }
       17359  +
    }
       17360  +
    /* ServerBuilderGenerator.kt:446 */
       17361  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampPathHttpDateInput {
       17362  +
        type Error = ConstraintViolation;
       17363  +
       17364  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       17365  +
            builder.build()
       17366  +
        }
       17367  +
    }
       17368  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampPathHttpDateInput`](crate::input::MalformedTimestampPathHttpDateInput).
       17369  +
    /* RustType.kt:534 */
       17370  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       17371  +
    /* ServerBuilderGenerator.kt:211 */
       17372  +
    pub struct Builder {
       17373  +
        /* ServerBuilderGenerator.kt:308 */
       17374  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
       17375  +
        /* ServerBuilderGenerator.kt:211 */
       17376  +
    }
       17377  +
    /* ServerBuilderGenerator.kt:215 */
       17378  +
    impl Builder {
16933  17379   
        /* ServerBuilderGenerator.kt:331 */
16934  17380   
        #[allow(missing_docs)] // documentation missing in model
16935  17381   
                               /* ServerBuilderGenerator.kt:343 */
16936         -
        pub fn query_double_list(
16937         -
            mut self,
16938         -
            input: ::std::option::Option<::std::vec::Vec<f64>>,
16939         -
        ) -> Self {
       17382  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
16940  17383   
            /* ServerBuilderGenerator.kt:344 */
16941         -
            self.query_double_list =
       17384  +
            self.timestamp =
       17385  +
                /* ServerBuilderGenerator.kt:345 */Some(
16942  17386   
                    /* ServerBuilderGenerator.kt:376 */input
       17387  +
                /* ServerBuilderGenerator.kt:345 */)
16943  17388   
            /* ServerBuilderGenerator.kt:344 */;
16944  17389   
            self
16945  17390   
            /* ServerBuilderGenerator.kt:343 */
16946  17391   
        }
16947  17392   
        /* ServerBuilderGenerator.kt:426 */
16948  17393   
        #[allow(missing_docs)] // documentation missing in model
16949  17394   
                               /* ServerBuilderGenerator.kt:428 */
16950         -
        pub(crate) fn set_query_double_list(
       17395  +
        pub(crate) fn set_timestamp(
16951  17396   
            mut self,
16952         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<f64>>>,
       17397  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
16953  17398   
        ) -> Self {
16954  17399   
            /* ServerBuilderGenerator.kt:429 */
16955         -
            self.query_double_list = input.map(|v| v.into());
       17400  +
            self.timestamp = Some(input.into());
16956  17401   
            self
16957  17402   
            /* ServerBuilderGenerator.kt:428 */
16958  17403   
        }
16959         -
        /* ServerBuilderGenerator.kt:331 */
16960         -
        #[allow(missing_docs)] // documentation missing in model
16961         -
                               /* ServerBuilderGenerator.kt:343 */
16962         -
        pub fn query_boolean(mut self, input: ::std::option::Option<bool>) -> Self {
16963         -
            /* ServerBuilderGenerator.kt:344 */
16964         -
            self.query_boolean =
16965         -
                /* ServerBuilderGenerator.kt:376 */input
16966         -
            /* ServerBuilderGenerator.kt:344 */;
16967         -
            self
16968         -
            /* ServerBuilderGenerator.kt:343 */
       17404  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampPathHttpDateInput`](crate::input::MalformedTimestampPathHttpDateInput).
       17405  +
        /// /* ServerBuilderGenerator.kt:260 */
       17406  +
        /// The builder fails to construct a [`MalformedTimestampPathHttpDateInput`](crate::input::MalformedTimestampPathHttpDateInput) if a [`ConstraintViolation`] occurs.
       17407  +
        ///
       17408  +
        /* ServerBuilderGenerator.kt:271 */
       17409  +
        pub fn build(
       17410  +
            self,
       17411  +
        ) -> Result<crate::input::MalformedTimestampPathHttpDateInput, ConstraintViolation>
       17412  +
        {
       17413  +
            self.build_enforcing_all_constraints()
16969  17414   
        }
16970         -
        /* ServerBuilderGenerator.kt:426 */
16971         -
        #[allow(missing_docs)] // documentation missing in model
16972         -
                               /* ServerBuilderGenerator.kt:428 */
16973         -
        pub(crate) fn set_query_boolean(
16974         -
            mut self,
16975         -
            input: Option<impl ::std::convert::Into<bool>>,
16976         -
        ) -> Self {
16977         -
            /* ServerBuilderGenerator.kt:429 */
16978         -
            self.query_boolean = input.map(|v| v.into());
16979         -
            self
16980         -
            /* ServerBuilderGenerator.kt:428 */
       17415  +
        /* ServerBuilderGenerator.kt:283 */
       17416  +
        fn build_enforcing_all_constraints(
       17417  +
            self,
       17418  +
        ) -> Result<crate::input::MalformedTimestampPathHttpDateInput, ConstraintViolation>
       17419  +
        {
       17420  +
            /* ServerBuilderGenerator.kt:287 */
       17421  +
            Ok(
       17422  +
                /* ServerBuilderGenerator.kt:542 */
       17423  +
                crate::input::MalformedTimestampPathHttpDateInput {
       17424  +
                    /* ServerBuilderGenerator.kt:546 */
       17425  +
                    timestamp: self
       17426  +
                        .timestamp
       17427  +
                        /* ServerBuilderGenerator.kt:569 */
       17428  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
       17429  +
                    /* ServerBuilderGenerator.kt:542 */
       17430  +
                }, /* ServerBuilderGenerator.kt:287 */
       17431  +
            )
       17432  +
            /* ServerBuilderGenerator.kt:283 */
16981  17433   
        }
16982         -
        /* ServerBuilderGenerator.kt:331 */
16983         -
        #[allow(missing_docs)] // documentation missing in model
16984         -
                               /* ServerBuilderGenerator.kt:343 */
16985         -
        pub fn query_boolean_list(
16986         -
            mut self,
16987         -
            input: ::std::option::Option<::std::vec::Vec<bool>>,
16988         -
        ) -> Self {
16989         -
            /* ServerBuilderGenerator.kt:344 */
16990         -
            self.query_boolean_list =
16991         -
                /* ServerBuilderGenerator.kt:376 */input
16992         -
            /* ServerBuilderGenerator.kt:344 */;
16993         -
            self
16994         -
            /* ServerBuilderGenerator.kt:343 */
       17434  +
        /* ServerBuilderGenerator.kt:215 */
16995  17435   
    }
16996         -
        /* ServerBuilderGenerator.kt:426 */
16997         -
        #[allow(missing_docs)] // documentation missing in model
16998         -
                               /* ServerBuilderGenerator.kt:428 */
16999         -
        pub(crate) fn set_query_boolean_list(
17000         -
            mut self,
17001         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<bool>>>,
17002         -
        ) -> Self {
17003         -
            /* ServerBuilderGenerator.kt:429 */
17004         -
            self.query_boolean_list = input.map(|v| v.into());
17005         -
            self
17006         -
            /* ServerBuilderGenerator.kt:428 */
       17436  +
       17437  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       17438  +
}
       17439  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampPathEpochInput`](crate::input::MalformedTimestampPathEpochInput).
       17440  +
pub mod malformed_timestamp_path_epoch_input {
       17441  +
       17442  +
    /* RustType.kt:534 */
       17443  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       17444  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       17445  +
    /* RustType.kt:534 */
       17446  +
    #[non_exhaustive]
       17447  +
    /* ServerBuilderConstraintViolations.kt:75 */
       17448  +
    #[allow(clippy::enum_variant_names)]
       17449  +
    pub enum ConstraintViolation {
       17450  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampPathEpochInput`.
       17451  +
        /* ServerBuilderConstraintViolations.kt:144 */
       17452  +
        MissingTimestamp,
       17453  +
        /* ServerBuilderConstraintViolations.kt:75 */
17007  17454   
    }
17008         -
        /* ServerBuilderGenerator.kt:331 */
17009         -
        #[allow(missing_docs)] // documentation missing in model
17010         -
                               /* ServerBuilderGenerator.kt:343 */
17011         -
        pub fn query_timestamp(
17012         -
            mut self,
17013         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
17014         -
        ) -> Self {
17015         -
            /* ServerBuilderGenerator.kt:344 */
17016         -
            self.query_timestamp =
17017         -
                /* ServerBuilderGenerator.kt:376 */input
17018         -
            /* ServerBuilderGenerator.kt:344 */;
17019         -
            self
17020         -
            /* ServerBuilderGenerator.kt:343 */
       17455  +
    /* ServerBuilderConstraintViolations.kt:116 */
       17456  +
    impl ::std::fmt::Display for ConstraintViolation {
       17457  +
        /* ServerBuilderConstraintViolations.kt:117 */
       17458  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       17459  +
            /* ServerBuilderConstraintViolations.kt:118 */
       17460  +
            match self {
       17461  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampPathEpochInput`"),
       17462  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       17463  +
            /* ServerBuilderConstraintViolations.kt:117 */
17021  17464   
        }
17022         -
        /* ServerBuilderGenerator.kt:426 */
17023         -
        #[allow(missing_docs)] // documentation missing in model
17024         -
                               /* ServerBuilderGenerator.kt:428 */
17025         -
        pub(crate) fn set_query_timestamp(
17026         -
            mut self,
17027         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
17028         -
        ) -> Self {
17029         -
            /* ServerBuilderGenerator.kt:429 */
17030         -
            self.query_timestamp = input.map(|v| v.into());
17031         -
            self
17032         -
            /* ServerBuilderGenerator.kt:428 */
       17465  +
        /* ServerBuilderConstraintViolations.kt:116 */
17033  17466   
    }
17034         -
        /* ServerBuilderGenerator.kt:331 */
17035         -
        #[allow(missing_docs)] // documentation missing in model
17036         -
                               /* ServerBuilderGenerator.kt:343 */
17037         -
        pub fn query_timestamp_list(
17038         -
            mut self,
17039         -
            input: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
17040         -
        ) -> Self {
17041         -
            /* ServerBuilderGenerator.kt:344 */
17042         -
            self.query_timestamp_list =
17043         -
                /* ServerBuilderGenerator.kt:376 */input
17044         -
            /* ServerBuilderGenerator.kt:344 */;
17045         -
            self
17046         -
            /* ServerBuilderGenerator.kt:343 */
       17467  +
    /* ServerBuilderConstraintViolations.kt:83 */
       17468  +
    impl ::std::error::Error for ConstraintViolation {}
       17469  +
    /* ServerBuilderConstraintViolations.kt:172 */
       17470  +
    impl ConstraintViolation {
       17471  +
        pub(crate) fn as_validation_exception_field(
       17472  +
            self,
       17473  +
            path: ::std::string::String,
       17474  +
        ) -> crate::model::ValidationExceptionField {
       17475  +
            match self {
       17476  +
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
       17477  +
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
       17478  +
                                                path: path + "/timestamp",
       17479  +
                                            },
17047  17480   
        }
17048         -
        /* ServerBuilderGenerator.kt:426 */
17049         -
        #[allow(missing_docs)] // documentation missing in model
17050         -
                               /* ServerBuilderGenerator.kt:428 */
17051         -
        pub(crate) fn set_query_timestamp_list(
17052         -
            mut self,
17053         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::aws_smithy_types::DateTime>>>,
17054         -
        ) -> Self {
17055         -
            /* ServerBuilderGenerator.kt:429 */
17056         -
            self.query_timestamp_list = input.map(|v| v.into());
17057         -
            self
17058         -
            /* ServerBuilderGenerator.kt:428 */
17059  17481   
        }
17060         -
        /* ServerBuilderGenerator.kt:331 */
17061         -
        #[allow(missing_docs)] // documentation missing in model
17062         -
                               /* ServerBuilderGenerator.kt:343 */
17063         -
        pub fn query_enum(mut self, input: ::std::option::Option<crate::model::FooEnum>) -> Self {
17064         -
            /* ServerBuilderGenerator.kt:344 */
17065         -
            self.query_enum =
17066         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
17067         -
            /* ServerBuilderGenerator.kt:344 */;
17068         -
            self
17069         -
            /* ServerBuilderGenerator.kt:343 */
17070  17482   
    }
17071         -
        /* ServerBuilderGenerator.kt:426 */
17072         -
        #[allow(missing_docs)] // documentation missing in model
17073         -
                               /* ServerBuilderGenerator.kt:428 */
17074         -
        pub(crate) fn set_query_enum(
17075         -
            mut self,
17076         -
            input: Option<
17077         -
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
17078         -
            >,
17079         -
        ) -> Self {
17080         -
            /* ServerBuilderGenerator.kt:429 */
17081         -
            self.query_enum = input.map(|v| v.into());
17082         -
            self
17083         -
            /* ServerBuilderGenerator.kt:428 */
       17483  +
    /* ServerBuilderGenerator.kt:234 */
       17484  +
    impl ::std::convert::From<ConstraintViolation>
       17485  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       17486  +
    {
       17487  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       17488  +
            let first_validation_exception_field =
       17489  +
                constraint_violation.as_validation_exception_field("".to_owned());
       17490  +
            let validation_exception = crate::error::ValidationException {
       17491  +
                message: format!(
       17492  +
                    "1 validation error detected. {}",
       17493  +
                    &first_validation_exception_field.message
       17494  +
                ),
       17495  +
                field_list: Some(vec![first_validation_exception_field]),
       17496  +
            };
       17497  +
            Self::ConstraintViolation(
       17498  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       17499  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       17500  +
                            )
       17501  +
        }
17084  17502   
    }
       17503  +
    /* ServerBuilderGenerator.kt:244 */
       17504  +
    impl ::std::convert::From<Builder>
       17505  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampPathEpochInput>
       17506  +
    {
       17507  +
        fn from(builder: Builder) -> Self {
       17508  +
            Self::Unconstrained(builder)
       17509  +
        }
       17510  +
    }
       17511  +
    /* ServerBuilderGenerator.kt:446 */
       17512  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampPathEpochInput {
       17513  +
        type Error = ConstraintViolation;
       17514  +
       17515  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       17516  +
            builder.build()
       17517  +
        }
       17518  +
    }
       17519  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampPathEpochInput`](crate::input::MalformedTimestampPathEpochInput).
       17520  +
    /* RustType.kt:534 */
       17521  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       17522  +
    /* ServerBuilderGenerator.kt:211 */
       17523  +
    pub struct Builder {
       17524  +
        /* ServerBuilderGenerator.kt:308 */
       17525  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
       17526  +
        /* ServerBuilderGenerator.kt:211 */
       17527  +
    }
       17528  +
    /* ServerBuilderGenerator.kt:215 */
       17529  +
    impl Builder {
17085  17530   
        /* ServerBuilderGenerator.kt:331 */
17086  17531   
        #[allow(missing_docs)] // documentation missing in model
17087         -
                               /* ServerBuilderGenerator.kt:343 */
17088         -
        pub fn query_enum_list(
17089         -
            mut self,
17090         -
            input: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
17091         -
        ) -> Self {
       17532  +
                               /* ServerBuilderGenerator.kt:343 */
       17533  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
17092  17534   
            /* ServerBuilderGenerator.kt:344 */
17093         -
            self.query_enum_list =
17094         -
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
17095         -
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
17096         -
                /* ServerBuilderGenerator.kt:363 */)
       17535  +
            self.timestamp =
       17536  +
                /* ServerBuilderGenerator.kt:345 */Some(
       17537  +
                    /* ServerBuilderGenerator.kt:376 */input
       17538  +
                /* ServerBuilderGenerator.kt:345 */)
17097  17539   
            /* ServerBuilderGenerator.kt:344 */;
17098  17540   
            self
17099  17541   
            /* ServerBuilderGenerator.kt:343 */
17100  17542   
        }
17101  17543   
        /* ServerBuilderGenerator.kt:426 */
17102  17544   
        #[allow(missing_docs)] // documentation missing in model
17103  17545   
                               /* ServerBuilderGenerator.kt:428 */
17104         -
        pub(crate) fn set_query_enum_list(
       17546  +
        pub(crate) fn set_timestamp(
17105  17547   
            mut self,
17106         -
            input: Option<
17107         -
                impl ::std::convert::Into<
17108         -
                    crate::constrained::MaybeConstrained<
17109         -
                        crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
17110         -
                    >,
17111         -
                >,
17112         -
            >,
       17548  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
17113  17549   
        ) -> Self {
17114  17550   
            /* ServerBuilderGenerator.kt:429 */
17115         -
            self.query_enum_list = input.map(|v| v.into());
       17551  +
            self.timestamp = Some(input.into());
17116  17552   
            self
17117  17553   
            /* ServerBuilderGenerator.kt:428 */
17118  17554   
        }
       17555  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampPathEpochInput`](crate::input::MalformedTimestampPathEpochInput).
       17556  +
        /// /* ServerBuilderGenerator.kt:260 */
       17557  +
        /// The builder fails to construct a [`MalformedTimestampPathEpochInput`](crate::input::MalformedTimestampPathEpochInput) if a [`ConstraintViolation`] occurs.
       17558  +
        ///
       17559  +
        /* ServerBuilderGenerator.kt:271 */
       17560  +
        pub fn build(
       17561  +
            self,
       17562  +
        ) -> Result<crate::input::MalformedTimestampPathEpochInput, ConstraintViolation> {
       17563  +
            self.build_enforcing_all_constraints()
       17564  +
        }
       17565  +
        /* ServerBuilderGenerator.kt:283 */
       17566  +
        fn build_enforcing_all_constraints(
       17567  +
            self,
       17568  +
        ) -> Result<crate::input::MalformedTimestampPathEpochInput, ConstraintViolation> {
       17569  +
            /* ServerBuilderGenerator.kt:287 */
       17570  +
            Ok(
       17571  +
                /* ServerBuilderGenerator.kt:542 */
       17572  +
                crate::input::MalformedTimestampPathEpochInput {
       17573  +
                    /* ServerBuilderGenerator.kt:546 */
       17574  +
                    timestamp: self
       17575  +
                        .timestamp
       17576  +
                        /* ServerBuilderGenerator.kt:569 */
       17577  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
       17578  +
                    /* ServerBuilderGenerator.kt:542 */
       17579  +
                }, /* ServerBuilderGenerator.kt:287 */
       17580  +
            )
       17581  +
            /* ServerBuilderGenerator.kt:283 */
       17582  +
        }
       17583  +
        /* ServerBuilderGenerator.kt:215 */
       17584  +
    }
       17585  +
       17586  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       17587  +
}
       17588  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampQueryDefaultInput`](crate::input::MalformedTimestampQueryDefaultInput).
       17589  +
pub mod malformed_timestamp_query_default_input {
       17590  +
       17591  +
    /* RustType.kt:534 */
       17592  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       17593  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       17594  +
    /* RustType.kt:534 */
       17595  +
    #[non_exhaustive]
       17596  +
    /* ServerBuilderConstraintViolations.kt:75 */
       17597  +
    #[allow(clippy::enum_variant_names)]
       17598  +
    pub enum ConstraintViolation {
       17599  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampQueryDefaultInput`.
       17600  +
        /* ServerBuilderConstraintViolations.kt:144 */
       17601  +
        MissingTimestamp,
       17602  +
        /* ServerBuilderConstraintViolations.kt:75 */
       17603  +
    }
       17604  +
    /* ServerBuilderConstraintViolations.kt:116 */
       17605  +
    impl ::std::fmt::Display for ConstraintViolation {
       17606  +
        /* ServerBuilderConstraintViolations.kt:117 */
       17607  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       17608  +
            /* ServerBuilderConstraintViolations.kt:118 */
       17609  +
            match self {
       17610  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampQueryDefaultInput`"),
       17611  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       17612  +
            /* ServerBuilderConstraintViolations.kt:117 */
       17613  +
        }
       17614  +
        /* ServerBuilderConstraintViolations.kt:116 */
       17615  +
    }
       17616  +
    /* ServerBuilderConstraintViolations.kt:83 */
       17617  +
    impl ::std::error::Error for ConstraintViolation {}
       17618  +
    /* ServerBuilderConstraintViolations.kt:172 */
       17619  +
    impl ConstraintViolation {
       17620  +
        pub(crate) fn as_validation_exception_field(
       17621  +
            self,
       17622  +
            path: ::std::string::String,
       17623  +
        ) -> crate::model::ValidationExceptionField {
       17624  +
            match self {
       17625  +
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
       17626  +
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
       17627  +
                                                path: path + "/timestamp",
       17628  +
                                            },
       17629  +
        }
       17630  +
        }
       17631  +
    }
       17632  +
    /* ServerBuilderGenerator.kt:234 */
       17633  +
    impl ::std::convert::From<ConstraintViolation>
       17634  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       17635  +
    {
       17636  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       17637  +
            let first_validation_exception_field =
       17638  +
                constraint_violation.as_validation_exception_field("".to_owned());
       17639  +
            let validation_exception = crate::error::ValidationException {
       17640  +
                message: format!(
       17641  +
                    "1 validation error detected. {}",
       17642  +
                    &first_validation_exception_field.message
       17643  +
                ),
       17644  +
                field_list: Some(vec![first_validation_exception_field]),
       17645  +
            };
       17646  +
            Self::ConstraintViolation(
       17647  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       17648  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       17649  +
                            )
       17650  +
        }
       17651  +
    }
       17652  +
    /* ServerBuilderGenerator.kt:244 */
       17653  +
    impl ::std::convert::From<Builder>
       17654  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampQueryDefaultInput>
       17655  +
    {
       17656  +
        fn from(builder: Builder) -> Self {
       17657  +
            Self::Unconstrained(builder)
       17658  +
        }
       17659  +
    }
       17660  +
    /* ServerBuilderGenerator.kt:446 */
       17661  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampQueryDefaultInput {
       17662  +
        type Error = ConstraintViolation;
       17663  +
       17664  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       17665  +
            builder.build()
       17666  +
        }
       17667  +
    }
       17668  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampQueryDefaultInput`](crate::input::MalformedTimestampQueryDefaultInput).
       17669  +
    /* RustType.kt:534 */
       17670  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       17671  +
    /* ServerBuilderGenerator.kt:211 */
       17672  +
    pub struct Builder {
       17673  +
        /* ServerBuilderGenerator.kt:308 */
       17674  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
       17675  +
        /* ServerBuilderGenerator.kt:211 */
       17676  +
    }
       17677  +
    /* ServerBuilderGenerator.kt:215 */
       17678  +
    impl Builder {
17119  17679   
        /* ServerBuilderGenerator.kt:331 */
17120  17680   
        #[allow(missing_docs)] // documentation missing in model
17121  17681   
                               /* ServerBuilderGenerator.kt:343 */
17122         -
        pub fn query_integer_enum(mut self, input: ::std::option::Option<i32>) -> Self {
       17682  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
17123  17683   
            /* ServerBuilderGenerator.kt:344 */
17124         -
            self.query_integer_enum =
       17684  +
            self.timestamp =
       17685  +
                /* ServerBuilderGenerator.kt:345 */Some(
17125  17686   
                    /* ServerBuilderGenerator.kt:376 */input
       17687  +
                /* ServerBuilderGenerator.kt:345 */)
17126  17688   
            /* ServerBuilderGenerator.kt:344 */;
17127  17689   
            self
17128  17690   
            /* ServerBuilderGenerator.kt:343 */
17129  17691   
        }
17130  17692   
        /* ServerBuilderGenerator.kt:426 */
17131  17693   
        #[allow(missing_docs)] // documentation missing in model
17132  17694   
                               /* ServerBuilderGenerator.kt:428 */
17133         -
        pub(crate) fn set_query_integer_enum(
       17695  +
        pub(crate) fn set_timestamp(
17134  17696   
            mut self,
17135         -
            input: Option<impl ::std::convert::Into<i32>>,
       17697  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
17136  17698   
        ) -> Self {
17137  17699   
            /* ServerBuilderGenerator.kt:429 */
17138         -
            self.query_integer_enum = input.map(|v| v.into());
       17700  +
            self.timestamp = Some(input.into());
17139  17701   
            self
17140  17702   
            /* ServerBuilderGenerator.kt:428 */
17141  17703   
        }
17142         -
        /* ServerBuilderGenerator.kt:331 */
17143         -
        #[allow(missing_docs)] // documentation missing in model
17144         -
                               /* ServerBuilderGenerator.kt:343 */
17145         -
        pub fn query_integer_enum_list(
17146         -
            mut self,
17147         -
            input: ::std::option::Option<::std::vec::Vec<i32>>,
17148         -
        ) -> Self {
17149         -
            /* ServerBuilderGenerator.kt:344 */
17150         -
            self.query_integer_enum_list =
17151         -
                /* ServerBuilderGenerator.kt:376 */input
17152         -
            /* ServerBuilderGenerator.kt:344 */;
17153         -
            self
17154         -
            /* ServerBuilderGenerator.kt:343 */
       17704  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampQueryDefaultInput`](crate::input::MalformedTimestampQueryDefaultInput).
       17705  +
        /// /* ServerBuilderGenerator.kt:260 */
       17706  +
        /// The builder fails to construct a [`MalformedTimestampQueryDefaultInput`](crate::input::MalformedTimestampQueryDefaultInput) if a [`ConstraintViolation`] occurs.
       17707  +
        ///
       17708  +
        /* ServerBuilderGenerator.kt:271 */
       17709  +
        pub fn build(
       17710  +
            self,
       17711  +
        ) -> Result<crate::input::MalformedTimestampQueryDefaultInput, ConstraintViolation>
       17712  +
        {
       17713  +
            self.build_enforcing_all_constraints()
       17714  +
        }
       17715  +
        /* ServerBuilderGenerator.kt:283 */
       17716  +
        fn build_enforcing_all_constraints(
       17717  +
            self,
       17718  +
        ) -> Result<crate::input::MalformedTimestampQueryDefaultInput, ConstraintViolation>
       17719  +
        {
       17720  +
            /* ServerBuilderGenerator.kt:287 */
       17721  +
            Ok(
       17722  +
                /* ServerBuilderGenerator.kt:542 */
       17723  +
                crate::input::MalformedTimestampQueryDefaultInput {
       17724  +
                    /* ServerBuilderGenerator.kt:546 */
       17725  +
                    timestamp: self
       17726  +
                        .timestamp
       17727  +
                        /* ServerBuilderGenerator.kt:569 */
       17728  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
       17729  +
                    /* ServerBuilderGenerator.kt:542 */
       17730  +
                }, /* ServerBuilderGenerator.kt:287 */
       17731  +
            )
       17732  +
            /* ServerBuilderGenerator.kt:283 */
       17733  +
        }
       17734  +
        /* ServerBuilderGenerator.kt:215 */
       17735  +
    }
       17736  +
       17737  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       17738  +
}
       17739  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampQueryHttpDateInput`](crate::input::MalformedTimestampQueryHttpDateInput).
       17740  +
pub mod malformed_timestamp_query_http_date_input {
       17741  +
       17742  +
    /* RustType.kt:534 */
       17743  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       17744  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       17745  +
    /* RustType.kt:534 */
       17746  +
    #[non_exhaustive]
       17747  +
    /* ServerBuilderConstraintViolations.kt:75 */
       17748  +
    #[allow(clippy::enum_variant_names)]
       17749  +
    pub enum ConstraintViolation {
       17750  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampQueryHttpDateInput`.
       17751  +
        /* ServerBuilderConstraintViolations.kt:144 */
       17752  +
        MissingTimestamp,
       17753  +
        /* ServerBuilderConstraintViolations.kt:75 */
       17754  +
    }
       17755  +
    /* ServerBuilderConstraintViolations.kt:116 */
       17756  +
    impl ::std::fmt::Display for ConstraintViolation {
       17757  +
        /* ServerBuilderConstraintViolations.kt:117 */
       17758  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       17759  +
            /* ServerBuilderConstraintViolations.kt:118 */
       17760  +
            match self {
       17761  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampQueryHttpDateInput`"),
       17762  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       17763  +
            /* ServerBuilderConstraintViolations.kt:117 */
       17764  +
        }
       17765  +
        /* ServerBuilderConstraintViolations.kt:116 */
       17766  +
    }
       17767  +
    /* ServerBuilderConstraintViolations.kt:83 */
       17768  +
    impl ::std::error::Error for ConstraintViolation {}
       17769  +
    /* ServerBuilderConstraintViolations.kt:172 */
       17770  +
    impl ConstraintViolation {
       17771  +
        pub(crate) fn as_validation_exception_field(
       17772  +
            self,
       17773  +
            path: ::std::string::String,
       17774  +
        ) -> crate::model::ValidationExceptionField {
       17775  +
            match self {
       17776  +
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
       17777  +
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
       17778  +
                                                path: path + "/timestamp",
       17779  +
                                            },
       17780  +
        }
       17781  +
        }
       17782  +
    }
       17783  +
    /* ServerBuilderGenerator.kt:234 */
       17784  +
    impl ::std::convert::From<ConstraintViolation>
       17785  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       17786  +
    {
       17787  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       17788  +
            let first_validation_exception_field =
       17789  +
                constraint_violation.as_validation_exception_field("".to_owned());
       17790  +
            let validation_exception = crate::error::ValidationException {
       17791  +
                message: format!(
       17792  +
                    "1 validation error detected. {}",
       17793  +
                    &first_validation_exception_field.message
       17794  +
                ),
       17795  +
                field_list: Some(vec![first_validation_exception_field]),
       17796  +
            };
       17797  +
            Self::ConstraintViolation(
       17798  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       17799  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       17800  +
                            )
       17801  +
        }
17155  17802   
    }
17156         -
        /* ServerBuilderGenerator.kt:426 */
17157         -
        #[allow(missing_docs)] // documentation missing in model
17158         -
                               /* ServerBuilderGenerator.kt:428 */
17159         -
        pub(crate) fn set_query_integer_enum_list(
17160         -
            mut self,
17161         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
17162         -
        ) -> Self {
17163         -
            /* ServerBuilderGenerator.kt:429 */
17164         -
            self.query_integer_enum_list = input.map(|v| v.into());
17165         -
            self
17166         -
            /* ServerBuilderGenerator.kt:428 */
       17803  +
    /* ServerBuilderGenerator.kt:244 */
       17804  +
    impl ::std::convert::From<Builder>
       17805  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampQueryHttpDateInput>
       17806  +
    {
       17807  +
        fn from(builder: Builder) -> Self {
       17808  +
            Self::Unconstrained(builder)
       17809  +
        }
       17810  +
    }
       17811  +
    /* ServerBuilderGenerator.kt:446 */
       17812  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampQueryHttpDateInput {
       17813  +
        type Error = ConstraintViolation;
       17814  +
       17815  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       17816  +
            builder.build()
       17817  +
        }
       17818  +
    }
       17819  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampQueryHttpDateInput`](crate::input::MalformedTimestampQueryHttpDateInput).
       17820  +
    /* RustType.kt:534 */
       17821  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       17822  +
    /* ServerBuilderGenerator.kt:211 */
       17823  +
    pub struct Builder {
       17824  +
        /* ServerBuilderGenerator.kt:308 */
       17825  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
       17826  +
        /* ServerBuilderGenerator.kt:211 */
17167  17827   
    }
       17828  +
    /* ServerBuilderGenerator.kt:215 */
       17829  +
    impl Builder {
17168  17830   
        /* ServerBuilderGenerator.kt:331 */
17169  17831   
        #[allow(missing_docs)] // documentation missing in model
17170  17832   
                               /* ServerBuilderGenerator.kt:343 */
17171         -
        pub fn query_params_map_of_string_list(
17172         -
            mut self,
17173         -
            input: ::std::option::Option<
17174         -
                ::std::collections::HashMap<
17175         -
                    ::std::string::String,
17176         -
                    ::std::vec::Vec<::std::string::String>,
17177         -
                >,
17178         -
            >,
17179         -
        ) -> Self {
       17833  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
17180  17834   
            /* ServerBuilderGenerator.kt:344 */
17181         -
            self.query_params_map_of_string_list =
       17835  +
            self.timestamp =
       17836  +
                /* ServerBuilderGenerator.kt:345 */Some(
17182  17837   
                    /* ServerBuilderGenerator.kt:376 */input
       17838  +
                /* ServerBuilderGenerator.kt:345 */)
17183  17839   
            /* ServerBuilderGenerator.kt:344 */;
17184  17840   
            self
17185  17841   
            /* ServerBuilderGenerator.kt:343 */
17186  17842   
        }
17187  17843   
        /* ServerBuilderGenerator.kt:426 */
17188  17844   
        #[allow(missing_docs)] // documentation missing in model
17189  17845   
                               /* ServerBuilderGenerator.kt:428 */
17190         -
        pub(crate) fn set_query_params_map_of_string_list(
       17846  +
        pub(crate) fn set_timestamp(
17191  17847   
            mut self,
17192         -
            input: Option<
17193         -
                impl ::std::convert::Into<
17194         -
                    ::std::collections::HashMap<
17195         -
                        ::std::string::String,
17196         -
                        ::std::vec::Vec<::std::string::String>,
17197         -
                    >,
17198         -
                >,
17199         -
            >,
       17848  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
17200  17849   
        ) -> Self {
17201  17850   
            /* ServerBuilderGenerator.kt:429 */
17202         -
            self.query_params_map_of_string_list = input.map(|v| v.into());
       17851  +
            self.timestamp = Some(input.into());
17203  17852   
            self
17204  17853   
            /* ServerBuilderGenerator.kt:428 */
17205  17854   
        }
17206         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`AllQueryStringTypesInput`](crate::input::AllQueryStringTypesInput).
       17855  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampQueryHttpDateInput`](crate::input::MalformedTimestampQueryHttpDateInput).
17207  17856   
        /// /* ServerBuilderGenerator.kt:260 */
17208         -
        /// The builder fails to construct a [`AllQueryStringTypesInput`](crate::input::AllQueryStringTypesInput) if a [`ConstraintViolation`] occurs.
       17857  +
        /// The builder fails to construct a [`MalformedTimestampQueryHttpDateInput`](crate::input::MalformedTimestampQueryHttpDateInput) if a [`ConstraintViolation`] occurs.
17209  17858   
        ///
17210         -
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
17211  17859   
        /* ServerBuilderGenerator.kt:271 */
17212         -
        pub fn build(self) -> Result<crate::input::AllQueryStringTypesInput, ConstraintViolation> {
       17860  +
        pub fn build(
       17861  +
            self,
       17862  +
        ) -> Result<crate::input::MalformedTimestampQueryHttpDateInput, ConstraintViolation>
       17863  +
        {
17213  17864   
            self.build_enforcing_all_constraints()
17214  17865   
        }
17215  17866   
        /* ServerBuilderGenerator.kt:283 */
17216  17867   
        fn build_enforcing_all_constraints(
17217  17868   
            self,
17218         -
        ) -> Result<crate::input::AllQueryStringTypesInput, ConstraintViolation> {
       17869  +
        ) -> Result<crate::input::MalformedTimestampQueryHttpDateInput, ConstraintViolation>
       17870  +
        {
17219  17871   
            /* ServerBuilderGenerator.kt:287 */
17220  17872   
            Ok(
17221  17873   
                /* ServerBuilderGenerator.kt:542 */
17222         -
                crate::input::AllQueryStringTypesInput {
17223         -
                    /* ServerBuilderGenerator.kt:546 */
17224         -
                    query_string: self.query_string,
17225         -
                    /* ServerBuilderGenerator.kt:546 */
17226         -
                    query_string_list: self.query_string_list,
17227         -
                    /* ServerBuilderGenerator.kt:546 */
17228         -
                    query_string_set: self
17229         -
                        .query_string_set
17230         -
                        /* ServerBuilderGenerator.kt:602 */
17231         -
                        .map(|v| match v {
17232         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
17233         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
17234         -
                        })
17235         -
                        /* ServerBuilderGenerator.kt:614 */
17236         -
                        .map(|res| res.map_err(ConstraintViolation::QueryStringSet))
17237         -
                        .transpose()?,
17238         -
                    /* ServerBuilderGenerator.kt:546 */
17239         -
                    query_byte: self.query_byte,
17240         -
                    /* ServerBuilderGenerator.kt:546 */
17241         -
                    query_short: self.query_short,
17242         -
                    /* ServerBuilderGenerator.kt:546 */
17243         -
                    query_integer: self.query_integer,
17244         -
                    /* ServerBuilderGenerator.kt:546 */
17245         -
                    query_integer_list: self.query_integer_list,
17246         -
                    /* ServerBuilderGenerator.kt:546 */
17247         -
                    query_integer_set: self
17248         -
                        .query_integer_set
17249         -
                        /* ServerBuilderGenerator.kt:602 */
17250         -
                        .map(|v| match v {
17251         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
17252         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
17253         -
                        })
17254         -
                        /* ServerBuilderGenerator.kt:614 */
17255         -
                        .map(|res| res.map_err(ConstraintViolation::QueryIntegerSet))
17256         -
                        .transpose()?,
17257         -
                    /* ServerBuilderGenerator.kt:546 */
17258         -
                    query_long: self.query_long,
17259         -
                    /* ServerBuilderGenerator.kt:546 */
17260         -
                    query_float: self.query_float,
17261         -
                    /* ServerBuilderGenerator.kt:546 */
17262         -
                    query_double: self.query_double,
17263         -
                    /* ServerBuilderGenerator.kt:546 */
17264         -
                    query_double_list: self.query_double_list,
17265         -
                    /* ServerBuilderGenerator.kt:546 */
17266         -
                    query_boolean: self.query_boolean,
17267         -
                    /* ServerBuilderGenerator.kt:546 */
17268         -
                    query_boolean_list: self.query_boolean_list,
17269         -
                    /* ServerBuilderGenerator.kt:546 */
17270         -
                    query_timestamp: self.query_timestamp,
17271         -
                    /* ServerBuilderGenerator.kt:546 */
17272         -
                    query_timestamp_list: self.query_timestamp_list,
17273         -
                    /* ServerBuilderGenerator.kt:546 */
17274         -
                    query_enum: self
17275         -
                        .query_enum
17276         -
                        /* ServerBuilderGenerator.kt:602 */
17277         -
                        .map(|v| match v {
17278         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
17279         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
17280         -
                        })
17281         -
                        /* ServerBuilderGenerator.kt:614 */
17282         -
                        .map(|res| res.map_err(ConstraintViolation::QueryEnum))
17283         -
                        .transpose()?,
17284         -
                    /* ServerBuilderGenerator.kt:546 */
17285         -
                    query_enum_list: self
17286         -
                        .query_enum_list
17287         -
                        /* ServerBuilderGenerator.kt:602 */
17288         -
                        .map(|v| match v {
17289         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
17290         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
17291         -
                        })
17292         -
                        /* ServerBuilderGenerator.kt:614 */
17293         -
                        .map(|res| {
17294         -
                            res.map(|v| v.into())
17295         -
                                .map_err(ConstraintViolation::QueryEnumList)
17296         -
                        })
17297         -
                        .transpose()?,
17298         -
                    /* ServerBuilderGenerator.kt:546 */
17299         -
                    query_integer_enum: self.query_integer_enum,
       17874  +
                crate::input::MalformedTimestampQueryHttpDateInput {
17300  17875   
                    /* ServerBuilderGenerator.kt:546 */
17301         -
                    query_integer_enum_list: self.query_integer_enum_list,
       17876  +
                    timestamp: self
       17877  +
                        .timestamp
       17878  +
                        /* ServerBuilderGenerator.kt:569 */
       17879  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
       17880  +
                    /* ServerBuilderGenerator.kt:542 */
       17881  +
                }, /* ServerBuilderGenerator.kt:287 */
       17882  +
            )
       17883  +
            /* ServerBuilderGenerator.kt:283 */
       17884  +
        }
       17885  +
        /* ServerBuilderGenerator.kt:215 */
       17886  +
    }
       17887  +
       17888  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       17889  +
}
       17890  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampQueryEpochInput`](crate::input::MalformedTimestampQueryEpochInput).
       17891  +
pub mod malformed_timestamp_query_epoch_input {
       17892  +
       17893  +
    /* RustType.kt:534 */
       17894  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       17895  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       17896  +
    /* RustType.kt:534 */
       17897  +
    #[non_exhaustive]
       17898  +
    /* ServerBuilderConstraintViolations.kt:75 */
       17899  +
    #[allow(clippy::enum_variant_names)]
       17900  +
    pub enum ConstraintViolation {
       17901  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampQueryEpochInput`.
       17902  +
        /* ServerBuilderConstraintViolations.kt:144 */
       17903  +
        MissingTimestamp,
       17904  +
        /* ServerBuilderConstraintViolations.kt:75 */
       17905  +
    }
       17906  +
    /* ServerBuilderConstraintViolations.kt:116 */
       17907  +
    impl ::std::fmt::Display for ConstraintViolation {
       17908  +
        /* ServerBuilderConstraintViolations.kt:117 */
       17909  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       17910  +
            /* ServerBuilderConstraintViolations.kt:118 */
       17911  +
            match self {
       17912  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampQueryEpochInput`"),
       17913  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       17914  +
            /* ServerBuilderConstraintViolations.kt:117 */
       17915  +
        }
       17916  +
        /* ServerBuilderConstraintViolations.kt:116 */
       17917  +
    }
       17918  +
    /* ServerBuilderConstraintViolations.kt:83 */
       17919  +
    impl ::std::error::Error for ConstraintViolation {}
       17920  +
    /* ServerBuilderConstraintViolations.kt:172 */
       17921  +
    impl ConstraintViolation {
       17922  +
        pub(crate) fn as_validation_exception_field(
       17923  +
            self,
       17924  +
            path: ::std::string::String,
       17925  +
        ) -> crate::model::ValidationExceptionField {
       17926  +
            match self {
       17927  +
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
       17928  +
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
       17929  +
                                                path: path + "/timestamp",
       17930  +
                                            },
       17931  +
        }
       17932  +
        }
       17933  +
    }
       17934  +
    /* ServerBuilderGenerator.kt:234 */
       17935  +
    impl ::std::convert::From<ConstraintViolation>
       17936  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       17937  +
    {
       17938  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       17939  +
            let first_validation_exception_field =
       17940  +
                constraint_violation.as_validation_exception_field("".to_owned());
       17941  +
            let validation_exception = crate::error::ValidationException {
       17942  +
                message: format!(
       17943  +
                    "1 validation error detected. {}",
       17944  +
                    &first_validation_exception_field.message
       17945  +
                ),
       17946  +
                field_list: Some(vec![first_validation_exception_field]),
       17947  +
            };
       17948  +
            Self::ConstraintViolation(
       17949  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       17950  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       17951  +
                            )
       17952  +
        }
       17953  +
    }
       17954  +
    /* ServerBuilderGenerator.kt:244 */
       17955  +
    impl ::std::convert::From<Builder>
       17956  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampQueryEpochInput>
       17957  +
    {
       17958  +
        fn from(builder: Builder) -> Self {
       17959  +
            Self::Unconstrained(builder)
       17960  +
        }
       17961  +
    }
       17962  +
    /* ServerBuilderGenerator.kt:446 */
       17963  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampQueryEpochInput {
       17964  +
        type Error = ConstraintViolation;
       17965  +
       17966  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       17967  +
            builder.build()
       17968  +
        }
       17969  +
    }
       17970  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampQueryEpochInput`](crate::input::MalformedTimestampQueryEpochInput).
       17971  +
    /* RustType.kt:534 */
       17972  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       17973  +
    /* ServerBuilderGenerator.kt:211 */
       17974  +
    pub struct Builder {
       17975  +
        /* ServerBuilderGenerator.kt:308 */
       17976  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
       17977  +
        /* ServerBuilderGenerator.kt:211 */
       17978  +
    }
       17979  +
    /* ServerBuilderGenerator.kt:215 */
       17980  +
    impl Builder {
       17981  +
        /* ServerBuilderGenerator.kt:331 */
       17982  +
        #[allow(missing_docs)] // documentation missing in model
       17983  +
                               /* ServerBuilderGenerator.kt:343 */
       17984  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
       17985  +
            /* ServerBuilderGenerator.kt:344 */
       17986  +
            self.timestamp =
       17987  +
                /* ServerBuilderGenerator.kt:345 */Some(
       17988  +
                    /* ServerBuilderGenerator.kt:376 */input
       17989  +
                /* ServerBuilderGenerator.kt:345 */)
       17990  +
            /* ServerBuilderGenerator.kt:344 */;
       17991  +
            self
       17992  +
            /* ServerBuilderGenerator.kt:343 */
       17993  +
        }
       17994  +
        /* ServerBuilderGenerator.kt:426 */
       17995  +
        #[allow(missing_docs)] // documentation missing in model
       17996  +
                               /* ServerBuilderGenerator.kt:428 */
       17997  +
        pub(crate) fn set_timestamp(
       17998  +
            mut self,
       17999  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
       18000  +
        ) -> Self {
       18001  +
            /* ServerBuilderGenerator.kt:429 */
       18002  +
            self.timestamp = Some(input.into());
       18003  +
            self
       18004  +
            /* ServerBuilderGenerator.kt:428 */
       18005  +
        }
       18006  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampQueryEpochInput`](crate::input::MalformedTimestampQueryEpochInput).
       18007  +
        /// /* ServerBuilderGenerator.kt:260 */
       18008  +
        /// The builder fails to construct a [`MalformedTimestampQueryEpochInput`](crate::input::MalformedTimestampQueryEpochInput) if a [`ConstraintViolation`] occurs.
       18009  +
        ///
       18010  +
        /* ServerBuilderGenerator.kt:271 */
       18011  +
        pub fn build(
       18012  +
            self,
       18013  +
        ) -> Result<crate::input::MalformedTimestampQueryEpochInput, ConstraintViolation> {
       18014  +
            self.build_enforcing_all_constraints()
       18015  +
        }
       18016  +
        /* ServerBuilderGenerator.kt:283 */
       18017  +
        fn build_enforcing_all_constraints(
       18018  +
            self,
       18019  +
        ) -> Result<crate::input::MalformedTimestampQueryEpochInput, ConstraintViolation> {
       18020  +
            /* ServerBuilderGenerator.kt:287 */
       18021  +
            Ok(
       18022  +
                /* ServerBuilderGenerator.kt:542 */
       18023  +
                crate::input::MalformedTimestampQueryEpochInput {
17302  18024   
                    /* ServerBuilderGenerator.kt:546 */
17303         -
                    query_params_map_of_string_list: self.query_params_map_of_string_list,
       18025  +
                    timestamp: self
       18026  +
                        .timestamp
       18027  +
                        /* ServerBuilderGenerator.kt:569 */
       18028  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
17304  18029   
                    /* ServerBuilderGenerator.kt:542 */
17305  18030   
                }, /* ServerBuilderGenerator.kt:287 */
17306  18031   
            )
17307  18032   
            /* ServerBuilderGenerator.kt:283 */
17308  18033   
        }
17309  18034   
        /* ServerBuilderGenerator.kt:215 */
17310  18035   
    }
17311  18036   
17312  18037   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
17313  18038   
}
17314         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpRequestWithRegexLiteralInput`](crate::input::HttpRequestWithRegexLiteralInput).
17315         -
pub mod http_request_with_regex_literal_input {
       18039  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampHeaderDefaultInput`](crate::input::MalformedTimestampHeaderDefaultInput).
       18040  +
pub mod malformed_timestamp_header_default_input {
17316  18041   
17317  18042   
    /* RustType.kt:534 */
17318  18043   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
17319  18044   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
17320  18045   
    /* RustType.kt:534 */
17321  18046   
    #[non_exhaustive]
17322  18047   
    /* ServerBuilderConstraintViolations.kt:75 */
17323  18048   
    #[allow(clippy::enum_variant_names)]
17324  18049   
    pub enum ConstraintViolation {
17325         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`str` was not provided but it is required when building `HttpRequestWithRegexLiteralInput`.
       18050  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampHeaderDefaultInput`.
17326  18051   
        /* ServerBuilderConstraintViolations.kt:144 */
17327         -
        MissingStr,
       18052  +
        MissingTimestamp,
17328  18053   
        /* ServerBuilderConstraintViolations.kt:75 */
17329  18054   
    }
17330  18055   
    /* ServerBuilderConstraintViolations.kt:116 */
17331  18056   
    impl ::std::fmt::Display for ConstraintViolation {
17332  18057   
        /* ServerBuilderConstraintViolations.kt:117 */
17333  18058   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
17334  18059   
            /* ServerBuilderConstraintViolations.kt:118 */
17335  18060   
            match self {
17336         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingStr => write!(f, "`str` was not provided but it is required when building `HttpRequestWithRegexLiteralInput`"),
       18061  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampHeaderDefaultInput`"),
17337  18062   
            /* ServerBuilderConstraintViolations.kt:118 */}
17338  18063   
            /* ServerBuilderConstraintViolations.kt:117 */
17339  18064   
        }
17340  18065   
        /* ServerBuilderConstraintViolations.kt:116 */
17341  18066   
    }
17342  18067   
    /* ServerBuilderConstraintViolations.kt:83 */
17343  18068   
    impl ::std::error::Error for ConstraintViolation {}
17344  18069   
    /* ServerBuilderConstraintViolations.kt:172 */
17345  18070   
    impl ConstraintViolation {
17346  18071   
        pub(crate) fn as_validation_exception_field(
17347  18072   
            self,
17348  18073   
            path: ::std::string::String,
17349  18074   
        ) -> crate::model::ValidationExceptionField {
17350  18075   
            match self {
17351         -
                ConstraintViolation::MissingStr => crate::model::ValidationExceptionField {
17352         -
                    message: format!(
17353         -
                        "Value at '{}/str' failed to satisfy constraint: Member must not be null",
17354         -
                        path
17355         -
                    ),
17356         -
                    path: path + "/str",
       18076  +
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
       18077  +
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
       18078  +
                                                path: path + "/timestamp",
17357  18079   
                                            },
17358  18080   
        }
17359  18081   
        }
17360  18082   
    }
17361  18083   
    /* ServerBuilderGenerator.kt:234 */
17362  18084   
    impl ::std::convert::From<ConstraintViolation>
17363  18085   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
17364  18086   
    {
17365  18087   
        fn from(constraint_violation: ConstraintViolation) -> Self {
17366  18088   
            let first_validation_exception_field =
17367  18089   
                constraint_violation.as_validation_exception_field("".to_owned());
17368  18090   
            let validation_exception = crate::error::ValidationException {
17369  18091   
                message: format!(
17370  18092   
                    "1 validation error detected. {}",
17371  18093   
                    &first_validation_exception_field.message
17372  18094   
                ),
17373  18095   
                field_list: Some(vec![first_validation_exception_field]),
17374  18096   
            };
17375  18097   
            Self::ConstraintViolation(
17376  18098   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
17377  18099   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
17378  18100   
                            )
17379  18101   
        }
17380  18102   
    }
17381  18103   
    /* ServerBuilderGenerator.kt:244 */
17382  18104   
    impl ::std::convert::From<Builder>
17383         -
        for crate::constrained::MaybeConstrained<crate::input::HttpRequestWithRegexLiteralInput>
       18105  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampHeaderDefaultInput>
17384  18106   
    {
17385  18107   
        fn from(builder: Builder) -> Self {
17386  18108   
            Self::Unconstrained(builder)
17387  18109   
        }
17388  18110   
    }
17389  18111   
    /* ServerBuilderGenerator.kt:446 */
17390         -
    impl ::std::convert::TryFrom<Builder> for crate::input::HttpRequestWithRegexLiteralInput {
       18112  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampHeaderDefaultInput {
17391  18113   
        type Error = ConstraintViolation;
17392  18114   
17393  18115   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
17394  18116   
            builder.build()
17395  18117   
        }
17396  18118   
    }
17397         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpRequestWithRegexLiteralInput`](crate::input::HttpRequestWithRegexLiteralInput).
       18119  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampHeaderDefaultInput`](crate::input::MalformedTimestampHeaderDefaultInput).
17398  18120   
    /* RustType.kt:534 */
17399  18121   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
17400  18122   
    /* ServerBuilderGenerator.kt:211 */
17401  18123   
    pub struct Builder {
17402  18124   
        /* ServerBuilderGenerator.kt:308 */
17403         -
        pub(crate) str: ::std::option::Option<::std::string::String>,
       18125  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
17404  18126   
        /* ServerBuilderGenerator.kt:211 */
17405  18127   
    }
17406  18128   
    /* ServerBuilderGenerator.kt:215 */
17407  18129   
    impl Builder {
17408  18130   
        /* ServerBuilderGenerator.kt:331 */
17409  18131   
        #[allow(missing_docs)] // documentation missing in model
17410  18132   
                               /* ServerBuilderGenerator.kt:343 */
17411         -
        pub fn str(mut self, input: ::std::string::String) -> Self {
       18133  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
17412  18134   
            /* ServerBuilderGenerator.kt:344 */
17413         -
            self.str =
       18135  +
            self.timestamp =
17414  18136   
                /* ServerBuilderGenerator.kt:345 */Some(
17415  18137   
                    /* ServerBuilderGenerator.kt:376 */input
17416  18138   
                /* ServerBuilderGenerator.kt:345 */)
17417  18139   
            /* ServerBuilderGenerator.kt:344 */;
17418  18140   
            self
17419  18141   
            /* ServerBuilderGenerator.kt:343 */
17420  18142   
        }
17421  18143   
        /* ServerBuilderGenerator.kt:426 */
17422  18144   
        #[allow(missing_docs)] // documentation missing in model
17423  18145   
                               /* ServerBuilderGenerator.kt:428 */
17424         -
        pub(crate) fn set_str(
       18146  +
        pub(crate) fn set_timestamp(
17425  18147   
            mut self,
17426         -
            input: impl ::std::convert::Into<::std::string::String>,
       18148  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
17427  18149   
        ) -> Self {
17428  18150   
            /* ServerBuilderGenerator.kt:429 */
17429         -
            self.str = Some(input.into());
       18151  +
            self.timestamp = Some(input.into());
17430  18152   
            self
17431  18153   
            /* ServerBuilderGenerator.kt:428 */
17432  18154   
        }
17433         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpRequestWithRegexLiteralInput`](crate::input::HttpRequestWithRegexLiteralInput).
       18155  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampHeaderDefaultInput`](crate::input::MalformedTimestampHeaderDefaultInput).
17434  18156   
        /// /* ServerBuilderGenerator.kt:260 */
17435         -
        /// The builder fails to construct a [`HttpRequestWithRegexLiteralInput`](crate::input::HttpRequestWithRegexLiteralInput) if a [`ConstraintViolation`] occurs.
       18157  +
        /// The builder fails to construct a [`MalformedTimestampHeaderDefaultInput`](crate::input::MalformedTimestampHeaderDefaultInput) if a [`ConstraintViolation`] occurs.
17436  18158   
        ///
17437  18159   
        /* ServerBuilderGenerator.kt:271 */
17438  18160   
        pub fn build(
17439  18161   
            self,
17440         -
        ) -> Result<crate::input::HttpRequestWithRegexLiteralInput, ConstraintViolation> {
       18162  +
        ) -> Result<crate::input::MalformedTimestampHeaderDefaultInput, ConstraintViolation>
       18163  +
        {
17441  18164   
            self.build_enforcing_all_constraints()
17442  18165   
        }
17443  18166   
        /* ServerBuilderGenerator.kt:283 */
17444  18167   
        fn build_enforcing_all_constraints(
17445  18168   
            self,
17446         -
        ) -> Result<crate::input::HttpRequestWithRegexLiteralInput, ConstraintViolation> {
       18169  +
        ) -> Result<crate::input::MalformedTimestampHeaderDefaultInput, ConstraintViolation>
       18170  +
        {
17447  18171   
            /* ServerBuilderGenerator.kt:287 */
17448  18172   
            Ok(
17449  18173   
                /* ServerBuilderGenerator.kt:542 */
17450         -
                crate::input::HttpRequestWithRegexLiteralInput {
       18174  +
                crate::input::MalformedTimestampHeaderDefaultInput {
17451  18175   
                    /* ServerBuilderGenerator.kt:546 */
17452         -
                    str: self
17453         -
                        .str
       18176  +
                    timestamp: self
       18177  +
                        .timestamp
17454  18178   
                        /* ServerBuilderGenerator.kt:569 */
17455         -
                        .ok_or(ConstraintViolation::MissingStr)?,
       18179  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
17456  18180   
                    /* ServerBuilderGenerator.kt:542 */
17457  18181   
                }, /* ServerBuilderGenerator.kt:287 */
17458  18182   
            )
17459  18183   
            /* ServerBuilderGenerator.kt:283 */
17460  18184   
        }
17461  18185   
        /* ServerBuilderGenerator.kt:215 */
17462  18186   
    }
17463  18187   
17464  18188   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
17465  18189   
}
17466         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpRequestWithFloatLabelsInput`](crate::input::HttpRequestWithFloatLabelsInput).
17467         -
pub mod http_request_with_float_labels_input {
       18190  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampHeaderDateTimeInput`](crate::input::MalformedTimestampHeaderDateTimeInput).
       18191  +
pub mod malformed_timestamp_header_date_time_input {
17468  18192   
17469  18193   
    /* RustType.kt:534 */
17470  18194   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
17471  18195   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
17472  18196   
    /* RustType.kt:534 */
17473  18197   
    #[non_exhaustive]
17474  18198   
    /* ServerBuilderConstraintViolations.kt:75 */
17475  18199   
    #[allow(clippy::enum_variant_names)]
17476  18200   
    pub enum ConstraintViolation {
17477         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`float` was not provided but it is required when building `HttpRequestWithFloatLabelsInput`.
17478         -
        /* ServerBuilderConstraintViolations.kt:144 */
17479         -
        MissingFloat,
17480         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`double` was not provided but it is required when building `HttpRequestWithFloatLabelsInput`.
       18201  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampHeaderDateTimeInput`.
17481  18202   
        /* ServerBuilderConstraintViolations.kt:144 */
17482         -
        MissingDouble,
       18203  +
        MissingTimestamp,
17483  18204   
        /* ServerBuilderConstraintViolations.kt:75 */
17484  18205   
    }
17485  18206   
    /* ServerBuilderConstraintViolations.kt:116 */
17486  18207   
    impl ::std::fmt::Display for ConstraintViolation {
17487  18208   
        /* ServerBuilderConstraintViolations.kt:117 */
17488  18209   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
17489  18210   
            /* ServerBuilderConstraintViolations.kt:118 */
17490  18211   
            match self {
17491         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingFloat => write!(f, "`float` was not provided but it is required when building `HttpRequestWithFloatLabelsInput`"),
17492         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingDouble => write!(f, "`double` was not provided but it is required when building `HttpRequestWithFloatLabelsInput`"),
       18212  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampHeaderDateTimeInput`"),
17493  18213   
            /* ServerBuilderConstraintViolations.kt:118 */}
17494  18214   
            /* ServerBuilderConstraintViolations.kt:117 */
17495  18215   
        }
17496  18216   
        /* ServerBuilderConstraintViolations.kt:116 */
17497  18217   
    }
17498  18218   
    /* ServerBuilderConstraintViolations.kt:83 */
17499  18219   
    impl ::std::error::Error for ConstraintViolation {}
17500  18220   
    /* ServerBuilderConstraintViolations.kt:172 */
17501  18221   
    impl ConstraintViolation {
17502  18222   
        pub(crate) fn as_validation_exception_field(
17503  18223   
            self,
17504  18224   
            path: ::std::string::String,
17505  18225   
        ) -> crate::model::ValidationExceptionField {
17506  18226   
            match self {
17507         -
            ConstraintViolation::MissingFloat => crate::model::ValidationExceptionField {
17508         -
                                                message: format!("Value at '{}/float' failed to satisfy constraint: Member must not be null", path),
17509         -
                                                path: path + "/float",
17510         -
                                            },
17511         -
            ConstraintViolation::MissingDouble => crate::model::ValidationExceptionField {
17512         -
                                                message: format!("Value at '{}/double' failed to satisfy constraint: Member must not be null", path),
17513         -
                                                path: path + "/double",
       18227  +
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
       18228  +
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
       18229  +
                                                path: path + "/timestamp",
17514  18230   
                                            },
17515  18231   
        }
17516  18232   
        }
17517  18233   
    }
17518  18234   
    /* ServerBuilderGenerator.kt:234 */
17519  18235   
    impl ::std::convert::From<ConstraintViolation>
17520  18236   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
17521  18237   
    {
17522  18238   
        fn from(constraint_violation: ConstraintViolation) -> Self {
17523  18239   
            let first_validation_exception_field =
17524  18240   
                constraint_violation.as_validation_exception_field("".to_owned());
17525  18241   
            let validation_exception = crate::error::ValidationException {
17526  18242   
                message: format!(
17527  18243   
                    "1 validation error detected. {}",
17528  18244   
                    &first_validation_exception_field.message
17529  18245   
                ),
17530  18246   
                field_list: Some(vec![first_validation_exception_field]),
17531  18247   
            };
17532  18248   
            Self::ConstraintViolation(
17533  18249   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
17534  18250   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
17535  18251   
                            )
17536  18252   
        }
17537  18253   
    }
17538  18254   
    /* ServerBuilderGenerator.kt:244 */
17539  18255   
    impl ::std::convert::From<Builder>
17540         -
        for crate::constrained::MaybeConstrained<crate::input::HttpRequestWithFloatLabelsInput>
       18256  +
        for crate::constrained::MaybeConstrained<
       18257  +
            crate::input::MalformedTimestampHeaderDateTimeInput,
       18258  +
        >
17541  18259   
    {
17542  18260   
        fn from(builder: Builder) -> Self {
17543  18261   
            Self::Unconstrained(builder)
17544  18262   
        }
17545  18263   
    }
17546  18264   
    /* ServerBuilderGenerator.kt:446 */
17547         -
    impl ::std::convert::TryFrom<Builder> for crate::input::HttpRequestWithFloatLabelsInput {
       18265  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampHeaderDateTimeInput {
17548  18266   
        type Error = ConstraintViolation;
17549  18267   
17550  18268   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
17551  18269   
            builder.build()
17552  18270   
        }
17553  18271   
    }
17554         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpRequestWithFloatLabelsInput`](crate::input::HttpRequestWithFloatLabelsInput).
       18272  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampHeaderDateTimeInput`](crate::input::MalformedTimestampHeaderDateTimeInput).
17555  18273   
    /* RustType.kt:534 */
17556  18274   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
17557  18275   
    /* ServerBuilderGenerator.kt:211 */
17558  18276   
    pub struct Builder {
17559         -
        /* ServerBuilderGenerator.kt:308 */ pub(crate) float: ::std::option::Option<f32>,
17560  18277   
        /* ServerBuilderGenerator.kt:308 */
17561         -
        pub(crate) double: ::std::option::Option<f64>,
       18278  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
17562  18279   
        /* ServerBuilderGenerator.kt:211 */
17563  18280   
    }
17564  18281   
    /* ServerBuilderGenerator.kt:215 */
17565  18282   
    impl Builder {
17566  18283   
        /* ServerBuilderGenerator.kt:331 */
17567  18284   
        #[allow(missing_docs)] // documentation missing in model
17568  18285   
                               /* ServerBuilderGenerator.kt:343 */
17569         -
        pub fn float(mut self, input: f32) -> Self {
17570         -
            /* ServerBuilderGenerator.kt:344 */
17571         -
            self.float =
17572         -
                /* ServerBuilderGenerator.kt:345 */Some(
17573         -
                    /* ServerBuilderGenerator.kt:376 */input
17574         -
                /* ServerBuilderGenerator.kt:345 */)
17575         -
            /* ServerBuilderGenerator.kt:344 */;
17576         -
            self
17577         -
            /* ServerBuilderGenerator.kt:343 */
17578         -
        }
17579         -
        /* ServerBuilderGenerator.kt:426 */
17580         -
        #[allow(missing_docs)] // documentation missing in model
17581         -
                               /* ServerBuilderGenerator.kt:428 */
17582         -
        pub(crate) fn set_float(mut self, input: impl ::std::convert::Into<f32>) -> Self {
17583         -
            /* ServerBuilderGenerator.kt:429 */
17584         -
            self.float = Some(input.into());
17585         -
            self
17586         -
            /* ServerBuilderGenerator.kt:428 */
17587         -
        }
17588         -
        /* ServerBuilderGenerator.kt:331 */
17589         -
        #[allow(missing_docs)] // documentation missing in model
17590         -
                               /* ServerBuilderGenerator.kt:343 */
17591         -
        pub fn double(mut self, input: f64) -> Self {
       18286  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
17592  18287   
            /* ServerBuilderGenerator.kt:344 */
17593         -
            self.double =
       18288  +
            self.timestamp =
17594  18289   
                /* ServerBuilderGenerator.kt:345 */Some(
17595  18290   
                    /* ServerBuilderGenerator.kt:376 */input
17596  18291   
                /* ServerBuilderGenerator.kt:345 */)
17597  18292   
            /* ServerBuilderGenerator.kt:344 */;
17598  18293   
            self
17599  18294   
            /* ServerBuilderGenerator.kt:343 */
17600  18295   
        }
17601  18296   
        /* ServerBuilderGenerator.kt:426 */
17602  18297   
        #[allow(missing_docs)] // documentation missing in model
17603  18298   
                               /* ServerBuilderGenerator.kt:428 */
17604         -
        pub(crate) fn set_double(mut self, input: impl ::std::convert::Into<f64>) -> Self {
       18299  +
        pub(crate) fn set_timestamp(
       18300  +
            mut self,
       18301  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
       18302  +
        ) -> Self {
17605  18303   
            /* ServerBuilderGenerator.kt:429 */
17606         -
            self.double = Some(input.into());
       18304  +
            self.timestamp = Some(input.into());
17607  18305   
            self
17608  18306   
            /* ServerBuilderGenerator.kt:428 */
17609  18307   
        }
17610         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpRequestWithFloatLabelsInput`](crate::input::HttpRequestWithFloatLabelsInput).
       18308  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampHeaderDateTimeInput`](crate::input::MalformedTimestampHeaderDateTimeInput).
17611  18309   
        /// /* ServerBuilderGenerator.kt:260 */
17612         -
        /// The builder fails to construct a [`HttpRequestWithFloatLabelsInput`](crate::input::HttpRequestWithFloatLabelsInput) if a [`ConstraintViolation`] occurs.
       18310  +
        /// The builder fails to construct a [`MalformedTimestampHeaderDateTimeInput`](crate::input::MalformedTimestampHeaderDateTimeInput) if a [`ConstraintViolation`] occurs.
17613  18311   
        ///
17614         -
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
17615  18312   
        /* ServerBuilderGenerator.kt:271 */
17616  18313   
        pub fn build(
17617  18314   
            self,
17618         -
        ) -> Result<crate::input::HttpRequestWithFloatLabelsInput, ConstraintViolation> {
       18315  +
        ) -> Result<crate::input::MalformedTimestampHeaderDateTimeInput, ConstraintViolation>
       18316  +
        {
17619  18317   
            self.build_enforcing_all_constraints()
17620  18318   
        }
17621  18319   
        /* ServerBuilderGenerator.kt:283 */
17622  18320   
        fn build_enforcing_all_constraints(
17623  18321   
            self,
17624         -
        ) -> Result<crate::input::HttpRequestWithFloatLabelsInput, ConstraintViolation> {
       18322  +
        ) -> Result<crate::input::MalformedTimestampHeaderDateTimeInput, ConstraintViolation>
       18323  +
        {
17625  18324   
            /* ServerBuilderGenerator.kt:287 */
17626  18325   
            Ok(
17627  18326   
                /* ServerBuilderGenerator.kt:542 */
17628         -
                crate::input::HttpRequestWithFloatLabelsInput {
17629         -
                    /* ServerBuilderGenerator.kt:546 */
17630         -
                    float: self
17631         -
                        .float
17632         -
                        /* ServerBuilderGenerator.kt:569 */
17633         -
                        .ok_or(ConstraintViolation::MissingFloat)?,
       18327  +
                crate::input::MalformedTimestampHeaderDateTimeInput {
17634  18328   
                    /* ServerBuilderGenerator.kt:546 */
17635         -
                    double: self
17636         -
                        .double
       18329  +
                    timestamp: self
       18330  +
                        .timestamp
17637  18331   
                        /* ServerBuilderGenerator.kt:569 */
17638         -
                        .ok_or(ConstraintViolation::MissingDouble)?,
       18332  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
17639  18333   
                    /* ServerBuilderGenerator.kt:542 */
17640  18334   
                }, /* ServerBuilderGenerator.kt:287 */
17641  18335   
            )
17642  18336   
            /* ServerBuilderGenerator.kt:283 */
17643  18337   
        }
17644  18338   
        /* ServerBuilderGenerator.kt:215 */
17645  18339   
    }
17646  18340   
17647  18341   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
17648  18342   
}
17649         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpRequestWithGreedyLabelInPathInput`](crate::input::HttpRequestWithGreedyLabelInPathInput).
17650         -
pub mod http_request_with_greedy_label_in_path_input {
       18343  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampHeaderEpochInput`](crate::input::MalformedTimestampHeaderEpochInput).
       18344  +
pub mod malformed_timestamp_header_epoch_input {
17651  18345   
17652  18346   
    /* RustType.kt:534 */
17653  18347   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
17654  18348   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
17655  18349   
    /* RustType.kt:534 */
17656  18350   
    #[non_exhaustive]
17657  18351   
    /* ServerBuilderConstraintViolations.kt:75 */
17658  18352   
    #[allow(clippy::enum_variant_names)]
17659  18353   
    pub enum ConstraintViolation {
17660         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`foo` was not provided but it is required when building `HttpRequestWithGreedyLabelInPathInput`.
17661         -
        /* ServerBuilderConstraintViolations.kt:144 */
17662         -
        MissingFoo,
17663         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`baz` was not provided but it is required when building `HttpRequestWithGreedyLabelInPathInput`.
       18354  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampHeaderEpochInput`.
17664  18355   
        /* ServerBuilderConstraintViolations.kt:144 */
17665         -
        MissingBaz,
       18356  +
        MissingTimestamp,
17666  18357   
        /* ServerBuilderConstraintViolations.kt:75 */
17667  18358   
    }
17668  18359   
    /* ServerBuilderConstraintViolations.kt:116 */
17669  18360   
    impl ::std::fmt::Display for ConstraintViolation {
17670  18361   
        /* ServerBuilderConstraintViolations.kt:117 */
17671  18362   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
17672  18363   
            /* ServerBuilderConstraintViolations.kt:118 */
17673  18364   
            match self {
17674         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingFoo => write!(f, "`foo` was not provided but it is required when building `HttpRequestWithGreedyLabelInPathInput`"),
17675         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingBaz => write!(f, "`baz` was not provided but it is required when building `HttpRequestWithGreedyLabelInPathInput`"),
       18365  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampHeaderEpochInput`"),
17676  18366   
            /* ServerBuilderConstraintViolations.kt:118 */}
17677  18367   
            /* ServerBuilderConstraintViolations.kt:117 */
17678  18368   
        }
17679  18369   
        /* ServerBuilderConstraintViolations.kt:116 */
17680  18370   
    }
17681  18371   
    /* ServerBuilderConstraintViolations.kt:83 */
17682  18372   
    impl ::std::error::Error for ConstraintViolation {}
17683  18373   
    /* ServerBuilderConstraintViolations.kt:172 */
17684  18374   
    impl ConstraintViolation {
17685  18375   
        pub(crate) fn as_validation_exception_field(
17686  18376   
            self,
17687  18377   
            path: ::std::string::String,
17688  18378   
        ) -> crate::model::ValidationExceptionField {
17689  18379   
            match self {
17690         -
                ConstraintViolation::MissingFoo => crate::model::ValidationExceptionField {
17691         -
                    message: format!(
17692         -
                        "Value at '{}/foo' failed to satisfy constraint: Member must not be null",
17693         -
                        path
17694         -
                    ),
17695         -
                    path: path + "/foo",
17696         -
                },
17697         -
                ConstraintViolation::MissingBaz => crate::model::ValidationExceptionField {
17698         -
                    message: format!(
17699         -
                        "Value at '{}/baz' failed to satisfy constraint: Member must not be null",
17700         -
                        path
17701         -
                    ),
17702         -
                    path: path + "/baz",
       18380  +
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
       18381  +
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
       18382  +
                                                path: path + "/timestamp",
17703  18383   
                                            },
17704  18384   
        }
17705  18385   
        }
17706  18386   
    }
17707  18387   
    /* ServerBuilderGenerator.kt:234 */
17708  18388   
    impl ::std::convert::From<ConstraintViolation>
17709  18389   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
17710  18390   
    {
17711  18391   
        fn from(constraint_violation: ConstraintViolation) -> Self {
17712  18392   
            let first_validation_exception_field =
17713  18393   
                constraint_violation.as_validation_exception_field("".to_owned());
17714  18394   
            let validation_exception = crate::error::ValidationException {
17715  18395   
                message: format!(
17716  18396   
                    "1 validation error detected. {}",
17717  18397   
                    &first_validation_exception_field.message
17718  18398   
                ),
17719  18399   
                field_list: Some(vec![first_validation_exception_field]),
17720  18400   
            };
17721  18401   
            Self::ConstraintViolation(
17722  18402   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
17723  18403   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
17724  18404   
                            )
17725  18405   
        }
17726  18406   
    }
17727  18407   
    /* ServerBuilderGenerator.kt:244 */
17728  18408   
    impl ::std::convert::From<Builder>
17729         -
        for crate::constrained::MaybeConstrained<
17730         -
            crate::input::HttpRequestWithGreedyLabelInPathInput,
17731         -
        >
       18409  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampHeaderEpochInput>
17732  18410   
    {
17733  18411   
        fn from(builder: Builder) -> Self {
17734  18412   
            Self::Unconstrained(builder)
17735  18413   
        }
17736  18414   
    }
17737  18415   
    /* ServerBuilderGenerator.kt:446 */
17738         -
    impl ::std::convert::TryFrom<Builder> for crate::input::HttpRequestWithGreedyLabelInPathInput {
       18416  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampHeaderEpochInput {
17739  18417   
        type Error = ConstraintViolation;
17740  18418   
17741  18419   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
17742  18420   
            builder.build()
17743  18421   
        }
17744  18422   
    }
17745         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpRequestWithGreedyLabelInPathInput`](crate::input::HttpRequestWithGreedyLabelInPathInput).
       18423  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampHeaderEpochInput`](crate::input::MalformedTimestampHeaderEpochInput).
17746  18424   
    /* RustType.kt:534 */
17747  18425   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
17748  18426   
    /* ServerBuilderGenerator.kt:211 */
17749  18427   
    pub struct Builder {
17750  18428   
        /* ServerBuilderGenerator.kt:308 */
17751         -
        pub(crate) foo: ::std::option::Option<::std::string::String>,
17752         -
        /* ServerBuilderGenerator.kt:308 */
17753         -
        pub(crate) baz: ::std::option::Option<::std::string::String>,
       18429  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
17754  18430   
        /* ServerBuilderGenerator.kt:211 */
17755  18431   
    }
17756  18432   
    /* ServerBuilderGenerator.kt:215 */
17757  18433   
    impl Builder {
17758  18434   
        /* ServerBuilderGenerator.kt:331 */
17759  18435   
        #[allow(missing_docs)] // documentation missing in model
17760  18436   
                               /* ServerBuilderGenerator.kt:343 */
17761         -
        pub fn foo(mut self, input: ::std::string::String) -> Self {
17762         -
            /* ServerBuilderGenerator.kt:344 */
17763         -
            self.foo =
17764         -
                /* ServerBuilderGenerator.kt:345 */Some(
17765         -
                    /* ServerBuilderGenerator.kt:376 */input
17766         -
                /* ServerBuilderGenerator.kt:345 */)
17767         -
            /* ServerBuilderGenerator.kt:344 */;
17768         -
            self
17769         -
            /* ServerBuilderGenerator.kt:343 */
17770         -
        }
17771         -
        /* ServerBuilderGenerator.kt:426 */
17772         -
        #[allow(missing_docs)] // documentation missing in model
17773         -
                               /* ServerBuilderGenerator.kt:428 */
17774         -
        pub(crate) fn set_foo(
17775         -
            mut self,
17776         -
            input: impl ::std::convert::Into<::std::string::String>,
17777         -
        ) -> Self {
17778         -
            /* ServerBuilderGenerator.kt:429 */
17779         -
            self.foo = Some(input.into());
17780         -
            self
17781         -
            /* ServerBuilderGenerator.kt:428 */
17782         -
        }
17783         -
        /* ServerBuilderGenerator.kt:331 */
17784         -
        #[allow(missing_docs)] // documentation missing in model
17785         -
                               /* ServerBuilderGenerator.kt:343 */
17786         -
        pub fn baz(mut self, input: ::std::string::String) -> Self {
       18437  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
17787  18438   
            /* ServerBuilderGenerator.kt:344 */
17788         -
            self.baz =
       18439  +
            self.timestamp =
17789  18440   
                /* ServerBuilderGenerator.kt:345 */Some(
17790  18441   
                    /* ServerBuilderGenerator.kt:376 */input
17791  18442   
                /* ServerBuilderGenerator.kt:345 */)
17792  18443   
            /* ServerBuilderGenerator.kt:344 */;
17793  18444   
            self
17794  18445   
            /* ServerBuilderGenerator.kt:343 */
17795  18446   
        }
17796  18447   
        /* ServerBuilderGenerator.kt:426 */
17797  18448   
        #[allow(missing_docs)] // documentation missing in model
17798  18449   
                               /* ServerBuilderGenerator.kt:428 */
17799         -
        pub(crate) fn set_baz(
       18450  +
        pub(crate) fn set_timestamp(
17800  18451   
            mut self,
17801         -
            input: impl ::std::convert::Into<::std::string::String>,
       18452  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
17802  18453   
        ) -> Self {
17803  18454   
            /* ServerBuilderGenerator.kt:429 */
17804         -
            self.baz = Some(input.into());
       18455  +
            self.timestamp = Some(input.into());
17805  18456   
            self
17806  18457   
            /* ServerBuilderGenerator.kt:428 */
17807  18458   
        }
17808         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpRequestWithGreedyLabelInPathInput`](crate::input::HttpRequestWithGreedyLabelInPathInput).
       18459  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampHeaderEpochInput`](crate::input::MalformedTimestampHeaderEpochInput).
17809  18460   
        /// /* ServerBuilderGenerator.kt:260 */
17810         -
        /// The builder fails to construct a [`HttpRequestWithGreedyLabelInPathInput`](crate::input::HttpRequestWithGreedyLabelInPathInput) if a [`ConstraintViolation`] occurs.
       18461  +
        /// The builder fails to construct a [`MalformedTimestampHeaderEpochInput`](crate::input::MalformedTimestampHeaderEpochInput) if a [`ConstraintViolation`] occurs.
17811  18462   
        ///
17812         -
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
17813  18463   
        /* ServerBuilderGenerator.kt:271 */
17814  18464   
        pub fn build(
17815  18465   
            self,
17816         -
        ) -> Result<crate::input::HttpRequestWithGreedyLabelInPathInput, ConstraintViolation>
17817         -
        {
       18466  +
        ) -> Result<crate::input::MalformedTimestampHeaderEpochInput, ConstraintViolation> {
17818  18467   
            self.build_enforcing_all_constraints()
17819  18468   
        }
17820  18469   
        /* ServerBuilderGenerator.kt:283 */
17821  18470   
        fn build_enforcing_all_constraints(
17822  18471   
            self,
17823         -
        ) -> Result<crate::input::HttpRequestWithGreedyLabelInPathInput, ConstraintViolation>
17824         -
        {
       18472  +
        ) -> Result<crate::input::MalformedTimestampHeaderEpochInput, ConstraintViolation> {
17825  18473   
            /* ServerBuilderGenerator.kt:287 */
17826  18474   
            Ok(
17827  18475   
                /* ServerBuilderGenerator.kt:542 */
17828         -
                crate::input::HttpRequestWithGreedyLabelInPathInput {
17829         -
                    /* ServerBuilderGenerator.kt:546 */
17830         -
                    foo: self
17831         -
                        .foo
17832         -
                        /* ServerBuilderGenerator.kt:569 */
17833         -
                        .ok_or(ConstraintViolation::MissingFoo)?,
       18476  +
                crate::input::MalformedTimestampHeaderEpochInput {
17834  18477   
                    /* ServerBuilderGenerator.kt:546 */
17835         -
                    baz: self
17836         -
                        .baz
       18478  +
                    timestamp: self
       18479  +
                        .timestamp
17837  18480   
                        /* ServerBuilderGenerator.kt:569 */
17838         -
                        .ok_or(ConstraintViolation::MissingBaz)?,
       18481  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
17839  18482   
                    /* ServerBuilderGenerator.kt:542 */
17840  18483   
                }, /* ServerBuilderGenerator.kt:287 */
17841  18484   
            )
17842  18485   
            /* ServerBuilderGenerator.kt:283 */
17843  18486   
        }
17844  18487   
        /* ServerBuilderGenerator.kt:215 */
17845  18488   
    }
17846  18489   
17847  18490   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
17848  18491   
}
17849         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpRequestWithLabelsAndTimestampFormatInput`](crate::input::HttpRequestWithLabelsAndTimestampFormatInput).
17850         -
pub mod http_request_with_labels_and_timestamp_format_input {
       18492  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampBodyDefaultInput`](crate::input::MalformedTimestampBodyDefaultInput).
       18493  +
pub mod malformed_timestamp_body_default_input {
17851  18494   
17852  18495   
    /* RustType.kt:534 */
17853  18496   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
17854  18497   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
17855  18498   
    /* RustType.kt:534 */
17856  18499   
    #[non_exhaustive]
17857  18500   
    /* ServerBuilderConstraintViolations.kt:75 */
17858  18501   
    #[allow(clippy::enum_variant_names)]
17859  18502   
    pub enum ConstraintViolation {
17860         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`member_epoch_seconds` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
17861         -
        /* ServerBuilderConstraintViolations.kt:144 */
17862         -
        MissingMemberEpochSeconds,
17863         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`member_http_date` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
17864         -
        /* ServerBuilderConstraintViolations.kt:144 */
17865         -
        MissingMemberHttpDate,
17866         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`member_date_time` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
17867         -
        /* ServerBuilderConstraintViolations.kt:144 */
17868         -
        MissingMemberDateTime,
17869         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`default_format` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
17870         -
        /* ServerBuilderConstraintViolations.kt:144 */
17871         -
        MissingDefaultFormat,
17872         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`target_epoch_seconds` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
17873         -
        /* ServerBuilderConstraintViolations.kt:144 */
17874         -
        MissingTargetEpochSeconds,
17875         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`target_http_date` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
17876         -
        /* ServerBuilderConstraintViolations.kt:144 */
17877         -
        MissingTargetHttpDate,
17878         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`target_date_time` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`.
       18503  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampBodyDefaultInput`.
17879  18504   
        /* ServerBuilderConstraintViolations.kt:144 */
17880         -
        MissingTargetDateTime,
       18505  +
        MissingTimestamp,
17881  18506   
        /* ServerBuilderConstraintViolations.kt:75 */
17882  18507   
    }
17883  18508   
    /* ServerBuilderConstraintViolations.kt:116 */
17884  18509   
    impl ::std::fmt::Display for ConstraintViolation {
17885  18510   
        /* ServerBuilderConstraintViolations.kt:117 */
17886  18511   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
17887  18512   
            /* ServerBuilderConstraintViolations.kt:118 */
17888  18513   
            match self {
17889         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingMemberEpochSeconds => write!(f, "`member_epoch_seconds` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
17890         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingMemberHttpDate => write!(f, "`member_http_date` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
17891         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingMemberDateTime => write!(f, "`member_date_time` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
17892         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingDefaultFormat => write!(f, "`default_format` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
17893         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTargetEpochSeconds => write!(f, "`target_epoch_seconds` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
17894         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTargetHttpDate => write!(f, "`target_http_date` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
17895         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTargetDateTime => write!(f, "`target_date_time` was not provided but it is required when building `HttpRequestWithLabelsAndTimestampFormatInput`"),
       18514  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampBodyDefaultInput`"),
17896  18515   
            /* ServerBuilderConstraintViolations.kt:118 */}
17897  18516   
            /* ServerBuilderConstraintViolations.kt:117 */
17898  18517   
        }
17899  18518   
        /* ServerBuilderConstraintViolations.kt:116 */
17900  18519   
    }
17901  18520   
    /* ServerBuilderConstraintViolations.kt:83 */
17902  18521   
    impl ::std::error::Error for ConstraintViolation {}
17903  18522   
    /* ServerBuilderConstraintViolations.kt:172 */
17904  18523   
    impl ConstraintViolation {
17905  18524   
        pub(crate) fn as_validation_exception_field(
17906  18525   
            self,
17907  18526   
            path: ::std::string::String,
17908  18527   
        ) -> crate::model::ValidationExceptionField {
17909  18528   
            match self {
17910         -
            ConstraintViolation::MissingMemberEpochSeconds => crate::model::ValidationExceptionField {
17911         -
                                                message: format!("Value at '{}/memberEpochSeconds' failed to satisfy constraint: Member must not be null", path),
17912         -
                                                path: path + "/memberEpochSeconds",
17913         -
                                            },
17914         -
            ConstraintViolation::MissingMemberHttpDate => crate::model::ValidationExceptionField {
17915         -
                                                message: format!("Value at '{}/memberHttpDate' failed to satisfy constraint: Member must not be null", path),
17916         -
                                                path: path + "/memberHttpDate",
17917         -
                                            },
17918         -
            ConstraintViolation::MissingMemberDateTime => crate::model::ValidationExceptionField {
17919         -
                                                message: format!("Value at '{}/memberDateTime' failed to satisfy constraint: Member must not be null", path),
17920         -
                                                path: path + "/memberDateTime",
17921         -
                                            },
17922         -
            ConstraintViolation::MissingDefaultFormat => crate::model::ValidationExceptionField {
17923         -
                                                message: format!("Value at '{}/defaultFormat' failed to satisfy constraint: Member must not be null", path),
17924         -
                                                path: path + "/defaultFormat",
17925         -
                                            },
17926         -
            ConstraintViolation::MissingTargetEpochSeconds => crate::model::ValidationExceptionField {
17927         -
                                                message: format!("Value at '{}/targetEpochSeconds' failed to satisfy constraint: Member must not be null", path),
17928         -
                                                path: path + "/targetEpochSeconds",
17929         -
                                            },
17930         -
            ConstraintViolation::MissingTargetHttpDate => crate::model::ValidationExceptionField {
17931         -
                                                message: format!("Value at '{}/targetHttpDate' failed to satisfy constraint: Member must not be null", path),
17932         -
                                                path: path + "/targetHttpDate",
17933         -
                                            },
17934         -
            ConstraintViolation::MissingTargetDateTime => crate::model::ValidationExceptionField {
17935         -
                                                message: format!("Value at '{}/targetDateTime' failed to satisfy constraint: Member must not be null", path),
17936         -
                                                path: path + "/targetDateTime",
       18529  +
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
       18530  +
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
       18531  +
                                                path: path + "/timestamp",
17937  18532   
                                            },
17938  18533   
        }
17939  18534   
        }
17940  18535   
    }
17941  18536   
    /* ServerBuilderGenerator.kt:234 */
17942  18537   
    impl ::std::convert::From<ConstraintViolation>
17943  18538   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
17944  18539   
    {
17945  18540   
        fn from(constraint_violation: ConstraintViolation) -> Self {
17946  18541   
            let first_validation_exception_field =
17947  18542   
                constraint_violation.as_validation_exception_field("".to_owned());
17948  18543   
            let validation_exception = crate::error::ValidationException {
17949  18544   
                message: format!(
17950  18545   
                    "1 validation error detected. {}",
17951  18546   
                    &first_validation_exception_field.message
17952  18547   
                ),
17953  18548   
                field_list: Some(vec![first_validation_exception_field]),
17954  18549   
            };
17955  18550   
            Self::ConstraintViolation(
17956  18551   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
17957  18552   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
17958  18553   
                            )
17959  18554   
        }
17960  18555   
    }
17961  18556   
    /* ServerBuilderGenerator.kt:244 */
17962  18557   
    impl ::std::convert::From<Builder>
17963         -
        for crate::constrained::MaybeConstrained<
17964         -
            crate::input::HttpRequestWithLabelsAndTimestampFormatInput,
17965         -
        >
       18558  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampBodyDefaultInput>
17966  18559   
    {
17967  18560   
        fn from(builder: Builder) -> Self {
17968  18561   
            Self::Unconstrained(builder)
17969  18562   
        }
17970  18563   
    }
17971  18564   
    /* ServerBuilderGenerator.kt:446 */
17972         -
    impl ::std::convert::TryFrom<Builder>
17973         -
        for crate::input::HttpRequestWithLabelsAndTimestampFormatInput
17974         -
    {
       18565  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampBodyDefaultInput {
17975  18566   
        type Error = ConstraintViolation;
17976  18567   
17977  18568   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
17978         -
            builder.build()
17979         -
        }
17980         -
    }
17981         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpRequestWithLabelsAndTimestampFormatInput`](crate::input::HttpRequestWithLabelsAndTimestampFormatInput).
17982         -
    /* RustType.kt:534 */
17983         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
17984         -
    /* ServerBuilderGenerator.kt:211 */
17985         -
    pub struct Builder {
17986         -
        /* ServerBuilderGenerator.kt:308 */
17987         -
        pub(crate) member_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
17988         -
        /* ServerBuilderGenerator.kt:308 */
17989         -
        pub(crate) member_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
17990         -
        /* ServerBuilderGenerator.kt:308 */
17991         -
        pub(crate) member_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
17992         -
        /* ServerBuilderGenerator.kt:308 */
17993         -
        pub(crate) default_format: ::std::option::Option<::aws_smithy_types::DateTime>,
17994         -
        /* ServerBuilderGenerator.kt:308 */
17995         -
        pub(crate) target_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
17996         -
        /* ServerBuilderGenerator.kt:308 */
17997         -
        pub(crate) target_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
17998         -
        /* ServerBuilderGenerator.kt:308 */
17999         -
        pub(crate) target_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
18000         -
        /* ServerBuilderGenerator.kt:211 */
18001         -
    }
18002         -
    /* ServerBuilderGenerator.kt:215 */
18003         -
    impl Builder {
18004         -
        /* ServerBuilderGenerator.kt:331 */
18005         -
        #[allow(missing_docs)] // documentation missing in model
18006         -
                               /* ServerBuilderGenerator.kt:343 */
18007         -
        pub fn member_epoch_seconds(mut self, input: ::aws_smithy_types::DateTime) -> Self {
18008         -
            /* ServerBuilderGenerator.kt:344 */
18009         -
            self.member_epoch_seconds =
18010         -
                /* ServerBuilderGenerator.kt:345 */Some(
18011         -
                    /* ServerBuilderGenerator.kt:376 */input
18012         -
                /* ServerBuilderGenerator.kt:345 */)
18013         -
            /* ServerBuilderGenerator.kt:344 */;
18014         -
            self
18015         -
            /* ServerBuilderGenerator.kt:343 */
18016         -
        }
18017         -
        /* ServerBuilderGenerator.kt:426 */
18018         -
        #[allow(missing_docs)] // documentation missing in model
18019         -
                               /* ServerBuilderGenerator.kt:428 */
18020         -
        pub(crate) fn set_member_epoch_seconds(
18021         -
            mut self,
18022         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
18023         -
        ) -> Self {
18024         -
            /* ServerBuilderGenerator.kt:429 */
18025         -
            self.member_epoch_seconds = Some(input.into());
18026         -
            self
18027         -
            /* ServerBuilderGenerator.kt:428 */
18028         -
        }
18029         -
        /* ServerBuilderGenerator.kt:331 */
18030         -
        #[allow(missing_docs)] // documentation missing in model
18031         -
                               /* ServerBuilderGenerator.kt:343 */
18032         -
        pub fn member_http_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
18033         -
            /* ServerBuilderGenerator.kt:344 */
18034         -
            self.member_http_date =
18035         -
                /* ServerBuilderGenerator.kt:345 */Some(
18036         -
                    /* ServerBuilderGenerator.kt:376 */input
18037         -
                /* ServerBuilderGenerator.kt:345 */)
18038         -
            /* ServerBuilderGenerator.kt:344 */;
18039         -
            self
18040         -
            /* ServerBuilderGenerator.kt:343 */
18041         -
        }
18042         -
        /* ServerBuilderGenerator.kt:426 */
18043         -
        #[allow(missing_docs)] // documentation missing in model
18044         -
                               /* ServerBuilderGenerator.kt:428 */
18045         -
        pub(crate) fn set_member_http_date(
18046         -
            mut self,
18047         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
18048         -
        ) -> Self {
18049         -
            /* ServerBuilderGenerator.kt:429 */
18050         -
            self.member_http_date = Some(input.into());
18051         -
            self
18052         -
            /* ServerBuilderGenerator.kt:428 */
18053         -
        }
18054         -
        /* ServerBuilderGenerator.kt:331 */
18055         -
        #[allow(missing_docs)] // documentation missing in model
18056         -
                               /* ServerBuilderGenerator.kt:343 */
18057         -
        pub fn member_date_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
18058         -
            /* ServerBuilderGenerator.kt:344 */
18059         -
            self.member_date_time =
18060         -
                /* ServerBuilderGenerator.kt:345 */Some(
18061         -
                    /* ServerBuilderGenerator.kt:376 */input
18062         -
                /* ServerBuilderGenerator.kt:345 */)
18063         -
            /* ServerBuilderGenerator.kt:344 */;
18064         -
            self
18065         -
            /* ServerBuilderGenerator.kt:343 */
18066         -
        }
18067         -
        /* ServerBuilderGenerator.kt:426 */
18068         -
        #[allow(missing_docs)] // documentation missing in model
18069         -
                               /* ServerBuilderGenerator.kt:428 */
18070         -
        pub(crate) fn set_member_date_time(
18071         -
            mut self,
18072         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
18073         -
        ) -> Self {
18074         -
            /* ServerBuilderGenerator.kt:429 */
18075         -
            self.member_date_time = Some(input.into());
18076         -
            self
18077         -
            /* ServerBuilderGenerator.kt:428 */
18078         -
        }
18079         -
        /* ServerBuilderGenerator.kt:331 */
18080         -
        #[allow(missing_docs)] // documentation missing in model
18081         -
                               /* ServerBuilderGenerator.kt:343 */
18082         -
        pub fn default_format(mut self, input: ::aws_smithy_types::DateTime) -> Self {
18083         -
            /* ServerBuilderGenerator.kt:344 */
18084         -
            self.default_format =
18085         -
                /* ServerBuilderGenerator.kt:345 */Some(
18086         -
                    /* ServerBuilderGenerator.kt:376 */input
18087         -
                /* ServerBuilderGenerator.kt:345 */)
18088         -
            /* ServerBuilderGenerator.kt:344 */;
18089         -
            self
18090         -
            /* ServerBuilderGenerator.kt:343 */
18091         -
        }
18092         -
        /* ServerBuilderGenerator.kt:426 */
18093         -
        #[allow(missing_docs)] // documentation missing in model
18094         -
                               /* ServerBuilderGenerator.kt:428 */
18095         -
        pub(crate) fn set_default_format(
18096         -
            mut self,
18097         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
18098         -
        ) -> Self {
18099         -
            /* ServerBuilderGenerator.kt:429 */
18100         -
            self.default_format = Some(input.into());
18101         -
            self
18102         -
            /* ServerBuilderGenerator.kt:428 */
       18569  +
            builder.build()
18103  18570   
        }
18104         -
        /* ServerBuilderGenerator.kt:331 */
18105         -
        #[allow(missing_docs)] // documentation missing in model
18106         -
                               /* ServerBuilderGenerator.kt:343 */
18107         -
        pub fn target_epoch_seconds(mut self, input: ::aws_smithy_types::DateTime) -> Self {
18108         -
            /* ServerBuilderGenerator.kt:344 */
18109         -
            self.target_epoch_seconds =
18110         -
                /* ServerBuilderGenerator.kt:345 */Some(
18111         -
                    /* ServerBuilderGenerator.kt:376 */input
18112         -
                /* ServerBuilderGenerator.kt:345 */)
18113         -
            /* ServerBuilderGenerator.kt:344 */;
18114         -
            self
18115         -
            /* ServerBuilderGenerator.kt:343 */
18116  18571   
    }
18117         -
        /* ServerBuilderGenerator.kt:426 */
18118         -
        #[allow(missing_docs)] // documentation missing in model
18119         -
                               /* ServerBuilderGenerator.kt:428 */
18120         -
        pub(crate) fn set_target_epoch_seconds(
18121         -
            mut self,
18122         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
18123         -
        ) -> Self {
18124         -
            /* ServerBuilderGenerator.kt:429 */
18125         -
            self.target_epoch_seconds = Some(input.into());
18126         -
            self
18127         -
            /* ServerBuilderGenerator.kt:428 */
       18572  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampBodyDefaultInput`](crate::input::MalformedTimestampBodyDefaultInput).
       18573  +
    /* RustType.kt:534 */
       18574  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       18575  +
    /* ServerBuilderGenerator.kt:211 */
       18576  +
    pub struct Builder {
       18577  +
        /* ServerBuilderGenerator.kt:308 */
       18578  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
       18579  +
        /* ServerBuilderGenerator.kt:211 */
18128  18580   
    }
       18581  +
    /* ServerBuilderGenerator.kt:215 */
       18582  +
    impl Builder {
18129  18583   
        /* ServerBuilderGenerator.kt:331 */
18130  18584   
        #[allow(missing_docs)] // documentation missing in model
18131  18585   
                               /* ServerBuilderGenerator.kt:343 */
18132         -
        pub fn target_http_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
       18586  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
18133  18587   
            /* ServerBuilderGenerator.kt:344 */
18134         -
            self.target_http_date =
       18588  +
            self.timestamp =
18135  18589   
                /* ServerBuilderGenerator.kt:345 */Some(
18136  18590   
                    /* ServerBuilderGenerator.kt:376 */input
18137  18591   
                /* ServerBuilderGenerator.kt:345 */)
18138  18592   
            /* ServerBuilderGenerator.kt:344 */;
18139  18593   
            self
18140  18594   
            /* ServerBuilderGenerator.kt:343 */
18141  18595   
        }
18142  18596   
        /* ServerBuilderGenerator.kt:426 */
18143  18597   
        #[allow(missing_docs)] // documentation missing in model
18144  18598   
                               /* ServerBuilderGenerator.kt:428 */
18145         -
        pub(crate) fn set_target_http_date(
       18599  +
        pub(crate) fn set_timestamp(
18146  18600   
            mut self,
18147  18601   
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
18148  18602   
        ) -> Self {
18149  18603   
            /* ServerBuilderGenerator.kt:429 */
18150         -
            self.target_http_date = Some(input.into());
       18604  +
            self.timestamp = Some(input.into());
18151  18605   
            self
18152  18606   
            /* ServerBuilderGenerator.kt:428 */
18153  18607   
        }
       18608  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampBodyDefaultInput`](crate::input::MalformedTimestampBodyDefaultInput).
       18609  +
        /// /* ServerBuilderGenerator.kt:260 */
       18610  +
        /// The builder fails to construct a [`MalformedTimestampBodyDefaultInput`](crate::input::MalformedTimestampBodyDefaultInput) if a [`ConstraintViolation`] occurs.
       18611  +
        ///
       18612  +
        /* ServerBuilderGenerator.kt:271 */
       18613  +
        pub fn build(
       18614  +
            self,
       18615  +
        ) -> Result<crate::input::MalformedTimestampBodyDefaultInput, ConstraintViolation> {
       18616  +
            self.build_enforcing_all_constraints()
       18617  +
        }
       18618  +
        /* ServerBuilderGenerator.kt:283 */
       18619  +
        fn build_enforcing_all_constraints(
       18620  +
            self,
       18621  +
        ) -> Result<crate::input::MalformedTimestampBodyDefaultInput, ConstraintViolation> {
       18622  +
            /* ServerBuilderGenerator.kt:287 */
       18623  +
            Ok(
       18624  +
                /* ServerBuilderGenerator.kt:542 */
       18625  +
                crate::input::MalformedTimestampBodyDefaultInput {
       18626  +
                    /* ServerBuilderGenerator.kt:546 */
       18627  +
                    timestamp: self
       18628  +
                        .timestamp
       18629  +
                        /* ServerBuilderGenerator.kt:569 */
       18630  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
       18631  +
                    /* ServerBuilderGenerator.kt:542 */
       18632  +
                }, /* ServerBuilderGenerator.kt:287 */
       18633  +
            )
       18634  +
            /* ServerBuilderGenerator.kt:283 */
       18635  +
        }
       18636  +
        /* ServerBuilderGenerator.kt:215 */
       18637  +
    }
       18638  +
       18639  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       18640  +
}
       18641  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampBodyDateTimeInput`](crate::input::MalformedTimestampBodyDateTimeInput).
       18642  +
pub mod malformed_timestamp_body_date_time_input {
       18643  +
       18644  +
    /* RustType.kt:534 */
       18645  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       18646  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       18647  +
    /* RustType.kt:534 */
       18648  +
    #[non_exhaustive]
       18649  +
    /* ServerBuilderConstraintViolations.kt:75 */
       18650  +
    #[allow(clippy::enum_variant_names)]
       18651  +
    pub enum ConstraintViolation {
       18652  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampBodyDateTimeInput`.
       18653  +
        /* ServerBuilderConstraintViolations.kt:144 */
       18654  +
        MissingTimestamp,
       18655  +
        /* ServerBuilderConstraintViolations.kt:75 */
       18656  +
    }
       18657  +
    /* ServerBuilderConstraintViolations.kt:116 */
       18658  +
    impl ::std::fmt::Display for ConstraintViolation {
       18659  +
        /* ServerBuilderConstraintViolations.kt:117 */
       18660  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       18661  +
            /* ServerBuilderConstraintViolations.kt:118 */
       18662  +
            match self {
       18663  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampBodyDateTimeInput`"),
       18664  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       18665  +
            /* ServerBuilderConstraintViolations.kt:117 */
       18666  +
        }
       18667  +
        /* ServerBuilderConstraintViolations.kt:116 */
       18668  +
    }
       18669  +
    /* ServerBuilderConstraintViolations.kt:83 */
       18670  +
    impl ::std::error::Error for ConstraintViolation {}
       18671  +
    /* ServerBuilderConstraintViolations.kt:172 */
       18672  +
    impl ConstraintViolation {
       18673  +
        pub(crate) fn as_validation_exception_field(
       18674  +
            self,
       18675  +
            path: ::std::string::String,
       18676  +
        ) -> crate::model::ValidationExceptionField {
       18677  +
            match self {
       18678  +
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
       18679  +
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
       18680  +
                                                path: path + "/timestamp",
       18681  +
                                            },
       18682  +
        }
       18683  +
        }
       18684  +
    }
       18685  +
    /* ServerBuilderGenerator.kt:234 */
       18686  +
    impl ::std::convert::From<ConstraintViolation>
       18687  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       18688  +
    {
       18689  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       18690  +
            let first_validation_exception_field =
       18691  +
                constraint_violation.as_validation_exception_field("".to_owned());
       18692  +
            let validation_exception = crate::error::ValidationException {
       18693  +
                message: format!(
       18694  +
                    "1 validation error detected. {}",
       18695  +
                    &first_validation_exception_field.message
       18696  +
                ),
       18697  +
                field_list: Some(vec![first_validation_exception_field]),
       18698  +
            };
       18699  +
            Self::ConstraintViolation(
       18700  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       18701  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       18702  +
                            )
       18703  +
        }
       18704  +
    }
       18705  +
    /* ServerBuilderGenerator.kt:244 */
       18706  +
    impl ::std::convert::From<Builder>
       18707  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampBodyDateTimeInput>
       18708  +
    {
       18709  +
        fn from(builder: Builder) -> Self {
       18710  +
            Self::Unconstrained(builder)
       18711  +
        }
       18712  +
    }
       18713  +
    /* ServerBuilderGenerator.kt:446 */
       18714  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampBodyDateTimeInput {
       18715  +
        type Error = ConstraintViolation;
       18716  +
       18717  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       18718  +
            builder.build()
       18719  +
        }
       18720  +
    }
       18721  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampBodyDateTimeInput`](crate::input::MalformedTimestampBodyDateTimeInput).
       18722  +
    /* RustType.kt:534 */
       18723  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       18724  +
    /* ServerBuilderGenerator.kt:211 */
       18725  +
    pub struct Builder {
       18726  +
        /* ServerBuilderGenerator.kt:308 */
       18727  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
       18728  +
        /* ServerBuilderGenerator.kt:211 */
       18729  +
    }
       18730  +
    /* ServerBuilderGenerator.kt:215 */
       18731  +
    impl Builder {
18154  18732   
        /* ServerBuilderGenerator.kt:331 */
18155  18733   
        #[allow(missing_docs)] // documentation missing in model
18156  18734   
                               /* ServerBuilderGenerator.kt:343 */
18157         -
        pub fn target_date_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
       18735  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
18158  18736   
            /* ServerBuilderGenerator.kt:344 */
18159         -
            self.target_date_time =
       18737  +
            self.timestamp =
18160  18738   
                /* ServerBuilderGenerator.kt:345 */Some(
18161  18739   
                    /* ServerBuilderGenerator.kt:376 */input
18162  18740   
                /* ServerBuilderGenerator.kt:345 */)
18163  18741   
            /* ServerBuilderGenerator.kt:344 */;
18164  18742   
            self
18165  18743   
            /* ServerBuilderGenerator.kt:343 */
18166  18744   
        }
18167  18745   
        /* ServerBuilderGenerator.kt:426 */
18168  18746   
        #[allow(missing_docs)] // documentation missing in model
18169  18747   
                               /* ServerBuilderGenerator.kt:428 */
18170         -
        pub(crate) fn set_target_date_time(
       18748  +
        pub(crate) fn set_timestamp(
18171  18749   
            mut self,
18172  18750   
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
18173  18751   
        ) -> Self {
18174  18752   
            /* ServerBuilderGenerator.kt:429 */
18175         -
            self.target_date_time = Some(input.into());
       18753  +
            self.timestamp = Some(input.into());
18176  18754   
            self
18177  18755   
            /* ServerBuilderGenerator.kt:428 */
18178  18756   
        }
18179         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpRequestWithLabelsAndTimestampFormatInput`](crate::input::HttpRequestWithLabelsAndTimestampFormatInput).
       18757  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampBodyDateTimeInput`](crate::input::MalformedTimestampBodyDateTimeInput).
18180  18758   
        /// /* ServerBuilderGenerator.kt:260 */
18181         -
        /// The builder fails to construct a [`HttpRequestWithLabelsAndTimestampFormatInput`](crate::input::HttpRequestWithLabelsAndTimestampFormatInput) if a [`ConstraintViolation`] occurs.
       18759  +
        /// The builder fails to construct a [`MalformedTimestampBodyDateTimeInput`](crate::input::MalformedTimestampBodyDateTimeInput) if a [`ConstraintViolation`] occurs.
18182  18760   
        ///
18183         -
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
18184  18761   
        /* ServerBuilderGenerator.kt:271 */
18185  18762   
        pub fn build(
18186  18763   
            self,
18187         -
        ) -> Result<crate::input::HttpRequestWithLabelsAndTimestampFormatInput, ConstraintViolation>
       18764  +
        ) -> Result<crate::input::MalformedTimestampBodyDateTimeInput, ConstraintViolation>
18188  18765   
        {
18189  18766   
            self.build_enforcing_all_constraints()
18190  18767   
        }
18191  18768   
        /* ServerBuilderGenerator.kt:283 */
18192  18769   
        fn build_enforcing_all_constraints(
18193  18770   
            self,
18194         -
        ) -> Result<crate::input::HttpRequestWithLabelsAndTimestampFormatInput, ConstraintViolation>
       18771  +
        ) -> Result<crate::input::MalformedTimestampBodyDateTimeInput, ConstraintViolation>
18195  18772   
        {
18196  18773   
            /* ServerBuilderGenerator.kt:287 */
18197  18774   
            Ok(
18198  18775   
                /* ServerBuilderGenerator.kt:542 */
18199         -
                crate::input::HttpRequestWithLabelsAndTimestampFormatInput {
18200         -
                    /* ServerBuilderGenerator.kt:546 */
18201         -
                    member_epoch_seconds: self
18202         -
                        .member_epoch_seconds
18203         -
                        /* ServerBuilderGenerator.kt:569 */
18204         -
                        .ok_or(ConstraintViolation::MissingMemberEpochSeconds)?,
18205         -
                    /* ServerBuilderGenerator.kt:546 */
18206         -
                    member_http_date: self
18207         -
                        .member_http_date
18208         -
                        /* ServerBuilderGenerator.kt:569 */
18209         -
                        .ok_or(ConstraintViolation::MissingMemberHttpDate)?,
18210         -
                    /* ServerBuilderGenerator.kt:546 */
18211         -
                    member_date_time: self
18212         -
                        .member_date_time
18213         -
                        /* ServerBuilderGenerator.kt:569 */
18214         -
                        .ok_or(ConstraintViolation::MissingMemberDateTime)?,
18215         -
                    /* ServerBuilderGenerator.kt:546 */
18216         -
                    default_format: self
18217         -
                        .default_format
18218         -
                        /* ServerBuilderGenerator.kt:569 */
18219         -
                        .ok_or(ConstraintViolation::MissingDefaultFormat)?,
18220         -
                    /* ServerBuilderGenerator.kt:546 */
18221         -
                    target_epoch_seconds: self
18222         -
                        .target_epoch_seconds
18223         -
                        /* ServerBuilderGenerator.kt:569 */
18224         -
                        .ok_or(ConstraintViolation::MissingTargetEpochSeconds)?,
18225         -
                    /* ServerBuilderGenerator.kt:546 */
18226         -
                    target_http_date: self
18227         -
                        .target_http_date
18228         -
                        /* ServerBuilderGenerator.kt:569 */
18229         -
                        .ok_or(ConstraintViolation::MissingTargetHttpDate)?,
       18776  +
                crate::input::MalformedTimestampBodyDateTimeInput {
18230  18777   
                    /* ServerBuilderGenerator.kt:546 */
18231         -
                    target_date_time: self
18232         -
                        .target_date_time
       18778  +
                    timestamp: self
       18779  +
                        .timestamp
18233  18780   
                        /* ServerBuilderGenerator.kt:569 */
18234         -
                        .ok_or(ConstraintViolation::MissingTargetDateTime)?,
       18781  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
18235  18782   
                    /* ServerBuilderGenerator.kt:542 */
18236  18783   
                }, /* ServerBuilderGenerator.kt:287 */
18237  18784   
            )
18238  18785   
            /* ServerBuilderGenerator.kt:283 */
18239  18786   
        }
18240  18787   
        /* ServerBuilderGenerator.kt:215 */
18241  18788   
    }
18242  18789   
18243         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
18244         -
}
18245         -
/// /* ServerBuilderGenerator.kt:171 */See [`HttpRequestWithLabelsInput`](crate::input::HttpRequestWithLabelsInput).
18246         -
pub mod http_request_with_labels_input {
18247         -
18248         -
    /* RustType.kt:534 */
18249         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
18250         -
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
18251         -
    /* RustType.kt:534 */
18252         -
    #[non_exhaustive]
18253         -
    /* ServerBuilderConstraintViolations.kt:75 */
18254         -
    #[allow(clippy::enum_variant_names)]
18255         -
    pub enum ConstraintViolation {
18256         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`string` was not provided but it is required when building `HttpRequestWithLabelsInput`.
18257         -
        /* ServerBuilderConstraintViolations.kt:144 */
18258         -
        MissingString,
18259         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`short` was not provided but it is required when building `HttpRequestWithLabelsInput`.
18260         -
        /* ServerBuilderConstraintViolations.kt:144 */
18261         -
        MissingShort,
18262         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`integer` was not provided but it is required when building `HttpRequestWithLabelsInput`.
18263         -
        /* ServerBuilderConstraintViolations.kt:144 */
18264         -
        MissingInteger,
18265         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`long` was not provided but it is required when building `HttpRequestWithLabelsInput`.
18266         -
        /* ServerBuilderConstraintViolations.kt:144 */
18267         -
        MissingLong,
18268         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`float` was not provided but it is required when building `HttpRequestWithLabelsInput`.
18269         -
        /* ServerBuilderConstraintViolations.kt:144 */
18270         -
        MissingFloat,
18271         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`double` was not provided but it is required when building `HttpRequestWithLabelsInput`.
18272         -
        /* ServerBuilderConstraintViolations.kt:144 */
18273         -
        MissingDouble,
18274         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`boolean` was not provided but it is required when building `HttpRequestWithLabelsInput`.
18275         -
        /* ServerBuilderConstraintViolations.kt:144 */
18276         -
        MissingBoolean,
18277         -
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `HttpRequestWithLabelsInput`.
       18790  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       18791  +
}
       18792  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedTimestampBodyHttpDateInput`](crate::input::MalformedTimestampBodyHttpDateInput).
       18793  +
pub mod malformed_timestamp_body_http_date_input {
       18794  +
       18795  +
    /* RustType.kt:534 */
       18796  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       18797  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       18798  +
    /* RustType.kt:534 */
       18799  +
    #[non_exhaustive]
       18800  +
    /* ServerBuilderConstraintViolations.kt:75 */
       18801  +
    #[allow(clippy::enum_variant_names)]
       18802  +
    pub enum ConstraintViolation {
       18803  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`timestamp` was not provided but it is required when building `MalformedTimestampBodyHttpDateInput`.
18278  18804   
        /* ServerBuilderConstraintViolations.kt:144 */
18279  18805   
        MissingTimestamp,
18280  18806   
        /* ServerBuilderConstraintViolations.kt:75 */
18281  18807   
    }
18282  18808   
    /* ServerBuilderConstraintViolations.kt:116 */
18283  18809   
    impl ::std::fmt::Display for ConstraintViolation {
18284  18810   
        /* ServerBuilderConstraintViolations.kt:117 */
18285  18811   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
18286  18812   
            /* ServerBuilderConstraintViolations.kt:118 */
18287  18813   
            match self {
18288         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingString => write!(f, "`string` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
18289         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingShort => write!(f, "`short` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
18290         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingInteger => write!(f, "`integer` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
18291         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingLong => write!(f, "`long` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
18292         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingFloat => write!(f, "`float` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
18293         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingDouble => write!(f, "`double` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
18294         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingBoolean => write!(f, "`boolean` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
18295         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `HttpRequestWithLabelsInput`"),
       18814  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTimestamp => write!(f, "`timestamp` was not provided but it is required when building `MalformedTimestampBodyHttpDateInput`"),
18296  18815   
            /* ServerBuilderConstraintViolations.kt:118 */}
18297  18816   
            /* ServerBuilderConstraintViolations.kt:117 */
18298  18817   
        }
18299  18818   
        /* ServerBuilderConstraintViolations.kt:116 */
18300  18819   
    }
18301  18820   
    /* ServerBuilderConstraintViolations.kt:83 */
18302  18821   
    impl ::std::error::Error for ConstraintViolation {}
18303  18822   
    /* ServerBuilderConstraintViolations.kt:172 */
18304  18823   
    impl ConstraintViolation {
18305  18824   
        pub(crate) fn as_validation_exception_field(
18306  18825   
            self,
18307  18826   
            path: ::std::string::String,
18308  18827   
        ) -> crate::model::ValidationExceptionField {
18309  18828   
            match self {
18310         -
            ConstraintViolation::MissingString => crate::model::ValidationExceptionField {
18311         -
                                                message: format!("Value at '{}/string' failed to satisfy constraint: Member must not be null", path),
18312         -
                                                path: path + "/string",
18313         -
                                            },
18314         -
            ConstraintViolation::MissingShort => crate::model::ValidationExceptionField {
18315         -
                                                message: format!("Value at '{}/short' failed to satisfy constraint: Member must not be null", path),
18316         -
                                                path: path + "/short",
18317         -
                                            },
18318         -
            ConstraintViolation::MissingInteger => crate::model::ValidationExceptionField {
18319         -
                                                message: format!("Value at '{}/integer' failed to satisfy constraint: Member must not be null", path),
18320         -
                                                path: path + "/integer",
18321         -
                                            },
18322         -
            ConstraintViolation::MissingLong => crate::model::ValidationExceptionField {
18323         -
                                                message: format!("Value at '{}/long' failed to satisfy constraint: Member must not be null", path),
18324         -
                                                path: path + "/long",
18325         -
                                            },
18326         -
            ConstraintViolation::MissingFloat => crate::model::ValidationExceptionField {
18327         -
                                                message: format!("Value at '{}/float' failed to satisfy constraint: Member must not be null", path),
18328         -
                                                path: path + "/float",
18329         -
                                            },
18330         -
            ConstraintViolation::MissingDouble => crate::model::ValidationExceptionField {
18331         -
                                                message: format!("Value at '{}/double' failed to satisfy constraint: Member must not be null", path),
18332         -
                                                path: path + "/double",
18333         -
                                            },
18334         -
            ConstraintViolation::MissingBoolean => crate::model::ValidationExceptionField {
18335         -
                                                message: format!("Value at '{}/boolean' failed to satisfy constraint: Member must not be null", path),
18336         -
                                                path: path + "/boolean",
18337         -
                                            },
18338  18829   
            ConstraintViolation::MissingTimestamp => crate::model::ValidationExceptionField {
18339  18830   
                                                message: format!("Value at '{}/timestamp' failed to satisfy constraint: Member must not be null", path),
18340  18831   
                                                path: path + "/timestamp",
18341  18832   
                                            },
18342  18833   
        }
18343  18834   
        }
18344  18835   
    }
18345  18836   
    /* ServerBuilderGenerator.kt:234 */
18346  18837   
    impl ::std::convert::From<ConstraintViolation>
18347  18838   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
18348  18839   
    {
18349  18840   
        fn from(constraint_violation: ConstraintViolation) -> Self {
18350  18841   
            let first_validation_exception_field =
18351  18842   
                constraint_violation.as_validation_exception_field("".to_owned());
18352  18843   
            let validation_exception = crate::error::ValidationException {
18353  18844   
                message: format!(
18354  18845   
                    "1 validation error detected. {}",
18355  18846   
                    &first_validation_exception_field.message
18356  18847   
                ),
18357  18848   
                field_list: Some(vec![first_validation_exception_field]),
18358  18849   
            };
18359  18850   
            Self::ConstraintViolation(
18360  18851   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
18361  18852   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
18362  18853   
                            )
18363  18854   
        }
18364  18855   
    }
18365  18856   
    /* ServerBuilderGenerator.kt:244 */
18366  18857   
    impl ::std::convert::From<Builder>
18367         -
        for crate::constrained::MaybeConstrained<crate::input::HttpRequestWithLabelsInput>
       18858  +
        for crate::constrained::MaybeConstrained<crate::input::MalformedTimestampBodyHttpDateInput>
18368  18859   
    {
18369  18860   
        fn from(builder: Builder) -> Self {
18370  18861   
            Self::Unconstrained(builder)
18371  18862   
        }
18372  18863   
    }
18373  18864   
    /* ServerBuilderGenerator.kt:446 */
18374         -
    impl ::std::convert::TryFrom<Builder> for crate::input::HttpRequestWithLabelsInput {
       18865  +
    impl ::std::convert::TryFrom<Builder> for crate::input::MalformedTimestampBodyHttpDateInput {
18375  18866   
        type Error = ConstraintViolation;
18376  18867   
18377  18868   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
18378  18869   
            builder.build()
18379  18870   
        }
18380  18871   
    }
18381         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`HttpRequestWithLabelsInput`](crate::input::HttpRequestWithLabelsInput).
       18872  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedTimestampBodyHttpDateInput`](crate::input::MalformedTimestampBodyHttpDateInput).
18382  18873   
    /* RustType.kt:534 */
18383  18874   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
18384  18875   
    /* ServerBuilderGenerator.kt:211 */
18385  18876   
    pub struct Builder {
18386         -
        /* ServerBuilderGenerator.kt:308 */
18387         -
        pub(crate) string: ::std::option::Option<::std::string::String>,
18388         -
        /* ServerBuilderGenerator.kt:308 */ pub(crate) short: ::std::option::Option<i16>,
18389         -
        /* ServerBuilderGenerator.kt:308 */ pub(crate) integer: ::std::option::Option<i32>,
18390         -
        /* ServerBuilderGenerator.kt:308 */ pub(crate) long: ::std::option::Option<i64>,
18391         -
        /* ServerBuilderGenerator.kt:308 */ pub(crate) float: ::std::option::Option<f32>,
18392         -
        /* ServerBuilderGenerator.kt:308 */ pub(crate) double: ::std::option::Option<f64>,
18393         -
        /* ServerBuilderGenerator.kt:308 */ pub(crate) boolean: ::std::option::Option<bool>,
18394  18877   
        /* ServerBuilderGenerator.kt:308 */
18395  18878   
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
18396  18879   
        /* ServerBuilderGenerator.kt:211 */
18397  18880   
    }
18398  18881   
    /* ServerBuilderGenerator.kt:215 */
18399  18882   
    impl Builder {
18400  18883   
        /* ServerBuilderGenerator.kt:331 */
18401  18884   
        #[allow(missing_docs)] // documentation missing in model
18402  18885   
                               /* ServerBuilderGenerator.kt:343 */
18403         -
        pub fn string(mut self, input: ::std::string::String) -> Self {
       18886  +
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
18404  18887   
            /* ServerBuilderGenerator.kt:344 */
18405         -
            self.string =
       18888  +
            self.timestamp =
18406  18889   
                /* ServerBuilderGenerator.kt:345 */Some(
18407  18890   
                    /* ServerBuilderGenerator.kt:376 */input
18408  18891   
                /* ServerBuilderGenerator.kt:345 */)
18409  18892   
            /* ServerBuilderGenerator.kt:344 */;
18410  18893   
            self
18411  18894   
            /* ServerBuilderGenerator.kt:343 */
18412  18895   
        }
18413  18896   
        /* ServerBuilderGenerator.kt:426 */
18414  18897   
        #[allow(missing_docs)] // documentation missing in model
18415  18898   
                               /* ServerBuilderGenerator.kt:428 */
18416         -
        pub(crate) fn set_string(
       18899  +
        pub(crate) fn set_timestamp(
18417  18900   
            mut self,
18418         -
            input: impl ::std::convert::Into<::std::string::String>,
       18901  +
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
18419  18902   
        ) -> Self {
18420  18903   
            /* ServerBuilderGenerator.kt:429 */
18421         -
            self.string = Some(input.into());
       18904  +
            self.timestamp = Some(input.into());
18422  18905   
            self
18423  18906   
            /* ServerBuilderGenerator.kt:428 */
18424  18907   
        }
18425         -
        /* ServerBuilderGenerator.kt:331 */
18426         -
        #[allow(missing_docs)] // documentation missing in model
18427         -
                               /* ServerBuilderGenerator.kt:343 */
18428         -
        pub fn short(mut self, input: i16) -> Self {
18429         -
            /* ServerBuilderGenerator.kt:344 */
18430         -
            self.short =
18431         -
                /* ServerBuilderGenerator.kt:345 */Some(
18432         -
                    /* ServerBuilderGenerator.kt:376 */input
18433         -
                /* ServerBuilderGenerator.kt:345 */)
18434         -
            /* ServerBuilderGenerator.kt:344 */;
18435         -
            self
18436         -
            /* ServerBuilderGenerator.kt:343 */
       18908  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedTimestampBodyHttpDateInput`](crate::input::MalformedTimestampBodyHttpDateInput).
       18909  +
        /// /* ServerBuilderGenerator.kt:260 */
       18910  +
        /// The builder fails to construct a [`MalformedTimestampBodyHttpDateInput`](crate::input::MalformedTimestampBodyHttpDateInput) if a [`ConstraintViolation`] occurs.
       18911  +
        ///
       18912  +
        /* ServerBuilderGenerator.kt:271 */
       18913  +
        pub fn build(
       18914  +
            self,
       18915  +
        ) -> Result<crate::input::MalformedTimestampBodyHttpDateInput, ConstraintViolation>
       18916  +
        {
       18917  +
            self.build_enforcing_all_constraints()
18437  18918   
        }
18438         -
        /* ServerBuilderGenerator.kt:426 */
18439         -
        #[allow(missing_docs)] // documentation missing in model
18440         -
                               /* ServerBuilderGenerator.kt:428 */
18441         -
        pub(crate) fn set_short(mut self, input: impl ::std::convert::Into<i16>) -> Self {
18442         -
            /* ServerBuilderGenerator.kt:429 */
18443         -
            self.short = Some(input.into());
18444         -
            self
18445         -
            /* ServerBuilderGenerator.kt:428 */
       18919  +
        /* ServerBuilderGenerator.kt:283 */
       18920  +
        fn build_enforcing_all_constraints(
       18921  +
            self,
       18922  +
        ) -> Result<crate::input::MalformedTimestampBodyHttpDateInput, ConstraintViolation>
       18923  +
        {
       18924  +
            /* ServerBuilderGenerator.kt:287 */
       18925  +
            Ok(
       18926  +
                /* ServerBuilderGenerator.kt:542 */
       18927  +
                crate::input::MalformedTimestampBodyHttpDateInput {
       18928  +
                    /* ServerBuilderGenerator.kt:546 */
       18929  +
                    timestamp: self
       18930  +
                        .timestamp
       18931  +
                        /* ServerBuilderGenerator.kt:569 */
       18932  +
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
       18933  +
                    /* ServerBuilderGenerator.kt:542 */
       18934  +
                }, /* ServerBuilderGenerator.kt:287 */
       18935  +
            )
       18936  +
            /* ServerBuilderGenerator.kt:283 */
18446  18937   
        }
18447         -
        /* ServerBuilderGenerator.kt:331 */
18448         -
        #[allow(missing_docs)] // documentation missing in model
18449         -
                               /* ServerBuilderGenerator.kt:343 */
18450         -
        pub fn integer(mut self, input: i32) -> Self {
18451         -
            /* ServerBuilderGenerator.kt:344 */
18452         -
            self.integer =
18453         -
                /* ServerBuilderGenerator.kt:345 */Some(
18454         -
                    /* ServerBuilderGenerator.kt:376 */input
18455         -
                /* ServerBuilderGenerator.kt:345 */)
18456         -
            /* ServerBuilderGenerator.kt:344 */;
18457         -
            self
18458         -
            /* ServerBuilderGenerator.kt:343 */
       18938  +
        /* ServerBuilderGenerator.kt:215 */
       18939  +
    }
       18940  +
       18941  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       18942  +
}
       18943  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedContentTypeWithoutBodyInput`](crate::input::MalformedContentTypeWithoutBodyInput).
       18944  +
pub mod malformed_content_type_without_body_input {
       18945  +
       18946  +
    /* ServerBuilderGenerator.kt:461 */
       18947  +
    impl ::std::convert::From<Builder> for crate::input::MalformedContentTypeWithoutBodyInput {
       18948  +
        fn from(builder: Builder) -> Self {
       18949  +
            builder.build()
       18950  +
        }
       18951  +
    }
       18952  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedContentTypeWithoutBodyInput`](crate::input::MalformedContentTypeWithoutBodyInput).
       18953  +
    /* RustType.kt:534 */
       18954  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       18955  +
    /* ServerBuilderGenerator.kt:211 */
       18956  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       18957  +
    /* ServerBuilderGenerator.kt:215 */
       18958  +
    impl Builder {
       18959  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedContentTypeWithoutBodyInput`](crate::input::MalformedContentTypeWithoutBodyInput).
       18960  +
        /* ServerBuilderGenerator.kt:271 */
       18961  +
        pub fn build(self) -> crate::input::MalformedContentTypeWithoutBodyInput {
       18962  +
            self.build_enforcing_all_constraints()
       18963  +
        }
       18964  +
        /* ServerBuilderGenerator.kt:283 */
       18965  +
        fn build_enforcing_all_constraints(
       18966  +
            self,
       18967  +
        ) -> crate::input::MalformedContentTypeWithoutBodyInput {
       18968  +
            /* ServerBuilderGenerator.kt:542 */
       18969  +
            crate::input::MalformedContentTypeWithoutBodyInput {
       18970  +
            /* ServerBuilderGenerator.kt:542 */}
       18971  +
            /* ServerBuilderGenerator.kt:283 */
       18972  +
        }
       18973  +
        /* ServerBuilderGenerator.kt:215 */
       18974  +
    }
       18975  +
       18976  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       18977  +
}
       18978  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedContentTypeWithoutBodyEmptyInputInput`](crate::input::MalformedContentTypeWithoutBodyEmptyInputInput).
       18979  +
pub mod malformed_content_type_without_body_empty_input_input {
       18980  +
       18981  +
    /* ServerBuilderGenerator.kt:461 */
       18982  +
    impl ::std::convert::From<Builder>
       18983  +
        for crate::input::MalformedContentTypeWithoutBodyEmptyInputInput
       18984  +
    {
       18985  +
        fn from(builder: Builder) -> Self {
       18986  +
            builder.build()
18459  18987   
        }
18460         -
        /* ServerBuilderGenerator.kt:426 */
18461         -
        #[allow(missing_docs)] // documentation missing in model
18462         -
                               /* ServerBuilderGenerator.kt:428 */
18463         -
        pub(crate) fn set_integer(mut self, input: impl ::std::convert::Into<i32>) -> Self {
18464         -
            /* ServerBuilderGenerator.kt:429 */
18465         -
            self.integer = Some(input.into());
18466         -
            self
18467         -
            /* ServerBuilderGenerator.kt:428 */
18468  18988   
    }
       18989  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedContentTypeWithoutBodyEmptyInputInput`](crate::input::MalformedContentTypeWithoutBodyEmptyInputInput).
       18990  +
    /* RustType.kt:534 */
       18991  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       18992  +
    /* ServerBuilderGenerator.kt:211 */
       18993  +
    pub struct Builder {
       18994  +
        /* ServerBuilderGenerator.kt:308 */
       18995  +
        pub(crate) header: ::std::option::Option<::std::string::String>,
       18996  +
        /* ServerBuilderGenerator.kt:211 */
       18997  +
    }
       18998  +
    /* ServerBuilderGenerator.kt:215 */
       18999  +
    impl Builder {
18469  19000   
        /* ServerBuilderGenerator.kt:331 */
18470  19001   
        #[allow(missing_docs)] // documentation missing in model
18471  19002   
                               /* ServerBuilderGenerator.kt:343 */
18472         -
        pub fn long(mut self, input: i64) -> Self {
       19003  +
        pub fn header(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
18473  19004   
            /* ServerBuilderGenerator.kt:344 */
18474         -
            self.long =
18475         -
                /* ServerBuilderGenerator.kt:345 */Some(
       19005  +
            self.header =
18476  19006   
                /* ServerBuilderGenerator.kt:376 */input
18477         -
                /* ServerBuilderGenerator.kt:345 */)
18478  19007   
            /* ServerBuilderGenerator.kt:344 */;
18479  19008   
            self
18480  19009   
            /* ServerBuilderGenerator.kt:343 */
18481  19010   
        }
18482  19011   
        /* ServerBuilderGenerator.kt:426 */
18483  19012   
        #[allow(missing_docs)] // documentation missing in model
18484  19013   
                               /* ServerBuilderGenerator.kt:428 */
18485         -
        pub(crate) fn set_long(mut self, input: impl ::std::convert::Into<i64>) -> Self {
       19014  +
        pub(crate) fn set_header(
       19015  +
            mut self,
       19016  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       19017  +
        ) -> Self {
18486  19018   
            /* ServerBuilderGenerator.kt:429 */
18487         -
            self.long = Some(input.into());
       19019  +
            self.header = input.map(|v| v.into());
18488  19020   
            self
18489  19021   
            /* ServerBuilderGenerator.kt:428 */
18490  19022   
        }
       19023  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedContentTypeWithoutBodyEmptyInputInput`](crate::input::MalformedContentTypeWithoutBodyEmptyInputInput).
       19024  +
        /* ServerBuilderGenerator.kt:271 */
       19025  +
        pub fn build(self) -> crate::input::MalformedContentTypeWithoutBodyEmptyInputInput {
       19026  +
            self.build_enforcing_all_constraints()
       19027  +
        }
       19028  +
        /* ServerBuilderGenerator.kt:283 */
       19029  +
        fn build_enforcing_all_constraints(
       19030  +
            self,
       19031  +
        ) -> crate::input::MalformedContentTypeWithoutBodyEmptyInputInput {
       19032  +
            /* ServerBuilderGenerator.kt:542 */
       19033  +
            crate::input::MalformedContentTypeWithoutBodyEmptyInputInput {
       19034  +
                /* ServerBuilderGenerator.kt:546 */
       19035  +
                header: self.header,
       19036  +
                /* ServerBuilderGenerator.kt:542 */
       19037  +
            }
       19038  +
            /* ServerBuilderGenerator.kt:283 */
       19039  +
        }
       19040  +
        /* ServerBuilderGenerator.kt:215 */
       19041  +
    }
       19042  +
       19043  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19044  +
}
       19045  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedContentTypeWithBodyInput`](crate::input::MalformedContentTypeWithBodyInput).
       19046  +
pub mod malformed_content_type_with_body_input {
       19047  +
       19048  +
    /* ServerBuilderGenerator.kt:461 */
       19049  +
    impl ::std::convert::From<Builder> for crate::input::MalformedContentTypeWithBodyInput {
       19050  +
        fn from(builder: Builder) -> Self {
       19051  +
            builder.build()
       19052  +
        }
       19053  +
    }
       19054  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedContentTypeWithBodyInput`](crate::input::MalformedContentTypeWithBodyInput).
       19055  +
    /* RustType.kt:534 */
       19056  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19057  +
    /* ServerBuilderGenerator.kt:211 */
       19058  +
    pub struct Builder {
       19059  +
        /* ServerBuilderGenerator.kt:308 */
       19060  +
        pub(crate) hi: ::std::option::Option<::std::string::String>,
       19061  +
        /* ServerBuilderGenerator.kt:211 */
       19062  +
    }
       19063  +
    /* ServerBuilderGenerator.kt:215 */
       19064  +
    impl Builder {
18491  19065   
        /* ServerBuilderGenerator.kt:331 */
18492  19066   
        #[allow(missing_docs)] // documentation missing in model
18493  19067   
                               /* ServerBuilderGenerator.kt:343 */
18494         -
        pub fn float(mut self, input: f32) -> Self {
       19068  +
        pub fn hi(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
18495  19069   
            /* ServerBuilderGenerator.kt:344 */
18496         -
            self.float =
18497         -
                /* ServerBuilderGenerator.kt:345 */Some(
       19070  +
            self.hi =
18498  19071   
                /* ServerBuilderGenerator.kt:376 */input
18499         -
                /* ServerBuilderGenerator.kt:345 */)
18500  19072   
            /* ServerBuilderGenerator.kt:344 */;
18501  19073   
            self
18502  19074   
            /* ServerBuilderGenerator.kt:343 */
18503  19075   
        }
18504  19076   
        /* ServerBuilderGenerator.kt:426 */
18505  19077   
        #[allow(missing_docs)] // documentation missing in model
18506  19078   
                               /* ServerBuilderGenerator.kt:428 */
18507         -
        pub(crate) fn set_float(mut self, input: impl ::std::convert::Into<f32>) -> Self {
       19079  +
        pub(crate) fn set_hi(
       19080  +
            mut self,
       19081  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       19082  +
        ) -> Self {
18508  19083   
            /* ServerBuilderGenerator.kt:429 */
18509         -
            self.float = Some(input.into());
       19084  +
            self.hi = input.map(|v| v.into());
18510  19085   
            self
18511  19086   
            /* ServerBuilderGenerator.kt:428 */
18512  19087   
        }
       19088  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedContentTypeWithBodyInput`](crate::input::MalformedContentTypeWithBodyInput).
       19089  +
        /* ServerBuilderGenerator.kt:271 */
       19090  +
        pub fn build(self) -> crate::input::MalformedContentTypeWithBodyInput {
       19091  +
            self.build_enforcing_all_constraints()
       19092  +
        }
       19093  +
        /* ServerBuilderGenerator.kt:283 */
       19094  +
        fn build_enforcing_all_constraints(
       19095  +
            self,
       19096  +
        ) -> crate::input::MalformedContentTypeWithBodyInput {
       19097  +
            /* ServerBuilderGenerator.kt:542 */
       19098  +
            crate::input::MalformedContentTypeWithBodyInput {
       19099  +
                /* ServerBuilderGenerator.kt:546 */
       19100  +
                hi: self.hi,
       19101  +
                /* ServerBuilderGenerator.kt:542 */
       19102  +
            }
       19103  +
            /* ServerBuilderGenerator.kt:283 */
       19104  +
        }
       19105  +
        /* ServerBuilderGenerator.kt:215 */
       19106  +
    }
       19107  +
       19108  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19109  +
}
       19110  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedContentTypeWithPayloadInput`](crate::input::MalformedContentTypeWithPayloadInput).
       19111  +
pub mod malformed_content_type_with_payload_input {
       19112  +
       19113  +
    /* ServerBuilderGenerator.kt:461 */
       19114  +
    impl ::std::convert::From<Builder> for crate::input::MalformedContentTypeWithPayloadInput {
       19115  +
        fn from(builder: Builder) -> Self {
       19116  +
            builder.build()
       19117  +
        }
       19118  +
    }
       19119  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedContentTypeWithPayloadInput`](crate::input::MalformedContentTypeWithPayloadInput).
       19120  +
    /* RustType.kt:534 */
       19121  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19122  +
    /* ServerBuilderGenerator.kt:211 */
       19123  +
    pub struct Builder {
       19124  +
        /* ServerBuilderGenerator.kt:308 */
       19125  +
        pub(crate) payload: ::std::option::Option<::aws_smithy_types::Blob>,
       19126  +
        /* ServerBuilderGenerator.kt:211 */
       19127  +
    }
       19128  +
    /* ServerBuilderGenerator.kt:215 */
       19129  +
    impl Builder {
18513  19130   
        /* ServerBuilderGenerator.kt:331 */
18514  19131   
        #[allow(missing_docs)] // documentation missing in model
18515  19132   
                               /* ServerBuilderGenerator.kt:343 */
18516         -
        pub fn double(mut self, input: f64) -> Self {
       19133  +
        pub fn payload(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
18517  19134   
            /* ServerBuilderGenerator.kt:344 */
18518         -
            self.double =
18519         -
                /* ServerBuilderGenerator.kt:345 */Some(
       19135  +
            self.payload =
18520  19136   
                /* ServerBuilderGenerator.kt:376 */input
18521         -
                /* ServerBuilderGenerator.kt:345 */)
18522  19137   
            /* ServerBuilderGenerator.kt:344 */;
18523  19138   
            self
18524  19139   
            /* ServerBuilderGenerator.kt:343 */
18525  19140   
        }
18526  19141   
        /* ServerBuilderGenerator.kt:426 */
18527  19142   
        #[allow(missing_docs)] // documentation missing in model
18528  19143   
                               /* ServerBuilderGenerator.kt:428 */
18529         -
        pub(crate) fn set_double(mut self, input: impl ::std::convert::Into<f64>) -> Self {
       19144  +
        pub(crate) fn set_payload(
       19145  +
            mut self,
       19146  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
       19147  +
        ) -> Self {
18530  19148   
            /* ServerBuilderGenerator.kt:429 */
18531         -
            self.double = Some(input.into());
       19149  +
            self.payload = input.map(|v| v.into());
18532  19150   
            self
18533  19151   
            /* ServerBuilderGenerator.kt:428 */
18534  19152   
        }
18535         -
        /// /* ServerBuilderGenerator.kt:331 */Serialized in the path as true or false.
18536         -
        /* ServerBuilderGenerator.kt:343 */
18537         -
        pub fn boolean(mut self, input: bool) -> Self {
18538         -
            /* ServerBuilderGenerator.kt:344 */
18539         -
            self.boolean =
18540         -
                /* ServerBuilderGenerator.kt:345 */Some(
18541         -
                    /* ServerBuilderGenerator.kt:376 */input
18542         -
                /* ServerBuilderGenerator.kt:345 */)
18543         -
            /* ServerBuilderGenerator.kt:344 */;
18544         -
            self
18545         -
            /* ServerBuilderGenerator.kt:343 */
       19153  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedContentTypeWithPayloadInput`](crate::input::MalformedContentTypeWithPayloadInput).
       19154  +
        /* ServerBuilderGenerator.kt:271 */
       19155  +
        pub fn build(self) -> crate::input::MalformedContentTypeWithPayloadInput {
       19156  +
            self.build_enforcing_all_constraints()
18546  19157   
        }
18547         -
        /// /* ServerBuilderGenerator.kt:426 */Serialized in the path as true or false.
18548         -
        /* ServerBuilderGenerator.kt:428 */
18549         -
        pub(crate) fn set_boolean(mut self, input: impl ::std::convert::Into<bool>) -> Self {
18550         -
            /* ServerBuilderGenerator.kt:429 */
18551         -
            self.boolean = Some(input.into());
18552         -
            self
18553         -
            /* ServerBuilderGenerator.kt:428 */
       19158  +
        /* ServerBuilderGenerator.kt:283 */
       19159  +
        fn build_enforcing_all_constraints(
       19160  +
            self,
       19161  +
        ) -> crate::input::MalformedContentTypeWithPayloadInput {
       19162  +
            /* ServerBuilderGenerator.kt:542 */
       19163  +
            crate::input::MalformedContentTypeWithPayloadInput {
       19164  +
                /* ServerBuilderGenerator.kt:546 */
       19165  +
                payload: self.payload,
       19166  +
                /* ServerBuilderGenerator.kt:542 */
18554  19167   
            }
18555         -
        /// /* ServerBuilderGenerator.kt:331 */Note that this member has no format, so it's serialized as an RFC 3399 date-time.
       19168  +
            /* ServerBuilderGenerator.kt:283 */
       19169  +
        }
       19170  +
        /* ServerBuilderGenerator.kt:215 */
       19171  +
    }
       19172  +
       19173  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19174  +
}
       19175  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedContentTypeWithGenericStringInput`](crate::input::MalformedContentTypeWithGenericStringInput).
       19176  +
pub mod malformed_content_type_with_generic_string_input {
       19177  +
       19178  +
    /* ServerBuilderGenerator.kt:461 */
       19179  +
    impl ::std::convert::From<Builder> for crate::input::MalformedContentTypeWithGenericStringInput {
       19180  +
        fn from(builder: Builder) -> Self {
       19181  +
            builder.build()
       19182  +
        }
       19183  +
    }
       19184  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedContentTypeWithGenericStringInput`](crate::input::MalformedContentTypeWithGenericStringInput).
       19185  +
    /* RustType.kt:534 */
       19186  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19187  +
    /* ServerBuilderGenerator.kt:211 */
       19188  +
    pub struct Builder {
       19189  +
        /* ServerBuilderGenerator.kt:308 */
       19190  +
        pub(crate) payload: ::std::option::Option<::std::string::String>,
       19191  +
        /* ServerBuilderGenerator.kt:211 */
       19192  +
    }
       19193  +
    /* ServerBuilderGenerator.kt:215 */
       19194  +
    impl Builder {
       19195  +
        /* ServerBuilderGenerator.kt:331 */
       19196  +
        #[allow(missing_docs)] // documentation missing in model
18556  19197   
                               /* ServerBuilderGenerator.kt:343 */
18557         -
        pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
       19198  +
        pub fn payload(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
18558  19199   
            /* ServerBuilderGenerator.kt:344 */
18559         -
            self.timestamp =
18560         -
                /* ServerBuilderGenerator.kt:345 */Some(
       19200  +
            self.payload =
18561  19201   
                /* ServerBuilderGenerator.kt:376 */input
18562         -
                /* ServerBuilderGenerator.kt:345 */)
18563  19202   
            /* ServerBuilderGenerator.kt:344 */;
18564  19203   
            self
18565  19204   
            /* ServerBuilderGenerator.kt:343 */
18566  19205   
        }
18567         -
        /// /* ServerBuilderGenerator.kt:426 */Note that this member has no format, so it's serialized as an RFC 3399 date-time.
       19206  +
        /* ServerBuilderGenerator.kt:426 */
       19207  +
        #[allow(missing_docs)] // documentation missing in model
18568  19208   
                               /* ServerBuilderGenerator.kt:428 */
18569         -
        pub(crate) fn set_timestamp(
       19209  +
        pub(crate) fn set_payload(
18570  19210   
            mut self,
18571         -
            input: impl ::std::convert::Into<::aws_smithy_types::DateTime>,
       19211  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
18572  19212   
        ) -> Self {
18573  19213   
            /* ServerBuilderGenerator.kt:429 */
18574         -
            self.timestamp = Some(input.into());
       19214  +
            self.payload = input.map(|v| v.into());
18575  19215   
            self
18576  19216   
            /* ServerBuilderGenerator.kt:428 */
18577  19217   
        }
18578         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`HttpRequestWithLabelsInput`](crate::input::HttpRequestWithLabelsInput).
18579         -
        /// /* ServerBuilderGenerator.kt:260 */
18580         -
        /// The builder fails to construct a [`HttpRequestWithLabelsInput`](crate::input::HttpRequestWithLabelsInput) if a [`ConstraintViolation`] occurs.
18581         -
        ///
18582         -
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
       19218  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedContentTypeWithGenericStringInput`](crate::input::MalformedContentTypeWithGenericStringInput).
       19219  +
        /* ServerBuilderGenerator.kt:271 */
       19220  +
        pub fn build(self) -> crate::input::MalformedContentTypeWithGenericStringInput {
       19221  +
            self.build_enforcing_all_constraints()
       19222  +
        }
       19223  +
        /* ServerBuilderGenerator.kt:283 */
       19224  +
        fn build_enforcing_all_constraints(
       19225  +
            self,
       19226  +
        ) -> crate::input::MalformedContentTypeWithGenericStringInput {
       19227  +
            /* ServerBuilderGenerator.kt:542 */
       19228  +
            crate::input::MalformedContentTypeWithGenericStringInput {
       19229  +
                /* ServerBuilderGenerator.kt:546 */
       19230  +
                payload: self.payload,
       19231  +
                /* ServerBuilderGenerator.kt:542 */
       19232  +
            }
       19233  +
            /* ServerBuilderGenerator.kt:283 */
       19234  +
        }
       19235  +
        /* ServerBuilderGenerator.kt:215 */
       19236  +
    }
       19237  +
       19238  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19239  +
}
       19240  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedAcceptWithBodyInput`](crate::input::MalformedAcceptWithBodyInput).
       19241  +
pub mod malformed_accept_with_body_input {
       19242  +
       19243  +
    /* ServerBuilderGenerator.kt:461 */
       19244  +
    impl ::std::convert::From<Builder> for crate::input::MalformedAcceptWithBodyInput {
       19245  +
        fn from(builder: Builder) -> Self {
       19246  +
            builder.build()
       19247  +
        }
       19248  +
    }
       19249  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedAcceptWithBodyInput`](crate::input::MalformedAcceptWithBodyInput).
       19250  +
    /* RustType.kt:534 */
       19251  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19252  +
    /* ServerBuilderGenerator.kt:211 */
       19253  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       19254  +
    /* ServerBuilderGenerator.kt:215 */
       19255  +
    impl Builder {
       19256  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedAcceptWithBodyInput`](crate::input::MalformedAcceptWithBodyInput).
       19257  +
        /* ServerBuilderGenerator.kt:271 */
       19258  +
        pub fn build(self) -> crate::input::MalformedAcceptWithBodyInput {
       19259  +
            self.build_enforcing_all_constraints()
       19260  +
        }
       19261  +
        /* ServerBuilderGenerator.kt:283 */
       19262  +
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedAcceptWithBodyInput {
       19263  +
            /* ServerBuilderGenerator.kt:542 */
       19264  +
            crate::input::MalformedAcceptWithBodyInput {
       19265  +
            /* ServerBuilderGenerator.kt:542 */}
       19266  +
            /* ServerBuilderGenerator.kt:283 */
       19267  +
        }
       19268  +
        /* ServerBuilderGenerator.kt:215 */
       19269  +
    }
       19270  +
       19271  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19272  +
}
       19273  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedAcceptWithPayloadInput`](crate::input::MalformedAcceptWithPayloadInput).
       19274  +
pub mod malformed_accept_with_payload_input {
       19275  +
       19276  +
    /* ServerBuilderGenerator.kt:461 */
       19277  +
    impl ::std::convert::From<Builder> for crate::input::MalformedAcceptWithPayloadInput {
       19278  +
        fn from(builder: Builder) -> Self {
       19279  +
            builder.build()
       19280  +
        }
       19281  +
    }
       19282  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedAcceptWithPayloadInput`](crate::input::MalformedAcceptWithPayloadInput).
       19283  +
    /* RustType.kt:534 */
       19284  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19285  +
    /* ServerBuilderGenerator.kt:211 */
       19286  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       19287  +
    /* ServerBuilderGenerator.kt:215 */
       19288  +
    impl Builder {
       19289  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedAcceptWithPayloadInput`](crate::input::MalformedAcceptWithPayloadInput).
       19290  +
        /* ServerBuilderGenerator.kt:271 */
       19291  +
        pub fn build(self) -> crate::input::MalformedAcceptWithPayloadInput {
       19292  +
            self.build_enforcing_all_constraints()
       19293  +
        }
       19294  +
        /* ServerBuilderGenerator.kt:283 */
       19295  +
        fn build_enforcing_all_constraints(self) -> crate::input::MalformedAcceptWithPayloadInput {
       19296  +
            /* ServerBuilderGenerator.kt:542 */
       19297  +
            crate::input::MalformedAcceptWithPayloadInput {
       19298  +
            /* ServerBuilderGenerator.kt:542 */}
       19299  +
            /* ServerBuilderGenerator.kt:283 */
       19300  +
        }
       19301  +
        /* ServerBuilderGenerator.kt:215 */
       19302  +
    }
       19303  +
       19304  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19305  +
}
       19306  +
/// /* ServerBuilderGenerator.kt:171 */See [`MalformedAcceptWithGenericStringInput`](crate::input::MalformedAcceptWithGenericStringInput).
       19307  +
pub mod malformed_accept_with_generic_string_input {
       19308  +
       19309  +
    /* ServerBuilderGenerator.kt:461 */
       19310  +
    impl ::std::convert::From<Builder> for crate::input::MalformedAcceptWithGenericStringInput {
       19311  +
        fn from(builder: Builder) -> Self {
       19312  +
            builder.build()
       19313  +
        }
       19314  +
    }
       19315  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MalformedAcceptWithGenericStringInput`](crate::input::MalformedAcceptWithGenericStringInput).
       19316  +
    /* RustType.kt:534 */
       19317  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19318  +
    /* ServerBuilderGenerator.kt:211 */
       19319  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       19320  +
    /* ServerBuilderGenerator.kt:215 */
       19321  +
    impl Builder {
       19322  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MalformedAcceptWithGenericStringInput`](crate::input::MalformedAcceptWithGenericStringInput).
18583  19323   
        /* ServerBuilderGenerator.kt:271 */
18584         -
        pub fn build(
18585         -
            self,
18586         -
        ) -> Result<crate::input::HttpRequestWithLabelsInput, ConstraintViolation> {
       19324  +
        pub fn build(self) -> crate::input::MalformedAcceptWithGenericStringInput {
18587  19325   
            self.build_enforcing_all_constraints()
18588  19326   
        }
18589  19327   
        /* ServerBuilderGenerator.kt:283 */
18590  19328   
        fn build_enforcing_all_constraints(
18591  19329   
            self,
18592         -
        ) -> Result<crate::input::HttpRequestWithLabelsInput, ConstraintViolation> {
18593         -
            /* ServerBuilderGenerator.kt:287 */
18594         -
            Ok(
18595         -
                /* ServerBuilderGenerator.kt:542 */
18596         -
                crate::input::HttpRequestWithLabelsInput {
18597         -
                    /* ServerBuilderGenerator.kt:546 */
18598         -
                    string: self
18599         -
                        .string
18600         -
                        /* ServerBuilderGenerator.kt:569 */
18601         -
                        .ok_or(ConstraintViolation::MissingString)?,
18602         -
                    /* ServerBuilderGenerator.kt:546 */
18603         -
                    short: self
18604         -
                        .short
18605         -
                        /* ServerBuilderGenerator.kt:569 */
18606         -
                        .ok_or(ConstraintViolation::MissingShort)?,
18607         -
                    /* ServerBuilderGenerator.kt:546 */
18608         -
                    integer: self
18609         -
                        .integer
18610         -
                        /* ServerBuilderGenerator.kt:569 */
18611         -
                        .ok_or(ConstraintViolation::MissingInteger)?,
18612         -
                    /* ServerBuilderGenerator.kt:546 */
18613         -
                    long: self
18614         -
                        .long
18615         -
                        /* ServerBuilderGenerator.kt:569 */
18616         -
                        .ok_or(ConstraintViolation::MissingLong)?,
18617         -
                    /* ServerBuilderGenerator.kt:546 */
18618         -
                    float: self
18619         -
                        .float
18620         -
                        /* ServerBuilderGenerator.kt:569 */
18621         -
                        .ok_or(ConstraintViolation::MissingFloat)?,
18622         -
                    /* ServerBuilderGenerator.kt:546 */
18623         -
                    double: self
18624         -
                        .double
18625         -
                        /* ServerBuilderGenerator.kt:569 */
18626         -
                        .ok_or(ConstraintViolation::MissingDouble)?,
18627         -
                    /* ServerBuilderGenerator.kt:546 */
18628         -
                    boolean: self
18629         -
                        .boolean
18630         -
                        /* ServerBuilderGenerator.kt:569 */
18631         -
                        .ok_or(ConstraintViolation::MissingBoolean)?,
18632         -
                    /* ServerBuilderGenerator.kt:546 */
18633         -
                    timestamp: self
18634         -
                        .timestamp
18635         -
                        /* ServerBuilderGenerator.kt:569 */
18636         -
                        .ok_or(ConstraintViolation::MissingTimestamp)?,
       19330  +
        ) -> crate::input::MalformedAcceptWithGenericStringInput {
18637  19331   
            /* ServerBuilderGenerator.kt:542 */
18638         -
                }, /* ServerBuilderGenerator.kt:287 */
18639         -
            )
       19332  +
            crate::input::MalformedAcceptWithGenericStringInput {
       19333  +
            /* ServerBuilderGenerator.kt:542 */}
18640  19334   
            /* ServerBuilderGenerator.kt:283 */
18641  19335   
        }
18642  19336   
        /* ServerBuilderGenerator.kt:215 */
18643  19337   
    }
18644  19338   
18645  19339   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
18646  19340   
}
18647         -
/// /* ServerBuilderGenerator.kt:171 */See [`MediaTypeHeaderInput`](crate::input::MediaTypeHeaderInput).
18648         -
pub mod media_type_header_input {
       19341  +
/// /* ServerBuilderGenerator.kt:171 */See [`TestBodyStructureInput`](crate::input::TestBodyStructureInput).
       19342  +
pub mod test_body_structure_input {
18649  19343   
18650  19344   
    /* ServerBuilderGenerator.kt:461 */
18651         -
    impl ::std::convert::From<Builder> for crate::input::MediaTypeHeaderInput {
       19345  +
    impl ::std::convert::From<Builder> for crate::input::TestBodyStructureInput {
18652  19346   
        fn from(builder: Builder) -> Self {
18653  19347   
            builder.build()
18654  19348   
        }
18655  19349   
    }
18656         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`MediaTypeHeaderInput`](crate::input::MediaTypeHeaderInput).
       19350  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestBodyStructureInput`](crate::input::TestBodyStructureInput).
18657  19351   
    /* RustType.kt:534 */
18658  19352   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
18659  19353   
    /* ServerBuilderGenerator.kt:211 */
18660  19354   
    pub struct Builder {
18661  19355   
        /* ServerBuilderGenerator.kt:308 */
18662         -
        pub(crate) json: ::std::option::Option<::std::string::String>,
       19356  +
        pub(crate) test_id: ::std::option::Option<::std::string::String>,
       19357  +
        /* ServerBuilderGenerator.kt:308 */
       19358  +
        pub(crate) test_config: ::std::option::Option<crate::model::TestConfig>,
18663  19359   
        /* ServerBuilderGenerator.kt:211 */
18664  19360   
    }
18665  19361   
    /* ServerBuilderGenerator.kt:215 */
18666  19362   
    impl Builder {
18667  19363   
        /* ServerBuilderGenerator.kt:331 */
18668  19364   
        #[allow(missing_docs)] // documentation missing in model
18669  19365   
                               /* ServerBuilderGenerator.kt:343 */
18670         -
        pub fn json(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       19366  +
        pub fn test_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
18671  19367   
            /* ServerBuilderGenerator.kt:344 */
18672         -
            self.json =
       19368  +
            self.test_id =
18673  19369   
                /* ServerBuilderGenerator.kt:376 */input
18674  19370   
            /* ServerBuilderGenerator.kt:344 */;
18675  19371   
            self
18676  19372   
            /* ServerBuilderGenerator.kt:343 */
18677  19373   
        }
18678  19374   
        /* ServerBuilderGenerator.kt:426 */
18679  19375   
        #[allow(missing_docs)] // documentation missing in model
18680  19376   
                               /* ServerBuilderGenerator.kt:428 */
18681         -
        pub(crate) fn set_json(
       19377  +
        pub(crate) fn set_test_id(
18682  19378   
            mut self,
18683  19379   
            input: Option<impl ::std::convert::Into<::std::string::String>>,
18684  19380   
        ) -> Self {
18685  19381   
            /* ServerBuilderGenerator.kt:429 */
18686         -
            self.json = input.map(|v| v.into());
       19382  +
            self.test_id = input.map(|v| v.into());
18687  19383   
            self
18688  19384   
            /* ServerBuilderGenerator.kt:428 */
18689  19385   
        }
18690         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`MediaTypeHeaderInput`](crate::input::MediaTypeHeaderInput).
       19386  +
        /* ServerBuilderGenerator.kt:331 */
       19387  +
        #[allow(missing_docs)] // documentation missing in model
       19388  +
                               /* ServerBuilderGenerator.kt:343 */
       19389  +
        pub fn test_config(
       19390  +
            mut self,
       19391  +
            input: ::std::option::Option<crate::model::TestConfig>,
       19392  +
        ) -> Self {
       19393  +
            /* ServerBuilderGenerator.kt:344 */
       19394  +
            self.test_config =
       19395  +
                /* ServerBuilderGenerator.kt:376 */input
       19396  +
            /* ServerBuilderGenerator.kt:344 */;
       19397  +
            self
       19398  +
            /* ServerBuilderGenerator.kt:343 */
       19399  +
        }
       19400  +
        /* ServerBuilderGenerator.kt:426 */
       19401  +
        #[allow(missing_docs)] // documentation missing in model
       19402  +
                               /* ServerBuilderGenerator.kt:428 */
       19403  +
        pub(crate) fn set_test_config(
       19404  +
            mut self,
       19405  +
            input: Option<impl ::std::convert::Into<crate::model::TestConfig>>,
       19406  +
        ) -> Self {
       19407  +
            /* ServerBuilderGenerator.kt:429 */
       19408  +
            self.test_config = input.map(|v| v.into());
       19409  +
            self
       19410  +
            /* ServerBuilderGenerator.kt:428 */
       19411  +
        }
       19412  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestBodyStructureInput`](crate::input::TestBodyStructureInput).
18691  19413   
        /* ServerBuilderGenerator.kt:271 */
18692         -
        pub fn build(self) -> crate::input::MediaTypeHeaderInput {
       19414  +
        pub fn build(self) -> crate::input::TestBodyStructureInput {
18693  19415   
            self.build_enforcing_all_constraints()
18694  19416   
        }
18695  19417   
        /* ServerBuilderGenerator.kt:283 */
18696         -
        fn build_enforcing_all_constraints(self) -> crate::input::MediaTypeHeaderInput {
       19418  +
        fn build_enforcing_all_constraints(self) -> crate::input::TestBodyStructureInput {
18697  19419   
            /* ServerBuilderGenerator.kt:542 */
18698         -
            crate::input::MediaTypeHeaderInput {
       19420  +
            crate::input::TestBodyStructureInput {
18699  19421   
                /* ServerBuilderGenerator.kt:546 */
18700         -
                json: self.json,
       19422  +
                test_id: self.test_id,
       19423  +
                /* ServerBuilderGenerator.kt:546 */
       19424  +
                test_config: self.test_config,
18701  19425   
                /* ServerBuilderGenerator.kt:542 */
18702  19426   
            }
18703  19427   
            /* ServerBuilderGenerator.kt:283 */
18704  19428   
        }
18705  19429   
        /* ServerBuilderGenerator.kt:215 */
18706  19430   
    }
18707  19431   
18708  19432   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
18709  19433   
}
18710         -
/// /* ServerBuilderGenerator.kt:171 */See [`TimestampFormatHeadersInput`](crate::input::TimestampFormatHeadersInput).
18711         -
pub mod timestamp_format_headers_input {
       19434  +
/// /* ServerBuilderGenerator.kt:171 */See [`TestPayloadStructureInput`](crate::input::TestPayloadStructureInput).
       19435  +
pub mod test_payload_structure_input {
18712  19436   
18713  19437   
    /* ServerBuilderGenerator.kt:461 */
18714         -
    impl ::std::convert::From<Builder> for crate::input::TimestampFormatHeadersInput {
       19438  +
    impl ::std::convert::From<Builder> for crate::input::TestPayloadStructureInput {
18715  19439   
        fn from(builder: Builder) -> Self {
18716  19440   
            builder.build()
18717  19441   
        }
18718  19442   
    }
18719         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TimestampFormatHeadersInput`](crate::input::TimestampFormatHeadersInput).
       19443  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestPayloadStructureInput`](crate::input::TestPayloadStructureInput).
18720  19444   
    /* RustType.kt:534 */
18721  19445   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
18722  19446   
    /* ServerBuilderGenerator.kt:211 */
18723  19447   
    pub struct Builder {
18724  19448   
        /* ServerBuilderGenerator.kt:308 */
18725         -
        pub(crate) member_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
18726         -
        /* ServerBuilderGenerator.kt:308 */
18727         -
        pub(crate) member_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
18728         -
        /* ServerBuilderGenerator.kt:308 */
18729         -
        pub(crate) member_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
18730         -
        /* ServerBuilderGenerator.kt:308 */
18731         -
        pub(crate) default_format: ::std::option::Option<::aws_smithy_types::DateTime>,
18732         -
        /* ServerBuilderGenerator.kt:308 */
18733         -
        pub(crate) target_epoch_seconds: ::std::option::Option<::aws_smithy_types::DateTime>,
18734         -
        /* ServerBuilderGenerator.kt:308 */
18735         -
        pub(crate) target_http_date: ::std::option::Option<::aws_smithy_types::DateTime>,
       19449  +
        pub(crate) test_id: ::std::option::Option<::std::string::String>,
18736  19450   
        /* ServerBuilderGenerator.kt:308 */
18737         -
        pub(crate) target_date_time: ::std::option::Option<::aws_smithy_types::DateTime>,
       19451  +
        pub(crate) payload_config: ::std::option::Option<crate::model::PayloadConfig>,
18738  19452   
        /* ServerBuilderGenerator.kt:211 */
18739  19453   
    }
18740  19454   
    /* ServerBuilderGenerator.kt:215 */
18741  19455   
    impl Builder {
18742  19456   
        /* ServerBuilderGenerator.kt:331 */
18743  19457   
        #[allow(missing_docs)] // documentation missing in model
18744  19458   
                               /* ServerBuilderGenerator.kt:343 */
18745         -
        pub fn member_epoch_seconds(
18746         -
            mut self,
18747         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
18748         -
        ) -> Self {
       19459  +
        pub fn test_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
18749  19460   
            /* ServerBuilderGenerator.kt:344 */
18750         -
            self.member_epoch_seconds =
       19461  +
            self.test_id =
18751  19462   
                /* ServerBuilderGenerator.kt:376 */input
18752  19463   
            /* ServerBuilderGenerator.kt:344 */;
18753  19464   
            self
18754  19465   
            /* ServerBuilderGenerator.kt:343 */
18755  19466   
        }
18756  19467   
        /* ServerBuilderGenerator.kt:426 */
18757  19468   
        #[allow(missing_docs)] // documentation missing in model
18758  19469   
                               /* ServerBuilderGenerator.kt:428 */
18759         -
        pub(crate) fn set_member_epoch_seconds(
       19470  +
        pub(crate) fn set_test_id(
18760  19471   
            mut self,
18761         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       19472  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
18762  19473   
        ) -> Self {
18763  19474   
            /* ServerBuilderGenerator.kt:429 */
18764         -
            self.member_epoch_seconds = input.map(|v| v.into());
       19475  +
            self.test_id = input.map(|v| v.into());
18765  19476   
            self
18766  19477   
            /* ServerBuilderGenerator.kt:428 */
18767  19478   
        }
18768  19479   
        /* ServerBuilderGenerator.kt:331 */
18769  19480   
        #[allow(missing_docs)] // documentation missing in model
18770  19481   
                               /* ServerBuilderGenerator.kt:343 */
18771         -
        pub fn member_http_date(
       19482  +
        pub fn payload_config(
18772  19483   
            mut self,
18773         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
       19484  +
            input: ::std::option::Option<crate::model::PayloadConfig>,
18774  19485   
        ) -> Self {
18775  19486   
            /* ServerBuilderGenerator.kt:344 */
18776         -
            self.member_http_date =
       19487  +
            self.payload_config =
18777  19488   
                /* ServerBuilderGenerator.kt:376 */input
18778  19489   
            /* ServerBuilderGenerator.kt:344 */;
18779  19490   
            self
18780  19491   
            /* ServerBuilderGenerator.kt:343 */
18781  19492   
        }
18782  19493   
        /* ServerBuilderGenerator.kt:426 */
18783  19494   
        #[allow(missing_docs)] // documentation missing in model
18784  19495   
                               /* ServerBuilderGenerator.kt:428 */
18785         -
        pub(crate) fn set_member_http_date(
       19496  +
        pub(crate) fn set_payload_config(
18786  19497   
            mut self,
18787         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       19498  +
            input: Option<impl ::std::convert::Into<crate::model::PayloadConfig>>,
18788  19499   
        ) -> Self {
18789  19500   
            /* ServerBuilderGenerator.kt:429 */
18790         -
            self.member_http_date = input.map(|v| v.into());
       19501  +
            self.payload_config = input.map(|v| v.into());
18791  19502   
            self
18792  19503   
            /* ServerBuilderGenerator.kt:428 */
18793  19504   
        }
       19505  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestPayloadStructureInput`](crate::input::TestPayloadStructureInput).
       19506  +
        /* ServerBuilderGenerator.kt:271 */
       19507  +
        pub fn build(self) -> crate::input::TestPayloadStructureInput {
       19508  +
            self.build_enforcing_all_constraints()
       19509  +
        }
       19510  +
        /* ServerBuilderGenerator.kt:283 */
       19511  +
        fn build_enforcing_all_constraints(self) -> crate::input::TestPayloadStructureInput {
       19512  +
            /* ServerBuilderGenerator.kt:542 */
       19513  +
            crate::input::TestPayloadStructureInput {
       19514  +
                /* ServerBuilderGenerator.kt:546 */
       19515  +
                test_id: self.test_id,
       19516  +
                /* ServerBuilderGenerator.kt:546 */
       19517  +
                payload_config: self.payload_config,
       19518  +
                /* ServerBuilderGenerator.kt:542 */
       19519  +
            }
       19520  +
            /* ServerBuilderGenerator.kt:283 */
       19521  +
        }
       19522  +
        /* ServerBuilderGenerator.kt:215 */
       19523  +
    }
       19524  +
       19525  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19526  +
}
       19527  +
/// /* ServerBuilderGenerator.kt:171 */See [`TestPayloadBlobInput`](crate::input::TestPayloadBlobInput).
       19528  +
pub mod test_payload_blob_input {
       19529  +
       19530  +
    /* ServerBuilderGenerator.kt:461 */
       19531  +
    impl ::std::convert::From<Builder> for crate::input::TestPayloadBlobInput {
       19532  +
        fn from(builder: Builder) -> Self {
       19533  +
            builder.build()
       19534  +
        }
       19535  +
    }
       19536  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestPayloadBlobInput`](crate::input::TestPayloadBlobInput).
       19537  +
    /* RustType.kt:534 */
       19538  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19539  +
    /* ServerBuilderGenerator.kt:211 */
       19540  +
    pub struct Builder {
       19541  +
        /* ServerBuilderGenerator.kt:308 */
       19542  +
        pub(crate) content_type: ::std::option::Option<::std::string::String>,
       19543  +
        /* ServerBuilderGenerator.kt:308 */
       19544  +
        pub(crate) data: ::std::option::Option<::aws_smithy_types::Blob>,
       19545  +
        /* ServerBuilderGenerator.kt:211 */
       19546  +
    }
       19547  +
    /* ServerBuilderGenerator.kt:215 */
       19548  +
    impl Builder {
18794  19549   
        /* ServerBuilderGenerator.kt:331 */
18795  19550   
        #[allow(missing_docs)] // documentation missing in model
18796  19551   
                               /* ServerBuilderGenerator.kt:343 */
18797         -
        pub fn member_date_time(
18798         -
            mut self,
18799         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
18800         -
        ) -> Self {
       19552  +
        pub fn content_type(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
18801  19553   
            /* ServerBuilderGenerator.kt:344 */
18802         -
            self.member_date_time =
       19554  +
            self.content_type =
18803  19555   
                /* ServerBuilderGenerator.kt:376 */input
18804  19556   
            /* ServerBuilderGenerator.kt:344 */;
18805  19557   
            self
18806  19558   
            /* ServerBuilderGenerator.kt:343 */
18807  19559   
        }
18808  19560   
        /* ServerBuilderGenerator.kt:426 */
18809  19561   
        #[allow(missing_docs)] // documentation missing in model
18810  19562   
                               /* ServerBuilderGenerator.kt:428 */
18811         -
        pub(crate) fn set_member_date_time(
       19563  +
        pub(crate) fn set_content_type(
18812  19564   
            mut self,
18813         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       19565  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
18814  19566   
        ) -> Self {
18815  19567   
            /* ServerBuilderGenerator.kt:429 */
18816         -
            self.member_date_time = input.map(|v| v.into());
       19568  +
            self.content_type = input.map(|v| v.into());
18817  19569   
            self
18818  19570   
            /* ServerBuilderGenerator.kt:428 */
18819  19571   
        }
18820  19572   
        /* ServerBuilderGenerator.kt:331 */
18821  19573   
        #[allow(missing_docs)] // documentation missing in model
18822  19574   
                               /* ServerBuilderGenerator.kt:343 */
18823         -
        pub fn default_format(
18824         -
            mut self,
18825         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
18826         -
        ) -> Self {
       19575  +
        pub fn data(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
18827  19576   
            /* ServerBuilderGenerator.kt:344 */
18828         -
            self.default_format =
       19577  +
            self.data =
18829  19578   
                /* ServerBuilderGenerator.kt:376 */input
18830  19579   
            /* ServerBuilderGenerator.kt:344 */;
18831  19580   
            self
18832  19581   
            /* ServerBuilderGenerator.kt:343 */
18833  19582   
        }
18834  19583   
        /* ServerBuilderGenerator.kt:426 */
18835  19584   
        #[allow(missing_docs)] // documentation missing in model
18836  19585   
                               /* ServerBuilderGenerator.kt:428 */
18837         -
        pub(crate) fn set_default_format(
       19586  +
        pub(crate) fn set_data(
18838  19587   
            mut self,
18839         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       19588  +
            input: Option<impl ::std::convert::Into<::aws_smithy_types::Blob>>,
18840  19589   
        ) -> Self {
18841  19590   
            /* ServerBuilderGenerator.kt:429 */
18842         -
            self.default_format = input.map(|v| v.into());
       19591  +
            self.data = input.map(|v| v.into());
18843  19592   
            self
18844  19593   
            /* ServerBuilderGenerator.kt:428 */
18845  19594   
        }
18846         -
        /* ServerBuilderGenerator.kt:331 */
18847         -
        #[allow(missing_docs)] // documentation missing in model
18848         -
                               /* ServerBuilderGenerator.kt:343 */
18849         -
        pub fn target_epoch_seconds(
18850         -
            mut self,
18851         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
18852         -
        ) -> Self {
18853         -
            /* ServerBuilderGenerator.kt:344 */
18854         -
            self.target_epoch_seconds =
18855         -
                /* ServerBuilderGenerator.kt:376 */input
18856         -
            /* ServerBuilderGenerator.kt:344 */;
18857         -
            self
18858         -
            /* ServerBuilderGenerator.kt:343 */
       19595  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestPayloadBlobInput`](crate::input::TestPayloadBlobInput).
       19596  +
        /* ServerBuilderGenerator.kt:271 */
       19597  +
        pub fn build(self) -> crate::input::TestPayloadBlobInput {
       19598  +
            self.build_enforcing_all_constraints()
       19599  +
        }
       19600  +
        /* ServerBuilderGenerator.kt:283 */
       19601  +
        fn build_enforcing_all_constraints(self) -> crate::input::TestPayloadBlobInput {
       19602  +
            /* ServerBuilderGenerator.kt:542 */
       19603  +
            crate::input::TestPayloadBlobInput {
       19604  +
                /* ServerBuilderGenerator.kt:546 */
       19605  +
                content_type: self.content_type,
       19606  +
                /* ServerBuilderGenerator.kt:546 */
       19607  +
                data: self.data,
       19608  +
                /* ServerBuilderGenerator.kt:542 */
       19609  +
            }
       19610  +
            /* ServerBuilderGenerator.kt:283 */
       19611  +
        }
       19612  +
        /* ServerBuilderGenerator.kt:215 */
       19613  +
    }
       19614  +
       19615  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19616  +
}
       19617  +
/// /* ServerBuilderGenerator.kt:171 */See [`TestGetNoPayloadInput`](crate::input::TestGetNoPayloadInput).
       19618  +
pub mod test_get_no_payload_input {
       19619  +
       19620  +
    /* ServerBuilderGenerator.kt:461 */
       19621  +
    impl ::std::convert::From<Builder> for crate::input::TestGetNoPayloadInput {
       19622  +
        fn from(builder: Builder) -> Self {
       19623  +
            builder.build()
       19624  +
        }
18859  19625   
    }
18860         -
        /* ServerBuilderGenerator.kt:426 */
18861         -
        #[allow(missing_docs)] // documentation missing in model
18862         -
                               /* ServerBuilderGenerator.kt:428 */
18863         -
        pub(crate) fn set_target_epoch_seconds(
18864         -
            mut self,
18865         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
18866         -
        ) -> Self {
18867         -
            /* ServerBuilderGenerator.kt:429 */
18868         -
            self.target_epoch_seconds = input.map(|v| v.into());
18869         -
            self
18870         -
            /* ServerBuilderGenerator.kt:428 */
       19626  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestGetNoPayloadInput`](crate::input::TestGetNoPayloadInput).
       19627  +
    /* RustType.kt:534 */
       19628  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19629  +
    /* ServerBuilderGenerator.kt:211 */
       19630  +
    pub struct Builder {
       19631  +
        /* ServerBuilderGenerator.kt:308 */
       19632  +
        pub(crate) test_id: ::std::option::Option<::std::string::String>,
       19633  +
        /* ServerBuilderGenerator.kt:211 */
18871  19634   
    }
       19635  +
    /* ServerBuilderGenerator.kt:215 */
       19636  +
    impl Builder {
18872  19637   
        /* ServerBuilderGenerator.kt:331 */
18873  19638   
        #[allow(missing_docs)] // documentation missing in model
18874  19639   
                               /* ServerBuilderGenerator.kt:343 */
18875         -
        pub fn target_http_date(
18876         -
            mut self,
18877         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
18878         -
        ) -> Self {
       19640  +
        pub fn test_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
18879  19641   
            /* ServerBuilderGenerator.kt:344 */
18880         -
            self.target_http_date =
       19642  +
            self.test_id =
18881  19643   
                /* ServerBuilderGenerator.kt:376 */input
18882  19644   
            /* ServerBuilderGenerator.kt:344 */;
18883  19645   
            self
18884  19646   
            /* ServerBuilderGenerator.kt:343 */
18885  19647   
        }
18886  19648   
        /* ServerBuilderGenerator.kt:426 */
18887  19649   
        #[allow(missing_docs)] // documentation missing in model
18888  19650   
                               /* ServerBuilderGenerator.kt:428 */
18889         -
        pub(crate) fn set_target_http_date(
       19651  +
        pub(crate) fn set_test_id(
18890  19652   
            mut self,
18891         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       19653  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
18892  19654   
        ) -> Self {
18893  19655   
            /* ServerBuilderGenerator.kt:429 */
18894         -
            self.target_http_date = input.map(|v| v.into());
       19656  +
            self.test_id = input.map(|v| v.into());
18895  19657   
            self
18896  19658   
            /* ServerBuilderGenerator.kt:428 */
18897  19659   
        }
       19660  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestGetNoPayloadInput`](crate::input::TestGetNoPayloadInput).
       19661  +
        /* ServerBuilderGenerator.kt:271 */
       19662  +
        pub fn build(self) -> crate::input::TestGetNoPayloadInput {
       19663  +
            self.build_enforcing_all_constraints()
       19664  +
        }
       19665  +
        /* ServerBuilderGenerator.kt:283 */
       19666  +
        fn build_enforcing_all_constraints(self) -> crate::input::TestGetNoPayloadInput {
       19667  +
            /* ServerBuilderGenerator.kt:542 */
       19668  +
            crate::input::TestGetNoPayloadInput {
       19669  +
                /* ServerBuilderGenerator.kt:546 */
       19670  +
                test_id: self.test_id,
       19671  +
                /* ServerBuilderGenerator.kt:542 */
       19672  +
            }
       19673  +
            /* ServerBuilderGenerator.kt:283 */
       19674  +
        }
       19675  +
        /* ServerBuilderGenerator.kt:215 */
       19676  +
    }
       19677  +
       19678  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19679  +
}
       19680  +
/// /* ServerBuilderGenerator.kt:171 */See [`TestPostNoPayloadInput`](crate::input::TestPostNoPayloadInput).
       19681  +
pub mod test_post_no_payload_input {
       19682  +
       19683  +
    /* ServerBuilderGenerator.kt:461 */
       19684  +
    impl ::std::convert::From<Builder> for crate::input::TestPostNoPayloadInput {
       19685  +
        fn from(builder: Builder) -> Self {
       19686  +
            builder.build()
       19687  +
        }
       19688  +
    }
       19689  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestPostNoPayloadInput`](crate::input::TestPostNoPayloadInput).
       19690  +
    /* RustType.kt:534 */
       19691  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19692  +
    /* ServerBuilderGenerator.kt:211 */
       19693  +
    pub struct Builder {
       19694  +
        /* ServerBuilderGenerator.kt:308 */
       19695  +
        pub(crate) test_id: ::std::option::Option<::std::string::String>,
       19696  +
        /* ServerBuilderGenerator.kt:211 */
       19697  +
    }
       19698  +
    /* ServerBuilderGenerator.kt:215 */
       19699  +
    impl Builder {
18898  19700   
        /* ServerBuilderGenerator.kt:331 */
18899  19701   
        #[allow(missing_docs)] // documentation missing in model
18900  19702   
                               /* ServerBuilderGenerator.kt:343 */
18901         -
        pub fn target_date_time(
18902         -
            mut self,
18903         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
18904         -
        ) -> Self {
       19703  +
        pub fn test_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
18905  19704   
            /* ServerBuilderGenerator.kt:344 */
18906         -
            self.target_date_time =
       19705  +
            self.test_id =
18907  19706   
                /* ServerBuilderGenerator.kt:376 */input
18908  19707   
            /* ServerBuilderGenerator.kt:344 */;
18909  19708   
            self
18910  19709   
            /* ServerBuilderGenerator.kt:343 */
18911  19710   
        }
18912  19711   
        /* ServerBuilderGenerator.kt:426 */
18913  19712   
        #[allow(missing_docs)] // documentation missing in model
18914  19713   
                               /* ServerBuilderGenerator.kt:428 */
18915         -
        pub(crate) fn set_target_date_time(
       19714  +
        pub(crate) fn set_test_id(
18916  19715   
            mut self,
18917         -
            input: Option<impl ::std::convert::Into<::aws_smithy_types::DateTime>>,
       19716  +
            input: Option<impl ::std::convert::Into<::std::string::String>>,
18918  19717   
        ) -> Self {
18919  19718   
            /* ServerBuilderGenerator.kt:429 */
18920         -
            self.target_date_time = input.map(|v| v.into());
       19719  +
            self.test_id = input.map(|v| v.into());
18921  19720   
            self
18922  19721   
            /* ServerBuilderGenerator.kt:428 */
18923  19722   
        }
18924         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TimestampFormatHeadersInput`](crate::input::TimestampFormatHeadersInput).
       19723  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestPostNoPayloadInput`](crate::input::TestPostNoPayloadInput).
18925  19724   
        /* ServerBuilderGenerator.kt:271 */
18926         -
        pub fn build(self) -> crate::input::TimestampFormatHeadersInput {
       19725  +
        pub fn build(self) -> crate::input::TestPostNoPayloadInput {
18927  19726   
            self.build_enforcing_all_constraints()
18928  19727   
        }
18929  19728   
        /* ServerBuilderGenerator.kt:283 */
18930         -
        fn build_enforcing_all_constraints(self) -> crate::input::TimestampFormatHeadersInput {
       19729  +
        fn build_enforcing_all_constraints(self) -> crate::input::TestPostNoPayloadInput {
18931  19730   
            /* ServerBuilderGenerator.kt:542 */
18932         -
            crate::input::TimestampFormatHeadersInput {
18933         -
                /* ServerBuilderGenerator.kt:546 */
18934         -
                member_epoch_seconds: self.member_epoch_seconds,
18935         -
                /* ServerBuilderGenerator.kt:546 */
18936         -
                member_http_date: self.member_http_date,
18937         -
                /* ServerBuilderGenerator.kt:546 */
18938         -
                member_date_time: self.member_date_time,
18939         -
                /* ServerBuilderGenerator.kt:546 */
18940         -
                default_format: self.default_format,
18941         -
                /* ServerBuilderGenerator.kt:546 */
18942         -
                target_epoch_seconds: self.target_epoch_seconds,
18943         -
                /* ServerBuilderGenerator.kt:546 */
18944         -
                target_http_date: self.target_http_date,
       19731  +
            crate::input::TestPostNoPayloadInput {
18945  19732   
                /* ServerBuilderGenerator.kt:546 */
18946         -
                target_date_time: self.target_date_time,
       19733  +
                test_id: self.test_id,
       19734  +
                /* ServerBuilderGenerator.kt:542 */
       19735  +
            }
       19736  +
            /* ServerBuilderGenerator.kt:283 */
       19737  +
        }
       19738  +
        /* ServerBuilderGenerator.kt:215 */
       19739  +
    }
       19740  +
       19741  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19742  +
}
       19743  +
/// /* ServerBuilderGenerator.kt:171 */See [`TestGetNoInputNoPayloadInput`](crate::input::TestGetNoInputNoPayloadInput).
       19744  +
pub mod test_get_no_input_no_payload_input {
       19745  +
       19746  +
    /* ServerBuilderGenerator.kt:461 */
       19747  +
    impl ::std::convert::From<Builder> for crate::input::TestGetNoInputNoPayloadInput {
       19748  +
        fn from(builder: Builder) -> Self {
       19749  +
            builder.build()
       19750  +
        }
       19751  +
    }
       19752  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestGetNoInputNoPayloadInput`](crate::input::TestGetNoInputNoPayloadInput).
       19753  +
    /* RustType.kt:534 */
       19754  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19755  +
    /* ServerBuilderGenerator.kt:211 */
       19756  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       19757  +
    /* ServerBuilderGenerator.kt:215 */
       19758  +
    impl Builder {
       19759  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestGetNoInputNoPayloadInput`](crate::input::TestGetNoInputNoPayloadInput).
       19760  +
        /* ServerBuilderGenerator.kt:271 */
       19761  +
        pub fn build(self) -> crate::input::TestGetNoInputNoPayloadInput {
       19762  +
            self.build_enforcing_all_constraints()
       19763  +
        }
       19764  +
        /* ServerBuilderGenerator.kt:283 */
       19765  +
        fn build_enforcing_all_constraints(self) -> crate::input::TestGetNoInputNoPayloadInput {
       19766  +
            /* ServerBuilderGenerator.kt:542 */
       19767  +
            crate::input::TestGetNoInputNoPayloadInput {
       19768  +
            /* ServerBuilderGenerator.kt:542 */}
       19769  +
            /* ServerBuilderGenerator.kt:283 */
       19770  +
        }
       19771  +
        /* ServerBuilderGenerator.kt:215 */
       19772  +
    }
       19773  +
       19774  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19775  +
}
       19776  +
/// /* ServerBuilderGenerator.kt:171 */See [`TestPostNoInputNoPayloadInput`](crate::input::TestPostNoInputNoPayloadInput).
       19777  +
pub mod test_post_no_input_no_payload_input {
       19778  +
       19779  +
    /* ServerBuilderGenerator.kt:461 */
       19780  +
    impl ::std::convert::From<Builder> for crate::input::TestPostNoInputNoPayloadInput {
       19781  +
        fn from(builder: Builder) -> Self {
       19782  +
            builder.build()
       19783  +
        }
       19784  +
    }
       19785  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`TestPostNoInputNoPayloadInput`](crate::input::TestPostNoInputNoPayloadInput).
       19786  +
    /* RustType.kt:534 */
       19787  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19788  +
    /* ServerBuilderGenerator.kt:211 */
       19789  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       19790  +
    /* ServerBuilderGenerator.kt:215 */
       19791  +
    impl Builder {
       19792  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`TestPostNoInputNoPayloadInput`](crate::input::TestPostNoInputNoPayloadInput).
       19793  +
        /* ServerBuilderGenerator.kt:271 */
       19794  +
        pub fn build(self) -> crate::input::TestPostNoInputNoPayloadInput {
       19795  +
            self.build_enforcing_all_constraints()
       19796  +
        }
       19797  +
        /* ServerBuilderGenerator.kt:283 */
       19798  +
        fn build_enforcing_all_constraints(self) -> crate::input::TestPostNoInputNoPayloadInput {
       19799  +
            /* ServerBuilderGenerator.kt:542 */
       19800  +
            crate::input::TestPostNoInputNoPayloadInput {
       19801  +
            /* ServerBuilderGenerator.kt:542 */}
       19802  +
            /* ServerBuilderGenerator.kt:283 */
       19803  +
        }
       19804  +
        /* ServerBuilderGenerator.kt:215 */
       19805  +
    }
       19806  +
       19807  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19808  +
}
       19809  +
/// /* ServerBuilderGenerator.kt:171 */See [`DatetimeOffsetsInput`](crate::input::DatetimeOffsetsInput).
       19810  +
pub mod datetime_offsets_input {
       19811  +
       19812  +
    /* ServerBuilderGenerator.kt:461 */
       19813  +
    impl ::std::convert::From<Builder> for crate::input::DatetimeOffsetsInput {
       19814  +
        fn from(builder: Builder) -> Self {
       19815  +
            builder.build()
       19816  +
        }
       19817  +
    }
       19818  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`DatetimeOffsetsInput`](crate::input::DatetimeOffsetsInput).
       19819  +
    /* RustType.kt:534 */
       19820  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19821  +
    /* ServerBuilderGenerator.kt:211 */
       19822  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       19823  +
    /* ServerBuilderGenerator.kt:215 */
       19824  +
    impl Builder {
       19825  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`DatetimeOffsetsInput`](crate::input::DatetimeOffsetsInput).
       19826  +
        /* ServerBuilderGenerator.kt:271 */
       19827  +
        pub fn build(self) -> crate::input::DatetimeOffsetsInput {
       19828  +
            self.build_enforcing_all_constraints()
       19829  +
        }
       19830  +
        /* ServerBuilderGenerator.kt:283 */
       19831  +
        fn build_enforcing_all_constraints(self) -> crate::input::DatetimeOffsetsInput {
18947  19832   
            /* ServerBuilderGenerator.kt:542 */
       19833  +
            crate::input::DatetimeOffsetsInput {
       19834  +
            /* ServerBuilderGenerator.kt:542 */}
       19835  +
            /* ServerBuilderGenerator.kt:283 */
       19836  +
        }
       19837  +
        /* ServerBuilderGenerator.kt:215 */
       19838  +
    }
       19839  +
       19840  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19841  +
}
       19842  +
/// /* ServerBuilderGenerator.kt:171 */See [`FractionalSecondsInput`](crate::input::FractionalSecondsInput).
       19843  +
pub mod fractional_seconds_input {
       19844  +
       19845  +
    /* ServerBuilderGenerator.kt:461 */
       19846  +
    impl ::std::convert::From<Builder> for crate::input::FractionalSecondsInput {
       19847  +
        fn from(builder: Builder) -> Self {
       19848  +
            builder.build()
       19849  +
        }
18948  19850   
    }
       19851  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`FractionalSecondsInput`](crate::input::FractionalSecondsInput).
       19852  +
    /* RustType.kt:534 */
       19853  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19854  +
    /* ServerBuilderGenerator.kt:211 */
       19855  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       19856  +
    /* ServerBuilderGenerator.kt:215 */
       19857  +
    impl Builder {
       19858  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`FractionalSecondsInput`](crate::input::FractionalSecondsInput).
       19859  +
        /* ServerBuilderGenerator.kt:271 */
       19860  +
        pub fn build(self) -> crate::input::FractionalSecondsInput {
       19861  +
            self.build_enforcing_all_constraints()
       19862  +
        }
       19863  +
        /* ServerBuilderGenerator.kt:283 */
       19864  +
        fn build_enforcing_all_constraints(self) -> crate::input::FractionalSecondsInput {
       19865  +
            /* ServerBuilderGenerator.kt:542 */
       19866  +
            crate::input::FractionalSecondsInput {
       19867  +
            /* ServerBuilderGenerator.kt:542 */}
18949  19868   
            /* ServerBuilderGenerator.kt:283 */
18950  19869   
        }
18951  19870   
        /* ServerBuilderGenerator.kt:215 */
18952  19871   
    }
18953  19872   
18954  19873   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
18955  19874   
}
18956         -
/// /* ServerBuilderGenerator.kt:171 */See [`NullAndEmptyHeadersServerInput`](crate::input::NullAndEmptyHeadersServerInput).
18957         -
pub mod null_and_empty_headers_server_input {
       19875  +
/// /* ServerBuilderGenerator.kt:171 */See [`PutWithContentEncodingInput`](crate::input::PutWithContentEncodingInput).
       19876  +
pub mod put_with_content_encoding_input {
18958  19877   
18959  19878   
    /* ServerBuilderGenerator.kt:461 */
18960         -
    impl ::std::convert::From<Builder> for crate::input::NullAndEmptyHeadersServerInput {
       19879  +
    impl ::std::convert::From<Builder> for crate::input::PutWithContentEncodingInput {
18961  19880   
        fn from(builder: Builder) -> Self {
18962  19881   
            builder.build()
18963  19882   
        }
18964  19883   
    }
18965         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`NullAndEmptyHeadersServerInput`](crate::input::NullAndEmptyHeadersServerInput).
       19884  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`PutWithContentEncodingInput`](crate::input::PutWithContentEncodingInput).
18966  19885   
    /* RustType.kt:534 */
18967  19886   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
18968  19887   
    /* ServerBuilderGenerator.kt:211 */
18969  19888   
    pub struct Builder {
18970  19889   
        /* ServerBuilderGenerator.kt:308 */
18971         -
        pub(crate) a: ::std::option::Option<::std::string::String>,
18972         -
        /* ServerBuilderGenerator.kt:308 */
18973         -
        pub(crate) b: ::std::option::Option<::std::string::String>,
       19890  +
        pub(crate) encoding: ::std::option::Option<::std::string::String>,
18974  19891   
        /* ServerBuilderGenerator.kt:308 */
18975         -
        pub(crate) c: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
       19892  +
        pub(crate) data: ::std::option::Option<::std::string::String>,
18976  19893   
        /* ServerBuilderGenerator.kt:211 */
18977  19894   
    }
18978  19895   
    /* ServerBuilderGenerator.kt:215 */
18979  19896   
    impl Builder {
18980  19897   
        /* ServerBuilderGenerator.kt:331 */
18981  19898   
        #[allow(missing_docs)] // documentation missing in model
18982  19899   
                               /* ServerBuilderGenerator.kt:343 */
18983         -
        pub fn a(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       19900  +
        pub fn encoding(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
18984  19901   
            /* ServerBuilderGenerator.kt:344 */
18985         -
            self.a =
       19902  +
            self.encoding =
18986  19903   
                /* ServerBuilderGenerator.kt:376 */input
18987  19904   
            /* ServerBuilderGenerator.kt:344 */;
18988  19905   
            self
18989  19906   
            /* ServerBuilderGenerator.kt:343 */
18990  19907   
        }
18991  19908   
        /* ServerBuilderGenerator.kt:426 */
18992  19909   
        #[allow(missing_docs)] // documentation missing in model
18993  19910   
                               /* ServerBuilderGenerator.kt:428 */
18994         -
        pub(crate) fn set_a(
       19911  +
        pub(crate) fn set_encoding(
18995  19912   
            mut self,
18996  19913   
            input: Option<impl ::std::convert::Into<::std::string::String>>,
18997  19914   
        ) -> Self {
18998  19915   
            /* ServerBuilderGenerator.kt:429 */
18999         -
            self.a = input.map(|v| v.into());
       19916  +
            self.encoding = input.map(|v| v.into());
19000  19917   
            self
19001  19918   
            /* ServerBuilderGenerator.kt:428 */
19002  19919   
        }
19003  19920   
        /* ServerBuilderGenerator.kt:331 */
19004  19921   
        #[allow(missing_docs)] // documentation missing in model
19005  19922   
                               /* ServerBuilderGenerator.kt:343 */
19006         -
        pub fn b(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       19923  +
        pub fn data(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
19007  19924   
            /* ServerBuilderGenerator.kt:344 */
19008         -
            self.b =
       19925  +
            self.data =
19009  19926   
                /* ServerBuilderGenerator.kt:376 */input
19010  19927   
            /* ServerBuilderGenerator.kt:344 */;
19011  19928   
            self
19012  19929   
            /* ServerBuilderGenerator.kt:343 */
19013  19930   
        }
19014  19931   
        /* ServerBuilderGenerator.kt:426 */
19015  19932   
        #[allow(missing_docs)] // documentation missing in model
19016  19933   
                               /* ServerBuilderGenerator.kt:428 */
19017         -
        pub(crate) fn set_b(
       19934  +
        pub(crate) fn set_data(
19018  19935   
            mut self,
19019  19936   
            input: Option<impl ::std::convert::Into<::std::string::String>>,
19020  19937   
        ) -> Self {
19021  19938   
            /* ServerBuilderGenerator.kt:429 */
19022         -
            self.b = input.map(|v| v.into());
       19939  +
            self.data = input.map(|v| v.into());
19023  19940   
            self
19024  19941   
            /* ServerBuilderGenerator.kt:428 */
19025  19942   
        }
       19943  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`PutWithContentEncodingInput`](crate::input::PutWithContentEncodingInput).
       19944  +
        /* ServerBuilderGenerator.kt:271 */
       19945  +
        pub fn build(self) -> crate::input::PutWithContentEncodingInput {
       19946  +
            self.build_enforcing_all_constraints()
       19947  +
        }
       19948  +
        /* ServerBuilderGenerator.kt:283 */
       19949  +
        fn build_enforcing_all_constraints(self) -> crate::input::PutWithContentEncodingInput {
       19950  +
            /* ServerBuilderGenerator.kt:542 */
       19951  +
            crate::input::PutWithContentEncodingInput {
       19952  +
                /* ServerBuilderGenerator.kt:546 */
       19953  +
                encoding: self.encoding,
       19954  +
                /* ServerBuilderGenerator.kt:546 */
       19955  +
                data: self.data,
       19956  +
                /* ServerBuilderGenerator.kt:542 */
       19957  +
            }
       19958  +
            /* ServerBuilderGenerator.kt:283 */
       19959  +
        }
       19960  +
        /* ServerBuilderGenerator.kt:215 */
       19961  +
    }
       19962  +
       19963  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       19964  +
}
       19965  +
/// /* ServerBuilderGenerator.kt:171 */See [`ContentTypeParametersInput`](crate::input::ContentTypeParametersInput).
       19966  +
pub mod content_type_parameters_input {
       19967  +
       19968  +
    /* ServerBuilderGenerator.kt:461 */
       19969  +
    impl ::std::convert::From<Builder> for crate::input::ContentTypeParametersInput {
       19970  +
        fn from(builder: Builder) -> Self {
       19971  +
            builder.build()
       19972  +
        }
       19973  +
    }
       19974  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`ContentTypeParametersInput`](crate::input::ContentTypeParametersInput).
       19975  +
    /* RustType.kt:534 */
       19976  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       19977  +
    /* ServerBuilderGenerator.kt:211 */
       19978  +
    pub struct Builder {
       19979  +
        /* ServerBuilderGenerator.kt:308 */
       19980  +
        pub(crate) value: ::std::option::Option<i32>,
       19981  +
        /* ServerBuilderGenerator.kt:211 */
       19982  +
    }
       19983  +
    /* ServerBuilderGenerator.kt:215 */
       19984  +
    impl Builder {
19026  19985   
        /* ServerBuilderGenerator.kt:331 */
19027  19986   
        #[allow(missing_docs)] // documentation missing in model
19028  19987   
                               /* ServerBuilderGenerator.kt:343 */
19029         -
        pub fn c(
19030         -
            mut self,
19031         -
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
19032         -
        ) -> Self {
       19988  +
        pub fn value(mut self, input: ::std::option::Option<i32>) -> Self {
19033  19989   
            /* ServerBuilderGenerator.kt:344 */
19034         -
            self.c =
       19990  +
            self.value =
19035  19991   
                /* ServerBuilderGenerator.kt:376 */input
19036  19992   
            /* ServerBuilderGenerator.kt:344 */;
19037  19993   
            self
19038  19994   
            /* ServerBuilderGenerator.kt:343 */
19039  19995   
        }
19040  19996   
        /* ServerBuilderGenerator.kt:426 */
19041  19997   
        #[allow(missing_docs)] // documentation missing in model
19042  19998   
                               /* ServerBuilderGenerator.kt:428 */
19043         -
        pub(crate) fn set_c(
19044         -
            mut self,
19045         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
19046         -
        ) -> Self {
       19999  +
        pub(crate) fn set_value(mut self, input: Option<impl ::std::convert::Into<i32>>) -> Self {
19047  20000   
            /* ServerBuilderGenerator.kt:429 */
19048         -
            self.c = input.map(|v| v.into());
       20001  +
            self.value = input.map(|v| v.into());
19049  20002   
            self
19050  20003   
            /* ServerBuilderGenerator.kt:428 */
19051  20004   
        }
19052         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`NullAndEmptyHeadersServerInput`](crate::input::NullAndEmptyHeadersServerInput).
       20005  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`ContentTypeParametersInput`](crate::input::ContentTypeParametersInput).
19053  20006   
        /* ServerBuilderGenerator.kt:271 */
19054         -
        pub fn build(self) -> crate::input::NullAndEmptyHeadersServerInput {
       20007  +
        pub fn build(self) -> crate::input::ContentTypeParametersInput {
19055  20008   
            self.build_enforcing_all_constraints()
19056  20009   
        }
19057  20010   
        /* ServerBuilderGenerator.kt:283 */
19058         -
        fn build_enforcing_all_constraints(self) -> crate::input::NullAndEmptyHeadersServerInput {
       20011  +
        fn build_enforcing_all_constraints(self) -> crate::input::ContentTypeParametersInput {
19059  20012   
            /* ServerBuilderGenerator.kt:542 */
19060         -
            crate::input::NullAndEmptyHeadersServerInput {
19061         -
                /* ServerBuilderGenerator.kt:546 */
19062         -
                a: self.a,
19063         -
                /* ServerBuilderGenerator.kt:546 */
19064         -
                b: self.b,
       20013  +
            crate::input::ContentTypeParametersInput {
19065  20014   
                /* ServerBuilderGenerator.kt:546 */
19066         -
                c: self.c,
       20015  +
                value: self.value,
19067  20016   
                /* ServerBuilderGenerator.kt:542 */
19068  20017   
            }
19069  20018   
            /* ServerBuilderGenerator.kt:283 */
19070  20019   
        }
19071  20020   
        /* ServerBuilderGenerator.kt:215 */
19072  20021   
    }
19073  20022   
19074  20023   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
19075  20024   
}
19076         -
/// /* ServerBuilderGenerator.kt:171 */See [`NullAndEmptyHeadersClientInput`](crate::input::NullAndEmptyHeadersClientInput).
19077         -
pub mod null_and_empty_headers_client_input {
       20025  +
/// /* ServerBuilderGenerator.kt:171 */See [`OperationWithDefaultsInput`](crate::input::OperationWithDefaultsInput).
       20026  +
pub mod operation_with_defaults_input {
19078  20027   
19079         -
    /* ServerBuilderGenerator.kt:461 */
19080         -
    impl ::std::convert::From<Builder> for crate::input::NullAndEmptyHeadersClientInput {
       20028  +
    /* RustType.kt:534 */
       20029  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       20030  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       20031  +
    /* RustType.kt:534 */
       20032  +
    #[non_exhaustive]
       20033  +
    /* ServerBuilderConstraintViolations.kt:75 */
       20034  +
    #[allow(clippy::enum_variant_names)]
       20035  +
    pub enum ConstraintViolation {
       20036  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `defaults` when building `OperationWithDefaultsInput`.
       20037  +
        /* RustType.kt:534 */
       20038  +
        #[doc(hidden)]
       20039  +
        /* ServerBuilderConstraintViolations.kt:165 */
       20040  +
        Defaults(crate::model::defaults::ConstraintViolation),
       20041  +
        /* ServerBuilderConstraintViolations.kt:75 */
       20042  +
    }
       20043  +
    /* ServerBuilderConstraintViolations.kt:116 */
       20044  +
    impl ::std::fmt::Display for ConstraintViolation {
       20045  +
        /* ServerBuilderConstraintViolations.kt:117 */
       20046  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       20047  +
            /* ServerBuilderConstraintViolations.kt:118 */
       20048  +
            match self {
       20049  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::Defaults(_) => write!(f, "constraint violation occurred building member `defaults` when building `OperationWithDefaultsInput`"),
       20050  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       20051  +
            /* ServerBuilderConstraintViolations.kt:117 */
       20052  +
        }
       20053  +
        /* ServerBuilderConstraintViolations.kt:116 */
       20054  +
    }
       20055  +
    /* ServerBuilderConstraintViolations.kt:83 */
       20056  +
    impl ::std::error::Error for ConstraintViolation {}
       20057  +
    /* ServerBuilderConstraintViolations.kt:172 */
       20058  +
    impl ConstraintViolation {
       20059  +
        pub(crate) fn as_validation_exception_field(
       20060  +
            self,
       20061  +
            path: ::std::string::String,
       20062  +
        ) -> crate::model::ValidationExceptionField {
       20063  +
            match self {
       20064  +
                ConstraintViolation::Defaults(inner) => {
       20065  +
                    inner.as_validation_exception_field(path + "/defaults")
       20066  +
                }
       20067  +
            }
       20068  +
        }
       20069  +
    }
       20070  +
    /* ServerBuilderGenerator.kt:234 */
       20071  +
    impl ::std::convert::From<ConstraintViolation>
       20072  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       20073  +
    {
       20074  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       20075  +
            let first_validation_exception_field =
       20076  +
                constraint_violation.as_validation_exception_field("".to_owned());
       20077  +
            let validation_exception = crate::error::ValidationException {
       20078  +
                message: format!(
       20079  +
                    "1 validation error detected. {}",
       20080  +
                    &first_validation_exception_field.message
       20081  +
                ),
       20082  +
                field_list: Some(vec![first_validation_exception_field]),
       20083  +
            };
       20084  +
            Self::ConstraintViolation(
       20085  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       20086  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       20087  +
                            )
       20088  +
        }
       20089  +
    }
       20090  +
    /* ServerBuilderGenerator.kt:244 */
       20091  +
    impl ::std::convert::From<Builder>
       20092  +
        for crate::constrained::MaybeConstrained<crate::input::OperationWithDefaultsInput>
       20093  +
    {
19081  20094   
        fn from(builder: Builder) -> Self {
       20095  +
            Self::Unconstrained(builder)
       20096  +
        }
       20097  +
    }
       20098  +
    /* ServerBuilderGenerator.kt:446 */
       20099  +
    impl ::std::convert::TryFrom<Builder> for crate::input::OperationWithDefaultsInput {
       20100  +
        type Error = ConstraintViolation;
       20101  +
       20102  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
19082  20103   
            builder.build()
19083  20104   
        }
19084  20105   
    }
19085         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`NullAndEmptyHeadersClientInput`](crate::input::NullAndEmptyHeadersClientInput).
       20106  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OperationWithDefaultsInput`](crate::input::OperationWithDefaultsInput).
19086  20107   
    /* RustType.kt:534 */
19087  20108   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
19088  20109   
    /* ServerBuilderGenerator.kt:211 */
19089  20110   
    pub struct Builder {
19090  20111   
        /* ServerBuilderGenerator.kt:308 */
19091         -
        pub(crate) a: ::std::option::Option<::std::string::String>,
       20112  +
        pub(crate) defaults:
       20113  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::Defaults>>,
19092  20114   
        /* ServerBuilderGenerator.kt:308 */
19093         -
        pub(crate) b: ::std::option::Option<::std::string::String>,
       20115  +
        pub(crate) client_optional_defaults:
       20116  +
            ::std::option::Option<crate::model::ClientOptionalDefaults>,
19094  20117   
        /* ServerBuilderGenerator.kt:308 */
19095         -
        pub(crate) c: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
       20118  +
        pub(crate) top_level_default: ::std::option::Option<::std::string::String>,
       20119  +
        /* ServerBuilderGenerator.kt:308 */
       20120  +
        pub(crate) other_top_level_default: ::std::option::Option<i32>,
19096  20121   
        /* ServerBuilderGenerator.kt:211 */
19097  20122   
    }
19098  20123   
    /* ServerBuilderGenerator.kt:215 */
19099  20124   
    impl Builder {
19100  20125   
        /* ServerBuilderGenerator.kt:331 */
19101  20126   
        #[allow(missing_docs)] // documentation missing in model
19102  20127   
                               /* ServerBuilderGenerator.kt:343 */
19103         -
        pub fn a(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       20128  +
        pub fn defaults(mut self, input: ::std::option::Option<crate::model::Defaults>) -> Self {
19104  20129   
            /* ServerBuilderGenerator.kt:344 */
19105         -
            self.a =
19106         -
                /* ServerBuilderGenerator.kt:376 */input
       20130  +
            self.defaults =
       20131  +
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
19107  20132   
            /* ServerBuilderGenerator.kt:344 */;
19108  20133   
            self
19109  20134   
            /* ServerBuilderGenerator.kt:343 */
19110  20135   
        }
19111  20136   
        /* ServerBuilderGenerator.kt:426 */
19112  20137   
        #[allow(missing_docs)] // documentation missing in model
19113  20138   
                               /* ServerBuilderGenerator.kt:428 */
19114         -
        pub(crate) fn set_a(
       20139  +
        pub(crate) fn set_defaults(
19115  20140   
            mut self,
19116         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       20141  +
            input: Option<
       20142  +
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::Defaults>>,
       20143  +
            >,
19117  20144   
        ) -> Self {
19118  20145   
            /* ServerBuilderGenerator.kt:429 */
19119         -
            self.a = input.map(|v| v.into());
       20146  +
            self.defaults = input.map(|v| v.into());
19120  20147   
            self
19121  20148   
            /* ServerBuilderGenerator.kt:428 */
19122  20149   
        }
19123  20150   
        /* ServerBuilderGenerator.kt:331 */
19124  20151   
        #[allow(missing_docs)] // documentation missing in model
19125  20152   
                               /* ServerBuilderGenerator.kt:343 */
19126         -
        pub fn b(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
       20153  +
        pub fn client_optional_defaults(
       20154  +
            mut self,
       20155  +
            input: ::std::option::Option<crate::model::ClientOptionalDefaults>,
       20156  +
        ) -> Self {
19127  20157   
            /* ServerBuilderGenerator.kt:344 */
19128         -
            self.b =
       20158  +
            self.client_optional_defaults =
19129  20159   
                /* ServerBuilderGenerator.kt:376 */input
19130  20160   
            /* ServerBuilderGenerator.kt:344 */;
19131  20161   
            self
19132  20162   
            /* ServerBuilderGenerator.kt:343 */
19133  20163   
        }
19134  20164   
        /* ServerBuilderGenerator.kt:426 */
19135  20165   
        #[allow(missing_docs)] // documentation missing in model
19136  20166   
                               /* ServerBuilderGenerator.kt:428 */
19137         -
        pub(crate) fn set_b(
       20167  +
        pub(crate) fn set_client_optional_defaults(
19138  20168   
            mut self,
19139         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
       20169  +
            input: Option<impl ::std::convert::Into<crate::model::ClientOptionalDefaults>>,
19140  20170   
        ) -> Self {
19141  20171   
            /* ServerBuilderGenerator.kt:429 */
19142         -
            self.b = input.map(|v| v.into());
       20172  +
            self.client_optional_defaults = input.map(|v| v.into());
19143  20173   
            self
19144  20174   
            /* ServerBuilderGenerator.kt:428 */
19145  20175   
        }
19146  20176   
        /* ServerBuilderGenerator.kt:331 */
19147  20177   
        #[allow(missing_docs)] // documentation missing in model
19148  20178   
                               /* ServerBuilderGenerator.kt:343 */
19149         -
        pub fn c(
       20179  +
        pub fn top_level_default(mut self, input: ::std::string::String) -> Self {
       20180  +
            /* ServerBuilderGenerator.kt:344 */
       20181  +
            self.top_level_default =
       20182  +
                /* ServerBuilderGenerator.kt:345 */Some(
       20183  +
                    /* ServerBuilderGenerator.kt:376 */input
       20184  +
                /* ServerBuilderGenerator.kt:345 */)
       20185  +
            /* ServerBuilderGenerator.kt:344 */;
       20186  +
            self
       20187  +
            /* ServerBuilderGenerator.kt:343 */
       20188  +
        }
       20189  +
        /* ServerBuilderGenerator.kt:426 */
       20190  +
        #[allow(missing_docs)] // documentation missing in model
       20191  +
                               /* ServerBuilderGenerator.kt:428 */
       20192  +
        pub(crate) fn set_top_level_default(
19150  20193   
            mut self,
19151         -
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
       20194  +
            input: impl ::std::convert::Into<::std::string::String>,
19152  20195   
        ) -> Self {
       20196  +
            /* ServerBuilderGenerator.kt:429 */
       20197  +
            self.top_level_default = Some(input.into());
       20198  +
            self
       20199  +
            /* ServerBuilderGenerator.kt:428 */
       20200  +
        }
       20201  +
        /* ServerBuilderGenerator.kt:331 */
       20202  +
        #[allow(missing_docs)] // documentation missing in model
       20203  +
                               /* ServerBuilderGenerator.kt:343 */
       20204  +
        pub fn other_top_level_default(mut self, input: i32) -> Self {
19153  20205   
            /* ServerBuilderGenerator.kt:344 */
19154         -
            self.c =
       20206  +
            self.other_top_level_default =
       20207  +
                /* ServerBuilderGenerator.kt:345 */Some(
19155  20208   
                    /* ServerBuilderGenerator.kt:376 */input
       20209  +
                /* ServerBuilderGenerator.kt:345 */)
19156  20210   
            /* ServerBuilderGenerator.kt:344 */;
19157  20211   
            self
19158  20212   
            /* ServerBuilderGenerator.kt:343 */
19159  20213   
        }
19160  20214   
        /* ServerBuilderGenerator.kt:426 */
19161  20215   
        #[allow(missing_docs)] // documentation missing in model
19162  20216   
                               /* ServerBuilderGenerator.kt:428 */
19163         -
        pub(crate) fn set_c(
       20217  +
        pub(crate) fn set_other_top_level_default(
19164  20218   
            mut self,
19165         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
       20219  +
            input: impl ::std::convert::Into<i32>,
19166  20220   
        ) -> Self {
19167  20221   
            /* ServerBuilderGenerator.kt:429 */
19168         -
            self.c = input.map(|v| v.into());
       20222  +
            self.other_top_level_default = Some(input.into());
19169  20223   
            self
19170  20224   
            /* ServerBuilderGenerator.kt:428 */
19171  20225   
        }
19172         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`NullAndEmptyHeadersClientInput`](crate::input::NullAndEmptyHeadersClientInput).
       20226  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OperationWithDefaultsInput`](crate::input::OperationWithDefaultsInput).
       20227  +
        /// /* ServerBuilderGenerator.kt:260 */
       20228  +
        /// The builder fails to construct a [`OperationWithDefaultsInput`](crate::input::OperationWithDefaultsInput) if a [`ConstraintViolation`] occurs.
       20229  +
        ///
19173  20230   
        /* ServerBuilderGenerator.kt:271 */
19174         -
        pub fn build(self) -> crate::input::NullAndEmptyHeadersClientInput {
       20231  +
        pub fn build(
       20232  +
            self,
       20233  +
        ) -> Result<crate::input::OperationWithDefaultsInput, ConstraintViolation> {
19175  20234   
            self.build_enforcing_all_constraints()
19176  20235   
        }
19177  20236   
        /* ServerBuilderGenerator.kt:283 */
19178         -
        fn build_enforcing_all_constraints(self) -> crate::input::NullAndEmptyHeadersClientInput {
       20237  +
        fn build_enforcing_all_constraints(
       20238  +
            self,
       20239  +
        ) -> Result<crate::input::OperationWithDefaultsInput, ConstraintViolation> {
       20240  +
            /* ServerBuilderGenerator.kt:287 */
       20241  +
            Ok(
19179  20242   
                /* ServerBuilderGenerator.kt:542 */
19180         -
            crate::input::NullAndEmptyHeadersClientInput {
       20243  +
                crate::input::OperationWithDefaultsInput {
19181  20244   
                    /* ServerBuilderGenerator.kt:546 */
19182         -
                a: self.a,
       20245  +
                    defaults: self
       20246  +
                        .defaults
       20247  +
                        /* ServerBuilderGenerator.kt:602 */
       20248  +
                        .map(|v| match v {
       20249  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       20250  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       20251  +
                        })
       20252  +
                        /* ServerBuilderGenerator.kt:614 */
       20253  +
                        .map(|res| res.map_err(ConstraintViolation::Defaults))
       20254  +
                        .transpose()?,
19183  20255   
                    /* ServerBuilderGenerator.kt:546 */
19184         -
                b: self.b,
       20256  +
                    client_optional_defaults: self.client_optional_defaults,
19185  20257   
                    /* ServerBuilderGenerator.kt:546 */
19186         -
                c: self.c,
       20258  +
                    top_level_default: self
       20259  +
                        .top_level_default
       20260  +
                        /* ServerBuilderGeneratorCommon.kt:129 */
       20261  +
                        .unwrap_or_else(|| String::from("hi")),
       20262  +
                    /* ServerBuilderGenerator.kt:546 */
       20263  +
                    other_top_level_default: self
       20264  +
                        .other_top_level_default
       20265  +
                        /* ServerBuilderGeneratorCommon.kt:125 */
       20266  +
                        .unwrap_or(0i32),
19187  20267   
                    /* ServerBuilderGenerator.kt:542 */
19188         -
            }
       20268  +
                }, /* ServerBuilderGenerator.kt:287 */
       20269  +
            )
19189  20270   
            /* ServerBuilderGenerator.kt:283 */
19190  20271   
        }
19191  20272   
        /* ServerBuilderGenerator.kt:215 */
19192  20273   
    }
19193  20274   
19194  20275   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
19195  20276   
}
19196         -
/// /* ServerBuilderGenerator.kt:171 */See [`InputAndOutputWithHeadersInput`](crate::input::InputAndOutputWithHeadersInput).
19197         -
pub mod input_and_output_with_headers_input {
       20277  +
/// /* ServerBuilderGenerator.kt:171 */See [`OperationWithNestedStructureInput`](crate::input::OperationWithNestedStructureInput).
       20278  +
pub mod operation_with_nested_structure_input {
19198  20279   
19199  20280   
    /* RustType.kt:534 */
19200  20281   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
19201  20282   
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
19202  20283   
    /* RustType.kt:534 */
19203  20284   
    #[non_exhaustive]
19204  20285   
    /* ServerBuilderConstraintViolations.kt:75 */
19205  20286   
    #[allow(clippy::enum_variant_names)]
19206  20287   
    pub enum ConstraintViolation {
19207         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `header_string_set` when building `InputAndOutputWithHeadersInput`.
19208         -
        /* RustType.kt:534 */
19209         -
        #[doc(hidden)]
19210         -
        /* ServerBuilderConstraintViolations.kt:165 */
19211         -
        HeaderStringSet(crate::model::string_set::ConstraintViolation),
19212         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `header_enum` when building `InputAndOutputWithHeadersInput`.
19213         -
        /* RustType.kt:534 */
19214         -
        #[doc(hidden)]
19215         -
        /* ServerBuilderConstraintViolations.kt:165 */
19216         -
        HeaderEnum(crate::model::foo_enum::ConstraintViolation),
19217         -
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `header_enum_list` when building `InputAndOutputWithHeadersInput`.
       20288  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`top_level` was not provided but it is required when building `OperationWithNestedStructureInput`.
       20289  +
        /* ServerBuilderConstraintViolations.kt:144 */
       20290  +
        MissingTopLevel,
       20291  +
        /// /* ServerBuilderConstraintViolations.kt:159 */Constraint violation occurred building member `top_level` when building `OperationWithNestedStructureInput`.
19218  20292   
        /* RustType.kt:534 */
19219  20293   
        #[doc(hidden)]
19220  20294   
        /* ServerBuilderConstraintViolations.kt:165 */
19221         -
        HeaderEnumList(crate::model::foo_enum_list::ConstraintViolation),
       20295  +
        TopLevel(crate::model::top_level::ConstraintViolation),
19222  20296   
        /* ServerBuilderConstraintViolations.kt:75 */
19223  20297   
    }
19224  20298   
    /* ServerBuilderConstraintViolations.kt:116 */
19225  20299   
    impl ::std::fmt::Display for ConstraintViolation {
19226  20300   
        /* ServerBuilderConstraintViolations.kt:117 */
19227  20301   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
19228  20302   
            /* ServerBuilderConstraintViolations.kt:118 */
19229  20303   
            match self {
19230         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::HeaderStringSet(_) => write!(f, "constraint violation occurred building member `header_string_set` when building `InputAndOutputWithHeadersInput`"),
19231         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::HeaderEnum(_) => write!(f, "constraint violation occurred building member `header_enum` when building `InputAndOutputWithHeadersInput`"),
19232         -
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::HeaderEnumList(_) => write!(f, "constraint violation occurred building member `header_enum_list` when building `InputAndOutputWithHeadersInput`"),
       20304  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingTopLevel => write!(f, "`top_level` was not provided but it is required when building `OperationWithNestedStructureInput`"),
       20305  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::TopLevel(_) => write!(f, "constraint violation occurred building member `top_level` when building `OperationWithNestedStructureInput`"),
19233  20306   
            /* ServerBuilderConstraintViolations.kt:118 */}
19234  20307   
            /* ServerBuilderConstraintViolations.kt:117 */
19235  20308   
        }
19236  20309   
        /* ServerBuilderConstraintViolations.kt:116 */
19237  20310   
    }
19238  20311   
    /* ServerBuilderConstraintViolations.kt:83 */
19239  20312   
    impl ::std::error::Error for ConstraintViolation {}
19240  20313   
    /* ServerBuilderConstraintViolations.kt:172 */
19241  20314   
    impl ConstraintViolation {
19242  20315   
        pub(crate) fn as_validation_exception_field(
19243  20316   
            self,
19244  20317   
            path: ::std::string::String,
19245  20318   
        ) -> crate::model::ValidationExceptionField {
19246  20319   
            match self {
19247         -
                ConstraintViolation::HeaderStringSet(inner) => {
19248         -
                    inner.as_validation_exception_field(path + "/headerStringSet")
19249         -
                }
19250         -
                ConstraintViolation::HeaderEnum(inner) => {
19251         -
                    inner.as_validation_exception_field(path + "/headerEnum")
19252         -
                }
19253         -
                ConstraintViolation::HeaderEnumList(inner) => {
19254         -
                    inner.as_validation_exception_field(path + "/headerEnumList")
19255         -
                }
       20320  +
            ConstraintViolation::MissingTopLevel => crate::model::ValidationExceptionField {
       20321  +
                                                message: format!("Value at '{}/topLevel' failed to satisfy constraint: Member must not be null", path),
       20322  +
                                                path: path + "/topLevel",
       20323  +
                                            },
       20324  +
            ConstraintViolation::TopLevel(inner) => inner.as_validation_exception_field(path + "/topLevel"),
19256  20325   
        }
19257  20326   
        }
19258  20327   
    }
19259  20328   
    /* ServerBuilderGenerator.kt:234 */
19260  20329   
    impl ::std::convert::From<ConstraintViolation>
19261  20330   
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
19262  20331   
    {
19263  20332   
        fn from(constraint_violation: ConstraintViolation) -> Self {
19264  20333   
            let first_validation_exception_field =
19265  20334   
                constraint_violation.as_validation_exception_field("".to_owned());
19266  20335   
            let validation_exception = crate::error::ValidationException {
19267  20336   
                message: format!(
19268  20337   
                    "1 validation error detected. {}",
19269  20338   
                    &first_validation_exception_field.message
19270  20339   
                ),
19271  20340   
                field_list: Some(vec![first_validation_exception_field]),
19272  20341   
            };
19273  20342   
            Self::ConstraintViolation(
19274  20343   
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
19275  20344   
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
19276  20345   
                            )
19277  20346   
        }
19278  20347   
    }
19279  20348   
    /* ServerBuilderGenerator.kt:244 */
19280  20349   
    impl ::std::convert::From<Builder>
19281         -
        for crate::constrained::MaybeConstrained<crate::input::InputAndOutputWithHeadersInput>
       20350  +
        for crate::constrained::MaybeConstrained<crate::input::OperationWithNestedStructureInput>
19282  20351   
    {
19283  20352   
        fn from(builder: Builder) -> Self {
19284  20353   
            Self::Unconstrained(builder)
19285  20354   
        }
19286  20355   
    }
19287  20356   
    /* ServerBuilderGenerator.kt:446 */
19288         -
    impl ::std::convert::TryFrom<Builder> for crate::input::InputAndOutputWithHeadersInput {
       20357  +
    impl ::std::convert::TryFrom<Builder> for crate::input::OperationWithNestedStructureInput {
19289  20358   
        type Error = ConstraintViolation;
19290  20359   
19291  20360   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
19292  20361   
            builder.build()
19293  20362   
        }
19294  20363   
    }
19295         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`InputAndOutputWithHeadersInput`](crate::input::InputAndOutputWithHeadersInput).
       20364  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OperationWithNestedStructureInput`](crate::input::OperationWithNestedStructureInput).
19296  20365   
    /* RustType.kt:534 */
19297  20366   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
19298         -
    /* ServerBuilderGenerator.kt:211 */
19299         -
    pub struct Builder {
19300         -
        /* ServerBuilderGenerator.kt:308 */
19301         -
        pub(crate) header_string: ::std::option::Option<::std::string::String>,
19302         -
        /* ServerBuilderGenerator.kt:308 */
19303         -
        pub(crate) header_byte: ::std::option::Option<i8>,
19304         -
        /* ServerBuilderGenerator.kt:308 */
19305         -
        pub(crate) header_short: ::std::option::Option<i16>,
19306         -
        /* ServerBuilderGenerator.kt:308 */
19307         -
        pub(crate) header_integer: ::std::option::Option<i32>,
19308         -
        /* ServerBuilderGenerator.kt:308 */
19309         -
        pub(crate) header_long: ::std::option::Option<i64>,
19310         -
        /* ServerBuilderGenerator.kt:308 */
19311         -
        pub(crate) header_float: ::std::option::Option<f32>,
19312         -
        /* ServerBuilderGenerator.kt:308 */
19313         -
        pub(crate) header_double: ::std::option::Option<f64>,
19314         -
        /* ServerBuilderGenerator.kt:308 */
19315         -
        pub(crate) header_true_bool: ::std::option::Option<bool>,
19316         -
        /* ServerBuilderGenerator.kt:308 */
19317         -
        pub(crate) header_false_bool: ::std::option::Option<bool>,
19318         -
        /* ServerBuilderGenerator.kt:308 */
19319         -
        pub(crate) header_string_list:
19320         -
            ::std::option::Option<::std::vec::Vec<::std::string::String>>,
19321         -
        /* ServerBuilderGenerator.kt:308 */
19322         -
        pub(crate) header_string_set:
19323         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
19324         -
        /* ServerBuilderGenerator.kt:308 */
19325         -
        pub(crate) header_integer_list: ::std::option::Option<::std::vec::Vec<i32>>,
19326         -
        /* ServerBuilderGenerator.kt:308 */
19327         -
        pub(crate) header_boolean_list: ::std::option::Option<::std::vec::Vec<bool>>,
19328         -
        /* ServerBuilderGenerator.kt:308 */
19329         -
        pub(crate) header_timestamp_list:
19330         -
            ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
19331         -
        /* ServerBuilderGenerator.kt:308 */
19332         -
        pub(crate) header_enum:
19333         -
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
19334         -
        /* ServerBuilderGenerator.kt:308 */
19335         -
        pub(crate) header_enum_list: ::std::option::Option<
19336         -
            crate::constrained::MaybeConstrained<
19337         -
                crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
19338         -
            >,
19339         -
        >,
19340         -
        /* ServerBuilderGenerator.kt:308 */
19341         -
        pub(crate) header_integer_enum: ::std::option::Option<i32>,
19342         -
        /* ServerBuilderGenerator.kt:308 */
19343         -
        pub(crate) header_integer_enum_list: ::std::option::Option<::std::vec::Vec<i32>>,
19344         -
        /* ServerBuilderGenerator.kt:211 */
19345         -
    }
19346         -
    /* ServerBuilderGenerator.kt:215 */
19347         -
    impl Builder {
19348         -
        /* ServerBuilderGenerator.kt:331 */
19349         -
        #[allow(missing_docs)] // documentation missing in model
19350         -
                               /* ServerBuilderGenerator.kt:343 */
19351         -
        pub fn header_string(
19352         -
            mut self,
19353         -
            input: ::std::option::Option<::std::string::String>,
19354         -
        ) -> Self {
19355         -
            /* ServerBuilderGenerator.kt:344 */
19356         -
            self.header_string =
19357         -
                /* ServerBuilderGenerator.kt:376 */input
19358         -
            /* ServerBuilderGenerator.kt:344 */;
19359         -
            self
19360         -
            /* ServerBuilderGenerator.kt:343 */
19361         -
        }
19362         -
        /* ServerBuilderGenerator.kt:426 */
19363         -
        #[allow(missing_docs)] // documentation missing in model
19364         -
                               /* ServerBuilderGenerator.kt:428 */
19365         -
        pub(crate) fn set_header_string(
19366         -
            mut self,
19367         -
            input: Option<impl ::std::convert::Into<::std::string::String>>,
19368         -
        ) -> Self {
19369         -
            /* ServerBuilderGenerator.kt:429 */
19370         -
            self.header_string = input.map(|v| v.into());
19371         -
            self
19372         -
            /* ServerBuilderGenerator.kt:428 */
19373         -
        }
19374         -
        /* ServerBuilderGenerator.kt:331 */
19375         -
        #[allow(missing_docs)] // documentation missing in model
19376         -
                               /* ServerBuilderGenerator.kt:343 */
19377         -
        pub fn header_byte(mut self, input: ::std::option::Option<i8>) -> Self {
19378         -
            /* ServerBuilderGenerator.kt:344 */
19379         -
            self.header_byte =
19380         -
                /* ServerBuilderGenerator.kt:376 */input
19381         -
            /* ServerBuilderGenerator.kt:344 */;
19382         -
            self
19383         -
            /* ServerBuilderGenerator.kt:343 */
19384         -
        }
19385         -
        /* ServerBuilderGenerator.kt:426 */
19386         -
        #[allow(missing_docs)] // documentation missing in model
19387         -
                               /* ServerBuilderGenerator.kt:428 */
19388         -
        pub(crate) fn set_header_byte(
19389         -
            mut self,
19390         -
            input: Option<impl ::std::convert::Into<i8>>,
19391         -
        ) -> Self {
19392         -
            /* ServerBuilderGenerator.kt:429 */
19393         -
            self.header_byte = input.map(|v| v.into());
19394         -
            self
19395         -
            /* ServerBuilderGenerator.kt:428 */
19396         -
        }
19397         -
        /* ServerBuilderGenerator.kt:331 */
19398         -
        #[allow(missing_docs)] // documentation missing in model
19399         -
                               /* ServerBuilderGenerator.kt:343 */
19400         -
        pub fn header_short(mut self, input: ::std::option::Option<i16>) -> Self {
19401         -
            /* ServerBuilderGenerator.kt:344 */
19402         -
            self.header_short =
19403         -
                /* ServerBuilderGenerator.kt:376 */input
19404         -
            /* ServerBuilderGenerator.kt:344 */;
19405         -
            self
19406         -
            /* ServerBuilderGenerator.kt:343 */
19407         -
        }
19408         -
        /* ServerBuilderGenerator.kt:426 */
19409         -
        #[allow(missing_docs)] // documentation missing in model
19410         -
                               /* ServerBuilderGenerator.kt:428 */
19411         -
        pub(crate) fn set_header_short(
19412         -
            mut self,
19413         -
            input: Option<impl ::std::convert::Into<i16>>,
19414         -
        ) -> Self {
19415         -
            /* ServerBuilderGenerator.kt:429 */
19416         -
            self.header_short = input.map(|v| v.into());
19417         -
            self
19418         -
            /* ServerBuilderGenerator.kt:428 */
19419         -
        }
19420         -
        /* ServerBuilderGenerator.kt:331 */
19421         -
        #[allow(missing_docs)] // documentation missing in model
19422         -
                               /* ServerBuilderGenerator.kt:343 */
19423         -
        pub fn header_integer(mut self, input: ::std::option::Option<i32>) -> Self {
19424         -
            /* ServerBuilderGenerator.kt:344 */
19425         -
            self.header_integer =
19426         -
                /* ServerBuilderGenerator.kt:376 */input
19427         -
            /* ServerBuilderGenerator.kt:344 */;
19428         -
            self
19429         -
            /* ServerBuilderGenerator.kt:343 */
19430         -
        }
19431         -
        /* ServerBuilderGenerator.kt:426 */
19432         -
        #[allow(missing_docs)] // documentation missing in model
19433         -
                               /* ServerBuilderGenerator.kt:428 */
19434         -
        pub(crate) fn set_header_integer(
19435         -
            mut self,
19436         -
            input: Option<impl ::std::convert::Into<i32>>,
19437         -
        ) -> Self {
19438         -
            /* ServerBuilderGenerator.kt:429 */
19439         -
            self.header_integer = input.map(|v| v.into());
19440         -
            self
19441         -
            /* ServerBuilderGenerator.kt:428 */
19442         -
        }
19443         -
        /* ServerBuilderGenerator.kt:331 */
19444         -
        #[allow(missing_docs)] // documentation missing in model
19445         -
                               /* ServerBuilderGenerator.kt:343 */
19446         -
        pub fn header_long(mut self, input: ::std::option::Option<i64>) -> Self {
19447         -
            /* ServerBuilderGenerator.kt:344 */
19448         -
            self.header_long =
19449         -
                /* ServerBuilderGenerator.kt:376 */input
19450         -
            /* ServerBuilderGenerator.kt:344 */;
19451         -
            self
19452         -
            /* ServerBuilderGenerator.kt:343 */
19453         -
        }
19454         -
        /* ServerBuilderGenerator.kt:426 */
19455         -
        #[allow(missing_docs)] // documentation missing in model
19456         -
                               /* ServerBuilderGenerator.kt:428 */
19457         -
        pub(crate) fn set_header_long(
19458         -
            mut self,
19459         -
            input: Option<impl ::std::convert::Into<i64>>,
19460         -
        ) -> Self {
19461         -
            /* ServerBuilderGenerator.kt:429 */
19462         -
            self.header_long = input.map(|v| v.into());
19463         -
            self
19464         -
            /* ServerBuilderGenerator.kt:428 */
       20367  +
    /* ServerBuilderGenerator.kt:211 */
       20368  +
    pub struct Builder {
       20369  +
        /* ServerBuilderGenerator.kt:308 */
       20370  +
        pub(crate) top_level:
       20371  +
            ::std::option::Option<crate::constrained::MaybeConstrained<crate::model::TopLevel>>,
       20372  +
        /* ServerBuilderGenerator.kt:211 */
19465  20373   
    }
       20374  +
    /* ServerBuilderGenerator.kt:215 */
       20375  +
    impl Builder {
19466  20376   
        /* ServerBuilderGenerator.kt:331 */
19467  20377   
        #[allow(missing_docs)] // documentation missing in model
19468  20378   
                               /* ServerBuilderGenerator.kt:343 */
19469         -
        pub fn header_float(mut self, input: ::std::option::Option<f32>) -> Self {
       20379  +
        pub fn top_level(mut self, input: crate::model::TopLevel) -> Self {
19470  20380   
            /* ServerBuilderGenerator.kt:344 */
19471         -
            self.header_float =
19472         -
                /* ServerBuilderGenerator.kt:376 */input
       20381  +
            self.top_level =
       20382  +
                /* ServerBuilderGenerator.kt:345 */Some(
       20383  +
                    /* ServerBuilderGenerator.kt:372 */crate::constrained::MaybeConstrained::Constrained(input)
       20384  +
                /* ServerBuilderGenerator.kt:345 */)
19473  20385   
            /* ServerBuilderGenerator.kt:344 */;
19474  20386   
            self
19475  20387   
            /* ServerBuilderGenerator.kt:343 */
19476  20388   
        }
19477  20389   
        /* ServerBuilderGenerator.kt:426 */
19478  20390   
        #[allow(missing_docs)] // documentation missing in model
19479  20391   
                               /* ServerBuilderGenerator.kt:428 */
19480         -
        pub(crate) fn set_header_float(
       20392  +
        pub(crate) fn set_top_level(
19481  20393   
            mut self,
19482         -
            input: Option<impl ::std::convert::Into<f32>>,
       20394  +
            input: impl ::std::convert::Into<
       20395  +
                crate::constrained::MaybeConstrained<crate::model::TopLevel>,
       20396  +
            >,
19483  20397   
        ) -> Self {
19484  20398   
            /* ServerBuilderGenerator.kt:429 */
19485         -
            self.header_float = input.map(|v| v.into());
       20399  +
            self.top_level = Some(input.into());
19486  20400   
            self
19487  20401   
            /* ServerBuilderGenerator.kt:428 */
19488  20402   
        }
19489         -
        /* ServerBuilderGenerator.kt:331 */
19490         -
        #[allow(missing_docs)] // documentation missing in model
19491         -
                               /* ServerBuilderGenerator.kt:343 */
19492         -
        pub fn header_double(mut self, input: ::std::option::Option<f64>) -> Self {
19493         -
            /* ServerBuilderGenerator.kt:344 */
19494         -
            self.header_double =
19495         -
                /* ServerBuilderGenerator.kt:376 */input
19496         -
            /* ServerBuilderGenerator.kt:344 */;
19497         -
            self
19498         -
            /* ServerBuilderGenerator.kt:343 */
       20403  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OperationWithNestedStructureInput`](crate::input::OperationWithNestedStructureInput).
       20404  +
        /// /* ServerBuilderGenerator.kt:260 */
       20405  +
        /// The builder fails to construct a [`OperationWithNestedStructureInput`](crate::input::OperationWithNestedStructureInput) if a [`ConstraintViolation`] occurs.
       20406  +
        ///
       20407  +
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
       20408  +
        /* ServerBuilderGenerator.kt:271 */
       20409  +
        pub fn build(
       20410  +
            self,
       20411  +
        ) -> Result<crate::input::OperationWithNestedStructureInput, ConstraintViolation> {
       20412  +
            self.build_enforcing_all_constraints()
19499  20413   
        }
19500         -
        /* ServerBuilderGenerator.kt:426 */
19501         -
        #[allow(missing_docs)] // documentation missing in model
19502         -
                               /* ServerBuilderGenerator.kt:428 */
19503         -
        pub(crate) fn set_header_double(
19504         -
            mut self,
19505         -
            input: Option<impl ::std::convert::Into<f64>>,
19506         -
        ) -> Self {
19507         -
            /* ServerBuilderGenerator.kt:429 */
19508         -
            self.header_double = input.map(|v| v.into());
19509         -
            self
19510         -
            /* ServerBuilderGenerator.kt:428 */
       20414  +
        /* ServerBuilderGenerator.kt:283 */
       20415  +
        fn build_enforcing_all_constraints(
       20416  +
            self,
       20417  +
        ) -> Result<crate::input::OperationWithNestedStructureInput, ConstraintViolation> {
       20418  +
            /* ServerBuilderGenerator.kt:287 */
       20419  +
            Ok(
       20420  +
                /* ServerBuilderGenerator.kt:542 */
       20421  +
                crate::input::OperationWithNestedStructureInput {
       20422  +
                    /* ServerBuilderGenerator.kt:546 */
       20423  +
                    top_level: self
       20424  +
                        .top_level
       20425  +
                        /* ServerBuilderGenerator.kt:602 */
       20426  +
                        .map(|v| match v {
       20427  +
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
       20428  +
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
       20429  +
                        })
       20430  +
                        /* ServerBuilderGenerator.kt:614 */
       20431  +
                        .map(|res| res.map_err(ConstraintViolation::TopLevel))
       20432  +
                        .transpose()?
       20433  +
                        /* ServerBuilderGenerator.kt:569 */
       20434  +
                        .ok_or(ConstraintViolation::MissingTopLevel)?,
       20435  +
                    /* ServerBuilderGenerator.kt:542 */
       20436  +
                }, /* ServerBuilderGenerator.kt:287 */
       20437  +
            )
       20438  +
            /* ServerBuilderGenerator.kt:283 */
19511  20439   
        }
19512         -
        /* ServerBuilderGenerator.kt:331 */
19513         -
        #[allow(missing_docs)] // documentation missing in model
19514         -
                               /* ServerBuilderGenerator.kt:343 */
19515         -
        pub fn header_true_bool(mut self, input: ::std::option::Option<bool>) -> Self {
19516         -
            /* ServerBuilderGenerator.kt:344 */
19517         -
            self.header_true_bool =
19518         -
                /* ServerBuilderGenerator.kt:376 */input
19519         -
            /* ServerBuilderGenerator.kt:344 */;
19520         -
            self
19521         -
            /* ServerBuilderGenerator.kt:343 */
       20440  +
        /* ServerBuilderGenerator.kt:215 */
19522  20441   
    }
19523         -
        /* ServerBuilderGenerator.kt:426 */
19524         -
        #[allow(missing_docs)] // documentation missing in model
19525         -
                               /* ServerBuilderGenerator.kt:428 */
19526         -
        pub(crate) fn set_header_true_bool(
19527         -
            mut self,
19528         -
            input: Option<impl ::std::convert::Into<bool>>,
19529         -
        ) -> Self {
19530         -
            /* ServerBuilderGenerator.kt:429 */
19531         -
            self.header_true_bool = input.map(|v| v.into());
19532         -
            self
19533         -
            /* ServerBuilderGenerator.kt:428 */
       20442  +
       20443  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       20444  +
}
       20445  +
/// /* ServerBuilderGenerator.kt:171 */See [`InputStreamInput`](crate::input::InputStreamInput).
       20446  +
pub mod input_stream_input {
       20447  +
       20448  +
    /* RustType.kt:534 */
       20449  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       20450  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       20451  +
    /* RustType.kt:534 */
       20452  +
    #[non_exhaustive]
       20453  +
    /* ServerBuilderConstraintViolations.kt:75 */
       20454  +
    #[allow(clippy::enum_variant_names)]
       20455  +
    pub enum ConstraintViolation {
       20456  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`stream` was not provided but it is required when building `InputStreamInput`.
       20457  +
        /* ServerBuilderConstraintViolations.kt:144 */
       20458  +
        MissingStream,
       20459  +
        /* ServerBuilderConstraintViolations.kt:75 */
19534  20460   
    }
19535         -
        /* ServerBuilderGenerator.kt:331 */
19536         -
        #[allow(missing_docs)] // documentation missing in model
19537         -
                               /* ServerBuilderGenerator.kt:343 */
19538         -
        pub fn header_false_bool(mut self, input: ::std::option::Option<bool>) -> Self {
19539         -
            /* ServerBuilderGenerator.kt:344 */
19540         -
            self.header_false_bool =
19541         -
                /* ServerBuilderGenerator.kt:376 */input
19542         -
            /* ServerBuilderGenerator.kt:344 */;
19543         -
            self
19544         -
            /* ServerBuilderGenerator.kt:343 */
       20461  +
    /* ServerBuilderConstraintViolations.kt:116 */
       20462  +
    impl ::std::fmt::Display for ConstraintViolation {
       20463  +
        /* ServerBuilderConstraintViolations.kt:117 */
       20464  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       20465  +
            /* ServerBuilderConstraintViolations.kt:118 */
       20466  +
            match self {
       20467  +
                /* ServerBuilderConstraintViolations.kt:126 */
       20468  +
                ConstraintViolation::MissingStream => write!(
       20469  +
                    f,
       20470  +
                    "`stream` was not provided but it is required when building `InputStreamInput`"
       20471  +
                ),
       20472  +
                /* ServerBuilderConstraintViolations.kt:118 */
19545  20473   
            }
19546         -
        /* ServerBuilderGenerator.kt:426 */
19547         -
        #[allow(missing_docs)] // documentation missing in model
19548         -
                               /* ServerBuilderGenerator.kt:428 */
19549         -
        pub(crate) fn set_header_false_bool(
19550         -
            mut self,
19551         -
            input: Option<impl ::std::convert::Into<bool>>,
19552         -
        ) -> Self {
19553         -
            /* ServerBuilderGenerator.kt:429 */
19554         -
            self.header_false_bool = input.map(|v| v.into());
19555         -
            self
19556         -
            /* ServerBuilderGenerator.kt:428 */
       20474  +
            /* ServerBuilderConstraintViolations.kt:117 */
19557  20475   
        }
19558         -
        /* ServerBuilderGenerator.kt:331 */
19559         -
        #[allow(missing_docs)] // documentation missing in model
19560         -
                               /* ServerBuilderGenerator.kt:343 */
19561         -
        pub fn header_string_list(
19562         -
            mut self,
19563         -
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
19564         -
        ) -> Self {
19565         -
            /* ServerBuilderGenerator.kt:344 */
19566         -
            self.header_string_list =
19567         -
                /* ServerBuilderGenerator.kt:376 */input
19568         -
            /* ServerBuilderGenerator.kt:344 */;
19569         -
            self
19570         -
            /* ServerBuilderGenerator.kt:343 */
       20476  +
        /* ServerBuilderConstraintViolations.kt:116 */
19571  20477   
    }
19572         -
        /* ServerBuilderGenerator.kt:426 */
19573         -
        #[allow(missing_docs)] // documentation missing in model
19574         -
                               /* ServerBuilderGenerator.kt:428 */
19575         -
        pub(crate) fn set_header_string_list(
19576         -
            mut self,
19577         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::std::string::String>>>,
19578         -
        ) -> Self {
19579         -
            /* ServerBuilderGenerator.kt:429 */
19580         -
            self.header_string_list = input.map(|v| v.into());
19581         -
            self
19582         -
            /* ServerBuilderGenerator.kt:428 */
       20478  +
    /* ServerBuilderConstraintViolations.kt:83 */
       20479  +
    impl ::std::error::Error for ConstraintViolation {}
       20480  +
    /* ServerBuilderConstraintViolations.kt:172 */
       20481  +
    impl ConstraintViolation {
       20482  +
        pub(crate) fn as_validation_exception_field(
       20483  +
            self,
       20484  +
            path: ::std::string::String,
       20485  +
        ) -> crate::model::ValidationExceptionField {
       20486  +
            match self {
       20487  +
            ConstraintViolation::MissingStream => crate::model::ValidationExceptionField {
       20488  +
                                                message: format!("Value at '{}/stream' failed to satisfy constraint: Member must not be null", path),
       20489  +
                                                path: path + "/stream",
       20490  +
                                            },
19583  20491   
        }
19584         -
        /* ServerBuilderGenerator.kt:331 */
19585         -
        #[allow(missing_docs)] // documentation missing in model
19586         -
                               /* ServerBuilderGenerator.kt:343 */
19587         -
        pub fn header_string_set(
19588         -
            mut self,
19589         -
            input: ::std::option::Option<crate::model::StringSet>,
19590         -
        ) -> Self {
19591         -
            /* ServerBuilderGenerator.kt:344 */
19592         -
            self.header_string_set =
19593         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
19594         -
            /* ServerBuilderGenerator.kt:344 */;
19595         -
            self
19596         -
            /* ServerBuilderGenerator.kt:343 */
19597  20492   
        }
19598         -
        /* ServerBuilderGenerator.kt:426 */
19599         -
        #[allow(missing_docs)] // documentation missing in model
19600         -
                               /* ServerBuilderGenerator.kt:428 */
19601         -
        pub(crate) fn set_header_string_set(
19602         -
            mut self,
19603         -
            input: Option<
19604         -
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::StringSet>>,
19605         -
            >,
19606         -
        ) -> Self {
19607         -
            /* ServerBuilderGenerator.kt:429 */
19608         -
            self.header_string_set = input.map(|v| v.into());
19609         -
            self
19610         -
            /* ServerBuilderGenerator.kt:428 */
19611  20493   
    }
19612         -
        /* ServerBuilderGenerator.kt:331 */
19613         -
        #[allow(missing_docs)] // documentation missing in model
19614         -
                               /* ServerBuilderGenerator.kt:343 */
19615         -
        pub fn header_integer_list(
19616         -
            mut self,
19617         -
            input: ::std::option::Option<::std::vec::Vec<i32>>,
19618         -
        ) -> Self {
19619         -
            /* ServerBuilderGenerator.kt:344 */
19620         -
            self.header_integer_list =
19621         -
                /* ServerBuilderGenerator.kt:376 */input
19622         -
            /* ServerBuilderGenerator.kt:344 */;
19623         -
            self
19624         -
            /* ServerBuilderGenerator.kt:343 */
       20494  +
    /* ServerBuilderGenerator.kt:234 */
       20495  +
    impl ::std::convert::From<ConstraintViolation>
       20496  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       20497  +
    {
       20498  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       20499  +
            let first_validation_exception_field =
       20500  +
                constraint_violation.as_validation_exception_field("".to_owned());
       20501  +
            let validation_exception = crate::error::ValidationException {
       20502  +
                message: format!(
       20503  +
                    "1 validation error detected. {}",
       20504  +
                    &first_validation_exception_field.message
       20505  +
                ),
       20506  +
                field_list: Some(vec![first_validation_exception_field]),
       20507  +
            };
       20508  +
            Self::ConstraintViolation(
       20509  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       20510  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       20511  +
                            )
       20512  +
        }
       20513  +
    }
       20514  +
    /* ServerBuilderGenerator.kt:244 */
       20515  +
    impl ::std::convert::From<Builder>
       20516  +
        for crate::constrained::MaybeConstrained<crate::input::InputStreamInput>
       20517  +
    {
       20518  +
        fn from(builder: Builder) -> Self {
       20519  +
            Self::Unconstrained(builder)
19625  20520   
        }
19626         -
        /* ServerBuilderGenerator.kt:426 */
19627         -
        #[allow(missing_docs)] // documentation missing in model
19628         -
                               /* ServerBuilderGenerator.kt:428 */
19629         -
        pub(crate) fn set_header_integer_list(
19630         -
            mut self,
19631         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
19632         -
        ) -> Self {
19633         -
            /* ServerBuilderGenerator.kt:429 */
19634         -
            self.header_integer_list = input.map(|v| v.into());
19635         -
            self
19636         -
            /* ServerBuilderGenerator.kt:428 */
19637  20521   
    }
       20522  +
    /* ServerBuilderGenerator.kt:446 */
       20523  +
    impl ::std::convert::TryFrom<Builder> for crate::input::InputStreamInput {
       20524  +
        type Error = ConstraintViolation;
       20525  +
       20526  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       20527  +
            builder.build()
       20528  +
        }
       20529  +
    }
       20530  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`InputStreamInput`](crate::input::InputStreamInput).
       20531  +
    /* RustType.kt:534 */
       20532  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
       20533  +
    /* ServerBuilderGenerator.kt:211 */
       20534  +
    pub struct Builder {
       20535  +
        /* ServerBuilderGenerator.kt:308 */
       20536  +
        pub(crate) stream: ::std::option::Option<
       20537  +
            crate::sigv4_event_stream::SigV4Receiver<
       20538  +
                crate::model::EventStream,
       20539  +
                crate::error::EventStreamError,
       20540  +
            >,
       20541  +
        >,
       20542  +
        /* ServerBuilderGenerator.kt:211 */
       20543  +
    }
       20544  +
    /* ServerBuilderGenerator.kt:215 */
       20545  +
    impl Builder {
19638  20546   
        /* ServerBuilderGenerator.kt:331 */
19639  20547   
        #[allow(missing_docs)] // documentation missing in model
19640  20548   
                               /* ServerBuilderGenerator.kt:343 */
19641         -
        pub fn header_boolean_list(
       20549  +
        pub fn stream(
19642  20550   
            mut self,
19643         -
            input: ::std::option::Option<::std::vec::Vec<bool>>,
       20551  +
            input: crate::sigv4_event_stream::SigV4Receiver<
       20552  +
                crate::model::EventStream,
       20553  +
                crate::error::EventStreamError,
       20554  +
            >,
19644  20555   
        ) -> Self {
19645  20556   
            /* ServerBuilderGenerator.kt:344 */
19646         -
            self.header_boolean_list =
       20557  +
            self.stream =
       20558  +
                /* ServerBuilderGenerator.kt:345 */Some(
19647  20559   
                    /* ServerBuilderGenerator.kt:376 */input
       20560  +
                /* ServerBuilderGenerator.kt:345 */)
19648  20561   
            /* ServerBuilderGenerator.kt:344 */;
19649  20562   
            self
19650  20563   
            /* ServerBuilderGenerator.kt:343 */
19651  20564   
        }
19652  20565   
        /* ServerBuilderGenerator.kt:426 */
19653  20566   
        #[allow(missing_docs)] // documentation missing in model
19654  20567   
                               /* ServerBuilderGenerator.kt:428 */
19655         -
        pub(crate) fn set_header_boolean_list(
       20568  +
        pub(crate) fn set_stream(
19656  20569   
            mut self,
19657         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<bool>>>,
       20570  +
            input: impl ::std::convert::Into<
       20571  +
                crate::sigv4_event_stream::SigV4Receiver<
       20572  +
                    crate::model::EventStream,
       20573  +
                    crate::error::EventStreamError,
       20574  +
                >,
       20575  +
            >,
19658  20576   
        ) -> Self {
19659  20577   
            /* ServerBuilderGenerator.kt:429 */
19660         -
            self.header_boolean_list = input.map(|v| v.into());
       20578  +
            self.stream = Some(input.into());
19661  20579   
            self
19662  20580   
            /* ServerBuilderGenerator.kt:428 */
19663  20581   
        }
       20582  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`InputStreamInput`](crate::input::InputStreamInput).
       20583  +
        /// /* ServerBuilderGenerator.kt:260 */
       20584  +
        /// The builder fails to construct a [`InputStreamInput`](crate::input::InputStreamInput) if a [`ConstraintViolation`] occurs.
       20585  +
        ///
       20586  +
        /* ServerBuilderGenerator.kt:271 */
       20587  +
        pub fn build(self) -> Result<crate::input::InputStreamInput, ConstraintViolation> {
       20588  +
            self.build_enforcing_all_constraints()
       20589  +
        }
       20590  +
        /* ServerBuilderGenerator.kt:283 */
       20591  +
        fn build_enforcing_all_constraints(
       20592  +
            self,
       20593  +
        ) -> Result<crate::input::InputStreamInput, ConstraintViolation> {
       20594  +
            /* ServerBuilderGenerator.kt:287 */
       20595  +
            Ok(
       20596  +
                /* ServerBuilderGenerator.kt:542 */
       20597  +
                crate::input::InputStreamInput {
       20598  +
                    /* ServerBuilderGenerator.kt:546 */
       20599  +
                    stream: self
       20600  +
                        .stream
       20601  +
                        /* ServerBuilderGenerator.kt:569 */
       20602  +
                        .ok_or(ConstraintViolation::MissingStream)?,
       20603  +
                    /* ServerBuilderGenerator.kt:542 */
       20604  +
                }, /* ServerBuilderGenerator.kt:287 */
       20605  +
            )
       20606  +
            /* ServerBuilderGenerator.kt:283 */
       20607  +
        }
       20608  +
        /* ServerBuilderGenerator.kt:215 */
       20609  +
    }
       20610  +
       20611  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       20612  +
}
       20613  +
/// /* ServerBuilderGenerator.kt:171 */See [`OutputStreamInput`](crate::input::OutputStreamInput).
       20614  +
pub mod output_stream_input {
       20615  +
       20616  +
    /* ServerBuilderGenerator.kt:461 */
       20617  +
    impl ::std::convert::From<Builder> for crate::input::OutputStreamInput {
       20618  +
        fn from(builder: Builder) -> Self {
       20619  +
            builder.build()
       20620  +
        }
       20621  +
    }
       20622  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OutputStreamInput`](crate::input::OutputStreamInput).
       20623  +
    /* RustType.kt:534 */
       20624  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       20625  +
    /* ServerBuilderGenerator.kt:211 */
       20626  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       20627  +
    /* ServerBuilderGenerator.kt:215 */
       20628  +
    impl Builder {
       20629  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OutputStreamInput`](crate::input::OutputStreamInput).
       20630  +
        /* ServerBuilderGenerator.kt:271 */
       20631  +
        pub fn build(self) -> crate::input::OutputStreamInput {
       20632  +
            self.build_enforcing_all_constraints()
       20633  +
        }
       20634  +
        /* ServerBuilderGenerator.kt:283 */
       20635  +
        fn build_enforcing_all_constraints(self) -> crate::input::OutputStreamInput {
       20636  +
            /* ServerBuilderGenerator.kt:542 */
       20637  +
            crate::input::OutputStreamInput {
       20638  +
            /* ServerBuilderGenerator.kt:542 */}
       20639  +
            /* ServerBuilderGenerator.kt:283 */
       20640  +
        }
       20641  +
        /* ServerBuilderGenerator.kt:215 */
       20642  +
    }
       20643  +
       20644  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       20645  +
}
       20646  +
/// /* ServerBuilderGenerator.kt:171 */See [`DuplexStreamInput`](crate::input::DuplexStreamInput).
       20647  +
pub mod duplex_stream_input {
       20648  +
       20649  +
    /* RustType.kt:534 */
       20650  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       20651  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       20652  +
    /* RustType.kt:534 */
       20653  +
    #[non_exhaustive]
       20654  +
    /* ServerBuilderConstraintViolations.kt:75 */
       20655  +
    #[allow(clippy::enum_variant_names)]
       20656  +
    pub enum ConstraintViolation {
       20657  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`stream` was not provided but it is required when building `DuplexStreamInput`.
       20658  +
        /* ServerBuilderConstraintViolations.kt:144 */
       20659  +
        MissingStream,
       20660  +
        /* ServerBuilderConstraintViolations.kt:75 */
       20661  +
    }
       20662  +
    /* ServerBuilderConstraintViolations.kt:116 */
       20663  +
    impl ::std::fmt::Display for ConstraintViolation {
       20664  +
        /* ServerBuilderConstraintViolations.kt:117 */
       20665  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       20666  +
            /* ServerBuilderConstraintViolations.kt:118 */
       20667  +
            match self {
       20668  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingStream => write!(f, "`stream` was not provided but it is required when building `DuplexStreamInput`"),
       20669  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       20670  +
            /* ServerBuilderConstraintViolations.kt:117 */
       20671  +
        }
       20672  +
        /* ServerBuilderConstraintViolations.kt:116 */
       20673  +
    }
       20674  +
    /* ServerBuilderConstraintViolations.kt:83 */
       20675  +
    impl ::std::error::Error for ConstraintViolation {}
       20676  +
    /* ServerBuilderConstraintViolations.kt:172 */
       20677  +
    impl ConstraintViolation {
       20678  +
        pub(crate) fn as_validation_exception_field(
       20679  +
            self,
       20680  +
            path: ::std::string::String,
       20681  +
        ) -> crate::model::ValidationExceptionField {
       20682  +
            match self {
       20683  +
            ConstraintViolation::MissingStream => crate::model::ValidationExceptionField {
       20684  +
                                                message: format!("Value at '{}/stream' failed to satisfy constraint: Member must not be null", path),
       20685  +
                                                path: path + "/stream",
       20686  +
                                            },
       20687  +
        }
       20688  +
        }
       20689  +
    }
       20690  +
    /* ServerBuilderGenerator.kt:234 */
       20691  +
    impl ::std::convert::From<ConstraintViolation>
       20692  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       20693  +
    {
       20694  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       20695  +
            let first_validation_exception_field =
       20696  +
                constraint_violation.as_validation_exception_field("".to_owned());
       20697  +
            let validation_exception = crate::error::ValidationException {
       20698  +
                message: format!(
       20699  +
                    "1 validation error detected. {}",
       20700  +
                    &first_validation_exception_field.message
       20701  +
                ),
       20702  +
                field_list: Some(vec![first_validation_exception_field]),
       20703  +
            };
       20704  +
            Self::ConstraintViolation(
       20705  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       20706  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       20707  +
                            )
       20708  +
        }
       20709  +
    }
       20710  +
    /* ServerBuilderGenerator.kt:244 */
       20711  +
    impl ::std::convert::From<Builder>
       20712  +
        for crate::constrained::MaybeConstrained<crate::input::DuplexStreamInput>
       20713  +
    {
       20714  +
        fn from(builder: Builder) -> Self {
       20715  +
            Self::Unconstrained(builder)
       20716  +
        }
       20717  +
    }
       20718  +
    /* ServerBuilderGenerator.kt:446 */
       20719  +
    impl ::std::convert::TryFrom<Builder> for crate::input::DuplexStreamInput {
       20720  +
        type Error = ConstraintViolation;
       20721  +
       20722  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       20723  +
            builder.build()
       20724  +
        }
       20725  +
    }
       20726  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`DuplexStreamInput`](crate::input::DuplexStreamInput).
       20727  +
    /* RustType.kt:534 */
       20728  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
       20729  +
    /* ServerBuilderGenerator.kt:211 */
       20730  +
    pub struct Builder {
       20731  +
        /* ServerBuilderGenerator.kt:308 */
       20732  +
        pub(crate) stream: ::std::option::Option<
       20733  +
            crate::sigv4_event_stream::SigV4Receiver<
       20734  +
                crate::model::EventStream,
       20735  +
                crate::error::EventStreamError,
       20736  +
            >,
       20737  +
        >,
       20738  +
        /* ServerBuilderGenerator.kt:211 */
       20739  +
    }
       20740  +
    /* ServerBuilderGenerator.kt:215 */
       20741  +
    impl Builder {
19664  20742   
        /* ServerBuilderGenerator.kt:331 */
19665  20743   
        #[allow(missing_docs)] // documentation missing in model
19666  20744   
                               /* ServerBuilderGenerator.kt:343 */
19667         -
        pub fn header_timestamp_list(
       20745  +
        pub fn stream(
19668  20746   
            mut self,
19669         -
            input: ::std::option::Option<::std::vec::Vec<::aws_smithy_types::DateTime>>,
       20747  +
            input: crate::sigv4_event_stream::SigV4Receiver<
       20748  +
                crate::model::EventStream,
       20749  +
                crate::error::EventStreamError,
       20750  +
            >,
19670  20751   
        ) -> Self {
19671  20752   
            /* ServerBuilderGenerator.kt:344 */
19672         -
            self.header_timestamp_list =
       20753  +
            self.stream =
       20754  +
                /* ServerBuilderGenerator.kt:345 */Some(
19673  20755   
                    /* ServerBuilderGenerator.kt:376 */input
       20756  +
                /* ServerBuilderGenerator.kt:345 */)
19674  20757   
            /* ServerBuilderGenerator.kt:344 */;
19675  20758   
            self
19676  20759   
            /* ServerBuilderGenerator.kt:343 */
19677  20760   
        }
19678  20761   
        /* ServerBuilderGenerator.kt:426 */
19679  20762   
        #[allow(missing_docs)] // documentation missing in model
19680  20763   
                               /* ServerBuilderGenerator.kt:428 */
19681         -
        pub(crate) fn set_header_timestamp_list(
       20764  +
        pub(crate) fn set_stream(
19682  20765   
            mut self,
19683         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<::aws_smithy_types::DateTime>>>,
       20766  +
            input: impl ::std::convert::Into<
       20767  +
                crate::sigv4_event_stream::SigV4Receiver<
       20768  +
                    crate::model::EventStream,
       20769  +
                    crate::error::EventStreamError,
       20770  +
                >,
       20771  +
            >,
19684  20772   
        ) -> Self {
19685  20773   
            /* ServerBuilderGenerator.kt:429 */
19686         -
            self.header_timestamp_list = input.map(|v| v.into());
       20774  +
            self.stream = Some(input.into());
19687  20775   
            self
19688  20776   
            /* ServerBuilderGenerator.kt:428 */
19689  20777   
        }
19690         -
        /* ServerBuilderGenerator.kt:331 */
19691         -
        #[allow(missing_docs)] // documentation missing in model
19692         -
                               /* ServerBuilderGenerator.kt:343 */
19693         -
        pub fn header_enum(mut self, input: ::std::option::Option<crate::model::FooEnum>) -> Self {
19694         -
            /* ServerBuilderGenerator.kt:344 */
19695         -
            self.header_enum =
19696         -
                /* ServerBuilderGenerator.kt:370 */input.map(crate::constrained::MaybeConstrained::Constrained)
19697         -
            /* ServerBuilderGenerator.kt:344 */;
19698         -
            self
19699         -
            /* ServerBuilderGenerator.kt:343 */
       20778  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`DuplexStreamInput`](crate::input::DuplexStreamInput).
       20779  +
        /// /* ServerBuilderGenerator.kt:260 */
       20780  +
        /// The builder fails to construct a [`DuplexStreamInput`](crate::input::DuplexStreamInput) if a [`ConstraintViolation`] occurs.
       20781  +
        ///
       20782  +
        /* ServerBuilderGenerator.kt:271 */
       20783  +
        pub fn build(self) -> Result<crate::input::DuplexStreamInput, ConstraintViolation> {
       20784  +
            self.build_enforcing_all_constraints()
       20785  +
        }
       20786  +
        /* ServerBuilderGenerator.kt:283 */
       20787  +
        fn build_enforcing_all_constraints(
       20788  +
            self,
       20789  +
        ) -> Result<crate::input::DuplexStreamInput, ConstraintViolation> {
       20790  +
            /* ServerBuilderGenerator.kt:287 */
       20791  +
            Ok(
       20792  +
                /* ServerBuilderGenerator.kt:542 */
       20793  +
                crate::input::DuplexStreamInput {
       20794  +
                    /* ServerBuilderGenerator.kt:546 */
       20795  +
                    stream: self
       20796  +
                        .stream
       20797  +
                        /* ServerBuilderGenerator.kt:569 */
       20798  +
                        .ok_or(ConstraintViolation::MissingStream)?,
       20799  +
                    /* ServerBuilderGenerator.kt:542 */
       20800  +
                }, /* ServerBuilderGenerator.kt:287 */
       20801  +
            )
       20802  +
            /* ServerBuilderGenerator.kt:283 */
       20803  +
        }
       20804  +
        /* ServerBuilderGenerator.kt:215 */
       20805  +
    }
       20806  +
       20807  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       20808  +
}
       20809  +
/// /* ServerBuilderGenerator.kt:171 */See [`InputStreamWithInitialRequestInput`](crate::input::InputStreamWithInitialRequestInput).
       20810  +
pub mod input_stream_with_initial_request_input {
       20811  +
       20812  +
    /* RustType.kt:534 */
       20813  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       20814  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       20815  +
    /* RustType.kt:534 */
       20816  +
    #[non_exhaustive]
       20817  +
    /* ServerBuilderConstraintViolations.kt:75 */
       20818  +
    #[allow(clippy::enum_variant_names)]
       20819  +
    pub enum ConstraintViolation {
       20820  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`initial_request_member` was not provided but it is required when building `InputStreamWithInitialRequestInput`.
       20821  +
        /* ServerBuilderConstraintViolations.kt:144 */
       20822  +
        MissingInitialRequestMember,
       20823  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`stream` was not provided but it is required when building `InputStreamWithInitialRequestInput`.
       20824  +
        /* ServerBuilderConstraintViolations.kt:144 */
       20825  +
        MissingStream,
       20826  +
        /* ServerBuilderConstraintViolations.kt:75 */
       20827  +
    }
       20828  +
    /* ServerBuilderConstraintViolations.kt:116 */
       20829  +
    impl ::std::fmt::Display for ConstraintViolation {
       20830  +
        /* ServerBuilderConstraintViolations.kt:117 */
       20831  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       20832  +
            /* ServerBuilderConstraintViolations.kt:118 */
       20833  +
            match self {
       20834  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingInitialRequestMember => write!(f, "`initial_request_member` was not provided but it is required when building `InputStreamWithInitialRequestInput`"),
       20835  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingStream => write!(f, "`stream` was not provided but it is required when building `InputStreamWithInitialRequestInput`"),
       20836  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       20837  +
            /* ServerBuilderConstraintViolations.kt:117 */
       20838  +
        }
       20839  +
        /* ServerBuilderConstraintViolations.kt:116 */
       20840  +
    }
       20841  +
    /* ServerBuilderConstraintViolations.kt:83 */
       20842  +
    impl ::std::error::Error for ConstraintViolation {}
       20843  +
    /* ServerBuilderConstraintViolations.kt:172 */
       20844  +
    impl ConstraintViolation {
       20845  +
        pub(crate) fn as_validation_exception_field(
       20846  +
            self,
       20847  +
            path: ::std::string::String,
       20848  +
        ) -> crate::model::ValidationExceptionField {
       20849  +
            match self {
       20850  +
            ConstraintViolation::MissingInitialRequestMember => crate::model::ValidationExceptionField {
       20851  +
                                                message: format!("Value at '{}/initialRequestMember' failed to satisfy constraint: Member must not be null", path),
       20852  +
                                                path: path + "/initialRequestMember",
       20853  +
                                            },
       20854  +
            ConstraintViolation::MissingStream => crate::model::ValidationExceptionField {
       20855  +
                                                message: format!("Value at '{}/stream' failed to satisfy constraint: Member must not be null", path),
       20856  +
                                                path: path + "/stream",
       20857  +
                                            },
       20858  +
        }
       20859  +
        }
       20860  +
    }
       20861  +
    /* ServerBuilderGenerator.kt:234 */
       20862  +
    impl ::std::convert::From<ConstraintViolation>
       20863  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       20864  +
    {
       20865  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       20866  +
            let first_validation_exception_field =
       20867  +
                constraint_violation.as_validation_exception_field("".to_owned());
       20868  +
            let validation_exception = crate::error::ValidationException {
       20869  +
                message: format!(
       20870  +
                    "1 validation error detected. {}",
       20871  +
                    &first_validation_exception_field.message
       20872  +
                ),
       20873  +
                field_list: Some(vec![first_validation_exception_field]),
       20874  +
            };
       20875  +
            Self::ConstraintViolation(
       20876  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       20877  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       20878  +
                            )
       20879  +
        }
       20880  +
    }
       20881  +
    /* ServerBuilderGenerator.kt:244 */
       20882  +
    impl ::std::convert::From<Builder>
       20883  +
        for crate::constrained::MaybeConstrained<crate::input::InputStreamWithInitialRequestInput>
       20884  +
    {
       20885  +
        fn from(builder: Builder) -> Self {
       20886  +
            Self::Unconstrained(builder)
       20887  +
        }
19700  20888   
    }
19701         -
        /* ServerBuilderGenerator.kt:426 */
19702         -
        #[allow(missing_docs)] // documentation missing in model
19703         -
                               /* ServerBuilderGenerator.kt:428 */
19704         -
        pub(crate) fn set_header_enum(
19705         -
            mut self,
19706         -
            input: Option<
19707         -
                impl ::std::convert::Into<crate::constrained::MaybeConstrained<crate::model::FooEnum>>,
19708         -
            >,
19709         -
        ) -> Self {
19710         -
            /* ServerBuilderGenerator.kt:429 */
19711         -
            self.header_enum = input.map(|v| v.into());
19712         -
            self
19713         -
            /* ServerBuilderGenerator.kt:428 */
       20889  +
    /* ServerBuilderGenerator.kt:446 */
       20890  +
    impl ::std::convert::TryFrom<Builder> for crate::input::InputStreamWithInitialRequestInput {
       20891  +
        type Error = ConstraintViolation;
       20892  +
       20893  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
       20894  +
            builder.build()
19714  20895   
        }
19715         -
        /* ServerBuilderGenerator.kt:331 */
19716         -
        #[allow(missing_docs)] // documentation missing in model
19717         -
                               /* ServerBuilderGenerator.kt:343 */
19718         -
        pub fn header_enum_list(
19719         -
            mut self,
19720         -
            input: ::std::option::Option<::std::vec::Vec<crate::model::FooEnum>>,
19721         -
        ) -> Self {
19722         -
            /* ServerBuilderGenerator.kt:344 */
19723         -
            self.header_enum_list =
19724         -
                /* ServerBuilderGenerator.kt:363 */input.map(|v|
19725         -
                    /* ServerBuilderGenerator.kt:365 */crate::constrained::MaybeConstrained::Constrained((v).into())
19726         -
                /* ServerBuilderGenerator.kt:363 */)
19727         -
            /* ServerBuilderGenerator.kt:344 */;
19728         -
            self
19729         -
            /* ServerBuilderGenerator.kt:343 */
19730  20896   
    }
19731         -
        /* ServerBuilderGenerator.kt:426 */
19732         -
        #[allow(missing_docs)] // documentation missing in model
19733         -
                               /* ServerBuilderGenerator.kt:428 */
19734         -
        pub(crate) fn set_header_enum_list(
19735         -
            mut self,
19736         -
            input: Option<
19737         -
                impl ::std::convert::Into<
19738         -
                    crate::constrained::MaybeConstrained<
19739         -
                        crate::constrained::foo_enum_list_constrained::FooEnumListConstrained,
19740         -
                    >,
       20897  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`InputStreamWithInitialRequestInput`](crate::input::InputStreamWithInitialRequestInput).
       20898  +
    /* RustType.kt:534 */
       20899  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
       20900  +
    /* ServerBuilderGenerator.kt:211 */
       20901  +
    pub struct Builder {
       20902  +
        /* ServerBuilderGenerator.kt:308 */
       20903  +
        pub(crate) initial_request_member: ::std::option::Option<::std::string::String>,
       20904  +
        /* ServerBuilderGenerator.kt:308 */
       20905  +
        pub(crate) stream: ::std::option::Option<
       20906  +
            crate::sigv4_event_stream::SigV4Receiver<
       20907  +
                crate::model::EventStream,
       20908  +
                crate::error::EventStreamError,
19741  20909   
            >,
19742  20910   
        >,
19743         -
        ) -> Self {
19744         -
            /* ServerBuilderGenerator.kt:429 */
19745         -
            self.header_enum_list = input.map(|v| v.into());
19746         -
            self
19747         -
            /* ServerBuilderGenerator.kt:428 */
       20911  +
        /* ServerBuilderGenerator.kt:211 */
19748  20912   
    }
       20913  +
    /* ServerBuilderGenerator.kt:215 */
       20914  +
    impl Builder {
19749  20915   
        /* ServerBuilderGenerator.kt:331 */
19750  20916   
        #[allow(missing_docs)] // documentation missing in model
19751  20917   
                               /* ServerBuilderGenerator.kt:343 */
19752         -
        pub fn header_integer_enum(mut self, input: ::std::option::Option<i32>) -> Self {
       20918  +
        pub fn initial_request_member(mut self, input: ::std::string::String) -> Self {
19753  20919   
            /* ServerBuilderGenerator.kt:344 */
19754         -
            self.header_integer_enum =
       20920  +
            self.initial_request_member =
       20921  +
                /* ServerBuilderGenerator.kt:345 */Some(
19755  20922   
                    /* ServerBuilderGenerator.kt:376 */input
       20923  +
                /* ServerBuilderGenerator.kt:345 */)
19756  20924   
            /* ServerBuilderGenerator.kt:344 */;
19757  20925   
            self
19758  20926   
            /* ServerBuilderGenerator.kt:343 */
19759  20927   
        }
19760  20928   
        /* ServerBuilderGenerator.kt:426 */
19761  20929   
        #[allow(missing_docs)] // documentation missing in model
19762  20930   
                               /* ServerBuilderGenerator.kt:428 */
19763         -
        pub(crate) fn set_header_integer_enum(
       20931  +
        pub(crate) fn set_initial_request_member(
19764  20932   
            mut self,
19765         -
            input: Option<impl ::std::convert::Into<i32>>,
       20933  +
            input: impl ::std::convert::Into<::std::string::String>,
19766  20934   
        ) -> Self {
19767  20935   
            /* ServerBuilderGenerator.kt:429 */
19768         -
            self.header_integer_enum = input.map(|v| v.into());
       20936  +
            self.initial_request_member = Some(input.into());
19769  20937   
            self
19770  20938   
            /* ServerBuilderGenerator.kt:428 */
19771  20939   
        }
19772  20940   
        /* ServerBuilderGenerator.kt:331 */
19773  20941   
        #[allow(missing_docs)] // documentation missing in model
19774  20942   
                               /* ServerBuilderGenerator.kt:343 */
19775         -
        pub fn header_integer_enum_list(
       20943  +
        pub fn stream(
19776  20944   
            mut self,
19777         -
            input: ::std::option::Option<::std::vec::Vec<i32>>,
       20945  +
            input: crate::sigv4_event_stream::SigV4Receiver<
       20946  +
                crate::model::EventStream,
       20947  +
                crate::error::EventStreamError,
       20948  +
            >,
19778  20949   
        ) -> Self {
19779  20950   
            /* ServerBuilderGenerator.kt:344 */
19780         -
            self.header_integer_enum_list =
       20951  +
            self.stream =
       20952  +
                /* ServerBuilderGenerator.kt:345 */Some(
19781  20953   
                    /* ServerBuilderGenerator.kt:376 */input
       20954  +
                /* ServerBuilderGenerator.kt:345 */)
19782  20955   
            /* ServerBuilderGenerator.kt:344 */;
19783  20956   
            self
19784  20957   
            /* ServerBuilderGenerator.kt:343 */
19785  20958   
        }
19786  20959   
        /* ServerBuilderGenerator.kt:426 */
19787  20960   
        #[allow(missing_docs)] // documentation missing in model
19788  20961   
                               /* ServerBuilderGenerator.kt:428 */
19789         -
        pub(crate) fn set_header_integer_enum_list(
       20962  +
        pub(crate) fn set_stream(
19790  20963   
            mut self,
19791         -
            input: Option<impl ::std::convert::Into<::std::vec::Vec<i32>>>,
       20964  +
            input: impl ::std::convert::Into<
       20965  +
                crate::sigv4_event_stream::SigV4Receiver<
       20966  +
                    crate::model::EventStream,
       20967  +
                    crate::error::EventStreamError,
       20968  +
                >,
       20969  +
            >,
19792  20970   
        ) -> Self {
19793  20971   
            /* ServerBuilderGenerator.kt:429 */
19794         -
            self.header_integer_enum_list = input.map(|v| v.into());
       20972  +
            self.stream = Some(input.into());
19795  20973   
            self
19796  20974   
            /* ServerBuilderGenerator.kt:428 */
19797  20975   
        }
19798         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`InputAndOutputWithHeadersInput`](crate::input::InputAndOutputWithHeadersInput).
       20976  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`InputStreamWithInitialRequestInput`](crate::input::InputStreamWithInitialRequestInput).
19799  20977   
        /// /* ServerBuilderGenerator.kt:260 */
19800         -
        /// The builder fails to construct a [`InputAndOutputWithHeadersInput`](crate::input::InputAndOutputWithHeadersInput) if a [`ConstraintViolation`] occurs.
       20978  +
        /// The builder fails to construct a [`InputStreamWithInitialRequestInput`](crate::input::InputStreamWithInitialRequestInput) if a [`ConstraintViolation`] occurs.
19801  20979   
        ///
19802  20980   
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
19803  20981   
        /* ServerBuilderGenerator.kt:271 */
19804  20982   
        pub fn build(
19805  20983   
            self,
19806         -
        ) -> Result<crate::input::InputAndOutputWithHeadersInput, ConstraintViolation> {
       20984  +
        ) -> Result<crate::input::InputStreamWithInitialRequestInput, ConstraintViolation> {
19807  20985   
            self.build_enforcing_all_constraints()
19808  20986   
        }
19809  20987   
        /* ServerBuilderGenerator.kt:283 */
19810  20988   
        fn build_enforcing_all_constraints(
19811  20989   
            self,
19812         -
        ) -> Result<crate::input::InputAndOutputWithHeadersInput, ConstraintViolation> {
       20990  +
        ) -> Result<crate::input::InputStreamWithInitialRequestInput, ConstraintViolation> {
19813  20991   
            /* ServerBuilderGenerator.kt:287 */
19814  20992   
            Ok(
19815  20993   
                /* ServerBuilderGenerator.kt:542 */
19816         -
                crate::input::InputAndOutputWithHeadersInput {
19817         -
                    /* ServerBuilderGenerator.kt:546 */
19818         -
                    header_string: self.header_string,
19819         -
                    /* ServerBuilderGenerator.kt:546 */
19820         -
                    header_byte: self.header_byte,
19821         -
                    /* ServerBuilderGenerator.kt:546 */
19822         -
                    header_short: self.header_short,
19823         -
                    /* ServerBuilderGenerator.kt:546 */
19824         -
                    header_integer: self.header_integer,
19825         -
                    /* ServerBuilderGenerator.kt:546 */
19826         -
                    header_long: self.header_long,
19827         -
                    /* ServerBuilderGenerator.kt:546 */
19828         -
                    header_float: self.header_float,
19829         -
                    /* ServerBuilderGenerator.kt:546 */
19830         -
                    header_double: self.header_double,
19831         -
                    /* ServerBuilderGenerator.kt:546 */
19832         -
                    header_true_bool: self.header_true_bool,
19833         -
                    /* ServerBuilderGenerator.kt:546 */
19834         -
                    header_false_bool: self.header_false_bool,
19835         -
                    /* ServerBuilderGenerator.kt:546 */
19836         -
                    header_string_list: self.header_string_list,
19837         -
                    /* ServerBuilderGenerator.kt:546 */
19838         -
                    header_string_set: self
19839         -
                        .header_string_set
19840         -
                        /* ServerBuilderGenerator.kt:602 */
19841         -
                        .map(|v| match v {
19842         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
19843         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
19844         -
                        })
19845         -
                        /* ServerBuilderGenerator.kt:614 */
19846         -
                        .map(|res| res.map_err(ConstraintViolation::HeaderStringSet))
19847         -
                        .transpose()?,
19848         -
                    /* ServerBuilderGenerator.kt:546 */
19849         -
                    header_integer_list: self.header_integer_list,
19850         -
                    /* ServerBuilderGenerator.kt:546 */
19851         -
                    header_boolean_list: self.header_boolean_list,
19852         -
                    /* ServerBuilderGenerator.kt:546 */
19853         -
                    header_timestamp_list: self.header_timestamp_list,
19854         -
                    /* ServerBuilderGenerator.kt:546 */
19855         -
                    header_enum: self
19856         -
                        .header_enum
19857         -
                        /* ServerBuilderGenerator.kt:602 */
19858         -
                        .map(|v| match v {
19859         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
19860         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
19861         -
                        })
19862         -
                        /* ServerBuilderGenerator.kt:614 */
19863         -
                        .map(|res| res.map_err(ConstraintViolation::HeaderEnum))
19864         -
                        .transpose()?,
19865         -
                    /* ServerBuilderGenerator.kt:546 */
19866         -
                    header_enum_list: self
19867         -
                        .header_enum_list
19868         -
                        /* ServerBuilderGenerator.kt:602 */
19869         -
                        .map(|v| match v {
19870         -
                            crate::constrained::MaybeConstrained::Constrained(x) => Ok(x),
19871         -
                            crate::constrained::MaybeConstrained::Unconstrained(x) => x.try_into(),
19872         -
                        })
19873         -
                        /* ServerBuilderGenerator.kt:614 */
19874         -
                        .map(|res| {
19875         -
                            res.map(|v| v.into())
19876         -
                                .map_err(ConstraintViolation::HeaderEnumList)
19877         -
                        })
19878         -
                        .transpose()?,
       20994  +
                crate::input::InputStreamWithInitialRequestInput {
19879  20995   
                    /* ServerBuilderGenerator.kt:546 */
19880         -
                    header_integer_enum: self.header_integer_enum,
       20996  +
                    initial_request_member: self
       20997  +
                        .initial_request_member
       20998  +
                        /* ServerBuilderGenerator.kt:569 */
       20999  +
                        .ok_or(ConstraintViolation::MissingInitialRequestMember)?,
19881  21000   
                    /* ServerBuilderGenerator.kt:546 */
19882         -
                    header_integer_enum_list: self.header_integer_enum_list,
       21001  +
                    stream: self
       21002  +
                        .stream
       21003  +
                        /* ServerBuilderGenerator.kt:569 */
       21004  +
                        .ok_or(ConstraintViolation::MissingStream)?,
19883  21005   
                    /* ServerBuilderGenerator.kt:542 */
19884  21006   
                }, /* ServerBuilderGenerator.kt:287 */
19885  21007   
            )
19886  21008   
            /* ServerBuilderGenerator.kt:283 */
19887  21009   
        }
19888  21010   
        /* ServerBuilderGenerator.kt:215 */
19889  21011   
    }
19890  21012   
19891  21013   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
19892  21014   
}
19893         -
/// /* ServerBuilderGenerator.kt:171 */See [`UnitInputAndOutputInput`](crate::input::UnitInputAndOutputInput).
19894         -
pub mod unit_input_and_output_input {
       21015  +
/// /* ServerBuilderGenerator.kt:171 */See [`OutputStreamWithInitialResponseInput`](crate::input::OutputStreamWithInitialResponseInput).
       21016  +
pub mod output_stream_with_initial_response_input {
       21017  +
       21018  +
    /* ServerBuilderGenerator.kt:461 */
       21019  +
    impl ::std::convert::From<Builder> for crate::input::OutputStreamWithInitialResponseInput {
       21020  +
        fn from(builder: Builder) -> Self {
       21021  +
            builder.build()
       21022  +
        }
       21023  +
    }
       21024  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`OutputStreamWithInitialResponseInput`](crate::input::OutputStreamWithInitialResponseInput).
       21025  +
    /* RustType.kt:534 */
       21026  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       21027  +
    /* ServerBuilderGenerator.kt:211 */
       21028  +
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       21029  +
    /* ServerBuilderGenerator.kt:215 */
       21030  +
    impl Builder {
       21031  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`OutputStreamWithInitialResponseInput`](crate::input::OutputStreamWithInitialResponseInput).
       21032  +
        /* ServerBuilderGenerator.kt:271 */
       21033  +
        pub fn build(self) -> crate::input::OutputStreamWithInitialResponseInput {
       21034  +
            self.build_enforcing_all_constraints()
       21035  +
        }
       21036  +
        /* ServerBuilderGenerator.kt:283 */
       21037  +
        fn build_enforcing_all_constraints(
       21038  +
            self,
       21039  +
        ) -> crate::input::OutputStreamWithInitialResponseInput {
       21040  +
            /* ServerBuilderGenerator.kt:542 */
       21041  +
            crate::input::OutputStreamWithInitialResponseInput {
       21042  +
            /* ServerBuilderGenerator.kt:542 */}
       21043  +
            /* ServerBuilderGenerator.kt:283 */
       21044  +
        }
       21045  +
        /* ServerBuilderGenerator.kt:215 */
       21046  +
    }
       21047  +
       21048  +
    /* RustCrateInlineModuleComposingWriter.kt:299 */
       21049  +
}
       21050  +
/// /* ServerBuilderGenerator.kt:171 */See [`DuplexStreamWithInitialMessagesInput`](crate::input::DuplexStreamWithInitialMessagesInput).
       21051  +
pub mod duplex_stream_with_initial_messages_input {
       21052  +
       21053  +
    /* RustType.kt:534 */
       21054  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       21055  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       21056  +
    /* RustType.kt:534 */
       21057  +
    #[non_exhaustive]
       21058  +
    /* ServerBuilderConstraintViolations.kt:75 */
       21059  +
    #[allow(clippy::enum_variant_names)]
       21060  +
    pub enum ConstraintViolation {
       21061  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`initial_request_member` was not provided but it is required when building `DuplexStreamWithInitialMessagesInput`.
       21062  +
        /* ServerBuilderConstraintViolations.kt:144 */
       21063  +
        MissingInitialRequestMember,
       21064  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`stream` was not provided but it is required when building `DuplexStreamWithInitialMessagesInput`.
       21065  +
        /* ServerBuilderConstraintViolations.kt:144 */
       21066  +
        MissingStream,
       21067  +
        /* ServerBuilderConstraintViolations.kt:75 */
       21068  +
    }
       21069  +
    /* ServerBuilderConstraintViolations.kt:116 */
       21070  +
    impl ::std::fmt::Display for ConstraintViolation {
       21071  +
        /* ServerBuilderConstraintViolations.kt:117 */
       21072  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       21073  +
            /* ServerBuilderConstraintViolations.kt:118 */
       21074  +
            match self {
       21075  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingInitialRequestMember => write!(f, "`initial_request_member` was not provided but it is required when building `DuplexStreamWithInitialMessagesInput`"),
       21076  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingStream => write!(f, "`stream` was not provided but it is required when building `DuplexStreamWithInitialMessagesInput`"),
       21077  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       21078  +
            /* ServerBuilderConstraintViolations.kt:117 */
       21079  +
        }
       21080  +
        /* ServerBuilderConstraintViolations.kt:116 */
       21081  +
    }
       21082  +
    /* ServerBuilderConstraintViolations.kt:83 */
       21083  +
    impl ::std::error::Error for ConstraintViolation {}
       21084  +
    /* ServerBuilderConstraintViolations.kt:172 */
       21085  +
    impl ConstraintViolation {
       21086  +
        pub(crate) fn as_validation_exception_field(
       21087  +
            self,
       21088  +
            path: ::std::string::String,
       21089  +
        ) -> crate::model::ValidationExceptionField {
       21090  +
            match self {
       21091  +
            ConstraintViolation::MissingInitialRequestMember => crate::model::ValidationExceptionField {
       21092  +
                                                message: format!("Value at '{}/initialRequestMember' failed to satisfy constraint: Member must not be null", path),
       21093  +
                                                path: path + "/initialRequestMember",
       21094  +
                                            },
       21095  +
            ConstraintViolation::MissingStream => crate::model::ValidationExceptionField {
       21096  +
                                                message: format!("Value at '{}/stream' failed to satisfy constraint: Member must not be null", path),
       21097  +
                                                path: path + "/stream",
       21098  +
                                            },
       21099  +
        }
       21100  +
        }
       21101  +
    }
       21102  +
    /* ServerBuilderGenerator.kt:234 */
       21103  +
    impl ::std::convert::From<ConstraintViolation>
       21104  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       21105  +
    {
       21106  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       21107  +
            let first_validation_exception_field =
       21108  +
                constraint_violation.as_validation_exception_field("".to_owned());
       21109  +
            let validation_exception = crate::error::ValidationException {
       21110  +
                message: format!(
       21111  +
                    "1 validation error detected. {}",
       21112  +
                    &first_validation_exception_field.message
       21113  +
                ),
       21114  +
                field_list: Some(vec![first_validation_exception_field]),
       21115  +
            };
       21116  +
            Self::ConstraintViolation(
       21117  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       21118  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       21119  +
                            )
       21120  +
        }
       21121  +
    }
       21122  +
    /* ServerBuilderGenerator.kt:244 */
       21123  +
    impl ::std::convert::From<Builder>
       21124  +
        for crate::constrained::MaybeConstrained<crate::input::DuplexStreamWithInitialMessagesInput>
       21125  +
    {
       21126  +
        fn from(builder: Builder) -> Self {
       21127  +
            Self::Unconstrained(builder)
       21128  +
        }
       21129  +
    }
       21130  +
    /* ServerBuilderGenerator.kt:446 */
       21131  +
    impl ::std::convert::TryFrom<Builder> for crate::input::DuplexStreamWithInitialMessagesInput {
       21132  +
        type Error = ConstraintViolation;
19895  21133   
19896         -
    /* ServerBuilderGenerator.kt:461 */
19897         -
    impl ::std::convert::From<Builder> for crate::input::UnitInputAndOutputInput {
19898         -
        fn from(builder: Builder) -> Self {
       21134  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
19899  21135   
            builder.build()
19900  21136   
        }
19901  21137   
    }
19902         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`UnitInputAndOutputInput`](crate::input::UnitInputAndOutputInput).
       21138  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`DuplexStreamWithInitialMessagesInput`](crate::input::DuplexStreamWithInitialMessagesInput).
19903  21139   
    /* RustType.kt:534 */
19904         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       21140  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
19905  21141   
    /* ServerBuilderGenerator.kt:211 */
19906         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       21142  +
    pub struct Builder {
       21143  +
        /* ServerBuilderGenerator.kt:308 */
       21144  +
        pub(crate) initial_request_member: ::std::option::Option<::std::string::String>,
       21145  +
        /* ServerBuilderGenerator.kt:308 */
       21146  +
        pub(crate) stream: ::std::option::Option<
       21147  +
            crate::sigv4_event_stream::SigV4Receiver<
       21148  +
                crate::model::EventStream,
       21149  +
                crate::error::EventStreamError,
       21150  +
            >,
       21151  +
        >,
       21152  +
        /* ServerBuilderGenerator.kt:211 */
       21153  +
    }
19907  21154   
    /* ServerBuilderGenerator.kt:215 */
19908  21155   
    impl Builder {
19909         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`UnitInputAndOutputInput`](crate::input::UnitInputAndOutputInput).
       21156  +
        /* ServerBuilderGenerator.kt:331 */
       21157  +
        #[allow(missing_docs)] // documentation missing in model
       21158  +
                               /* ServerBuilderGenerator.kt:343 */
       21159  +
        pub fn initial_request_member(mut self, input: ::std::string::String) -> Self {
       21160  +
            /* ServerBuilderGenerator.kt:344 */
       21161  +
            self.initial_request_member =
       21162  +
                /* ServerBuilderGenerator.kt:345 */Some(
       21163  +
                    /* ServerBuilderGenerator.kt:376 */input
       21164  +
                /* ServerBuilderGenerator.kt:345 */)
       21165  +
            /* ServerBuilderGenerator.kt:344 */;
       21166  +
            self
       21167  +
            /* ServerBuilderGenerator.kt:343 */
       21168  +
        }
       21169  +
        /* ServerBuilderGenerator.kt:426 */
       21170  +
        #[allow(missing_docs)] // documentation missing in model
       21171  +
                               /* ServerBuilderGenerator.kt:428 */
       21172  +
        pub(crate) fn set_initial_request_member(
       21173  +
            mut self,
       21174  +
            input: impl ::std::convert::Into<::std::string::String>,
       21175  +
        ) -> Self {
       21176  +
            /* ServerBuilderGenerator.kt:429 */
       21177  +
            self.initial_request_member = Some(input.into());
       21178  +
            self
       21179  +
            /* ServerBuilderGenerator.kt:428 */
       21180  +
        }
       21181  +
        /* ServerBuilderGenerator.kt:331 */
       21182  +
        #[allow(missing_docs)] // documentation missing in model
       21183  +
                               /* ServerBuilderGenerator.kt:343 */
       21184  +
        pub fn stream(
       21185  +
            mut self,
       21186  +
            input: crate::sigv4_event_stream::SigV4Receiver<
       21187  +
                crate::model::EventStream,
       21188  +
                crate::error::EventStreamError,
       21189  +
            >,
       21190  +
        ) -> Self {
       21191  +
            /* ServerBuilderGenerator.kt:344 */
       21192  +
            self.stream =
       21193  +
                /* ServerBuilderGenerator.kt:345 */Some(
       21194  +
                    /* ServerBuilderGenerator.kt:376 */input
       21195  +
                /* ServerBuilderGenerator.kt:345 */)
       21196  +
            /* ServerBuilderGenerator.kt:344 */;
       21197  +
            self
       21198  +
            /* ServerBuilderGenerator.kt:343 */
       21199  +
        }
       21200  +
        /* ServerBuilderGenerator.kt:426 */
       21201  +
        #[allow(missing_docs)] // documentation missing in model
       21202  +
                               /* ServerBuilderGenerator.kt:428 */
       21203  +
        pub(crate) fn set_stream(
       21204  +
            mut self,
       21205  +
            input: impl ::std::convert::Into<
       21206  +
                crate::sigv4_event_stream::SigV4Receiver<
       21207  +
                    crate::model::EventStream,
       21208  +
                    crate::error::EventStreamError,
       21209  +
                >,
       21210  +
            >,
       21211  +
        ) -> Self {
       21212  +
            /* ServerBuilderGenerator.kt:429 */
       21213  +
            self.stream = Some(input.into());
       21214  +
            self
       21215  +
            /* ServerBuilderGenerator.kt:428 */
       21216  +
        }
       21217  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`DuplexStreamWithInitialMessagesInput`](crate::input::DuplexStreamWithInitialMessagesInput).
       21218  +
        /// /* ServerBuilderGenerator.kt:260 */
       21219  +
        /// The builder fails to construct a [`DuplexStreamWithInitialMessagesInput`](crate::input::DuplexStreamWithInitialMessagesInput) if a [`ConstraintViolation`] occurs.
       21220  +
        ///
       21221  +
        /// /* ServerBuilderGenerator.kt:268 */If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
19910  21222   
        /* ServerBuilderGenerator.kt:271 */
19911         -
        pub fn build(self) -> crate::input::UnitInputAndOutputInput {
       21223  +
        pub fn build(
       21224  +
            self,
       21225  +
        ) -> Result<crate::input::DuplexStreamWithInitialMessagesInput, ConstraintViolation>
       21226  +
        {
19912  21227   
            self.build_enforcing_all_constraints()
19913  21228   
        }
19914  21229   
        /* ServerBuilderGenerator.kt:283 */
19915         -
        fn build_enforcing_all_constraints(self) -> crate::input::UnitInputAndOutputInput {
       21230  +
        fn build_enforcing_all_constraints(
       21231  +
            self,
       21232  +
        ) -> Result<crate::input::DuplexStreamWithInitialMessagesInput, ConstraintViolation>
       21233  +
        {
       21234  +
            /* ServerBuilderGenerator.kt:287 */
       21235  +
            Ok(
19916  21236   
                /* ServerBuilderGenerator.kt:542 */
19917         -
            crate::input::UnitInputAndOutputInput {
19918         -
            /* ServerBuilderGenerator.kt:542 */}
       21237  +
                crate::input::DuplexStreamWithInitialMessagesInput {
       21238  +
                    /* ServerBuilderGenerator.kt:546 */
       21239  +
                    initial_request_member: self
       21240  +
                        .initial_request_member
       21241  +
                        /* ServerBuilderGenerator.kt:569 */
       21242  +
                        .ok_or(ConstraintViolation::MissingInitialRequestMember)?,
       21243  +
                    /* ServerBuilderGenerator.kt:546 */
       21244  +
                    stream: self
       21245  +
                        .stream
       21246  +
                        /* ServerBuilderGenerator.kt:569 */
       21247  +
                        .ok_or(ConstraintViolation::MissingStream)?,
       21248  +
                    /* ServerBuilderGenerator.kt:542 */
       21249  +
                }, /* ServerBuilderGenerator.kt:287 */
       21250  +
            )
19919  21251   
            /* ServerBuilderGenerator.kt:283 */
19920  21252   
        }
19921  21253   
        /* ServerBuilderGenerator.kt:215 */
19922  21254   
    }
19923  21255   
19924  21256   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
19925  21257   
}
19926         -
/// /* ServerBuilderGenerator.kt:171 */See [`EmptyInputAndEmptyOutputInput`](crate::input::EmptyInputAndEmptyOutputInput).
19927         -
pub mod empty_input_and_empty_output_input {
       21258  +
/// /* ServerBuilderGenerator.kt:171 */See [`DuplexStreamWithDistinctStreamsInput`](crate::input::DuplexStreamWithDistinctStreamsInput).
       21259  +
pub mod duplex_stream_with_distinct_streams_input {
19928  21260   
19929         -
    /* ServerBuilderGenerator.kt:461 */
19930         -
    impl ::std::convert::From<Builder> for crate::input::EmptyInputAndEmptyOutputInput {
19931         -
        fn from(builder: Builder) -> Self {
19932         -
            builder.build()
       21261  +
    /* RustType.kt:534 */
       21262  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
       21263  +
    /// /* ServerBuilderConstraintViolations.kt:72 */Holds one variant for each of the ways the builder can fail.
       21264  +
    /* RustType.kt:534 */
       21265  +
    #[non_exhaustive]
       21266  +
    /* ServerBuilderConstraintViolations.kt:75 */
       21267  +
    #[allow(clippy::enum_variant_names)]
       21268  +
    pub enum ConstraintViolation {
       21269  +
        /// /* ServerBuilderConstraintViolations.kt:137 */`stream` was not provided but it is required when building `DuplexStreamWithDistinctStreamsInput`.
       21270  +
        /* ServerBuilderConstraintViolations.kt:144 */
       21271  +
        MissingStream,
       21272  +
        /* ServerBuilderConstraintViolations.kt:75 */
19933  21273   
    }
       21274  +
    /* ServerBuilderConstraintViolations.kt:116 */
       21275  +
    impl ::std::fmt::Display for ConstraintViolation {
       21276  +
        /* ServerBuilderConstraintViolations.kt:117 */
       21277  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
       21278  +
            /* ServerBuilderConstraintViolations.kt:118 */
       21279  +
            match self {
       21280  +
                /* ServerBuilderConstraintViolations.kt:126 */ConstraintViolation::MissingStream => write!(f, "`stream` was not provided but it is required when building `DuplexStreamWithDistinctStreamsInput`"),
       21281  +
            /* ServerBuilderConstraintViolations.kt:118 */}
       21282  +
            /* ServerBuilderConstraintViolations.kt:117 */
19934  21283   
        }
19935         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`EmptyInputAndEmptyOutputInput`](crate::input::EmptyInputAndEmptyOutputInput).
19936         -
    /* RustType.kt:534 */
19937         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
19938         -
    /* ServerBuilderGenerator.kt:211 */
19939         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
19940         -
    /* ServerBuilderGenerator.kt:215 */
19941         -
    impl Builder {
19942         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`EmptyInputAndEmptyOutputInput`](crate::input::EmptyInputAndEmptyOutputInput).
19943         -
        /* ServerBuilderGenerator.kt:271 */
19944         -
        pub fn build(self) -> crate::input::EmptyInputAndEmptyOutputInput {
19945         -
            self.build_enforcing_all_constraints()
       21284  +
        /* ServerBuilderConstraintViolations.kt:116 */
19946  21285   
    }
19947         -
        /* ServerBuilderGenerator.kt:283 */
19948         -
        fn build_enforcing_all_constraints(self) -> crate::input::EmptyInputAndEmptyOutputInput {
19949         -
            /* ServerBuilderGenerator.kt:542 */
19950         -
            crate::input::EmptyInputAndEmptyOutputInput {
19951         -
            /* ServerBuilderGenerator.kt:542 */}
19952         -
            /* ServerBuilderGenerator.kt:283 */
       21286  +
    /* ServerBuilderConstraintViolations.kt:83 */
       21287  +
    impl ::std::error::Error for ConstraintViolation {}
       21288  +
    /* ServerBuilderConstraintViolations.kt:172 */
       21289  +
    impl ConstraintViolation {
       21290  +
        pub(crate) fn as_validation_exception_field(
       21291  +
            self,
       21292  +
            path: ::std::string::String,
       21293  +
        ) -> crate::model::ValidationExceptionField {
       21294  +
            match self {
       21295  +
            ConstraintViolation::MissingStream => crate::model::ValidationExceptionField {
       21296  +
                                                message: format!("Value at '{}/stream' failed to satisfy constraint: Member must not be null", path),
       21297  +
                                                path: path + "/stream",
       21298  +
                                            },
19953  21299   
        }
19954         -
        /* ServerBuilderGenerator.kt:215 */
19955  21300   
        }
19956         -
19957         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
19958         -
}
19959         -
/// /* ServerBuilderGenerator.kt:171 */See [`NoInputAndOutputInput`](crate::input::NoInputAndOutputInput).
19960         -
pub mod no_input_and_output_input {
19961         -
19962         -
    /* ServerBuilderGenerator.kt:461 */
19963         -
    impl ::std::convert::From<Builder> for crate::input::NoInputAndOutputInput {
19964         -
        fn from(builder: Builder) -> Self {
19965         -
            builder.build()
19966  21301   
    }
       21302  +
    /* ServerBuilderGenerator.kt:234 */
       21303  +
    impl ::std::convert::From<ConstraintViolation>
       21304  +
        for ::aws_smithy_http_server::protocol::rest_json_1::rejection::RequestRejection
       21305  +
    {
       21306  +
        fn from(constraint_violation: ConstraintViolation) -> Self {
       21307  +
            let first_validation_exception_field =
       21308  +
                constraint_violation.as_validation_exception_field("".to_owned());
       21309  +
            let validation_exception = crate::error::ValidationException {
       21310  +
                message: format!(
       21311  +
                    "1 validation error detected. {}",
       21312  +
                    &first_validation_exception_field.message
       21313  +
                ),
       21314  +
                field_list: Some(vec![first_validation_exception_field]),
       21315  +
            };
       21316  +
            Self::ConstraintViolation(
       21317  +
                                crate::protocol_serde::shape_validation_exception::ser_validation_exception_error(&validation_exception)
       21318  +
                                    .expect("validation exceptions should never fail to serialize; please file a bug report under https://github.com/smithy-lang/smithy-rs/issues")
       21319  +
                            )
19967  21320   
        }
19968         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`NoInputAndOutputInput`](crate::input::NoInputAndOutputInput).
19969         -
    /* RustType.kt:534 */
19970         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
19971         -
    /* ServerBuilderGenerator.kt:211 */
19972         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
19973         -
    /* ServerBuilderGenerator.kt:215 */
19974         -
    impl Builder {
19975         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`NoInputAndOutputInput`](crate::input::NoInputAndOutputInput).
19976         -
        /* ServerBuilderGenerator.kt:271 */
19977         -
        pub fn build(self) -> crate::input::NoInputAndOutputInput {
19978         -
            self.build_enforcing_all_constraints()
19979  21321   
    }
19980         -
        /* ServerBuilderGenerator.kt:283 */
19981         -
        fn build_enforcing_all_constraints(self) -> crate::input::NoInputAndOutputInput {
19982         -
            /* ServerBuilderGenerator.kt:542 */
19983         -
            crate::input::NoInputAndOutputInput {
19984         -
            /* ServerBuilderGenerator.kt:542 */}
19985         -
            /* ServerBuilderGenerator.kt:283 */
       21322  +
    /* ServerBuilderGenerator.kt:244 */
       21323  +
    impl ::std::convert::From<Builder>
       21324  +
        for crate::constrained::MaybeConstrained<crate::input::DuplexStreamWithDistinctStreamsInput>
       21325  +
    {
       21326  +
        fn from(builder: Builder) -> Self {
       21327  +
            Self::Unconstrained(builder)
19986  21328   
        }
19987         -
        /* ServerBuilderGenerator.kt:215 */
19988  21329   
    }
       21330  +
    /* ServerBuilderGenerator.kt:446 */
       21331  +
    impl ::std::convert::TryFrom<Builder> for crate::input::DuplexStreamWithDistinctStreamsInput {
       21332  +
        type Error = ConstraintViolation;
19989  21333   
19990         -
    /* RustCrateInlineModuleComposingWriter.kt:299 */
19991         -
}
19992         -
/// /* ServerBuilderGenerator.kt:171 */See [`NoInputAndNoOutputInput`](crate::input::NoInputAndNoOutputInput).
19993         -
pub mod no_input_and_no_output_input {
19994         -
19995         -
    /* ServerBuilderGenerator.kt:461 */
19996         -
    impl ::std::convert::From<Builder> for crate::input::NoInputAndNoOutputInput {
19997         -
        fn from(builder: Builder) -> Self {
       21334  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
19998  21335   
            builder.build()
19999  21336   
        }
20000  21337   
    }
20001         -
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`NoInputAndNoOutputInput`](crate::input::NoInputAndNoOutputInput).
       21338  +
    /// /* ServerBuilderGenerator.kt:201 */A builder for [`DuplexStreamWithDistinctStreamsInput`](crate::input::DuplexStreamWithDistinctStreamsInput).
20002  21339   
    /* RustType.kt:534 */
20003         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
       21340  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
20004  21341   
    /* ServerBuilderGenerator.kt:211 */
20005         -
    pub struct Builder {/* ServerBuilderGenerator.kt:211 */}
       21342  +
    pub struct Builder {
       21343  +
        /* ServerBuilderGenerator.kt:308 */
       21344  +
        pub(crate) stream: ::std::option::Option<
       21345  +
            crate::sigv4_event_stream::SigV4Receiver<
       21346  +
                crate::model::EventStream,
       21347  +
                crate::error::EventStreamError,
       21348  +
            >,
       21349  +
        >,
       21350  +
        /* ServerBuilderGenerator.kt:211 */
       21351  +
    }
20006  21352   
    /* ServerBuilderGenerator.kt:215 */
20007  21353   
    impl Builder {
20008         -
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`NoInputAndNoOutputInput`](crate::input::NoInputAndNoOutputInput).
       21354  +
        /* ServerBuilderGenerator.kt:331 */
       21355  +
        #[allow(missing_docs)] // documentation missing in model
       21356  +
                               /* ServerBuilderGenerator.kt:343 */
       21357  +
        pub fn stream(
       21358  +
            mut self,
       21359  +
            input: crate::sigv4_event_stream::SigV4Receiver<
       21360  +
                crate::model::EventStream,
       21361  +
                crate::error::EventStreamError,
       21362  +
            >,
       21363  +
        ) -> Self {
       21364  +
            /* ServerBuilderGenerator.kt:344 */
       21365  +
            self.stream =
       21366  +
                /* ServerBuilderGenerator.kt:345 */Some(
       21367  +
                    /* ServerBuilderGenerator.kt:376 */input
       21368  +
                /* ServerBuilderGenerator.kt:345 */)
       21369  +
            /* ServerBuilderGenerator.kt:344 */;
       21370  +
            self
       21371  +
            /* ServerBuilderGenerator.kt:343 */
       21372  +
        }
       21373  +
        /* ServerBuilderGenerator.kt:426 */
       21374  +
        #[allow(missing_docs)] // documentation missing in model
       21375  +
                               /* ServerBuilderGenerator.kt:428 */
       21376  +
        pub(crate) fn set_stream(
       21377  +
            mut self,
       21378  +
            input: impl ::std::convert::Into<
       21379  +
                crate::sigv4_event_stream::SigV4Receiver<
       21380  +
                    crate::model::EventStream,
       21381  +
                    crate::error::EventStreamError,
       21382  +
                >,
       21383  +
            >,
       21384  +
        ) -> Self {
       21385  +
            /* ServerBuilderGenerator.kt:429 */
       21386  +
            self.stream = Some(input.into());
       21387  +
            self
       21388  +
            /* ServerBuilderGenerator.kt:428 */
       21389  +
        }
       21390  +
        /// /* ServerBuilderGenerator.kt:258 */Consumes the builder and constructs a [`DuplexStreamWithDistinctStreamsInput`](crate::input::DuplexStreamWithDistinctStreamsInput).
       21391  +
        /// /* ServerBuilderGenerator.kt:260 */
       21392  +
        /// The builder fails to construct a [`DuplexStreamWithDistinctStreamsInput`](crate::input::DuplexStreamWithDistinctStreamsInput) if a [`ConstraintViolation`] occurs.
       21393  +
        ///
20009  21394   
        /* ServerBuilderGenerator.kt:271 */
20010         -
        pub fn build(self) -> crate::input::NoInputAndNoOutputInput {
       21395  +
        pub fn build(
       21396  +
            self,
       21397  +
        ) -> Result<crate::input::DuplexStreamWithDistinctStreamsInput, ConstraintViolation>
       21398  +
        {
20011  21399   
            self.build_enforcing_all_constraints()
20012  21400   
        }
20013  21401   
        /* ServerBuilderGenerator.kt:283 */
20014         -
        fn build_enforcing_all_constraints(self) -> crate::input::NoInputAndNoOutputInput {
       21402  +
        fn build_enforcing_all_constraints(
       21403  +
            self,
       21404  +
        ) -> Result<crate::input::DuplexStreamWithDistinctStreamsInput, ConstraintViolation>
       21405  +
        {
       21406  +
            /* ServerBuilderGenerator.kt:287 */
       21407  +
            Ok(
20015  21408   
                /* ServerBuilderGenerator.kt:542 */
20016         -
            crate::input::NoInputAndNoOutputInput {
20017         -
            /* ServerBuilderGenerator.kt:542 */}
       21409  +
                crate::input::DuplexStreamWithDistinctStreamsInput {
       21410  +
                    /* ServerBuilderGenerator.kt:546 */
       21411  +
                    stream: self
       21412  +
                        .stream
       21413  +
                        /* ServerBuilderGenerator.kt:569 */
       21414  +
                        .ok_or(ConstraintViolation::MissingStream)?,
       21415  +
                    /* ServerBuilderGenerator.kt:542 */
       21416  +
                }, /* ServerBuilderGenerator.kt:287 */
       21417  +
            )
20018  21418   
            /* ServerBuilderGenerator.kt:283 */
20019  21419   
        }
20020  21420   
        /* ServerBuilderGenerator.kt:215 */
20021  21421   
    }
20022  21422   
20023  21423   
    /* RustCrateInlineModuleComposingWriter.kt:299 */
20024  21424   
}