AWS SDK

AWS SDK

rev. 32b1b3c3761061baed26023be3219639e42d7d12 (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_nat_gateway_address/_disassociate_nat_gateway_address_input.rs

@@ -17,17 +200,203 @@
   37     37   
    "com.amazonaws.ec2.synthetic",
   38     38   
    "DisassociateNatGatewayAddressInput",
   39     39   
);
   40     40   
static DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_NAT_GATEWAY_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   41     41   
    ::aws_smithy_schema::ShapeId::from_static(
   42     42   
        "com.amazonaws.ec2.synthetic#DisassociateNatGatewayAddressInput$NatGatewayId",
   43     43   
        "com.amazonaws.ec2.synthetic",
   44     44   
        "DisassociateNatGatewayAddressInput",
   45     45   
    ),
   46     46   
    ::aws_smithy_schema::ShapeType::String,
   47         -
    "nat_gateway_id",
          47  +
    "NatGatewayId",
   48     48   
    0,
   49     49   
);
   50     50   
static DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_ASSOCIATION_IDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   51     51   
    ::aws_smithy_schema::ShapeId::from_static(
   52     52   
        "com.amazonaws.ec2.synthetic#DisassociateNatGatewayAddressInput$AssociationIds",
   53     53   
        "com.amazonaws.ec2.synthetic",
   54     54   
        "DisassociateNatGatewayAddressInput",
   55     55   
    ),
   56     56   
    ::aws_smithy_schema::ShapeType::List,
   57         -
    "association_ids",
          57  +
    "AssociationIds",
   58     58   
    1,
   59     59   
)
   60     60   
.with_xml_name("AssociationId");
   61     61   
static DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_MAX_DRAIN_DURATION_SECONDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   62     62   
    ::aws_smithy_schema::ShapeId::from_static(
   63     63   
        "com.amazonaws.ec2.synthetic#DisassociateNatGatewayAddressInput$MaxDrainDurationSeconds",
   64     64   
        "com.amazonaws.ec2.synthetic",
   65     65   
        "DisassociateNatGatewayAddressInput",
   66     66   
    ),
   67     67   
    ::aws_smithy_schema::ShapeType::Integer,
   68         -
    "max_drain_duration_seconds",
          68  +
    "MaxDrainDurationSeconds",
   69     69   
    2,
   70     70   
);
   71     71   
static DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   72     72   
    ::aws_smithy_schema::ShapeId::from_static(
   73     73   
        "com.amazonaws.ec2.synthetic#DisassociateNatGatewayAddressInput$DryRun",
   74     74   
        "com.amazonaws.ec2.synthetic",
   75     75   
        "DisassociateNatGatewayAddressInput",
   76     76   
    ),
   77     77   
    ::aws_smithy_schema::ShapeType::Boolean,
   78         -
    "dry_run",
          78  +
    "DryRun",
   79     79   
    3,
   80     80   
);
   81     81   
static DISASSOCIATENATGATEWAYADDRESSINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   82     82   
    DISASSOCIATENATGATEWAYADDRESSINPUT_SCHEMA_ID,
   83     83   
    ::aws_smithy_schema::ShapeType::Structure,
   84     84   
    &[
   85     85   
        &DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_NAT_GATEWAY_ID,
   86     86   
        &DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_ASSOCIATION_IDS,
   87     87   
        &DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_MAX_DRAIN_DURATION_SECONDS,
   88     88   
        &DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_DRY_RUN,
   89     89   
    ],
   90     90   
);
   91     91   
impl DisassociateNatGatewayAddressInput {
   92     92   
    /// The schema for this shape.
   93     93   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DISASSOCIATENATGATEWAYADDRESSINPUT_SCHEMA;
   94     94   
}
   95     95   
impl ::aws_smithy_schema::serde::SerializableStruct for DisassociateNatGatewayAddressInput {
   96     96   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   97     97   
    fn serialize_members(
   98     98   
        &self,
   99     99   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  100    100   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  101    101   
        if let Some(ref val) = self.nat_gateway_id {
  102    102   
            ser.write_string(&DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_NAT_GATEWAY_ID, val)?;
  103    103   
        }
  104    104   
        if let Some(ref val) = self.association_ids {
  105    105   
            ser.write_list(
  106    106   
                &DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_ASSOCIATION_IDS,
  107    107   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  108    108   
                    for item in val {
  109    109   
                        ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
  110    110   
                    }
  111    111   
                    Ok(())
  112    112   
                },
  113    113   
            )?;
  114    114   
        }
  115    115   
        if let Some(ref val) = self.max_drain_duration_seconds {
  116    116   
            ser.write_integer(&DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_MAX_DRAIN_DURATION_SECONDS, *val)?;
  117    117   
        }
  118    118   
        if let Some(ref val) = self.dry_run {
  119    119   
            ser.write_boolean(&DISASSOCIATENATGATEWAYADDRESSINPUT_MEMBER_DRY_RUN, *val)?;
  120    120   
        }
  121    121   
        Ok(())
  122    122   
    }
  123    123   
}
  124    124   
impl DisassociateNatGatewayAddressInput {
  125    125   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  126         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  127         -
        deserializer: &mut D,
         126  +
    pub fn deserialize(
         127  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  128    128   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  129    129   
        #[allow(unused_variables, unused_mut)]
  130    130   
        let mut builder = Self::builder();
  131    131   
        #[allow(
  132    132   
            unused_variables,
  133    133   
            unreachable_code,
  134    134   
            clippy::single_match,
  135    135   
            clippy::match_single_binding,
  136    136   
            clippy::diverging_sub_expression
  137    137   
        )]
  138         -
        deserializer.read_struct(&DISASSOCIATENATGATEWAYADDRESSINPUT_SCHEMA, (), |_, member, deser| {
         138  +
        deserializer.read_struct(&DISASSOCIATENATGATEWAYADDRESSINPUT_SCHEMA, &mut |member, deser| {
  139    139   
            match member.member_index() {
  140    140   
                Some(0) => {
  141    141   
                    builder.nat_gateway_id = Some(deser.read_string(member)?);
  142    142   
                }
  143    143   
                Some(1) => {
  144         -
                    builder.association_ids = Some({
  145         -
                        let container = if let Some(cap) = deser.container_size() {
  146         -
                            Vec::with_capacity(cap)
  147         -
                        } else {
  148         -
                            Vec::new()
  149         -
                        };
  150         -
                        deser.read_list(member, container, |mut list, deser| {
  151         -
                            list.push(deser.read_string(member)?);
  152         -
                            Ok(list)
  153         -
                        })?
  154         -
                    });
         144  +
                    builder.association_ids = Some(deser.read_string_list(member)?);
  155    145   
                }
  156    146   
                Some(2) => {
  157    147   
                    builder.max_drain_duration_seconds = Some(deser.read_integer(member)?);
  158    148   
                }
  159    149   
                Some(3) => {
  160    150   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  161    151   
                }
  162    152   
                _ => {}
  163    153   
            }
  164    154   
            Ok(())
  165    155   
        })?;
         156  +
        builder.nat_gateway_id = builder.nat_gateway_id.or(Some(String::new()));
         157  +
        builder.association_ids = builder.association_ids.or(Some(Vec::new()));
  166    158   
        builder
  167    159   
            .build()
  168    160   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  169    161   
    }
  170    162   
}
         163  +
impl DisassociateNatGatewayAddressInput {
         164  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         165  +
    pub fn deserialize_with_response(
         166  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         167  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         168  +
        _status: u16,
         169  +
        _body: &[u8],
         170  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         171  +
        Self::deserialize(deserializer)
         172  +
    }
         173  +
}
  171    174   
impl DisassociateNatGatewayAddressInput {
  172    175   
    /// Creates a new builder-style object to manufacture [`DisassociateNatGatewayAddressInput`](crate::operation::disassociate_nat_gateway_address::DisassociateNatGatewayAddressInput).
  173    176   
    pub fn builder() -> crate::operation::disassociate_nat_gateway_address::builders::DisassociateNatGatewayAddressInputBuilder {
  174    177   
        crate::operation::disassociate_nat_gateway_address::builders::DisassociateNatGatewayAddressInputBuilder::default()
  175    178   
    }
  176    179   
}
  177    180   
  178    181   
/// A builder for [`DisassociateNatGatewayAddressInput`](crate::operation::disassociate_nat_gateway_address::DisassociateNatGatewayAddressInput).
  179    182   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  180    183   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_nat_gateway_address/_disassociate_nat_gateway_address_output.rs

@@ -6,6 +145,197 @@
   26     26   
    "com.amazonaws.ec2.synthetic",
   27     27   
    "DisassociateNatGatewayAddressOutput",
   28     28   
);
   29     29   
static DISASSOCIATENATGATEWAYADDRESSOUTPUT_MEMBER_NAT_GATEWAY_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   30     30   
    ::aws_smithy_schema::ShapeId::from_static(
   31     31   
        "com.amazonaws.ec2.synthetic#DisassociateNatGatewayAddressOutput$NatGatewayId",
   32     32   
        "com.amazonaws.ec2.synthetic",
   33     33   
        "DisassociateNatGatewayAddressOutput",
   34     34   
    ),
   35     35   
    ::aws_smithy_schema::ShapeType::String,
   36         -
    "nat_gateway_id",
          36  +
    "NatGatewayId",
   37     37   
    0,
   38     38   
)
   39     39   
.with_xml_name("natGatewayId");
   40     40   
static DISASSOCIATENATGATEWAYADDRESSOUTPUT_MEMBER_NAT_GATEWAY_ADDRESSES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   41     41   
    ::aws_smithy_schema::ShapeId::from_static(
   42     42   
        "com.amazonaws.ec2.synthetic#DisassociateNatGatewayAddressOutput$NatGatewayAddresses",
   43     43   
        "com.amazonaws.ec2.synthetic",
   44     44   
        "DisassociateNatGatewayAddressOutput",
   45     45   
    ),
   46     46   
    ::aws_smithy_schema::ShapeType::List,
   47         -
    "nat_gateway_addresses",
          47  +
    "NatGatewayAddresses",
   48     48   
    1,
   49     49   
)
   50     50   
.with_xml_name("natGatewayAddressSet");
          51  +
static DISASSOCIATENATGATEWAYADDRESSOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          52  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          53  +
    ::aws_smithy_schema::ShapeType::String,
          54  +
    "request_id",
          55  +
    2,
          56  +
)
          57  +
.with_http_header("x-amzn-requestid");
   51     58   
static DISASSOCIATENATGATEWAYADDRESSOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   52     59   
    DISASSOCIATENATGATEWAYADDRESSOUTPUT_SCHEMA_ID,
   53     60   
    ::aws_smithy_schema::ShapeType::Structure,
   54     61   
    &[
   55     62   
        &DISASSOCIATENATGATEWAYADDRESSOUTPUT_MEMBER_NAT_GATEWAY_ID,
   56     63   
        &DISASSOCIATENATGATEWAYADDRESSOUTPUT_MEMBER_NAT_GATEWAY_ADDRESSES,
          64  +
        &DISASSOCIATENATGATEWAYADDRESSOUTPUT_MEMBER__REQUEST_ID,
   57     65   
    ],
   58     66   
);
   59     67   
impl DisassociateNatGatewayAddressOutput {
   60     68   
    /// The schema for this shape.
   61     69   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DISASSOCIATENATGATEWAYADDRESSOUTPUT_SCHEMA;
   62     70   
}
   63     71   
impl ::aws_smithy_schema::serde::SerializableStruct for DisassociateNatGatewayAddressOutput {
   64     72   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   65     73   
    fn serialize_members(
   66     74   
        &self,
   67     75   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   68     76   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   69     77   
        if let Some(ref val) = self.nat_gateway_id {
   70     78   
            ser.write_string(&DISASSOCIATENATGATEWAYADDRESSOUTPUT_MEMBER_NAT_GATEWAY_ID, val)?;
   71     79   
        }
   72     80   
        if let Some(ref val) = self.nat_gateway_addresses {
   73     81   
            ser.write_list(
   74     82   
                &DISASSOCIATENATGATEWAYADDRESSOUTPUT_MEMBER_NAT_GATEWAY_ADDRESSES,
   75     83   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   76     84   
                    for item in val {
   77     85   
                        ser.write_struct(crate::types::NatGatewayAddress::SCHEMA, item)?;
   78     86   
                    }
   79     87   
                    Ok(())
   80     88   
                },
   81     89   
            )?;
   82     90   
        }
   83     91   
        Ok(())
   84     92   
    }
   85     93   
}
   86     94   
impl DisassociateNatGatewayAddressOutput {
   87     95   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   88         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   89         -
        deserializer: &mut D,
          96  +
    pub fn deserialize(
          97  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          98  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          99  +
        #[allow(unused_variables, unused_mut)]
         100  +
        let mut builder = Self::builder();
         101  +
        #[allow(
         102  +
            unused_variables,
         103  +
            unreachable_code,
         104  +
            clippy::single_match,
         105  +
            clippy::match_single_binding,
         106  +
            clippy::diverging_sub_expression
         107  +
        )]
         108  +
        deserializer.read_struct(&DISASSOCIATENATGATEWAYADDRESSOUTPUT_SCHEMA, &mut |member, deser| {
         109  +
            match member.member_index() {
         110  +
                Some(0) => {
         111  +
                    builder.nat_gateway_id = Some(deser.read_string(member)?);
         112  +
                }
         113  +
                Some(1) => {
         114  +
                    builder.nat_gateway_addresses = Some({
         115  +
                        let mut container = Vec::new();
         116  +
                        deser.read_list(member, &mut |deser| {
         117  +
                            container.push(crate::types::NatGatewayAddress::deserialize(deser)?);
         118  +
                            Ok(())
         119  +
                        })?;
         120  +
                        container
         121  +
                    });
         122  +
                }
         123  +
                Some(2) => {
         124  +
                    builder._request_id = Some(deser.read_string(member)?);
         125  +
                }
         126  +
                _ => {}
         127  +
            }
         128  +
            Ok(())
         129  +
        })?;
         130  +
        Ok(builder.build())
         131  +
    }
         132  +
}
         133  +
impl DisassociateNatGatewayAddressOutput {
         134  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         135  +
    /// Header-bound members are read directly from headers, avoiding runtime
         136  +
    /// member iteration overhead. Body members are read via the deserializer.
         137  +
    pub fn deserialize_with_response(
         138  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         139  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         140  +
        _status: u16,
         141  +
        _body: &[u8],
   90    142   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   91    143   
        #[allow(unused_variables, unused_mut)]
   92    144   
        let mut builder = Self::builder();
         145  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         146  +
            builder._request_id = Some(val.to_string());
         147  +
        }
   93    148   
        #[allow(
   94    149   
            unused_variables,
   95    150   
            unreachable_code,
   96    151   
            clippy::single_match,
   97    152   
            clippy::match_single_binding,
   98    153   
            clippy::diverging_sub_expression
   99    154   
        )]
  100         -
        deserializer.read_struct(&DISASSOCIATENATGATEWAYADDRESSOUTPUT_SCHEMA, (), |_, member, deser| {
         155  +
        deserializer.read_struct(&DISASSOCIATENATGATEWAYADDRESSOUTPUT_SCHEMA, &mut |member, deser| {
  101    156   
            match member.member_index() {
  102    157   
                Some(0) => {
  103    158   
                    builder.nat_gateway_id = Some(deser.read_string(member)?);
  104    159   
                }
  105    160   
                Some(1) => {
  106    161   
                    builder.nat_gateway_addresses = Some({
  107         -
                        let container = if let Some(cap) = deser.container_size() {
  108         -
                            Vec::with_capacity(cap)
  109         -
                        } else {
  110         -
                            Vec::new()
  111         -
                        };
  112         -
                        deser.read_list(member, container, |mut list, deser| {
  113         -
                            list.push(crate::types::NatGatewayAddress::deserialize(deser)?);
  114         -
                            Ok(list)
  115         -
                        })?
         162  +
                        let mut container = Vec::new();
         163  +
                        deser.read_list(member, &mut |deser| {
         164  +
                            container.push(crate::types::NatGatewayAddress::deserialize(deser)?);
         165  +
                            Ok(())
         166  +
                        })?;
         167  +
                        container
  116    168   
                    });
  117    169   
                }
  118    170   
                _ => {}
  119    171   
            }
  120    172   
            Ok(())
  121    173   
        })?;
  122    174   
        Ok(builder.build())
  123    175   
    }
  124    176   
}
  125    177   
impl ::aws_types::request_id::RequestId for DisassociateNatGatewayAddressOutput {

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_route_server.rs

@@ -1,1 +40,45 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `DisassociateRouteServer`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct DisassociateRouteServer;
    6      6   
impl DisassociateRouteServer {
    7      7   
    /// Creates a new `DisassociateRouteServer`
    8      8   
    pub fn new() -> Self {
    9      9   
        Self
   10     10   
    }
          11  +
    /// The schema for this operation's input shape.
          12  +
    pub const INPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::disassociate_route_server::DisassociateRouteServerInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          15  +
        crate::operation::disassociate_route_server::DisassociateRouteServerOutput::SCHEMA;
   11     16   
    pub(crate) async fn orchestrate(
   12     17   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     18   
        input: crate::operation::disassociate_route_server::DisassociateRouteServerInput,
   14     19   
    ) -> ::std::result::Result<
   15     20   
        crate::operation::disassociate_route_server::DisassociateRouteServerOutput,
   16     21   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     22   
            crate::operation::disassociate_route_server::DisassociateRouteServerError,
   18     23   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     24   
        >,
   20     25   
    > {
@@ -118,123 +180,186 @@
  138    143   
                crate::operation::disassociate_route_server::DisassociateRouteServerError,
  139    144   
            >::new());
  140    145   
  141    146   
        ::std::borrow::Cow::Owned(rcb)
  142    147   
    }
  143    148   
}
  144    149   
  145    150   
#[derive(Debug)]
  146    151   
struct DisassociateRouteServerResponseDeserializer;
  147    152   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for DisassociateRouteServerResponseDeserializer {
  148         -
    fn deserialize_nonstreaming(
         153  +
    fn deserialize_nonstreaming_with_config(
  149    154   
        &self,
  150    155   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         156  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  151    157   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  152    158   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  153    159   
        let headers = response.headers();
  154    160   
        let body = response.body().bytes().expect("body loaded");
  155    161   
        #[allow(unused_mut)]
  156    162   
        let mut force_error = false;
  157    163   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  158    164   
        let parse_result = if !success && status != 200 || force_error {
  159    165   
            crate::protocol_serde::shape_disassociate_route_server::de_disassociate_route_server_http_error(status, headers, body)
  160    166   
        } else {

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_route_server/_disassociate_route_server_input.rs

@@ -9,9 +156,169 @@
   29     29   
    "com.amazonaws.ec2.synthetic",
   30     30   
    "DisassociateRouteServerInput",
   31     31   
);
   32     32   
static DISASSOCIATEROUTESERVERINPUT_MEMBER_ROUTE_SERVER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   33     33   
    ::aws_smithy_schema::ShapeId::from_static(
   34     34   
        "com.amazonaws.ec2.synthetic#DisassociateRouteServerInput$RouteServerId",
   35     35   
        "com.amazonaws.ec2.synthetic",
   36     36   
        "DisassociateRouteServerInput",
   37     37   
    ),
   38     38   
    ::aws_smithy_schema::ShapeType::String,
   39         -
    "route_server_id",
          39  +
    "RouteServerId",
   40     40   
    0,
   41     41   
);
   42     42   
static DISASSOCIATEROUTESERVERINPUT_MEMBER_VPC_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   43     43   
    ::aws_smithy_schema::ShapeId::from_static(
   44     44   
        "com.amazonaws.ec2.synthetic#DisassociateRouteServerInput$VpcId",
   45     45   
        "com.amazonaws.ec2.synthetic",
   46     46   
        "DisassociateRouteServerInput",
   47     47   
    ),
   48     48   
    ::aws_smithy_schema::ShapeType::String,
   49         -
    "vpc_id",
          49  +
    "VpcId",
   50     50   
    1,
   51     51   
);
   52     52   
static DISASSOCIATEROUTESERVERINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   53     53   
    ::aws_smithy_schema::ShapeId::from_static(
   54     54   
        "com.amazonaws.ec2.synthetic#DisassociateRouteServerInput$DryRun",
   55     55   
        "com.amazonaws.ec2.synthetic",
   56     56   
        "DisassociateRouteServerInput",
   57     57   
    ),
   58     58   
    ::aws_smithy_schema::ShapeType::Boolean,
   59         -
    "dry_run",
          59  +
    "DryRun",
   60     60   
    2,
   61     61   
);
   62     62   
static DISASSOCIATEROUTESERVERINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   63     63   
    DISASSOCIATEROUTESERVERINPUT_SCHEMA_ID,
   64     64   
    ::aws_smithy_schema::ShapeType::Structure,
   65     65   
    &[
   66     66   
        &DISASSOCIATEROUTESERVERINPUT_MEMBER_ROUTE_SERVER_ID,
   67     67   
        &DISASSOCIATEROUTESERVERINPUT_MEMBER_VPC_ID,
   68     68   
        &DISASSOCIATEROUTESERVERINPUT_MEMBER_DRY_RUN,
   69     69   
    ],
   70     70   
);
   71     71   
impl DisassociateRouteServerInput {
   72     72   
    /// The schema for this shape.
   73     73   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DISASSOCIATEROUTESERVERINPUT_SCHEMA;
   74     74   
}
   75     75   
impl ::aws_smithy_schema::serde::SerializableStruct for DisassociateRouteServerInput {
   76     76   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   77     77   
    fn serialize_members(
   78     78   
        &self,
   79     79   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   80     80   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   81     81   
        if let Some(ref val) = self.route_server_id {
   82     82   
            ser.write_string(&DISASSOCIATEROUTESERVERINPUT_MEMBER_ROUTE_SERVER_ID, val)?;
   83     83   
        }
   84     84   
        if let Some(ref val) = self.vpc_id {
   85     85   
            ser.write_string(&DISASSOCIATEROUTESERVERINPUT_MEMBER_VPC_ID, val)?;
   86     86   
        }
   87     87   
        if let Some(ref val) = self.dry_run {
   88     88   
            ser.write_boolean(&DISASSOCIATEROUTESERVERINPUT_MEMBER_DRY_RUN, *val)?;
   89     89   
        }
   90     90   
        Ok(())
   91     91   
    }
   92     92   
}
   93     93   
impl DisassociateRouteServerInput {
   94     94   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   95         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   96         -
        deserializer: &mut D,
          95  +
    pub fn deserialize(
          96  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   97     97   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   98     98   
        #[allow(unused_variables, unused_mut)]
   99     99   
        let mut builder = Self::builder();
  100    100   
        #[allow(
  101    101   
            unused_variables,
  102    102   
            unreachable_code,
  103    103   
            clippy::single_match,
  104    104   
            clippy::match_single_binding,
  105    105   
            clippy::diverging_sub_expression
  106    106   
        )]
  107         -
        deserializer.read_struct(&DISASSOCIATEROUTESERVERINPUT_SCHEMA, (), |_, member, deser| {
         107  +
        deserializer.read_struct(&DISASSOCIATEROUTESERVERINPUT_SCHEMA, &mut |member, deser| {
  108    108   
            match member.member_index() {
  109    109   
                Some(0) => {
  110    110   
                    builder.route_server_id = Some(deser.read_string(member)?);
  111    111   
                }
  112    112   
                Some(1) => {
  113    113   
                    builder.vpc_id = Some(deser.read_string(member)?);
  114    114   
                }
  115    115   
                Some(2) => {
  116    116   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  117    117   
                }
  118    118   
                _ => {}
  119    119   
            }
  120    120   
            Ok(())
  121    121   
        })?;
         122  +
        builder.route_server_id = builder.route_server_id.or(Some(String::new()));
         123  +
        builder.vpc_id = builder.vpc_id.or(Some(String::new()));
  122    124   
        builder
  123    125   
            .build()
  124    126   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  125    127   
    }
  126    128   
}
         129  +
impl DisassociateRouteServerInput {
         130  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         131  +
    pub fn deserialize_with_response(
         132  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         133  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         134  +
        _status: u16,
         135  +
        _body: &[u8],
         136  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         137  +
        Self::deserialize(deserializer)
         138  +
    }
         139  +
}
  127    140   
impl DisassociateRouteServerInput {
  128    141   
    /// Creates a new builder-style object to manufacture [`DisassociateRouteServerInput`](crate::operation::disassociate_route_server::DisassociateRouteServerInput).
  129    142   
    pub fn builder() -> crate::operation::disassociate_route_server::builders::DisassociateRouteServerInputBuilder {
  130    143   
        crate::operation::disassociate_route_server::builders::DisassociateRouteServerInputBuilder::default()
  131    144   
    }
  132    145   
}
  133    146   
  134    147   
/// A builder for [`DisassociateRouteServerInput`](crate::operation::disassociate_route_server::DisassociateRouteServerInput).
  135    148   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  136    149   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_route_server/_disassociate_route_server_output.rs

@@ -1,1 +97,144 @@
   18     18   
    "com.amazonaws.ec2.synthetic",
   19     19   
    "DisassociateRouteServerOutput",
   20     20   
);
   21     21   
static DISASSOCIATEROUTESERVEROUTPUT_MEMBER_ROUTE_SERVER_ASSOCIATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   22     22   
    ::aws_smithy_schema::ShapeId::from_static(
   23     23   
        "com.amazonaws.ec2.synthetic#DisassociateRouteServerOutput$RouteServerAssociation",
   24     24   
        "com.amazonaws.ec2.synthetic",
   25     25   
        "DisassociateRouteServerOutput",
   26     26   
    ),
   27     27   
    ::aws_smithy_schema::ShapeType::Structure,
   28         -
    "route_server_association",
          28  +
    "RouteServerAssociation",
   29     29   
    0,
   30     30   
)
   31     31   
.with_xml_name("routeServerAssociation");
          32  +
static DISASSOCIATEROUTESERVEROUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          33  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          34  +
    ::aws_smithy_schema::ShapeType::String,
          35  +
    "request_id",
          36  +
    1,
          37  +
)
          38  +
.with_http_header("x-amzn-requestid");
   32     39   
static DISASSOCIATEROUTESERVEROUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   33     40   
    DISASSOCIATEROUTESERVEROUTPUT_SCHEMA_ID,
   34     41   
    ::aws_smithy_schema::ShapeType::Structure,
   35         -
    &[&DISASSOCIATEROUTESERVEROUTPUT_MEMBER_ROUTE_SERVER_ASSOCIATION],
          42  +
    &[
          43  +
        &DISASSOCIATEROUTESERVEROUTPUT_MEMBER_ROUTE_SERVER_ASSOCIATION,
          44  +
        &DISASSOCIATEROUTESERVEROUTPUT_MEMBER__REQUEST_ID,
          45  +
    ],
   36     46   
);
   37     47   
impl DisassociateRouteServerOutput {
   38     48   
    /// The schema for this shape.
   39     49   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DISASSOCIATEROUTESERVEROUTPUT_SCHEMA;
   40     50   
}
   41     51   
impl ::aws_smithy_schema::serde::SerializableStruct for DisassociateRouteServerOutput {
   42     52   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   43     53   
    fn serialize_members(
   44     54   
        &self,
   45     55   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   46     56   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   47     57   
        if let Some(ref val) = self.route_server_association {
   48     58   
            ser.write_struct(&DISASSOCIATEROUTESERVEROUTPUT_MEMBER_ROUTE_SERVER_ASSOCIATION, val)?;
   49     59   
        }
   50     60   
        Ok(())
   51     61   
    }
   52     62   
}
   53     63   
impl DisassociateRouteServerOutput {
   54     64   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   55         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   56         -
        deserializer: &mut D,
          65  +
    pub fn deserialize(
          66  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   57     67   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   58     68   
        #[allow(unused_variables, unused_mut)]
   59     69   
        let mut builder = Self::builder();
   60     70   
        #[allow(
   61     71   
            unused_variables,
   62     72   
            unreachable_code,
   63     73   
            clippy::single_match,
   64     74   
            clippy::match_single_binding,
   65     75   
            clippy::diverging_sub_expression
   66     76   
        )]
   67         -
        deserializer.read_struct(&DISASSOCIATEROUTESERVEROUTPUT_SCHEMA, (), |_, member, deser| {
          77  +
        deserializer.read_struct(&DISASSOCIATEROUTESERVEROUTPUT_SCHEMA, &mut |member, deser| {
          78  +
            match member.member_index() {
          79  +
                Some(0) => {
          80  +
                    builder.route_server_association = Some(crate::types::RouteServerAssociation::deserialize(deser)?);
          81  +
                }
          82  +
                Some(1) => {
          83  +
                    builder._request_id = Some(deser.read_string(member)?);
          84  +
                }
          85  +
                _ => {}
          86  +
            }
          87  +
            Ok(())
          88  +
        })?;
          89  +
        Ok(builder.build())
          90  +
    }
          91  +
}
          92  +
impl DisassociateRouteServerOutput {
          93  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          94  +
    /// Header-bound members are read directly from headers, avoiding runtime
          95  +
    /// member iteration overhead. Body members are read via the deserializer.
          96  +
    pub fn deserialize_with_response(
          97  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          98  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          99  +
        _status: u16,
         100  +
        _body: &[u8],
         101  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         102  +
        #[allow(unused_variables, unused_mut)]
         103  +
        let mut builder = Self::builder();
         104  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         105  +
            builder._request_id = Some(val.to_string());
         106  +
        }
         107  +
        #[allow(
         108  +
            unused_variables,
         109  +
            unreachable_code,
         110  +
            clippy::single_match,
         111  +
            clippy::match_single_binding,
         112  +
            clippy::diverging_sub_expression
         113  +
        )]
         114  +
        deserializer.read_struct(&DISASSOCIATEROUTESERVEROUTPUT_SCHEMA, &mut |member, deser| {
   68    115   
            match member.member_index() {
   69    116   
                Some(0) => {
   70    117   
                    builder.route_server_association = Some(crate::types::RouteServerAssociation::deserialize(deser)?);
   71    118   
                }
   72    119   
                _ => {}
   73    120   
            }
   74    121   
            Ok(())
   75    122   
        })?;
   76    123   
        Ok(builder.build())
   77    124   
    }

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_route_table.rs

@@ -1,1 +40,44 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `DisassociateRouteTable`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct DisassociateRouteTable;
    6      6   
impl DisassociateRouteTable {
    7      7   
    /// Creates a new `DisassociateRouteTable`
    8      8   
    pub fn new() -> Self {
    9      9   
        Self
   10     10   
    }
          11  +
    /// The schema for this operation's input shape.
          12  +
    pub const INPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::disassociate_route_table::DisassociateRouteTableInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::disassociate_route_table::DisassociateRouteTableOutput::SCHEMA;
   11     15   
    pub(crate) async fn orchestrate(
   12     16   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     17   
        input: crate::operation::disassociate_route_table::DisassociateRouteTableInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::disassociate_route_table::DisassociateRouteTableOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::disassociate_route_table::DisassociateRouteTableError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -118,122 +180,185 @@
  138    142   
                crate::operation::disassociate_route_table::DisassociateRouteTableError,
  139    143   
            >::new());
  140    144   
  141    145   
        ::std::borrow::Cow::Owned(rcb)
  142    146   
    }
  143    147   
}
  144    148   
  145    149   
#[derive(Debug)]
  146    150   
struct DisassociateRouteTableResponseDeserializer;
  147    151   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for DisassociateRouteTableResponseDeserializer {
  148         -
    fn deserialize_nonstreaming(
         152  +
    fn deserialize_nonstreaming_with_config(
  149    153   
        &self,
  150    154   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         155  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  151    156   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  152    157   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  153    158   
        let headers = response.headers();
  154    159   
        let body = response.body().bytes().expect("body loaded");
  155    160   
        #[allow(unused_mut)]
  156    161   
        let mut force_error = false;
  157    162   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  158    163   
        let parse_result = if !success && status != 200 || force_error {
  159    164   
            crate::protocol_serde::shape_disassociate_route_table::de_disassociate_route_table_http_error(status, headers, body)
  160    165   
        } else {

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_route_table/_disassociate_route_table_input.rs

@@ -3,3 +135,147 @@
   23     23   
    "com.amazonaws.ec2.synthetic",
   24     24   
    "DisassociateRouteTableInput",
   25     25   
);
   26     26   
static DISASSOCIATEROUTETABLEINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   27     27   
    ::aws_smithy_schema::ShapeId::from_static(
   28     28   
        "com.amazonaws.ec2.synthetic#DisassociateRouteTableInput$DryRun",
   29     29   
        "com.amazonaws.ec2.synthetic",
   30     30   
        "DisassociateRouteTableInput",
   31     31   
    ),
   32     32   
    ::aws_smithy_schema::ShapeType::Boolean,
   33         -
    "dry_run",
          33  +
    "DryRun",
   34     34   
    0,
   35     35   
)
   36     36   
.with_xml_name("dryRun");
   37     37   
static DISASSOCIATEROUTETABLEINPUT_MEMBER_ASSOCIATION_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   38     38   
    ::aws_smithy_schema::ShapeId::from_static(
   39     39   
        "com.amazonaws.ec2.synthetic#DisassociateRouteTableInput$AssociationId",
   40     40   
        "com.amazonaws.ec2.synthetic",
   41     41   
        "DisassociateRouteTableInput",
   42     42   
    ),
   43     43   
    ::aws_smithy_schema::ShapeType::String,
   44         -
    "association_id",
          44  +
    "AssociationId",
   45     45   
    1,
   46     46   
)
   47     47   
.with_xml_name("associationId");
   48     48   
static DISASSOCIATEROUTETABLEINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   49     49   
    DISASSOCIATEROUTETABLEINPUT_SCHEMA_ID,
   50     50   
    ::aws_smithy_schema::ShapeType::Structure,
   51     51   
    &[
   52     52   
        &DISASSOCIATEROUTETABLEINPUT_MEMBER_DRY_RUN,
   53     53   
        &DISASSOCIATEROUTETABLEINPUT_MEMBER_ASSOCIATION_ID,
   54     54   
    ],
   55     55   
);
   56     56   
impl DisassociateRouteTableInput {
   57     57   
    /// The schema for this shape.
   58     58   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DISASSOCIATEROUTETABLEINPUT_SCHEMA;
   59     59   
}
   60     60   
impl ::aws_smithy_schema::serde::SerializableStruct for DisassociateRouteTableInput {
   61     61   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   62     62   
    fn serialize_members(
   63     63   
        &self,
   64     64   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   65     65   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   66     66   
        if let Some(ref val) = self.dry_run {
   67     67   
            ser.write_boolean(&DISASSOCIATEROUTETABLEINPUT_MEMBER_DRY_RUN, *val)?;
   68     68   
        }
   69     69   
        if let Some(ref val) = self.association_id {
   70     70   
            ser.write_string(&DISASSOCIATEROUTETABLEINPUT_MEMBER_ASSOCIATION_ID, val)?;
   71     71   
        }
   72     72   
        Ok(())
   73     73   
    }
   74     74   
}
   75     75   
impl DisassociateRouteTableInput {
   76     76   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   77         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   78         -
        deserializer: &mut D,
          77  +
    pub fn deserialize(
          78  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   79     79   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   80     80   
        #[allow(unused_variables, unused_mut)]
   81     81   
        let mut builder = Self::builder();
   82     82   
        #[allow(
   83     83   
            unused_variables,
   84     84   
            unreachable_code,
   85     85   
            clippy::single_match,
   86     86   
            clippy::match_single_binding,
   87     87   
            clippy::diverging_sub_expression
   88     88   
        )]
   89         -
        deserializer.read_struct(&DISASSOCIATEROUTETABLEINPUT_SCHEMA, (), |_, member, deser| {
          89  +
        deserializer.read_struct(&DISASSOCIATEROUTETABLEINPUT_SCHEMA, &mut |member, deser| {
   90     90   
            match member.member_index() {
   91     91   
                Some(0) => {
   92     92   
                    builder.dry_run = Some(deser.read_boolean(member)?);
   93     93   
                }
   94     94   
                Some(1) => {
   95     95   
                    builder.association_id = Some(deser.read_string(member)?);
   96     96   
                }
   97     97   
                _ => {}
   98     98   
            }
   99     99   
            Ok(())
  100    100   
        })?;
         101  +
        builder.association_id = builder.association_id.or(Some(String::new()));
  101    102   
        builder
  102    103   
            .build()
  103    104   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  104    105   
    }
  105    106   
}
         107  +
impl DisassociateRouteTableInput {
         108  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         109  +
    pub fn deserialize_with_response(
         110  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         111  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         112  +
        _status: u16,
         113  +
        _body: &[u8],
         114  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         115  +
        Self::deserialize(deserializer)
         116  +
    }
         117  +
}
  106    118   
impl DisassociateRouteTableInput {
  107    119   
    /// Creates a new builder-style object to manufacture [`DisassociateRouteTableInput`](crate::operation::disassociate_route_table::DisassociateRouteTableInput).
  108    120   
    pub fn builder() -> crate::operation::disassociate_route_table::builders::DisassociateRouteTableInputBuilder {
  109    121   
        crate::operation::disassociate_route_table::builders::DisassociateRouteTableInputBuilder::default()
  110    122   
    }
  111    123   
}
  112    124   
  113    125   
/// A builder for [`DisassociateRouteTableInput`](crate::operation::disassociate_route_table::DisassociateRouteTableInput).
  114    126   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  115    127   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_route_table/_disassociate_route_table_output.rs

@@ -1,1 +80,111 @@
    3      3   
#[non_exhaustive]
    4      4   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5      5   
pub struct DisassociateRouteTableOutput {
    6      6   
    _request_id: Option<String>,
    7      7   
}
    8      8   
static DISASSOCIATEROUTETABLEOUTPUT_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
    9      9   
    "com.amazonaws.ec2.synthetic#DisassociateRouteTableOutput",
   10     10   
    "com.amazonaws.ec2.synthetic",
   11     11   
    "DisassociateRouteTableOutput",
   12     12   
);
   13         -
static DISASSOCIATEROUTETABLEOUTPUT_SCHEMA: ::aws_smithy_schema::Schema =
   14         -
    ::aws_smithy_schema::Schema::new_struct(DISASSOCIATEROUTETABLEOUTPUT_SCHEMA_ID, ::aws_smithy_schema::ShapeType::Structure, &[]);
          13  +
static DISASSOCIATEROUTETABLEOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          14  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          15  +
    ::aws_smithy_schema::ShapeType::String,
          16  +
    "request_id",
          17  +
    0,
          18  +
)
          19  +
.with_http_header("x-amzn-requestid");
          20  +
static DISASSOCIATEROUTETABLEOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          21  +
    DISASSOCIATEROUTETABLEOUTPUT_SCHEMA_ID,
          22  +
    ::aws_smithy_schema::ShapeType::Structure,
          23  +
    &[&DISASSOCIATEROUTETABLEOUTPUT_MEMBER__REQUEST_ID],
          24  +
);
   15     25   
impl DisassociateRouteTableOutput {
   16     26   
    /// The schema for this shape.
   17     27   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DISASSOCIATEROUTETABLEOUTPUT_SCHEMA;
   18     28   
}
   19     29   
impl ::aws_smithy_schema::serde::SerializableStruct for DisassociateRouteTableOutput {
   20     30   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   21     31   
    fn serialize_members(
   22     32   
        &self,
   23     33   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   24     34   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   25     35   
        Ok(())
   26     36   
    }
   27     37   
}
   28     38   
impl DisassociateRouteTableOutput {
   29     39   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   30         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   31         -
        deserializer: &mut D,
          40  +
    pub fn deserialize(
          41  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   32     42   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   33     43   
        #[allow(unused_variables, unused_mut)]
   34     44   
        let mut builder = Self::builder();
   35     45   
        #[allow(
   36     46   
            unused_variables,
   37     47   
            unreachable_code,
   38     48   
            clippy::single_match,
   39     49   
            clippy::match_single_binding,
   40     50   
            clippy::diverging_sub_expression
   41     51   
        )]
   42         -
        deserializer.read_struct(&DISASSOCIATEROUTETABLEOUTPUT_SCHEMA, (), |_, member, deser| {
          52  +
        deserializer.read_struct(&DISASSOCIATEROUTETABLEOUTPUT_SCHEMA, &mut |member, deser| {
   43     53   
            match member.member_index() {
          54  +
                Some(0) => {
          55  +
                    builder._request_id = Some(deser.read_string(member)?);
          56  +
                }
   44     57   
                _ => {}
   45     58   
            }
   46     59   
            Ok(())
   47     60   
        })?;
   48     61   
        Ok(builder.build())
   49     62   
    }
   50     63   
}
          64  +
impl DisassociateRouteTableOutput {
          65  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          66  +
    /// Header-bound members are read directly from headers, avoiding runtime
          67  +
    /// member iteration overhead. Body members are read via the deserializer.
          68  +
    pub fn deserialize_with_response(
          69  +
        _deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          70  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          71  +
        _status: u16,
          72  +
        _body: &[u8],
          73  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          74  +
        #[allow(unused_variables, unused_mut)]
          75  +
        let mut builder = Self::builder();
          76  +
        if let Some(val) = headers.get("x-amzn-requestid") {
          77  +
            builder._request_id = Some(val.to_string());
          78  +
        }
          79  +
        Ok(builder.build())
          80  +
    }
          81  +
}
   51     82   
impl ::aws_types::request_id::RequestId for DisassociateRouteTableOutput {
   52     83   
    fn request_id(&self) -> Option<&str> {
   53     84   
        self._request_id.as_deref()
   54     85   
    }
   55     86   
}
   56     87   
impl DisassociateRouteTableOutput {
   57     88   
    /// Creates a new builder-style object to manufacture [`DisassociateRouteTableOutput`](crate::operation::disassociate_route_table::DisassociateRouteTableOutput).
   58     89   
    pub fn builder() -> crate::operation::disassociate_route_table::builders::DisassociateRouteTableOutputBuilder {
   59     90   
        crate::operation::disassociate_route_table::builders::DisassociateRouteTableOutputBuilder::default()
   60     91   
    }

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_security_group_vpc.rs

@@ -1,1 +40,46 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `DisassociateSecurityGroupVpc`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct DisassociateSecurityGroupVpc;
    6      6   
impl DisassociateSecurityGroupVpc {
    7      7   
    /// Creates a new `DisassociateSecurityGroupVpc`
    8      8   
    pub fn new() -> Self {
    9      9   
        Self
   10     10   
    }
          11  +
    /// The schema for this operation's input shape.
          12  +
    pub const INPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          13  +
        crate::operation::disassociate_security_group_vpc::DisassociateSecurityGroupVpcInput::SCHEMA;
          14  +
    /// The schema for this operation's output shape.
          15  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          16  +
        crate::operation::disassociate_security_group_vpc::DisassociateSecurityGroupVpcOutput::SCHEMA;
   11     17   
    pub(crate) async fn orchestrate(
   12     18   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     19   
        input: crate::operation::disassociate_security_group_vpc::DisassociateSecurityGroupVpcInput,
   14     20   
    ) -> ::std::result::Result<
   15     21   
        crate::operation::disassociate_security_group_vpc::DisassociateSecurityGroupVpcOutput,
   16     22   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     23   
            crate::operation::disassociate_security_group_vpc::DisassociateSecurityGroupVpcError,
   18     24   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     25   
        >,
   20     26   
    > {
@@ -118,124 +180,187 @@
  138    144   
                crate::operation::disassociate_security_group_vpc::DisassociateSecurityGroupVpcError,
  139    145   
            >::new());
  140    146   
  141    147   
        ::std::borrow::Cow::Owned(rcb)
  142    148   
    }
  143    149   
}
  144    150   
  145    151   
#[derive(Debug)]
  146    152   
struct DisassociateSecurityGroupVpcResponseDeserializer;
  147    153   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for DisassociateSecurityGroupVpcResponseDeserializer {
  148         -
    fn deserialize_nonstreaming(
         154  +
    fn deserialize_nonstreaming_with_config(
  149    155   
        &self,
  150    156   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         157  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  151    158   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  152    159   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  153    160   
        let headers = response.headers();
  154    161   
        let body = response.body().bytes().expect("body loaded");
  155    162   
        #[allow(unused_mut)]
  156    163   
        let mut force_error = false;
  157    164   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  158    165   
        let parse_result = if !success && status != 200 || force_error {
  159    166   
            crate::protocol_serde::shape_disassociate_security_group_vpc::de_disassociate_security_group_vpc_http_error(status, headers, body)
  160    167   
        } else {

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_security_group_vpc/_disassociate_security_group_vpc_input.rs

@@ -9,9 +156,169 @@
   29     29   
    "com.amazonaws.ec2.synthetic",
   30     30   
    "DisassociateSecurityGroupVpcInput",
   31     31   
);
   32     32   
static DISASSOCIATESECURITYGROUPVPCINPUT_MEMBER_GROUP_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   33     33   
    ::aws_smithy_schema::ShapeId::from_static(
   34     34   
        "com.amazonaws.ec2.synthetic#DisassociateSecurityGroupVpcInput$GroupId",
   35     35   
        "com.amazonaws.ec2.synthetic",
   36     36   
        "DisassociateSecurityGroupVpcInput",
   37     37   
    ),
   38     38   
    ::aws_smithy_schema::ShapeType::String,
   39         -
    "group_id",
          39  +
    "GroupId",
   40     40   
    0,
   41     41   
);
   42     42   
static DISASSOCIATESECURITYGROUPVPCINPUT_MEMBER_VPC_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   43     43   
    ::aws_smithy_schema::ShapeId::from_static(
   44     44   
        "com.amazonaws.ec2.synthetic#DisassociateSecurityGroupVpcInput$VpcId",
   45     45   
        "com.amazonaws.ec2.synthetic",
   46     46   
        "DisassociateSecurityGroupVpcInput",
   47     47   
    ),
   48     48   
    ::aws_smithy_schema::ShapeType::String,
   49         -
    "vpc_id",
          49  +
    "VpcId",
   50     50   
    1,
   51     51   
);
   52     52   
static DISASSOCIATESECURITYGROUPVPCINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   53     53   
    ::aws_smithy_schema::ShapeId::from_static(
   54     54   
        "com.amazonaws.ec2.synthetic#DisassociateSecurityGroupVpcInput$DryRun",
   55     55   
        "com.amazonaws.ec2.synthetic",
   56     56   
        "DisassociateSecurityGroupVpcInput",
   57     57   
    ),
   58     58   
    ::aws_smithy_schema::ShapeType::Boolean,
   59         -
    "dry_run",
          59  +
    "DryRun",
   60     60   
    2,
   61     61   
);
   62     62   
static DISASSOCIATESECURITYGROUPVPCINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   63     63   
    DISASSOCIATESECURITYGROUPVPCINPUT_SCHEMA_ID,
   64     64   
    ::aws_smithy_schema::ShapeType::Structure,
   65     65   
    &[
   66     66   
        &DISASSOCIATESECURITYGROUPVPCINPUT_MEMBER_GROUP_ID,
   67     67   
        &DISASSOCIATESECURITYGROUPVPCINPUT_MEMBER_VPC_ID,
   68     68   
        &DISASSOCIATESECURITYGROUPVPCINPUT_MEMBER_DRY_RUN,
   69     69   
    ],
   70     70   
);
   71     71   
impl DisassociateSecurityGroupVpcInput {
   72     72   
    /// The schema for this shape.
   73     73   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DISASSOCIATESECURITYGROUPVPCINPUT_SCHEMA;
   74     74   
}
   75     75   
impl ::aws_smithy_schema::serde::SerializableStruct for DisassociateSecurityGroupVpcInput {
   76     76   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   77     77   
    fn serialize_members(
   78     78   
        &self,
   79     79   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   80     80   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   81     81   
        if let Some(ref val) = self.group_id {
   82     82   
            ser.write_string(&DISASSOCIATESECURITYGROUPVPCINPUT_MEMBER_GROUP_ID, val)?;
   83     83   
        }
   84     84   
        if let Some(ref val) = self.vpc_id {
   85     85   
            ser.write_string(&DISASSOCIATESECURITYGROUPVPCINPUT_MEMBER_VPC_ID, val)?;
   86     86   
        }
   87     87   
        if let Some(ref val) = self.dry_run {
   88     88   
            ser.write_boolean(&DISASSOCIATESECURITYGROUPVPCINPUT_MEMBER_DRY_RUN, *val)?;
   89     89   
        }
   90     90   
        Ok(())
   91     91   
    }
   92     92   
}
   93     93   
impl DisassociateSecurityGroupVpcInput {
   94     94   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   95         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   96         -
        deserializer: &mut D,
          95  +
    pub fn deserialize(
          96  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   97     97   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   98     98   
        #[allow(unused_variables, unused_mut)]
   99     99   
        let mut builder = Self::builder();
  100    100   
        #[allow(
  101    101   
            unused_variables,
  102    102   
            unreachable_code,
  103    103   
            clippy::single_match,
  104    104   
            clippy::match_single_binding,
  105    105   
            clippy::diverging_sub_expression
  106    106   
        )]
  107         -
        deserializer.read_struct(&DISASSOCIATESECURITYGROUPVPCINPUT_SCHEMA, (), |_, member, deser| {
         107  +
        deserializer.read_struct(&DISASSOCIATESECURITYGROUPVPCINPUT_SCHEMA, &mut |member, deser| {
  108    108   
            match member.member_index() {
  109    109   
                Some(0) => {
  110    110   
                    builder.group_id = Some(deser.read_string(member)?);
  111    111   
                }
  112    112   
                Some(1) => {
  113    113   
                    builder.vpc_id = Some(deser.read_string(member)?);
  114    114   
                }
  115    115   
                Some(2) => {
  116    116   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  117    117   
                }
  118    118   
                _ => {}
  119    119   
            }
  120    120   
            Ok(())
  121    121   
        })?;
         122  +
        builder.group_id = builder.group_id.or(Some(String::new()));
         123  +
        builder.vpc_id = builder.vpc_id.or(Some(String::new()));
  122    124   
        builder
  123    125   
            .build()
  124    126   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  125    127   
    }
  126    128   
}
         129  +
impl DisassociateSecurityGroupVpcInput {
         130  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         131  +
    pub fn deserialize_with_response(
         132  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         133  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         134  +
        _status: u16,
         135  +
        _body: &[u8],
         136  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         137  +
        Self::deserialize(deserializer)
         138  +
    }
         139  +
}
  127    140   
impl DisassociateSecurityGroupVpcInput {
  128    141   
    /// Creates a new builder-style object to manufacture [`DisassociateSecurityGroupVpcInput`](crate::operation::disassociate_security_group_vpc::DisassociateSecurityGroupVpcInput).
  129    142   
    pub fn builder() -> crate::operation::disassociate_security_group_vpc::builders::DisassociateSecurityGroupVpcInputBuilder {
  130    143   
        crate::operation::disassociate_security_group_vpc::builders::DisassociateSecurityGroupVpcInputBuilder::default()
  131    144   
    }
  132    145   
}
  133    146   
  134    147   
/// A builder for [`DisassociateSecurityGroupVpcInput`](crate::operation::disassociate_security_group_vpc::DisassociateSecurityGroupVpcInput).
  135    148   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  136    149   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_security_group_vpc/_disassociate_security_group_vpc_output.rs

@@ -1,1 +97,144 @@
   18     18   
    "com.amazonaws.ec2.synthetic",
   19     19   
    "DisassociateSecurityGroupVpcOutput",
   20     20   
);
   21     21   
static DISASSOCIATESECURITYGROUPVPCOUTPUT_MEMBER_STATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   22     22   
    ::aws_smithy_schema::ShapeId::from_static(
   23     23   
        "com.amazonaws.ec2.synthetic#DisassociateSecurityGroupVpcOutput$State",
   24     24   
        "com.amazonaws.ec2.synthetic",
   25     25   
        "DisassociateSecurityGroupVpcOutput",
   26     26   
    ),
   27     27   
    ::aws_smithy_schema::ShapeType::String,
   28         -
    "state",
          28  +
    "State",
   29     29   
    0,
   30     30   
)
   31     31   
.with_xml_name("state");
          32  +
static DISASSOCIATESECURITYGROUPVPCOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          33  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          34  +
    ::aws_smithy_schema::ShapeType::String,
          35  +
    "request_id",
          36  +
    1,
          37  +
)
          38  +
.with_http_header("x-amzn-requestid");
   32     39   
static DISASSOCIATESECURITYGROUPVPCOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   33     40   
    DISASSOCIATESECURITYGROUPVPCOUTPUT_SCHEMA_ID,
   34     41   
    ::aws_smithy_schema::ShapeType::Structure,
   35         -
    &[&DISASSOCIATESECURITYGROUPVPCOUTPUT_MEMBER_STATE],
          42  +
    &[
          43  +
        &DISASSOCIATESECURITYGROUPVPCOUTPUT_MEMBER_STATE,
          44  +
        &DISASSOCIATESECURITYGROUPVPCOUTPUT_MEMBER__REQUEST_ID,
          45  +
    ],
   36     46   
);
   37     47   
impl DisassociateSecurityGroupVpcOutput {
   38     48   
    /// The schema for this shape.
   39     49   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DISASSOCIATESECURITYGROUPVPCOUTPUT_SCHEMA;
   40     50   
}
   41     51   
impl ::aws_smithy_schema::serde::SerializableStruct for DisassociateSecurityGroupVpcOutput {
   42     52   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   43     53   
    fn serialize_members(
   44     54   
        &self,
   45     55   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   46     56   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   47     57   
        if let Some(ref val) = self.state {
   48     58   
            ser.write_string(&DISASSOCIATESECURITYGROUPVPCOUTPUT_MEMBER_STATE, val.as_str())?;
   49     59   
        }
   50     60   
        Ok(())
   51     61   
    }
   52     62   
}
   53     63   
impl DisassociateSecurityGroupVpcOutput {
   54     64   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   55         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   56         -
        deserializer: &mut D,
          65  +
    pub fn deserialize(
          66  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          67  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          68  +
        #[allow(unused_variables, unused_mut)]
          69  +
        let mut builder = Self::builder();
          70  +
        #[allow(
          71  +
            unused_variables,
          72  +
            unreachable_code,
          73  +
            clippy::single_match,
          74  +
            clippy::match_single_binding,
          75  +
            clippy::diverging_sub_expression
          76  +
        )]
          77  +
        deserializer.read_struct(&DISASSOCIATESECURITYGROUPVPCOUTPUT_SCHEMA, &mut |member, deser| {
          78  +
            match member.member_index() {
          79  +
                Some(0) => {
          80  +
                    builder.state = Some(crate::types::SecurityGroupVpcAssociationState::from(deser.read_string(member)?.as_str()));
          81  +
                }
          82  +
                Some(1) => {
          83  +
                    builder._request_id = Some(deser.read_string(member)?);
          84  +
                }
          85  +
                _ => {}
          86  +
            }
          87  +
            Ok(())
          88  +
        })?;
          89  +
        Ok(builder.build())
          90  +
    }
          91  +
}
          92  +
impl DisassociateSecurityGroupVpcOutput {
          93  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
          94  +
    /// Header-bound members are read directly from headers, avoiding runtime
          95  +
    /// member iteration overhead. Body members are read via the deserializer.
          96  +
    pub fn deserialize_with_response(
          97  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          98  +
        headers: &::aws_smithy_runtime_api::http::Headers,
          99  +
        _status: u16,
         100  +
        _body: &[u8],
   57    101   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   58    102   
        #[allow(unused_variables, unused_mut)]
   59    103   
        let mut builder = Self::builder();
         104  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         105  +
            builder._request_id = Some(val.to_string());
         106  +
        }
   60    107   
        #[allow(
   61    108   
            unused_variables,
   62    109   
            unreachable_code,
   63    110   
            clippy::single_match,
   64    111   
            clippy::match_single_binding,
   65    112   
            clippy::diverging_sub_expression
   66    113   
        )]
   67         -
        deserializer.read_struct(&DISASSOCIATESECURITYGROUPVPCOUTPUT_SCHEMA, (), |_, member, deser| {
         114  +
        deserializer.read_struct(&DISASSOCIATESECURITYGROUPVPCOUTPUT_SCHEMA, &mut |member, deser| {
   68    115   
            match member.member_index() {
   69    116   
                Some(0) => {
   70    117   
                    builder.state = Some(crate::types::SecurityGroupVpcAssociationState::from(deser.read_string(member)?.as_str()));
   71    118   
                }
   72    119   
                _ => {}
   73    120   
            }
   74    121   
            Ok(())
   75    122   
        })?;
   76    123   
        Ok(builder.build())
   77    124   
    }

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_subnet_cidr_block.rs

@@ -1,1 +40,46 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `DisassociateSubnetCidrBlock`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct DisassociateSubnetCidrBlock;
    6      6   
impl DisassociateSubnetCidrBlock {
    7      7   
    /// Creates a new `DisassociateSubnetCidrBlock`
    8      8   
    pub fn new() -> Self {
    9      9   
        Self
   10     10   
    }
          11  +
    /// The schema for this operation's input shape.
          12  +
    pub const INPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          13  +
        crate::operation::disassociate_subnet_cidr_block::DisassociateSubnetCidrBlockInput::SCHEMA;
          14  +
    /// The schema for this operation's output shape.
          15  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          16  +
        crate::operation::disassociate_subnet_cidr_block::DisassociateSubnetCidrBlockOutput::SCHEMA;
   11     17   
    pub(crate) async fn orchestrate(
   12     18   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     19   
        input: crate::operation::disassociate_subnet_cidr_block::DisassociateSubnetCidrBlockInput,
   14     20   
    ) -> ::std::result::Result<
   15     21   
        crate::operation::disassociate_subnet_cidr_block::DisassociateSubnetCidrBlockOutput,
   16     22   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     23   
            crate::operation::disassociate_subnet_cidr_block::DisassociateSubnetCidrBlockError,
   18     24   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     25   
        >,
   20     26   
    > {
@@ -118,124 +180,187 @@
  138    144   
                crate::operation::disassociate_subnet_cidr_block::DisassociateSubnetCidrBlockError,
  139    145   
            >::new());
  140    146   
  141    147   
        ::std::borrow::Cow::Owned(rcb)
  142    148   
    }
  143    149   
}
  144    150   
  145    151   
#[derive(Debug)]
  146    152   
struct DisassociateSubnetCidrBlockResponseDeserializer;
  147    153   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for DisassociateSubnetCidrBlockResponseDeserializer {
  148         -
    fn deserialize_nonstreaming(
         154  +
    fn deserialize_nonstreaming_with_config(
  149    155   
        &self,
  150    156   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         157  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  151    158   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  152    159   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  153    160   
        let headers = response.headers();
  154    161   
        let body = response.body().bytes().expect("body loaded");
  155    162   
        #[allow(unused_mut)]
  156    163   
        let mut force_error = false;
  157    164   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  158    165   
        let parse_result = if !success && status != 200 || force_error {
  159    166   
            crate::protocol_serde::shape_disassociate_subnet_cidr_block::de_disassociate_subnet_cidr_block_http_error(status, headers, body)
  160    167   
        } else {

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_subnet_cidr_block/_disassociate_subnet_cidr_block_input.rs

@@ -1,1 +109,121 @@
   17     17   
    "com.amazonaws.ec2.synthetic",
   18     18   
    "DisassociateSubnetCidrBlockInput",
   19     19   
);
   20     20   
static DISASSOCIATESUBNETCIDRBLOCKINPUT_MEMBER_ASSOCIATION_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   21     21   
    ::aws_smithy_schema::ShapeId::from_static(
   22     22   
        "com.amazonaws.ec2.synthetic#DisassociateSubnetCidrBlockInput$AssociationId",
   23     23   
        "com.amazonaws.ec2.synthetic",
   24     24   
        "DisassociateSubnetCidrBlockInput",
   25     25   
    ),
   26     26   
    ::aws_smithy_schema::ShapeType::String,
   27         -
    "association_id",
          27  +
    "AssociationId",
   28     28   
    0,
   29     29   
)
   30     30   
.with_xml_name("associationId");
   31     31   
static DISASSOCIATESUBNETCIDRBLOCKINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   32     32   
    DISASSOCIATESUBNETCIDRBLOCKINPUT_SCHEMA_ID,
   33     33   
    ::aws_smithy_schema::ShapeType::Structure,
   34     34   
    &[&DISASSOCIATESUBNETCIDRBLOCKINPUT_MEMBER_ASSOCIATION_ID],
   35     35   
);
   36     36   
impl DisassociateSubnetCidrBlockInput {
   37     37   
    /// The schema for this shape.
   38     38   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DISASSOCIATESUBNETCIDRBLOCKINPUT_SCHEMA;
   39     39   
}
   40     40   
impl ::aws_smithy_schema::serde::SerializableStruct for DisassociateSubnetCidrBlockInput {
   41     41   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   42     42   
    fn serialize_members(
   43     43   
        &self,
   44     44   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   45     45   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   46     46   
        if let Some(ref val) = self.association_id {
   47     47   
            ser.write_string(&DISASSOCIATESUBNETCIDRBLOCKINPUT_MEMBER_ASSOCIATION_ID, val)?;
   48     48   
        }
   49     49   
        Ok(())
   50     50   
    }
   51     51   
}
   52     52   
impl DisassociateSubnetCidrBlockInput {
   53     53   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   54         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   55         -
        deserializer: &mut D,
          54  +
    pub fn deserialize(
          55  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   56     56   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   57     57   
        #[allow(unused_variables, unused_mut)]
   58     58   
        let mut builder = Self::builder();
   59     59   
        #[allow(
   60     60   
            unused_variables,
   61     61   
            unreachable_code,
   62     62   
            clippy::single_match,
   63     63   
            clippy::match_single_binding,
   64     64   
            clippy::diverging_sub_expression
   65     65   
        )]
   66         -
        deserializer.read_struct(&DISASSOCIATESUBNETCIDRBLOCKINPUT_SCHEMA, (), |_, member, deser| {
          66  +
        deserializer.read_struct(&DISASSOCIATESUBNETCIDRBLOCKINPUT_SCHEMA, &mut |member, deser| {
   67     67   
            match member.member_index() {
   68     68   
                Some(0) => {
   69     69   
                    builder.association_id = Some(deser.read_string(member)?);
   70     70   
                }
   71     71   
                _ => {}
   72     72   
            }
   73     73   
            Ok(())
   74     74   
        })?;
          75  +
        builder.association_id = builder.association_id.or(Some(String::new()));
   75     76   
        builder
   76     77   
            .build()
   77     78   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
   78     79   
    }
   79     80   
}
          81  +
impl DisassociateSubnetCidrBlockInput {
          82  +
    /// Deserializes this structure from a body deserializer and HTTP response.
          83  +
    pub fn deserialize_with_response(
          84  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          85  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
          86  +
        _status: u16,
          87  +
        _body: &[u8],
          88  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          89  +
        Self::deserialize(deserializer)
          90  +
    }
          91  +
}
   80     92   
impl DisassociateSubnetCidrBlockInput {
   81     93   
    /// Creates a new builder-style object to manufacture [`DisassociateSubnetCidrBlockInput`](crate::operation::disassociate_subnet_cidr_block::DisassociateSubnetCidrBlockInput).
   82     94   
    pub fn builder() -> crate::operation::disassociate_subnet_cidr_block::builders::DisassociateSubnetCidrBlockInputBuilder {
   83     95   
        crate::operation::disassociate_subnet_cidr_block::builders::DisassociateSubnetCidrBlockInputBuilder::default()
   84     96   
    }
   85     97   
}
   86     98   
   87     99   
/// A builder for [`DisassociateSubnetCidrBlockInput`](crate::operation::disassociate_subnet_cidr_block::DisassociateSubnetCidrBlockInput).
   88    100   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   89    101   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_subnet_cidr_block/_disassociate_subnet_cidr_block_output.rs

@@ -4,4 +120,168 @@
   24     24   
    "com.amazonaws.ec2.synthetic",
   25     25   
    "DisassociateSubnetCidrBlockOutput",
   26     26   
);
   27     27   
static DISASSOCIATESUBNETCIDRBLOCKOUTPUT_MEMBER_IPV6_CIDR_BLOCK_ASSOCIATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   28     28   
    ::aws_smithy_schema::ShapeId::from_static(
   29     29   
        "com.amazonaws.ec2.synthetic#DisassociateSubnetCidrBlockOutput$Ipv6CidrBlockAssociation",
   30     30   
        "com.amazonaws.ec2.synthetic",
   31     31   
        "DisassociateSubnetCidrBlockOutput",
   32     32   
    ),
   33     33   
    ::aws_smithy_schema::ShapeType::Structure,
   34         -
    "ipv6_cidr_block_association",
          34  +
    "Ipv6CidrBlockAssociation",
   35     35   
    0,
   36     36   
)
   37     37   
.with_xml_name("ipv6CidrBlockAssociation");
   38     38   
static DISASSOCIATESUBNETCIDRBLOCKOUTPUT_MEMBER_SUBNET_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   39     39   
    ::aws_smithy_schema::ShapeId::from_static(
   40     40   
        "com.amazonaws.ec2.synthetic#DisassociateSubnetCidrBlockOutput$SubnetId",
   41     41   
        "com.amazonaws.ec2.synthetic",
   42     42   
        "DisassociateSubnetCidrBlockOutput",
   43     43   
    ),
   44     44   
    ::aws_smithy_schema::ShapeType::String,
   45         -
    "subnet_id",
          45  +
    "SubnetId",
   46     46   
    1,
   47     47   
)
   48     48   
.with_xml_name("subnetId");
          49  +
static DISASSOCIATESUBNETCIDRBLOCKOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          50  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          51  +
    ::aws_smithy_schema::ShapeType::String,
          52  +
    "request_id",
          53  +
    2,
          54  +
)
          55  +
.with_http_header("x-amzn-requestid");
   49     56   
static DISASSOCIATESUBNETCIDRBLOCKOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   50     57   
    DISASSOCIATESUBNETCIDRBLOCKOUTPUT_SCHEMA_ID,
   51     58   
    ::aws_smithy_schema::ShapeType::Structure,
   52     59   
    &[
   53     60   
        &DISASSOCIATESUBNETCIDRBLOCKOUTPUT_MEMBER_IPV6_CIDR_BLOCK_ASSOCIATION,
   54     61   
        &DISASSOCIATESUBNETCIDRBLOCKOUTPUT_MEMBER_SUBNET_ID,
          62  +
        &DISASSOCIATESUBNETCIDRBLOCKOUTPUT_MEMBER__REQUEST_ID,
   55     63   
    ],
   56     64   
);
   57     65   
impl DisassociateSubnetCidrBlockOutput {
   58     66   
    /// The schema for this shape.
   59     67   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DISASSOCIATESUBNETCIDRBLOCKOUTPUT_SCHEMA;
   60     68   
}
   61     69   
impl ::aws_smithy_schema::serde::SerializableStruct for DisassociateSubnetCidrBlockOutput {
   62     70   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   63     71   
    fn serialize_members(
   64     72   
        &self,
   65     73   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   66     74   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   67     75   
        if let Some(ref val) = self.ipv6_cidr_block_association {
   68     76   
            ser.write_struct(&DISASSOCIATESUBNETCIDRBLOCKOUTPUT_MEMBER_IPV6_CIDR_BLOCK_ASSOCIATION, val)?;
   69     77   
        }
   70     78   
        if let Some(ref val) = self.subnet_id {
   71     79   
            ser.write_string(&DISASSOCIATESUBNETCIDRBLOCKOUTPUT_MEMBER_SUBNET_ID, val)?;
   72     80   
        }
   73     81   
        Ok(())
   74     82   
    }
   75     83   
}
   76     84   
impl DisassociateSubnetCidrBlockOutput {
   77     85   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   78         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   79         -
        deserializer: &mut D,
          86  +
    pub fn deserialize(
          87  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   80     88   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   81     89   
        #[allow(unused_variables, unused_mut)]
   82     90   
        let mut builder = Self::builder();
   83     91   
        #[allow(
   84     92   
            unused_variables,
   85     93   
            unreachable_code,
   86     94   
            clippy::single_match,
   87     95   
            clippy::match_single_binding,
   88     96   
            clippy::diverging_sub_expression
   89     97   
        )]
   90         -
        deserializer.read_struct(&DISASSOCIATESUBNETCIDRBLOCKOUTPUT_SCHEMA, (), |_, member, deser| {
          98  +
        deserializer.read_struct(&DISASSOCIATESUBNETCIDRBLOCKOUTPUT_SCHEMA, &mut |member, deser| {
          99  +
            match member.member_index() {
         100  +
                Some(0) => {
         101  +
                    builder.ipv6_cidr_block_association = Some(crate::types::SubnetIpv6CidrBlockAssociation::deserialize(deser)?);
         102  +
                }
         103  +
                Some(1) => {
         104  +
                    builder.subnet_id = Some(deser.read_string(member)?);
         105  +
                }
         106  +
                Some(2) => {
         107  +
                    builder._request_id = Some(deser.read_string(member)?);
         108  +
                }
         109  +
                _ => {}
         110  +
            }
         111  +
            Ok(())
         112  +
        })?;
         113  +
        Ok(builder.build())
         114  +
    }
         115  +
}
         116  +
impl DisassociateSubnetCidrBlockOutput {
         117  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         118  +
    /// Header-bound members are read directly from headers, avoiding runtime
         119  +
    /// member iteration overhead. Body members are read via the deserializer.
         120  +
    pub fn deserialize_with_response(
         121  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         122  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         123  +
        _status: u16,
         124  +
        _body: &[u8],
         125  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         126  +
        #[allow(unused_variables, unused_mut)]
         127  +
        let mut builder = Self::builder();
         128  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         129  +
            builder._request_id = Some(val.to_string());
         130  +
        }
         131  +
        #[allow(
         132  +
            unused_variables,
         133  +
            unreachable_code,
         134  +
            clippy::single_match,
         135  +
            clippy::match_single_binding,
         136  +
            clippy::diverging_sub_expression
         137  +
        )]
         138  +
        deserializer.read_struct(&DISASSOCIATESUBNETCIDRBLOCKOUTPUT_SCHEMA, &mut |member, deser| {
   91    139   
            match member.member_index() {
   92    140   
                Some(0) => {
   93    141   
                    builder.ipv6_cidr_block_association = Some(crate::types::SubnetIpv6CidrBlockAssociation::deserialize(deser)?);
   94    142   
                }
   95    143   
                Some(1) => {
   96    144   
                    builder.subnet_id = Some(deser.read_string(member)?);
   97    145   
                }
   98    146   
                _ => {}
   99    147   
            }
  100    148   
            Ok(())

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_transit_gateway_multicast_domain.rs

@@ -1,1 +40,46 @@
    1      1   
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2      2   
/// Orchestration and serialization glue logic for `DisassociateTransitGatewayMulticastDomain`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct DisassociateTransitGatewayMulticastDomain;
    6      6   
impl DisassociateTransitGatewayMulticastDomain {
    7      7   
    /// Creates a new `DisassociateTransitGatewayMulticastDomain`
    8      8   
    pub fn new() -> Self {
    9      9   
        Self
   10     10   
    }
          11  +
    /// The schema for this operation's input shape.
          12  +
    pub const INPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          13  +
        crate::operation::disassociate_transit_gateway_multicast_domain::DisassociateTransitGatewayMulticastDomainInput::SCHEMA;
          14  +
    /// The schema for this operation's output shape.
          15  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          16  +
        crate::operation::disassociate_transit_gateway_multicast_domain::DisassociateTransitGatewayMulticastDomainOutput::SCHEMA;
   11     17   
    pub(crate) async fn orchestrate(
   12     18   
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13     19   
        input: crate::operation::disassociate_transit_gateway_multicast_domain::DisassociateTransitGatewayMulticastDomainInput,
   14     20   
    ) -> ::std::result::Result<
   15     21   
        crate::operation::disassociate_transit_gateway_multicast_domain::DisassociateTransitGatewayMulticastDomainOutput,
   16     22   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     23   
            crate::operation::disassociate_transit_gateway_multicast_domain::DisassociateTransitGatewayMulticastDomainError,
   18     24   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     25   
        >,
   20     26   
    > {
@@ -125,131 +187,194 @@
  145    151   
                    crate::operation::disassociate_transit_gateway_multicast_domain::DisassociateTransitGatewayMulticastDomainError,
  146    152   
                >::new());
  147    153   
  148    154   
        ::std::borrow::Cow::Owned(rcb)
  149    155   
    }
  150    156   
}
  151    157   
  152    158   
#[derive(Debug)]
  153    159   
struct DisassociateTransitGatewayMulticastDomainResponseDeserializer;
  154    160   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for DisassociateTransitGatewayMulticastDomainResponseDeserializer {
  155         -
    fn deserialize_nonstreaming(
         161  +
    fn deserialize_nonstreaming_with_config(
  156    162   
        &self,
  157    163   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         164  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  158    165   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  159    166   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  160    167   
        let headers = response.headers();
  161    168   
        let body = response.body().bytes().expect("body loaded");
  162    169   
        #[allow(unused_mut)]
  163    170   
        let mut force_error = false;
  164    171   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  165    172   
        let parse_result = if !success && status != 200 || force_error {
  166    173   
            crate::protocol_serde::shape_disassociate_transit_gateway_multicast_domain::de_disassociate_transit_gateway_multicast_domain_http_error(
  167    174   
                status, headers, body,

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/disassociate_transit_gateway_multicast_domain/_disassociate_transit_gateway_multicast_domain_input.rs

@@ -18,18 +204,208 @@
   38     38   
    "DisassociateTransitGatewayMulticastDomainInput",
   39     39   
);
   40     40   
static DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_TRANSIT_GATEWAY_MULTICAST_DOMAIN_ID: ::aws_smithy_schema::Schema =
   41     41   
    ::aws_smithy_schema::Schema::new_member(
   42     42   
        ::aws_smithy_schema::ShapeId::from_static(
   43     43   
            "com.amazonaws.ec2.synthetic#DisassociateTransitGatewayMulticastDomainInput$TransitGatewayMulticastDomainId",
   44     44   
            "com.amazonaws.ec2.synthetic",
   45     45   
            "DisassociateTransitGatewayMulticastDomainInput",
   46     46   
        ),
   47     47   
        ::aws_smithy_schema::ShapeType::String,
   48         -
        "transit_gateway_multicast_domain_id",
          48  +
        "TransitGatewayMulticastDomainId",
   49     49   
        0,
   50     50   
    );
   51     51   
static DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID: ::aws_smithy_schema::Schema =
   52     52   
    ::aws_smithy_schema::Schema::new_member(
   53     53   
        ::aws_smithy_schema::ShapeId::from_static(
   54     54   
            "com.amazonaws.ec2.synthetic#DisassociateTransitGatewayMulticastDomainInput$TransitGatewayAttachmentId",
   55     55   
            "com.amazonaws.ec2.synthetic",
   56     56   
            "DisassociateTransitGatewayMulticastDomainInput",
   57     57   
        ),
   58     58   
        ::aws_smithy_schema::ShapeType::String,
   59         -
        "transit_gateway_attachment_id",
          59  +
        "TransitGatewayAttachmentId",
   60     60   
        1,
   61     61   
    );
   62     62   
static DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_SUBNET_IDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   63     63   
    ::aws_smithy_schema::ShapeId::from_static(
   64     64   
        "com.amazonaws.ec2.synthetic#DisassociateTransitGatewayMulticastDomainInput$SubnetIds",
   65     65   
        "com.amazonaws.ec2.synthetic",
   66     66   
        "DisassociateTransitGatewayMulticastDomainInput",
   67     67   
    ),
   68     68   
    ::aws_smithy_schema::ShapeType::List,
   69         -
    "subnet_ids",
          69  +
    "SubnetIds",
   70     70   
    2,
   71     71   
);
   72     72   
static DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   73     73   
    ::aws_smithy_schema::ShapeId::from_static(
   74     74   
        "com.amazonaws.ec2.synthetic#DisassociateTransitGatewayMulticastDomainInput$DryRun",
   75     75   
        "com.amazonaws.ec2.synthetic",
   76     76   
        "DisassociateTransitGatewayMulticastDomainInput",
   77     77   
    ),
   78     78   
    ::aws_smithy_schema::ShapeType::Boolean,
   79         -
    "dry_run",
          79  +
    "DryRun",
   80     80   
    3,
   81     81   
);
   82     82   
static DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   83     83   
    DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_SCHEMA_ID,
   84     84   
    ::aws_smithy_schema::ShapeType::Structure,
   85     85   
    &[
   86     86   
        &DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_TRANSIT_GATEWAY_MULTICAST_DOMAIN_ID,
   87     87   
        &DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID,
   88     88   
        &DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_SUBNET_IDS,
   89     89   
        &DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_DRY_RUN,
   90     90   
    ],
   91     91   
);
   92     92   
impl DisassociateTransitGatewayMulticastDomainInput {
   93     93   
    /// The schema for this shape.
   94     94   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_SCHEMA;
   95     95   
}
   96     96   
impl ::aws_smithy_schema::serde::SerializableStruct for DisassociateTransitGatewayMulticastDomainInput {
   97     97   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   98     98   
    fn serialize_members(
   99     99   
        &self,
  100    100   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  101    101   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  102    102   
        if let Some(ref val) = self.transit_gateway_multicast_domain_id {
  103    103   
            ser.write_string(
  104    104   
                &DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_TRANSIT_GATEWAY_MULTICAST_DOMAIN_ID,
  105    105   
                val,
  106    106   
            )?;
  107    107   
        }
  108    108   
        if let Some(ref val) = self.transit_gateway_attachment_id {
  109    109   
            ser.write_string(&DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID, val)?;
  110    110   
        }
  111    111   
        if let Some(ref val) = self.subnet_ids {
  112    112   
            ser.write_list(
  113    113   
                &DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_SUBNET_IDS,
  114    114   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  115    115   
                    for item in val {
  116    116   
                        ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
  117    117   
                    }
  118    118   
                    Ok(())
  119    119   
                },
  120    120   
            )?;
  121    121   
        }
  122    122   
        if let Some(ref val) = self.dry_run {
  123    123   
            ser.write_boolean(&DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_MEMBER_DRY_RUN, *val)?;
  124    124   
        }
  125    125   
        Ok(())
  126    126   
    }
  127    127   
}
  128    128   
impl DisassociateTransitGatewayMulticastDomainInput {
  129    129   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  130         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  131         -
        deserializer: &mut D,
         130  +
    pub fn deserialize(
         131  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  132    132   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  133    133   
        #[allow(unused_variables, unused_mut)]
  134    134   
        let mut builder = Self::builder();
  135    135   
        #[allow(
  136    136   
            unused_variables,
  137    137   
            unreachable_code,
  138    138   
            clippy::single_match,
  139    139   
            clippy::match_single_binding,
  140    140   
            clippy::diverging_sub_expression
  141    141   
        )]
  142         -
        deserializer.read_struct(&DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_SCHEMA, (), |_, member, deser| {
         142  +
        deserializer.read_struct(&DISASSOCIATETRANSITGATEWAYMULTICASTDOMAININPUT_SCHEMA, &mut |member, deser| {
  143    143   
            match member.member_index() {
  144    144   
                Some(0) => {
  145    145   
                    builder.transit_gateway_multicast_domain_id = Some(deser.read_string(member)?);
  146    146   
                }
  147    147   
                Some(1) => {
  148    148   
                    builder.transit_gateway_attachment_id = Some(deser.read_string(member)?);
  149    149   
                }
  150    150   
                Some(2) => {
  151         -
                    builder.subnet_ids = Some({
  152         -
                        let container = if let Some(cap) = deser.container_size() {
  153         -
                            Vec::with_capacity(cap)
  154         -
                        } else {
  155         -
                            Vec::new()
  156         -
                        };
  157         -
                        deser.read_list(member, container, |mut list, deser| {
  158         -
                            list.push(deser.read_string(member)?);
  159         -
                            Ok(list)
  160         -
                        })?
  161         -
                    });
         151  +
                    builder.subnet_ids = Some(deser.read_string_list(member)?);
  162    152   
                }
  163    153   
                Some(3) => {
  164    154   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  165    155   
                }
  166    156   
                _ => {}
  167    157   
            }
  168    158   
            Ok(())
  169    159   
        })?;
         160  +
        builder.transit_gateway_multicast_domain_id = builder.transit_gateway_multicast_domain_id.or(Some(String::new()));
         161  +
        builder.transit_gateway_attachment_id = builder.transit_gateway_attachment_id.or(Some(String::new()));
         162  +
        builder.subnet_ids = builder.subnet_ids.or(Some(Vec::new()));
  170    163   
        builder
  171    164   
            .build()
  172    165   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  173    166   
    }
  174    167   
}
         168  +
impl DisassociateTransitGatewayMulticastDomainInput {
         169  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         170  +
    pub fn deserialize_with_response(
         171  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         172  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         173  +
        _status: u16,
         174  +
        _body: &[u8],
         175  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         176  +
        Self::deserialize(deserializer)
         177  +
    }
         178  +
}
  175    179   
impl DisassociateTransitGatewayMulticastDomainInput {
  176    180   
    /// Creates a new builder-style object to manufacture [`DisassociateTransitGatewayMulticastDomainInput`](crate::operation::disassociate_transit_gateway_multicast_domain::DisassociateTransitGatewayMulticastDomainInput).
  177    181   
    pub fn builder(
  178    182   
    ) -> crate::operation::disassociate_transit_gateway_multicast_domain::builders::DisassociateTransitGatewayMulticastDomainInputBuilder {
  179    183   
        crate::operation::disassociate_transit_gateway_multicast_domain::builders::DisassociateTransitGatewayMulticastDomainInputBuilder::default()
  180    184   
    }
  181    185   
}
  182    186   
  183    187   
/// A builder for [`DisassociateTransitGatewayMulticastDomainInput`](crate::operation::disassociate_transit_gateway_multicast_domain::DisassociateTransitGatewayMulticastDomainInput).
  184    188   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]