Server Test

Server Test

rev. d838bf488731ae5e751cce0fe13f339a5b9be858 (ignoring whitespace)

Files changed:

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

@@ -1,1 +336,336 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
#[allow(missing_docs)] // documentation missing in model
    3         -
pub struct StreamingOperationWithOptionalData;
           3  +
pub struct SimpleStructOperation;
    4      4   
    5         -
impl ::aws_smithy_legacy_http_server::operation::OperationShape
    6         -
    for StreamingOperationWithOptionalData
    7         -
{
           5  +
impl ::aws_smithy_legacy_http_server::operation::OperationShape for SimpleStructOperation {
    8      6   
    const ID: ::aws_smithy_legacy_http_server::shape_id::ShapeId =
    9      7   
        ::aws_smithy_legacy_http_server::shape_id::ShapeId::new(
   10         -
            "smithy.protocoltests.rpcv2Cbor#StreamingOperationWithOptionalData",
           8  +
            "smithy.protocoltests.rpcv2Cbor#SimpleStructOperation",
   11      9   
            "smithy.protocoltests.rpcv2Cbor",
   12         -
            "StreamingOperationWithOptionalData",
          10  +
            "SimpleStructOperation",
   13     11   
        );
   14     12   
   15         -
    type Input = crate::input::StreamingOperationWithOptionalDataInput;
   16         -
    type Output = crate::output::StreamingOperationWithOptionalDataOutput;
   17         -
    type Error = crate::error::StreamingOperationWithOptionalDataError;
          13  +
    type Input = crate::input::SimpleStructOperationInput;
          14  +
    type Output = crate::output::SimpleStructOperationOutput;
          15  +
    type Error = crate::error::SimpleStructOperationError;
   18     16   
}
   19     17   
   20     18   
impl ::aws_smithy_legacy_http_server::instrumentation::sensitivity::Sensitivity
   21         -
    for StreamingOperationWithOptionalData
          19  +
    for SimpleStructOperation
   22     20   
{
   23     21   
    type RequestFmt =
   24     22   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
   25     23   
    type ResponseFmt =
   26     24   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
   27     25   
   28     26   
    fn request_fmt() -> Self::RequestFmt {
   29     27   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::RequestFmt::new()
   30     28   
    }
   31     29   
   32     30   
    fn response_fmt() -> Self::ResponseFmt {
   33     31   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::ResponseFmt::new()
   34     32   
    }
   35     33   
}
   36     34   
   37     35   
#[allow(missing_docs)] // documentation missing in model
   38         -
pub struct StreamingOperationWithInitialResponse;
          36  +
pub struct ErrorSerializationOperation;
   39     37   
   40         -
impl ::aws_smithy_legacy_http_server::operation::OperationShape
   41         -
    for StreamingOperationWithInitialResponse
   42         -
{
          38  +
impl ::aws_smithy_legacy_http_server::operation::OperationShape for ErrorSerializationOperation {
   43     39   
    const ID: ::aws_smithy_legacy_http_server::shape_id::ShapeId =
   44     40   
        ::aws_smithy_legacy_http_server::shape_id::ShapeId::new(
   45         -
            "smithy.protocoltests.rpcv2Cbor#StreamingOperationWithInitialResponse",
          41  +
            "smithy.protocoltests.rpcv2Cbor#ErrorSerializationOperation",
   46     42   
            "smithy.protocoltests.rpcv2Cbor",
   47         -
            "StreamingOperationWithInitialResponse",
          43  +
            "ErrorSerializationOperation",
   48     44   
        );
   49     45   
   50         -
    type Input = crate::input::StreamingOperationWithInitialResponseInput;
   51         -
    type Output = crate::output::StreamingOperationWithInitialResponseOutput;
   52         -
    type Error = crate::error::StreamingOperationWithInitialResponseError;
          46  +
    type Input = crate::input::ErrorSerializationOperationInput;
          47  +
    type Output = crate::output::ErrorSerializationOperationOutput;
          48  +
    type Error = crate::error::ErrorSerializationOperationError;
   53     49   
}
   54     50   
   55     51   
impl ::aws_smithy_legacy_http_server::instrumentation::sensitivity::Sensitivity
   56         -
    for StreamingOperationWithInitialResponse
          52  +
    for ErrorSerializationOperation
   57     53   
{
   58     54   
    type RequestFmt =
   59     55   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
   60     56   
    type ResponseFmt =
   61     57   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
   62     58   
   63     59   
    fn request_fmt() -> Self::RequestFmt {
   64     60   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::RequestFmt::new()
   65     61   
    }
   66     62   
   67     63   
    fn response_fmt() -> Self::ResponseFmt {
   68     64   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::ResponseFmt::new()
   69     65   
    }
   70     66   
}
   71     67   
   72     68   
#[allow(missing_docs)] // documentation missing in model
   73         -
pub struct StreamingOperationWithInitialData;
          69  +
pub struct ComplexStructOperation;
   74     70   
   75         -
impl ::aws_smithy_legacy_http_server::operation::OperationShape
   76         -
    for StreamingOperationWithInitialData
   77         -
{
          71  +
impl ::aws_smithy_legacy_http_server::operation::OperationShape for ComplexStructOperation {
   78     72   
    const ID: ::aws_smithy_legacy_http_server::shape_id::ShapeId =
   79     73   
        ::aws_smithy_legacy_http_server::shape_id::ShapeId::new(
   80         -
            "smithy.protocoltests.rpcv2Cbor#StreamingOperationWithInitialData",
          74  +
            "smithy.protocoltests.rpcv2Cbor#ComplexStructOperation",
   81     75   
            "smithy.protocoltests.rpcv2Cbor",
   82         -
            "StreamingOperationWithInitialData",
          76  +
            "ComplexStructOperation",
   83     77   
        );
   84     78   
   85         -
    type Input = crate::input::StreamingOperationWithInitialDataInput;
   86         -
    type Output = crate::output::StreamingOperationWithInitialDataOutput;
   87         -
    type Error = crate::error::StreamingOperationWithInitialDataError;
          79  +
    type Input = crate::input::ComplexStructOperationInput;
          80  +
    type Output = crate::output::ComplexStructOperationOutput;
          81  +
    type Error = crate::error::ComplexStructOperationError;
   88     82   
}
   89     83   
   90     84   
impl ::aws_smithy_legacy_http_server::instrumentation::sensitivity::Sensitivity
   91         -
    for StreamingOperationWithInitialData
          85  +
    for ComplexStructOperation
   92     86   
{
   93     87   
    type RequestFmt =
   94     88   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
   95     89   
    type ResponseFmt =
   96     90   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
   97     91   
   98     92   
    fn request_fmt() -> Self::RequestFmt {
   99     93   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::RequestFmt::new()
  100     94   
    }
  101     95   
  102     96   
    fn response_fmt() -> Self::ResponseFmt {
  103     97   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  104     98   
    }
  105     99   
}
  106    100   
  107    101   
#[allow(missing_docs)] // documentation missing in model
  108         -
pub struct StreamingOperation;
         102  +
pub struct EmptyStructOperation;
  109    103   
  110         -
impl ::aws_smithy_legacy_http_server::operation::OperationShape for StreamingOperation {
         104  +
impl ::aws_smithy_legacy_http_server::operation::OperationShape for EmptyStructOperation {
  111    105   
    const ID: ::aws_smithy_legacy_http_server::shape_id::ShapeId =
  112    106   
        ::aws_smithy_legacy_http_server::shape_id::ShapeId::new(
  113         -
            "smithy.protocoltests.rpcv2Cbor#StreamingOperation",
         107  +
            "smithy.protocoltests.rpcv2Cbor#EmptyStructOperation",
  114    108   
            "smithy.protocoltests.rpcv2Cbor",
  115         -
            "StreamingOperation",
         109  +
            "EmptyStructOperation",
  116    110   
        );
  117    111   
  118         -
    type Input = crate::input::StreamingOperationInput;
  119         -
    type Output = crate::output::StreamingOperationOutput;
  120         -
    type Error = crate::error::StreamingOperationError;
         112  +
    type Input = crate::input::EmptyStructOperationInput;
         113  +
    type Output = crate::output::EmptyStructOperationOutput;
         114  +
    type Error = std::convert::Infallible;
  121    115   
}
  122    116   
  123    117   
impl ::aws_smithy_legacy_http_server::instrumentation::sensitivity::Sensitivity
  124         -
    for StreamingOperation
         118  +
    for EmptyStructOperation
  125    119   
{
  126    120   
    type RequestFmt =
  127    121   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  128    122   
    type ResponseFmt =
  129    123   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  130    124   
  131    125   
    fn request_fmt() -> Self::RequestFmt {
  132    126   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::RequestFmt::new()
  133    127   
    }
  134    128   
  135    129   
    fn response_fmt() -> Self::ResponseFmt {
  136    130   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  137    131   
    }
  138    132   
}
  139    133   
  140    134   
#[allow(missing_docs)] // documentation missing in model
  141         -
pub struct RecursiveUnionOperation;
         135  +
pub struct SingleMemberStructOperation;
  142    136   
  143         -
impl ::aws_smithy_legacy_http_server::operation::OperationShape for RecursiveUnionOperation {
         137  +
impl ::aws_smithy_legacy_http_server::operation::OperationShape for SingleMemberStructOperation {
  144    138   
    const ID: ::aws_smithy_legacy_http_server::shape_id::ShapeId =
  145    139   
        ::aws_smithy_legacy_http_server::shape_id::ShapeId::new(
  146         -
            "smithy.protocoltests.rpcv2Cbor#RecursiveUnionOperation",
         140  +
            "smithy.protocoltests.rpcv2Cbor#SingleMemberStructOperation",
  147    141   
            "smithy.protocoltests.rpcv2Cbor",
  148         -
            "RecursiveUnionOperation",
         142  +
            "SingleMemberStructOperation",
  149    143   
        );
  150    144   
  151         -
    type Input = crate::input::RecursiveUnionOperationInput;
  152         -
    type Output = crate::output::RecursiveUnionOperationOutput;
         145  +
    type Input = crate::input::SingleMemberStructOperationInput;
         146  +
    type Output = crate::output::SingleMemberStructOperationOutput;
  153    147   
    type Error = std::convert::Infallible;
  154    148   
}
  155    149   
  156    150   
impl ::aws_smithy_legacy_http_server::instrumentation::sensitivity::Sensitivity
  157         -
    for RecursiveUnionOperation
         151  +
    for SingleMemberStructOperation
  158    152   
{
  159    153   
    type RequestFmt =
  160    154   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  161    155   
    type ResponseFmt =
  162    156   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  163    157   
  164    158   
    fn request_fmt() -> Self::RequestFmt {
  165    159   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::RequestFmt::new()
  166    160   
    }
  167    161   
  168    162   
    fn response_fmt() -> Self::ResponseFmt {
  169    163   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  170    164   
    }
  171    165   
}
  172    166   
  173    167   
#[allow(missing_docs)] // documentation missing in model
  174         -
pub struct SingleMemberStructOperation;
         168  +
pub struct RecursiveUnionOperation;
  175    169   
  176         -
impl ::aws_smithy_legacy_http_server::operation::OperationShape for SingleMemberStructOperation {
         170  +
impl ::aws_smithy_legacy_http_server::operation::OperationShape for RecursiveUnionOperation {
  177    171   
    const ID: ::aws_smithy_legacy_http_server::shape_id::ShapeId =
  178    172   
        ::aws_smithy_legacy_http_server::shape_id::ShapeId::new(
  179         -
            "smithy.protocoltests.rpcv2Cbor#SingleMemberStructOperation",
         173  +
            "smithy.protocoltests.rpcv2Cbor#RecursiveUnionOperation",
  180    174   
            "smithy.protocoltests.rpcv2Cbor",
  181         -
            "SingleMemberStructOperation",
         175  +
            "RecursiveUnionOperation",
  182    176   
        );
  183    177   
  184         -
    type Input = crate::input::SingleMemberStructOperationInput;
  185         -
    type Output = crate::output::SingleMemberStructOperationOutput;
         178  +
    type Input = crate::input::RecursiveUnionOperationInput;
         179  +
    type Output = crate::output::RecursiveUnionOperationOutput;
  186    180   
    type Error = std::convert::Infallible;
  187    181   
}
  188    182   
  189    183   
impl ::aws_smithy_legacy_http_server::instrumentation::sensitivity::Sensitivity
  190         -
    for SingleMemberStructOperation
         184  +
    for RecursiveUnionOperation
  191    185   
{
  192    186   
    type RequestFmt =
  193    187   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  194    188   
    type ResponseFmt =
  195    189   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  196    190   
  197    191   
    fn request_fmt() -> Self::RequestFmt {
  198    192   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::RequestFmt::new()
  199    193   
    }
  200    194   
  201    195   
    fn response_fmt() -> Self::ResponseFmt {
  202    196   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  203    197   
    }
  204    198   
}
  205    199   
  206    200   
#[allow(missing_docs)] // documentation missing in model
  207         -
pub struct EmptyStructOperation;
         201  +
pub struct StreamingOperation;
  208    202   
  209         -
impl ::aws_smithy_legacy_http_server::operation::OperationShape for EmptyStructOperation {
         203  +
impl ::aws_smithy_legacy_http_server::operation::OperationShape for StreamingOperation {
  210    204   
    const ID: ::aws_smithy_legacy_http_server::shape_id::ShapeId =
  211    205   
        ::aws_smithy_legacy_http_server::shape_id::ShapeId::new(
  212         -
            "smithy.protocoltests.rpcv2Cbor#EmptyStructOperation",
         206  +
            "smithy.protocoltests.rpcv2Cbor#StreamingOperation",
  213    207   
            "smithy.protocoltests.rpcv2Cbor",
  214         -
            "EmptyStructOperation",
         208  +
            "StreamingOperation",
  215    209   
        );
  216    210   
  217         -
    type Input = crate::input::EmptyStructOperationInput;
  218         -
    type Output = crate::output::EmptyStructOperationOutput;
  219         -
    type Error = std::convert::Infallible;
         211  +
    type Input = crate::input::StreamingOperationInput;
         212  +
    type Output = crate::output::StreamingOperationOutput;
         213  +
    type Error = crate::error::StreamingOperationError;
  220    214   
}
  221    215   
  222    216   
impl ::aws_smithy_legacy_http_server::instrumentation::sensitivity::Sensitivity
  223         -
    for EmptyStructOperation
         217  +
    for StreamingOperation
  224    218   
{
  225    219   
    type RequestFmt =
  226    220   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  227    221   
    type ResponseFmt =
  228    222   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  229    223   
  230    224   
    fn request_fmt() -> Self::RequestFmt {
  231    225   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::RequestFmt::new()
  232    226   
    }
  233    227   
  234    228   
    fn response_fmt() -> Self::ResponseFmt {
  235    229   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  236    230   
    }
  237    231   
}
  238    232   
  239    233   
#[allow(missing_docs)] // documentation missing in model
  240         -
pub struct ComplexStructOperation;
         234  +
pub struct StreamingOperationWithInitialData;
  241    235   
  242         -
impl ::aws_smithy_legacy_http_server::operation::OperationShape for ComplexStructOperation {
         236  +
impl ::aws_smithy_legacy_http_server::operation::OperationShape
         237  +
    for StreamingOperationWithInitialData
         238  +
{
  243    239   
    const ID: ::aws_smithy_legacy_http_server::shape_id::ShapeId =
  244    240   
        ::aws_smithy_legacy_http_server::shape_id::ShapeId::new(
  245         -
            "smithy.protocoltests.rpcv2Cbor#ComplexStructOperation",
         241  +
            "smithy.protocoltests.rpcv2Cbor#StreamingOperationWithInitialData",
  246    242   
            "smithy.protocoltests.rpcv2Cbor",
  247         -
            "ComplexStructOperation",
         243  +
            "StreamingOperationWithInitialData",
  248    244   
        );
  249    245   
  250         -
    type Input = crate::input::ComplexStructOperationInput;
  251         -
    type Output = crate::output::ComplexStructOperationOutput;
  252         -
    type Error = crate::error::ComplexStructOperationError;
         246  +
    type Input = crate::input::StreamingOperationWithInitialDataInput;
         247  +
    type Output = crate::output::StreamingOperationWithInitialDataOutput;
         248  +
    type Error = crate::error::StreamingOperationWithInitialDataError;
  253    249   
}
  254    250   
  255    251   
impl ::aws_smithy_legacy_http_server::instrumentation::sensitivity::Sensitivity
  256         -
    for ComplexStructOperation
         252  +
    for StreamingOperationWithInitialData
  257    253   
{
  258    254   
    type RequestFmt =
  259    255   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  260    256   
    type ResponseFmt =
  261    257   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  262    258   
  263    259   
    fn request_fmt() -> Self::RequestFmt {
  264    260   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::RequestFmt::new()
  265    261   
    }
  266    262   
  267    263   
    fn response_fmt() -> Self::ResponseFmt {
  268    264   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  269    265   
    }
  270    266   
}
  271    267   
  272    268   
#[allow(missing_docs)] // documentation missing in model
  273         -
pub struct ErrorSerializationOperation;
         269  +
pub struct StreamingOperationWithInitialResponse;
  274    270   
  275         -
impl ::aws_smithy_legacy_http_server::operation::OperationShape for ErrorSerializationOperation {
         271  +
impl ::aws_smithy_legacy_http_server::operation::OperationShape
         272  +
    for StreamingOperationWithInitialResponse
         273  +
{
  276    274   
    const ID: ::aws_smithy_legacy_http_server::shape_id::ShapeId =
  277    275   
        ::aws_smithy_legacy_http_server::shape_id::ShapeId::new(
  278         -
            "smithy.protocoltests.rpcv2Cbor#ErrorSerializationOperation",
         276  +
            "smithy.protocoltests.rpcv2Cbor#StreamingOperationWithInitialResponse",
  279    277   
            "smithy.protocoltests.rpcv2Cbor",
  280         -
            "ErrorSerializationOperation",
         278  +
            "StreamingOperationWithInitialResponse",
  281    279   
        );
  282    280   
  283         -
    type Input = crate::input::ErrorSerializationOperationInput;
  284         -
    type Output = crate::output::ErrorSerializationOperationOutput;
  285         -
    type Error = crate::error::ErrorSerializationOperationError;
         281  +
    type Input = crate::input::StreamingOperationWithInitialResponseInput;
         282  +
    type Output = crate::output::StreamingOperationWithInitialResponseOutput;
         283  +
    type Error = crate::error::StreamingOperationWithInitialResponseError;
  286    284   
}
  287    285   
  288    286   
impl ::aws_smithy_legacy_http_server::instrumentation::sensitivity::Sensitivity
  289         -
    for ErrorSerializationOperation
         287  +
    for StreamingOperationWithInitialResponse
  290    288   
{
  291    289   
    type RequestFmt =
  292    290   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  293    291   
    type ResponseFmt =
  294    292   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  295    293   
  296    294   
    fn request_fmt() -> Self::RequestFmt {
  297    295   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::RequestFmt::new()
  298    296   
    }
  299    297   
  300    298   
    fn response_fmt() -> Self::ResponseFmt {
  301    299   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::ResponseFmt::new()
  302    300   
    }
  303    301   
}
  304    302   
  305    303   
#[allow(missing_docs)] // documentation missing in model
  306         -
pub struct SimpleStructOperation;
         304  +
pub struct StreamingOperationWithOptionalData;
  307    305   
  308         -
impl ::aws_smithy_legacy_http_server::operation::OperationShape for SimpleStructOperation {
         306  +
impl ::aws_smithy_legacy_http_server::operation::OperationShape
         307  +
    for StreamingOperationWithOptionalData
         308  +
{
  309    309   
    const ID: ::aws_smithy_legacy_http_server::shape_id::ShapeId =
  310    310   
        ::aws_smithy_legacy_http_server::shape_id::ShapeId::new(
  311         -
            "smithy.protocoltests.rpcv2Cbor#SimpleStructOperation",
         311  +
            "smithy.protocoltests.rpcv2Cbor#StreamingOperationWithOptionalData",
  312    312   
            "smithy.protocoltests.rpcv2Cbor",
  313         -
            "SimpleStructOperation",
         313  +
            "StreamingOperationWithOptionalData",
  314    314   
        );
  315    315   
  316         -
    type Input = crate::input::SimpleStructOperationInput;
  317         -
    type Output = crate::output::SimpleStructOperationOutput;
  318         -
    type Error = crate::error::SimpleStructOperationError;
         316  +
    type Input = crate::input::StreamingOperationWithOptionalDataInput;
         317  +
    type Output = crate::output::StreamingOperationWithOptionalDataOutput;
         318  +
    type Error = crate::error::StreamingOperationWithOptionalDataError;
  319    319   
}
  320    320   
  321    321   
impl ::aws_smithy_legacy_http_server::instrumentation::sensitivity::Sensitivity
  322         -
    for SimpleStructOperation
         322  +
    for StreamingOperationWithOptionalData
  323    323   
{
  324    324   
    type RequestFmt =
  325    325   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultRequestFmt;
  326    326   
    type ResponseFmt =
  327    327   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::DefaultResponseFmt;
  328    328   
  329    329   
    fn request_fmt() -> Self::RequestFmt {
  330    330   
        ::aws_smithy_legacy_http_server::instrumentation::sensitivity::RequestFmt::new()
  331    331   
    }
  332    332   

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

@@ -1,1 +1266,1266 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
#[allow(missing_docs)] // documentation missing in model
    3         -
#[derive(::std::fmt::Debug)]
    4         -
pub struct StreamingOperationWithOptionalDataOutput {
    5         -
    #[allow(missing_docs)] // documentation missing in model
    6         -
    pub optional_response_data: ::std::option::Option<::std::string::String>,
           3  +
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
           4  +
pub struct SimpleStructOperationOutput {
    7      5   
    #[allow(missing_docs)] // documentation missing in model
    8         -
    pub events: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
    9         -
        crate::model::Events,
   10         -
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
   11         -
    >,
   12         -
}
   13         -
impl StreamingOperationWithOptionalDataOutput {
           6  +
    pub blob: ::std::option::Option<::aws_smithy_types::Blob>,
   14      7   
    #[allow(missing_docs)] // documentation missing in model
   15         -
    pub fn optional_response_data(&self) -> ::std::option::Option<&str> {
   16         -
        self.optional_response_data.as_deref()
   17         -
    }
           8  +
    pub boolean: ::std::option::Option<bool>,
   18      9   
    #[allow(missing_docs)] // documentation missing in model
   19         -
    pub fn events(
   20         -
        &self,
   21         -
    ) -> &::aws_smithy_legacy_http::event_stream::EventStreamSender<
   22         -
        crate::model::Events,
   23         -
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
   24         -
    > {
   25         -
        &self.events
   26         -
    }
   27         -
}
   28         -
impl StreamingOperationWithOptionalDataOutput {
   29         -
    /// Creates a new builder-style object to manufacture [`StreamingOperationWithOptionalDataOutput`](crate::output::StreamingOperationWithOptionalDataOutput).
   30         -
    pub fn builder() -> crate::output::streaming_operation_with_optional_data_output::Builder {
   31         -
        crate::output::streaming_operation_with_optional_data_output::Builder::default()
   32         -
    }
   33         -
}
   34         -
   35         -
#[allow(missing_docs)] // documentation missing in model
   36         -
#[derive(::std::fmt::Debug)]
   37         -
pub struct StreamingOperationWithInitialResponseOutput {
          10  +
    pub string: ::std::option::Option<::std::string::String>,
   38     11   
    #[allow(missing_docs)] // documentation missing in model
   39         -
    pub response_data: ::std::string::String,
          12  +
    pub byte: ::std::option::Option<i8>,
   40     13   
    #[allow(missing_docs)] // documentation missing in model
   41         -
    pub events: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
   42         -
        crate::model::Events,
   43         -
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
   44         -
    >,
   45         -
}
   46         -
impl StreamingOperationWithInitialResponseOutput {
          14  +
    pub short: ::std::option::Option<i16>,
   47     15   
    #[allow(missing_docs)] // documentation missing in model
   48         -
    pub fn response_data(&self) -> &str {
   49         -
        use std::ops::Deref;
   50         -
        self.response_data.deref()
   51         -
    }
          16  +
    pub integer: ::std::option::Option<i32>,
   52     17   
    #[allow(missing_docs)] // documentation missing in model
   53         -
    pub fn events(
   54         -
        &self,
   55         -
    ) -> &::aws_smithy_legacy_http::event_stream::EventStreamSender<
   56         -
        crate::model::Events,
   57         -
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
   58         -
    > {
   59         -
        &self.events
   60         -
    }
   61         -
}
   62         -
impl StreamingOperationWithInitialResponseOutput {
   63         -
    /// Creates a new builder-style object to manufacture [`StreamingOperationWithInitialResponseOutput`](crate::output::StreamingOperationWithInitialResponseOutput).
   64         -
    pub fn builder() -> crate::output::streaming_operation_with_initial_response_output::Builder {
   65         -
        crate::output::streaming_operation_with_initial_response_output::Builder::default()
   66         -
    }
   67         -
}
   68         -
   69         -
#[allow(missing_docs)] // documentation missing in model
   70         -
#[derive(::std::fmt::Debug)]
   71         -
pub struct StreamingOperationWithInitialDataOutput {
          18  +
    pub long: ::std::option::Option<i64>,
   72     19   
    #[allow(missing_docs)] // documentation missing in model
   73         -
    pub events: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
   74         -
        crate::model::Events,
   75         -
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
   76         -
    >,
   77         -
}
   78         -
impl StreamingOperationWithInitialDataOutput {
          20  +
    pub float: ::std::option::Option<f32>,
   79     21   
    #[allow(missing_docs)] // documentation missing in model
   80         -
    pub fn events(
   81         -
        &self,
   82         -
    ) -> &::aws_smithy_legacy_http::event_stream::EventStreamSender<
   83         -
        crate::model::Events,
   84         -
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
   85         -
    > {
   86         -
        &self.events
   87         -
    }
   88         -
}
   89         -
impl StreamingOperationWithInitialDataOutput {
   90         -
    /// Creates a new builder-style object to manufacture [`StreamingOperationWithInitialDataOutput`](crate::output::StreamingOperationWithInitialDataOutput).
   91         -
    pub fn builder() -> crate::output::streaming_operation_with_initial_data_output::Builder {
   92         -
        crate::output::streaming_operation_with_initial_data_output::Builder::default()
   93         -
    }
   94         -
}
   95         -
   96         -
#[allow(missing_docs)] // documentation missing in model
   97         -
#[derive(::std::fmt::Debug)]
   98         -
pub struct StreamingOperationOutput {
          22  +
    pub double: ::std::option::Option<f64>,
   99     23   
    #[allow(missing_docs)] // documentation missing in model
  100         -
    pub events: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
  101         -
        crate::model::Events,
  102         -
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
  103         -
    >,
  104         -
}
  105         -
impl StreamingOperationOutput {
          24  +
    pub timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
  106     25   
    #[allow(missing_docs)] // documentation missing in model
  107         -
    pub fn events(
  108         -
        &self,
  109         -
    ) -> &::aws_smithy_legacy_http::event_stream::EventStreamSender<
  110         -
        crate::model::Events,
  111         -
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
  112         -
    > {
  113         -
        &self.events
  114         -
    }
  115         -
}
  116         -
impl StreamingOperationOutput {
  117         -
    /// Creates a new builder-style object to manufacture [`StreamingOperationOutput`](crate::output::StreamingOperationOutput).
  118         -
    pub fn builder() -> crate::output::streaming_operation_output::Builder {
  119         -
        crate::output::streaming_operation_output::Builder::default()
  120         -
    }
  121         -
}
  122         -
  123         -
#[allow(missing_docs)] // documentation missing in model
  124         -
#[derive(
  125         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  126         -
)]
  127         -
pub struct RecursiveUnionOperationOutput {
          26  +
    pub r#enum: ::std::option::Option<crate::model::Suit>,
  128     27   
    #[allow(missing_docs)] // documentation missing in model
  129         -
    pub nested: ::std::option::Option<crate::model::RecursiveOperationInputOutputNested1>,
  130         -
}
  131         -
impl RecursiveUnionOperationOutput {
          28  +
    pub required_blob: ::aws_smithy_types::Blob,
  132     29   
    #[allow(missing_docs)] // documentation missing in model
  133         -
    pub fn nested(
  134         -
        &self,
  135         -
    ) -> ::std::option::Option<&crate::model::RecursiveOperationInputOutputNested1> {
  136         -
        self.nested.as_ref()
  137         -
    }
  138         -
}
  139         -
impl RecursiveUnionOperationOutput {
  140         -
    /// Creates a new builder-style object to manufacture [`RecursiveUnionOperationOutput`](crate::output::RecursiveUnionOperationOutput).
  141         -
    pub fn builder() -> crate::output::recursive_union_operation_output::Builder {
  142         -
        crate::output::recursive_union_operation_output::Builder::default()
  143         -
    }
  144         -
}
  145         -
  146         -
#[allow(missing_docs)] // documentation missing in model
  147         -
#[derive(
  148         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  149         -
)]
  150         -
pub struct SingleMemberStructOperationOutput {
          30  +
    pub required_boolean: bool,
  151     31   
    #[allow(missing_docs)] // documentation missing in model
  152         -
    pub message: ::std::option::Option<::std::string::String>,
  153         -
}
  154         -
impl SingleMemberStructOperationOutput {
          32  +
    pub required_string: ::std::string::String,
  155     33   
    #[allow(missing_docs)] // documentation missing in model
  156         -
    pub fn message(&self) -> ::std::option::Option<&str> {
  157         -
        self.message.as_deref()
  158         -
    }
  159         -
}
  160         -
impl SingleMemberStructOperationOutput {
  161         -
    /// Creates a new builder-style object to manufacture [`SingleMemberStructOperationOutput`](crate::output::SingleMemberStructOperationOutput).
  162         -
    pub fn builder() -> crate::output::single_member_struct_operation_output::Builder {
  163         -
        crate::output::single_member_struct_operation_output::Builder::default()
  164         -
    }
  165         -
}
  166         -
  167         -
#[allow(missing_docs)] // documentation missing in model
  168         -
#[derive(
  169         -
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  170         -
)]
  171         -
pub struct EmptyStructOperationOutput {}
  172         -
impl EmptyStructOperationOutput {
  173         -
    /// Creates a new builder-style object to manufacture [`EmptyStructOperationOutput`](crate::output::EmptyStructOperationOutput).
  174         -
    pub fn builder() -> crate::output::empty_struct_operation_output::Builder {
  175         -
        crate::output::empty_struct_operation_output::Builder::default()
  176         -
    }
  177         -
}
  178         -
  179         -
#[allow(missing_docs)] // documentation missing in model
  180         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
  181         -
pub struct ComplexStructOperationOutput {
          34  +
    pub required_byte: i8,
  182     35   
    #[allow(missing_docs)] // documentation missing in model
  183         -
    pub structure: ::std::option::Option<crate::model::SimpleStruct>,
          36  +
    pub required_short: i16,
  184     37   
    #[allow(missing_docs)] // documentation missing in model
  185         -
    pub empty_structure: ::std::option::Option<crate::model::EmptyStruct>,
          38  +
    pub required_integer: i32,
  186     39   
    #[allow(missing_docs)] // documentation missing in model
  187         -
    pub list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
          40  +
    pub required_long: i64,
  188     41   
    #[allow(missing_docs)] // documentation missing in model
  189         -
    pub map: ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
          42  +
    pub required_float: f32,
  190     43   
    #[allow(missing_docs)] // documentation missing in model
  191         -
    pub union: ::std::option::Option<crate::model::SimpleUnion>,
          44  +
    pub required_double: f64,
  192     45   
    #[allow(missing_docs)] // documentation missing in model
  193         -
    pub unit_union: ::std::option::Option<crate::model::UnitUnion>,
          46  +
    pub required_timestamp: ::aws_smithy_types::DateTime,
  194     47   
    #[allow(missing_docs)] // documentation missing in model
  195         -
    pub structure_list: ::std::option::Option<::std::vec::Vec<crate::model::SimpleStruct>>,
          48  +
    pub required_enum: crate::model::Suit,
          49  +
}
          50  +
impl SimpleStructOperationOutput {
  196     51   
    #[allow(missing_docs)] // documentation missing in model
  197         -
    pub complex_list: ::std::vec::Vec<
  198         -
        ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
  199         -
    >,
          52  +
    pub fn blob(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
          53  +
        self.blob.as_ref()
          54  +
    }
  200     55   
    #[allow(missing_docs)] // documentation missing in model
  201         -
    pub complex_map: ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
          56  +
    pub fn boolean(&self) -> ::std::option::Option<bool> {
          57  +
        self.boolean
          58  +
    }
  202     59   
    #[allow(missing_docs)] // documentation missing in model
  203         -
    pub complex_union: ::std::boxed::Box<crate::model::ComplexUnion>,
  204         -
}
  205         -
impl ComplexStructOperationOutput {
          60  +
    pub fn string(&self) -> ::std::option::Option<&str> {
          61  +
        self.string.as_deref()
          62  +
    }
  206     63   
    #[allow(missing_docs)] // documentation missing in model
  207         -
    pub fn structure(&self) -> ::std::option::Option<&crate::model::SimpleStruct> {
  208         -
        self.structure.as_ref()
          64  +
    pub fn byte(&self) -> ::std::option::Option<i8> {
          65  +
        self.byte
  209     66   
    }
  210     67   
    #[allow(missing_docs)] // documentation missing in model
  211         -
    pub fn empty_structure(&self) -> ::std::option::Option<&crate::model::EmptyStruct> {
  212         -
        self.empty_structure.as_ref()
          68  +
    pub fn short(&self) -> ::std::option::Option<i16> {
          69  +
        self.short
  213     70   
    }
  214     71   
    #[allow(missing_docs)] // documentation missing in model
  215         -
    pub fn list(&self) -> ::std::option::Option<&[::std::string::String]> {
  216         -
        self.list.as_deref()
          72  +
    pub fn integer(&self) -> ::std::option::Option<i32> {
          73  +
        self.integer
  217     74   
    }
  218     75   
    #[allow(missing_docs)] // documentation missing in model
  219         -
    pub fn map(
  220         -
        &self,
  221         -
    ) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, i32>> {
  222         -
        self.map.as_ref()
          76  +
    pub fn long(&self) -> ::std::option::Option<i64> {
          77  +
        self.long
  223     78   
    }
  224     79   
    #[allow(missing_docs)] // documentation missing in model
  225         -
    pub fn union(&self) -> ::std::option::Option<&crate::model::SimpleUnion> {
  226         -
        self.union.as_ref()
          80  +
    pub fn float(&self) -> ::std::option::Option<f32> {
          81  +
        self.float
  227     82   
    }
  228     83   
    #[allow(missing_docs)] // documentation missing in model
  229         -
    pub fn unit_union(&self) -> ::std::option::Option<&crate::model::UnitUnion> {
  230         -
        self.unit_union.as_ref()
          84  +
    pub fn double(&self) -> ::std::option::Option<f64> {
          85  +
        self.double
  231     86   
    }
  232     87   
    #[allow(missing_docs)] // documentation missing in model
  233         -
    pub fn structure_list(&self) -> ::std::option::Option<&[crate::model::SimpleStruct]> {
  234         -
        self.structure_list.as_deref()
          88  +
    pub fn timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
          89  +
        self.timestamp.as_ref()
  235     90   
    }
  236     91   
    #[allow(missing_docs)] // documentation missing in model
  237         -
    pub fn complex_list(
  238         -
        &self,
  239         -
    ) -> &[::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>] {
  240         -
        use std::ops::Deref;
  241         -
        self.complex_list.deref()
          92  +
    pub fn r#enum(&self) -> ::std::option::Option<&crate::model::Suit> {
          93  +
        self.r#enum.as_ref()
  242     94   
    }
  243     95   
    #[allow(missing_docs)] // documentation missing in model
  244         -
    pub fn complex_map(
  245         -
        &self,
  246         -
    ) -> &::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion> {
  247         -
        &self.complex_map
          96  +
    pub fn required_blob(&self) -> &::aws_smithy_types::Blob {
          97  +
        &self.required_blob
  248     98   
    }
  249     99   
    #[allow(missing_docs)] // documentation missing in model
  250         -
    pub fn complex_union(&self) -> &crate::model::ComplexUnion {
         100  +
    pub fn required_boolean(&self) -> bool {
         101  +
        self.required_boolean
         102  +
    }
         103  +
    #[allow(missing_docs)] // documentation missing in model
         104  +
    pub fn required_string(&self) -> &str {
  251    105   
        use std::ops::Deref;
  252         -
        self.complex_union.deref()
         106  +
        self.required_string.deref()
         107  +
    }
         108  +
    #[allow(missing_docs)] // documentation missing in model
         109  +
    pub fn required_byte(&self) -> i8 {
         110  +
        self.required_byte
         111  +
    }
         112  +
    #[allow(missing_docs)] // documentation missing in model
         113  +
    pub fn required_short(&self) -> i16 {
         114  +
        self.required_short
         115  +
    }
         116  +
    #[allow(missing_docs)] // documentation missing in model
         117  +
    pub fn required_integer(&self) -> i32 {
         118  +
        self.required_integer
         119  +
    }
         120  +
    #[allow(missing_docs)] // documentation missing in model
         121  +
    pub fn required_long(&self) -> i64 {
         122  +
        self.required_long
         123  +
    }
         124  +
    #[allow(missing_docs)] // documentation missing in model
         125  +
    pub fn required_float(&self) -> f32 {
         126  +
        self.required_float
         127  +
    }
         128  +
    #[allow(missing_docs)] // documentation missing in model
         129  +
    pub fn required_double(&self) -> f64 {
         130  +
        self.required_double
         131  +
    }
         132  +
    #[allow(missing_docs)] // documentation missing in model
         133  +
    pub fn required_timestamp(&self) -> &::aws_smithy_types::DateTime {
         134  +
        &self.required_timestamp
         135  +
    }
         136  +
    #[allow(missing_docs)] // documentation missing in model
         137  +
    pub fn required_enum(&self) -> &crate::model::Suit {
         138  +
        &self.required_enum
  253    139   
    }
  254    140   
}
  255         -
impl ComplexStructOperationOutput {
  256         -
    /// Creates a new builder-style object to manufacture [`ComplexStructOperationOutput`](crate::output::ComplexStructOperationOutput).
  257         -
    pub fn builder() -> crate::output::complex_struct_operation_output::Builder {
  258         -
        crate::output::complex_struct_operation_output::Builder::default()
         141  +
impl SimpleStructOperationOutput {
         142  +
    /// Creates a new builder-style object to manufacture [`SimpleStructOperationOutput`](crate::output::SimpleStructOperationOutput).
         143  +
    pub fn builder() -> crate::output::simple_struct_operation_output::Builder {
         144  +
        crate::output::simple_struct_operation_output::Builder::default()
  259    145   
    }
  260    146   
}
  261    147   
  262    148   
#[allow(missing_docs)] // documentation missing in model
  263    149   
#[derive(
  264    150   
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
  265    151   
)]
  266    152   
pub struct ErrorSerializationOperationOutput {
  267    153   
    /// A standard error for input validation failures. This should be thrown by services when a member of the input structure falls outside of the modeled or documented constraints.
  268    154   
    pub error_shape: ::std::option::Option<crate::error::ValidationException>,
  269    155   
}
  270    156   
impl ErrorSerializationOperationOutput {
  271    157   
    /// A standard error for input validation failures. This should be thrown by services when a member of the input structure falls outside of the modeled or documented constraints.
  272    158   
    pub fn error_shape(&self) -> ::std::option::Option<&crate::error::ValidationException> {
  273    159   
        self.error_shape.as_ref()
  274    160   
    }
  275    161   
}
  276    162   
impl ErrorSerializationOperationOutput {
  277    163   
    /// Creates a new builder-style object to manufacture [`ErrorSerializationOperationOutput`](crate::output::ErrorSerializationOperationOutput).
  278    164   
    pub fn builder() -> crate::output::error_serialization_operation_output::Builder {
  279    165   
        crate::output::error_serialization_operation_output::Builder::default()
  280    166   
    }
  281    167   
}
  282    168   
  283    169   
#[allow(missing_docs)] // documentation missing in model
  284    170   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
  285         -
pub struct SimpleStructOperationOutput {
  286         -
    #[allow(missing_docs)] // documentation missing in model
  287         -
    pub blob: ::std::option::Option<::aws_smithy_types::Blob>,
  288         -
    #[allow(missing_docs)] // documentation missing in model
  289         -
    pub boolean: ::std::option::Option<bool>,
  290         -
    #[allow(missing_docs)] // documentation missing in model
  291         -
    pub string: ::std::option::Option<::std::string::String>,
  292         -
    #[allow(missing_docs)] // documentation missing in model
  293         -
    pub byte: ::std::option::Option<i8>,
  294         -
    #[allow(missing_docs)] // documentation missing in model
  295         -
    pub short: ::std::option::Option<i16>,
  296         -
    #[allow(missing_docs)] // documentation missing in model
  297         -
    pub integer: ::std::option::Option<i32>,
  298         -
    #[allow(missing_docs)] // documentation missing in model
  299         -
    pub long: ::std::option::Option<i64>,
  300         -
    #[allow(missing_docs)] // documentation missing in model
  301         -
    pub float: ::std::option::Option<f32>,
  302         -
    #[allow(missing_docs)] // documentation missing in model
  303         -
    pub double: ::std::option::Option<f64>,
  304         -
    #[allow(missing_docs)] // documentation missing in model
  305         -
    pub timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
  306         -
    #[allow(missing_docs)] // documentation missing in model
  307         -
    pub r#enum: ::std::option::Option<crate::model::Suit>,
  308         -
    #[allow(missing_docs)] // documentation missing in model
  309         -
    pub required_blob: ::aws_smithy_types::Blob,
         171  +
pub struct ComplexStructOperationOutput {
  310    172   
    #[allow(missing_docs)] // documentation missing in model
  311         -
    pub required_boolean: bool,
         173  +
    pub structure: ::std::option::Option<crate::model::SimpleStruct>,
  312    174   
    #[allow(missing_docs)] // documentation missing in model
  313         -
    pub required_string: ::std::string::String,
         175  +
    pub empty_structure: ::std::option::Option<crate::model::EmptyStruct>,
  314    176   
    #[allow(missing_docs)] // documentation missing in model
  315         -
    pub required_byte: i8,
         177  +
    pub list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
  316    178   
    #[allow(missing_docs)] // documentation missing in model
  317         -
    pub required_short: i16,
         179  +
    pub map: ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
  318    180   
    #[allow(missing_docs)] // documentation missing in model
  319         -
    pub required_integer: i32,
         181  +
    pub union: ::std::option::Option<crate::model::SimpleUnion>,
  320    182   
    #[allow(missing_docs)] // documentation missing in model
  321         -
    pub required_long: i64,
         183  +
    pub unit_union: ::std::option::Option<crate::model::UnitUnion>,
  322    184   
    #[allow(missing_docs)] // documentation missing in model
  323         -
    pub required_float: f32,
         185  +
    pub structure_list: ::std::option::Option<::std::vec::Vec<crate::model::SimpleStruct>>,
  324    186   
    #[allow(missing_docs)] // documentation missing in model
  325         -
    pub required_double: f64,
         187  +
    pub complex_list: ::std::vec::Vec<
         188  +
        ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
         189  +
    >,
  326    190   
    #[allow(missing_docs)] // documentation missing in model
  327         -
    pub required_timestamp: ::aws_smithy_types::DateTime,
         191  +
    pub complex_map: ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
  328    192   
    #[allow(missing_docs)] // documentation missing in model
  329         -
    pub required_enum: crate::model::Suit,
         193  +
    pub complex_union: ::std::boxed::Box<crate::model::ComplexUnion>,
  330    194   
}
  331         -
impl SimpleStructOperationOutput {
  332         -
    #[allow(missing_docs)] // documentation missing in model
  333         -
    pub fn blob(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
  334         -
        self.blob.as_ref()
  335         -
    }
         195  +
impl ComplexStructOperationOutput {
  336    196   
    #[allow(missing_docs)] // documentation missing in model
  337         -
    pub fn boolean(&self) -> ::std::option::Option<bool> {
  338         -
        self.boolean
         197  +
    pub fn structure(&self) -> ::std::option::Option<&crate::model::SimpleStruct> {
         198  +
        self.structure.as_ref()
  339    199   
    }
  340    200   
    #[allow(missing_docs)] // documentation missing in model
  341         -
    pub fn string(&self) -> ::std::option::Option<&str> {
  342         -
        self.string.as_deref()
         201  +
    pub fn empty_structure(&self) -> ::std::option::Option<&crate::model::EmptyStruct> {
         202  +
        self.empty_structure.as_ref()
  343    203   
    }
  344    204   
    #[allow(missing_docs)] // documentation missing in model
  345         -
    pub fn byte(&self) -> ::std::option::Option<i8> {
  346         -
        self.byte
         205  +
    pub fn list(&self) -> ::std::option::Option<&[::std::string::String]> {
         206  +
        self.list.as_deref()
  347    207   
    }
  348    208   
    #[allow(missing_docs)] // documentation missing in model
  349         -
    pub fn short(&self) -> ::std::option::Option<i16> {
  350         -
        self.short
         209  +
    pub fn map(
         210  +
        &self,
         211  +
    ) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, i32>> {
         212  +
        self.map.as_ref()
  351    213   
    }
  352    214   
    #[allow(missing_docs)] // documentation missing in model
  353         -
    pub fn integer(&self) -> ::std::option::Option<i32> {
  354         -
        self.integer
         215  +
    pub fn union(&self) -> ::std::option::Option<&crate::model::SimpleUnion> {
         216  +
        self.union.as_ref()
  355    217   
    }
  356    218   
    #[allow(missing_docs)] // documentation missing in model
  357         -
    pub fn long(&self) -> ::std::option::Option<i64> {
  358         -
        self.long
         219  +
    pub fn unit_union(&self) -> ::std::option::Option<&crate::model::UnitUnion> {
         220  +
        self.unit_union.as_ref()
  359    221   
    }
  360    222   
    #[allow(missing_docs)] // documentation missing in model
  361         -
    pub fn float(&self) -> ::std::option::Option<f32> {
  362         -
        self.float
         223  +
    pub fn structure_list(&self) -> ::std::option::Option<&[crate::model::SimpleStruct]> {
         224  +
        self.structure_list.as_deref()
  363    225   
    }
  364    226   
    #[allow(missing_docs)] // documentation missing in model
  365         -
    pub fn double(&self) -> ::std::option::Option<f64> {
  366         -
        self.double
         227  +
    pub fn complex_list(
         228  +
        &self,
         229  +
    ) -> &[::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>] {
         230  +
        use std::ops::Deref;
         231  +
        self.complex_list.deref()
  367    232   
    }
  368    233   
    #[allow(missing_docs)] // documentation missing in model
  369         -
    pub fn timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
  370         -
        self.timestamp.as_ref()
         234  +
    pub fn complex_map(
         235  +
        &self,
         236  +
    ) -> &::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion> {
         237  +
        &self.complex_map
  371    238   
    }
  372    239   
    #[allow(missing_docs)] // documentation missing in model
  373         -
    pub fn r#enum(&self) -> ::std::option::Option<&crate::model::Suit> {
  374         -
        self.r#enum.as_ref()
         240  +
    pub fn complex_union(&self) -> &crate::model::ComplexUnion {
         241  +
        use std::ops::Deref;
         242  +
        self.complex_union.deref()
  375    243   
    }
  376         -
    #[allow(missing_docs)] // documentation missing in model
  377         -
    pub fn required_blob(&self) -> &::aws_smithy_types::Blob {
  378         -
        &self.required_blob
         244  +
}
         245  +
impl ComplexStructOperationOutput {
         246  +
    /// Creates a new builder-style object to manufacture [`ComplexStructOperationOutput`](crate::output::ComplexStructOperationOutput).
         247  +
    pub fn builder() -> crate::output::complex_struct_operation_output::Builder {
         248  +
        crate::output::complex_struct_operation_output::Builder::default()
  379    249   
    }
  380         -
    #[allow(missing_docs)] // documentation missing in model
  381         -
    pub fn required_boolean(&self) -> bool {
  382         -
        self.required_boolean
         250  +
}
         251  +
         252  +
#[allow(missing_docs)] // documentation missing in model
         253  +
#[derive(
         254  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
         255  +
)]
         256  +
pub struct EmptyStructOperationOutput {}
         257  +
impl EmptyStructOperationOutput {
         258  +
    /// Creates a new builder-style object to manufacture [`EmptyStructOperationOutput`](crate::output::EmptyStructOperationOutput).
         259  +
    pub fn builder() -> crate::output::empty_struct_operation_output::Builder {
         260  +
        crate::output::empty_struct_operation_output::Builder::default()
  383    261   
    }
         262  +
}
         263  +
         264  +
#[allow(missing_docs)] // documentation missing in model
         265  +
#[derive(
         266  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
         267  +
)]
         268  +
pub struct SingleMemberStructOperationOutput {
  384    269   
    #[allow(missing_docs)] // documentation missing in model
  385         -
    pub fn required_string(&self) -> &str {
  386         -
        use std::ops::Deref;
  387         -
        self.required_string.deref()
  388         -
    }
         270  +
    pub message: ::std::option::Option<::std::string::String>,
         271  +
}
         272  +
impl SingleMemberStructOperationOutput {
  389    273   
    #[allow(missing_docs)] // documentation missing in model
  390         -
    pub fn required_byte(&self) -> i8 {
  391         -
        self.required_byte
         274  +
    pub fn message(&self) -> ::std::option::Option<&str> {
         275  +
        self.message.as_deref()
  392    276   
    }
  393         -
    #[allow(missing_docs)] // documentation missing in model
  394         -
    pub fn required_short(&self) -> i16 {
  395         -
        self.required_short
         277  +
}
         278  +
impl SingleMemberStructOperationOutput {
         279  +
    /// Creates a new builder-style object to manufacture [`SingleMemberStructOperationOutput`](crate::output::SingleMemberStructOperationOutput).
         280  +
    pub fn builder() -> crate::output::single_member_struct_operation_output::Builder {
         281  +
        crate::output::single_member_struct_operation_output::Builder::default()
  396    282   
    }
         283  +
}
         284  +
         285  +
#[allow(missing_docs)] // documentation missing in model
         286  +
#[derive(
         287  +
    ::std::clone::Clone, ::std::cmp::Eq, ::std::cmp::PartialEq, ::std::fmt::Debug, ::std::hash::Hash,
         288  +
)]
         289  +
pub struct RecursiveUnionOperationOutput {
  397    290   
    #[allow(missing_docs)] // documentation missing in model
  398         -
    pub fn required_integer(&self) -> i32 {
  399         -
        self.required_integer
  400         -
    }
         291  +
    pub nested: ::std::option::Option<crate::model::RecursiveOperationInputOutputNested1>,
         292  +
}
         293  +
impl RecursiveUnionOperationOutput {
  401    294   
    #[allow(missing_docs)] // documentation missing in model
  402         -
    pub fn required_long(&self) -> i64 {
  403         -
        self.required_long
         295  +
    pub fn nested(
         296  +
        &self,
         297  +
    ) -> ::std::option::Option<&crate::model::RecursiveOperationInputOutputNested1> {
         298  +
        self.nested.as_ref()
  404    299   
    }
  405         -
    #[allow(missing_docs)] // documentation missing in model
  406         -
    pub fn required_float(&self) -> f32 {
  407         -
        self.required_float
         300  +
}
         301  +
impl RecursiveUnionOperationOutput {
         302  +
    /// Creates a new builder-style object to manufacture [`RecursiveUnionOperationOutput`](crate::output::RecursiveUnionOperationOutput).
         303  +
    pub fn builder() -> crate::output::recursive_union_operation_output::Builder {
         304  +
        crate::output::recursive_union_operation_output::Builder::default()
  408    305   
    }
         306  +
}
         307  +
         308  +
#[allow(missing_docs)] // documentation missing in model
         309  +
#[derive(::std::fmt::Debug)]
         310  +
pub struct StreamingOperationOutput {
  409    311   
    #[allow(missing_docs)] // documentation missing in model
  410         -
    pub fn required_double(&self) -> f64 {
  411         -
        self.required_double
  412         -
    }
         312  +
    pub events: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
         313  +
        crate::model::Events,
         314  +
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
         315  +
    >,
         316  +
}
         317  +
impl StreamingOperationOutput {
  413    318   
    #[allow(missing_docs)] // documentation missing in model
  414         -
    pub fn required_timestamp(&self) -> &::aws_smithy_types::DateTime {
  415         -
        &self.required_timestamp
         319  +
    pub fn events(
         320  +
        &self,
         321  +
    ) -> &::aws_smithy_legacy_http::event_stream::EventStreamSender<
         322  +
        crate::model::Events,
         323  +
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
         324  +
    > {
         325  +
        &self.events
  416    326   
    }
  417         -
    #[allow(missing_docs)] // documentation missing in model
  418         -
    pub fn required_enum(&self) -> &crate::model::Suit {
  419         -
        &self.required_enum
         327  +
}
         328  +
impl StreamingOperationOutput {
         329  +
    /// Creates a new builder-style object to manufacture [`StreamingOperationOutput`](crate::output::StreamingOperationOutput).
         330  +
    pub fn builder() -> crate::output::streaming_operation_output::Builder {
         331  +
        crate::output::streaming_operation_output::Builder::default()
  420    332   
    }
  421    333   
}
  422         -
impl SimpleStructOperationOutput {
  423         -
    /// Creates a new builder-style object to manufacture [`SimpleStructOperationOutput`](crate::output::SimpleStructOperationOutput).
  424         -
    pub fn builder() -> crate::output::simple_struct_operation_output::Builder {
  425         -
        crate::output::simple_struct_operation_output::Builder::default()
  426         -
    }
  427         -
}
  428         -
/// See [`StreamingOperationWithOptionalDataOutput`](crate::output::StreamingOperationWithOptionalDataOutput).
  429         -
pub mod streaming_operation_with_optional_data_output {
  430    334   
  431         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
  432         -
    /// Holds one variant for each of the ways the builder can fail.
  433         -
    #[non_exhaustive]
  434         -
    #[allow(clippy::enum_variant_names)]
  435         -
    pub enum ConstraintViolation {
  436         -
        /// `events` was not provided but it is required when building `StreamingOperationWithOptionalDataOutput`.
  437         -
        MissingEvents,
  438         -
    }
  439         -
    impl ::std::fmt::Display for ConstraintViolation {
  440         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
  441         -
            match self {
  442         -
                ConstraintViolation::MissingEvents => write!(f, "`events` was not provided but it is required when building `StreamingOperationWithOptionalDataOutput`"),
  443         -
            }
         335  +
#[allow(missing_docs)] // documentation missing in model
         336  +
#[derive(::std::fmt::Debug)]
         337  +
pub struct StreamingOperationWithInitialDataOutput {
         338  +
    #[allow(missing_docs)] // documentation missing in model
         339  +
    pub events: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
         340  +
        crate::model::Events,
         341  +
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
         342  +
    >,
         343  +
}
         344  +
impl StreamingOperationWithInitialDataOutput {
         345  +
    #[allow(missing_docs)] // documentation missing in model
         346  +
    pub fn events(
         347  +
        &self,
         348  +
    ) -> &::aws_smithy_legacy_http::event_stream::EventStreamSender<
         349  +
        crate::model::Events,
         350  +
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
         351  +
    > {
         352  +
        &self.events
  444    353   
    }
         354  +
}
         355  +
impl StreamingOperationWithInitialDataOutput {
         356  +
    /// Creates a new builder-style object to manufacture [`StreamingOperationWithInitialDataOutput`](crate::output::StreamingOperationWithInitialDataOutput).
         357  +
    pub fn builder() -> crate::output::streaming_operation_with_initial_data_output::Builder {
         358  +
        crate::output::streaming_operation_with_initial_data_output::Builder::default()
  445    359   
    }
  446         -
    impl ::std::error::Error for ConstraintViolation {}
  447         -
    impl ::std::convert::TryFrom<Builder> for crate::output::StreamingOperationWithOptionalDataOutput {
  448         -
        type Error = ConstraintViolation;
         360  +
}
  449    361   
  450         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
  451         -
            builder.build()
  452         -
        }
  453         -
    }
  454         -
    /// A builder for [`StreamingOperationWithOptionalDataOutput`](crate::output::StreamingOperationWithOptionalDataOutput).
  455         -
    #[derive(::std::default::Default, ::std::fmt::Debug)]
  456         -
    pub struct Builder {
  457         -
        pub(crate) optional_response_data: ::std::option::Option<::std::string::String>,
  458         -
        pub(crate) events: ::std::option::Option<
  459         -
            ::aws_smithy_legacy_http::event_stream::EventStreamSender<
         362  +
#[allow(missing_docs)] // documentation missing in model
         363  +
#[derive(::std::fmt::Debug)]
         364  +
pub struct StreamingOperationWithInitialResponseOutput {
         365  +
    #[allow(missing_docs)] // documentation missing in model
         366  +
    pub response_data: ::std::string::String,
         367  +
    #[allow(missing_docs)] // documentation missing in model
         368  +
    pub events: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
  460    369   
        crate::model::Events,
  461    370   
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
  462    371   
    >,
  463         -
        >,
  464         -
    }
  465         -
    impl Builder {
         372  +
}
         373  +
impl StreamingOperationWithInitialResponseOutput {
  466    374   
    #[allow(missing_docs)] // documentation missing in model
  467         -
        pub fn optional_response_data(
  468         -
            mut self,
  469         -
            input: ::std::option::Option<::std::string::String>,
  470         -
        ) -> Self {
  471         -
            self.optional_response_data = input;
  472         -
            self
         375  +
    pub fn response_data(&self) -> &str {
         376  +
        use std::ops::Deref;
         377  +
        self.response_data.deref()
  473    378   
    }
  474    379   
    #[allow(missing_docs)] // documentation missing in model
  475    380   
    pub fn events(
  476         -
            mut self,
  477         -
            input: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
         381  +
        &self,
         382  +
    ) -> &::aws_smithy_legacy_http::event_stream::EventStreamSender<
  478    383   
        crate::model::Events,
  479    384   
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
  480         -
            >,
  481         -
        ) -> Self {
  482         -
            self.events = Some(input);
  483         -
            self
  484         -
        }
  485         -
        /// Consumes the builder and constructs a [`StreamingOperationWithOptionalDataOutput`](crate::output::StreamingOperationWithOptionalDataOutput).
  486         -
        ///
  487         -
        /// The builder fails to construct a [`StreamingOperationWithOptionalDataOutput`](crate::output::StreamingOperationWithOptionalDataOutput) if a [`ConstraintViolation`] occurs.
  488         -
        ///
  489         -
        pub fn build(
  490         -
            self,
  491         -
        ) -> Result<crate::output::StreamingOperationWithOptionalDataOutput, ConstraintViolation>
  492         -
        {
  493         -
            self.build_enforcing_all_constraints()
  494         -
        }
  495         -
        fn build_enforcing_all_constraints(
  496         -
            self,
  497         -
        ) -> Result<crate::output::StreamingOperationWithOptionalDataOutput, ConstraintViolation>
  498         -
        {
  499         -
            Ok(crate::output::StreamingOperationWithOptionalDataOutput {
  500         -
                optional_response_data: self.optional_response_data,
  501         -
                events: self.events.ok_or(ConstraintViolation::MissingEvents)?,
  502         -
            })
  503         -
        }
         385  +
    > {
         386  +
        &self.events
  504    387   
    }
  505    388   
}
  506         -
/// See [`StreamingOperationWithInitialResponseOutput`](crate::output::StreamingOperationWithInitialResponseOutput).
  507         -
pub mod streaming_operation_with_initial_response_output {
  508         -
  509         -
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
  510         -
    /// Holds one variant for each of the ways the builder can fail.
  511         -
    #[non_exhaustive]
  512         -
    #[allow(clippy::enum_variant_names)]
  513         -
    pub enum ConstraintViolation {
  514         -
        /// `response_data` was not provided but it is required when building `StreamingOperationWithInitialResponseOutput`.
  515         -
        MissingResponseData,
  516         -
        /// `events` was not provided but it is required when building `StreamingOperationWithInitialResponseOutput`.
  517         -
        MissingEvents,
  518         -
    }
  519         -
    impl ::std::fmt::Display for ConstraintViolation {
  520         -
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
  521         -
            match self {
  522         -
                ConstraintViolation::MissingResponseData => write!(f, "`response_data` was not provided but it is required when building `StreamingOperationWithInitialResponseOutput`"),
  523         -
                ConstraintViolation::MissingEvents => write!(f, "`events` was not provided but it is required when building `StreamingOperationWithInitialResponseOutput`"),
  524         -
            }
  525         -
        }
         389  +
impl StreamingOperationWithInitialResponseOutput {
         390  +
    /// Creates a new builder-style object to manufacture [`StreamingOperationWithInitialResponseOutput`](crate::output::StreamingOperationWithInitialResponseOutput).
         391  +
    pub fn builder() -> crate::output::streaming_operation_with_initial_response_output::Builder {
         392  +
        crate::output::streaming_operation_with_initial_response_output::Builder::default()
  526    393   
    }
  527         -
    impl ::std::error::Error for ConstraintViolation {}
  528         -
    impl ::std::convert::TryFrom<Builder>
  529         -
        for crate::output::StreamingOperationWithInitialResponseOutput
  530         -
    {
  531         -
        type Error = ConstraintViolation;
         394  +
}
  532    395   
  533         -
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
  534         -
            builder.build()
  535         -
        }
  536         -
    }
  537         -
    /// A builder for [`StreamingOperationWithInitialResponseOutput`](crate::output::StreamingOperationWithInitialResponseOutput).
  538         -
    #[derive(::std::default::Default, ::std::fmt::Debug)]
  539         -
    pub struct Builder {
  540         -
        pub(crate) response_data: ::std::option::Option<::std::string::String>,
  541         -
        pub(crate) events: ::std::option::Option<
  542         -
            ::aws_smithy_legacy_http::event_stream::EventStreamSender<
         396  +
#[allow(missing_docs)] // documentation missing in model
         397  +
#[derive(::std::fmt::Debug)]
         398  +
pub struct StreamingOperationWithOptionalDataOutput {
         399  +
    #[allow(missing_docs)] // documentation missing in model
         400  +
    pub optional_response_data: ::std::option::Option<::std::string::String>,
         401  +
    #[allow(missing_docs)] // documentation missing in model
         402  +
    pub events: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
  543    403   
        crate::model::Events,
  544    404   
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
  545    405   
    >,
  546         -
        >,
  547         -
    }
  548         -
    impl Builder {
         406  +
}
         407  +
impl StreamingOperationWithOptionalDataOutput {
  549    408   
    #[allow(missing_docs)] // documentation missing in model
  550         -
        pub fn response_data(mut self, input: ::std::string::String) -> Self {
  551         -
            self.response_data = Some(input);
  552         -
            self
         409  +
    pub fn optional_response_data(&self) -> ::std::option::Option<&str> {
         410  +
        self.optional_response_data.as_deref()
  553    411   
    }
  554    412   
    #[allow(missing_docs)] // documentation missing in model
  555    413   
    pub fn events(
  556         -
            mut self,
  557         -
            input: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
         414  +
        &self,
         415  +
    ) -> &::aws_smithy_legacy_http::event_stream::EventStreamSender<
  558    416   
        crate::model::Events,
  559    417   
        ::aws_smithy_legacy_http::event_stream::MessageStreamError,
  560         -
            >,
  561         -
        ) -> Self {
  562         -
            self.events = Some(input);
  563         -
            self
  564         -
        }
  565         -
        /// Consumes the builder and constructs a [`StreamingOperationWithInitialResponseOutput`](crate::output::StreamingOperationWithInitialResponseOutput).
  566         -
        ///
  567         -
        /// The builder fails to construct a [`StreamingOperationWithInitialResponseOutput`](crate::output::StreamingOperationWithInitialResponseOutput) if a [`ConstraintViolation`] occurs.
  568         -
        ///
  569         -
        /// If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
  570         -
        pub fn build(
  571         -
            self,
  572         -
        ) -> Result<crate::output::StreamingOperationWithInitialResponseOutput, ConstraintViolation>
  573         -
        {
  574         -
            self.build_enforcing_all_constraints()
  575         -
        }
  576         -
        fn build_enforcing_all_constraints(
  577         -
            self,
  578         -
        ) -> Result<crate::output::StreamingOperationWithInitialResponseOutput, ConstraintViolation>
  579         -
        {
  580         -
            Ok(crate::output::StreamingOperationWithInitialResponseOutput {
  581         -
                response_data: self
  582         -
                    .response_data
  583         -
                    .ok_or(ConstraintViolation::MissingResponseData)?,
  584         -
                events: self.events.ok_or(ConstraintViolation::MissingEvents)?,
  585         -
            })
         418  +
    > {
         419  +
        &self.events
  586    420   
    }
         421  +
}
         422  +
impl StreamingOperationWithOptionalDataOutput {
         423  +
    /// Creates a new builder-style object to manufacture [`StreamingOperationWithOptionalDataOutput`](crate::output::StreamingOperationWithOptionalDataOutput).
         424  +
    pub fn builder() -> crate::output::streaming_operation_with_optional_data_output::Builder {
         425  +
        crate::output::streaming_operation_with_optional_data_output::Builder::default()
  587    426   
    }
  588    427   
}
  589         -
/// See [`StreamingOperationWithInitialDataOutput`](crate::output::StreamingOperationWithInitialDataOutput).
  590         -
pub mod streaming_operation_with_initial_data_output {
         428  +
/// See [`SimpleStructOperationOutput`](crate::output::SimpleStructOperationOutput).
         429  +
pub mod simple_struct_operation_output {
  591    430   
  592    431   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
  593    432   
    /// Holds one variant for each of the ways the builder can fail.
  594    433   
    #[non_exhaustive]
  595    434   
    #[allow(clippy::enum_variant_names)]
  596    435   
    pub enum ConstraintViolation {
  597         -
        /// `events` was not provided but it is required when building `StreamingOperationWithInitialDataOutput`.
  598         -
        MissingEvents,
         436  +
        /// `required_blob` was not provided but it is required when building `SimpleStructOperationOutput`.
         437  +
        MissingRequiredBlob,
         438  +
        /// `required_boolean` was not provided but it is required when building `SimpleStructOperationOutput`.
         439  +
        MissingRequiredBoolean,
         440  +
        /// `required_string` was not provided but it is required when building `SimpleStructOperationOutput`.
         441  +
        MissingRequiredString,
         442  +
        /// `required_byte` was not provided but it is required when building `SimpleStructOperationOutput`.
         443  +
        MissingRequiredByte,
         444  +
        /// `required_short` was not provided but it is required when building `SimpleStructOperationOutput`.
         445  +
        MissingRequiredShort,
         446  +
        /// `required_integer` was not provided but it is required when building `SimpleStructOperationOutput`.
         447  +
        MissingRequiredInteger,
         448  +
        /// `required_long` was not provided but it is required when building `SimpleStructOperationOutput`.
         449  +
        MissingRequiredLong,
         450  +
        /// `required_float` was not provided but it is required when building `SimpleStructOperationOutput`.
         451  +
        MissingRequiredFloat,
         452  +
        /// `required_double` was not provided but it is required when building `SimpleStructOperationOutput`.
         453  +
        MissingRequiredDouble,
         454  +
        /// `required_timestamp` was not provided but it is required when building `SimpleStructOperationOutput`.
         455  +
        MissingRequiredTimestamp,
         456  +
        /// `required_enum` was not provided but it is required when building `SimpleStructOperationOutput`.
         457  +
        MissingRequiredEnum,
  599    458   
    }
  600    459   
    impl ::std::fmt::Display for ConstraintViolation {
  601    460   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
  602    461   
            match self {
  603         -
                ConstraintViolation::MissingEvents => write!(f, "`events` was not provided but it is required when building `StreamingOperationWithInitialDataOutput`"),
         462  +
                ConstraintViolation::MissingRequiredBlob => write!(f, "`required_blob` was not provided but it is required when building `SimpleStructOperationOutput`"),
         463  +
                ConstraintViolation::MissingRequiredBoolean => write!(f, "`required_boolean` was not provided but it is required when building `SimpleStructOperationOutput`"),
         464  +
                ConstraintViolation::MissingRequiredString => write!(f, "`required_string` was not provided but it is required when building `SimpleStructOperationOutput`"),
         465  +
                ConstraintViolation::MissingRequiredByte => write!(f, "`required_byte` was not provided but it is required when building `SimpleStructOperationOutput`"),
         466  +
                ConstraintViolation::MissingRequiredShort => write!(f, "`required_short` was not provided but it is required when building `SimpleStructOperationOutput`"),
         467  +
                ConstraintViolation::MissingRequiredInteger => write!(f, "`required_integer` was not provided but it is required when building `SimpleStructOperationOutput`"),
         468  +
                ConstraintViolation::MissingRequiredLong => write!(f, "`required_long` was not provided but it is required when building `SimpleStructOperationOutput`"),
         469  +
                ConstraintViolation::MissingRequiredFloat => write!(f, "`required_float` was not provided but it is required when building `SimpleStructOperationOutput`"),
         470  +
                ConstraintViolation::MissingRequiredDouble => write!(f, "`required_double` was not provided but it is required when building `SimpleStructOperationOutput`"),
         471  +
                ConstraintViolation::MissingRequiredTimestamp => write!(f, "`required_timestamp` was not provided but it is required when building `SimpleStructOperationOutput`"),
         472  +
                ConstraintViolation::MissingRequiredEnum => write!(f, "`required_enum` was not provided but it is required when building `SimpleStructOperationOutput`"),
  604    473   
            }
  605    474   
        }
  606    475   
    }
  607    476   
    impl ::std::error::Error for ConstraintViolation {}
  608         -
    impl ::std::convert::TryFrom<Builder> for crate::output::StreamingOperationWithInitialDataOutput {
         477  +
    impl ::std::convert::TryFrom<Builder> for crate::output::SimpleStructOperationOutput {
  609    478   
        type Error = ConstraintViolation;
  610    479   
  611    480   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
  612    481   
            builder.build()
  613    482   
        }
  614    483   
    }
  615         -
    /// A builder for [`StreamingOperationWithInitialDataOutput`](crate::output::StreamingOperationWithInitialDataOutput).
  616         -
    #[derive(::std::default::Default, ::std::fmt::Debug)]
         484  +
    /// A builder for [`SimpleStructOperationOutput`](crate::output::SimpleStructOperationOutput).
         485  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
  617    486   
    pub struct Builder {
  618         -
        pub(crate) events: ::std::option::Option<
  619         -
            ::aws_smithy_legacy_http::event_stream::EventStreamSender<
  620         -
                crate::model::Events,
  621         -
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
  622         -
            >,
  623         -
        >,
  624         -
    }
         487  +
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::Blob>,
         488  +
        pub(crate) boolean: ::std::option::Option<bool>,
         489  +
        pub(crate) string: ::std::option::Option<::std::string::String>,
         490  +
        pub(crate) byte: ::std::option::Option<i8>,
         491  +
        pub(crate) short: ::std::option::Option<i16>,
         492  +
        pub(crate) integer: ::std::option::Option<i32>,
         493  +
        pub(crate) long: ::std::option::Option<i64>,
         494  +
        pub(crate) float: ::std::option::Option<f32>,
         495  +
        pub(crate) double: ::std::option::Option<f64>,
         496  +
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
         497  +
        pub(crate) r#enum: ::std::option::Option<crate::model::Suit>,
         498  +
        pub(crate) required_blob: ::std::option::Option<::aws_smithy_types::Blob>,
         499  +
        pub(crate) required_boolean: ::std::option::Option<bool>,
         500  +
        pub(crate) required_string: ::std::option::Option<::std::string::String>,
         501  +
        pub(crate) required_byte: ::std::option::Option<i8>,
         502  +
        pub(crate) required_short: ::std::option::Option<i16>,
         503  +
        pub(crate) required_integer: ::std::option::Option<i32>,
         504  +
        pub(crate) required_long: ::std::option::Option<i64>,
         505  +
        pub(crate) required_float: ::std::option::Option<f32>,
         506  +
        pub(crate) required_double: ::std::option::Option<f64>,
         507  +
        pub(crate) required_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
         508  +
        pub(crate) required_enum: ::std::option::Option<crate::model::Suit>,
         509  +
    }
  625    510   
    impl Builder {
  626    511   
        #[allow(missing_docs)] // documentation missing in model
  627         -
        pub fn events(
         512  +
        pub fn blob(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
         513  +
            self.blob = input;
         514  +
            self
         515  +
        }
         516  +
        #[allow(missing_docs)] // documentation missing in model
         517  +
        pub fn boolean(mut self, input: ::std::option::Option<bool>) -> Self {
         518  +
            self.boolean = input;
         519  +
            self
         520  +
        }
         521  +
        #[allow(missing_docs)] // documentation missing in model
         522  +
        pub fn string(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
         523  +
            self.string = input;
         524  +
            self
         525  +
        }
         526  +
        #[allow(missing_docs)] // documentation missing in model
         527  +
        pub fn byte(mut self, input: ::std::option::Option<i8>) -> Self {
         528  +
            self.byte = input;
         529  +
            self
         530  +
        }
         531  +
        #[allow(missing_docs)] // documentation missing in model
         532  +
        pub fn short(mut self, input: ::std::option::Option<i16>) -> Self {
         533  +
            self.short = input;
         534  +
            self
         535  +
        }
         536  +
        #[allow(missing_docs)] // documentation missing in model
         537  +
        pub fn integer(mut self, input: ::std::option::Option<i32>) -> Self {
         538  +
            self.integer = input;
         539  +
            self
         540  +
        }
         541  +
        #[allow(missing_docs)] // documentation missing in model
         542  +
        pub fn long(mut self, input: ::std::option::Option<i64>) -> Self {
         543  +
            self.long = input;
         544  +
            self
         545  +
        }
         546  +
        #[allow(missing_docs)] // documentation missing in model
         547  +
        pub fn float(mut self, input: ::std::option::Option<f32>) -> Self {
         548  +
            self.float = input;
         549  +
            self
         550  +
        }
         551  +
        #[allow(missing_docs)] // documentation missing in model
         552  +
        pub fn double(mut self, input: ::std::option::Option<f64>) -> Self {
         553  +
            self.double = input;
         554  +
            self
         555  +
        }
         556  +
        #[allow(missing_docs)] // documentation missing in model
         557  +
        pub fn timestamp(
  628    558   
            mut self,
  629         -
            input: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
  630         -
                crate::model::Events,
  631         -
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
  632         -
            >,
         559  +
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
  633    560   
        ) -> Self {
  634         -
            self.events = Some(input);
         561  +
            self.timestamp = input;
  635    562   
            self
  636    563   
        }
  637         -
        /// Consumes the builder and constructs a [`StreamingOperationWithInitialDataOutput`](crate::output::StreamingOperationWithInitialDataOutput).
         564  +
        #[allow(missing_docs)] // documentation missing in model
         565  +
        pub fn r#enum(mut self, input: ::std::option::Option<crate::model::Suit>) -> Self {
         566  +
            self.r#enum = input;
         567  +
            self
         568  +
        }
         569  +
        #[allow(missing_docs)] // documentation missing in model
         570  +
        pub fn required_blob(mut self, input: ::aws_smithy_types::Blob) -> Self {
         571  +
            self.required_blob = Some(input);
         572  +
            self
         573  +
        }
         574  +
        #[allow(missing_docs)] // documentation missing in model
         575  +
        pub fn required_boolean(mut self, input: bool) -> Self {
         576  +
            self.required_boolean = Some(input);
         577  +
            self
         578  +
        }
         579  +
        #[allow(missing_docs)] // documentation missing in model
         580  +
        pub fn required_string(mut self, input: ::std::string::String) -> Self {
         581  +
            self.required_string = Some(input);
         582  +
            self
         583  +
        }
         584  +
        #[allow(missing_docs)] // documentation missing in model
         585  +
        pub fn required_byte(mut self, input: i8) -> Self {
         586  +
            self.required_byte = Some(input);
         587  +
            self
         588  +
        }
         589  +
        #[allow(missing_docs)] // documentation missing in model
         590  +
        pub fn required_short(mut self, input: i16) -> Self {
         591  +
            self.required_short = Some(input);
         592  +
            self
         593  +
        }
         594  +
        #[allow(missing_docs)] // documentation missing in model
         595  +
        pub fn required_integer(mut self, input: i32) -> Self {
         596  +
            self.required_integer = Some(input);
         597  +
            self
         598  +
        }
         599  +
        #[allow(missing_docs)] // documentation missing in model
         600  +
        pub fn required_long(mut self, input: i64) -> Self {
         601  +
            self.required_long = Some(input);
         602  +
            self
         603  +
        }
         604  +
        #[allow(missing_docs)] // documentation missing in model
         605  +
        pub fn required_float(mut self, input: f32) -> Self {
         606  +
            self.required_float = Some(input);
         607  +
            self
         608  +
        }
         609  +
        #[allow(missing_docs)] // documentation missing in model
         610  +
        pub fn required_double(mut self, input: f64) -> Self {
         611  +
            self.required_double = Some(input);
         612  +
            self
         613  +
        }
         614  +
        #[allow(missing_docs)] // documentation missing in model
         615  +
        pub fn required_timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
         616  +
            self.required_timestamp = Some(input);
         617  +
            self
         618  +
        }
         619  +
        #[allow(missing_docs)] // documentation missing in model
         620  +
        pub fn required_enum(mut self, input: crate::model::Suit) -> Self {
         621  +
            self.required_enum = Some(input);
         622  +
            self
         623  +
        }
         624  +
        /// Consumes the builder and constructs a [`SimpleStructOperationOutput`](crate::output::SimpleStructOperationOutput).
  638    625   
        ///
  639         -
        /// The builder fails to construct a [`StreamingOperationWithInitialDataOutput`](crate::output::StreamingOperationWithInitialDataOutput) if a [`ConstraintViolation`] occurs.
         626  +
        /// The builder fails to construct a [`SimpleStructOperationOutput`](crate::output::SimpleStructOperationOutput) if a [`ConstraintViolation`] occurs.
  640    627   
        ///
         628  +
        /// If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
  641    629   
        pub fn build(
  642    630   
            self,
  643         -
        ) -> Result<crate::output::StreamingOperationWithInitialDataOutput, ConstraintViolation>
  644         -
        {
         631  +
        ) -> Result<crate::output::SimpleStructOperationOutput, ConstraintViolation> {
  645    632   
            self.build_enforcing_all_constraints()
  646    633   
        }
  647    634   
        fn build_enforcing_all_constraints(
  648    635   
            self,
  649         -
        ) -> Result<crate::output::StreamingOperationWithInitialDataOutput, ConstraintViolation>
  650         -
        {
  651         -
            Ok(crate::output::StreamingOperationWithInitialDataOutput {
  652         -
                events: self.events.ok_or(ConstraintViolation::MissingEvents)?,
         636  +
        ) -> Result<crate::output::SimpleStructOperationOutput, ConstraintViolation> {
         637  +
            Ok(crate::output::SimpleStructOperationOutput {
         638  +
                blob: self.blob,
         639  +
                boolean: self.boolean,
         640  +
                string: self.string,
         641  +
                byte: self.byte,
         642  +
                short: self.short,
         643  +
                integer: self.integer,
         644  +
                long: self.long,
         645  +
                float: self.float,
         646  +
                double: self.double,
         647  +
                timestamp: self.timestamp,
         648  +
                r#enum: self.r#enum,
         649  +
                required_blob: self
         650  +
                    .required_blob
         651  +
                    .ok_or(ConstraintViolation::MissingRequiredBlob)?,
         652  +
                required_boolean: self
         653  +
                    .required_boolean
         654  +
                    .ok_or(ConstraintViolation::MissingRequiredBoolean)?,
         655  +
                required_string: self
         656  +
                    .required_string
         657  +
                    .ok_or(ConstraintViolation::MissingRequiredString)?,
         658  +
                required_byte: self
         659  +
                    .required_byte
         660  +
                    .ok_or(ConstraintViolation::MissingRequiredByte)?,
         661  +
                required_short: self
         662  +
                    .required_short
         663  +
                    .ok_or(ConstraintViolation::MissingRequiredShort)?,
         664  +
                required_integer: self
         665  +
                    .required_integer
         666  +
                    .ok_or(ConstraintViolation::MissingRequiredInteger)?,
         667  +
                required_long: self
         668  +
                    .required_long
         669  +
                    .ok_or(ConstraintViolation::MissingRequiredLong)?,
         670  +
                required_float: self
         671  +
                    .required_float
         672  +
                    .ok_or(ConstraintViolation::MissingRequiredFloat)?,
         673  +
                required_double: self
         674  +
                    .required_double
         675  +
                    .ok_or(ConstraintViolation::MissingRequiredDouble)?,
         676  +
                required_timestamp: self
         677  +
                    .required_timestamp
         678  +
                    .ok_or(ConstraintViolation::MissingRequiredTimestamp)?,
         679  +
                required_enum: self
         680  +
                    .required_enum
         681  +
                    .ok_or(ConstraintViolation::MissingRequiredEnum)?,
  653    682   
            })
  654    683   
        }
  655    684   
    }
  656    685   
}
  657         -
/// See [`StreamingOperationOutput`](crate::output::StreamingOperationOutput).
  658         -
pub mod streaming_operation_output {
         686  +
/// See [`ErrorSerializationOperationOutput`](crate::output::ErrorSerializationOperationOutput).
         687  +
pub mod error_serialization_operation_output {
         688  +
         689  +
    impl ::std::convert::From<Builder> for crate::output::ErrorSerializationOperationOutput {
         690  +
        fn from(builder: Builder) -> Self {
         691  +
            builder.build()
         692  +
        }
         693  +
    }
         694  +
    /// A builder for [`ErrorSerializationOperationOutput`](crate::output::ErrorSerializationOperationOutput).
         695  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
         696  +
    pub struct Builder {
         697  +
        pub(crate) error_shape: ::std::option::Option<crate::error::ValidationException>,
         698  +
    }
         699  +
    impl Builder {
         700  +
        /// A standard error for input validation failures. This should be thrown by services when a member of the input structure falls outside of the modeled or documented constraints.
         701  +
        pub fn error_shape(
         702  +
            mut self,
         703  +
            input: ::std::option::Option<crate::error::ValidationException>,
         704  +
        ) -> Self {
         705  +
            self.error_shape = input;
         706  +
            self
         707  +
        }
         708  +
        /// Consumes the builder and constructs a [`ErrorSerializationOperationOutput`](crate::output::ErrorSerializationOperationOutput).
         709  +
        pub fn build(self) -> crate::output::ErrorSerializationOperationOutput {
         710  +
            self.build_enforcing_all_constraints()
         711  +
        }
         712  +
        fn build_enforcing_all_constraints(
         713  +
            self,
         714  +
        ) -> crate::output::ErrorSerializationOperationOutput {
         715  +
            crate::output::ErrorSerializationOperationOutput {
         716  +
                error_shape: self.error_shape,
         717  +
            }
         718  +
        }
         719  +
    }
         720  +
}
         721  +
/// See [`ComplexStructOperationOutput`](crate::output::ComplexStructOperationOutput).
         722  +
pub mod complex_struct_operation_output {
  659    723   
  660    724   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
  661    725   
    /// Holds one variant for each of the ways the builder can fail.
  662    726   
    #[non_exhaustive]
  663    727   
    #[allow(clippy::enum_variant_names)]
  664    728   
    pub enum ConstraintViolation {
  665         -
        /// `events` was not provided but it is required when building `StreamingOperationOutput`.
  666         -
        MissingEvents,
         729  +
        /// `complex_list` was not provided but it is required when building `ComplexStructOperationOutput`.
         730  +
        MissingComplexList,
         731  +
        /// `complex_map` was not provided but it is required when building `ComplexStructOperationOutput`.
         732  +
        MissingComplexMap,
         733  +
        /// `complex_union` was not provided but it is required when building `ComplexStructOperationOutput`.
         734  +
        MissingComplexUnion,
  667    735   
    }
  668    736   
    impl ::std::fmt::Display for ConstraintViolation {
  669    737   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
  670    738   
            match self {
  671         -
                ConstraintViolation::MissingEvents => write!(f, "`events` was not provided but it is required when building `StreamingOperationOutput`"),
         739  +
                ConstraintViolation::MissingComplexList => write!(f, "`complex_list` was not provided but it is required when building `ComplexStructOperationOutput`"),
         740  +
                ConstraintViolation::MissingComplexMap => write!(f, "`complex_map` was not provided but it is required when building `ComplexStructOperationOutput`"),
         741  +
                ConstraintViolation::MissingComplexUnion => write!(f, "`complex_union` was not provided but it is required when building `ComplexStructOperationOutput`"),
  672    742   
            }
  673    743   
        }
  674    744   
    }
  675    745   
    impl ::std::error::Error for ConstraintViolation {}
  676         -
    impl ::std::convert::TryFrom<Builder> for crate::output::StreamingOperationOutput {
         746  +
    impl ::std::convert::TryFrom<Builder> for crate::output::ComplexStructOperationOutput {
  677    747   
        type Error = ConstraintViolation;
  678    748   
  679    749   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
  680    750   
            builder.build()
  681    751   
        }
  682    752   
    }
  683         -
    /// A builder for [`StreamingOperationOutput`](crate::output::StreamingOperationOutput).
  684         -
    #[derive(::std::default::Default, ::std::fmt::Debug)]
         753  +
    /// A builder for [`ComplexStructOperationOutput`](crate::output::ComplexStructOperationOutput).
         754  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
  685    755   
    pub struct Builder {
  686         -
        pub(crate) events: ::std::option::Option<
  687         -
            ::aws_smithy_legacy_http::event_stream::EventStreamSender<
  688         -
                crate::model::Events,
  689         -
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
         756  +
        pub(crate) structure: ::std::option::Option<crate::model::SimpleStruct>,
         757  +
        pub(crate) empty_structure: ::std::option::Option<crate::model::EmptyStruct>,
         758  +
        pub(crate) list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
         759  +
        pub(crate) map:
         760  +
            ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
         761  +
        pub(crate) union: ::std::option::Option<crate::model::SimpleUnion>,
         762  +
        pub(crate) unit_union: ::std::option::Option<crate::model::UnitUnion>,
         763  +
        pub(crate) structure_list:
         764  +
            ::std::option::Option<::std::vec::Vec<crate::model::SimpleStruct>>,
         765  +
        pub(crate) complex_list: ::std::option::Option<
         766  +
            ::std::vec::Vec<
         767  +
                ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
         768  +
            >,
  690    769   
        >,
         770  +
        pub(crate) complex_map: ::std::option::Option<
         771  +
            ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
  691    772   
        >,
         773  +
        pub(crate) complex_union:
         774  +
            ::std::option::Option<::std::boxed::Box<crate::model::ComplexUnion>>,
  692    775   
    }
  693    776   
    impl Builder {
  694    777   
        #[allow(missing_docs)] // documentation missing in model
  695         -
        pub fn events(
         778  +
        pub fn structure(
  696    779   
            mut self,
  697         -
            input: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
  698         -
                crate::model::Events,
  699         -
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
         780  +
            input: ::std::option::Option<crate::model::SimpleStruct>,
         781  +
        ) -> Self {
         782  +
            self.structure = input;
         783  +
            self
         784  +
        }
         785  +
        #[allow(missing_docs)] // documentation missing in model
         786  +
        pub fn empty_structure(
         787  +
            mut self,
         788  +
            input: ::std::option::Option<crate::model::EmptyStruct>,
         789  +
        ) -> Self {
         790  +
            self.empty_structure = input;
         791  +
            self
         792  +
        }
         793  +
        #[allow(missing_docs)] // documentation missing in model
         794  +
        pub fn list(
         795  +
            mut self,
         796  +
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
         797  +
        ) -> Self {
         798  +
            self.list = input;
         799  +
            self
         800  +
        }
         801  +
        #[allow(missing_docs)] // documentation missing in model
         802  +
        pub fn map(
         803  +
            mut self,
         804  +
            input: ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
         805  +
        ) -> Self {
         806  +
            self.map = input;
         807  +
            self
         808  +
        }
         809  +
        #[allow(missing_docs)] // documentation missing in model
         810  +
        pub fn union(mut self, input: ::std::option::Option<crate::model::SimpleUnion>) -> Self {
         811  +
            self.union = input;
         812  +
            self
         813  +
        }
         814  +
        #[allow(missing_docs)] // documentation missing in model
         815  +
        pub fn unit_union(mut self, input: ::std::option::Option<crate::model::UnitUnion>) -> Self {
         816  +
            self.unit_union = input;
         817  +
            self
         818  +
        }
         819  +
        #[allow(missing_docs)] // documentation missing in model
         820  +
        pub fn structure_list(
         821  +
            mut self,
         822  +
            input: ::std::option::Option<::std::vec::Vec<crate::model::SimpleStruct>>,
         823  +
        ) -> Self {
         824  +
            self.structure_list = input;
         825  +
            self
         826  +
        }
         827  +
        #[allow(missing_docs)] // documentation missing in model
         828  +
        pub fn complex_list(
         829  +
            mut self,
         830  +
            input: ::std::vec::Vec<
         831  +
                ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
  700    832   
            >,
  701    833   
        ) -> Self {
  702         -
            self.events = Some(input);
         834  +
            self.complex_list = Some(input);
  703    835   
            self
  704    836   
        }
  705         -
        /// Consumes the builder and constructs a [`StreamingOperationOutput`](crate::output::StreamingOperationOutput).
         837  +
        #[allow(missing_docs)] // documentation missing in model
         838  +
        pub fn complex_map(
         839  +
            mut self,
         840  +
            input: ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
         841  +
        ) -> Self {
         842  +
            self.complex_map = Some(input);
         843  +
            self
         844  +
        }
         845  +
        #[allow(missing_docs)] // documentation missing in model
         846  +
        pub fn complex_union(
         847  +
            mut self,
         848  +
            input: ::std::boxed::Box<crate::model::ComplexUnion>,
         849  +
        ) -> Self {
         850  +
            self.complex_union = Some(input);
         851  +
            self
         852  +
        }
         853  +
        /// Consumes the builder and constructs a [`ComplexStructOperationOutput`](crate::output::ComplexStructOperationOutput).
  706    854   
        ///
  707         -
        /// The builder fails to construct a [`StreamingOperationOutput`](crate::output::StreamingOperationOutput) if a [`ConstraintViolation`] occurs.
         855  +
        /// The builder fails to construct a [`ComplexStructOperationOutput`](crate::output::ComplexStructOperationOutput) if a [`ConstraintViolation`] occurs.
  708    856   
        ///
  709         -
        pub fn build(self) -> Result<crate::output::StreamingOperationOutput, ConstraintViolation> {
         857  +
        /// If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
         858  +
        pub fn build(
         859  +
            self,
         860  +
        ) -> Result<crate::output::ComplexStructOperationOutput, ConstraintViolation> {
  710    861   
            self.build_enforcing_all_constraints()
  711    862   
        }
  712    863   
        fn build_enforcing_all_constraints(
  713    864   
            self,
  714         -
        ) -> Result<crate::output::StreamingOperationOutput, ConstraintViolation> {
  715         -
            Ok(crate::output::StreamingOperationOutput {
  716         -
                events: self.events.ok_or(ConstraintViolation::MissingEvents)?,
         865  +
        ) -> Result<crate::output::ComplexStructOperationOutput, ConstraintViolation> {
         866  +
            Ok(crate::output::ComplexStructOperationOutput {
         867  +
                structure: self.structure,
         868  +
                empty_structure: self.empty_structure,
         869  +
                list: self.list,
         870  +
                map: self.map,
         871  +
                union: self.union,
         872  +
                unit_union: self.unit_union,
         873  +
                structure_list: self.structure_list,
         874  +
                complex_list: self
         875  +
                    .complex_list
         876  +
                    .ok_or(ConstraintViolation::MissingComplexList)?,
         877  +
                complex_map: self
         878  +
                    .complex_map
         879  +
                    .ok_or(ConstraintViolation::MissingComplexMap)?,
         880  +
                complex_union: self
         881  +
                    .complex_union
         882  +
                    .ok_or(ConstraintViolation::MissingComplexUnion)?,
  717    883   
            })
  718    884   
        }
  719    885   
    }
  720    886   
}
  721         -
/// See [`RecursiveUnionOperationOutput`](crate::output::RecursiveUnionOperationOutput).
  722         -
pub mod recursive_union_operation_output {
         887  +
/// See [`EmptyStructOperationOutput`](crate::output::EmptyStructOperationOutput).
         888  +
pub mod empty_struct_operation_output {
  723    889   
  724         -
    impl ::std::convert::From<Builder> for crate::output::RecursiveUnionOperationOutput {
         890  +
    impl ::std::convert::From<Builder> for crate::output::EmptyStructOperationOutput {
  725    891   
        fn from(builder: Builder) -> Self {
  726    892   
            builder.build()
  727    893   
        }
  728    894   
    }
  729         -
    /// A builder for [`RecursiveUnionOperationOutput`](crate::output::RecursiveUnionOperationOutput).
         895  +
    /// A builder for [`EmptyStructOperationOutput`](crate::output::EmptyStructOperationOutput).
  730    896   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
  731         -
    pub struct Builder {
  732         -
        pub(crate) nested:
  733         -
            ::std::option::Option<crate::model::RecursiveOperationInputOutputNested1>,
  734         -
    }
         897  +
    pub struct Builder {}
  735    898   
    impl Builder {
  736         -
        #[allow(missing_docs)] // documentation missing in model
  737         -
        pub fn nested(
  738         -
            mut self,
  739         -
            input: ::std::option::Option<crate::model::RecursiveOperationInputOutputNested1>,
  740         -
        ) -> Self {
  741         -
            self.nested = input;
  742         -
            self
  743         -
        }
  744         -
        /// Consumes the builder and constructs a [`RecursiveUnionOperationOutput`](crate::output::RecursiveUnionOperationOutput).
  745         -
        pub fn build(self) -> crate::output::RecursiveUnionOperationOutput {
         899  +
        /// Consumes the builder and constructs a [`EmptyStructOperationOutput`](crate::output::EmptyStructOperationOutput).
         900  +
        pub fn build(self) -> crate::output::EmptyStructOperationOutput {
  746    901   
            self.build_enforcing_all_constraints()
  747    902   
        }
  748         -
        fn build_enforcing_all_constraints(self) -> crate::output::RecursiveUnionOperationOutput {
  749         -
            crate::output::RecursiveUnionOperationOutput {
  750         -
                nested: self.nested,
  751         -
            }
         903  +
        fn build_enforcing_all_constraints(self) -> crate::output::EmptyStructOperationOutput {
         904  +
            crate::output::EmptyStructOperationOutput {}
  752    905   
        }
  753    906   
    }
  754    907   
}
  755    908   
/// See [`SingleMemberStructOperationOutput`](crate::output::SingleMemberStructOperationOutput).
  756    909   
pub mod single_member_struct_operation_output {
  757    910   
  758    911   
    impl ::std::convert::From<Builder> for crate::output::SingleMemberStructOperationOutput {
  759    912   
        fn from(builder: Builder) -> Self {
  760    913   
            builder.build()
  761    914   
        }
  762    915   
    }
  763    916   
    /// A builder for [`SingleMemberStructOperationOutput`](crate::output::SingleMemberStructOperationOutput).
  764    917   
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
  765    918   
    pub struct Builder {
  766    919   
        pub(crate) message: ::std::option::Option<::std::string::String>,
  767    920   
    }
  768    921   
    impl Builder {
  769    922   
        #[allow(missing_docs)] // documentation missing in model
  770    923   
        pub fn message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
  771    924   
            self.message = input;
  772    925   
            self
  773    926   
        }
  774    927   
        /// Consumes the builder and constructs a [`SingleMemberStructOperationOutput`](crate::output::SingleMemberStructOperationOutput).
  775    928   
        pub fn build(self) -> crate::output::SingleMemberStructOperationOutput {
  776    929   
            self.build_enforcing_all_constraints()
  777    930   
        }
  778    931   
        fn build_enforcing_all_constraints(
  779    932   
            self,
  780    933   
        ) -> crate::output::SingleMemberStructOperationOutput {
  781    934   
            crate::output::SingleMemberStructOperationOutput {
  782    935   
                message: self.message,
  783    936   
            }
  784    937   
        }
  785    938   
    }
  786    939   
}
  787         -
/// See [`EmptyStructOperationOutput`](crate::output::EmptyStructOperationOutput).
  788         -
pub mod empty_struct_operation_output {
         940  +
/// See [`RecursiveUnionOperationOutput`](crate::output::RecursiveUnionOperationOutput).
         941  +
pub mod recursive_union_operation_output {
  789    942   
  790         -
    impl ::std::convert::From<Builder> for crate::output::EmptyStructOperationOutput {
         943  +
    impl ::std::convert::From<Builder> for crate::output::RecursiveUnionOperationOutput {
  791    944   
        fn from(builder: Builder) -> Self {
  792    945   
            builder.build()
  793    946   
        }
  794    947   
    }
  795         -
    /// A builder for [`EmptyStructOperationOutput`](crate::output::EmptyStructOperationOutput).
  796         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
  797         -
    pub struct Builder {}
         948  +
    /// A builder for [`RecursiveUnionOperationOutput`](crate::output::RecursiveUnionOperationOutput).
         949  +
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
         950  +
    pub struct Builder {
         951  +
        pub(crate) nested:
         952  +
            ::std::option::Option<crate::model::RecursiveOperationInputOutputNested1>,
         953  +
    }
         954  +
    impl Builder {
         955  +
        #[allow(missing_docs)] // documentation missing in model
         956  +
        pub fn nested(
         957  +
            mut self,
         958  +
            input: ::std::option::Option<crate::model::RecursiveOperationInputOutputNested1>,
         959  +
        ) -> Self {
         960  +
            self.nested = input;
         961  +
            self
         962  +
        }
         963  +
        /// Consumes the builder and constructs a [`RecursiveUnionOperationOutput`](crate::output::RecursiveUnionOperationOutput).
         964  +
        pub fn build(self) -> crate::output::RecursiveUnionOperationOutput {
         965  +
            self.build_enforcing_all_constraints()
         966  +
        }
         967  +
        fn build_enforcing_all_constraints(self) -> crate::output::RecursiveUnionOperationOutput {
         968  +
            crate::output::RecursiveUnionOperationOutput {
         969  +
                nested: self.nested,
         970  +
            }
         971  +
        }
         972  +
    }
         973  +
}
         974  +
/// See [`StreamingOperationOutput`](crate::output::StreamingOperationOutput).
         975  +
pub mod streaming_operation_output {
         976  +
         977  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
         978  +
    /// Holds one variant for each of the ways the builder can fail.
         979  +
    #[non_exhaustive]
         980  +
    #[allow(clippy::enum_variant_names)]
         981  +
    pub enum ConstraintViolation {
         982  +
        /// `events` was not provided but it is required when building `StreamingOperationOutput`.
         983  +
        MissingEvents,
         984  +
    }
         985  +
    impl ::std::fmt::Display for ConstraintViolation {
         986  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
         987  +
            match self {
         988  +
                ConstraintViolation::MissingEvents => write!(f, "`events` was not provided but it is required when building `StreamingOperationOutput`"),
         989  +
            }
         990  +
        }
         991  +
    }
         992  +
    impl ::std::error::Error for ConstraintViolation {}
         993  +
    impl ::std::convert::TryFrom<Builder> for crate::output::StreamingOperationOutput {
         994  +
        type Error = ConstraintViolation;
         995  +
         996  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
         997  +
            builder.build()
         998  +
        }
         999  +
    }
        1000  +
    /// A builder for [`StreamingOperationOutput`](crate::output::StreamingOperationOutput).
        1001  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
        1002  +
    pub struct Builder {
        1003  +
        pub(crate) events: ::std::option::Option<
        1004  +
            ::aws_smithy_legacy_http::event_stream::EventStreamSender<
        1005  +
                crate::model::Events,
        1006  +
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
        1007  +
            >,
        1008  +
        >,
        1009  +
    }
  798   1010   
    impl Builder {
  799         -
        /// Consumes the builder and constructs a [`EmptyStructOperationOutput`](crate::output::EmptyStructOperationOutput).
  800         -
        pub fn build(self) -> crate::output::EmptyStructOperationOutput {
        1011  +
        #[allow(missing_docs)] // documentation missing in model
        1012  +
        pub fn events(
        1013  +
            mut self,
        1014  +
            input: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
        1015  +
                crate::model::Events,
        1016  +
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
        1017  +
            >,
        1018  +
        ) -> Self {
        1019  +
            self.events = Some(input);
        1020  +
            self
        1021  +
        }
        1022  +
        /// Consumes the builder and constructs a [`StreamingOperationOutput`](crate::output::StreamingOperationOutput).
        1023  +
        ///
        1024  +
        /// The builder fails to construct a [`StreamingOperationOutput`](crate::output::StreamingOperationOutput) if a [`ConstraintViolation`] occurs.
        1025  +
        ///
        1026  +
        pub fn build(self) -> Result<crate::output::StreamingOperationOutput, ConstraintViolation> {
  801   1027   
            self.build_enforcing_all_constraints()
  802   1028   
        }
  803         -
        fn build_enforcing_all_constraints(self) -> crate::output::EmptyStructOperationOutput {
  804         -
            crate::output::EmptyStructOperationOutput {}
        1029  +
        fn build_enforcing_all_constraints(
        1030  +
            self,
        1031  +
        ) -> Result<crate::output::StreamingOperationOutput, ConstraintViolation> {
        1032  +
            Ok(crate::output::StreamingOperationOutput {
        1033  +
                events: self.events.ok_or(ConstraintViolation::MissingEvents)?,
        1034  +
            })
  805   1035   
        }
  806   1036   
    }
  807   1037   
}
  808         -
/// See [`ComplexStructOperationOutput`](crate::output::ComplexStructOperationOutput).
  809         -
pub mod complex_struct_operation_output {
        1038  +
/// See [`StreamingOperationWithInitialDataOutput`](crate::output::StreamingOperationWithInitialDataOutput).
        1039  +
pub mod streaming_operation_with_initial_data_output {
  810   1040   
  811   1041   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
  812   1042   
    /// Holds one variant for each of the ways the builder can fail.
  813   1043   
    #[non_exhaustive]
  814   1044   
    #[allow(clippy::enum_variant_names)]
  815   1045   
    pub enum ConstraintViolation {
  816         -
        /// `complex_list` was not provided but it is required when building `ComplexStructOperationOutput`.
  817         -
        MissingComplexList,
  818         -
        /// `complex_map` was not provided but it is required when building `ComplexStructOperationOutput`.
  819         -
        MissingComplexMap,
  820         -
        /// `complex_union` was not provided but it is required when building `ComplexStructOperationOutput`.
  821         -
        MissingComplexUnion,
        1046  +
        /// `events` was not provided but it is required when building `StreamingOperationWithInitialDataOutput`.
        1047  +
        MissingEvents,
  822   1048   
    }
  823   1049   
    impl ::std::fmt::Display for ConstraintViolation {
  824   1050   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
  825   1051   
            match self {
  826         -
                ConstraintViolation::MissingComplexList => write!(f, "`complex_list` was not provided but it is required when building `ComplexStructOperationOutput`"),
  827         -
                ConstraintViolation::MissingComplexMap => write!(f, "`complex_map` was not provided but it is required when building `ComplexStructOperationOutput`"),
  828         -
                ConstraintViolation::MissingComplexUnion => write!(f, "`complex_union` was not provided but it is required when building `ComplexStructOperationOutput`"),
        1052  +
                ConstraintViolation::MissingEvents => write!(f, "`events` was not provided but it is required when building `StreamingOperationWithInitialDataOutput`"),
  829   1053   
            }
  830   1054   
        }
  831   1055   
    }
  832   1056   
    impl ::std::error::Error for ConstraintViolation {}
  833         -
    impl ::std::convert::TryFrom<Builder> for crate::output::ComplexStructOperationOutput {
        1057  +
    impl ::std::convert::TryFrom<Builder> for crate::output::StreamingOperationWithInitialDataOutput {
  834   1058   
        type Error = ConstraintViolation;
  835   1059   
  836   1060   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
  837   1061   
            builder.build()
  838   1062   
        }
  839   1063   
    }
  840         -
    /// A builder for [`ComplexStructOperationOutput`](crate::output::ComplexStructOperationOutput).
  841         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        1064  +
    /// A builder for [`StreamingOperationWithInitialDataOutput`](crate::output::StreamingOperationWithInitialDataOutput).
        1065  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
  842   1066   
    pub struct Builder {
  843         -
        pub(crate) structure: ::std::option::Option<crate::model::SimpleStruct>,
  844         -
        pub(crate) empty_structure: ::std::option::Option<crate::model::EmptyStruct>,
  845         -
        pub(crate) list: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
  846         -
        pub(crate) map:
  847         -
            ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
  848         -
        pub(crate) union: ::std::option::Option<crate::model::SimpleUnion>,
  849         -
        pub(crate) unit_union: ::std::option::Option<crate::model::UnitUnion>,
  850         -
        pub(crate) structure_list:
  851         -
            ::std::option::Option<::std::vec::Vec<crate::model::SimpleStruct>>,
  852         -
        pub(crate) complex_list: ::std::option::Option<
  853         -
            ::std::vec::Vec<
  854         -
                ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
  855         -
            >,
        1067  +
        pub(crate) events: ::std::option::Option<
        1068  +
            ::aws_smithy_legacy_http::event_stream::EventStreamSender<
        1069  +
                crate::model::Events,
        1070  +
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
  856   1071   
            >,
  857         -
        pub(crate) complex_map: ::std::option::Option<
  858         -
            ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
  859   1072   
        >,
  860         -
        pub(crate) complex_union:
  861         -
            ::std::option::Option<::std::boxed::Box<crate::model::ComplexUnion>>,
  862   1073   
    }
  863   1074   
    impl Builder {
  864   1075   
        #[allow(missing_docs)] // documentation missing in model
  865         -
        pub fn structure(
  866         -
            mut self,
  867         -
            input: ::std::option::Option<crate::model::SimpleStruct>,
  868         -
        ) -> Self {
  869         -
            self.structure = input;
  870         -
            self
  871         -
        }
  872         -
        #[allow(missing_docs)] // documentation missing in model
  873         -
        pub fn empty_structure(
  874         -
            mut self,
  875         -
            input: ::std::option::Option<crate::model::EmptyStruct>,
  876         -
        ) -> Self {
  877         -
            self.empty_structure = input;
  878         -
            self
  879         -
        }
  880         -
        #[allow(missing_docs)] // documentation missing in model
  881         -
        pub fn list(
  882         -
            mut self,
  883         -
            input: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
  884         -
        ) -> Self {
  885         -
            self.list = input;
  886         -
            self
  887         -
        }
  888         -
        #[allow(missing_docs)] // documentation missing in model
  889         -
        pub fn map(
  890         -
            mut self,
  891         -
            input: ::std::option::Option<::std::collections::HashMap<::std::string::String, i32>>,
  892         -
        ) -> Self {
  893         -
            self.map = input;
  894         -
            self
  895         -
        }
  896         -
        #[allow(missing_docs)] // documentation missing in model
  897         -
        pub fn union(mut self, input: ::std::option::Option<crate::model::SimpleUnion>) -> Self {
  898         -
            self.union = input;
  899         -
            self
  900         -
        }
  901         -
        #[allow(missing_docs)] // documentation missing in model
  902         -
        pub fn unit_union(mut self, input: ::std::option::Option<crate::model::UnitUnion>) -> Self {
  903         -
            self.unit_union = input;
  904         -
            self
  905         -
        }
  906         -
        #[allow(missing_docs)] // documentation missing in model
  907         -
        pub fn structure_list(
  908         -
            mut self,
  909         -
            input: ::std::option::Option<::std::vec::Vec<crate::model::SimpleStruct>>,
  910         -
        ) -> Self {
  911         -
            self.structure_list = input;
  912         -
            self
  913         -
        }
  914         -
        #[allow(missing_docs)] // documentation missing in model
  915         -
        pub fn complex_list(
        1076  +
        pub fn events(
  916   1077   
            mut self,
  917         -
            input: ::std::vec::Vec<
  918         -
                ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
        1078  +
            input: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
        1079  +
                crate::model::Events,
        1080  +
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
  919   1081   
            >,
  920   1082   
        ) -> Self {
  921         -
            self.complex_list = Some(input);
  922         -
            self
  923         -
        }
  924         -
        #[allow(missing_docs)] // documentation missing in model
  925         -
        pub fn complex_map(
  926         -
            mut self,
  927         -
            input: ::std::collections::HashMap<::std::string::String, crate::model::ComplexUnion>,
  928         -
        ) -> Self {
  929         -
            self.complex_map = Some(input);
  930         -
            self
  931         -
        }
  932         -
        #[allow(missing_docs)] // documentation missing in model
  933         -
        pub fn complex_union(
  934         -
            mut self,
  935         -
            input: ::std::boxed::Box<crate::model::ComplexUnion>,
  936         -
        ) -> Self {
  937         -
            self.complex_union = Some(input);
        1083  +
            self.events = Some(input);
  938   1084   
            self
  939   1085   
        }
  940         -
        /// Consumes the builder and constructs a [`ComplexStructOperationOutput`](crate::output::ComplexStructOperationOutput).
        1086  +
        /// Consumes the builder and constructs a [`StreamingOperationWithInitialDataOutput`](crate::output::StreamingOperationWithInitialDataOutput).
  941   1087   
        ///
  942         -
        /// The builder fails to construct a [`ComplexStructOperationOutput`](crate::output::ComplexStructOperationOutput) if a [`ConstraintViolation`] occurs.
        1088  +
        /// The builder fails to construct a [`StreamingOperationWithInitialDataOutput`](crate::output::StreamingOperationWithInitialDataOutput) if a [`ConstraintViolation`] occurs.
  943   1089   
        ///
  944         -
        /// If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
  945   1090   
        pub fn build(
  946   1091   
            self,
  947         -
        ) -> Result<crate::output::ComplexStructOperationOutput, ConstraintViolation> {
        1092  +
        ) -> Result<crate::output::StreamingOperationWithInitialDataOutput, ConstraintViolation>
        1093  +
        {
  948   1094   
            self.build_enforcing_all_constraints()
  949   1095   
        }
  950   1096   
        fn build_enforcing_all_constraints(
  951   1097   
            self,
  952         -
        ) -> Result<crate::output::ComplexStructOperationOutput, ConstraintViolation> {
  953         -
            Ok(crate::output::ComplexStructOperationOutput {
  954         -
                structure: self.structure,
  955         -
                empty_structure: self.empty_structure,
  956         -
                list: self.list,
  957         -
                map: self.map,
  958         -
                union: self.union,
  959         -
                unit_union: self.unit_union,
  960         -
                structure_list: self.structure_list,
  961         -
                complex_list: self
  962         -
                    .complex_list
  963         -
                    .ok_or(ConstraintViolation::MissingComplexList)?,
  964         -
                complex_map: self
  965         -
                    .complex_map
  966         -
                    .ok_or(ConstraintViolation::MissingComplexMap)?,
  967         -
                complex_union: self
  968         -
                    .complex_union
  969         -
                    .ok_or(ConstraintViolation::MissingComplexUnion)?,
        1098  +
        ) -> Result<crate::output::StreamingOperationWithInitialDataOutput, ConstraintViolation>
        1099  +
        {
        1100  +
            Ok(crate::output::StreamingOperationWithInitialDataOutput {
        1101  +
                events: self.events.ok_or(ConstraintViolation::MissingEvents)?,
  970   1102   
            })
  971   1103   
        }
  972   1104   
    }
  973   1105   
}
  974         -
/// See [`ErrorSerializationOperationOutput`](crate::output::ErrorSerializationOperationOutput).
  975         -
pub mod error_serialization_operation_output {
        1106  +
/// See [`StreamingOperationWithInitialResponseOutput`](crate::output::StreamingOperationWithInitialResponseOutput).
        1107  +
pub mod streaming_operation_with_initial_response_output {
  976   1108   
  977         -
    impl ::std::convert::From<Builder> for crate::output::ErrorSerializationOperationOutput {
  978         -
        fn from(builder: Builder) -> Self {
        1109  +
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
        1110  +
    /// Holds one variant for each of the ways the builder can fail.
        1111  +
    #[non_exhaustive]
        1112  +
    #[allow(clippy::enum_variant_names)]
        1113  +
    pub enum ConstraintViolation {
        1114  +
        /// `response_data` was not provided but it is required when building `StreamingOperationWithInitialResponseOutput`.
        1115  +
        MissingResponseData,
        1116  +
        /// `events` was not provided but it is required when building `StreamingOperationWithInitialResponseOutput`.
        1117  +
        MissingEvents,
        1118  +
    }
        1119  +
    impl ::std::fmt::Display for ConstraintViolation {
        1120  +
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        1121  +
            match self {
        1122  +
                ConstraintViolation::MissingResponseData => write!(f, "`response_data` was not provided but it is required when building `StreamingOperationWithInitialResponseOutput`"),
        1123  +
                ConstraintViolation::MissingEvents => write!(f, "`events` was not provided but it is required when building `StreamingOperationWithInitialResponseOutput`"),
        1124  +
            }
        1125  +
        }
        1126  +
    }
        1127  +
    impl ::std::error::Error for ConstraintViolation {}
        1128  +
    impl ::std::convert::TryFrom<Builder>
        1129  +
        for crate::output::StreamingOperationWithInitialResponseOutput
        1130  +
    {
        1131  +
        type Error = ConstraintViolation;
        1132  +
        1133  +
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
  979   1134   
            builder.build()
  980   1135   
        }
  981   1136   
    }
  982         -
    /// A builder for [`ErrorSerializationOperationOutput`](crate::output::ErrorSerializationOperationOutput).
  983         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        1137  +
    /// A builder for [`StreamingOperationWithInitialResponseOutput`](crate::output::StreamingOperationWithInitialResponseOutput).
        1138  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
  984   1139   
    pub struct Builder {
  985         -
        pub(crate) error_shape: ::std::option::Option<crate::error::ValidationException>,
        1140  +
        pub(crate) response_data: ::std::option::Option<::std::string::String>,
        1141  +
        pub(crate) events: ::std::option::Option<
        1142  +
            ::aws_smithy_legacy_http::event_stream::EventStreamSender<
        1143  +
                crate::model::Events,
        1144  +
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
        1145  +
            >,
        1146  +
        >,
  986   1147   
    }
  987   1148   
    impl Builder {
  988         -
        /// A standard error for input validation failures. This should be thrown by services when a member of the input structure falls outside of the modeled or documented constraints.
  989         -
        pub fn error_shape(
        1149  +
        #[allow(missing_docs)] // documentation missing in model
        1150  +
        pub fn response_data(mut self, input: ::std::string::String) -> Self {
        1151  +
            self.response_data = Some(input);
        1152  +
            self
        1153  +
        }
        1154  +
        #[allow(missing_docs)] // documentation missing in model
        1155  +
        pub fn events(
  990   1156   
            mut self,
  991         -
            input: ::std::option::Option<crate::error::ValidationException>,
        1157  +
            input: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
        1158  +
                crate::model::Events,
        1159  +
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
        1160  +
            >,
  992   1161   
        ) -> Self {
  993         -
            self.error_shape = input;
        1162  +
            self.events = Some(input);
  994   1163   
            self
  995   1164   
        }
  996         -
        /// Consumes the builder and constructs a [`ErrorSerializationOperationOutput`](crate::output::ErrorSerializationOperationOutput).
  997         -
        pub fn build(self) -> crate::output::ErrorSerializationOperationOutput {
        1165  +
        /// Consumes the builder and constructs a [`StreamingOperationWithInitialResponseOutput`](crate::output::StreamingOperationWithInitialResponseOutput).
        1166  +
        ///
        1167  +
        /// The builder fails to construct a [`StreamingOperationWithInitialResponseOutput`](crate::output::StreamingOperationWithInitialResponseOutput) if a [`ConstraintViolation`] occurs.
        1168  +
        ///
        1169  +
        /// If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
        1170  +
        pub fn build(
        1171  +
            self,
        1172  +
        ) -> Result<crate::output::StreamingOperationWithInitialResponseOutput, ConstraintViolation>
        1173  +
        {
  998   1174   
            self.build_enforcing_all_constraints()
  999   1175   
        }
 1000   1176   
        fn build_enforcing_all_constraints(
 1001   1177   
            self,
 1002         -
        ) -> crate::output::ErrorSerializationOperationOutput {
 1003         -
            crate::output::ErrorSerializationOperationOutput {
 1004         -
                error_shape: self.error_shape,
 1005         -
            }
        1178  +
        ) -> Result<crate::output::StreamingOperationWithInitialResponseOutput, ConstraintViolation>
        1179  +
        {
        1180  +
            Ok(crate::output::StreamingOperationWithInitialResponseOutput {
        1181  +
                response_data: self
        1182  +
                    .response_data
        1183  +
                    .ok_or(ConstraintViolation::MissingResponseData)?,
        1184  +
                events: self.events.ok_or(ConstraintViolation::MissingEvents)?,
        1185  +
            })
 1006   1186   
        }
 1007   1187   
    }
 1008   1188   
}
 1009         -
/// See [`SimpleStructOperationOutput`](crate::output::SimpleStructOperationOutput).
 1010         -
pub mod simple_struct_operation_output {
        1189  +
/// See [`StreamingOperationWithOptionalDataOutput`](crate::output::StreamingOperationWithOptionalDataOutput).
        1190  +
pub mod streaming_operation_with_optional_data_output {
 1011   1191   
 1012   1192   
    #[derive(::std::cmp::PartialEq, ::std::fmt::Debug)]
 1013   1193   
    /// Holds one variant for each of the ways the builder can fail.
 1014   1194   
    #[non_exhaustive]
 1015   1195   
    #[allow(clippy::enum_variant_names)]
 1016   1196   
    pub enum ConstraintViolation {
 1017         -
        /// `required_blob` was not provided but it is required when building `SimpleStructOperationOutput`.
 1018         -
        MissingRequiredBlob,
 1019         -
        /// `required_boolean` was not provided but it is required when building `SimpleStructOperationOutput`.
 1020         -
        MissingRequiredBoolean,
 1021         -
        /// `required_string` was not provided but it is required when building `SimpleStructOperationOutput`.
 1022         -
        MissingRequiredString,
 1023         -
        /// `required_byte` was not provided but it is required when building `SimpleStructOperationOutput`.
 1024         -
        MissingRequiredByte,
 1025         -
        /// `required_short` was not provided but it is required when building `SimpleStructOperationOutput`.
 1026         -
        MissingRequiredShort,
 1027         -
        /// `required_integer` was not provided but it is required when building `SimpleStructOperationOutput`.
 1028         -
        MissingRequiredInteger,
 1029         -
        /// `required_long` was not provided but it is required when building `SimpleStructOperationOutput`.
 1030         -
        MissingRequiredLong,
 1031         -
        /// `required_float` was not provided but it is required when building `SimpleStructOperationOutput`.
 1032         -
        MissingRequiredFloat,
 1033         -
        /// `required_double` was not provided but it is required when building `SimpleStructOperationOutput`.
 1034         -
        MissingRequiredDouble,
 1035         -
        /// `required_timestamp` was not provided but it is required when building `SimpleStructOperationOutput`.
 1036         -
        MissingRequiredTimestamp,
 1037         -
        /// `required_enum` was not provided but it is required when building `SimpleStructOperationOutput`.
 1038         -
        MissingRequiredEnum,
        1197  +
        /// `events` was not provided but it is required when building `StreamingOperationWithOptionalDataOutput`.
        1198  +
        MissingEvents,
 1039   1199   
    }
 1040   1200   
    impl ::std::fmt::Display for ConstraintViolation {
 1041   1201   
        fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
 1042   1202   
            match self {
 1043         -
                ConstraintViolation::MissingRequiredBlob => write!(f, "`required_blob` was not provided but it is required when building `SimpleStructOperationOutput`"),
 1044         -
                ConstraintViolation::MissingRequiredBoolean => write!(f, "`required_boolean` was not provided but it is required when building `SimpleStructOperationOutput`"),
 1045         -
                ConstraintViolation::MissingRequiredString => write!(f, "`required_string` was not provided but it is required when building `SimpleStructOperationOutput`"),
 1046         -
                ConstraintViolation::MissingRequiredByte => write!(f, "`required_byte` was not provided but it is required when building `SimpleStructOperationOutput`"),
 1047         -
                ConstraintViolation::MissingRequiredShort => write!(f, "`required_short` was not provided but it is required when building `SimpleStructOperationOutput`"),
 1048         -
                ConstraintViolation::MissingRequiredInteger => write!(f, "`required_integer` was not provided but it is required when building `SimpleStructOperationOutput`"),
 1049         -
                ConstraintViolation::MissingRequiredLong => write!(f, "`required_long` was not provided but it is required when building `SimpleStructOperationOutput`"),
 1050         -
                ConstraintViolation::MissingRequiredFloat => write!(f, "`required_float` was not provided but it is required when building `SimpleStructOperationOutput`"),
 1051         -
                ConstraintViolation::MissingRequiredDouble => write!(f, "`required_double` was not provided but it is required when building `SimpleStructOperationOutput`"),
 1052         -
                ConstraintViolation::MissingRequiredTimestamp => write!(f, "`required_timestamp` was not provided but it is required when building `SimpleStructOperationOutput`"),
 1053         -
                ConstraintViolation::MissingRequiredEnum => write!(f, "`required_enum` was not provided but it is required when building `SimpleStructOperationOutput`"),
        1203  +
                ConstraintViolation::MissingEvents => write!(f, "`events` was not provided but it is required when building `StreamingOperationWithOptionalDataOutput`"),
 1054   1204   
            }
 1055   1205   
        }
 1056   1206   
    }
 1057   1207   
    impl ::std::error::Error for ConstraintViolation {}
 1058         -
    impl ::std::convert::TryFrom<Builder> for crate::output::SimpleStructOperationOutput {
        1208  +
    impl ::std::convert::TryFrom<Builder> for crate::output::StreamingOperationWithOptionalDataOutput {
 1059   1209   
        type Error = ConstraintViolation;
 1060   1210   
 1061   1211   
        fn try_from(builder: Builder) -> ::std::result::Result<Self, Self::Error> {
 1062   1212   
            builder.build()
 1063   1213   
        }
 1064   1214   
    }
 1065         -
    /// A builder for [`SimpleStructOperationOutput`](crate::output::SimpleStructOperationOutput).
 1066         -
    #[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
        1215  +
    /// A builder for [`StreamingOperationWithOptionalDataOutput`](crate::output::StreamingOperationWithOptionalDataOutput).
        1216  +
    #[derive(::std::default::Default, ::std::fmt::Debug)]
 1067   1217   
    pub struct Builder {
 1068         -
        pub(crate) blob: ::std::option::Option<::aws_smithy_types::Blob>,
 1069         -
        pub(crate) boolean: ::std::option::Option<bool>,
 1070         -
        pub(crate) string: ::std::option::Option<::std::string::String>,
 1071         -
        pub(crate) byte: ::std::option::Option<i8>,
 1072         -
        pub(crate) short: ::std::option::Option<i16>,
 1073         -
        pub(crate) integer: ::std::option::Option<i32>,
 1074         -
        pub(crate) long: ::std::option::Option<i64>,
 1075         -
        pub(crate) float: ::std::option::Option<f32>,
 1076         -
        pub(crate) double: ::std::option::Option<f64>,
 1077         -
        pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
 1078         -
        pub(crate) r#enum: ::std::option::Option<crate::model::Suit>,
 1079         -
        pub(crate) required_blob: ::std::option::Option<::aws_smithy_types::Blob>,
 1080         -
        pub(crate) required_boolean: ::std::option::Option<bool>,
 1081         -
        pub(crate) required_string: ::std::option::Option<::std::string::String>,
 1082         -
        pub(crate) required_byte: ::std::option::Option<i8>,
 1083         -
        pub(crate) required_short: ::std::option::Option<i16>,
 1084         -
        pub(crate) required_integer: ::std::option::Option<i32>,
 1085         -
        pub(crate) required_long: ::std::option::Option<i64>,
 1086         -
        pub(crate) required_float: ::std::option::Option<f32>,
 1087         -
        pub(crate) required_double: ::std::option::Option<f64>,
 1088         -
        pub(crate) required_timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
 1089         -
        pub(crate) required_enum: ::std::option::Option<crate::model::Suit>,
        1218  +
        pub(crate) optional_response_data: ::std::option::Option<::std::string::String>,
        1219  +
        pub(crate) events: ::std::option::Option<
        1220  +
            ::aws_smithy_legacy_http::event_stream::EventStreamSender<
        1221  +
                crate::model::Events,
        1222  +
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
        1223  +
            >,
        1224  +
        >,
 1090   1225   
    }
 1091   1226   
    impl Builder {
 1092   1227   
        #[allow(missing_docs)] // documentation missing in model
 1093         -
        pub fn blob(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
 1094         -
            self.blob = input;
 1095         -
            self
 1096         -
        }
 1097         -
        #[allow(missing_docs)] // documentation missing in model
 1098         -
        pub fn boolean(mut self, input: ::std::option::Option<bool>) -> Self {
 1099         -
            self.boolean = input;
 1100         -
            self
 1101         -
        }
 1102         -
        #[allow(missing_docs)] // documentation missing in model
 1103         -
        pub fn string(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
 1104         -
            self.string = input;
 1105         -
            self
 1106         -
        }
 1107         -
        #[allow(missing_docs)] // documentation missing in model
 1108         -
        pub fn byte(mut self, input: ::std::option::Option<i8>) -> Self {
 1109         -
            self.byte = input;
 1110         -
            self
 1111         -
        }
 1112         -
        #[allow(missing_docs)] // documentation missing in model
 1113         -
        pub fn short(mut self, input: ::std::option::Option<i16>) -> Self {
 1114         -
            self.short = input;
 1115         -
            self
 1116         -
        }
 1117         -
        #[allow(missing_docs)] // documentation missing in model
 1118         -
        pub fn integer(mut self, input: ::std::option::Option<i32>) -> Self {
 1119         -
            self.integer = input;
 1120         -
            self
 1121         -
        }
 1122         -
        #[allow(missing_docs)] // documentation missing in model
 1123         -
        pub fn long(mut self, input: ::std::option::Option<i64>) -> Self {
 1124         -
            self.long = input;
 1125         -
            self
 1126         -
        }
 1127         -
        #[allow(missing_docs)] // documentation missing in model
 1128         -
        pub fn float(mut self, input: ::std::option::Option<f32>) -> Self {
 1129         -
            self.float = input;
 1130         -
            self
 1131         -
        }
 1132         -
        #[allow(missing_docs)] // documentation missing in model
 1133         -
        pub fn double(mut self, input: ::std::option::Option<f64>) -> Self {
 1134         -
            self.double = input;
 1135         -
            self
 1136         -
        }
 1137         -
        #[allow(missing_docs)] // documentation missing in model
 1138         -
        pub fn timestamp(
        1228  +
        pub fn optional_response_data(
 1139   1229   
            mut self,
 1140         -
            input: ::std::option::Option<::aws_smithy_types::DateTime>,
        1230  +
            input: ::std::option::Option<::std::string::String>,
 1141   1231   
        ) -> Self {
 1142         -
            self.timestamp = input;
 1143         -
            self
 1144         -
        }
 1145         -
        #[allow(missing_docs)] // documentation missing in model
 1146         -
        pub fn r#enum(mut self, input: ::std::option::Option<crate::model::Suit>) -> Self {
 1147         -
            self.r#enum = input;
 1148         -
            self
 1149         -
        }
 1150         -
        #[allow(missing_docs)] // documentation missing in model
 1151         -
        pub fn required_blob(mut self, input: ::aws_smithy_types::Blob) -> Self {
 1152         -
            self.required_blob = Some(input);
 1153         -
            self
 1154         -
        }
 1155         -
        #[allow(missing_docs)] // documentation missing in model
 1156         -
        pub fn required_boolean(mut self, input: bool) -> Self {
 1157         -
            self.required_boolean = Some(input);
 1158         -
            self
 1159         -
        }
 1160         -
        #[allow(missing_docs)] // documentation missing in model
 1161         -
        pub fn required_string(mut self, input: ::std::string::String) -> Self {
 1162         -
            self.required_string = Some(input);
 1163         -
            self
 1164         -
        }
 1165         -
        #[allow(missing_docs)] // documentation missing in model
 1166         -
        pub fn required_byte(mut self, input: i8) -> Self {
 1167         -
            self.required_byte = Some(input);
 1168         -
            self
 1169         -
        }
 1170         -
        #[allow(missing_docs)] // documentation missing in model
 1171         -
        pub fn required_short(mut self, input: i16) -> Self {
 1172         -
            self.required_short = Some(input);
 1173         -
            self
 1174         -
        }
 1175         -
        #[allow(missing_docs)] // documentation missing in model
 1176         -
        pub fn required_integer(mut self, input: i32) -> Self {
 1177         -
            self.required_integer = Some(input);
 1178         -
            self
 1179         -
        }
 1180         -
        #[allow(missing_docs)] // documentation missing in model
 1181         -
        pub fn required_long(mut self, input: i64) -> Self {
 1182         -
            self.required_long = Some(input);
 1183         -
            self
 1184         -
        }
 1185         -
        #[allow(missing_docs)] // documentation missing in model
 1186         -
        pub fn required_float(mut self, input: f32) -> Self {
 1187         -
            self.required_float = Some(input);
 1188         -
            self
 1189         -
        }
 1190         -
        #[allow(missing_docs)] // documentation missing in model
 1191         -
        pub fn required_double(mut self, input: f64) -> Self {
 1192         -
            self.required_double = Some(input);
 1193         -
            self
 1194         -
        }
 1195         -
        #[allow(missing_docs)] // documentation missing in model
 1196         -
        pub fn required_timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
 1197         -
            self.required_timestamp = Some(input);
        1232  +
            self.optional_response_data = input;
 1198   1233   
            self
 1199   1234   
        }
 1200   1235   
        #[allow(missing_docs)] // documentation missing in model
 1201         -
        pub fn required_enum(mut self, input: crate::model::Suit) -> Self {
 1202         -
            self.required_enum = Some(input);
        1236  +
        pub fn events(
        1237  +
            mut self,
        1238  +
            input: ::aws_smithy_legacy_http::event_stream::EventStreamSender<
        1239  +
                crate::model::Events,
        1240  +
                ::aws_smithy_legacy_http::event_stream::MessageStreamError,
        1241  +
            >,
        1242  +
        ) -> Self {
        1243  +
            self.events = Some(input);
 1203   1244   
            self
 1204   1245   
        }
 1205         -
        /// Consumes the builder and constructs a [`SimpleStructOperationOutput`](crate::output::SimpleStructOperationOutput).
        1246  +
        /// Consumes the builder and constructs a [`StreamingOperationWithOptionalDataOutput`](crate::output::StreamingOperationWithOptionalDataOutput).
 1206   1247   
        ///
 1207         -
        /// The builder fails to construct a [`SimpleStructOperationOutput`](crate::output::SimpleStructOperationOutput) if a [`ConstraintViolation`] occurs.
        1248  +
        /// The builder fails to construct a [`StreamingOperationWithOptionalDataOutput`](crate::output::StreamingOperationWithOptionalDataOutput) if a [`ConstraintViolation`] occurs.
 1208   1249   
        ///
 1209         -
        /// If the builder fails, it will return the _first_ encountered [`ConstraintViolation`].
 1210   1250   
        pub fn build(
 1211   1251   
            self,
 1212         -
        ) -> Result<crate::output::SimpleStructOperationOutput, ConstraintViolation> {
        1252  +
        ) -> Result<crate::output::StreamingOperationWithOptionalDataOutput, ConstraintViolation>
        1253  +
        {
 1213   1254   
            self.build_enforcing_all_constraints()
 1214   1255   
        }
 1215   1256   
        fn build_enforcing_all_constraints(
 1216   1257   
            self,
 1217         -
        ) -> Result<crate::output::SimpleStructOperationOutput, ConstraintViolation> {
 1218         -
            Ok(crate::output::SimpleStructOperationOutput {
 1219         -
                blob: self.blob,
 1220         -
                boolean: self.boolean,
 1221         -
                string: self.string,
 1222         -
                byte: self.byte,
 1223         -
                short: self.short,
 1224         -
                integer: self.integer,
 1225         -
                long: self.long,
 1226         -
                float: self.float,
 1227         -
                double: self.double,
 1228         -
                timestamp: self.timestamp,
 1229         -
                r#enum: self.r#enum,
 1230         -
                required_blob: self
 1231         -
                    .required_blob
 1232         -
                    .ok_or(ConstraintViolation::MissingRequiredBlob)?,
 1233         -
                required_boolean: self
 1234         -
                    .required_boolean
 1235         -
                    .ok_or(ConstraintViolation::MissingRequiredBoolean)?,
 1236         -
                required_string: self
 1237         -
                    .required_string
 1238         -
                    .ok_or(ConstraintViolation::MissingRequiredString)?,
 1239         -
                required_byte: self
 1240         -
                    .required_byte
 1241         -
                    .ok_or(ConstraintViolation::MissingRequiredByte)?,
 1242         -
                required_short: self
 1243         -
                    .required_short
 1244         -
                    .ok_or(ConstraintViolation::MissingRequiredShort)?,
 1245         -
                required_integer: self
 1246         -
                    .required_integer
 1247         -
                    .ok_or(ConstraintViolation::MissingRequiredInteger)?,
 1248         -
                required_long: self
 1249         -
                    .required_long
 1250         -
                    .ok_or(ConstraintViolation::MissingRequiredLong)?,
 1251         -
                required_float: self
 1252         -
                    .required_float
 1253         -
                    .ok_or(ConstraintViolation::MissingRequiredFloat)?,
 1254         -
                required_double: self
 1255         -
                    .required_double
 1256         -
                    .ok_or(ConstraintViolation::MissingRequiredDouble)?,
 1257         -
                required_timestamp: self
 1258         -
                    .required_timestamp
 1259         -
                    .ok_or(ConstraintViolation::MissingRequiredTimestamp)?,
 1260         -
                required_enum: self
 1261         -
                    .required_enum
 1262         -
                    .ok_or(ConstraintViolation::MissingRequiredEnum)?,
        1258  +
        ) -> Result<crate::output::StreamingOperationWithOptionalDataOutput, ConstraintViolation>
        1259  +
        {
        1260  +
            Ok(crate::output::StreamingOperationWithOptionalDataOutput {
        1261  +
                optional_response_data: self.optional_response_data,
        1262  +
                events: self.events.ok_or(ConstraintViolation::MissingEvents)?,
 1263   1263   
            })
 1264   1264   
        }
 1265   1265   
    }
 1266   1266   
}