Client Test

Client Test

rev. dfb5149b65b7bcc09edd15b8e071ad43b5ac5943 (ignoring whitespace)

Files changed:

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_header_date_time/builders.rs

@@ -1,1 +124,142 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* CodegenDelegator.kt:255 */
    2      3   
pub use crate::operation::malformed_timestamp_header_date_time::_malformed_timestamp_header_date_time_output::MalformedTimestampHeaderDateTimeOutputBuilder;
    3      4   
           5  +
/* CodegenDelegator.kt:255 */
    4      6   
pub use crate::operation::malformed_timestamp_header_date_time::_malformed_timestamp_header_date_time_input::MalformedTimestampHeaderDateTimeInputBuilder;
    5      7   
           8  +
/* FluentBuilderGenerator.kt:408 */
    6      9   
impl crate::operation::malformed_timestamp_header_date_time::builders::MalformedTimestampHeaderDateTimeInputBuilder {
    7     10   
    /// Sends a request with this input using the given client.
    8     11   
    pub async fn send_with(
    9     12   
        self,
   10     13   
        client: &crate::Client,
   11     14   
    ) -> ::std::result::Result<
   12     15   
        crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTimeOutput,
   13     16   
        ::aws_smithy_runtime_api::client::result::SdkError<
   14     17   
            crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTimeError,
   15     18   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   16     19   
        >,
   17     20   
    > {
   18     21   
        let mut fluent_builder = client.malformed_timestamp_header_date_time();
   19     22   
        fluent_builder.inner = self;
   20     23   
        fluent_builder.send().await
   21     24   
    }
   22     25   
}
   23         -
/// Fluent builder constructing a request to `MalformedTimestampHeaderDateTime`.
          26  +
/// /* FluentBuilderGenerator.kt:129 */Fluent builder constructing a request to `MalformedTimestampHeaderDateTime`.
   24     27   
///
          28  +
/* RustType.kt:516 */
   25     29   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
          30  +
/* FluentBuilderGenerator.kt:270 */
   26     31   
pub struct MalformedTimestampHeaderDateTimeFluentBuilder {
   27     32   
    handle: ::std::sync::Arc<crate::client::Handle>,
   28     33   
    inner: crate::operation::malformed_timestamp_header_date_time::builders::MalformedTimestampHeaderDateTimeInputBuilder,
   29     34   
    config_override: ::std::option::Option<crate::config::Builder>,
   30     35   
}
          36  +
/* FluentBuilderGenerator.kt:381 */
   31     37   
impl
   32     38   
    crate::client::customize::internal::CustomizableSend<
   33     39   
        crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTimeOutput,
   34     40   
        crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTimeError,
   35     41   
    > for MalformedTimestampHeaderDateTimeFluentBuilder
   36     42   
{
   37     43   
    fn send(
   38     44   
        self,
   39     45   
        config_override: crate::config::Builder,
   40     46   
    ) -> crate::client::customize::internal::BoxFuture<
   41     47   
        crate::client::customize::internal::SendResult<
   42     48   
            crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTimeOutput,
   43     49   
            crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTimeError,
   44     50   
        >,
   45     51   
    > {
   46     52   
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
   47     53   
    }
   48     54   
}
          55  +
/* FluentBuilderGenerator.kt:282 */
   49     56   
impl MalformedTimestampHeaderDateTimeFluentBuilder {
          57  +
    /* FluentBuilderGenerator.kt:288 */
   50     58   
    /// Creates a new `MalformedTimestampHeaderDateTimeFluentBuilder`.
   51     59   
    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
   52     60   
        Self {
   53     61   
            handle,
   54     62   
            inner: ::std::default::Default::default(),
   55     63   
            config_override: ::std::option::Option::None,
   56     64   
        }
   57     65   
    }
          66  +
    /* FluentBuilderGenerator.kt:301 */
   58     67   
    /// Access the MalformedTimestampHeaderDateTime as a reference.
   59     68   
    pub fn as_input(&self) -> &crate::operation::malformed_timestamp_header_date_time::builders::MalformedTimestampHeaderDateTimeInputBuilder {
   60     69   
        &self.inner
   61     70   
    }
          71  +
    /* FluentBuilderGenerator.kt:145 */
   62     72   
    /// Sends the request and returns the response.
   63     73   
    ///
   64     74   
    /// If an error occurs, an `SdkError` will be returned with additional details that
   65     75   
    /// can be matched against.
   66     76   
    ///
   67     77   
    /// By default, any retryable failures will be retried twice. Retry behavior
   68     78   
    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
   69     79   
    /// set when configuring the client.
   70     80   
    pub async fn send(
   71     81   
        self,
   72     82   
    ) -> ::std::result::Result<
   73     83   
        crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTimeOutput,
   74     84   
        ::aws_smithy_runtime_api::client::result::SdkError<
   75     85   
            crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTimeError,
   76     86   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   77     87   
        >,
   78     88   
    > {
   79     89   
        let input = self
   80     90   
            .inner
   81     91   
            .build()
   82     92   
            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
   83     93   
        let runtime_plugins = crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTime::operation_runtime_plugins(
   84     94   
            self.handle.runtime_plugins.clone(),
   85     95   
            &self.handle.conf,
   86     96   
            self.config_override,
   87     97   
        );
   88     98   
        crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTime::orchestrate(&runtime_plugins, input).await
   89     99   
    }
   90    100   
   91    101   
    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
   92    102   
    pub fn customize(
   93    103   
        self,
   94    104   
    ) -> crate::client::customize::CustomizableOperation<
   95    105   
        crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTimeOutput,
   96    106   
        crate::operation::malformed_timestamp_header_date_time::MalformedTimestampHeaderDateTimeError,
   97    107   
        Self,
   98    108   
    > {
   99    109   
        crate::client::customize::CustomizableOperation::new(self)
  100    110   
    }
         111  +
    /* FluentBuilderGenerator.kt:315 */
  101    112   
    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
  102    113   
        self.set_config_override(::std::option::Option::Some(config_override.into()));
  103    114   
        self
  104    115   
    }
  105    116   
  106    117   
    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
  107    118   
        self.config_override = config_override;
  108    119   
        self
  109    120   
    }
         121  +
    /* FluentBuilderGenerator.kt:498 */
  110    122   
    #[allow(missing_docs)] // documentation missing in model
         123  +
                           /* FluentBuilderGenerator.kt:500 */
  111    124   
    pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
  112    125   
        self.inner = self.inner.timestamp(input);
  113    126   
        self
  114    127   
    }
         128  +
    /* FluentBuilderGenerator.kt:498 */
  115    129   
    #[allow(missing_docs)] // documentation missing in model
         130  +
                           /* FluentBuilderGenerator.kt:500 */
  116    131   
    pub fn set_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
  117    132   
        self.inner = self.inner.set_timestamp(input);
  118    133   
        self
  119    134   
    }
         135  +
    /* FluentBuilderGenerator.kt:518 */
  120    136   
    #[allow(missing_docs)] // documentation missing in model
         137  +
                           /* FluentBuilderGenerator.kt:520 */
  121    138   
    pub fn get_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
  122    139   
        self.inner.get_timestamp()
  123    140   
    }
         141  +
    /* FluentBuilderGenerator.kt:282 */
  124    142   
}

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_header_default.rs

@@ -1,1 +40,49 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* OperationGenerator.kt:77 */
    2      3   
/// Orchestration and serialization glue logic for `MalformedTimestampHeaderDefault`.
           4  +
/* RustType.kt:516 */
    3      5   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
           6  +
/* RustType.kt:516 */
    4      7   
#[non_exhaustive]
           8  +
/* OperationGenerator.kt:84 */
    5      9   
pub struct MalformedTimestampHeaderDefault;
          10  +
/* OperationGenerator.kt:85 */
    6     11   
impl MalformedTimestampHeaderDefault {
    7         -
    /// Creates a new `MalformedTimestampHeaderDefault`
          12  +
    /// /* OperationGenerator.kt:86 */Creates a new `MalformedTimestampHeaderDefault`
          13  +
    /* OperationGenerator.kt:87 */
    8     14   
    pub fn new() -> Self {
          15  +
        /* OperationGenerator.kt:88 */
    9     16   
        Self
          17  +
        /* OperationGenerator.kt:87 */
   10     18   
    }
          19  +
    /* OperationGenerator.kt:138 */
   11     20   
    pub(crate) async fn orchestrate(
   12     21   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     22   
        input: crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput,
   14     23   
    ) -> ::std::result::Result<
   15     24   
        crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput,
   16     25   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     26   
            crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultError,
   18     27   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     28   
        >,
   20     29   
    > {
@@ -63,72 +335,406 @@
   83     92   
                runtime_plugins = runtime_plugins.with_operation_plugin(plugin);
   84     93   
            }
   85     94   
            runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new(
   86     95   
                config_override,
   87     96   
                client_config.config.clone(),
   88     97   
                &client_config.runtime_components,
   89     98   
            ));
   90     99   
        }
   91    100   
        runtime_plugins
   92    101   
    }
         102  +
    /* OperationGenerator.kt:85 */
   93    103   
}
         104  +
/* OperationRuntimePluginGenerator.kt:55 */
   94    105   
impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for MalformedTimestampHeaderDefault {
   95    106   
    fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> {
   96    107   
        let mut cfg = ::aws_smithy_types::config_bag::Layer::new("MalformedTimestampHeaderDefault");
   97    108   
   98    109   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new(
   99    110   
            MalformedTimestampHeaderDefaultRequestSerializer,
  100    111   
        ));
  101    112   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new(
  102    113   
            MalformedTimestampHeaderDefaultResponseDeserializer,
  103    114   
        ));
  104    115   
  105    116   
        cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new(
  106    117   
            ::aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolverParams::new(),
  107    118   
        ));
  108    119   
  109    120   
        cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new(
  110    121   
            "MalformedTimestampHeaderDefault",
  111    122   
            "Rest Json Protocol",
  112    123   
        ));
  113    124   
  114    125   
        ::std::option::Option::Some(cfg.freeze())
  115    126   
    }
  116    127   
  117    128   
    fn runtime_components(
  118    129   
        &self,
  119    130   
        _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
  120    131   
    ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> {
  121    132   
        #[allow(unused_mut)]
  122    133   
        let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("MalformedTimestampHeaderDefault")
  123    134   
            .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default())
  124    135   
            .with_interceptor(MalformedTimestampHeaderDefaultEndpointParamsInterceptor)
  125    136   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::<
  126    137   
                crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultError,
  127    138   
            >::new())
  128    139   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::<
  129    140   
                crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultError,
  130    141   
            >::new());
  131    142   
  132    143   
        ::std::borrow::Cow::Owned(rcb)
  133    144   
    }
  134    145   
}
  135    146   
         147  +
/* ResponseDeserializerGenerator.kt:64 */
  136    148   
#[derive(Debug)]
  137    149   
struct MalformedTimestampHeaderDefaultResponseDeserializer;
  138    150   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for MalformedTimestampHeaderDefaultResponseDeserializer {
  139    151   
    fn deserialize_nonstreaming(
  140    152   
        &self,
  141    153   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
  142    154   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  143    155   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  144    156   
        let headers = response.headers();
  145    157   
        let body = response.body().bytes().expect("body loaded");
  146    158   
        #[allow(unused_mut)]
  147    159   
        let mut force_error = false;
  148    160   
  149    161   
        let parse_result = if !success && status != 200 || force_error {
  150    162   
            crate::protocol_serde::shape_malformed_timestamp_header_default::de_malformed_timestamp_header_default_http_error(status, headers, body)
  151    163   
        } else {
  152    164   
            crate::protocol_serde::shape_malformed_timestamp_header_default::de_malformed_timestamp_header_default_http_response(
  153    165   
                status, headers, body,
  154    166   
            )
  155    167   
        };
  156    168   
        crate::protocol_serde::type_erase_result(parse_result)
  157    169   
    }
  158    170   
}
         171  +
/* RequestSerializerGenerator.kt:67 */
  159    172   
#[derive(Debug)]
  160    173   
struct MalformedTimestampHeaderDefaultRequestSerializer;
  161    174   
impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for MalformedTimestampHeaderDefaultRequestSerializer {
  162    175   
    #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
  163    176   
    fn serialize_input(
  164    177   
        &self,
  165    178   
        input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
  166    179   
        _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  167    180   
    ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
  168    181   
        let input = input
  169    182   
            .downcast::<crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput>()
  170    183   
            .expect("correct type");
  171    184   
        let _header_serialization_settings = _cfg
  172    185   
            .load::<crate::serialization_settings::HeaderSerializationSettings>()
  173    186   
            .cloned()
  174    187   
            .unwrap_or_default();
  175    188   
        let mut request_builder = {
  176    189   
            fn uri_base(
  177    190   
                _input: &crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput,
  178    191   
                output: &mut ::std::string::String,
  179    192   
            ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
  180    193   
                use ::std::fmt::Write as _;
  181    194   
                ::std::write!(output, "/MalformedTimestampHeaderDefault").expect("formatting should succeed");
  182    195   
                ::std::result::Result::Ok(())
  183    196   
            }
  184    197   
            #[allow(clippy::unnecessary_wraps)]
  185    198   
            fn update_http_builder(
  186    199   
                input: &crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput,
  187    200   
                builder: ::http::request::Builder,
  188    201   
            ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
  189    202   
                let mut uri = ::std::string::String::new();
  190    203   
                uri_base(input, &mut uri)?;
  191    204   
                let builder =
  192    205   
                    crate::protocol_serde::shape_malformed_timestamp_header_default::ser_malformed_timestamp_header_default_headers(input, builder)?;
  193    206   
                ::std::result::Result::Ok(builder.method("POST").uri(uri))
  194    207   
            }
  195    208   
            let mut builder = update_http_builder(&input, ::http::request::Builder::new())?;
  196    209   
            builder
  197    210   
        };
  198    211   
        let body = ::aws_smithy_types::body::SdkBody::from("");
  199    212   
  200    213   
        ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
  201    214   
    }
  202    215   
}
         216  +
/* EndpointParamsInterceptorGenerator.kt:86 */
  203    217   
#[derive(Debug)]
  204    218   
struct MalformedTimestampHeaderDefaultEndpointParamsInterceptor;
  205    219   
  206    220   
impl ::aws_smithy_runtime_api::client::interceptors::Intercept for MalformedTimestampHeaderDefaultEndpointParamsInterceptor {
  207    221   
    fn name(&self) -> &'static str {
  208    222   
        "MalformedTimestampHeaderDefaultEndpointParamsInterceptor"
  209    223   
    }
  210    224   
  211    225   
    fn read_before_execution(
  212    226   
        &self,
  213    227   
        context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef<
  214    228   
            '_,
  215    229   
            ::aws_smithy_runtime_api::client::interceptors::context::Input,
  216    230   
            ::aws_smithy_runtime_api::client::interceptors::context::Output,
  217    231   
            ::aws_smithy_runtime_api::client::interceptors::context::Error,
  218    232   
        >,
  219    233   
        cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  220    234   
    ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
  221    235   
        let _input = context
  222    236   
            .input()
  223    237   
            .downcast_ref::<MalformedTimestampHeaderDefaultInput>()
  224    238   
            .ok_or("failed to downcast to MalformedTimestampHeaderDefaultInput")?;
  225    239   
  226    240   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  227    241   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  228    242   
        })?;
  229    243   
        cfg.interceptor_state()
  230    244   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  231    245   
        ::std::result::Result::Ok(())
  232    246   
    }
  233    247   
}
  234    248   
  235    249   
// The get_* functions below are generated from JMESPath expressions in the
  236    250   
// operationContextParams trait. They target the operation's input shape.
  237    251   
         252  +
/* OperationErrorGenerator.kt:79 */
  238    253   
/// Error type for the `MalformedTimestampHeaderDefaultError` operation.
         254  +
/* RustType.kt:516 */
  239    255   
#[non_exhaustive]
         256  +
/* RustType.kt:516 */
  240    257   
#[derive(::std::fmt::Debug)]
  241         -
pub enum MalformedTimestampHeaderDefaultError {
         258  +
pub /* OperationErrorGenerator.kt:81 */ enum MalformedTimestampHeaderDefaultError {
         259  +
    /* OperationErrorGenerator.kt:88 */
  242    260   
    /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
  243    261   
    #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
  244    262   
    variable wildcard pattern and check `.code()`:
  245    263   
     \
  246    264   
    &nbsp;&nbsp;&nbsp;`err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
  247    265   
     \
  248    266   
    See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-MalformedTimestampHeaderDefaultError) for what information is available for the error.")]
  249    267   
    Unhandled(crate::error::sealed_unhandled::Unhandled),
         268  +
    /* OperationErrorGenerator.kt:81 */
  250    269   
}
         270  +
/* OperationErrorGenerator.kt:218 */
  251    271   
impl MalformedTimestampHeaderDefaultError {
         272  +
    /* OperationErrorGenerator.kt:219 */
  252    273   
    /// Creates the `MalformedTimestampHeaderDefaultError::Unhandled` variant from any error type.
  253    274   
    pub fn unhandled(
  254    275   
        err: impl ::std::convert::Into<::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>>,
  255    276   
    ) -> Self {
  256    277   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  257    278   
            source: err.into(),
  258    279   
            meta: ::std::default::Default::default(),
  259    280   
        })
  260    281   
    }
  261    282   
  262    283   
    /// Creates the `MalformedTimestampHeaderDefaultError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata).
  263    284   
    pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self {
  264    285   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  265    286   
            source: err.clone().into(),
  266    287   
            meta: err,
  267    288   
        })
  268    289   
    }
  269         -
    ///
         290  +
    /// /* OperationErrorGenerator.kt:236 */
  270    291   
    /// Returns error metadata, which includes the error code, message,
  271    292   
    /// request ID, and potentially additional information.
  272    293   
    ///
         294  +
    /* OperationErrorGenerator.kt:242 */
  273    295   
    pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         296  +
        /* OperationErrorGenerator.kt:243 */
  274    297   
        match self {
  275         -
            Self::Unhandled(e) => &e.meta,
         298  +
            /* OperationErrorGenerator.kt:251 */ Self::Unhandled(e) => &e.meta,
         299  +
            /* OperationErrorGenerator.kt:243 */
  276    300   
        }
         301  +
        /* OperationErrorGenerator.kt:242 */
  277    302   
    }
         303  +
    /* OperationErrorGenerator.kt:218 */
  278    304   
}
         305  +
/* OperationErrorGenerator.kt:269 */
  279    306   
impl ::std::error::Error for MalformedTimestampHeaderDefaultError {
         307  +
    /* OperationErrorGenerator.kt:270 */
  280    308   
    fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> {
         309  +
        /* OperationErrorGenerator.kt:318 */
  281    310   
        match self {
  282         -
            Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source),
         311  +
            /* OperationErrorGenerator.kt:326 */
         312  +
            Self::Unhandled(_inner) => {
         313  +
                /* OperationErrorGenerator.kt:279 */
         314  +
                ::std::option::Option::Some(&*_inner.source)
         315  +
                /* OperationErrorGenerator.kt:326 */
         316  +
            } /* OperationErrorGenerator.kt:318 */
  283    317   
        }
         318  +
        /* OperationErrorGenerator.kt:270 */
  284    319   
    }
         320  +
    /* OperationErrorGenerator.kt:269 */
  285    321   
}
         322  +
/* OperationErrorGenerator.kt:133 */
  286    323   
impl ::std::fmt::Display for MalformedTimestampHeaderDefaultError {
         324  +
    /* OperationErrorGenerator.kt:134 */
  287    325   
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         326  +
        /* OperationErrorGenerator.kt:318 */
  288    327   
        match self {
         328  +
            /* OperationErrorGenerator.kt:326 */
  289    329   
            Self::Unhandled(_inner) => {
         330  +
                /* OperationErrorGenerator.kt:139 */
  290    331   
                if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
  291    332   
                    write!(f, "unhandled error ({code})")
  292    333   
                } else {
  293    334   
                    f.write_str("unhandled error")
  294    335   
                }
         336  +
                /* OperationErrorGenerator.kt:326 */
         337  +
            } /* OperationErrorGenerator.kt:318 */
  295    338   
        }
         339  +
        /* OperationErrorGenerator.kt:134 */
  296    340   
    }
  297         -
    }
         341  +
    /* OperationErrorGenerator.kt:133 */
  298    342   
}
         343  +
/* OperationErrorGenerator.kt:182 */
  299    344   
impl ::aws_smithy_types::retry::ProvideErrorKind for MalformedTimestampHeaderDefaultError {
         345  +
    /* OperationErrorGenerator.kt:186 */
  300    346   
    fn code(&self) -> ::std::option::Option<&str> {
         347  +
        /* OperationErrorGenerator.kt:187 */
  301    348   
        ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self)
         349  +
        /* OperationErrorGenerator.kt:186 */
  302    350   
    }
         351  +
    /* OperationErrorGenerator.kt:190 */
  303    352   
    fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> {
         353  +
        /* OperationErrorGenerator.kt:197 */
  304    354   
        ::std::option::Option::None
         355  +
        /* OperationErrorGenerator.kt:190 */
  305    356   
    }
         357  +
    /* OperationErrorGenerator.kt:182 */
  306    358   
}
         359  +
/* OperationErrorGenerator.kt:163 */
  307    360   
impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for MalformedTimestampHeaderDefaultError {
         361  +
    /* OperationErrorGenerator.kt:164 */
  308    362   
    fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         363  +
        /* OperationErrorGenerator.kt:318 */
  309    364   
        match self {
  310         -
            Self::Unhandled(_inner) => &_inner.meta,
         365  +
            /* OperationErrorGenerator.kt:326 */
         366  +
            Self::Unhandled(_inner) => {
         367  +
                /* OperationErrorGenerator.kt:168 */
         368  +
                &_inner.meta
         369  +
                /* OperationErrorGenerator.kt:326 */
         370  +
            } /* OperationErrorGenerator.kt:318 */
  311    371   
        }
         372  +
        /* OperationErrorGenerator.kt:164 */
  312    373   
    }
         374  +
    /* OperationErrorGenerator.kt:163 */
  313    375   
}
         376  +
/* OperationErrorGenerator.kt:109 */
  314    377   
impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for MalformedTimestampHeaderDefaultError {
         378  +
    /* OperationErrorGenerator.kt:110 */
  315    379   
    fn create_unhandled_error(
  316    380   
        source: ::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>,
  317    381   
        meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
  318    382   
    ) -> Self {
         383  +
        /* OperationErrorGenerator.kt:121 */
  319    384   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  320    385   
            source,
  321    386   
            meta: meta.unwrap_or_default(),
  322    387   
        })
         388  +
        /* OperationErrorGenerator.kt:110 */
  323    389   
    }
         390  +
    /* OperationErrorGenerator.kt:109 */
  324    391   
}
  325    392   
         393  +
/* CodegenDelegator.kt:255 */
  326    394   
pub use crate::operation::malformed_timestamp_header_default::_malformed_timestamp_header_default_output::MalformedTimestampHeaderDefaultOutput;
  327    395   
         396  +
/* CodegenDelegator.kt:255 */
  328    397   
pub use crate::operation::malformed_timestamp_header_default::_malformed_timestamp_header_default_input::MalformedTimestampHeaderDefaultInput;
  329    398   
         399  +
/* RustModule.kt:172 */
  330    400   
mod _malformed_timestamp_header_default_input;
  331    401   
         402  +
/* RustModule.kt:172 */
  332    403   
mod _malformed_timestamp_header_default_output;
  333    404   
  334         -
/// Builders
         405  +
/// /* CodegenDelegator.kt:51 */Builders
  335    406   
pub mod builders;

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_header_default/_malformed_timestamp_header_default_input.rs

@@ -1,1 +55,97 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct MalformedTimestampHeaderDefaultInput {
           8  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampHeaderDefaultInput {
           9  +
    /* StructureGenerator.kt:231 */
    6     10   
    #[allow(missing_docs)] // documentation missing in model
    7     11   
    pub timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          12  +
    /* StructureGenerator.kt:201 */
    8     13   
}
          14  +
/* StructureGenerator.kt:135 */
    9     15   
impl MalformedTimestampHeaderDefaultInput {
          16  +
    /* StructureGenerator.kt:231 */
   10     17   
    #[allow(missing_docs)] // documentation missing in model
          18  +
                           /* StructureGenerator.kt:166 */
   11     19   
    pub fn timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
          20  +
        /* StructureGenerator.kt:170 */
   12     21   
        self.timestamp.as_ref()
          22  +
        /* StructureGenerator.kt:166 */
   13     23   
    }
          24  +
    /* StructureGenerator.kt:135 */
   14     25   
}
          26  +
/* ClientCodegenVisitor.kt:237 */
   15     27   
impl MalformedTimestampHeaderDefaultInput {
   16         -
    /// Creates a new builder-style object to manufacture [`MalformedTimestampHeaderDefaultInput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput).
          28  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`MalformedTimestampHeaderDefaultInput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput).
          29  +
    /* BuilderGenerator.kt:175 */
   17     30   
    pub fn builder() -> crate::operation::malformed_timestamp_header_default::builders::MalformedTimestampHeaderDefaultInputBuilder {
          31  +
        /* BuilderGenerator.kt:176 */
   18     32   
        crate::operation::malformed_timestamp_header_default::builders::MalformedTimestampHeaderDefaultInputBuilder::default()
          33  +
        /* BuilderGenerator.kt:175 */
   19     34   
    }
          35  +
    /* ClientCodegenVisitor.kt:237 */
   20     36   
}
   21     37   
   22         -
/// A builder for [`MalformedTimestampHeaderDefaultInput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput).
          38  +
/// /* BuilderGenerator.kt:342 */A builder for [`MalformedTimestampHeaderDefaultInput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput).
          39  +
/* RustType.kt:516 */
   23     40   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          41  +
/* RustType.kt:516 */
   24     42   
#[non_exhaustive]
          43  +
/* BuilderGenerator.kt:345 */
   25     44   
pub struct MalformedTimestampHeaderDefaultInputBuilder {
   26         -
    pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          45  +
    /* BuilderGenerator.kt:275 */ pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          46  +
    /* BuilderGenerator.kt:345 */
   27     47   
}
          48  +
/* BuilderGenerator.kt:355 */
   28     49   
impl MalformedTimestampHeaderDefaultInputBuilder {
          50  +
    /* BuilderGenerator.kt:286 */
   29     51   
    #[allow(missing_docs)] // documentation missing in model
   30         -
    /// This field is required.
          52  +
    /// /* BuilderGenerator.kt:288 */This field is required.
          53  +
    /* BuilderGenerator.kt:291 */
   31     54   
    pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
          55  +
        /* BuilderGenerator.kt:292 */
   32     56   
        self.timestamp = ::std::option::Option::Some(input);
          57  +
        /* BuilderGenerator.kt:293 */
   33     58   
        self
          59  +
        /* BuilderGenerator.kt:291 */
   34     60   
    }
          61  +
    /* BuilderGenerator.kt:312 */
   35     62   
    #[allow(missing_docs)] // documentation missing in model
          63  +
                           /* BuilderGenerator.kt:314 */
   36     64   
    pub fn set_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
          65  +
        /* BuilderGenerator.kt:315 */
   37     66   
        self.timestamp = input;
   38     67   
        self
          68  +
        /* BuilderGenerator.kt:314 */
   39     69   
    }
          70  +
    /* BuilderGenerator.kt:334 */
   40     71   
    #[allow(missing_docs)] // documentation missing in model
          72  +
                           /* BuilderGenerator.kt:336 */
   41     73   
    pub fn get_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
          74  +
        /* BuilderGenerator.kt:337 */
   42     75   
        &self.timestamp
          76  +
        /* BuilderGenerator.kt:336 */
   43     77   
    }
   44         -
    /// Consumes the builder and constructs a [`MalformedTimestampHeaderDefaultInput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput).
          78  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`MalformedTimestampHeaderDefaultInput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput).
          79  +
    /* BuilderGenerator.kt:253 */
   45     80   
    pub fn build(
   46     81   
        self,
   47     82   
    ) -> ::std::result::Result<
   48     83   
        crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput,
   49     84   
        ::aws_smithy_types::error::operation::BuildError,
   50     85   
    > {
          86  +
        /* BuilderGenerator.kt:254 */
   51     87   
        ::std::result::Result::Ok(
   52         -
            crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput { timestamp: self.timestamp },
          88  +
            /* BuilderGenerator.kt:477 */
          89  +
            crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultInput {
          90  +
                /* BuilderGenerator.kt:481 */ timestamp: self.timestamp,
          91  +
                /* BuilderGenerator.kt:477 */
          92  +
            }, /* BuilderGenerator.kt:254 */
   53     93   
        )
          94  +
        /* BuilderGenerator.kt:253 */
   54     95   
    }
          96  +
    /* BuilderGenerator.kt:355 */
   55     97   
}

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_header_default/_malformed_timestamp_header_default_output.rs

@@ -1,1 +22,39 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct MalformedTimestampHeaderDefaultOutput {}
           8  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampHeaderDefaultOutput {/* StructureGenerator.kt:201 */}
           9  +
/* ClientCodegenVisitor.kt:237 */
    6     10   
impl MalformedTimestampHeaderDefaultOutput {
    7         -
    /// Creates a new builder-style object to manufacture [`MalformedTimestampHeaderDefaultOutput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput).
          11  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`MalformedTimestampHeaderDefaultOutput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput).
          12  +
    /* BuilderGenerator.kt:175 */
    8     13   
    pub fn builder() -> crate::operation::malformed_timestamp_header_default::builders::MalformedTimestampHeaderDefaultOutputBuilder {
          14  +
        /* BuilderGenerator.kt:176 */
    9     15   
        crate::operation::malformed_timestamp_header_default::builders::MalformedTimestampHeaderDefaultOutputBuilder::default()
          16  +
        /* BuilderGenerator.kt:175 */
   10     17   
    }
          18  +
    /* ClientCodegenVisitor.kt:237 */
   11     19   
}
   12     20   
   13         -
/// A builder for [`MalformedTimestampHeaderDefaultOutput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput).
          21  +
/// /* BuilderGenerator.kt:342 */A builder for [`MalformedTimestampHeaderDefaultOutput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput).
          22  +
/* RustType.kt:516 */
   14     23   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          24  +
/* RustType.kt:516 */
   15     25   
#[non_exhaustive]
   16         -
pub struct MalformedTimestampHeaderDefaultOutputBuilder {}
          26  +
/* BuilderGenerator.kt:345 */
          27  +
pub struct MalformedTimestampHeaderDefaultOutputBuilder {/* BuilderGenerator.kt:345 */}
          28  +
/* BuilderGenerator.kt:355 */
   17     29   
impl MalformedTimestampHeaderDefaultOutputBuilder {
   18         -
    /// Consumes the builder and constructs a [`MalformedTimestampHeaderDefaultOutput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput).
          30  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`MalformedTimestampHeaderDefaultOutput`](crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput).
          31  +
    /* BuilderGenerator.kt:253 */
   19     32   
    pub fn build(self) -> crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput {
   20         -
        crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput {}
          33  +
        /* BuilderGenerator.kt:477 */
          34  +
        crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput {
          35  +
        /* BuilderGenerator.kt:477 */}
          36  +
        /* BuilderGenerator.kt:253 */
   21     37   
    }
          38  +
    /* BuilderGenerator.kt:355 */
   22     39   
}

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_header_default/builders.rs

@@ -1,1 +124,142 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* CodegenDelegator.kt:255 */
    2      3   
pub use crate::operation::malformed_timestamp_header_default::_malformed_timestamp_header_default_output::MalformedTimestampHeaderDefaultOutputBuilder;
    3      4   
           5  +
/* CodegenDelegator.kt:255 */
    4      6   
pub use crate::operation::malformed_timestamp_header_default::_malformed_timestamp_header_default_input::MalformedTimestampHeaderDefaultInputBuilder;
    5      7   
           8  +
/* FluentBuilderGenerator.kt:408 */
    6      9   
impl crate::operation::malformed_timestamp_header_default::builders::MalformedTimestampHeaderDefaultInputBuilder {
    7     10   
    /// Sends a request with this input using the given client.
    8     11   
    pub async fn send_with(
    9     12   
        self,
   10     13   
        client: &crate::Client,
   11     14   
    ) -> ::std::result::Result<
   12     15   
        crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput,
   13     16   
        ::aws_smithy_runtime_api::client::result::SdkError<
   14     17   
            crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultError,
   15     18   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   16     19   
        >,
   17     20   
    > {
   18     21   
        let mut fluent_builder = client.malformed_timestamp_header_default();
   19     22   
        fluent_builder.inner = self;
   20     23   
        fluent_builder.send().await
   21     24   
    }
   22     25   
}
   23         -
/// Fluent builder constructing a request to `MalformedTimestampHeaderDefault`.
          26  +
/// /* FluentBuilderGenerator.kt:129 */Fluent builder constructing a request to `MalformedTimestampHeaderDefault`.
   24     27   
///
          28  +
/* RustType.kt:516 */
   25     29   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
          30  +
/* FluentBuilderGenerator.kt:270 */
   26     31   
pub struct MalformedTimestampHeaderDefaultFluentBuilder {
   27     32   
    handle: ::std::sync::Arc<crate::client::Handle>,
   28     33   
    inner: crate::operation::malformed_timestamp_header_default::builders::MalformedTimestampHeaderDefaultInputBuilder,
   29     34   
    config_override: ::std::option::Option<crate::config::Builder>,
   30     35   
}
          36  +
/* FluentBuilderGenerator.kt:381 */
   31     37   
impl
   32     38   
    crate::client::customize::internal::CustomizableSend<
   33     39   
        crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput,
   34     40   
        crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultError,
   35     41   
    > for MalformedTimestampHeaderDefaultFluentBuilder
   36     42   
{
   37     43   
    fn send(
   38     44   
        self,
   39     45   
        config_override: crate::config::Builder,
   40     46   
    ) -> crate::client::customize::internal::BoxFuture<
   41     47   
        crate::client::customize::internal::SendResult<
   42     48   
            crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput,
   43     49   
            crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultError,
   44     50   
        >,
   45     51   
    > {
   46     52   
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
   47     53   
    }
   48     54   
}
          55  +
/* FluentBuilderGenerator.kt:282 */
   49     56   
impl MalformedTimestampHeaderDefaultFluentBuilder {
          57  +
    /* FluentBuilderGenerator.kt:288 */
   50     58   
    /// Creates a new `MalformedTimestampHeaderDefaultFluentBuilder`.
   51     59   
    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
   52     60   
        Self {
   53     61   
            handle,
   54     62   
            inner: ::std::default::Default::default(),
   55     63   
            config_override: ::std::option::Option::None,
   56     64   
        }
   57     65   
    }
          66  +
    /* FluentBuilderGenerator.kt:301 */
   58     67   
    /// Access the MalformedTimestampHeaderDefault as a reference.
   59     68   
    pub fn as_input(&self) -> &crate::operation::malformed_timestamp_header_default::builders::MalformedTimestampHeaderDefaultInputBuilder {
   60     69   
        &self.inner
   61     70   
    }
          71  +
    /* FluentBuilderGenerator.kt:145 */
   62     72   
    /// Sends the request and returns the response.
   63     73   
    ///
   64     74   
    /// If an error occurs, an `SdkError` will be returned with additional details that
   65     75   
    /// can be matched against.
   66     76   
    ///
   67     77   
    /// By default, any retryable failures will be retried twice. Retry behavior
   68     78   
    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
   69     79   
    /// set when configuring the client.
   70     80   
    pub async fn send(
   71     81   
        self,
   72     82   
    ) -> ::std::result::Result<
   73     83   
        crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput,
   74     84   
        ::aws_smithy_runtime_api::client::result::SdkError<
   75     85   
            crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultError,
   76     86   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   77     87   
        >,
   78     88   
    > {
   79     89   
        let input = self
   80     90   
            .inner
   81     91   
            .build()
   82     92   
            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
   83     93   
        let runtime_plugins = crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefault::operation_runtime_plugins(
   84     94   
            self.handle.runtime_plugins.clone(),
   85     95   
            &self.handle.conf,
   86     96   
            self.config_override,
   87     97   
        );
   88     98   
        crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefault::orchestrate(&runtime_plugins, input).await
   89     99   
    }
   90    100   
   91    101   
    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
   92    102   
    pub fn customize(
   93    103   
        self,
   94    104   
    ) -> crate::client::customize::CustomizableOperation<
   95    105   
        crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultOutput,
   96    106   
        crate::operation::malformed_timestamp_header_default::MalformedTimestampHeaderDefaultError,
   97    107   
        Self,
   98    108   
    > {
   99    109   
        crate::client::customize::CustomizableOperation::new(self)
  100    110   
    }
         111  +
    /* FluentBuilderGenerator.kt:315 */
  101    112   
    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
  102    113   
        self.set_config_override(::std::option::Option::Some(config_override.into()));
  103    114   
        self
  104    115   
    }
  105    116   
  106    117   
    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
  107    118   
        self.config_override = config_override;
  108    119   
        self
  109    120   
    }
         121  +
    /* FluentBuilderGenerator.kt:498 */
  110    122   
    #[allow(missing_docs)] // documentation missing in model
         123  +
                           /* FluentBuilderGenerator.kt:500 */
  111    124   
    pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
  112    125   
        self.inner = self.inner.timestamp(input);
  113    126   
        self
  114    127   
    }
         128  +
    /* FluentBuilderGenerator.kt:498 */
  115    129   
    #[allow(missing_docs)] // documentation missing in model
         130  +
                           /* FluentBuilderGenerator.kt:500 */
  116    131   
    pub fn set_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
  117    132   
        self.inner = self.inner.set_timestamp(input);
  118    133   
        self
  119    134   
    }
         135  +
    /* FluentBuilderGenerator.kt:518 */
  120    136   
    #[allow(missing_docs)] // documentation missing in model
         137  +
                           /* FluentBuilderGenerator.kt:520 */
  121    138   
    pub fn get_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
  122    139   
        self.inner.get_timestamp()
  123    140   
    }
         141  +
    /* FluentBuilderGenerator.kt:282 */
  124    142   
}

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_header_epoch.rs

@@ -1,1 +40,49 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* OperationGenerator.kt:77 */
    2      3   
/// Orchestration and serialization glue logic for `MalformedTimestampHeaderEpoch`.
           4  +
/* RustType.kt:516 */
    3      5   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
           6  +
/* RustType.kt:516 */
    4      7   
#[non_exhaustive]
           8  +
/* OperationGenerator.kt:84 */
    5      9   
pub struct MalformedTimestampHeaderEpoch;
          10  +
/* OperationGenerator.kt:85 */
    6     11   
impl MalformedTimestampHeaderEpoch {
    7         -
    /// Creates a new `MalformedTimestampHeaderEpoch`
          12  +
    /// /* OperationGenerator.kt:86 */Creates a new `MalformedTimestampHeaderEpoch`
          13  +
    /* OperationGenerator.kt:87 */
    8     14   
    pub fn new() -> Self {
          15  +
        /* OperationGenerator.kt:88 */
    9     16   
        Self
          17  +
        /* OperationGenerator.kt:87 */
   10     18   
    }
          19  +
    /* OperationGenerator.kt:138 */
   11     20   
    pub(crate) async fn orchestrate(
   12     21   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     22   
        input: crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput,
   14     23   
    ) -> ::std::result::Result<
   15     24   
        crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput,
   16     25   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     26   
            crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochError,
   18     27   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     28   
        >,
   20     29   
    > {
@@ -63,72 +333,404 @@
   83     92   
                runtime_plugins = runtime_plugins.with_operation_plugin(plugin);
   84     93   
            }
   85     94   
            runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new(
   86     95   
                config_override,
   87     96   
                client_config.config.clone(),
   88     97   
                &client_config.runtime_components,
   89     98   
            ));
   90     99   
        }
   91    100   
        runtime_plugins
   92    101   
    }
         102  +
    /* OperationGenerator.kt:85 */
   93    103   
}
         104  +
/* OperationRuntimePluginGenerator.kt:55 */
   94    105   
impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for MalformedTimestampHeaderEpoch {
   95    106   
    fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> {
   96    107   
        let mut cfg = ::aws_smithy_types::config_bag::Layer::new("MalformedTimestampHeaderEpoch");
   97    108   
   98    109   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new(
   99    110   
            MalformedTimestampHeaderEpochRequestSerializer,
  100    111   
        ));
  101    112   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new(
  102    113   
            MalformedTimestampHeaderEpochResponseDeserializer,
  103    114   
        ));
  104    115   
  105    116   
        cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new(
  106    117   
            ::aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolverParams::new(),
  107    118   
        ));
  108    119   
  109    120   
        cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new(
  110    121   
            "MalformedTimestampHeaderEpoch",
  111    122   
            "Rest Json Protocol",
  112    123   
        ));
  113    124   
  114    125   
        ::std::option::Option::Some(cfg.freeze())
  115    126   
    }
  116    127   
  117    128   
    fn runtime_components(
  118    129   
        &self,
  119    130   
        _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
  120    131   
    ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> {
  121    132   
        #[allow(unused_mut)]
  122    133   
        let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("MalformedTimestampHeaderEpoch")
  123    134   
            .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default())
  124    135   
            .with_interceptor(MalformedTimestampHeaderEpochEndpointParamsInterceptor)
  125    136   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::<
  126    137   
                crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochError,
  127    138   
            >::new())
  128    139   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::<
  129    140   
                crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochError,
  130    141   
            >::new());
  131    142   
  132    143   
        ::std::borrow::Cow::Owned(rcb)
  133    144   
    }
  134    145   
}
  135    146   
         147  +
/* ResponseDeserializerGenerator.kt:64 */
  136    148   
#[derive(Debug)]
  137    149   
struct MalformedTimestampHeaderEpochResponseDeserializer;
  138    150   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for MalformedTimestampHeaderEpochResponseDeserializer {
  139    151   
    fn deserialize_nonstreaming(
  140    152   
        &self,
  141    153   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
  142    154   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  143    155   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  144    156   
        let headers = response.headers();
  145    157   
        let body = response.body().bytes().expect("body loaded");
  146    158   
        #[allow(unused_mut)]
  147    159   
        let mut force_error = false;
  148    160   
  149    161   
        let parse_result = if !success && status != 200 || force_error {
  150    162   
            crate::protocol_serde::shape_malformed_timestamp_header_epoch::de_malformed_timestamp_header_epoch_http_error(status, headers, body)
  151    163   
        } else {
  152    164   
            crate::protocol_serde::shape_malformed_timestamp_header_epoch::de_malformed_timestamp_header_epoch_http_response(status, headers, body)
  153    165   
        };
  154    166   
        crate::protocol_serde::type_erase_result(parse_result)
  155    167   
    }
  156    168   
}
         169  +
/* RequestSerializerGenerator.kt:67 */
  157    170   
#[derive(Debug)]
  158    171   
struct MalformedTimestampHeaderEpochRequestSerializer;
  159    172   
impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for MalformedTimestampHeaderEpochRequestSerializer {
  160    173   
    #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
  161    174   
    fn serialize_input(
  162    175   
        &self,
  163    176   
        input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
  164    177   
        _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  165    178   
    ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
  166    179   
        let input = input
  167    180   
            .downcast::<crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput>()
  168    181   
            .expect("correct type");
  169    182   
        let _header_serialization_settings = _cfg
  170    183   
            .load::<crate::serialization_settings::HeaderSerializationSettings>()
  171    184   
            .cloned()
  172    185   
            .unwrap_or_default();
  173    186   
        let mut request_builder = {
  174    187   
            fn uri_base(
  175    188   
                _input: &crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput,
  176    189   
                output: &mut ::std::string::String,
  177    190   
            ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
  178    191   
                use ::std::fmt::Write as _;
  179    192   
                ::std::write!(output, "/MalformedTimestampHeaderEpoch").expect("formatting should succeed");
  180    193   
                ::std::result::Result::Ok(())
  181    194   
            }
  182    195   
            #[allow(clippy::unnecessary_wraps)]
  183    196   
            fn update_http_builder(
  184    197   
                input: &crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput,
  185    198   
                builder: ::http::request::Builder,
  186    199   
            ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
  187    200   
                let mut uri = ::std::string::String::new();
  188    201   
                uri_base(input, &mut uri)?;
  189    202   
                let builder =
  190    203   
                    crate::protocol_serde::shape_malformed_timestamp_header_epoch::ser_malformed_timestamp_header_epoch_headers(input, builder)?;
  191    204   
                ::std::result::Result::Ok(builder.method("POST").uri(uri))
  192    205   
            }
  193    206   
            let mut builder = update_http_builder(&input, ::http::request::Builder::new())?;
  194    207   
            builder
  195    208   
        };
  196    209   
        let body = ::aws_smithy_types::body::SdkBody::from("");
  197    210   
  198    211   
        ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
  199    212   
    }
  200    213   
}
         214  +
/* EndpointParamsInterceptorGenerator.kt:86 */
  201    215   
#[derive(Debug)]
  202    216   
struct MalformedTimestampHeaderEpochEndpointParamsInterceptor;
  203    217   
  204    218   
impl ::aws_smithy_runtime_api::client::interceptors::Intercept for MalformedTimestampHeaderEpochEndpointParamsInterceptor {
  205    219   
    fn name(&self) -> &'static str {
  206    220   
        "MalformedTimestampHeaderEpochEndpointParamsInterceptor"
  207    221   
    }
  208    222   
  209    223   
    fn read_before_execution(
  210    224   
        &self,
  211    225   
        context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef<
  212    226   
            '_,
  213    227   
            ::aws_smithy_runtime_api::client::interceptors::context::Input,
  214    228   
            ::aws_smithy_runtime_api::client::interceptors::context::Output,
  215    229   
            ::aws_smithy_runtime_api::client::interceptors::context::Error,
  216    230   
        >,
  217    231   
        cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  218    232   
    ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
  219    233   
        let _input = context
  220    234   
            .input()
  221    235   
            .downcast_ref::<MalformedTimestampHeaderEpochInput>()
  222    236   
            .ok_or("failed to downcast to MalformedTimestampHeaderEpochInput")?;
  223    237   
  224    238   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  225    239   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  226    240   
        })?;
  227    241   
        cfg.interceptor_state()
  228    242   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  229    243   
        ::std::result::Result::Ok(())
  230    244   
    }
  231    245   
}
  232    246   
  233    247   
// The get_* functions below are generated from JMESPath expressions in the
  234    248   
// operationContextParams trait. They target the operation's input shape.
  235    249   
         250  +
/* OperationErrorGenerator.kt:79 */
  236    251   
/// Error type for the `MalformedTimestampHeaderEpochError` operation.
         252  +
/* RustType.kt:516 */
  237    253   
#[non_exhaustive]
         254  +
/* RustType.kt:516 */
  238    255   
#[derive(::std::fmt::Debug)]
  239         -
pub enum MalformedTimestampHeaderEpochError {
         256  +
pub /* OperationErrorGenerator.kt:81 */ enum MalformedTimestampHeaderEpochError {
         257  +
    /* OperationErrorGenerator.kt:88 */
  240    258   
    /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
  241    259   
    #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
  242    260   
    variable wildcard pattern and check `.code()`:
  243    261   
     \
  244    262   
    &nbsp;&nbsp;&nbsp;`err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
  245    263   
     \
  246    264   
    See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-MalformedTimestampHeaderEpochError) for what information is available for the error.")]
  247    265   
    Unhandled(crate::error::sealed_unhandled::Unhandled),
         266  +
    /* OperationErrorGenerator.kt:81 */
  248    267   
}
         268  +
/* OperationErrorGenerator.kt:218 */
  249    269   
impl MalformedTimestampHeaderEpochError {
         270  +
    /* OperationErrorGenerator.kt:219 */
  250    271   
    /// Creates the `MalformedTimestampHeaderEpochError::Unhandled` variant from any error type.
  251    272   
    pub fn unhandled(
  252    273   
        err: impl ::std::convert::Into<::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>>,
  253    274   
    ) -> Self {
  254    275   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  255    276   
            source: err.into(),
  256    277   
            meta: ::std::default::Default::default(),
  257    278   
        })
  258    279   
    }
  259    280   
  260    281   
    /// Creates the `MalformedTimestampHeaderEpochError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata).
  261    282   
    pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self {
  262    283   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  263    284   
            source: err.clone().into(),
  264    285   
            meta: err,
  265    286   
        })
  266    287   
    }
  267         -
    ///
         288  +
    /// /* OperationErrorGenerator.kt:236 */
  268    289   
    /// Returns error metadata, which includes the error code, message,
  269    290   
    /// request ID, and potentially additional information.
  270    291   
    ///
         292  +
    /* OperationErrorGenerator.kt:242 */
  271    293   
    pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         294  +
        /* OperationErrorGenerator.kt:243 */
  272    295   
        match self {
  273         -
            Self::Unhandled(e) => &e.meta,
         296  +
            /* OperationErrorGenerator.kt:251 */ Self::Unhandled(e) => &e.meta,
         297  +
            /* OperationErrorGenerator.kt:243 */
  274    298   
        }
         299  +
        /* OperationErrorGenerator.kt:242 */
  275    300   
    }
         301  +
    /* OperationErrorGenerator.kt:218 */
  276    302   
}
         303  +
/* OperationErrorGenerator.kt:269 */
  277    304   
impl ::std::error::Error for MalformedTimestampHeaderEpochError {
         305  +
    /* OperationErrorGenerator.kt:270 */
  278    306   
    fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> {
         307  +
        /* OperationErrorGenerator.kt:318 */
  279    308   
        match self {
  280         -
            Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source),
         309  +
            /* OperationErrorGenerator.kt:326 */
         310  +
            Self::Unhandled(_inner) => {
         311  +
                /* OperationErrorGenerator.kt:279 */
         312  +
                ::std::option::Option::Some(&*_inner.source)
         313  +
                /* OperationErrorGenerator.kt:326 */
         314  +
            } /* OperationErrorGenerator.kt:318 */
  281    315   
        }
         316  +
        /* OperationErrorGenerator.kt:270 */
  282    317   
    }
         318  +
    /* OperationErrorGenerator.kt:269 */
  283    319   
}
         320  +
/* OperationErrorGenerator.kt:133 */
  284    321   
impl ::std::fmt::Display for MalformedTimestampHeaderEpochError {
         322  +
    /* OperationErrorGenerator.kt:134 */
  285    323   
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         324  +
        /* OperationErrorGenerator.kt:318 */
  286    325   
        match self {
         326  +
            /* OperationErrorGenerator.kt:326 */
  287    327   
            Self::Unhandled(_inner) => {
         328  +
                /* OperationErrorGenerator.kt:139 */
  288    329   
                if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
  289    330   
                    write!(f, "unhandled error ({code})")
  290    331   
                } else {
  291    332   
                    f.write_str("unhandled error")
  292    333   
                }
         334  +
                /* OperationErrorGenerator.kt:326 */
         335  +
            } /* OperationErrorGenerator.kt:318 */
  293    336   
        }
         337  +
        /* OperationErrorGenerator.kt:134 */
  294    338   
    }
  295         -
    }
         339  +
    /* OperationErrorGenerator.kt:133 */
  296    340   
}
         341  +
/* OperationErrorGenerator.kt:182 */
  297    342   
impl ::aws_smithy_types::retry::ProvideErrorKind for MalformedTimestampHeaderEpochError {
         343  +
    /* OperationErrorGenerator.kt:186 */
  298    344   
    fn code(&self) -> ::std::option::Option<&str> {
         345  +
        /* OperationErrorGenerator.kt:187 */
  299    346   
        ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self)
         347  +
        /* OperationErrorGenerator.kt:186 */
  300    348   
    }
         349  +
    /* OperationErrorGenerator.kt:190 */
  301    350   
    fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> {
         351  +
        /* OperationErrorGenerator.kt:197 */
  302    352   
        ::std::option::Option::None
         353  +
        /* OperationErrorGenerator.kt:190 */
  303    354   
    }
         355  +
    /* OperationErrorGenerator.kt:182 */
  304    356   
}
         357  +
/* OperationErrorGenerator.kt:163 */
  305    358   
impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for MalformedTimestampHeaderEpochError {
         359  +
    /* OperationErrorGenerator.kt:164 */
  306    360   
    fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         361  +
        /* OperationErrorGenerator.kt:318 */
  307    362   
        match self {
  308         -
            Self::Unhandled(_inner) => &_inner.meta,
         363  +
            /* OperationErrorGenerator.kt:326 */
         364  +
            Self::Unhandled(_inner) => {
         365  +
                /* OperationErrorGenerator.kt:168 */
         366  +
                &_inner.meta
         367  +
                /* OperationErrorGenerator.kt:326 */
         368  +
            } /* OperationErrorGenerator.kt:318 */
  309    369   
        }
         370  +
        /* OperationErrorGenerator.kt:164 */
  310    371   
    }
         372  +
    /* OperationErrorGenerator.kt:163 */
  311    373   
}
         374  +
/* OperationErrorGenerator.kt:109 */
  312    375   
impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for MalformedTimestampHeaderEpochError {
         376  +
    /* OperationErrorGenerator.kt:110 */
  313    377   
    fn create_unhandled_error(
  314    378   
        source: ::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>,
  315    379   
        meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
  316    380   
    ) -> Self {
         381  +
        /* OperationErrorGenerator.kt:121 */
  317    382   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  318    383   
            source,
  319    384   
            meta: meta.unwrap_or_default(),
  320    385   
        })
         386  +
        /* OperationErrorGenerator.kt:110 */
  321    387   
    }
         388  +
    /* OperationErrorGenerator.kt:109 */
  322    389   
}
  323    390   
         391  +
/* CodegenDelegator.kt:255 */
  324    392   
pub use crate::operation::malformed_timestamp_header_epoch::_malformed_timestamp_header_epoch_output::MalformedTimestampHeaderEpochOutput;
  325    393   
         394  +
/* CodegenDelegator.kt:255 */
  326    395   
pub use crate::operation::malformed_timestamp_header_epoch::_malformed_timestamp_header_epoch_input::MalformedTimestampHeaderEpochInput;
  327    396   
         397  +
/* RustModule.kt:172 */
  328    398   
mod _malformed_timestamp_header_epoch_input;
  329    399   
         400  +
/* RustModule.kt:172 */
  330    401   
mod _malformed_timestamp_header_epoch_output;
  331    402   
  332         -
/// Builders
         403  +
/// /* CodegenDelegator.kt:51 */Builders
  333    404   
pub mod builders;

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_header_epoch/_malformed_timestamp_header_epoch_input.rs

@@ -1,1 +55,97 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct MalformedTimestampHeaderEpochInput {
           8  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampHeaderEpochInput {
           9  +
    /* StructureGenerator.kt:231 */
    6     10   
    #[allow(missing_docs)] // documentation missing in model
    7     11   
    pub timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          12  +
    /* StructureGenerator.kt:201 */
    8     13   
}
          14  +
/* StructureGenerator.kt:135 */
    9     15   
impl MalformedTimestampHeaderEpochInput {
          16  +
    /* StructureGenerator.kt:231 */
   10     17   
    #[allow(missing_docs)] // documentation missing in model
          18  +
                           /* StructureGenerator.kt:166 */
   11     19   
    pub fn timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
          20  +
        /* StructureGenerator.kt:170 */
   12     21   
        self.timestamp.as_ref()
          22  +
        /* StructureGenerator.kt:166 */
   13     23   
    }
          24  +
    /* StructureGenerator.kt:135 */
   14     25   
}
          26  +
/* ClientCodegenVisitor.kt:237 */
   15     27   
impl MalformedTimestampHeaderEpochInput {
   16         -
    /// Creates a new builder-style object to manufacture [`MalformedTimestampHeaderEpochInput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput).
          28  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`MalformedTimestampHeaderEpochInput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput).
          29  +
    /* BuilderGenerator.kt:175 */
   17     30   
    pub fn builder() -> crate::operation::malformed_timestamp_header_epoch::builders::MalformedTimestampHeaderEpochInputBuilder {
          31  +
        /* BuilderGenerator.kt:176 */
   18     32   
        crate::operation::malformed_timestamp_header_epoch::builders::MalformedTimestampHeaderEpochInputBuilder::default()
          33  +
        /* BuilderGenerator.kt:175 */
   19     34   
    }
          35  +
    /* ClientCodegenVisitor.kt:237 */
   20     36   
}
   21     37   
   22         -
/// A builder for [`MalformedTimestampHeaderEpochInput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput).
          38  +
/// /* BuilderGenerator.kt:342 */A builder for [`MalformedTimestampHeaderEpochInput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput).
          39  +
/* RustType.kt:516 */
   23     40   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          41  +
/* RustType.kt:516 */
   24     42   
#[non_exhaustive]
          43  +
/* BuilderGenerator.kt:345 */
   25     44   
pub struct MalformedTimestampHeaderEpochInputBuilder {
   26         -
    pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          45  +
    /* BuilderGenerator.kt:275 */ pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          46  +
    /* BuilderGenerator.kt:345 */
   27     47   
}
          48  +
/* BuilderGenerator.kt:355 */
   28     49   
impl MalformedTimestampHeaderEpochInputBuilder {
          50  +
    /* BuilderGenerator.kt:286 */
   29     51   
    #[allow(missing_docs)] // documentation missing in model
   30         -
    /// This field is required.
          52  +
    /// /* BuilderGenerator.kt:288 */This field is required.
          53  +
    /* BuilderGenerator.kt:291 */
   31     54   
    pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
          55  +
        /* BuilderGenerator.kt:292 */
   32     56   
        self.timestamp = ::std::option::Option::Some(input);
          57  +
        /* BuilderGenerator.kt:293 */
   33     58   
        self
          59  +
        /* BuilderGenerator.kt:291 */
   34     60   
    }
          61  +
    /* BuilderGenerator.kt:312 */
   35     62   
    #[allow(missing_docs)] // documentation missing in model
          63  +
                           /* BuilderGenerator.kt:314 */
   36     64   
    pub fn set_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
          65  +
        /* BuilderGenerator.kt:315 */
   37     66   
        self.timestamp = input;
   38     67   
        self
          68  +
        /* BuilderGenerator.kt:314 */
   39     69   
    }
          70  +
    /* BuilderGenerator.kt:334 */
   40     71   
    #[allow(missing_docs)] // documentation missing in model
          72  +
                           /* BuilderGenerator.kt:336 */
   41     73   
    pub fn get_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
          74  +
        /* BuilderGenerator.kt:337 */
   42     75   
        &self.timestamp
          76  +
        /* BuilderGenerator.kt:336 */
   43     77   
    }
   44         -
    /// Consumes the builder and constructs a [`MalformedTimestampHeaderEpochInput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput).
          78  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`MalformedTimestampHeaderEpochInput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput).
          79  +
    /* BuilderGenerator.kt:253 */
   45     80   
    pub fn build(
   46     81   
        self,
   47     82   
    ) -> ::std::result::Result<
   48     83   
        crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput,
   49     84   
        ::aws_smithy_types::error::operation::BuildError,
   50     85   
    > {
   51         -
        ::std::result::Result::Ok(crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput {
   52         -
            timestamp: self.timestamp,
   53         -
        })
          86  +
        /* BuilderGenerator.kt:254 */
          87  +
        ::std::result::Result::Ok(
          88  +
            /* BuilderGenerator.kt:477 */
          89  +
            crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochInput {
          90  +
                /* BuilderGenerator.kt:481 */ timestamp: self.timestamp,
          91  +
                /* BuilderGenerator.kt:477 */
          92  +
            }, /* BuilderGenerator.kt:254 */
          93  +
        )
          94  +
        /* BuilderGenerator.kt:253 */
   54     95   
    }
          96  +
    /* BuilderGenerator.kt:355 */
   55     97   
}

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_header_epoch/_malformed_timestamp_header_epoch_output.rs

@@ -1,1 +22,39 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct MalformedTimestampHeaderEpochOutput {}
           8  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampHeaderEpochOutput {/* StructureGenerator.kt:201 */}
           9  +
/* ClientCodegenVisitor.kt:237 */
    6     10   
impl MalformedTimestampHeaderEpochOutput {
    7         -
    /// Creates a new builder-style object to manufacture [`MalformedTimestampHeaderEpochOutput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput).
          11  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`MalformedTimestampHeaderEpochOutput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput).
          12  +
    /* BuilderGenerator.kt:175 */
    8     13   
    pub fn builder() -> crate::operation::malformed_timestamp_header_epoch::builders::MalformedTimestampHeaderEpochOutputBuilder {
          14  +
        /* BuilderGenerator.kt:176 */
    9     15   
        crate::operation::malformed_timestamp_header_epoch::builders::MalformedTimestampHeaderEpochOutputBuilder::default()
          16  +
        /* BuilderGenerator.kt:175 */
   10     17   
    }
          18  +
    /* ClientCodegenVisitor.kt:237 */
   11     19   
}
   12     20   
   13         -
/// A builder for [`MalformedTimestampHeaderEpochOutput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput).
          21  +
/// /* BuilderGenerator.kt:342 */A builder for [`MalformedTimestampHeaderEpochOutput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput).
          22  +
/* RustType.kt:516 */
   14     23   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          24  +
/* RustType.kt:516 */
   15     25   
#[non_exhaustive]
   16         -
pub struct MalformedTimestampHeaderEpochOutputBuilder {}
          26  +
/* BuilderGenerator.kt:345 */
          27  +
pub struct MalformedTimestampHeaderEpochOutputBuilder {/* BuilderGenerator.kt:345 */}
          28  +
/* BuilderGenerator.kt:355 */
   17     29   
impl MalformedTimestampHeaderEpochOutputBuilder {
   18         -
    /// Consumes the builder and constructs a [`MalformedTimestampHeaderEpochOutput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput).
          30  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`MalformedTimestampHeaderEpochOutput`](crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput).
          31  +
    /* BuilderGenerator.kt:253 */
   19     32   
    pub fn build(self) -> crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput {
   20         -
        crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput {}
          33  +
        /* BuilderGenerator.kt:477 */
          34  +
        crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput {
          35  +
        /* BuilderGenerator.kt:477 */}
          36  +
        /* BuilderGenerator.kt:253 */
   21     37   
    }
          38  +
    /* BuilderGenerator.kt:355 */
   22     39   
}

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_header_epoch/builders.rs

@@ -1,1 +124,142 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* CodegenDelegator.kt:255 */
    2      3   
pub use crate::operation::malformed_timestamp_header_epoch::_malformed_timestamp_header_epoch_output::MalformedTimestampHeaderEpochOutputBuilder;
    3      4   
           5  +
/* CodegenDelegator.kt:255 */
    4      6   
pub use crate::operation::malformed_timestamp_header_epoch::_malformed_timestamp_header_epoch_input::MalformedTimestampHeaderEpochInputBuilder;
    5      7   
           8  +
/* FluentBuilderGenerator.kt:408 */
    6      9   
impl crate::operation::malformed_timestamp_header_epoch::builders::MalformedTimestampHeaderEpochInputBuilder {
    7     10   
    /// Sends a request with this input using the given client.
    8     11   
    pub async fn send_with(
    9     12   
        self,
   10     13   
        client: &crate::Client,
   11     14   
    ) -> ::std::result::Result<
   12     15   
        crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput,
   13     16   
        ::aws_smithy_runtime_api::client::result::SdkError<
   14     17   
            crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochError,
   15     18   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   16     19   
        >,
   17     20   
    > {
   18     21   
        let mut fluent_builder = client.malformed_timestamp_header_epoch();
   19     22   
        fluent_builder.inner = self;
   20     23   
        fluent_builder.send().await
   21     24   
    }
   22     25   
}
   23         -
/// Fluent builder constructing a request to `MalformedTimestampHeaderEpoch`.
          26  +
/// /* FluentBuilderGenerator.kt:129 */Fluent builder constructing a request to `MalformedTimestampHeaderEpoch`.
   24     27   
///
          28  +
/* RustType.kt:516 */
   25     29   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
          30  +
/* FluentBuilderGenerator.kt:270 */
   26     31   
pub struct MalformedTimestampHeaderEpochFluentBuilder {
   27     32   
    handle: ::std::sync::Arc<crate::client::Handle>,
   28     33   
    inner: crate::operation::malformed_timestamp_header_epoch::builders::MalformedTimestampHeaderEpochInputBuilder,
   29     34   
    config_override: ::std::option::Option<crate::config::Builder>,
   30     35   
}
          36  +
/* FluentBuilderGenerator.kt:381 */
   31     37   
impl
   32     38   
    crate::client::customize::internal::CustomizableSend<
   33     39   
        crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput,
   34     40   
        crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochError,
   35     41   
    > for MalformedTimestampHeaderEpochFluentBuilder
   36     42   
{
   37     43   
    fn send(
   38     44   
        self,
   39     45   
        config_override: crate::config::Builder,
   40     46   
    ) -> crate::client::customize::internal::BoxFuture<
   41     47   
        crate::client::customize::internal::SendResult<
   42     48   
            crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput,
   43     49   
            crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochError,
   44     50   
        >,
   45     51   
    > {
   46     52   
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
   47     53   
    }
   48     54   
}
          55  +
/* FluentBuilderGenerator.kt:282 */
   49     56   
impl MalformedTimestampHeaderEpochFluentBuilder {
          57  +
    /* FluentBuilderGenerator.kt:288 */
   50     58   
    /// Creates a new `MalformedTimestampHeaderEpochFluentBuilder`.
   51     59   
    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
   52     60   
        Self {
   53     61   
            handle,
   54     62   
            inner: ::std::default::Default::default(),
   55     63   
            config_override: ::std::option::Option::None,
   56     64   
        }
   57     65   
    }
          66  +
    /* FluentBuilderGenerator.kt:301 */
   58     67   
    /// Access the MalformedTimestampHeaderEpoch as a reference.
   59     68   
    pub fn as_input(&self) -> &crate::operation::malformed_timestamp_header_epoch::builders::MalformedTimestampHeaderEpochInputBuilder {
   60     69   
        &self.inner
   61     70   
    }
          71  +
    /* FluentBuilderGenerator.kt:145 */
   62     72   
    /// Sends the request and returns the response.
   63     73   
    ///
   64     74   
    /// If an error occurs, an `SdkError` will be returned with additional details that
   65     75   
    /// can be matched against.
   66     76   
    ///
   67     77   
    /// By default, any retryable failures will be retried twice. Retry behavior
   68     78   
    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
   69     79   
    /// set when configuring the client.
   70     80   
    pub async fn send(
   71     81   
        self,
   72     82   
    ) -> ::std::result::Result<
   73     83   
        crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput,
   74     84   
        ::aws_smithy_runtime_api::client::result::SdkError<
   75     85   
            crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochError,
   76     86   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   77     87   
        >,
   78     88   
    > {
   79     89   
        let input = self
   80     90   
            .inner
   81     91   
            .build()
   82     92   
            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
   83     93   
        let runtime_plugins = crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpoch::operation_runtime_plugins(
   84     94   
            self.handle.runtime_plugins.clone(),
   85     95   
            &self.handle.conf,
   86     96   
            self.config_override,
   87     97   
        );
   88     98   
        crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpoch::orchestrate(&runtime_plugins, input).await
   89     99   
    }
   90    100   
   91    101   
    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
   92    102   
    pub fn customize(
   93    103   
        self,
   94    104   
    ) -> crate::client::customize::CustomizableOperation<
   95    105   
        crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochOutput,
   96    106   
        crate::operation::malformed_timestamp_header_epoch::MalformedTimestampHeaderEpochError,
   97    107   
        Self,
   98    108   
    > {
   99    109   
        crate::client::customize::CustomizableOperation::new(self)
  100    110   
    }
         111  +
    /* FluentBuilderGenerator.kt:315 */
  101    112   
    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
  102    113   
        self.set_config_override(::std::option::Option::Some(config_override.into()));
  103    114   
        self
  104    115   
    }
  105    116   
  106    117   
    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
  107    118   
        self.config_override = config_override;
  108    119   
        self
  109    120   
    }
         121  +
    /* FluentBuilderGenerator.kt:498 */
  110    122   
    #[allow(missing_docs)] // documentation missing in model
         123  +
                           /* FluentBuilderGenerator.kt:500 */
  111    124   
    pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
  112    125   
        self.inner = self.inner.timestamp(input);
  113    126   
        self
  114    127   
    }
         128  +
    /* FluentBuilderGenerator.kt:498 */
  115    129   
    #[allow(missing_docs)] // documentation missing in model
         130  +
                           /* FluentBuilderGenerator.kt:500 */
  116    131   
    pub fn set_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
  117    132   
        self.inner = self.inner.set_timestamp(input);
  118    133   
        self
  119    134   
    }
         135  +
    /* FluentBuilderGenerator.kt:518 */
  120    136   
    #[allow(missing_docs)] // documentation missing in model
         137  +
                           /* FluentBuilderGenerator.kt:520 */
  121    138   
    pub fn get_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
  122    139   
        self.inner.get_timestamp()
  123    140   
    }
         141  +
    /* FluentBuilderGenerator.kt:282 */
  124    142   
}

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_path_default.rs

@@ -1,1 +40,49 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* OperationGenerator.kt:77 */
    2      3   
/// Orchestration and serialization glue logic for `MalformedTimestampPathDefault`.
           4  +
/* RustType.kt:516 */
    3      5   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
           6  +
/* RustType.kt:516 */
    4      7   
#[non_exhaustive]
           8  +
/* OperationGenerator.kt:84 */
    5      9   
pub struct MalformedTimestampPathDefault;
          10  +
/* OperationGenerator.kt:85 */
    6     11   
impl MalformedTimestampPathDefault {
    7         -
    /// Creates a new `MalformedTimestampPathDefault`
          12  +
    /// /* OperationGenerator.kt:86 */Creates a new `MalformedTimestampPathDefault`
          13  +
    /* OperationGenerator.kt:87 */
    8     14   
    pub fn new() -> Self {
          15  +
        /* OperationGenerator.kt:88 */
    9     16   
        Self
          17  +
        /* OperationGenerator.kt:87 */
   10     18   
    }
          19  +
    /* OperationGenerator.kt:138 */
   11     20   
    pub(crate) async fn orchestrate(
   12     21   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     22   
        input: crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput,
   14     23   
    ) -> ::std::result::Result<
   15     24   
        crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput,
   16     25   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     26   
            crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultError,
   18     27   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     28   
        >,
   20     29   
    > {
@@ -63,72 +342,413 @@
   83     92   
                runtime_plugins = runtime_plugins.with_operation_plugin(plugin);
   84     93   
            }
   85     94   
            runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new(
   86     95   
                config_override,
   87     96   
                client_config.config.clone(),
   88     97   
                &client_config.runtime_components,
   89     98   
            ));
   90     99   
        }
   91    100   
        runtime_plugins
   92    101   
    }
         102  +
    /* OperationGenerator.kt:85 */
   93    103   
}
         104  +
/* OperationRuntimePluginGenerator.kt:55 */
   94    105   
impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for MalformedTimestampPathDefault {
   95    106   
    fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> {
   96    107   
        let mut cfg = ::aws_smithy_types::config_bag::Layer::new("MalformedTimestampPathDefault");
   97    108   
   98    109   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new(
   99    110   
            MalformedTimestampPathDefaultRequestSerializer,
  100    111   
        ));
  101    112   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new(
  102    113   
            MalformedTimestampPathDefaultResponseDeserializer,
  103    114   
        ));
  104    115   
  105    116   
        cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new(
  106    117   
            ::aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolverParams::new(),
  107    118   
        ));
  108    119   
  109    120   
        cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new(
  110    121   
            "MalformedTimestampPathDefault",
  111    122   
            "Rest Json Protocol",
  112    123   
        ));
  113    124   
  114    125   
        ::std::option::Option::Some(cfg.freeze())
  115    126   
    }
  116    127   
  117    128   
    fn runtime_components(
  118    129   
        &self,
  119    130   
        _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
  120    131   
    ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> {
  121    132   
        #[allow(unused_mut)]
  122    133   
        let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("MalformedTimestampPathDefault")
  123    134   
            .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default())
  124    135   
            .with_interceptor(MalformedTimestampPathDefaultEndpointParamsInterceptor)
  125    136   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::<
  126    137   
                crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultError,
  127    138   
            >::new())
  128    139   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::<
  129    140   
                crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultError,
  130    141   
            >::new());
  131    142   
  132    143   
        ::std::borrow::Cow::Owned(rcb)
  133    144   
    }
  134    145   
}
  135    146   
         147  +
/* ResponseDeserializerGenerator.kt:64 */
  136    148   
#[derive(Debug)]
  137    149   
struct MalformedTimestampPathDefaultResponseDeserializer;
  138    150   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for MalformedTimestampPathDefaultResponseDeserializer {
  139    151   
    fn deserialize_nonstreaming(
  140    152   
        &self,
  141    153   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
  142    154   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  143    155   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  144    156   
        let headers = response.headers();
  145    157   
        let body = response.body().bytes().expect("body loaded");
  146    158   
        #[allow(unused_mut)]
  147    159   
        let mut force_error = false;
  148    160   
  149    161   
        let parse_result = if !success && status != 200 || force_error {
  150    162   
            crate::protocol_serde::shape_malformed_timestamp_path_default::de_malformed_timestamp_path_default_http_error(status, headers, body)
  151    163   
        } else {
  152    164   
            crate::protocol_serde::shape_malformed_timestamp_path_default::de_malformed_timestamp_path_default_http_response(status, headers, body)
  153    165   
        };
  154    166   
        crate::protocol_serde::type_erase_result(parse_result)
  155    167   
    }
  156    168   
}
         169  +
/* RequestSerializerGenerator.kt:67 */
  157    170   
#[derive(Debug)]
  158    171   
struct MalformedTimestampPathDefaultRequestSerializer;
  159    172   
impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for MalformedTimestampPathDefaultRequestSerializer {
  160    173   
    #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
  161    174   
    fn serialize_input(
  162    175   
        &self,
  163    176   
        input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
  164    177   
        _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  165    178   
    ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
  166    179   
        let input = input
  167    180   
            .downcast::<crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput>()
  168    181   
            .expect("correct type");
  169    182   
        let _header_serialization_settings = _cfg
  170    183   
            .load::<crate::serialization_settings::HeaderSerializationSettings>()
  171    184   
            .cloned()
  172    185   
            .unwrap_or_default();
  173    186   
        let mut request_builder = {
  174    187   
            fn uri_base(
  175    188   
                _input: &crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput,
  176    189   
                output: &mut ::std::string::String,
  177    190   
            ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
  178    191   
                use ::std::fmt::Write as _;
  179    192   
                let input_1 = &_input.timestamp;
  180    193   
                let input_1 = input_1
  181    194   
                    .as_ref()
  182    195   
                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("timestamp", "cannot be empty or unset"))?;
  183    196   
                let timestamp = ::aws_smithy_http::label::fmt_timestamp(input_1, ::aws_smithy_types::date_time::Format::DateTime)?;
  184    197   
                if timestamp.is_empty() {
  185    198   
                    return ::std::result::Result::Err(::aws_smithy_types::error::operation::BuildError::missing_field(
  186    199   
                        "timestamp",
  187    200   
                        "cannot be empty or unset",
  188    201   
                    ));
  189    202   
                }
  190    203   
                ::std::write!(output, "/MalformedTimestampPathDefault/{timestamp}", timestamp = timestamp).expect("formatting should succeed");
  191    204   
                ::std::result::Result::Ok(())
  192    205   
            }
  193    206   
            #[allow(clippy::unnecessary_wraps)]
  194    207   
            fn update_http_builder(
  195    208   
                input: &crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput,
  196    209   
                builder: ::http::request::Builder,
  197    210   
            ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
  198    211   
                let mut uri = ::std::string::String::new();
  199    212   
                uri_base(input, &mut uri)?;
  200    213   
                ::std::result::Result::Ok(builder.method("POST").uri(uri))
  201    214   
            }
  202    215   
            let mut builder = update_http_builder(&input, ::http::request::Builder::new())?;
  203    216   
            builder
  204    217   
        };
  205    218   
        let body = ::aws_smithy_types::body::SdkBody::from("");
  206    219   
  207    220   
        ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
  208    221   
    }
  209    222   
}
         223  +
/* EndpointParamsInterceptorGenerator.kt:86 */
  210    224   
#[derive(Debug)]
  211    225   
struct MalformedTimestampPathDefaultEndpointParamsInterceptor;
  212    226   
  213    227   
impl ::aws_smithy_runtime_api::client::interceptors::Intercept for MalformedTimestampPathDefaultEndpointParamsInterceptor {
  214    228   
    fn name(&self) -> &'static str {
  215    229   
        "MalformedTimestampPathDefaultEndpointParamsInterceptor"
  216    230   
    }
  217    231   
  218    232   
    fn read_before_execution(
  219    233   
        &self,
  220    234   
        context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef<
  221    235   
            '_,
  222    236   
            ::aws_smithy_runtime_api::client::interceptors::context::Input,
  223    237   
            ::aws_smithy_runtime_api::client::interceptors::context::Output,
  224    238   
            ::aws_smithy_runtime_api::client::interceptors::context::Error,
  225    239   
        >,
  226    240   
        cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  227    241   
    ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
  228    242   
        let _input = context
  229    243   
            .input()
  230    244   
            .downcast_ref::<MalformedTimestampPathDefaultInput>()
  231    245   
            .ok_or("failed to downcast to MalformedTimestampPathDefaultInput")?;
  232    246   
  233    247   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  234    248   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  235    249   
        })?;
  236    250   
        cfg.interceptor_state()
  237    251   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  238    252   
        ::std::result::Result::Ok(())
  239    253   
    }
  240    254   
}
  241    255   
  242    256   
// The get_* functions below are generated from JMESPath expressions in the
  243    257   
// operationContextParams trait. They target the operation's input shape.
  244    258   
         259  +
/* OperationErrorGenerator.kt:79 */
  245    260   
/// Error type for the `MalformedTimestampPathDefaultError` operation.
         261  +
/* RustType.kt:516 */
  246    262   
#[non_exhaustive]
         263  +
/* RustType.kt:516 */
  247    264   
#[derive(::std::fmt::Debug)]
  248         -
pub enum MalformedTimestampPathDefaultError {
         265  +
pub /* OperationErrorGenerator.kt:81 */ enum MalformedTimestampPathDefaultError {
         266  +
    /* OperationErrorGenerator.kt:88 */
  249    267   
    /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
  250    268   
    #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
  251    269   
    variable wildcard pattern and check `.code()`:
  252    270   
     \
  253    271   
    &nbsp;&nbsp;&nbsp;`err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
  254    272   
     \
  255    273   
    See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-MalformedTimestampPathDefaultError) for what information is available for the error.")]
  256    274   
    Unhandled(crate::error::sealed_unhandled::Unhandled),
         275  +
    /* OperationErrorGenerator.kt:81 */
  257    276   
}
         277  +
/* OperationErrorGenerator.kt:218 */
  258    278   
impl MalformedTimestampPathDefaultError {
         279  +
    /* OperationErrorGenerator.kt:219 */
  259    280   
    /// Creates the `MalformedTimestampPathDefaultError::Unhandled` variant from any error type.
  260    281   
    pub fn unhandled(
  261    282   
        err: impl ::std::convert::Into<::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>>,
  262    283   
    ) -> Self {
  263    284   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  264    285   
            source: err.into(),
  265    286   
            meta: ::std::default::Default::default(),
  266    287   
        })
  267    288   
    }
  268    289   
  269    290   
    /// Creates the `MalformedTimestampPathDefaultError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata).
  270    291   
    pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self {
  271    292   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  272    293   
            source: err.clone().into(),
  273    294   
            meta: err,
  274    295   
        })
  275    296   
    }
  276         -
    ///
         297  +
    /// /* OperationErrorGenerator.kt:236 */
  277    298   
    /// Returns error metadata, which includes the error code, message,
  278    299   
    /// request ID, and potentially additional information.
  279    300   
    ///
         301  +
    /* OperationErrorGenerator.kt:242 */
  280    302   
    pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         303  +
        /* OperationErrorGenerator.kt:243 */
  281    304   
        match self {
  282         -
            Self::Unhandled(e) => &e.meta,
         305  +
            /* OperationErrorGenerator.kt:251 */ Self::Unhandled(e) => &e.meta,
         306  +
            /* OperationErrorGenerator.kt:243 */
  283    307   
        }
         308  +
        /* OperationErrorGenerator.kt:242 */
  284    309   
    }
         310  +
    /* OperationErrorGenerator.kt:218 */
  285    311   
}
         312  +
/* OperationErrorGenerator.kt:269 */
  286    313   
impl ::std::error::Error for MalformedTimestampPathDefaultError {
         314  +
    /* OperationErrorGenerator.kt:270 */
  287    315   
    fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> {
         316  +
        /* OperationErrorGenerator.kt:318 */
  288    317   
        match self {
  289         -
            Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source),
         318  +
            /* OperationErrorGenerator.kt:326 */
         319  +
            Self::Unhandled(_inner) => {
         320  +
                /* OperationErrorGenerator.kt:279 */
         321  +
                ::std::option::Option::Some(&*_inner.source)
         322  +
                /* OperationErrorGenerator.kt:326 */
         323  +
            } /* OperationErrorGenerator.kt:318 */
  290    324   
        }
         325  +
        /* OperationErrorGenerator.kt:270 */
  291    326   
    }
         327  +
    /* OperationErrorGenerator.kt:269 */
  292    328   
}
         329  +
/* OperationErrorGenerator.kt:133 */
  293    330   
impl ::std::fmt::Display for MalformedTimestampPathDefaultError {
         331  +
    /* OperationErrorGenerator.kt:134 */
  294    332   
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         333  +
        /* OperationErrorGenerator.kt:318 */
  295    334   
        match self {
         335  +
            /* OperationErrorGenerator.kt:326 */
  296    336   
            Self::Unhandled(_inner) => {
         337  +
                /* OperationErrorGenerator.kt:139 */
  297    338   
                if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
  298    339   
                    write!(f, "unhandled error ({code})")
  299    340   
                } else {
  300    341   
                    f.write_str("unhandled error")
  301    342   
                }
         343  +
                /* OperationErrorGenerator.kt:326 */
         344  +
            } /* OperationErrorGenerator.kt:318 */
  302    345   
        }
         346  +
        /* OperationErrorGenerator.kt:134 */
  303    347   
    }
  304         -
    }
         348  +
    /* OperationErrorGenerator.kt:133 */
  305    349   
}
         350  +
/* OperationErrorGenerator.kt:182 */
  306    351   
impl ::aws_smithy_types::retry::ProvideErrorKind for MalformedTimestampPathDefaultError {
         352  +
    /* OperationErrorGenerator.kt:186 */
  307    353   
    fn code(&self) -> ::std::option::Option<&str> {
         354  +
        /* OperationErrorGenerator.kt:187 */
  308    355   
        ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self)
         356  +
        /* OperationErrorGenerator.kt:186 */
  309    357   
    }
         358  +
    /* OperationErrorGenerator.kt:190 */
  310    359   
    fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> {
         360  +
        /* OperationErrorGenerator.kt:197 */
  311    361   
        ::std::option::Option::None
         362  +
        /* OperationErrorGenerator.kt:190 */
  312    363   
    }
         364  +
    /* OperationErrorGenerator.kt:182 */
  313    365   
}
         366  +
/* OperationErrorGenerator.kt:163 */
  314    367   
impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for MalformedTimestampPathDefaultError {
         368  +
    /* OperationErrorGenerator.kt:164 */
  315    369   
    fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         370  +
        /* OperationErrorGenerator.kt:318 */
  316    371   
        match self {
  317         -
            Self::Unhandled(_inner) => &_inner.meta,
         372  +
            /* OperationErrorGenerator.kt:326 */
         373  +
            Self::Unhandled(_inner) => {
         374  +
                /* OperationErrorGenerator.kt:168 */
         375  +
                &_inner.meta
         376  +
                /* OperationErrorGenerator.kt:326 */
         377  +
            } /* OperationErrorGenerator.kt:318 */
  318    378   
        }
         379  +
        /* OperationErrorGenerator.kt:164 */
  319    380   
    }
         381  +
    /* OperationErrorGenerator.kt:163 */
  320    382   
}
         383  +
/* OperationErrorGenerator.kt:109 */
  321    384   
impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for MalformedTimestampPathDefaultError {
         385  +
    /* OperationErrorGenerator.kt:110 */
  322    386   
    fn create_unhandled_error(
  323    387   
        source: ::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>,
  324    388   
        meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
  325    389   
    ) -> Self {
         390  +
        /* OperationErrorGenerator.kt:121 */
  326    391   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  327    392   
            source,
  328    393   
            meta: meta.unwrap_or_default(),
  329    394   
        })
         395  +
        /* OperationErrorGenerator.kt:110 */
  330    396   
    }
         397  +
    /* OperationErrorGenerator.kt:109 */
  331    398   
}
  332    399   
         400  +
/* CodegenDelegator.kt:255 */
  333    401   
pub use crate::operation::malformed_timestamp_path_default::_malformed_timestamp_path_default_output::MalformedTimestampPathDefaultOutput;
  334    402   
         403  +
/* CodegenDelegator.kt:255 */
  335    404   
pub use crate::operation::malformed_timestamp_path_default::_malformed_timestamp_path_default_input::MalformedTimestampPathDefaultInput;
  336    405   
         406  +
/* RustModule.kt:172 */
  337    407   
mod _malformed_timestamp_path_default_input;
  338    408   
         409  +
/* RustModule.kt:172 */
  339    410   
mod _malformed_timestamp_path_default_output;
  340    411   
  341         -
/// Builders
         412  +
/// /* CodegenDelegator.kt:51 */Builders
  342    413   
pub mod builders;

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_path_default/_malformed_timestamp_path_default_input.rs

@@ -1,1 +55,97 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct MalformedTimestampPathDefaultInput {
           8  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampPathDefaultInput {
           9  +
    /* StructureGenerator.kt:231 */
    6     10   
    #[allow(missing_docs)] // documentation missing in model
    7     11   
    pub timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          12  +
    /* StructureGenerator.kt:201 */
    8     13   
}
          14  +
/* StructureGenerator.kt:135 */
    9     15   
impl MalformedTimestampPathDefaultInput {
          16  +
    /* StructureGenerator.kt:231 */
   10     17   
    #[allow(missing_docs)] // documentation missing in model
          18  +
                           /* StructureGenerator.kt:166 */
   11     19   
    pub fn timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
          20  +
        /* StructureGenerator.kt:170 */
   12     21   
        self.timestamp.as_ref()
          22  +
        /* StructureGenerator.kt:166 */
   13     23   
    }
          24  +
    /* StructureGenerator.kt:135 */
   14     25   
}
          26  +
/* ClientCodegenVisitor.kt:237 */
   15     27   
impl MalformedTimestampPathDefaultInput {
   16         -
    /// Creates a new builder-style object to manufacture [`MalformedTimestampPathDefaultInput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput).
          28  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`MalformedTimestampPathDefaultInput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput).
          29  +
    /* BuilderGenerator.kt:175 */
   17     30   
    pub fn builder() -> crate::operation::malformed_timestamp_path_default::builders::MalformedTimestampPathDefaultInputBuilder {
          31  +
        /* BuilderGenerator.kt:176 */
   18     32   
        crate::operation::malformed_timestamp_path_default::builders::MalformedTimestampPathDefaultInputBuilder::default()
          33  +
        /* BuilderGenerator.kt:175 */
   19     34   
    }
          35  +
    /* ClientCodegenVisitor.kt:237 */
   20     36   
}
   21     37   
   22         -
/// A builder for [`MalformedTimestampPathDefaultInput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput).
          38  +
/// /* BuilderGenerator.kt:342 */A builder for [`MalformedTimestampPathDefaultInput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput).
          39  +
/* RustType.kt:516 */
   23     40   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          41  +
/* RustType.kt:516 */
   24     42   
#[non_exhaustive]
          43  +
/* BuilderGenerator.kt:345 */
   25     44   
pub struct MalformedTimestampPathDefaultInputBuilder {
   26         -
    pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          45  +
    /* BuilderGenerator.kt:275 */ pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          46  +
    /* BuilderGenerator.kt:345 */
   27     47   
}
          48  +
/* BuilderGenerator.kt:355 */
   28     49   
impl MalformedTimestampPathDefaultInputBuilder {
          50  +
    /* BuilderGenerator.kt:286 */
   29     51   
    #[allow(missing_docs)] // documentation missing in model
   30         -
    /// This field is required.
          52  +
    /// /* BuilderGenerator.kt:288 */This field is required.
          53  +
    /* BuilderGenerator.kt:291 */
   31     54   
    pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
          55  +
        /* BuilderGenerator.kt:292 */
   32     56   
        self.timestamp = ::std::option::Option::Some(input);
          57  +
        /* BuilderGenerator.kt:293 */
   33     58   
        self
          59  +
        /* BuilderGenerator.kt:291 */
   34     60   
    }
          61  +
    /* BuilderGenerator.kt:312 */
   35     62   
    #[allow(missing_docs)] // documentation missing in model
          63  +
                           /* BuilderGenerator.kt:314 */
   36     64   
    pub fn set_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
          65  +
        /* BuilderGenerator.kt:315 */
   37     66   
        self.timestamp = input;
   38     67   
        self
          68  +
        /* BuilderGenerator.kt:314 */
   39     69   
    }
          70  +
    /* BuilderGenerator.kt:334 */
   40     71   
    #[allow(missing_docs)] // documentation missing in model
          72  +
                           /* BuilderGenerator.kt:336 */
   41     73   
    pub fn get_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
          74  +
        /* BuilderGenerator.kt:337 */
   42     75   
        &self.timestamp
          76  +
        /* BuilderGenerator.kt:336 */
   43     77   
    }
   44         -
    /// Consumes the builder and constructs a [`MalformedTimestampPathDefaultInput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput).
          78  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`MalformedTimestampPathDefaultInput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput).
          79  +
    /* BuilderGenerator.kt:253 */
   45     80   
    pub fn build(
   46     81   
        self,
   47     82   
    ) -> ::std::result::Result<
   48     83   
        crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput,
   49     84   
        ::aws_smithy_types::error::operation::BuildError,
   50     85   
    > {
   51         -
        ::std::result::Result::Ok(crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput {
   52         -
            timestamp: self.timestamp,
   53         -
        })
          86  +
        /* BuilderGenerator.kt:254 */
          87  +
        ::std::result::Result::Ok(
          88  +
            /* BuilderGenerator.kt:477 */
          89  +
            crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultInput {
          90  +
                /* BuilderGenerator.kt:481 */ timestamp: self.timestamp,
          91  +
                /* BuilderGenerator.kt:477 */
          92  +
            }, /* BuilderGenerator.kt:254 */
          93  +
        )
          94  +
        /* BuilderGenerator.kt:253 */
   54     95   
    }
          96  +
    /* BuilderGenerator.kt:355 */
   55     97   
}

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_path_default/_malformed_timestamp_path_default_output.rs

@@ -1,1 +22,39 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct MalformedTimestampPathDefaultOutput {}
           8  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampPathDefaultOutput {/* StructureGenerator.kt:201 */}
           9  +
/* ClientCodegenVisitor.kt:237 */
    6     10   
impl MalformedTimestampPathDefaultOutput {
    7         -
    /// Creates a new builder-style object to manufacture [`MalformedTimestampPathDefaultOutput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput).
          11  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`MalformedTimestampPathDefaultOutput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput).
          12  +
    /* BuilderGenerator.kt:175 */
    8     13   
    pub fn builder() -> crate::operation::malformed_timestamp_path_default::builders::MalformedTimestampPathDefaultOutputBuilder {
          14  +
        /* BuilderGenerator.kt:176 */
    9     15   
        crate::operation::malformed_timestamp_path_default::builders::MalformedTimestampPathDefaultOutputBuilder::default()
          16  +
        /* BuilderGenerator.kt:175 */
   10     17   
    }
          18  +
    /* ClientCodegenVisitor.kt:237 */
   11     19   
}
   12     20   
   13         -
/// A builder for [`MalformedTimestampPathDefaultOutput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput).
          21  +
/// /* BuilderGenerator.kt:342 */A builder for [`MalformedTimestampPathDefaultOutput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput).
          22  +
/* RustType.kt:516 */
   14     23   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          24  +
/* RustType.kt:516 */
   15     25   
#[non_exhaustive]
   16         -
pub struct MalformedTimestampPathDefaultOutputBuilder {}
          26  +
/* BuilderGenerator.kt:345 */
          27  +
pub struct MalformedTimestampPathDefaultOutputBuilder {/* BuilderGenerator.kt:345 */}
          28  +
/* BuilderGenerator.kt:355 */
   17     29   
impl MalformedTimestampPathDefaultOutputBuilder {
   18         -
    /// Consumes the builder and constructs a [`MalformedTimestampPathDefaultOutput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput).
          30  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`MalformedTimestampPathDefaultOutput`](crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput).
          31  +
    /* BuilderGenerator.kt:253 */
   19     32   
    pub fn build(self) -> crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput {
   20         -
        crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput {}
          33  +
        /* BuilderGenerator.kt:477 */
          34  +
        crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput {
          35  +
        /* BuilderGenerator.kt:477 */}
          36  +
        /* BuilderGenerator.kt:253 */
   21     37   
    }
          38  +
    /* BuilderGenerator.kt:355 */
   22     39   
}

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_path_default/builders.rs

@@ -1,1 +124,142 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* CodegenDelegator.kt:255 */
    2      3   
pub use crate::operation::malformed_timestamp_path_default::_malformed_timestamp_path_default_output::MalformedTimestampPathDefaultOutputBuilder;
    3      4   
           5  +
/* CodegenDelegator.kt:255 */
    4      6   
pub use crate::operation::malformed_timestamp_path_default::_malformed_timestamp_path_default_input::MalformedTimestampPathDefaultInputBuilder;
    5      7   
           8  +
/* FluentBuilderGenerator.kt:408 */
    6      9   
impl crate::operation::malformed_timestamp_path_default::builders::MalformedTimestampPathDefaultInputBuilder {
    7     10   
    /// Sends a request with this input using the given client.
    8     11   
    pub async fn send_with(
    9     12   
        self,
   10     13   
        client: &crate::Client,
   11     14   
    ) -> ::std::result::Result<
   12     15   
        crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput,
   13     16   
        ::aws_smithy_runtime_api::client::result::SdkError<
   14     17   
            crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultError,
   15     18   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   16     19   
        >,
   17     20   
    > {
   18     21   
        let mut fluent_builder = client.malformed_timestamp_path_default();
   19     22   
        fluent_builder.inner = self;
   20     23   
        fluent_builder.send().await
   21     24   
    }
   22     25   
}
   23         -
/// Fluent builder constructing a request to `MalformedTimestampPathDefault`.
          26  +
/// /* FluentBuilderGenerator.kt:129 */Fluent builder constructing a request to `MalformedTimestampPathDefault`.
   24     27   
///
          28  +
/* RustType.kt:516 */
   25     29   
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
          30  +
/* FluentBuilderGenerator.kt:270 */
   26     31   
pub struct MalformedTimestampPathDefaultFluentBuilder {
   27     32   
    handle: ::std::sync::Arc<crate::client::Handle>,
   28     33   
    inner: crate::operation::malformed_timestamp_path_default::builders::MalformedTimestampPathDefaultInputBuilder,
   29     34   
    config_override: ::std::option::Option<crate::config::Builder>,
   30     35   
}
          36  +
/* FluentBuilderGenerator.kt:381 */
   31     37   
impl
   32     38   
    crate::client::customize::internal::CustomizableSend<
   33     39   
        crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput,
   34     40   
        crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultError,
   35     41   
    > for MalformedTimestampPathDefaultFluentBuilder
   36     42   
{
   37     43   
    fn send(
   38     44   
        self,
   39     45   
        config_override: crate::config::Builder,
   40     46   
    ) -> crate::client::customize::internal::BoxFuture<
   41     47   
        crate::client::customize::internal::SendResult<
   42     48   
            crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput,
   43     49   
            crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultError,
   44     50   
        >,
   45     51   
    > {
   46     52   
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
   47     53   
    }
   48     54   
}
          55  +
/* FluentBuilderGenerator.kt:282 */
   49     56   
impl MalformedTimestampPathDefaultFluentBuilder {
          57  +
    /* FluentBuilderGenerator.kt:288 */
   50     58   
    /// Creates a new `MalformedTimestampPathDefaultFluentBuilder`.
   51     59   
    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
   52     60   
        Self {
   53     61   
            handle,
   54     62   
            inner: ::std::default::Default::default(),
   55     63   
            config_override: ::std::option::Option::None,
   56     64   
        }
   57     65   
    }
          66  +
    /* FluentBuilderGenerator.kt:301 */
   58     67   
    /// Access the MalformedTimestampPathDefault as a reference.
   59     68   
    pub fn as_input(&self) -> &crate::operation::malformed_timestamp_path_default::builders::MalformedTimestampPathDefaultInputBuilder {
   60     69   
        &self.inner
   61     70   
    }
          71  +
    /* FluentBuilderGenerator.kt:145 */
   62     72   
    /// Sends the request and returns the response.
   63     73   
    ///
   64     74   
    /// If an error occurs, an `SdkError` will be returned with additional details that
   65     75   
    /// can be matched against.
   66     76   
    ///
   67     77   
    /// By default, any retryable failures will be retried twice. Retry behavior
   68     78   
    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
   69     79   
    /// set when configuring the client.
   70     80   
    pub async fn send(
   71     81   
        self,
   72     82   
    ) -> ::std::result::Result<
   73     83   
        crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput,
   74     84   
        ::aws_smithy_runtime_api::client::result::SdkError<
   75     85   
            crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultError,
   76     86   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   77     87   
        >,
   78     88   
    > {
   79     89   
        let input = self
   80     90   
            .inner
   81     91   
            .build()
   82     92   
            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
   83     93   
        let runtime_plugins = crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefault::operation_runtime_plugins(
   84     94   
            self.handle.runtime_plugins.clone(),
   85     95   
            &self.handle.conf,
   86     96   
            self.config_override,
   87     97   
        );
   88     98   
        crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefault::orchestrate(&runtime_plugins, input).await
   89     99   
    }
   90    100   
   91    101   
    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
   92    102   
    pub fn customize(
   93    103   
        self,
   94    104   
    ) -> crate::client::customize::CustomizableOperation<
   95    105   
        crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultOutput,
   96    106   
        crate::operation::malformed_timestamp_path_default::MalformedTimestampPathDefaultError,
   97    107   
        Self,
   98    108   
    > {
   99    109   
        crate::client::customize::CustomizableOperation::new(self)
  100    110   
    }
         111  +
    /* FluentBuilderGenerator.kt:315 */
  101    112   
    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
  102    113   
        self.set_config_override(::std::option::Option::Some(config_override.into()));
  103    114   
        self
  104    115   
    }
  105    116   
  106    117   
    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
  107    118   
        self.config_override = config_override;
  108    119   
        self
  109    120   
    }
         121  +
    /* FluentBuilderGenerator.kt:498 */
  110    122   
    #[allow(missing_docs)] // documentation missing in model
         123  +
                           /* FluentBuilderGenerator.kt:500 */
  111    124   
    pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
  112    125   
        self.inner = self.inner.timestamp(input);
  113    126   
        self
  114    127   
    }
         128  +
    /* FluentBuilderGenerator.kt:498 */
  115    129   
    #[allow(missing_docs)] // documentation missing in model
         130  +
                           /* FluentBuilderGenerator.kt:500 */
  116    131   
    pub fn set_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
  117    132   
        self.inner = self.inner.set_timestamp(input);
  118    133   
        self
  119    134   
    }
         135  +
    /* FluentBuilderGenerator.kt:518 */
  120    136   
    #[allow(missing_docs)] // documentation missing in model
         137  +
                           /* FluentBuilderGenerator.kt:520 */
  121    138   
    pub fn get_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
  122    139   
        self.inner.get_timestamp()
  123    140   
    }
         141  +
    /* FluentBuilderGenerator.kt:282 */
  124    142   
}

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_path_epoch.rs

@@ -1,1 +40,49 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* OperationGenerator.kt:77 */
    2      3   
/// Orchestration and serialization glue logic for `MalformedTimestampPathEpoch`.
           4  +
/* RustType.kt:516 */
    3      5   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
           6  +
/* RustType.kt:516 */
    4      7   
#[non_exhaustive]
           8  +
/* OperationGenerator.kt:84 */
    5      9   
pub struct MalformedTimestampPathEpoch;
          10  +
/* OperationGenerator.kt:85 */
    6     11   
impl MalformedTimestampPathEpoch {
    7         -
    /// Creates a new `MalformedTimestampPathEpoch`
          12  +
    /// /* OperationGenerator.kt:86 */Creates a new `MalformedTimestampPathEpoch`
          13  +
    /* OperationGenerator.kt:87 */
    8     14   
    pub fn new() -> Self {
          15  +
        /* OperationGenerator.kt:88 */
    9     16   
        Self
          17  +
        /* OperationGenerator.kt:87 */
   10     18   
    }
          19  +
    /* OperationGenerator.kt:138 */
   11     20   
    pub(crate) async fn orchestrate(
   12     21   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     22   
        input: crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput,
   14     23   
    ) -> ::std::result::Result<
   15     24   
        crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochOutput,
   16     25   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     26   
            crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochError,
   18     27   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     28   
        >,
   20     29   
    > {
@@ -63,72 +342,413 @@
   83     92   
                runtime_plugins = runtime_plugins.with_operation_plugin(plugin);
   84     93   
            }
   85     94   
            runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new(
   86     95   
                config_override,
   87     96   
                client_config.config.clone(),
   88     97   
                &client_config.runtime_components,
   89     98   
            ));
   90     99   
        }
   91    100   
        runtime_plugins
   92    101   
    }
         102  +
    /* OperationGenerator.kt:85 */
   93    103   
}
         104  +
/* OperationRuntimePluginGenerator.kt:55 */
   94    105   
impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for MalformedTimestampPathEpoch {
   95    106   
    fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> {
   96    107   
        let mut cfg = ::aws_smithy_types::config_bag::Layer::new("MalformedTimestampPathEpoch");
   97    108   
   98    109   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new(
   99    110   
            MalformedTimestampPathEpochRequestSerializer,
  100    111   
        ));
  101    112   
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new(
  102    113   
            MalformedTimestampPathEpochResponseDeserializer,
  103    114   
        ));
  104    115   
  105    116   
        cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new(
  106    117   
            ::aws_smithy_runtime_api::client::auth::static_resolver::StaticAuthSchemeOptionResolverParams::new(),
  107    118   
        ));
  108    119   
  109    120   
        cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new(
  110    121   
            "MalformedTimestampPathEpoch",
  111    122   
            "Rest Json Protocol",
  112    123   
        ));
  113    124   
  114    125   
        ::std::option::Option::Some(cfg.freeze())
  115    126   
    }
  116    127   
  117    128   
    fn runtime_components(
  118    129   
        &self,
  119    130   
        _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
  120    131   
    ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> {
  121    132   
        #[allow(unused_mut)]
  122    133   
        let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("MalformedTimestampPathEpoch")
  123    134   
            .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default())
  124    135   
            .with_interceptor(MalformedTimestampPathEpochEndpointParamsInterceptor)
  125    136   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::<
  126    137   
                crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochError,
  127    138   
            >::new())
  128    139   
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::<
  129    140   
                crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochError,
  130    141   
            >::new());
  131    142   
  132    143   
        ::std::borrow::Cow::Owned(rcb)
  133    144   
    }
  134    145   
}
  135    146   
         147  +
/* ResponseDeserializerGenerator.kt:64 */
  136    148   
#[derive(Debug)]
  137    149   
struct MalformedTimestampPathEpochResponseDeserializer;
  138    150   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for MalformedTimestampPathEpochResponseDeserializer {
  139    151   
    fn deserialize_nonstreaming(
  140    152   
        &self,
  141    153   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
  142    154   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  143    155   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  144    156   
        let headers = response.headers();
  145    157   
        let body = response.body().bytes().expect("body loaded");
  146    158   
        #[allow(unused_mut)]
  147    159   
        let mut force_error = false;
  148    160   
  149    161   
        let parse_result = if !success && status != 200 || force_error {
  150    162   
            crate::protocol_serde::shape_malformed_timestamp_path_epoch::de_malformed_timestamp_path_epoch_http_error(status, headers, body)
  151    163   
        } else {
  152    164   
            crate::protocol_serde::shape_malformed_timestamp_path_epoch::de_malformed_timestamp_path_epoch_http_response(status, headers, body)
  153    165   
        };
  154    166   
        crate::protocol_serde::type_erase_result(parse_result)
  155    167   
    }
  156    168   
}
         169  +
/* RequestSerializerGenerator.kt:67 */
  157    170   
#[derive(Debug)]
  158    171   
struct MalformedTimestampPathEpochRequestSerializer;
  159    172   
impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for MalformedTimestampPathEpochRequestSerializer {
  160    173   
    #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
  161    174   
    fn serialize_input(
  162    175   
        &self,
  163    176   
        input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
  164    177   
        _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  165    178   
    ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
  166    179   
        let input = input
  167    180   
            .downcast::<crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput>()
  168    181   
            .expect("correct type");
  169    182   
        let _header_serialization_settings = _cfg
  170    183   
            .load::<crate::serialization_settings::HeaderSerializationSettings>()
  171    184   
            .cloned()
  172    185   
            .unwrap_or_default();
  173    186   
        let mut request_builder = {
  174    187   
            fn uri_base(
  175    188   
                _input: &crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput,
  176    189   
                output: &mut ::std::string::String,
  177    190   
            ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
  178    191   
                use ::std::fmt::Write as _;
  179    192   
                let input_1 = &_input.timestamp;
  180    193   
                let input_1 = input_1
  181    194   
                    .as_ref()
  182    195   
                    .ok_or_else(|| ::aws_smithy_types::error::operation::BuildError::missing_field("timestamp", "cannot be empty or unset"))?;
  183    196   
                let timestamp = ::aws_smithy_http::label::fmt_timestamp(input_1, ::aws_smithy_types::date_time::Format::EpochSeconds)?;
  184    197   
                if timestamp.is_empty() {
  185    198   
                    return ::std::result::Result::Err(::aws_smithy_types::error::operation::BuildError::missing_field(
  186    199   
                        "timestamp",
  187    200   
                        "cannot be empty or unset",
  188    201   
                    ));
  189    202   
                }
  190    203   
                ::std::write!(output, "/MalformedTimestampPathEpoch/{timestamp}", timestamp = timestamp).expect("formatting should succeed");
  191    204   
                ::std::result::Result::Ok(())
  192    205   
            }
  193    206   
            #[allow(clippy::unnecessary_wraps)]
  194    207   
            fn update_http_builder(
  195    208   
                input: &crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput,
  196    209   
                builder: ::http::request::Builder,
  197    210   
            ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
  198    211   
                let mut uri = ::std::string::String::new();
  199    212   
                uri_base(input, &mut uri)?;
  200    213   
                ::std::result::Result::Ok(builder.method("POST").uri(uri))
  201    214   
            }
  202    215   
            let mut builder = update_http_builder(&input, ::http::request::Builder::new())?;
  203    216   
            builder
  204    217   
        };
  205    218   
        let body = ::aws_smithy_types::body::SdkBody::from("");
  206    219   
  207    220   
        ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
  208    221   
    }
  209    222   
}
         223  +
/* EndpointParamsInterceptorGenerator.kt:86 */
  210    224   
#[derive(Debug)]
  211    225   
struct MalformedTimestampPathEpochEndpointParamsInterceptor;
  212    226   
  213    227   
impl ::aws_smithy_runtime_api::client::interceptors::Intercept for MalformedTimestampPathEpochEndpointParamsInterceptor {
  214    228   
    fn name(&self) -> &'static str {
  215    229   
        "MalformedTimestampPathEpochEndpointParamsInterceptor"
  216    230   
    }
  217    231   
  218    232   
    fn read_before_execution(
  219    233   
        &self,
  220    234   
        context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef<
  221    235   
            '_,
  222    236   
            ::aws_smithy_runtime_api::client::interceptors::context::Input,
  223    237   
            ::aws_smithy_runtime_api::client::interceptors::context::Output,
  224    238   
            ::aws_smithy_runtime_api::client::interceptors::context::Error,
  225    239   
        >,
  226    240   
        cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  227    241   
    ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
  228    242   
        let _input = context
  229    243   
            .input()
  230    244   
            .downcast_ref::<MalformedTimestampPathEpochInput>()
  231    245   
            .ok_or("failed to downcast to MalformedTimestampPathEpochInput")?;
  232    246   
  233    247   
        let params = crate::config::endpoint::Params::builder().build().map_err(|err| {
  234    248   
            ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  235    249   
        })?;
  236    250   
        cfg.interceptor_state()
  237    251   
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  238    252   
        ::std::result::Result::Ok(())
  239    253   
    }
  240    254   
}
  241    255   
  242    256   
// The get_* functions below are generated from JMESPath expressions in the
  243    257   
// operationContextParams trait. They target the operation's input shape.
  244    258   
         259  +
/* OperationErrorGenerator.kt:79 */
  245    260   
/// Error type for the `MalformedTimestampPathEpochError` operation.
         261  +
/* RustType.kt:516 */
  246    262   
#[non_exhaustive]
         263  +
/* RustType.kt:516 */
  247    264   
#[derive(::std::fmt::Debug)]
  248         -
pub enum MalformedTimestampPathEpochError {
         265  +
pub /* OperationErrorGenerator.kt:81 */ enum MalformedTimestampPathEpochError {
         266  +
    /* OperationErrorGenerator.kt:88 */
  249    267   
    /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
  250    268   
    #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
  251    269   
    variable wildcard pattern and check `.code()`:
  252    270   
     \
  253    271   
    &nbsp;&nbsp;&nbsp;`err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
  254    272   
     \
  255    273   
    See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-MalformedTimestampPathEpochError) for what information is available for the error.")]
  256    274   
    Unhandled(crate::error::sealed_unhandled::Unhandled),
         275  +
    /* OperationErrorGenerator.kt:81 */
  257    276   
}
         277  +
/* OperationErrorGenerator.kt:218 */
  258    278   
impl MalformedTimestampPathEpochError {
         279  +
    /* OperationErrorGenerator.kt:219 */
  259    280   
    /// Creates the `MalformedTimestampPathEpochError::Unhandled` variant from any error type.
  260    281   
    pub fn unhandled(
  261    282   
        err: impl ::std::convert::Into<::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>>,
  262    283   
    ) -> Self {
  263    284   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  264    285   
            source: err.into(),
  265    286   
            meta: ::std::default::Default::default(),
  266    287   
        })
  267    288   
    }
  268    289   
  269    290   
    /// Creates the `MalformedTimestampPathEpochError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata).
  270    291   
    pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self {
  271    292   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  272    293   
            source: err.clone().into(),
  273    294   
            meta: err,
  274    295   
        })
  275    296   
    }
  276         -
    ///
         297  +
    /// /* OperationErrorGenerator.kt:236 */
  277    298   
    /// Returns error metadata, which includes the error code, message,
  278    299   
    /// request ID, and potentially additional information.
  279    300   
    ///
         301  +
    /* OperationErrorGenerator.kt:242 */
  280    302   
    pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         303  +
        /* OperationErrorGenerator.kt:243 */
  281    304   
        match self {
  282         -
            Self::Unhandled(e) => &e.meta,
         305  +
            /* OperationErrorGenerator.kt:251 */ Self::Unhandled(e) => &e.meta,
         306  +
            /* OperationErrorGenerator.kt:243 */
  283    307   
        }
         308  +
        /* OperationErrorGenerator.kt:242 */
  284    309   
    }
         310  +
    /* OperationErrorGenerator.kt:218 */
  285    311   
}
         312  +
/* OperationErrorGenerator.kt:269 */
  286    313   
impl ::std::error::Error for MalformedTimestampPathEpochError {
         314  +
    /* OperationErrorGenerator.kt:270 */
  287    315   
    fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> {
         316  +
        /* OperationErrorGenerator.kt:318 */
  288    317   
        match self {
  289         -
            Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source),
         318  +
            /* OperationErrorGenerator.kt:326 */
         319  +
            Self::Unhandled(_inner) => {
         320  +
                /* OperationErrorGenerator.kt:279 */
         321  +
                ::std::option::Option::Some(&*_inner.source)
         322  +
                /* OperationErrorGenerator.kt:326 */
         323  +
            } /* OperationErrorGenerator.kt:318 */
  290    324   
        }
         325  +
        /* OperationErrorGenerator.kt:270 */
  291    326   
    }
         327  +
    /* OperationErrorGenerator.kt:269 */
  292    328   
}
         329  +
/* OperationErrorGenerator.kt:133 */
  293    330   
impl ::std::fmt::Display for MalformedTimestampPathEpochError {
         331  +
    /* OperationErrorGenerator.kt:134 */
  294    332   
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
         333  +
        /* OperationErrorGenerator.kt:318 */
  295    334   
        match self {
         335  +
            /* OperationErrorGenerator.kt:326 */
  296    336   
            Self::Unhandled(_inner) => {
         337  +
                /* OperationErrorGenerator.kt:139 */
  297    338   
                if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
  298    339   
                    write!(f, "unhandled error ({code})")
  299    340   
                } else {
  300    341   
                    f.write_str("unhandled error")
  301    342   
                }
         343  +
                /* OperationErrorGenerator.kt:326 */
         344  +
            } /* OperationErrorGenerator.kt:318 */
  302    345   
        }
         346  +
        /* OperationErrorGenerator.kt:134 */
  303    347   
    }
  304         -
    }
         348  +
    /* OperationErrorGenerator.kt:133 */
  305    349   
}
         350  +
/* OperationErrorGenerator.kt:182 */
  306    351   
impl ::aws_smithy_types::retry::ProvideErrorKind for MalformedTimestampPathEpochError {
         352  +
    /* OperationErrorGenerator.kt:186 */
  307    353   
    fn code(&self) -> ::std::option::Option<&str> {
         354  +
        /* OperationErrorGenerator.kt:187 */
  308    355   
        ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self)
         356  +
        /* OperationErrorGenerator.kt:186 */
  309    357   
    }
         358  +
    /* OperationErrorGenerator.kt:190 */
  310    359   
    fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> {
         360  +
        /* OperationErrorGenerator.kt:197 */
  311    361   
        ::std::option::Option::None
         362  +
        /* OperationErrorGenerator.kt:190 */
  312    363   
    }
         364  +
    /* OperationErrorGenerator.kt:182 */
  313    365   
}
         366  +
/* OperationErrorGenerator.kt:163 */
  314    367   
impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for MalformedTimestampPathEpochError {
         368  +
    /* OperationErrorGenerator.kt:164 */
  315    369   
    fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
         370  +
        /* OperationErrorGenerator.kt:318 */
  316    371   
        match self {
  317         -
            Self::Unhandled(_inner) => &_inner.meta,
         372  +
            /* OperationErrorGenerator.kt:326 */
         373  +
            Self::Unhandled(_inner) => {
         374  +
                /* OperationErrorGenerator.kt:168 */
         375  +
                &_inner.meta
         376  +
                /* OperationErrorGenerator.kt:326 */
         377  +
            } /* OperationErrorGenerator.kt:318 */
  318    378   
        }
         379  +
        /* OperationErrorGenerator.kt:164 */
  319    380   
    }
         381  +
    /* OperationErrorGenerator.kt:163 */
  320    382   
}
         383  +
/* OperationErrorGenerator.kt:109 */
  321    384   
impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for MalformedTimestampPathEpochError {
         385  +
    /* OperationErrorGenerator.kt:110 */
  322    386   
    fn create_unhandled_error(
  323    387   
        source: ::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>,
  324    388   
        meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
  325    389   
    ) -> Self {
         390  +
        /* OperationErrorGenerator.kt:121 */
  326    391   
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  327    392   
            source,
  328    393   
            meta: meta.unwrap_or_default(),
  329    394   
        })
         395  +
        /* OperationErrorGenerator.kt:110 */
  330    396   
    }
         397  +
    /* OperationErrorGenerator.kt:109 */
  331    398   
}
  332    399   
         400  +
/* CodegenDelegator.kt:255 */
  333    401   
pub use crate::operation::malformed_timestamp_path_epoch::_malformed_timestamp_path_epoch_output::MalformedTimestampPathEpochOutput;
  334    402   
         403  +
/* CodegenDelegator.kt:255 */
  335    404   
pub use crate::operation::malformed_timestamp_path_epoch::_malformed_timestamp_path_epoch_input::MalformedTimestampPathEpochInput;
  336    405   
         406  +
/* RustModule.kt:172 */
  337    407   
mod _malformed_timestamp_path_epoch_input;
  338    408   
         409  +
/* RustModule.kt:172 */
  339    410   
mod _malformed_timestamp_path_epoch_output;
  340    411   
  341         -
/// Builders
         412  +
/// /* CodegenDelegator.kt:51 */Builders
  342    413   
pub mod builders;

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_path_epoch/_malformed_timestamp_path_epoch_input.rs

@@ -1,1 +53,97 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct MalformedTimestampPathEpochInput {
           8  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampPathEpochInput {
           9  +
    /* StructureGenerator.kt:231 */
    6     10   
    #[allow(missing_docs)] // documentation missing in model
    7     11   
    pub timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          12  +
    /* StructureGenerator.kt:201 */
    8     13   
}
          14  +
/* StructureGenerator.kt:135 */
    9     15   
impl MalformedTimestampPathEpochInput {
          16  +
    /* StructureGenerator.kt:231 */
   10     17   
    #[allow(missing_docs)] // documentation missing in model
          18  +
                           /* StructureGenerator.kt:166 */
   11     19   
    pub fn timestamp(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
          20  +
        /* StructureGenerator.kt:170 */
   12     21   
        self.timestamp.as_ref()
          22  +
        /* StructureGenerator.kt:166 */
   13     23   
    }
          24  +
    /* StructureGenerator.kt:135 */
   14     25   
}
          26  +
/* ClientCodegenVisitor.kt:237 */
   15     27   
impl MalformedTimestampPathEpochInput {
   16         -
    /// Creates a new builder-style object to manufacture [`MalformedTimestampPathEpochInput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput).
          28  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`MalformedTimestampPathEpochInput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput).
          29  +
    /* BuilderGenerator.kt:175 */
   17     30   
    pub fn builder() -> crate::operation::malformed_timestamp_path_epoch::builders::MalformedTimestampPathEpochInputBuilder {
          31  +
        /* BuilderGenerator.kt:176 */
   18     32   
        crate::operation::malformed_timestamp_path_epoch::builders::MalformedTimestampPathEpochInputBuilder::default()
          33  +
        /* BuilderGenerator.kt:175 */
   19     34   
    }
          35  +
    /* ClientCodegenVisitor.kt:237 */
   20     36   
}
   21     37   
   22         -
/// A builder for [`MalformedTimestampPathEpochInput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput).
          38  +
/// /* BuilderGenerator.kt:342 */A builder for [`MalformedTimestampPathEpochInput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput).
          39  +
/* RustType.kt:516 */
   23     40   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          41  +
/* RustType.kt:516 */
   24     42   
#[non_exhaustive]
          43  +
/* BuilderGenerator.kt:345 */
   25     44   
pub struct MalformedTimestampPathEpochInputBuilder {
   26         -
    pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          45  +
    /* BuilderGenerator.kt:275 */ pub(crate) timestamp: ::std::option::Option<::aws_smithy_types::DateTime>,
          46  +
    /* BuilderGenerator.kt:345 */
   27     47   
}
          48  +
/* BuilderGenerator.kt:355 */
   28     49   
impl MalformedTimestampPathEpochInputBuilder {
          50  +
    /* BuilderGenerator.kt:286 */
   29     51   
    #[allow(missing_docs)] // documentation missing in model
   30         -
    /// This field is required.
          52  +
    /// /* BuilderGenerator.kt:288 */This field is required.
          53  +
    /* BuilderGenerator.kt:291 */
   31     54   
    pub fn timestamp(mut self, input: ::aws_smithy_types::DateTime) -> Self {
          55  +
        /* BuilderGenerator.kt:292 */
   32     56   
        self.timestamp = ::std::option::Option::Some(input);
          57  +
        /* BuilderGenerator.kt:293 */
   33     58   
        self
          59  +
        /* BuilderGenerator.kt:291 */
   34     60   
    }
          61  +
    /* BuilderGenerator.kt:312 */
   35     62   
    #[allow(missing_docs)] // documentation missing in model
          63  +
                           /* BuilderGenerator.kt:314 */
   36     64   
    pub fn set_timestamp(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
          65  +
        /* BuilderGenerator.kt:315 */
   37     66   
        self.timestamp = input;
   38     67   
        self
          68  +
        /* BuilderGenerator.kt:314 */
   39     69   
    }
          70  +
    /* BuilderGenerator.kt:334 */
   40     71   
    #[allow(missing_docs)] // documentation missing in model
          72  +
                           /* BuilderGenerator.kt:336 */
   41     73   
    pub fn get_timestamp(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
          74  +
        /* BuilderGenerator.kt:337 */
   42     75   
        &self.timestamp
          76  +
        /* BuilderGenerator.kt:336 */
   43     77   
    }
   44         -
    /// Consumes the builder and constructs a [`MalformedTimestampPathEpochInput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput).
          78  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`MalformedTimestampPathEpochInput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput).
          79  +
    /* BuilderGenerator.kt:253 */
   45     80   
    pub fn build(
   46     81   
        self,
   47     82   
    ) -> ::std::result::Result<
   48     83   
        crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput,
   49     84   
        ::aws_smithy_types::error::operation::BuildError,
   50     85   
    > {
   51         -
        ::std::result::Result::Ok(crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput { timestamp: self.timestamp })
          86  +
        /* BuilderGenerator.kt:254 */
          87  +
        ::std::result::Result::Ok(
          88  +
            /* BuilderGenerator.kt:477 */
          89  +
            crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochInput {
          90  +
                /* BuilderGenerator.kt:481 */ timestamp: self.timestamp,
          91  +
                /* BuilderGenerator.kt:477 */
          92  +
            }, /* BuilderGenerator.kt:254 */
          93  +
        )
          94  +
        /* BuilderGenerator.kt:253 */
   52     95   
    }
          96  +
    /* BuilderGenerator.kt:355 */
   53     97   
}

tmp-codegen-diff/codegen-client-test/rest_json/rust-client-codegen/src/operation/malformed_timestamp_path_epoch/_malformed_timestamp_path_epoch_output.rs

@@ -1,1 +22,39 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
           2  +
/* StructureGenerator.kt:197 */
    2      3   
#[allow(missing_docs)] // documentation missing in model
           4  +
/* RustType.kt:516 */
    3      5   
#[non_exhaustive]
           6  +
/* RustType.kt:516 */
    4      7   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct MalformedTimestampPathEpochOutput {}
           8  +
pub /* StructureGenerator.kt:201 */ struct MalformedTimestampPathEpochOutput {/* StructureGenerator.kt:201 */}
           9  +
/* ClientCodegenVisitor.kt:237 */
    6     10   
impl MalformedTimestampPathEpochOutput {
    7         -
    /// Creates a new builder-style object to manufacture [`MalformedTimestampPathEpochOutput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochOutput).
          11  +
    /// /* BuilderGenerator.kt:173 */Creates a new builder-style object to manufacture [`MalformedTimestampPathEpochOutput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochOutput).
          12  +
    /* BuilderGenerator.kt:175 */
    8     13   
    pub fn builder() -> crate::operation::malformed_timestamp_path_epoch::builders::MalformedTimestampPathEpochOutputBuilder {
          14  +
        /* BuilderGenerator.kt:176 */
    9     15   
        crate::operation::malformed_timestamp_path_epoch::builders::MalformedTimestampPathEpochOutputBuilder::default()
          16  +
        /* BuilderGenerator.kt:175 */
   10     17   
    }
          18  +
    /* ClientCodegenVisitor.kt:237 */
   11     19   
}
   12     20   
   13         -
/// A builder for [`MalformedTimestampPathEpochOutput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochOutput).
          21  +
/// /* BuilderGenerator.kt:342 */A builder for [`MalformedTimestampPathEpochOutput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochOutput).
          22  +
/* RustType.kt:516 */
   14     23   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
          24  +
/* RustType.kt:516 */
   15     25   
#[non_exhaustive]
   16         -
pub struct MalformedTimestampPathEpochOutputBuilder {}
          26  +
/* BuilderGenerator.kt:345 */
          27  +
pub struct MalformedTimestampPathEpochOutputBuilder {/* BuilderGenerator.kt:345 */}
          28  +
/* BuilderGenerator.kt:355 */
   17     29   
impl MalformedTimestampPathEpochOutputBuilder {
   18         -
    /// Consumes the builder and constructs a [`MalformedTimestampPathEpochOutput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochOutput).
          30  +
    /// /* BuilderGenerator.kt:240 */Consumes the builder and constructs a [`MalformedTimestampPathEpochOutput`](crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochOutput).
          31  +
    /* BuilderGenerator.kt:253 */
   19     32   
    pub fn build(self) -> crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochOutput {
   20         -
        crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochOutput {}
          33  +
        /* BuilderGenerator.kt:477 */
          34  +
        crate::operation::malformed_timestamp_path_epoch::MalformedTimestampPathEpochOutput {
          35  +
        /* BuilderGenerator.kt:477 */}
          36  +
        /* BuilderGenerator.kt:253 */
   21     37   
    }
          38  +
    /* BuilderGenerator.kt:355 */
   22     39   
}