AWS SDK

AWS SDK

rev. ec7b2441254af868911fccffe8d8dca83aff0045 (ignoring whitespace)

Files changed:

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

@@ -61,61 +222,222 @@
   81     81   
    "com.amazonaws.ec2.synthetic",
   82     82   
    "RevokeSecurityGroupIngressInput",
   83     83   
);
   84     84   
static REVOKESECURITYGROUPINGRESSINPUT_MEMBER_CIDR_IP: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   85     85   
    ::aws_smithy_schema::ShapeId::from_static(
   86     86   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressInput$CidrIp",
   87     87   
        "com.amazonaws.ec2.synthetic",
   88     88   
        "RevokeSecurityGroupIngressInput",
   89     89   
    ),
   90     90   
    ::aws_smithy_schema::ShapeType::String,
   91         -
    "cidr_ip",
          91  +
    "CidrIp",
   92     92   
    0,
   93     93   
);
   94     94   
static REVOKESECURITYGROUPINGRESSINPUT_MEMBER_FROM_PORT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   95     95   
    ::aws_smithy_schema::ShapeId::from_static(
   96     96   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressInput$FromPort",
   97     97   
        "com.amazonaws.ec2.synthetic",
   98     98   
        "RevokeSecurityGroupIngressInput",
   99     99   
    ),
  100    100   
    ::aws_smithy_schema::ShapeType::Integer,
  101         -
    "from_port",
         101  +
    "FromPort",
  102    102   
    1,
  103    103   
);
  104    104   
static REVOKESECURITYGROUPINGRESSINPUT_MEMBER_GROUP_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  105    105   
    ::aws_smithy_schema::ShapeId::from_static(
  106    106   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressInput$GroupId",
  107    107   
        "com.amazonaws.ec2.synthetic",
  108    108   
        "RevokeSecurityGroupIngressInput",
  109    109   
    ),
  110    110   
    ::aws_smithy_schema::ShapeType::String,
  111         -
    "group_id",
         111  +
    "GroupId",
  112    112   
    2,
  113    113   
);
  114    114   
static REVOKESECURITYGROUPINGRESSINPUT_MEMBER_GROUP_NAME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  115    115   
    ::aws_smithy_schema::ShapeId::from_static(
  116    116   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressInput$GroupName",
  117    117   
        "com.amazonaws.ec2.synthetic",
  118    118   
        "RevokeSecurityGroupIngressInput",
  119    119   
    ),
  120    120   
    ::aws_smithy_schema::ShapeType::String,
  121         -
    "group_name",
         121  +
    "GroupName",
  122    122   
    3,
  123    123   
);
  124    124   
static REVOKESECURITYGROUPINGRESSINPUT_MEMBER_IP_PERMISSIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  125    125   
    ::aws_smithy_schema::ShapeId::from_static(
  126    126   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressInput$IpPermissions",
  127    127   
        "com.amazonaws.ec2.synthetic",
  128    128   
        "RevokeSecurityGroupIngressInput",
  129    129   
    ),
  130    130   
    ::aws_smithy_schema::ShapeType::List,
  131         -
    "ip_permissions",
         131  +
    "IpPermissions",
  132    132   
    4,
  133    133   
);
  134    134   
static REVOKESECURITYGROUPINGRESSINPUT_MEMBER_IP_PROTOCOL: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  135    135   
    ::aws_smithy_schema::ShapeId::from_static(
  136    136   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressInput$IpProtocol",
  137    137   
        "com.amazonaws.ec2.synthetic",
  138    138   
        "RevokeSecurityGroupIngressInput",
  139    139   
    ),
  140    140   
    ::aws_smithy_schema::ShapeType::String,
  141         -
    "ip_protocol",
         141  +
    "IpProtocol",
  142    142   
    5,
  143    143   
);
  144    144   
static REVOKESECURITYGROUPINGRESSINPUT_MEMBER_SOURCE_SECURITY_GROUP_NAME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  145    145   
    ::aws_smithy_schema::ShapeId::from_static(
  146    146   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressInput$SourceSecurityGroupName",
  147    147   
        "com.amazonaws.ec2.synthetic",
  148    148   
        "RevokeSecurityGroupIngressInput",
  149    149   
    ),
  150    150   
    ::aws_smithy_schema::ShapeType::String,
  151         -
    "source_security_group_name",
         151  +
    "SourceSecurityGroupName",
  152    152   
    6,
  153    153   
);
  154    154   
static REVOKESECURITYGROUPINGRESSINPUT_MEMBER_SOURCE_SECURITY_GROUP_OWNER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  155    155   
    ::aws_smithy_schema::ShapeId::from_static(
  156    156   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressInput$SourceSecurityGroupOwnerId",
  157    157   
        "com.amazonaws.ec2.synthetic",
  158    158   
        "RevokeSecurityGroupIngressInput",
  159    159   
    ),
  160    160   
    ::aws_smithy_schema::ShapeType::String,
  161         -
    "source_security_group_owner_id",
         161  +
    "SourceSecurityGroupOwnerId",
  162    162   
    7,
  163    163   
);
  164    164   
static REVOKESECURITYGROUPINGRESSINPUT_MEMBER_TO_PORT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  165    165   
    ::aws_smithy_schema::ShapeId::from_static(
  166    166   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressInput$ToPort",
  167    167   
        "com.amazonaws.ec2.synthetic",
  168    168   
        "RevokeSecurityGroupIngressInput",
  169    169   
    ),
  170    170   
    ::aws_smithy_schema::ShapeType::Integer,
  171         -
    "to_port",
         171  +
    "ToPort",
  172    172   
    8,
  173    173   
);
  174    174   
static REVOKESECURITYGROUPINGRESSINPUT_MEMBER_SECURITY_GROUP_RULE_IDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  175    175   
    ::aws_smithy_schema::ShapeId::from_static(
  176    176   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressInput$SecurityGroupRuleIds",
  177    177   
        "com.amazonaws.ec2.synthetic",
  178    178   
        "RevokeSecurityGroupIngressInput",
  179    179   
    ),
  180    180   
    ::aws_smithy_schema::ShapeType::List,
  181         -
    "security_group_rule_ids",
         181  +
    "SecurityGroupRuleIds",
  182    182   
    9,
  183    183   
)
  184    184   
.with_xml_name("SecurityGroupRuleId");
  185    185   
static REVOKESECURITYGROUPINGRESSINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  186    186   
    ::aws_smithy_schema::ShapeId::from_static(
  187    187   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressInput$DryRun",
  188    188   
        "com.amazonaws.ec2.synthetic",
  189    189   
        "RevokeSecurityGroupIngressInput",
  190    190   
    ),
  191    191   
    ::aws_smithy_schema::ShapeType::Boolean,
  192         -
    "dry_run",
         192  +
    "DryRun",
  193    193   
    10,
  194    194   
)
  195    195   
.with_xml_name("dryRun");
  196    196   
static REVOKESECURITYGROUPINGRESSINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  197    197   
    REVOKESECURITYGROUPINGRESSINPUT_SCHEMA_ID,
  198    198   
    ::aws_smithy_schema::ShapeType::Structure,
  199    199   
    &[
  200    200   
        &REVOKESECURITYGROUPINGRESSINPUT_MEMBER_CIDR_IP,
  201    201   
        &REVOKESECURITYGROUPINGRESSINPUT_MEMBER_FROM_PORT,
  202    202   
        &REVOKESECURITYGROUPINGRESSINPUT_MEMBER_GROUP_ID,
@@ -247,247 +382,380 @@
  267    267   
            )?;
  268    268   
        }
  269    269   
        if let Some(ref val) = self.dry_run {
  270    270   
            ser.write_boolean(&REVOKESECURITYGROUPINGRESSINPUT_MEMBER_DRY_RUN, *val)?;
  271    271   
        }
  272    272   
        Ok(())
  273    273   
    }
  274    274   
}
  275    275   
impl RevokeSecurityGroupIngressInput {
  276    276   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  277         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  278         -
        deserializer: &mut D,
         277  +
    pub fn deserialize(
         278  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  279    279   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  280    280   
        #[allow(unused_variables, unused_mut)]
  281    281   
        let mut builder = Self::builder();
  282    282   
        #[allow(
  283    283   
            unused_variables,
  284    284   
            unreachable_code,
  285    285   
            clippy::single_match,
  286    286   
            clippy::match_single_binding,
  287    287   
            clippy::diverging_sub_expression
  288    288   
        )]
  289         -
        deserializer.read_struct(&REVOKESECURITYGROUPINGRESSINPUT_SCHEMA, (), |_, member, deser| {
         289  +
        deserializer.read_struct(&REVOKESECURITYGROUPINGRESSINPUT_SCHEMA, &mut |member, deser| {
  290    290   
            match member.member_index() {
  291    291   
                Some(0) => {
  292    292   
                    builder.cidr_ip = Some(deser.read_string(member)?);
  293    293   
                }
  294    294   
                Some(1) => {
  295    295   
                    builder.from_port = Some(deser.read_integer(member)?);
  296    296   
                }
  297    297   
                Some(2) => {
  298    298   
                    builder.group_id = Some(deser.read_string(member)?);
  299    299   
                }
  300    300   
                Some(3) => {
  301    301   
                    builder.group_name = Some(deser.read_string(member)?);
  302    302   
                }
  303    303   
                Some(4) => {
  304    304   
                    builder.ip_permissions = Some({
  305         -
                        let container = if let Some(cap) = deser.container_size() {
  306         -
                            Vec::with_capacity(cap)
  307         -
                        } else {
  308         -
                            Vec::new()
  309         -
                        };
  310         -
                        deser.read_list(member, container, |mut list, deser| {
  311         -
                            list.push(crate::types::IpPermission::deserialize(deser)?);
  312         -
                            Ok(list)
  313         -
                        })?
         305  +
                        let mut container = Vec::new();
         306  +
                        deser.read_list(member, &mut |deser| {
         307  +
                            container.push(crate::types::IpPermission::deserialize(deser)?);
         308  +
                            Ok(())
         309  +
                        })?;
         310  +
                        container
  314    311   
                    });
  315    312   
                }
  316    313   
                Some(5) => {
  317    314   
                    builder.ip_protocol = Some(deser.read_string(member)?);
  318    315   
                }
  319    316   
                Some(6) => {
  320    317   
                    builder.source_security_group_name = Some(deser.read_string(member)?);
  321    318   
                }
  322    319   
                Some(7) => {
  323    320   
                    builder.source_security_group_owner_id = Some(deser.read_string(member)?);
  324    321   
                }
  325    322   
                Some(8) => {
  326    323   
                    builder.to_port = Some(deser.read_integer(member)?);
  327    324   
                }
  328    325   
                Some(9) => {
  329         -
                    builder.security_group_rule_ids = Some({
  330         -
                        let container = if let Some(cap) = deser.container_size() {
  331         -
                            Vec::with_capacity(cap)
  332         -
                        } else {
  333         -
                            Vec::new()
  334         -
                        };
  335         -
                        deser.read_list(member, container, |mut list, deser| {
  336         -
                            list.push(deser.read_string(member)?);
  337         -
                            Ok(list)
  338         -
                        })?
  339         -
                    });
         326  +
                    builder.security_group_rule_ids = Some(deser.read_string_list(member)?);
  340    327   
                }
  341    328   
                Some(10) => {
  342    329   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  343    330   
                }
  344    331   
                _ => {}
  345    332   
            }
  346    333   
            Ok(())
  347    334   
        })?;
  348    335   
        builder
  349    336   
            .build()
  350    337   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  351    338   
    }
  352    339   
}
         340  +
impl RevokeSecurityGroupIngressInput {
         341  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         342  +
    pub fn deserialize_with_response(
         343  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         344  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         345  +
        _status: u16,
         346  +
        _body: &[u8],
         347  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         348  +
        Self::deserialize(deserializer)
         349  +
    }
         350  +
}
  353    351   
impl RevokeSecurityGroupIngressInput {
  354    352   
    /// Creates a new builder-style object to manufacture [`RevokeSecurityGroupIngressInput`](crate::operation::revoke_security_group_ingress::RevokeSecurityGroupIngressInput).
  355    353   
    pub fn builder() -> crate::operation::revoke_security_group_ingress::builders::RevokeSecurityGroupIngressInputBuilder {
  356    354   
        crate::operation::revoke_security_group_ingress::builders::RevokeSecurityGroupIngressInputBuilder::default()
  357    355   
    }
  358    356   
}
  359    357   
  360    358   
/// A builder for [`RevokeSecurityGroupIngressInput`](crate::operation::revoke_security_group_ingress::RevokeSecurityGroupIngressInput).
  361    359   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  362    360   
#[non_exhaustive]

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

@@ -14,14 +189,248 @@
   34     34   
    "com.amazonaws.ec2.synthetic",
   35     35   
    "RevokeSecurityGroupIngressOutput",
   36     36   
);
   37     37   
static REVOKESECURITYGROUPINGRESSOUTPUT_MEMBER_RETURN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   38     38   
    ::aws_smithy_schema::ShapeId::from_static(
   39     39   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressOutput$Return",
   40     40   
        "com.amazonaws.ec2.synthetic",
   41     41   
        "RevokeSecurityGroupIngressOutput",
   42     42   
    ),
   43     43   
    ::aws_smithy_schema::ShapeType::Boolean,
   44         -
    "r##return",
          44  +
    "Return",
   45     45   
    0,
   46     46   
)
   47     47   
.with_xml_name("return");
   48     48   
static REVOKESECURITYGROUPINGRESSOUTPUT_MEMBER_UNKNOWN_IP_PERMISSIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   49     49   
    ::aws_smithy_schema::ShapeId::from_static(
   50     50   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressOutput$UnknownIpPermissions",
   51     51   
        "com.amazonaws.ec2.synthetic",
   52     52   
        "RevokeSecurityGroupIngressOutput",
   53     53   
    ),
   54     54   
    ::aws_smithy_schema::ShapeType::List,
   55         -
    "unknown_ip_permissions",
          55  +
    "UnknownIpPermissions",
   56     56   
    1,
   57     57   
)
   58     58   
.with_xml_name("unknownIpPermissionSet");
   59     59   
static REVOKESECURITYGROUPINGRESSOUTPUT_MEMBER_REVOKED_SECURITY_GROUP_RULES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   60     60   
    ::aws_smithy_schema::ShapeId::from_static(
   61     61   
        "com.amazonaws.ec2.synthetic#RevokeSecurityGroupIngressOutput$RevokedSecurityGroupRules",
   62     62   
        "com.amazonaws.ec2.synthetic",
   63     63   
        "RevokeSecurityGroupIngressOutput",
   64     64   
    ),
   65     65   
    ::aws_smithy_schema::ShapeType::List,
   66         -
    "revoked_security_group_rules",
          66  +
    "RevokedSecurityGroupRules",
   67     67   
    2,
   68     68   
)
   69     69   
.with_xml_name("revokedSecurityGroupRuleSet");
          70  +
static REVOKESECURITYGROUPINGRESSOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          71  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          72  +
    ::aws_smithy_schema::ShapeType::String,
          73  +
    "request_id",
          74  +
    3,
          75  +
)
          76  +
.with_http_header("x-amzn-requestid");
   70     77   
static REVOKESECURITYGROUPINGRESSOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   71     78   
    REVOKESECURITYGROUPINGRESSOUTPUT_SCHEMA_ID,
   72     79   
    ::aws_smithy_schema::ShapeType::Structure,
   73     80   
    &[
   74     81   
        &REVOKESECURITYGROUPINGRESSOUTPUT_MEMBER_RETURN,
   75     82   
        &REVOKESECURITYGROUPINGRESSOUTPUT_MEMBER_UNKNOWN_IP_PERMISSIONS,
   76     83   
        &REVOKESECURITYGROUPINGRESSOUTPUT_MEMBER_REVOKED_SECURITY_GROUP_RULES,
          84  +
        &REVOKESECURITYGROUPINGRESSOUTPUT_MEMBER__REQUEST_ID,
   77     85   
    ],
   78     86   
);
   79     87   
impl RevokeSecurityGroupIngressOutput {
   80     88   
    /// The schema for this shape.
   81     89   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &REVOKESECURITYGROUPINGRESSOUTPUT_SCHEMA;
   82     90   
}
   83     91   
impl ::aws_smithy_schema::serde::SerializableStruct for RevokeSecurityGroupIngressOutput {
   84     92   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   85     93   
    fn serialize_members(
   86     94   
        &self,
   87     95   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   88     96   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   89     97   
        if let Some(ref val) = self.r#return {
   90     98   
            ser.write_boolean(&REVOKESECURITYGROUPINGRESSOUTPUT_MEMBER_RETURN, *val)?;
   91     99   
        }
   92    100   
        if let Some(ref val) = self.unknown_ip_permissions {
   93    101   
            ser.write_list(
   94    102   
                &REVOKESECURITYGROUPINGRESSOUTPUT_MEMBER_UNKNOWN_IP_PERMISSIONS,
   95    103   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   96    104   
                    for item in val {
   97    105   
                        ser.write_struct(crate::types::IpPermission::SCHEMA, item)?;
   98    106   
                    }
   99    107   
                    Ok(())
  100    108   
                },
  101    109   
            )?;
  102    110   
        }
  103    111   
        if let Some(ref val) = self.revoked_security_group_rules {
  104    112   
            ser.write_list(
  105    113   
                &REVOKESECURITYGROUPINGRESSOUTPUT_MEMBER_REVOKED_SECURITY_GROUP_RULES,
  106    114   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  107    115   
                    for item in val {
  108    116   
                        ser.write_struct(crate::types::RevokedSecurityGroupRule::SCHEMA, item)?;
  109    117   
                    }
  110    118   
                    Ok(())
  111    119   
                },
  112    120   
            )?;
  113    121   
        }
  114    122   
        Ok(())
  115    123   
    }
  116    124   
}
  117    125   
impl RevokeSecurityGroupIngressOutput {
  118    126   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  119         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  120         -
        deserializer: &mut D,
         127  +
    pub fn deserialize(
         128  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  121    129   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  122    130   
        #[allow(unused_variables, unused_mut)]
  123    131   
        let mut builder = Self::builder();
  124    132   
        #[allow(
  125    133   
            unused_variables,
  126    134   
            unreachable_code,
  127    135   
            clippy::single_match,
  128    136   
            clippy::match_single_binding,
  129    137   
            clippy::diverging_sub_expression
  130    138   
        )]
  131         -
        deserializer.read_struct(&REVOKESECURITYGROUPINGRESSOUTPUT_SCHEMA, (), |_, member, deser| {
         139  +
        deserializer.read_struct(&REVOKESECURITYGROUPINGRESSOUTPUT_SCHEMA, &mut |member, deser| {
  132    140   
            match member.member_index() {
  133    141   
                Some(0) => {
  134    142   
                    builder.r#return = Some(deser.read_boolean(member)?);
  135    143   
                }
  136    144   
                Some(1) => {
  137    145   
                    builder.unknown_ip_permissions = Some({
  138         -
                        let container = if let Some(cap) = deser.container_size() {
  139         -
                            Vec::with_capacity(cap)
  140         -
                        } else {
  141         -
                            Vec::new()
  142         -
                        };
  143         -
                        deser.read_list(member, container, |mut list, deser| {
  144         -
                            list.push(crate::types::IpPermission::deserialize(deser)?);
  145         -
                            Ok(list)
  146         -
                        })?
         146  +
                        let mut container = Vec::new();
         147  +
                        deser.read_list(member, &mut |deser| {
         148  +
                            container.push(crate::types::IpPermission::deserialize(deser)?);
         149  +
                            Ok(())
         150  +
                        })?;
         151  +
                        container
  147    152   
                    });
  148    153   
                }
  149    154   
                Some(2) => {
  150    155   
                    builder.revoked_security_group_rules = Some({
  151         -
                        let container = if let Some(cap) = deser.container_size() {
  152         -
                            Vec::with_capacity(cap)
  153         -
                        } else {
  154         -
                            Vec::new()
  155         -
                        };
  156         -
                        deser.read_list(member, container, |mut list, deser| {
  157         -
                            list.push(crate::types::RevokedSecurityGroupRule::deserialize(deser)?);
  158         -
                            Ok(list)
  159         -
                        })?
         156  +
                        let mut container = Vec::new();
         157  +
                        deser.read_list(member, &mut |deser| {
         158  +
                            container.push(crate::types::RevokedSecurityGroupRule::deserialize(deser)?);
         159  +
                            Ok(())
         160  +
                        })?;
         161  +
                        container
         162  +
                    });
         163  +
                }
         164  +
                Some(3) => {
         165  +
                    builder._request_id = Some(deser.read_string(member)?);
         166  +
                }
         167  +
                _ => {}
         168  +
            }
         169  +
            Ok(())
         170  +
        })?;
         171  +
        Ok(builder.build())
         172  +
    }
         173  +
}
         174  +
impl RevokeSecurityGroupIngressOutput {
         175  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         176  +
    /// Header-bound members are read directly from headers, avoiding runtime
         177  +
    /// member iteration overhead. Body members are read via the deserializer.
         178  +
    pub fn deserialize_with_response(
         179  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         180  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         181  +
        _status: u16,
         182  +
        _body: &[u8],
         183  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         184  +
        #[allow(unused_variables, unused_mut)]
         185  +
        let mut builder = Self::builder();
         186  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         187  +
            builder._request_id = Some(val.to_string());
         188  +
        }
         189  +
        #[allow(
         190  +
            unused_variables,
         191  +
            unreachable_code,
         192  +
            clippy::single_match,
         193  +
            clippy::match_single_binding,
         194  +
            clippy::diverging_sub_expression
         195  +
        )]
         196  +
        deserializer.read_struct(&REVOKESECURITYGROUPINGRESSOUTPUT_SCHEMA, &mut |member, deser| {
         197  +
            match member.member_index() {
         198  +
                Some(0) => {
         199  +
                    builder.r#return = Some(deser.read_boolean(member)?);
         200  +
                }
         201  +
                Some(1) => {
         202  +
                    builder.unknown_ip_permissions = Some({
         203  +
                        let mut container = Vec::new();
         204  +
                        deser.read_list(member, &mut |deser| {
         205  +
                            container.push(crate::types::IpPermission::deserialize(deser)?);
         206  +
                            Ok(())
         207  +
                        })?;
         208  +
                        container
         209  +
                    });
         210  +
                }
         211  +
                Some(2) => {
         212  +
                    builder.revoked_security_group_rules = Some({
         213  +
                        let mut container = Vec::new();
         214  +
                        deser.read_list(member, &mut |deser| {
         215  +
                            container.push(crate::types::RevokedSecurityGroupRule::deserialize(deser)?);
         216  +
                            Ok(())
         217  +
                        })?;
         218  +
                        container
  160    219   
                    });
  161    220   
                }
  162    221   
                _ => {}
  163    222   
            }
  164    223   
            Ok(())
  165    224   
        })?;
  166    225   
        Ok(builder.build())
  167    226   
    }
  168    227   
}
  169    228   
impl ::aws_types::request_id::RequestId for RevokeSecurityGroupIngressOutput {

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/run_instances.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 `RunInstances`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct RunInstances;
    6      6   
impl RunInstances {
    7      7   
    /// Creates a new `RunInstances`
    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::run_instances::RunInstancesInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::run_instances::RunInstancesOutput::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::run_instances::RunInstancesInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::run_instances::RunInstancesOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::run_instances::RunInstancesError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -122,126 +184,189 @@
  142    146   
                crate::operation::run_instances::RunInstancesError,
  143    147   
            >::new());
  144    148   
  145    149   
        ::std::borrow::Cow::Owned(rcb)
  146    150   
    }
  147    151   
}
  148    152   
  149    153   
#[derive(Debug)]
  150    154   
struct RunInstancesResponseDeserializer;
  151    155   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for RunInstancesResponseDeserializer {
  152         -
    fn deserialize_nonstreaming(
         156  +
    fn deserialize_nonstreaming_with_config(
  153    157   
        &self,
  154    158   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         159  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  155    160   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  156    161   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  157    162   
        let headers = response.headers();
  158    163   
        let body = response.body().bytes().expect("body loaded");
  159    164   
        #[allow(unused_mut)]
  160    165   
        let mut force_error = false;
  161    166   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  162    167   
        let parse_result = if !success && status != 200 || force_error {
  163    168   
            crate::protocol_serde::shape_run_instances::de_run_instances_http_error(status, headers, body)
  164    169   
        } else {

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

@@ -414,414 +909,909 @@
  434    434   
    "com.amazonaws.ec2.synthetic",
  435    435   
    "RunInstancesInput",
  436    436   
);
  437    437   
static RUNINSTANCESINPUT_MEMBER_BLOCK_DEVICE_MAPPINGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  438    438   
    ::aws_smithy_schema::ShapeId::from_static(
  439    439   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$BlockDeviceMappings",
  440    440   
        "com.amazonaws.ec2.synthetic",
  441    441   
        "RunInstancesInput",
  442    442   
    ),
  443    443   
    ::aws_smithy_schema::ShapeType::List,
  444         -
    "block_device_mappings",
         444  +
    "BlockDeviceMappings",
  445    445   
    0,
  446    446   
)
  447    447   
.with_xml_name("BlockDeviceMapping");
  448    448   
static RUNINSTANCESINPUT_MEMBER_IMAGE_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  449    449   
    ::aws_smithy_schema::ShapeId::from_static(
  450    450   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$ImageId",
  451    451   
        "com.amazonaws.ec2.synthetic",
  452    452   
        "RunInstancesInput",
  453    453   
    ),
  454    454   
    ::aws_smithy_schema::ShapeType::String,
  455         -
    "image_id",
         455  +
    "ImageId",
  456    456   
    1,
  457    457   
);
  458    458   
static RUNINSTANCESINPUT_MEMBER_INSTANCE_TYPE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  459    459   
    ::aws_smithy_schema::ShapeId::from_static(
  460    460   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$InstanceType",
  461    461   
        "com.amazonaws.ec2.synthetic",
  462    462   
        "RunInstancesInput",
  463    463   
    ),
  464    464   
    ::aws_smithy_schema::ShapeType::String,
  465         -
    "instance_type",
         465  +
    "InstanceType",
  466    466   
    2,
  467    467   
);
  468    468   
static RUNINSTANCESINPUT_MEMBER_IPV6_ADDRESS_COUNT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  469    469   
    ::aws_smithy_schema::ShapeId::from_static(
  470    470   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$Ipv6AddressCount",
  471    471   
        "com.amazonaws.ec2.synthetic",
  472    472   
        "RunInstancesInput",
  473    473   
    ),
  474    474   
    ::aws_smithy_schema::ShapeType::Integer,
  475         -
    "ipv6_address_count",
         475  +
    "Ipv6AddressCount",
  476    476   
    3,
  477    477   
);
  478    478   
static RUNINSTANCESINPUT_MEMBER_IPV6_ADDRESSES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  479    479   
    ::aws_smithy_schema::ShapeId::from_static(
  480    480   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$Ipv6Addresses",
  481    481   
        "com.amazonaws.ec2.synthetic",
  482    482   
        "RunInstancesInput",
  483    483   
    ),
  484    484   
    ::aws_smithy_schema::ShapeType::List,
  485         -
    "ipv6_addresses",
         485  +
    "Ipv6Addresses",
  486    486   
    4,
  487    487   
)
  488    488   
.with_xml_name("Ipv6Address");
  489    489   
static RUNINSTANCESINPUT_MEMBER_KERNEL_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  490    490   
    ::aws_smithy_schema::ShapeId::from_static(
  491    491   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$KernelId",
  492    492   
        "com.amazonaws.ec2.synthetic",
  493    493   
        "RunInstancesInput",
  494    494   
    ),
  495    495   
    ::aws_smithy_schema::ShapeType::String,
  496         -
    "kernel_id",
         496  +
    "KernelId",
  497    497   
    5,
  498    498   
);
  499    499   
static RUNINSTANCESINPUT_MEMBER_KEY_NAME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  500    500   
    ::aws_smithy_schema::ShapeId::from_static(
  501    501   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$KeyName",
  502    502   
        "com.amazonaws.ec2.synthetic",
  503    503   
        "RunInstancesInput",
  504    504   
    ),
  505    505   
    ::aws_smithy_schema::ShapeType::String,
  506         -
    "key_name",
         506  +
    "KeyName",
  507    507   
    6,
  508    508   
);
  509    509   
static RUNINSTANCESINPUT_MEMBER_MAX_COUNT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  510    510   
    ::aws_smithy_schema::ShapeId::from_static(
  511    511   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$MaxCount",
  512    512   
        "com.amazonaws.ec2.synthetic",
  513    513   
        "RunInstancesInput",
  514    514   
    ),
  515    515   
    ::aws_smithy_schema::ShapeType::Integer,
  516         -
    "max_count",
         516  +
    "MaxCount",
  517    517   
    7,
  518    518   
);
  519    519   
static RUNINSTANCESINPUT_MEMBER_MIN_COUNT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  520    520   
    ::aws_smithy_schema::ShapeId::from_static(
  521    521   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$MinCount",
  522    522   
        "com.amazonaws.ec2.synthetic",
  523    523   
        "RunInstancesInput",
  524    524   
    ),
  525    525   
    ::aws_smithy_schema::ShapeType::Integer,
  526         -
    "min_count",
         526  +
    "MinCount",
  527    527   
    8,
  528    528   
);
  529    529   
static RUNINSTANCESINPUT_MEMBER_MONITORING: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  530    530   
    ::aws_smithy_schema::ShapeId::from_static(
  531    531   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$Monitoring",
  532    532   
        "com.amazonaws.ec2.synthetic",
  533    533   
        "RunInstancesInput",
  534    534   
    ),
  535    535   
    ::aws_smithy_schema::ShapeType::Structure,
  536         -
    "monitoring",
         536  +
    "Monitoring",
  537    537   
    9,
  538    538   
);
  539    539   
static RUNINSTANCESINPUT_MEMBER_PLACEMENT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  540    540   
    ::aws_smithy_schema::ShapeId::from_static(
  541    541   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$Placement",
  542    542   
        "com.amazonaws.ec2.synthetic",
  543    543   
        "RunInstancesInput",
  544    544   
    ),
  545    545   
    ::aws_smithy_schema::ShapeType::Structure,
  546         -
    "placement",
         546  +
    "Placement",
  547    547   
    10,
  548    548   
);
  549    549   
static RUNINSTANCESINPUT_MEMBER_RAMDISK_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  550    550   
    ::aws_smithy_schema::ShapeId::from_static(
  551    551   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$RamdiskId",
  552    552   
        "com.amazonaws.ec2.synthetic",
  553    553   
        "RunInstancesInput",
  554    554   
    ),
  555    555   
    ::aws_smithy_schema::ShapeType::String,
  556         -
    "ramdisk_id",
         556  +
    "RamdiskId",
  557    557   
    11,
  558    558   
);
  559    559   
static RUNINSTANCESINPUT_MEMBER_SECURITY_GROUP_IDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  560    560   
    ::aws_smithy_schema::ShapeId::from_static(
  561    561   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$SecurityGroupIds",
  562    562   
        "com.amazonaws.ec2.synthetic",
  563    563   
        "RunInstancesInput",
  564    564   
    ),
  565    565   
    ::aws_smithy_schema::ShapeType::List,
  566         -
    "security_group_ids",
         566  +
    "SecurityGroupIds",
  567    567   
    12,
  568    568   
)
  569    569   
.with_xml_name("SecurityGroupId");
  570    570   
static RUNINSTANCESINPUT_MEMBER_SECURITY_GROUPS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  571    571   
    ::aws_smithy_schema::ShapeId::from_static(
  572    572   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$SecurityGroups",
  573    573   
        "com.amazonaws.ec2.synthetic",
  574    574   
        "RunInstancesInput",
  575    575   
    ),
  576    576   
    ::aws_smithy_schema::ShapeType::List,
  577         -
    "security_groups",
         577  +
    "SecurityGroups",
  578    578   
    13,
  579    579   
)
  580    580   
.with_xml_name("SecurityGroup");
  581    581   
static RUNINSTANCESINPUT_MEMBER_SUBNET_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  582    582   
    ::aws_smithy_schema::ShapeId::from_static(
  583    583   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$SubnetId",
  584    584   
        "com.amazonaws.ec2.synthetic",
  585    585   
        "RunInstancesInput",
  586    586   
    ),
  587    587   
    ::aws_smithy_schema::ShapeType::String,
  588         -
    "subnet_id",
         588  +
    "SubnetId",
  589    589   
    14,
  590    590   
);
  591    591   
static RUNINSTANCESINPUT_MEMBER_USER_DATA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  592    592   
    ::aws_smithy_schema::ShapeId::from_static(
  593    593   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$UserData",
  594    594   
        "com.amazonaws.ec2.synthetic",
  595    595   
        "RunInstancesInput",
  596    596   
    ),
  597    597   
    ::aws_smithy_schema::ShapeType::String,
  598         -
    "user_data",
         598  +
    "UserData",
  599    599   
    15,
  600    600   
);
  601    601   
static RUNINSTANCESINPUT_MEMBER_ELASTIC_GPU_SPECIFICATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  602    602   
    ::aws_smithy_schema::ShapeId::from_static(
  603    603   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$ElasticGpuSpecification",
  604    604   
        "com.amazonaws.ec2.synthetic",
  605    605   
        "RunInstancesInput",
  606    606   
    ),
  607    607   
    ::aws_smithy_schema::ShapeType::List,
  608         -
    "elastic_gpu_specification",
         608  +
    "ElasticGpuSpecification",
  609    609   
    16,
  610    610   
);
  611    611   
static RUNINSTANCESINPUT_MEMBER_ELASTIC_INFERENCE_ACCELERATORS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  612    612   
    ::aws_smithy_schema::ShapeId::from_static(
  613    613   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$ElasticInferenceAccelerators",
  614    614   
        "com.amazonaws.ec2.synthetic",
  615    615   
        "RunInstancesInput",
  616    616   
    ),
  617    617   
    ::aws_smithy_schema::ShapeType::List,
  618         -
    "elastic_inference_accelerators",
         618  +
    "ElasticInferenceAccelerators",
  619    619   
    17,
  620    620   
)
  621    621   
.with_xml_name("ElasticInferenceAccelerator");
  622    622   
static RUNINSTANCESINPUT_MEMBER_TAG_SPECIFICATIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  623    623   
    ::aws_smithy_schema::ShapeId::from_static(
  624    624   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$TagSpecifications",
  625    625   
        "com.amazonaws.ec2.synthetic",
  626    626   
        "RunInstancesInput",
  627    627   
    ),
  628    628   
    ::aws_smithy_schema::ShapeType::List,
  629         -
    "tag_specifications",
         629  +
    "TagSpecifications",
  630    630   
    18,
  631    631   
)
  632    632   
.with_xml_name("TagSpecification");
  633    633   
static RUNINSTANCESINPUT_MEMBER_LAUNCH_TEMPLATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  634    634   
    ::aws_smithy_schema::ShapeId::from_static(
  635    635   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$LaunchTemplate",
  636    636   
        "com.amazonaws.ec2.synthetic",
  637    637   
        "RunInstancesInput",
  638    638   
    ),
  639    639   
    ::aws_smithy_schema::ShapeType::Structure,
  640         -
    "launch_template",
         640  +
    "LaunchTemplate",
  641    641   
    19,
  642    642   
);
  643    643   
static RUNINSTANCESINPUT_MEMBER_INSTANCE_MARKET_OPTIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  644    644   
    ::aws_smithy_schema::ShapeId::from_static(
  645    645   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$InstanceMarketOptions",
  646    646   
        "com.amazonaws.ec2.synthetic",
  647    647   
        "RunInstancesInput",
  648    648   
    ),
  649    649   
    ::aws_smithy_schema::ShapeType::Structure,
  650         -
    "instance_market_options",
         650  +
    "InstanceMarketOptions",
  651    651   
    20,
  652    652   
);
  653    653   
static RUNINSTANCESINPUT_MEMBER_CREDIT_SPECIFICATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  654    654   
    ::aws_smithy_schema::ShapeId::from_static(
  655    655   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$CreditSpecification",
  656    656   
        "com.amazonaws.ec2.synthetic",
  657    657   
        "RunInstancesInput",
  658    658   
    ),
  659    659   
    ::aws_smithy_schema::ShapeType::Structure,
  660         -
    "credit_specification",
         660  +
    "CreditSpecification",
  661    661   
    21,
  662    662   
);
  663    663   
static RUNINSTANCESINPUT_MEMBER_CPU_OPTIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  664    664   
    ::aws_smithy_schema::ShapeId::from_static(
  665    665   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$CpuOptions",
  666    666   
        "com.amazonaws.ec2.synthetic",
  667    667   
        "RunInstancesInput",
  668    668   
    ),
  669    669   
    ::aws_smithy_schema::ShapeType::Structure,
  670         -
    "cpu_options",
         670  +
    "CpuOptions",
  671    671   
    22,
  672    672   
);
  673    673   
static RUNINSTANCESINPUT_MEMBER_CAPACITY_RESERVATION_SPECIFICATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  674    674   
    ::aws_smithy_schema::ShapeId::from_static(
  675    675   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$CapacityReservationSpecification",
  676    676   
        "com.amazonaws.ec2.synthetic",
  677    677   
        "RunInstancesInput",
  678    678   
    ),
  679    679   
    ::aws_smithy_schema::ShapeType::Structure,
  680         -
    "capacity_reservation_specification",
         680  +
    "CapacityReservationSpecification",
  681    681   
    23,
  682    682   
);
  683    683   
static RUNINSTANCESINPUT_MEMBER_HIBERNATION_OPTIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  684    684   
    ::aws_smithy_schema::ShapeId::from_static(
  685    685   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$HibernationOptions",
  686    686   
        "com.amazonaws.ec2.synthetic",
  687    687   
        "RunInstancesInput",
  688    688   
    ),
  689    689   
    ::aws_smithy_schema::ShapeType::Structure,
  690         -
    "hibernation_options",
         690  +
    "HibernationOptions",
  691    691   
    24,
  692    692   
);
  693    693   
static RUNINSTANCESINPUT_MEMBER_LICENSE_SPECIFICATIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  694    694   
    ::aws_smithy_schema::ShapeId::from_static(
  695    695   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$LicenseSpecifications",
  696    696   
        "com.amazonaws.ec2.synthetic",
  697    697   
        "RunInstancesInput",
  698    698   
    ),
  699    699   
    ::aws_smithy_schema::ShapeType::List,
  700         -
    "license_specifications",
         700  +
    "LicenseSpecifications",
  701    701   
    25,
  702    702   
)
  703    703   
.with_xml_name("LicenseSpecification");
  704    704   
static RUNINSTANCESINPUT_MEMBER_METADATA_OPTIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  705    705   
    ::aws_smithy_schema::ShapeId::from_static(
  706    706   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$MetadataOptions",
  707    707   
        "com.amazonaws.ec2.synthetic",
  708    708   
        "RunInstancesInput",
  709    709   
    ),
  710    710   
    ::aws_smithy_schema::ShapeType::Structure,
  711         -
    "metadata_options",
         711  +
    "MetadataOptions",
  712    712   
    26,
  713    713   
);
  714    714   
static RUNINSTANCESINPUT_MEMBER_ENCLAVE_OPTIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  715    715   
    ::aws_smithy_schema::ShapeId::from_static(
  716    716   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$EnclaveOptions",
  717    717   
        "com.amazonaws.ec2.synthetic",
  718    718   
        "RunInstancesInput",
  719    719   
    ),
  720    720   
    ::aws_smithy_schema::ShapeType::Structure,
  721         -
    "enclave_options",
         721  +
    "EnclaveOptions",
  722    722   
    27,
  723    723   
);
  724    724   
static RUNINSTANCESINPUT_MEMBER_PRIVATE_DNS_NAME_OPTIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  725    725   
    ::aws_smithy_schema::ShapeId::from_static(
  726    726   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$PrivateDnsNameOptions",
  727    727   
        "com.amazonaws.ec2.synthetic",
  728    728   
        "RunInstancesInput",
  729    729   
    ),
  730    730   
    ::aws_smithy_schema::ShapeType::Structure,
  731         -
    "private_dns_name_options",
         731  +
    "PrivateDnsNameOptions",
  732    732   
    28,
  733    733   
);
  734    734   
static RUNINSTANCESINPUT_MEMBER_MAINTENANCE_OPTIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  735    735   
    ::aws_smithy_schema::ShapeId::from_static(
  736    736   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$MaintenanceOptions",
  737    737   
        "com.amazonaws.ec2.synthetic",
  738    738   
        "RunInstancesInput",
  739    739   
    ),
  740    740   
    ::aws_smithy_schema::ShapeType::Structure,
  741         -
    "maintenance_options",
         741  +
    "MaintenanceOptions",
  742    742   
    29,
  743    743   
);
  744    744   
static RUNINSTANCESINPUT_MEMBER_DISABLE_API_STOP: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  745    745   
    ::aws_smithy_schema::ShapeId::from_static(
  746    746   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$DisableApiStop",
  747    747   
        "com.amazonaws.ec2.synthetic",
  748    748   
        "RunInstancesInput",
  749    749   
    ),
  750    750   
    ::aws_smithy_schema::ShapeType::Boolean,
  751         -
    "disable_api_stop",
         751  +
    "DisableApiStop",
  752    752   
    30,
  753    753   
);
  754    754   
static RUNINSTANCESINPUT_MEMBER_ENABLE_PRIMARY_IPV6: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  755    755   
    ::aws_smithy_schema::ShapeId::from_static(
  756    756   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$EnablePrimaryIpv6",
  757    757   
        "com.amazonaws.ec2.synthetic",
  758    758   
        "RunInstancesInput",
  759    759   
    ),
  760    760   
    ::aws_smithy_schema::ShapeType::Boolean,
  761         -
    "enable_primary_ipv6",
         761  +
    "EnablePrimaryIpv6",
  762    762   
    31,
  763    763   
);
  764    764   
static RUNINSTANCESINPUT_MEMBER_NETWORK_PERFORMANCE_OPTIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  765    765   
    ::aws_smithy_schema::ShapeId::from_static(
  766    766   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$NetworkPerformanceOptions",
  767    767   
        "com.amazonaws.ec2.synthetic",
  768    768   
        "RunInstancesInput",
  769    769   
    ),
  770    770   
    ::aws_smithy_schema::ShapeType::Structure,
  771         -
    "network_performance_options",
         771  +
    "NetworkPerformanceOptions",
  772    772   
    32,
  773    773   
);
  774    774   
static RUNINSTANCESINPUT_MEMBER_OPERATOR: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  775    775   
    ::aws_smithy_schema::ShapeId::from_static(
  776    776   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$Operator",
  777    777   
        "com.amazonaws.ec2.synthetic",
  778    778   
        "RunInstancesInput",
  779    779   
    ),
  780    780   
    ::aws_smithy_schema::ShapeType::Structure,
  781         -
    "operator",
         781  +
    "Operator",
  782    782   
    33,
  783    783   
);
  784    784   
static RUNINSTANCESINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  785    785   
    ::aws_smithy_schema::ShapeId::from_static(
  786    786   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$DryRun",
  787    787   
        "com.amazonaws.ec2.synthetic",
  788    788   
        "RunInstancesInput",
  789    789   
    ),
  790    790   
    ::aws_smithy_schema::ShapeType::Boolean,
  791         -
    "dry_run",
         791  +
    "DryRun",
  792    792   
    34,
  793    793   
)
  794    794   
.with_xml_name("dryRun");
  795    795   
static RUNINSTANCESINPUT_MEMBER_DISABLE_API_TERMINATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  796    796   
    ::aws_smithy_schema::ShapeId::from_static(
  797    797   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$DisableApiTermination",
  798    798   
        "com.amazonaws.ec2.synthetic",
  799    799   
        "RunInstancesInput",
  800    800   
    ),
  801    801   
    ::aws_smithy_schema::ShapeType::Boolean,
  802         -
    "disable_api_termination",
         802  +
    "DisableApiTermination",
  803    803   
    35,
  804    804   
)
  805    805   
.with_xml_name("disableApiTermination");
  806    806   
static RUNINSTANCESINPUT_MEMBER_INSTANCE_INITIATED_SHUTDOWN_BEHAVIOR: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  807    807   
    ::aws_smithy_schema::ShapeId::from_static(
  808    808   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$InstanceInitiatedShutdownBehavior",
  809    809   
        "com.amazonaws.ec2.synthetic",
  810    810   
        "RunInstancesInput",
  811    811   
    ),
  812    812   
    ::aws_smithy_schema::ShapeType::String,
  813         -
    "instance_initiated_shutdown_behavior",
         813  +
    "InstanceInitiatedShutdownBehavior",
  814    814   
    36,
  815    815   
)
  816    816   
.with_xml_name("instanceInitiatedShutdownBehavior");
  817    817   
static RUNINSTANCESINPUT_MEMBER_PRIVATE_IP_ADDRESS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  818    818   
    ::aws_smithy_schema::ShapeId::from_static(
  819    819   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$PrivateIpAddress",
  820    820   
        "com.amazonaws.ec2.synthetic",
  821    821   
        "RunInstancesInput",
  822    822   
    ),
  823    823   
    ::aws_smithy_schema::ShapeType::String,
  824         -
    "private_ip_address",
         824  +
    "PrivateIpAddress",
  825    825   
    37,
  826    826   
)
  827    827   
.with_xml_name("privateIpAddress");
  828    828   
static RUNINSTANCESINPUT_MEMBER_CLIENT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  829    829   
    ::aws_smithy_schema::ShapeId::from_static(
  830    830   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$ClientToken",
  831    831   
        "com.amazonaws.ec2.synthetic",
  832    832   
        "RunInstancesInput",
  833    833   
    ),
  834    834   
    ::aws_smithy_schema::ShapeType::String,
  835         -
    "client_token",
         835  +
    "ClientToken",
  836    836   
    38,
  837    837   
)
  838    838   
.with_xml_name("clientToken");
  839    839   
static RUNINSTANCESINPUT_MEMBER_ADDITIONAL_INFO: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  840    840   
    ::aws_smithy_schema::ShapeId::from_static(
  841    841   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$AdditionalInfo",
  842    842   
        "com.amazonaws.ec2.synthetic",
  843    843   
        "RunInstancesInput",
  844    844   
    ),
  845    845   
    ::aws_smithy_schema::ShapeType::String,
  846         -
    "additional_info",
         846  +
    "AdditionalInfo",
  847    847   
    39,
  848    848   
)
  849    849   
.with_xml_name("additionalInfo");
  850    850   
static RUNINSTANCESINPUT_MEMBER_NETWORK_INTERFACES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  851    851   
    ::aws_smithy_schema::ShapeId::from_static(
  852    852   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$NetworkInterfaces",
  853    853   
        "com.amazonaws.ec2.synthetic",
  854    854   
        "RunInstancesInput",
  855    855   
    ),
  856    856   
    ::aws_smithy_schema::ShapeType::List,
  857         -
    "network_interfaces",
         857  +
    "NetworkInterfaces",
  858    858   
    40,
  859    859   
)
  860    860   
.with_xml_name("networkInterface");
  861    861   
static RUNINSTANCESINPUT_MEMBER_IAM_INSTANCE_PROFILE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  862    862   
    ::aws_smithy_schema::ShapeId::from_static(
  863    863   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$IamInstanceProfile",
  864    864   
        "com.amazonaws.ec2.synthetic",
  865    865   
        "RunInstancesInput",
  866    866   
    ),
  867    867   
    ::aws_smithy_schema::ShapeType::Structure,
  868         -
    "iam_instance_profile",
         868  +
    "IamInstanceProfile",
  869    869   
    41,
  870    870   
)
  871    871   
.with_xml_name("iamInstanceProfile");
  872    872   
static RUNINSTANCESINPUT_MEMBER_EBS_OPTIMIZED: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  873    873   
    ::aws_smithy_schema::ShapeId::from_static(
  874    874   
        "com.amazonaws.ec2.synthetic#RunInstancesInput$EbsOptimized",
  875    875   
        "com.amazonaws.ec2.synthetic",
  876    876   
        "RunInstancesInput",
  877    877   
    ),
  878    878   
    ::aws_smithy_schema::ShapeType::Boolean,
  879         -
    "ebs_optimized",
         879  +
    "EbsOptimized",
  880    880   
    42,
  881    881   
)
  882    882   
.with_xml_name("ebsOptimized");
  883    883   
static RUNINSTANCESINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  884    884   
    RUNINSTANCESINPUT_SCHEMA_ID,
  885    885   
    ::aws_smithy_schema::ShapeType::Structure,
  886    886   
    &[
  887    887   
        &RUNINSTANCESINPUT_MEMBER_BLOCK_DEVICE_MAPPINGS,
  888    888   
        &RUNINSTANCESINPUT_MEMBER_IMAGE_ID,
  889    889   
        &RUNINSTANCESINPUT_MEMBER_INSTANCE_TYPE,
@@ -1118,1118 +1419,1391 @@
 1138   1138   
            ser.write_struct(&RUNINSTANCESINPUT_MEMBER_IAM_INSTANCE_PROFILE, val)?;
 1139   1139   
        }
 1140   1140   
        if let Some(ref val) = self.ebs_optimized {
 1141   1141   
            ser.write_boolean(&RUNINSTANCESINPUT_MEMBER_EBS_OPTIMIZED, *val)?;
 1142   1142   
        }
 1143   1143   
        Ok(())
 1144   1144   
    }
 1145   1145   
}
 1146   1146   
impl RunInstancesInput {
 1147   1147   
    /// Deserializes this structure from a [`ShapeDeserializer`].
 1148         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
 1149         -
        deserializer: &mut D,
        1148  +
    pub fn deserialize(
        1149  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
 1150   1150   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
 1151   1151   
        #[allow(unused_variables, unused_mut)]
 1152   1152   
        let mut builder = Self::builder();
 1153   1153   
        #[allow(
 1154   1154   
            unused_variables,
 1155   1155   
            unreachable_code,
 1156   1156   
            clippy::single_match,
 1157   1157   
            clippy::match_single_binding,
 1158   1158   
            clippy::diverging_sub_expression
 1159   1159   
        )]
 1160         -
        deserializer.read_struct(&RUNINSTANCESINPUT_SCHEMA, (), |_, member, deser| {
        1160  +
        deserializer.read_struct(&RUNINSTANCESINPUT_SCHEMA, &mut |member, deser| {
 1161   1161   
            match member.member_index() {
 1162   1162   
                Some(0) => {
 1163   1163   
                    builder.block_device_mappings = Some({
 1164         -
                        let container = if let Some(cap) = deser.container_size() {
 1165         -
                            Vec::with_capacity(cap)
 1166         -
                        } else {
 1167         -
                            Vec::new()
 1168         -
                        };
 1169         -
                        deser.read_list(member, container, |mut list, deser| {
 1170         -
                            list.push(crate::types::BlockDeviceMapping::deserialize(deser)?);
 1171         -
                            Ok(list)
 1172         -
                        })?
        1164  +
                        let mut container = Vec::new();
        1165  +
                        deser.read_list(member, &mut |deser| {
        1166  +
                            container.push(crate::types::BlockDeviceMapping::deserialize(deser)?);
        1167  +
                            Ok(())
        1168  +
                        })?;
        1169  +
                        container
 1173   1170   
                    });
 1174   1171   
                }
 1175   1172   
                Some(1) => {
 1176   1173   
                    builder.image_id = Some(deser.read_string(member)?);
 1177   1174   
                }
 1178   1175   
                Some(2) => {
 1179   1176   
                    builder.instance_type = Some(crate::types::InstanceType::from(deser.read_string(member)?.as_str()));
 1180   1177   
                }
 1181   1178   
                Some(3) => {
 1182   1179   
                    builder.ipv6_address_count = Some(deser.read_integer(member)?);
 1183   1180   
                }
 1184   1181   
                Some(4) => {
 1185   1182   
                    builder.ipv6_addresses = Some({
 1186         -
                        let container = if let Some(cap) = deser.container_size() {
 1187         -
                            Vec::with_capacity(cap)
 1188         -
                        } else {
 1189         -
                            Vec::new()
 1190         -
                        };
 1191         -
                        deser.read_list(member, container, |mut list, deser| {
 1192         -
                            list.push(crate::types::InstanceIpv6Address::deserialize(deser)?);
 1193         -
                            Ok(list)
 1194         -
                        })?
        1183  +
                        let mut container = Vec::new();
        1184  +
                        deser.read_list(member, &mut |deser| {
        1185  +
                            container.push(crate::types::InstanceIpv6Address::deserialize(deser)?);
        1186  +
                            Ok(())
        1187  +
                        })?;
        1188  +
                        container
 1195   1189   
                    });
 1196   1190   
                }
 1197   1191   
                Some(5) => {
 1198   1192   
                    builder.kernel_id = Some(deser.read_string(member)?);
 1199   1193   
                }
 1200   1194   
                Some(6) => {
 1201   1195   
                    builder.key_name = Some(deser.read_string(member)?);
 1202   1196   
                }
 1203   1197   
                Some(7) => {
 1204   1198   
                    builder.max_count = Some(deser.read_integer(member)?);
 1205   1199   
                }
 1206   1200   
                Some(8) => {
 1207   1201   
                    builder.min_count = Some(deser.read_integer(member)?);
 1208   1202   
                }
 1209   1203   
                Some(9) => {
 1210   1204   
                    builder.monitoring = Some(crate::types::RunInstancesMonitoringEnabled::deserialize(deser)?);
 1211   1205   
                }
 1212   1206   
                Some(10) => {
 1213   1207   
                    builder.placement = Some(crate::types::Placement::deserialize(deser)?);
 1214   1208   
                }
 1215   1209   
                Some(11) => {
 1216   1210   
                    builder.ramdisk_id = Some(deser.read_string(member)?);
 1217   1211   
                }
 1218   1212   
                Some(12) => {
 1219         -
                    builder.security_group_ids = Some({
 1220         -
                        let container = if let Some(cap) = deser.container_size() {
 1221         -
                            Vec::with_capacity(cap)
 1222         -
                        } else {
 1223         -
                            Vec::new()
 1224         -
                        };
 1225         -
                        deser.read_list(member, container, |mut list, deser| {
 1226         -
                            list.push(deser.read_string(member)?);
 1227         -
                            Ok(list)
 1228         -
                        })?
 1229         -
                    });
        1213  +
                    builder.security_group_ids = Some(deser.read_string_list(member)?);
 1230   1214   
                }
 1231   1215   
                Some(13) => {
 1232         -
                    builder.security_groups = Some({
 1233         -
                        let container = if let Some(cap) = deser.container_size() {
 1234         -
                            Vec::with_capacity(cap)
 1235         -
                        } else {
 1236         -
                            Vec::new()
 1237         -
                        };
 1238         -
                        deser.read_list(member, container, |mut list, deser| {
 1239         -
                            list.push(deser.read_string(member)?);
 1240         -
                            Ok(list)
 1241         -
                        })?
 1242         -
                    });
        1216  +
                    builder.security_groups = Some(deser.read_string_list(member)?);
 1243   1217   
                }
 1244   1218   
                Some(14) => {
 1245   1219   
                    builder.subnet_id = Some(deser.read_string(member)?);
 1246   1220   
                }
 1247   1221   
                Some(15) => {
 1248   1222   
                    builder.user_data = Some(deser.read_string(member)?);
 1249   1223   
                }
 1250   1224   
                Some(16) => {
 1251   1225   
                    builder.elastic_gpu_specification = Some({
 1252         -
                        let container = if let Some(cap) = deser.container_size() {
 1253         -
                            Vec::with_capacity(cap)
 1254         -
                        } else {
 1255         -
                            Vec::new()
 1256         -
                        };
 1257         -
                        deser.read_list(member, container, |mut list, deser| {
 1258         -
                            list.push(crate::types::ElasticGpuSpecification::deserialize(deser)?);
 1259         -
                            Ok(list)
 1260         -
                        })?
        1226  +
                        let mut container = Vec::new();
        1227  +
                        deser.read_list(member, &mut |deser| {
        1228  +
                            container.push(crate::types::ElasticGpuSpecification::deserialize(deser)?);
        1229  +
                            Ok(())
        1230  +
                        })?;
        1231  +
                        container
 1261   1232   
                    });
 1262   1233   
                }
 1263   1234   
                Some(17) => {
 1264   1235   
                    builder.elastic_inference_accelerators = Some({
 1265         -
                        let container = if let Some(cap) = deser.container_size() {
 1266         -
                            Vec::with_capacity(cap)
 1267         -
                        } else {
 1268         -
                            Vec::new()
 1269         -
                        };
 1270         -
                        deser.read_list(member, container, |mut list, deser| {
 1271         -
                            list.push(crate::types::ElasticInferenceAccelerator::deserialize(deser)?);
 1272         -
                            Ok(list)
 1273         -
                        })?
        1236  +
                        let mut container = Vec::new();
        1237  +
                        deser.read_list(member, &mut |deser| {
        1238  +
                            container.push(crate::types::ElasticInferenceAccelerator::deserialize(deser)?);
        1239  +
                            Ok(())
        1240  +
                        })?;
        1241  +
                        container
 1274   1242   
                    });
 1275   1243   
                }
 1276   1244   
                Some(18) => {
 1277   1245   
                    builder.tag_specifications = Some({
 1278         -
                        let container = if let Some(cap) = deser.container_size() {
 1279         -
                            Vec::with_capacity(cap)
 1280         -
                        } else {
 1281         -
                            Vec::new()
 1282         -
                        };
 1283         -
                        deser.read_list(member, container, |mut list, deser| {
 1284         -
                            list.push(crate::types::TagSpecification::deserialize(deser)?);
 1285         -
                            Ok(list)
 1286         -
                        })?
        1246  +
                        let mut container = Vec::new();
        1247  +
                        deser.read_list(member, &mut |deser| {
        1248  +
                            container.push(crate::types::TagSpecification::deserialize(deser)?);
        1249  +
                            Ok(())
        1250  +
                        })?;
        1251  +
                        container
 1287   1252   
                    });
 1288   1253   
                }
 1289   1254   
                Some(19) => {
 1290   1255   
                    builder.launch_template = Some(crate::types::LaunchTemplateSpecification::deserialize(deser)?);
 1291   1256   
                }
 1292   1257   
                Some(20) => {
 1293   1258   
                    builder.instance_market_options = Some(crate::types::InstanceMarketOptionsRequest::deserialize(deser)?);
 1294   1259   
                }
 1295   1260   
                Some(21) => {
 1296   1261   
                    builder.credit_specification = Some(crate::types::CreditSpecificationRequest::deserialize(deser)?);
 1297   1262   
                }
 1298   1263   
                Some(22) => {
 1299   1264   
                    builder.cpu_options = Some(crate::types::CpuOptionsRequest::deserialize(deser)?);
 1300   1265   
                }
 1301   1266   
                Some(23) => {
 1302   1267   
                    builder.capacity_reservation_specification = Some(crate::types::CapacityReservationSpecification::deserialize(deser)?);
 1303   1268   
                }
 1304   1269   
                Some(24) => {
 1305   1270   
                    builder.hibernation_options = Some(crate::types::HibernationOptionsRequest::deserialize(deser)?);
 1306   1271   
                }
 1307   1272   
                Some(25) => {
 1308   1273   
                    builder.license_specifications = Some({
 1309         -
                        let container = if let Some(cap) = deser.container_size() {
 1310         -
                            Vec::with_capacity(cap)
 1311         -
                        } else {
 1312         -
                            Vec::new()
 1313         -
                        };
 1314         -
                        deser.read_list(member, container, |mut list, deser| {
 1315         -
                            list.push(crate::types::LicenseConfigurationRequest::deserialize(deser)?);
 1316         -
                            Ok(list)
 1317         -
                        })?
        1274  +
                        let mut container = Vec::new();
        1275  +
                        deser.read_list(member, &mut |deser| {
        1276  +
                            container.push(crate::types::LicenseConfigurationRequest::deserialize(deser)?);
        1277  +
                            Ok(())
        1278  +
                        })?;
        1279  +
                        container
 1318   1280   
                    });
 1319   1281   
                }
 1320   1282   
                Some(26) => {
 1321   1283   
                    builder.metadata_options = Some(crate::types::InstanceMetadataOptionsRequest::deserialize(deser)?);
 1322   1284   
                }
 1323   1285   
                Some(27) => {
 1324   1286   
                    builder.enclave_options = Some(crate::types::EnclaveOptionsRequest::deserialize(deser)?);
 1325   1287   
                }
 1326   1288   
                Some(28) => {
 1327   1289   
                    builder.private_dns_name_options = Some(crate::types::PrivateDnsNameOptionsRequest::deserialize(deser)?);
 1328   1290   
                }
 1329   1291   
                Some(29) => {
 1330   1292   
                    builder.maintenance_options = Some(crate::types::InstanceMaintenanceOptionsRequest::deserialize(deser)?);
 1331   1293   
                }
 1332   1294   
                Some(30) => {
 1333   1295   
                    builder.disable_api_stop = Some(deser.read_boolean(member)?);
 1334   1296   
                }
 1335   1297   
                Some(31) => {
 1336   1298   
                    builder.enable_primary_ipv6 = Some(deser.read_boolean(member)?);
 1337   1299   
                }
 1338   1300   
                Some(32) => {
 1339   1301   
                    builder.network_performance_options = Some(crate::types::InstanceNetworkPerformanceOptionsRequest::deserialize(deser)?);
 1340   1302   
                }
 1341   1303   
                Some(33) => {
 1342   1304   
                    builder.operator = Some(crate::types::OperatorRequest::deserialize(deser)?);
 1343   1305   
                }
 1344   1306   
                Some(34) => {
 1345   1307   
                    builder.dry_run = Some(deser.read_boolean(member)?);
 1346   1308   
                }
 1347   1309   
                Some(35) => {
 1348   1310   
                    builder.disable_api_termination = Some(deser.read_boolean(member)?);
 1349   1311   
                }
 1350   1312   
                Some(36) => {
 1351   1313   
                    builder.instance_initiated_shutdown_behavior = Some(crate::types::ShutdownBehavior::from(deser.read_string(member)?.as_str()));
 1352   1314   
                }
 1353   1315   
                Some(37) => {
 1354   1316   
                    builder.private_ip_address = Some(deser.read_string(member)?);
 1355   1317   
                }
 1356   1318   
                Some(38) => {
 1357   1319   
                    builder.client_token = Some(deser.read_string(member)?);
 1358   1320   
                }
 1359   1321   
                Some(39) => {
 1360   1322   
                    builder.additional_info = Some(deser.read_string(member)?);
 1361   1323   
                }
 1362   1324   
                Some(40) => {
 1363   1325   
                    builder.network_interfaces = Some({
 1364         -
                        let container = if let Some(cap) = deser.container_size() {
 1365         -
                            Vec::with_capacity(cap)
 1366         -
                        } else {
 1367         -
                            Vec::new()
 1368         -
                        };
 1369         -
                        deser.read_list(member, container, |mut list, deser| {
 1370         -
                            list.push(crate::types::InstanceNetworkInterfaceSpecification::deserialize(deser)?);
 1371         -
                            Ok(list)
 1372         -
                        })?
        1326  +
                        let mut container = Vec::new();
        1327  +
                        deser.read_list(member, &mut |deser| {
        1328  +
                            container.push(crate::types::InstanceNetworkInterfaceSpecification::deserialize(deser)?);
        1329  +
                            Ok(())
        1330  +
                        })?;
        1331  +
                        container
 1373   1332   
                    });
 1374   1333   
                }
 1375   1334   
                Some(41) => {
 1376   1335   
                    builder.iam_instance_profile = Some(crate::types::IamInstanceProfileSpecification::deserialize(deser)?);
 1377   1336   
                }
 1378   1337   
                Some(42) => {
 1379   1338   
                    builder.ebs_optimized = Some(deser.read_boolean(member)?);
 1380   1339   
                }
 1381   1340   
                _ => {}
 1382   1341   
            }
 1383   1342   
            Ok(())
 1384   1343   
        })?;
        1344  +
        builder.max_count = builder.max_count.or(Some(0i32));
        1345  +
        builder.min_count = builder.min_count.or(Some(0i32));
 1385   1346   
        builder
 1386   1347   
            .build()
 1387   1348   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
 1388   1349   
    }
 1389   1350   
}
        1351  +
impl RunInstancesInput {
        1352  +
    /// Deserializes this structure from a body deserializer and HTTP response.
        1353  +
    pub fn deserialize_with_response(
        1354  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
        1355  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
        1356  +
        _status: u16,
        1357  +
        _body: &[u8],
        1358  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
        1359  +
        Self::deserialize(deserializer)
        1360  +
    }
        1361  +
}
 1390   1362   
impl RunInstancesInput {
 1391   1363   
    /// Creates a new builder-style object to manufacture [`RunInstancesInput`](crate::operation::run_instances::RunInstancesInput).
 1392   1364   
    pub fn builder() -> crate::operation::run_instances::builders::RunInstancesInputBuilder {
 1393   1365   
        crate::operation::run_instances::builders::RunInstancesInputBuilder::default()
 1394   1366   
    }
 1395   1367   
}
 1396   1368   
 1397   1369   
/// A builder for [`RunInstancesInput`](crate::operation::run_instances::RunInstancesInput).
 1398   1370   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
 1399   1371   
#[non_exhaustive]

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

@@ -27,27 +238,303 @@
   47     47   
    "com.amazonaws.ec2.synthetic",
   48     48   
    "RunInstancesOutput",
   49     49   
);
   50     50   
static RUNINSTANCESOUTPUT_MEMBER_RESERVATION_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   51     51   
    ::aws_smithy_schema::ShapeId::from_static(
   52     52   
        "com.amazonaws.ec2.synthetic#RunInstancesOutput$ReservationId",
   53     53   
        "com.amazonaws.ec2.synthetic",
   54     54   
        "RunInstancesOutput",
   55     55   
    ),
   56     56   
    ::aws_smithy_schema::ShapeType::String,
   57         -
    "reservation_id",
          57  +
    "ReservationId",
   58     58   
    0,
   59     59   
)
   60     60   
.with_xml_name("reservationId");
   61     61   
static RUNINSTANCESOUTPUT_MEMBER_OWNER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   62     62   
    ::aws_smithy_schema::ShapeId::from_static(
   63     63   
        "com.amazonaws.ec2.synthetic#RunInstancesOutput$OwnerId",
   64     64   
        "com.amazonaws.ec2.synthetic",
   65     65   
        "RunInstancesOutput",
   66     66   
    ),
   67     67   
    ::aws_smithy_schema::ShapeType::String,
   68         -
    "owner_id",
          68  +
    "OwnerId",
   69     69   
    1,
   70     70   
)
   71     71   
.with_xml_name("ownerId");
   72     72   
static RUNINSTANCESOUTPUT_MEMBER_REQUESTER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   73     73   
    ::aws_smithy_schema::ShapeId::from_static(
   74     74   
        "com.amazonaws.ec2.synthetic#RunInstancesOutput$RequesterId",
   75     75   
        "com.amazonaws.ec2.synthetic",
   76     76   
        "RunInstancesOutput",
   77     77   
    ),
   78     78   
    ::aws_smithy_schema::ShapeType::String,
   79         -
    "requester_id",
          79  +
    "RequesterId",
   80     80   
    2,
   81     81   
)
   82     82   
.with_xml_name("requesterId");
   83     83   
static RUNINSTANCESOUTPUT_MEMBER_GROUPS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   84     84   
    ::aws_smithy_schema::ShapeId::from_static(
   85     85   
        "com.amazonaws.ec2.synthetic#RunInstancesOutput$Groups",
   86     86   
        "com.amazonaws.ec2.synthetic",
   87     87   
        "RunInstancesOutput",
   88     88   
    ),
   89     89   
    ::aws_smithy_schema::ShapeType::List,
   90         -
    "groups",
          90  +
    "Groups",
   91     91   
    3,
   92     92   
)
   93     93   
.with_xml_name("groupSet");
   94     94   
static RUNINSTANCESOUTPUT_MEMBER_INSTANCES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   95     95   
    ::aws_smithy_schema::ShapeId::from_static(
   96     96   
        "com.amazonaws.ec2.synthetic#RunInstancesOutput$Instances",
   97     97   
        "com.amazonaws.ec2.synthetic",
   98     98   
        "RunInstancesOutput",
   99     99   
    ),
  100    100   
    ::aws_smithy_schema::ShapeType::List,
  101         -
    "instances",
         101  +
    "Instances",
  102    102   
    4,
  103    103   
)
  104    104   
.with_xml_name("instancesSet");
         105  +
static RUNINSTANCESOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
         106  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
         107  +
    ::aws_smithy_schema::ShapeType::String,
         108  +
    "request_id",
         109  +
    5,
         110  +
)
         111  +
.with_http_header("x-amzn-requestid");
  105    112   
static RUNINSTANCESOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  106    113   
    RUNINSTANCESOUTPUT_SCHEMA_ID,
  107    114   
    ::aws_smithy_schema::ShapeType::Structure,
  108    115   
    &[
  109    116   
        &RUNINSTANCESOUTPUT_MEMBER_RESERVATION_ID,
  110    117   
        &RUNINSTANCESOUTPUT_MEMBER_OWNER_ID,
  111    118   
        &RUNINSTANCESOUTPUT_MEMBER_REQUESTER_ID,
  112    119   
        &RUNINSTANCESOUTPUT_MEMBER_GROUPS,
  113    120   
        &RUNINSTANCESOUTPUT_MEMBER_INSTANCES,
         121  +
        &RUNINSTANCESOUTPUT_MEMBER__REQUEST_ID,
  114    122   
    ],
  115    123   
);
  116    124   
impl RunInstancesOutput {
  117    125   
    /// The schema for this shape.
  118    126   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &RUNINSTANCESOUTPUT_SCHEMA;
  119    127   
}
  120    128   
impl ::aws_smithy_schema::serde::SerializableStruct for RunInstancesOutput {
  121    129   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  122    130   
    fn serialize_members(
  123    131   
        &self,
  124    132   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  125    133   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  126    134   
        if let Some(ref val) = self.reservation_id {
  127    135   
            ser.write_string(&RUNINSTANCESOUTPUT_MEMBER_RESERVATION_ID, val)?;
  128    136   
        }
  129    137   
        if let Some(ref val) = self.owner_id {
  130    138   
            ser.write_string(&RUNINSTANCESOUTPUT_MEMBER_OWNER_ID, val)?;
  131    139   
        }
  132    140   
        if let Some(ref val) = self.requester_id {
  133    141   
            ser.write_string(&RUNINSTANCESOUTPUT_MEMBER_REQUESTER_ID, val)?;
  134    142   
        }
  135    143   
        if let Some(ref val) = self.groups {
  136    144   
            ser.write_list(
  137    145   
                &RUNINSTANCESOUTPUT_MEMBER_GROUPS,
  138    146   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  139    147   
                    for item in val {
  140    148   
                        ser.write_struct(crate::types::GroupIdentifier::SCHEMA, item)?;
  141    149   
                    }
  142    150   
                    Ok(())
  143    151   
                },
  144    152   
            )?;
  145    153   
        }
  146    154   
        if let Some(ref val) = self.instances {
  147    155   
            ser.write_list(
  148    156   
                &RUNINSTANCESOUTPUT_MEMBER_INSTANCES,
  149    157   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  150    158   
                    for item in val {
  151    159   
                        ser.write_struct(crate::types::Instance::SCHEMA, item)?;
  152    160   
                    }
  153    161   
                    Ok(())
  154    162   
                },
  155    163   
            )?;
  156    164   
        }
  157    165   
        Ok(())
  158    166   
    }
  159    167   
}
  160    168   
impl RunInstancesOutput {
  161    169   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  162         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  163         -
        deserializer: &mut D,
         170  +
    pub fn deserialize(
         171  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         172  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         173  +
        #[allow(unused_variables, unused_mut)]
         174  +
        let mut builder = Self::builder();
         175  +
        #[allow(
         176  +
            unused_variables,
         177  +
            unreachable_code,
         178  +
            clippy::single_match,
         179  +
            clippy::match_single_binding,
         180  +
            clippy::diverging_sub_expression
         181  +
        )]
         182  +
        deserializer.read_struct(&RUNINSTANCESOUTPUT_SCHEMA, &mut |member, deser| {
         183  +
            match member.member_index() {
         184  +
                Some(0) => {
         185  +
                    builder.reservation_id = Some(deser.read_string(member)?);
         186  +
                }
         187  +
                Some(1) => {
         188  +
                    builder.owner_id = Some(deser.read_string(member)?);
         189  +
                }
         190  +
                Some(2) => {
         191  +
                    builder.requester_id = Some(deser.read_string(member)?);
         192  +
                }
         193  +
                Some(3) => {
         194  +
                    builder.groups = Some({
         195  +
                        let mut container = Vec::new();
         196  +
                        deser.read_list(member, &mut |deser| {
         197  +
                            container.push(crate::types::GroupIdentifier::deserialize(deser)?);
         198  +
                            Ok(())
         199  +
                        })?;
         200  +
                        container
         201  +
                    });
         202  +
                }
         203  +
                Some(4) => {
         204  +
                    builder.instances = Some({
         205  +
                        let mut container = Vec::new();
         206  +
                        deser.read_list(member, &mut |deser| {
         207  +
                            container.push(crate::types::Instance::deserialize(deser)?);
         208  +
                            Ok(())
         209  +
                        })?;
         210  +
                        container
         211  +
                    });
         212  +
                }
         213  +
                Some(5) => {
         214  +
                    builder._request_id = Some(deser.read_string(member)?);
         215  +
                }
         216  +
                _ => {}
         217  +
            }
         218  +
            Ok(())
         219  +
        })?;
         220  +
        Ok(builder.build())
         221  +
    }
         222  +
}
         223  +
impl RunInstancesOutput {
         224  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         225  +
    /// Header-bound members are read directly from headers, avoiding runtime
         226  +
    /// member iteration overhead. Body members are read via the deserializer.
         227  +
    pub fn deserialize_with_response(
         228  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         229  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         230  +
        _status: u16,
         231  +
        _body: &[u8],
  164    232   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  165    233   
        #[allow(unused_variables, unused_mut)]
  166    234   
        let mut builder = Self::builder();
         235  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         236  +
            builder._request_id = Some(val.to_string());
         237  +
        }
  167    238   
        #[allow(
  168    239   
            unused_variables,
  169    240   
            unreachable_code,
  170    241   
            clippy::single_match,
  171    242   
            clippy::match_single_binding,
  172    243   
            clippy::diverging_sub_expression
  173    244   
        )]
  174         -
        deserializer.read_struct(&RUNINSTANCESOUTPUT_SCHEMA, (), |_, member, deser| {
         245  +
        deserializer.read_struct(&RUNINSTANCESOUTPUT_SCHEMA, &mut |member, deser| {
  175    246   
            match member.member_index() {
  176    247   
                Some(0) => {
  177    248   
                    builder.reservation_id = Some(deser.read_string(member)?);
  178    249   
                }
  179    250   
                Some(1) => {
  180    251   
                    builder.owner_id = Some(deser.read_string(member)?);
  181    252   
                }
  182    253   
                Some(2) => {
  183    254   
                    builder.requester_id = Some(deser.read_string(member)?);
  184    255   
                }
  185    256   
                Some(3) => {
  186    257   
                    builder.groups = Some({
  187         -
                        let container = if let Some(cap) = deser.container_size() {
  188         -
                            Vec::with_capacity(cap)
  189         -
                        } else {
  190         -
                            Vec::new()
  191         -
                        };
  192         -
                        deser.read_list(member, container, |mut list, deser| {
  193         -
                            list.push(crate::types::GroupIdentifier::deserialize(deser)?);
  194         -
                            Ok(list)
  195         -
                        })?
         258  +
                        let mut container = Vec::new();
         259  +
                        deser.read_list(member, &mut |deser| {
         260  +
                            container.push(crate::types::GroupIdentifier::deserialize(deser)?);
         261  +
                            Ok(())
         262  +
                        })?;
         263  +
                        container
  196    264   
                    });
  197    265   
                }
  198    266   
                Some(4) => {
  199    267   
                    builder.instances = Some({
  200         -
                        let container = if let Some(cap) = deser.container_size() {
  201         -
                            Vec::with_capacity(cap)
  202         -
                        } else {
  203         -
                            Vec::new()
  204         -
                        };
  205         -
                        deser.read_list(member, container, |mut list, deser| {
  206         -
                            list.push(crate::types::Instance::deserialize(deser)?);
  207         -
                            Ok(list)
  208         -
                        })?
         268  +
                        let mut container = Vec::new();
         269  +
                        deser.read_list(member, &mut |deser| {
         270  +
                            container.push(crate::types::Instance::deserialize(deser)?);
         271  +
                            Ok(())
         272  +
                        })?;
         273  +
                        container
  209    274   
                    });
  210    275   
                }
  211    276   
                _ => {}
  212    277   
            }
  213    278   
            Ok(())
  214    279   
        })?;
  215    280   
        Ok(builder.build())
  216    281   
    }
  217    282   
}
  218    283   
impl ::aws_types::request_id::RequestId for RunInstancesOutput {

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/run_scheduled_instances.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 `RunScheduledInstances`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct RunScheduledInstances;
    6      6   
impl RunScheduledInstances {
    7      7   
    /// Creates a new `RunScheduledInstances`
    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::run_scheduled_instances::RunScheduledInstancesInput::SCHEMA;
          13  +
    /// The schema for this operation's output shape.
          14  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema = crate::operation::run_scheduled_instances::RunScheduledInstancesOutput::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::run_scheduled_instances::RunScheduledInstancesInput,
   14     18   
    ) -> ::std::result::Result<
   15     19   
        crate::operation::run_scheduled_instances::RunScheduledInstancesOutput,
   16     20   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     21   
            crate::operation::run_scheduled_instances::RunScheduledInstancesError,
   18     22   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     23   
        >,
   20     24   
    > {
@@ -125,129 +187,192 @@
  145    149   
                crate::operation::run_scheduled_instances::RunScheduledInstancesError,
  146    150   
            >::new());
  147    151   
  148    152   
        ::std::borrow::Cow::Owned(rcb)
  149    153   
    }
  150    154   
}
  151    155   
  152    156   
#[derive(Debug)]
  153    157   
struct RunScheduledInstancesResponseDeserializer;
  154    158   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for RunScheduledInstancesResponseDeserializer {
  155         -
    fn deserialize_nonstreaming(
         159  +
    fn deserialize_nonstreaming_with_config(
  156    160   
        &self,
  157    161   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         162  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  158    163   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  159    164   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  160    165   
        let headers = response.headers();
  161    166   
        let body = response.body().bytes().expect("body loaded");
  162    167   
        #[allow(unused_mut)]
  163    168   
        let mut force_error = false;
  164    169   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  165    170   
        let parse_result = if !success && status != 200 || force_error {
  166    171   
            crate::protocol_serde::shape_run_scheduled_instances::de_run_scheduled_instances_http_error(status, headers, body)
  167    172   
        } else {

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

@@ -35,35 +216,228 @@
   55     55   
    "com.amazonaws.ec2.synthetic",
   56     56   
    "RunScheduledInstancesInput",
   57     57   
);
   58     58   
static RUNSCHEDULEDINSTANCESINPUT_MEMBER_CLIENT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   59     59   
    ::aws_smithy_schema::ShapeId::from_static(
   60     60   
        "com.amazonaws.ec2.synthetic#RunScheduledInstancesInput$ClientToken",
   61     61   
        "com.amazonaws.ec2.synthetic",
   62     62   
        "RunScheduledInstancesInput",
   63     63   
    ),
   64     64   
    ::aws_smithy_schema::ShapeType::String,
   65         -
    "client_token",
          65  +
    "ClientToken",
   66     66   
    0,
   67     67   
);
   68     68   
static RUNSCHEDULEDINSTANCESINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   69     69   
    ::aws_smithy_schema::ShapeId::from_static(
   70     70   
        "com.amazonaws.ec2.synthetic#RunScheduledInstancesInput$DryRun",
   71     71   
        "com.amazonaws.ec2.synthetic",
   72     72   
        "RunScheduledInstancesInput",
   73     73   
    ),
   74     74   
    ::aws_smithy_schema::ShapeType::Boolean,
   75         -
    "dry_run",
          75  +
    "DryRun",
   76     76   
    1,
   77     77   
);
   78     78   
static RUNSCHEDULEDINSTANCESINPUT_MEMBER_INSTANCE_COUNT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   79     79   
    ::aws_smithy_schema::ShapeId::from_static(
   80     80   
        "com.amazonaws.ec2.synthetic#RunScheduledInstancesInput$InstanceCount",
   81     81   
        "com.amazonaws.ec2.synthetic",
   82     82   
        "RunScheduledInstancesInput",
   83     83   
    ),
   84     84   
    ::aws_smithy_schema::ShapeType::Integer,
   85         -
    "instance_count",
          85  +
    "InstanceCount",
   86     86   
    2,
   87     87   
);
   88     88   
static RUNSCHEDULEDINSTANCESINPUT_MEMBER_LAUNCH_SPECIFICATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   89     89   
    ::aws_smithy_schema::ShapeId::from_static(
   90     90   
        "com.amazonaws.ec2.synthetic#RunScheduledInstancesInput$LaunchSpecification",
   91     91   
        "com.amazonaws.ec2.synthetic",
   92     92   
        "RunScheduledInstancesInput",
   93     93   
    ),
   94     94   
    ::aws_smithy_schema::ShapeType::Structure,
   95         -
    "launch_specification",
          95  +
    "LaunchSpecification",
   96     96   
    3,
   97     97   
);
   98     98   
static RUNSCHEDULEDINSTANCESINPUT_MEMBER_SCHEDULED_INSTANCE_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   99     99   
    ::aws_smithy_schema::ShapeId::from_static(
  100    100   
        "com.amazonaws.ec2.synthetic#RunScheduledInstancesInput$ScheduledInstanceId",
  101    101   
        "com.amazonaws.ec2.synthetic",
  102    102   
        "RunScheduledInstancesInput",
  103    103   
    ),
  104    104   
    ::aws_smithy_schema::ShapeType::String,
  105         -
    "scheduled_instance_id",
         105  +
    "ScheduledInstanceId",
  106    106   
    4,
  107    107   
);
  108    108   
static RUNSCHEDULEDINSTANCESINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  109    109   
    RUNSCHEDULEDINSTANCESINPUT_SCHEMA_ID,
  110    110   
    ::aws_smithy_schema::ShapeType::Structure,
  111    111   
    &[
  112    112   
        &RUNSCHEDULEDINSTANCESINPUT_MEMBER_CLIENT_TOKEN,
  113    113   
        &RUNSCHEDULEDINSTANCESINPUT_MEMBER_DRY_RUN,
  114    114   
        &RUNSCHEDULEDINSTANCESINPUT_MEMBER_INSTANCE_COUNT,
  115    115   
        &RUNSCHEDULEDINSTANCESINPUT_MEMBER_LAUNCH_SPECIFICATION,
  116    116   
        &RUNSCHEDULEDINSTANCESINPUT_MEMBER_SCHEDULED_INSTANCE_ID,
  117    117   
    ],
  118    118   
);
  119    119   
impl RunScheduledInstancesInput {
  120    120   
    /// The schema for this shape.
  121    121   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &RUNSCHEDULEDINSTANCESINPUT_SCHEMA;
  122    122   
}
  123    123   
impl ::aws_smithy_schema::serde::SerializableStruct for RunScheduledInstancesInput {
  124    124   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  125    125   
    fn serialize_members(
  126    126   
        &self,
  127    127   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  128    128   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  129    129   
        if let Some(ref val) = self.client_token {
  130    130   
            ser.write_string(&RUNSCHEDULEDINSTANCESINPUT_MEMBER_CLIENT_TOKEN, val)?;
  131    131   
        }
  132    132   
        if let Some(ref val) = self.dry_run {
  133    133   
            ser.write_boolean(&RUNSCHEDULEDINSTANCESINPUT_MEMBER_DRY_RUN, *val)?;
  134    134   
        }
  135    135   
        if let Some(ref val) = self.instance_count {
  136    136   
            ser.write_integer(&RUNSCHEDULEDINSTANCESINPUT_MEMBER_INSTANCE_COUNT, *val)?;
  137    137   
        }
  138    138   
        if let Some(ref val) = self.launch_specification {
  139    139   
            ser.write_struct(&RUNSCHEDULEDINSTANCESINPUT_MEMBER_LAUNCH_SPECIFICATION, val)?;
  140    140   
        }
  141    141   
        if let Some(ref val) = self.scheduled_instance_id {
  142    142   
            ser.write_string(&RUNSCHEDULEDINSTANCESINPUT_MEMBER_SCHEDULED_INSTANCE_ID, val)?;
  143    143   
        }
  144    144   
        Ok(())
  145    145   
    }
  146    146   
}
  147    147   
impl RunScheduledInstancesInput {
  148    148   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  149         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  150         -
        deserializer: &mut D,
         149  +
    pub fn deserialize(
         150  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  151    151   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  152    152   
        #[allow(unused_variables, unused_mut)]
  153    153   
        let mut builder = Self::builder();
  154    154   
        #[allow(
  155    155   
            unused_variables,
  156    156   
            unreachable_code,
  157    157   
            clippy::single_match,
  158    158   
            clippy::match_single_binding,
  159    159   
            clippy::diverging_sub_expression
  160    160   
        )]
  161         -
        deserializer.read_struct(&RUNSCHEDULEDINSTANCESINPUT_SCHEMA, (), |_, member, deser| {
         161  +
        deserializer.read_struct(&RUNSCHEDULEDINSTANCESINPUT_SCHEMA, &mut |member, deser| {
  162    162   
            match member.member_index() {
  163    163   
                Some(0) => {
  164    164   
                    builder.client_token = Some(deser.read_string(member)?);
  165    165   
                }
  166    166   
                Some(1) => {
  167    167   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  168    168   
                }
  169    169   
                Some(2) => {
  170    170   
                    builder.instance_count = Some(deser.read_integer(member)?);
  171    171   
                }
  172    172   
                Some(3) => {
  173    173   
                    builder.launch_specification = Some(crate::types::ScheduledInstancesLaunchSpecification::deserialize(deser)?);
  174    174   
                }
  175    175   
                Some(4) => {
  176    176   
                    builder.scheduled_instance_id = Some(deser.read_string(member)?);
  177    177   
                }
  178    178   
                _ => {}
  179    179   
            }
  180    180   
            Ok(())
  181    181   
        })?;
         182  +
        builder.scheduled_instance_id = builder.scheduled_instance_id.or(Some(String::new()));
  182    183   
        builder
  183    184   
            .build()
  184    185   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  185    186   
    }
  186    187   
}
         188  +
impl RunScheduledInstancesInput {
         189  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         190  +
    pub fn deserialize_with_response(
         191  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         192  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         193  +
        _status: u16,
         194  +
        _body: &[u8],
         195  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         196  +
        Self::deserialize(deserializer)
         197  +
    }
         198  +
}
  187    199   
impl RunScheduledInstancesInput {
  188    200   
    /// Creates a new builder-style object to manufacture [`RunScheduledInstancesInput`](crate::operation::run_scheduled_instances::RunScheduledInstancesInput).
  189    201   
    pub fn builder() -> crate::operation::run_scheduled_instances::builders::RunScheduledInstancesInputBuilder {
  190    202   
        crate::operation::run_scheduled_instances::builders::RunScheduledInstancesInputBuilder::default()
  191    203   
    }
  192    204   
}
  193    205   
  194    206   
/// A builder for [`RunScheduledInstancesInput`](crate::operation::run_scheduled_instances::RunScheduledInstancesInput).
  195    207   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
  196    208   
#[non_exhaustive]

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

@@ -1,1 +121,158 @@
   21     21   
    "com.amazonaws.ec2.synthetic",
   22     22   
    "RunScheduledInstancesOutput",
   23     23   
);
   24     24   
static RUNSCHEDULEDINSTANCESOUTPUT_MEMBER_INSTANCE_ID_SET: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   25     25   
    ::aws_smithy_schema::ShapeId::from_static(
   26     26   
        "com.amazonaws.ec2.synthetic#RunScheduledInstancesOutput$InstanceIdSet",
   27     27   
        "com.amazonaws.ec2.synthetic",
   28     28   
        "RunScheduledInstancesOutput",
   29     29   
    ),
   30     30   
    ::aws_smithy_schema::ShapeType::List,
   31         -
    "instance_id_set",
          31  +
    "InstanceIdSet",
   32     32   
    0,
   33     33   
)
   34     34   
.with_xml_name("instanceIdSet");
          35  +
static RUNSCHEDULEDINSTANCESOUTPUT_MEMBER__REQUEST_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          36  +
    ::aws_smithy_schema::ShapeId::from_static("synthetic#request_id", "synthetic", "request_id"),
          37  +
    ::aws_smithy_schema::ShapeType::String,
          38  +
    "request_id",
          39  +
    1,
          40  +
)
          41  +
.with_http_header("x-amzn-requestid");
   35     42   
static RUNSCHEDULEDINSTANCESOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   36     43   
    RUNSCHEDULEDINSTANCESOUTPUT_SCHEMA_ID,
   37     44   
    ::aws_smithy_schema::ShapeType::Structure,
   38         -
    &[&RUNSCHEDULEDINSTANCESOUTPUT_MEMBER_INSTANCE_ID_SET],
          45  +
    &[
          46  +
        &RUNSCHEDULEDINSTANCESOUTPUT_MEMBER_INSTANCE_ID_SET,
          47  +
        &RUNSCHEDULEDINSTANCESOUTPUT_MEMBER__REQUEST_ID,
          48  +
    ],
   39     49   
);
   40     50   
impl RunScheduledInstancesOutput {
   41     51   
    /// The schema for this shape.
   42     52   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &RUNSCHEDULEDINSTANCESOUTPUT_SCHEMA;
   43     53   
}
   44     54   
impl ::aws_smithy_schema::serde::SerializableStruct for RunScheduledInstancesOutput {
   45     55   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   46     56   
    fn serialize_members(
   47     57   
        &self,
   48     58   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   49     59   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   50     60   
        if let Some(ref val) = self.instance_id_set {
   51     61   
            ser.write_list(
   52     62   
                &RUNSCHEDULEDINSTANCESOUTPUT_MEMBER_INSTANCE_ID_SET,
   53     63   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   54     64   
                    for item in val {
   55     65   
                        ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
   56     66   
                    }
   57     67   
                    Ok(())
   58     68   
                },
   59     69   
            )?;
   60     70   
        }
   61     71   
        Ok(())
   62     72   
    }
   63     73   
}
   64     74   
impl RunScheduledInstancesOutput {
   65     75   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   66         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   67         -
        deserializer: &mut D,
          76  +
    pub fn deserialize(
          77  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   68     78   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   69     79   
        #[allow(unused_variables, unused_mut)]
   70     80   
        let mut builder = Self::builder();
   71     81   
        #[allow(
   72     82   
            unused_variables,
   73     83   
            unreachable_code,
   74     84   
            clippy::single_match,
   75     85   
            clippy::match_single_binding,
   76     86   
            clippy::diverging_sub_expression
   77     87   
        )]
   78         -
        deserializer.read_struct(&RUNSCHEDULEDINSTANCESOUTPUT_SCHEMA, (), |_, member, deser| {
          88  +
        deserializer.read_struct(&RUNSCHEDULEDINSTANCESOUTPUT_SCHEMA, &mut |member, deser| {
          89  +
            match member.member_index() {
          90  +
                Some(0) => {
          91  +
                    builder.instance_id_set = Some(deser.read_string_list(member)?);
          92  +
                }
          93  +
                Some(1) => {
          94  +
                    builder._request_id = Some(deser.read_string(member)?);
          95  +
                }
          96  +
                _ => {}
          97  +
            }
          98  +
            Ok(())
          99  +
        })?;
         100  +
        Ok(builder.build())
         101  +
    }
         102  +
}
         103  +
impl RunScheduledInstancesOutput {
         104  +
    /// Deserializes this structure from a body deserializer and HTTP response headers.
         105  +
    /// Header-bound members are read directly from headers, avoiding runtime
         106  +
    /// member iteration overhead. Body members are read via the deserializer.
         107  +
    pub fn deserialize_with_response(
         108  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         109  +
        headers: &::aws_smithy_runtime_api::http::Headers,
         110  +
        _status: u16,
         111  +
        _body: &[u8],
         112  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         113  +
        #[allow(unused_variables, unused_mut)]
         114  +
        let mut builder = Self::builder();
         115  +
        if let Some(val) = headers.get("x-amzn-requestid") {
         116  +
            builder._request_id = Some(val.to_string());
         117  +
        }
         118  +
        #[allow(
         119  +
            unused_variables,
         120  +
            unreachable_code,
         121  +
            clippy::single_match,
         122  +
            clippy::match_single_binding,
         123  +
            clippy::diverging_sub_expression
         124  +
        )]
         125  +
        deserializer.read_struct(&RUNSCHEDULEDINSTANCESOUTPUT_SCHEMA, &mut |member, deser| {
   79    126   
            match member.member_index() {
   80    127   
                Some(0) => {
   81         -
                    builder.instance_id_set = Some({
   82         -
                        let container = if let Some(cap) = deser.container_size() {
   83         -
                            Vec::with_capacity(cap)
   84         -
                        } else {
   85         -
                            Vec::new()
   86         -
                        };
   87         -
                        deser.read_list(member, container, |mut list, deser| {
   88         -
                            list.push(deser.read_string(member)?);
   89         -
                            Ok(list)
   90         -
                        })?
   91         -
                    });
         128  +
                    builder.instance_id_set = Some(deser.read_string_list(member)?);
   92    129   
                }
   93    130   
                _ => {}
   94    131   
            }
   95    132   
            Ok(())
   96    133   
        })?;
   97    134   
        Ok(builder.build())
   98    135   
    }
   99    136   
}
  100    137   
impl ::aws_types::request_id::RequestId for RunScheduledInstancesOutput {
  101    138   
    fn request_id(&self) -> Option<&str> {

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/search_local_gateway_routes.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 `SearchLocalGatewayRoutes`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct SearchLocalGatewayRoutes;
    6      6   
impl SearchLocalGatewayRoutes {
    7      7   
    /// Creates a new `SearchLocalGatewayRoutes`
    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::search_local_gateway_routes::SearchLocalGatewayRoutesInput::SCHEMA;
          14  +
    /// The schema for this operation's output shape.
          15  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          16  +
        crate::operation::search_local_gateway_routes::SearchLocalGatewayRoutesOutput::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::search_local_gateway_routes::SearchLocalGatewayRoutesInput,
   14     20   
    ) -> ::std::result::Result<
   15     21   
        crate::operation::search_local_gateway_routes::SearchLocalGatewayRoutesOutput,
   16     22   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     23   
            crate::operation::search_local_gateway_routes::SearchLocalGatewayRoutesError,
   18     24   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     25   
        >,
   20     26   
    > {
@@ -118,124 +180,187 @@
  138    144   
                crate::operation::search_local_gateway_routes::SearchLocalGatewayRoutesError,
  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 SearchLocalGatewayRoutesResponseDeserializer;
  147    153   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for SearchLocalGatewayRoutesResponseDeserializer {
  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_search_local_gateway_routes::de_search_local_gateway_routes_http_error(status, headers, body)
  160    167   
        } else {

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

@@ -55,55 +255,264 @@
   75     75   
    "com.amazonaws.ec2.synthetic",
   76     76   
    "SearchLocalGatewayRoutesInput",
   77     77   
);
   78     78   
static SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_LOCAL_GATEWAY_ROUTE_TABLE_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   79     79   
    ::aws_smithy_schema::ShapeId::from_static(
   80     80   
        "com.amazonaws.ec2.synthetic#SearchLocalGatewayRoutesInput$LocalGatewayRouteTableId",
   81     81   
        "com.amazonaws.ec2.synthetic",
   82     82   
        "SearchLocalGatewayRoutesInput",
   83     83   
    ),
   84     84   
    ::aws_smithy_schema::ShapeType::String,
   85         -
    "local_gateway_route_table_id",
          85  +
    "LocalGatewayRouteTableId",
   86     86   
    0,
   87     87   
);
   88     88   
static SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_FILTERS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   89     89   
    ::aws_smithy_schema::ShapeId::from_static(
   90     90   
        "com.amazonaws.ec2.synthetic#SearchLocalGatewayRoutesInput$Filters",
   91     91   
        "com.amazonaws.ec2.synthetic",
   92     92   
        "SearchLocalGatewayRoutesInput",
   93     93   
    ),
   94     94   
    ::aws_smithy_schema::ShapeType::List,
   95         -
    "filters",
          95  +
    "Filters",
   96     96   
    1,
   97     97   
)
   98     98   
.with_xml_name("Filter");
   99     99   
static SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_MAX_RESULTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  100    100   
    ::aws_smithy_schema::ShapeId::from_static(
  101    101   
        "com.amazonaws.ec2.synthetic#SearchLocalGatewayRoutesInput$MaxResults",
  102    102   
        "com.amazonaws.ec2.synthetic",
  103    103   
        "SearchLocalGatewayRoutesInput",
  104    104   
    ),
  105    105   
    ::aws_smithy_schema::ShapeType::Integer,
  106         -
    "max_results",
         106  +
    "MaxResults",
  107    107   
    2,
  108    108   
);
  109    109   
static SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_NEXT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  110    110   
    ::aws_smithy_schema::ShapeId::from_static(
  111    111   
        "com.amazonaws.ec2.synthetic#SearchLocalGatewayRoutesInput$NextToken",
  112    112   
        "com.amazonaws.ec2.synthetic",
  113    113   
        "SearchLocalGatewayRoutesInput",
  114    114   
    ),
  115    115   
    ::aws_smithy_schema::ShapeType::String,
  116         -
    "next_token",
         116  +
    "NextToken",
  117    117   
    3,
  118    118   
);
  119    119   
static SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  120    120   
    ::aws_smithy_schema::ShapeId::from_static(
  121    121   
        "com.amazonaws.ec2.synthetic#SearchLocalGatewayRoutesInput$DryRun",
  122    122   
        "com.amazonaws.ec2.synthetic",
  123    123   
        "SearchLocalGatewayRoutesInput",
  124    124   
    ),
  125    125   
    ::aws_smithy_schema::ShapeType::Boolean,
  126         -
    "dry_run",
         126  +
    "DryRun",
  127    127   
    4,
  128    128   
);
  129    129   
static SEARCHLOCALGATEWAYROUTESINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  130    130   
    SEARCHLOCALGATEWAYROUTESINPUT_SCHEMA_ID,
  131    131   
    ::aws_smithy_schema::ShapeType::Structure,
  132    132   
    &[
  133    133   
        &SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_LOCAL_GATEWAY_ROUTE_TABLE_ID,
  134    134   
        &SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_FILTERS,
  135    135   
        &SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_MAX_RESULTS,
  136    136   
        &SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_NEXT_TOKEN,
  137    137   
        &SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_DRY_RUN,
  138    138   
    ],
  139    139   
);
  140    140   
impl SearchLocalGatewayRoutesInput {
  141    141   
    /// The schema for this shape.
  142    142   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &SEARCHLOCALGATEWAYROUTESINPUT_SCHEMA;
  143    143   
}
  144    144   
impl ::aws_smithy_schema::serde::SerializableStruct for SearchLocalGatewayRoutesInput {
  145    145   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  146    146   
    fn serialize_members(
  147    147   
        &self,
  148    148   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  149    149   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  150    150   
        if let Some(ref val) = self.local_gateway_route_table_id {
  151    151   
            ser.write_string(&SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_LOCAL_GATEWAY_ROUTE_TABLE_ID, val)?;
  152    152   
        }
  153    153   
        if let Some(ref val) = self.filters {
  154    154   
            ser.write_list(
  155    155   
                &SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_FILTERS,
  156    156   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  157    157   
                    for item in val {
  158    158   
                        ser.write_struct(crate::types::Filter::SCHEMA, item)?;
  159    159   
                    }
  160    160   
                    Ok(())
  161    161   
                },
  162    162   
            )?;
  163    163   
        }
  164    164   
        if let Some(ref val) = self.max_results {
  165    165   
            ser.write_integer(&SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_MAX_RESULTS, *val)?;
  166    166   
        }
  167    167   
        if let Some(ref val) = self.next_token {
  168    168   
            ser.write_string(&SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_NEXT_TOKEN, val)?;
  169    169   
        }
  170    170   
        if let Some(ref val) = self.dry_run {
  171    171   
            ser.write_boolean(&SEARCHLOCALGATEWAYROUTESINPUT_MEMBER_DRY_RUN, *val)?;
  172    172   
        }
  173    173   
        Ok(())
  174    174   
    }
  175    175   
}
  176    176   
impl SearchLocalGatewayRoutesInput {
  177    177   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  178         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  179         -
        deserializer: &mut D,
         178  +
    pub fn deserialize(
         179  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  180    180   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  181    181   
        #[allow(unused_variables, unused_mut)]
  182    182   
        let mut builder = Self::builder();
  183    183   
        #[allow(
  184    184   
            unused_variables,
  185    185   
            unreachable_code,
  186    186   
            clippy::single_match,
  187    187   
            clippy::match_single_binding,
  188    188   
            clippy::diverging_sub_expression
  189    189   
        )]
  190         -
        deserializer.read_struct(&SEARCHLOCALGATEWAYROUTESINPUT_SCHEMA, (), |_, member, deser| {
         190  +
        deserializer.read_struct(&SEARCHLOCALGATEWAYROUTESINPUT_SCHEMA, &mut |member, deser| {
  191    191   
            match member.member_index() {
  192    192   
                Some(0) => {
  193    193   
                    builder.local_gateway_route_table_id = Some(deser.read_string(member)?);
  194    194   
                }
  195    195   
                Some(1) => {
  196    196   
                    builder.filters = Some({
  197         -
                        let container = if let Some(cap) = deser.container_size() {
  198         -
                            Vec::with_capacity(cap)
  199         -
                        } else {
  200         -
                            Vec::new()
  201         -
                        };
  202         -
                        deser.read_list(member, container, |mut list, deser| {
  203         -
                            list.push(crate::types::Filter::deserialize(deser)?);
  204         -
                            Ok(list)
  205         -
                        })?
         197  +
                        let mut container = Vec::new();
         198  +
                        deser.read_list(member, &mut |deser| {
         199  +
                            container.push(crate::types::Filter::deserialize(deser)?);
         200  +
                            Ok(())
         201  +
                        })?;
         202  +
                        container
  206    203   
                    });
  207    204   
                }
  208    205   
                Some(2) => {
  209    206   
                    builder.max_results = Some(deser.read_integer(member)?);
  210    207   
                }
  211    208   
                Some(3) => {
  212    209   
                    builder.next_token = Some(deser.read_string(member)?);
  213    210   
                }
  214    211   
                Some(4) => {
  215    212   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  216    213   
                }
  217    214   
                _ => {}
  218    215   
            }
  219    216   
            Ok(())
  220    217   
        })?;
         218  +
        builder.local_gateway_route_table_id = builder.local_gateway_route_table_id.or(Some(String::new()));
  221    219   
        builder
  222    220   
            .build()
  223    221   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  224    222   
    }
  225    223   
}
         224  +
impl SearchLocalGatewayRoutesInput {
         225  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         226  +
    pub fn deserialize_with_response(
         227  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         228  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         229  +
        _status: u16,
         230  +
        _body: &[u8],
         231  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         232  +
        Self::deserialize(deserializer)
         233  +
    }
         234  +
}
  226    235   
impl SearchLocalGatewayRoutesInput {
  227    236   
    /// Creates a new builder-style object to manufacture [`SearchLocalGatewayRoutesInput`](crate::operation::search_local_gateway_routes::SearchLocalGatewayRoutesInput).
  228    237   
    pub fn builder() -> crate::operation::search_local_gateway_routes::builders::SearchLocalGatewayRoutesInputBuilder {
  229    238   
        crate::operation::search_local_gateway_routes::builders::SearchLocalGatewayRoutesInputBuilder::default()
  230    239   
    }
  231    240   
}
  232    241   
  233    242   
/// A builder for [`SearchLocalGatewayRoutesInput`](crate::operation::search_local_gateway_routes::SearchLocalGatewayRoutesInput).
  234    243   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  235    244   
#[non_exhaustive]

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

@@ -6,6 +142,194 @@
   26     26   
    "com.amazonaws.ec2.synthetic",
   27     27   
    "SearchLocalGatewayRoutesOutput",
   28     28   
);
   29     29   
static SEARCHLOCALGATEWAYROUTESOUTPUT_MEMBER_ROUTES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   30     30   
    ::aws_smithy_schema::ShapeId::from_static(
   31     31   
        "com.amazonaws.ec2.synthetic#SearchLocalGatewayRoutesOutput$Routes",
   32     32   
        "com.amazonaws.ec2.synthetic",
   33     33   
        "SearchLocalGatewayRoutesOutput",
   34     34   
    ),
   35     35   
    ::aws_smithy_schema::ShapeType::List,
   36         -
    "routes",
          36  +
    "Routes",
   37     37   
    0,
   38     38   
)
   39     39   
.with_xml_name("routeSet");
   40     40   
static SEARCHLOCALGATEWAYROUTESOUTPUT_MEMBER_NEXT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   41     41   
    ::aws_smithy_schema::ShapeId::from_static(
   42     42   
        "com.amazonaws.ec2.synthetic#SearchLocalGatewayRoutesOutput$NextToken",
   43     43   
        "com.amazonaws.ec2.synthetic",
   44     44   
        "SearchLocalGatewayRoutesOutput",
   45     45   
    ),
   46     46   
    ::aws_smithy_schema::ShapeType::String,
   47         -
    "next_token",
          47  +
    "NextToken",
   48     48   
    1,
   49     49   
)
   50     50   
.with_xml_name("nextToken");
          51  +
static SEARCHLOCALGATEWAYROUTESOUTPUT_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 SEARCHLOCALGATEWAYROUTESOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   52     59   
    SEARCHLOCALGATEWAYROUTESOUTPUT_SCHEMA_ID,
   53     60   
    ::aws_smithy_schema::ShapeType::Structure,
   54     61   
    &[
   55     62   
        &SEARCHLOCALGATEWAYROUTESOUTPUT_MEMBER_ROUTES,
   56     63   
        &SEARCHLOCALGATEWAYROUTESOUTPUT_MEMBER_NEXT_TOKEN,
          64  +
        &SEARCHLOCALGATEWAYROUTESOUTPUT_MEMBER__REQUEST_ID,
   57     65   
    ],
   58     66   
);
   59     67   
impl SearchLocalGatewayRoutesOutput {
   60     68   
    /// The schema for this shape.
   61     69   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &SEARCHLOCALGATEWAYROUTESOUTPUT_SCHEMA;
   62     70   
}
   63     71   
impl ::aws_smithy_schema::serde::SerializableStruct for SearchLocalGatewayRoutesOutput {
   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.routes {
   70     78   
            ser.write_list(
   71     79   
                &SEARCHLOCALGATEWAYROUTESOUTPUT_MEMBER_ROUTES,
   72     80   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   73     81   
                    for item in val {
   74     82   
                        ser.write_struct(crate::types::LocalGatewayRoute::SCHEMA, item)?;
   75     83   
                    }
   76     84   
                    Ok(())
   77     85   
                },
   78     86   
            )?;
   79     87   
        }
   80     88   
        if let Some(ref val) = self.next_token {
   81     89   
            ser.write_string(&SEARCHLOCALGATEWAYROUTESOUTPUT_MEMBER_NEXT_TOKEN, val)?;
   82     90   
        }
   83     91   
        Ok(())
   84     92   
    }
   85     93   
}
   86     94   
impl SearchLocalGatewayRoutesOutput {
   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(&SEARCHLOCALGATEWAYROUTESOUTPUT_SCHEMA, &mut |member, deser| {
         109  +
            match member.member_index() {
         110  +
                Some(0) => {
         111  +
                    builder.routes = Some({
         112  +
                        let mut container = Vec::new();
         113  +
                        deser.read_list(member, &mut |deser| {
         114  +
                            container.push(crate::types::LocalGatewayRoute::deserialize(deser)?);
         115  +
                            Ok(())
         116  +
                        })?;
         117  +
                        container
         118  +
                    });
         119  +
                }
         120  +
                Some(1) => {
         121  +
                    builder.next_token = Some(deser.read_string(member)?);
         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 SearchLocalGatewayRoutesOutput {
         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(&SEARCHLOCALGATEWAYROUTESOUTPUT_SCHEMA, (), |_, member, deser| {
         155  +
        deserializer.read_struct(&SEARCHLOCALGATEWAYROUTESOUTPUT_SCHEMA, &mut |member, deser| {
  101    156   
            match member.member_index() {
  102    157   
                Some(0) => {
  103    158   
                    builder.routes = Some({
  104         -
                        let container = if let Some(cap) = deser.container_size() {
  105         -
                            Vec::with_capacity(cap)
  106         -
                        } else {
  107         -
                            Vec::new()
  108         -
                        };
  109         -
                        deser.read_list(member, container, |mut list, deser| {
  110         -
                            list.push(crate::types::LocalGatewayRoute::deserialize(deser)?);
  111         -
                            Ok(list)
  112         -
                        })?
         159  +
                        let mut container = Vec::new();
         160  +
                        deser.read_list(member, &mut |deser| {
         161  +
                            container.push(crate::types::LocalGatewayRoute::deserialize(deser)?);
         162  +
                            Ok(())
         163  +
                        })?;
         164  +
                        container
  113    165   
                    });
  114    166   
                }
  115    167   
                Some(1) => {
  116    168   
                    builder.next_token = Some(deser.read_string(member)?);
  117    169   
                }
  118    170   
                _ => {}
  119    171   
            }
  120    172   
            Ok(())
  121    173   
        })?;
  122    174   
        Ok(builder.build())

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/search_transit_gateway_multicast_groups.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 `SearchTransitGatewayMulticastGroups`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct SearchTransitGatewayMulticastGroups;
    6      6   
impl SearchTransitGatewayMulticastGroups {
    7      7   
    /// Creates a new `SearchTransitGatewayMulticastGroups`
    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::search_transit_gateway_multicast_groups::SearchTransitGatewayMulticastGroupsInput::SCHEMA;
          14  +
    /// The schema for this operation's output shape.
          15  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          16  +
        crate::operation::search_transit_gateway_multicast_groups::SearchTransitGatewayMulticastGroupsOutput::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::search_transit_gateway_multicast_groups::SearchTransitGatewayMulticastGroupsInput,
   14     20   
    ) -> ::std::result::Result<
   15     21   
        crate::operation::search_transit_gateway_multicast_groups::SearchTransitGatewayMulticastGroupsOutput,
   16     22   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     23   
            crate::operation::search_transit_gateway_multicast_groups::SearchTransitGatewayMulticastGroupsError,
   18     24   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     25   
        >,
   20     26   
    > {
@@ -124,130 +186,193 @@
  144    150   
                crate::operation::search_transit_gateway_multicast_groups::SearchTransitGatewayMulticastGroupsError,
  145    151   
            >::new());
  146    152   
  147    153   
        ::std::borrow::Cow::Owned(rcb)
  148    154   
    }
  149    155   
}
  150    156   
  151    157   
#[derive(Debug)]
  152    158   
struct SearchTransitGatewayMulticastGroupsResponseDeserializer;
  153    159   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for SearchTransitGatewayMulticastGroupsResponseDeserializer {
  154         -
    fn deserialize_nonstreaming(
         160  +
    fn deserialize_nonstreaming_with_config(
  155    161   
        &self,
  156    162   
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
         163  +
        _cfg: &::aws_smithy_types::config_bag::ConfigBag,
  157    164   
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  158    165   
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  159    166   
        let headers = response.headers();
  160    167   
        let body = response.body().bytes().expect("body loaded");
  161    168   
        #[allow(unused_mut)]
  162    169   
        let mut force_error = false;
  163    170   
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  164    171   
        let parse_result = if !success && status != 200 || force_error {
  165    172   
            crate::protocol_serde::shape_search_transit_gateway_multicast_groups::de_search_transit_gateway_multicast_groups_http_error(
  166    173   
                status, headers, body,

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

@@ -64,64 +264,273 @@
   84     84   
    "SearchTransitGatewayMulticastGroupsInput",
   85     85   
);
   86     86   
static SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_TRANSIT_GATEWAY_MULTICAST_DOMAIN_ID: ::aws_smithy_schema::Schema =
   87     87   
    ::aws_smithy_schema::Schema::new_member(
   88     88   
        ::aws_smithy_schema::ShapeId::from_static(
   89     89   
            "com.amazonaws.ec2.synthetic#SearchTransitGatewayMulticastGroupsInput$TransitGatewayMulticastDomainId",
   90     90   
            "com.amazonaws.ec2.synthetic",
   91     91   
            "SearchTransitGatewayMulticastGroupsInput",
   92     92   
        ),
   93     93   
        ::aws_smithy_schema::ShapeType::String,
   94         -
        "transit_gateway_multicast_domain_id",
          94  +
        "TransitGatewayMulticastDomainId",
   95     95   
        0,
   96     96   
    );
   97     97   
static SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_FILTERS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   98     98   
    ::aws_smithy_schema::ShapeId::from_static(
   99     99   
        "com.amazonaws.ec2.synthetic#SearchTransitGatewayMulticastGroupsInput$Filters",
  100    100   
        "com.amazonaws.ec2.synthetic",
  101    101   
        "SearchTransitGatewayMulticastGroupsInput",
  102    102   
    ),
  103    103   
    ::aws_smithy_schema::ShapeType::List,
  104         -
    "filters",
         104  +
    "Filters",
  105    105   
    1,
  106    106   
)
  107    107   
.with_xml_name("Filter");
  108    108   
static SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_MAX_RESULTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  109    109   
    ::aws_smithy_schema::ShapeId::from_static(
  110    110   
        "com.amazonaws.ec2.synthetic#SearchTransitGatewayMulticastGroupsInput$MaxResults",
  111    111   
        "com.amazonaws.ec2.synthetic",
  112    112   
        "SearchTransitGatewayMulticastGroupsInput",
  113    113   
    ),
  114    114   
    ::aws_smithy_schema::ShapeType::Integer,
  115         -
    "max_results",
         115  +
    "MaxResults",
  116    116   
    2,
  117    117   
);
  118    118   
static SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_NEXT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  119    119   
    ::aws_smithy_schema::ShapeId::from_static(
  120    120   
        "com.amazonaws.ec2.synthetic#SearchTransitGatewayMulticastGroupsInput$NextToken",
  121    121   
        "com.amazonaws.ec2.synthetic",
  122    122   
        "SearchTransitGatewayMulticastGroupsInput",
  123    123   
    ),
  124    124   
    ::aws_smithy_schema::ShapeType::String,
  125         -
    "next_token",
         125  +
    "NextToken",
  126    126   
    3,
  127    127   
);
  128    128   
static SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  129    129   
    ::aws_smithy_schema::ShapeId::from_static(
  130    130   
        "com.amazonaws.ec2.synthetic#SearchTransitGatewayMulticastGroupsInput$DryRun",
  131    131   
        "com.amazonaws.ec2.synthetic",
  132    132   
        "SearchTransitGatewayMulticastGroupsInput",
  133    133   
    ),
  134    134   
    ::aws_smithy_schema::ShapeType::Boolean,
  135         -
    "dry_run",
         135  +
    "DryRun",
  136    136   
    4,
  137    137   
);
  138    138   
static SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  139    139   
    SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_SCHEMA_ID,
  140    140   
    ::aws_smithy_schema::ShapeType::Structure,
  141    141   
    &[
  142    142   
        &SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_TRANSIT_GATEWAY_MULTICAST_DOMAIN_ID,
  143    143   
        &SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_FILTERS,
  144    144   
        &SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_MAX_RESULTS,
  145    145   
        &SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_NEXT_TOKEN,
  146    146   
        &SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_DRY_RUN,
  147    147   
    ],
  148    148   
);
  149    149   
impl SearchTransitGatewayMulticastGroupsInput {
  150    150   
    /// The schema for this shape.
  151    151   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_SCHEMA;
  152    152   
}
  153    153   
impl ::aws_smithy_schema::serde::SerializableStruct for SearchTransitGatewayMulticastGroupsInput {
  154    154   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  155    155   
    fn serialize_members(
  156    156   
        &self,
  157    157   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  158    158   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  159    159   
        if let Some(ref val) = self.transit_gateway_multicast_domain_id {
  160    160   
            ser.write_string(&SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_TRANSIT_GATEWAY_MULTICAST_DOMAIN_ID, val)?;
  161    161   
        }
  162    162   
        if let Some(ref val) = self.filters {
  163    163   
            ser.write_list(
  164    164   
                &SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_FILTERS,
  165    165   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  166    166   
                    for item in val {
  167    167   
                        ser.write_struct(crate::types::Filter::SCHEMA, item)?;
  168    168   
                    }
  169    169   
                    Ok(())
  170    170   
                },
  171    171   
            )?;
  172    172   
        }
  173    173   
        if let Some(ref val) = self.max_results {
  174    174   
            ser.write_integer(&SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_MAX_RESULTS, *val)?;
  175    175   
        }
  176    176   
        if let Some(ref val) = self.next_token {
  177    177   
            ser.write_string(&SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_NEXT_TOKEN, val)?;
  178    178   
        }
  179    179   
        if let Some(ref val) = self.dry_run {
  180    180   
            ser.write_boolean(&SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_MEMBER_DRY_RUN, *val)?;
  181    181   
        }
  182    182   
        Ok(())
  183    183   
    }
  184    184   
}
  185    185   
impl SearchTransitGatewayMulticastGroupsInput {
  186    186   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  187         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  188         -
        deserializer: &mut D,
         187  +
    pub fn deserialize(
         188  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  189    189   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  190    190   
        #[allow(unused_variables, unused_mut)]
  191    191   
        let mut builder = Self::builder();
  192    192   
        #[allow(
  193    193   
            unused_variables,
  194    194   
            unreachable_code,
  195    195   
            clippy::single_match,
  196    196   
            clippy::match_single_binding,
  197    197   
            clippy::diverging_sub_expression
  198    198   
        )]
  199         -
        deserializer.read_struct(&SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_SCHEMA, (), |_, member, deser| {
         199  +
        deserializer.read_struct(&SEARCHTRANSITGATEWAYMULTICASTGROUPSINPUT_SCHEMA, &mut |member, deser| {
  200    200   
            match member.member_index() {
  201    201   
                Some(0) => {
  202    202   
                    builder.transit_gateway_multicast_domain_id = Some(deser.read_string(member)?);
  203    203   
                }
  204    204   
                Some(1) => {
  205    205   
                    builder.filters = Some({
  206         -
                        let container = if let Some(cap) = deser.container_size() {
  207         -
                            Vec::with_capacity(cap)
  208         -
                        } else {
  209         -
                            Vec::new()
  210         -
                        };
  211         -
                        deser.read_list(member, container, |mut list, deser| {
  212         -
                            list.push(crate::types::Filter::deserialize(deser)?);
  213         -
                            Ok(list)
  214         -
                        })?
         206  +
                        let mut container = Vec::new();
         207  +
                        deser.read_list(member, &mut |deser| {
         208  +
                            container.push(crate::types::Filter::deserialize(deser)?);
         209  +
                            Ok(())
         210  +
                        })?;
         211  +
                        container
  215    212   
                    });
  216    213   
                }
  217    214   
                Some(2) => {
  218    215   
                    builder.max_results = Some(deser.read_integer(member)?);
  219    216   
                }
  220    217   
                Some(3) => {
  221    218   
                    builder.next_token = Some(deser.read_string(member)?);
  222    219   
                }
  223    220   
                Some(4) => {
  224    221   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  225    222   
                }
  226    223   
                _ => {}
  227    224   
            }
  228    225   
            Ok(())
  229    226   
        })?;
         227  +
        builder.transit_gateway_multicast_domain_id = builder.transit_gateway_multicast_domain_id.or(Some(String::new()));
  230    228   
        builder
  231    229   
            .build()
  232    230   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  233    231   
    }
  234    232   
}
         233  +
impl SearchTransitGatewayMulticastGroupsInput {
         234  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         235  +
    pub fn deserialize_with_response(
         236  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         237  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         238  +
        _status: u16,
         239  +
        _body: &[u8],
         240  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         241  +
        Self::deserialize(deserializer)
         242  +
    }
         243  +
}
  235    244   
impl SearchTransitGatewayMulticastGroupsInput {
  236    245   
    /// Creates a new builder-style object to manufacture [`SearchTransitGatewayMulticastGroupsInput`](crate::operation::search_transit_gateway_multicast_groups::SearchTransitGatewayMulticastGroupsInput).
  237    246   
    pub fn builder() -> crate::operation::search_transit_gateway_multicast_groups::builders::SearchTransitGatewayMulticastGroupsInputBuilder {
  238    247   
        crate::operation::search_transit_gateway_multicast_groups::builders::SearchTransitGatewayMulticastGroupsInputBuilder::default()
  239    248   
    }
  240    249   
}
  241    250   
  242    251   
/// A builder for [`SearchTransitGatewayMulticastGroupsInput`](crate::operation::search_transit_gateway_multicast_groups::SearchTransitGatewayMulticastGroupsInput).
  243    252   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  244    253   
#[non_exhaustive]

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

@@ -6,6 +142,194 @@
   26     26   
    "com.amazonaws.ec2.synthetic",
   27     27   
    "SearchTransitGatewayMulticastGroupsOutput",
   28     28   
);
   29     29   
static SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_MEMBER_MULTICAST_GROUPS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   30     30   
    ::aws_smithy_schema::ShapeId::from_static(
   31     31   
        "com.amazonaws.ec2.synthetic#SearchTransitGatewayMulticastGroupsOutput$MulticastGroups",
   32     32   
        "com.amazonaws.ec2.synthetic",
   33     33   
        "SearchTransitGatewayMulticastGroupsOutput",
   34     34   
    ),
   35     35   
    ::aws_smithy_schema::ShapeType::List,
   36         -
    "multicast_groups",
          36  +
    "MulticastGroups",
   37     37   
    0,
   38     38   
)
   39     39   
.with_xml_name("multicastGroups");
   40     40   
static SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_MEMBER_NEXT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   41     41   
    ::aws_smithy_schema::ShapeId::from_static(
   42     42   
        "com.amazonaws.ec2.synthetic#SearchTransitGatewayMulticastGroupsOutput$NextToken",
   43     43   
        "com.amazonaws.ec2.synthetic",
   44     44   
        "SearchTransitGatewayMulticastGroupsOutput",
   45     45   
    ),
   46     46   
    ::aws_smithy_schema::ShapeType::String,
   47         -
    "next_token",
          47  +
    "NextToken",
   48     48   
    1,
   49     49   
)
   50     50   
.with_xml_name("nextToken");
          51  +
static SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_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 SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   52     59   
    SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_SCHEMA_ID,
   53     60   
    ::aws_smithy_schema::ShapeType::Structure,
   54     61   
    &[
   55     62   
        &SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_MEMBER_MULTICAST_GROUPS,
   56     63   
        &SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_MEMBER_NEXT_TOKEN,
          64  +
        &SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_MEMBER__REQUEST_ID,
   57     65   
    ],
   58     66   
);
   59     67   
impl SearchTransitGatewayMulticastGroupsOutput {
   60     68   
    /// The schema for this shape.
   61     69   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_SCHEMA;
   62     70   
}
   63     71   
impl ::aws_smithy_schema::serde::SerializableStruct for SearchTransitGatewayMulticastGroupsOutput {
   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.multicast_groups {
   70     78   
            ser.write_list(
   71     79   
                &SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_MEMBER_MULTICAST_GROUPS,
   72     80   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   73     81   
                    for item in val {
   74     82   
                        ser.write_struct(crate::types::TransitGatewayMulticastGroup::SCHEMA, item)?;
   75     83   
                    }
   76     84   
                    Ok(())
   77     85   
                },
   78     86   
            )?;
   79     87   
        }
   80     88   
        if let Some(ref val) = self.next_token {
   81     89   
            ser.write_string(&SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_MEMBER_NEXT_TOKEN, val)?;
   82     90   
        }
   83     91   
        Ok(())
   84     92   
    }
   85     93   
}
   86     94   
impl SearchTransitGatewayMulticastGroupsOutput {
   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(&SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_SCHEMA, &mut |member, deser| {
         109  +
            match member.member_index() {
         110  +
                Some(0) => {
         111  +
                    builder.multicast_groups = Some({
         112  +
                        let mut container = Vec::new();
         113  +
                        deser.read_list(member, &mut |deser| {
         114  +
                            container.push(crate::types::TransitGatewayMulticastGroup::deserialize(deser)?);
         115  +
                            Ok(())
         116  +
                        })?;
         117  +
                        container
         118  +
                    });
         119  +
                }
         120  +
                Some(1) => {
         121  +
                    builder.next_token = Some(deser.read_string(member)?);
         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 SearchTransitGatewayMulticastGroupsOutput {
         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(&SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_SCHEMA, (), |_, member, deser| {
         155  +
        deserializer.read_struct(&SEARCHTRANSITGATEWAYMULTICASTGROUPSOUTPUT_SCHEMA, &mut |member, deser| {
  101    156   
            match member.member_index() {
  102    157   
                Some(0) => {
  103    158   
                    builder.multicast_groups = Some({
  104         -
                        let container = if let Some(cap) = deser.container_size() {
  105         -
                            Vec::with_capacity(cap)
  106         -
                        } else {
  107         -
                            Vec::new()
  108         -
                        };
  109         -
                        deser.read_list(member, container, |mut list, deser| {
  110         -
                            list.push(crate::types::TransitGatewayMulticastGroup::deserialize(deser)?);
  111         -
                            Ok(list)
  112         -
                        })?
         159  +
                        let mut container = Vec::new();
         160  +
                        deser.read_list(member, &mut |deser| {
         161  +
                            container.push(crate::types::TransitGatewayMulticastGroup::deserialize(deser)?);
         162  +
                            Ok(())
         163  +
                        })?;
         164  +
                        container
  113    165   
                    });
  114    166   
                }
  115    167   
                Some(1) => {
  116    168   
                    builder.next_token = Some(deser.read_string(member)?);
  117    169   
                }
  118    170   
                _ => {}
  119    171   
            }
  120    172   
            Ok(())
  121    173   
        })?;
  122    174   
        Ok(builder.build())

tmp-codegen-diff/aws-sdk/sdk/ec2/src/operation/search_transit_gateway_routes.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 `SearchTransitGatewayRoutes`.
    3      3   
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4      4   
#[non_exhaustive]
    5      5   
pub struct SearchTransitGatewayRoutes;
    6      6   
impl SearchTransitGatewayRoutes {
    7      7   
    /// Creates a new `SearchTransitGatewayRoutes`
    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::search_transit_gateway_routes::SearchTransitGatewayRoutesInput::SCHEMA;
          14  +
    /// The schema for this operation's output shape.
          15  +
    pub const OUTPUT_SCHEMA: &'static ::aws_smithy_schema::Schema =
          16  +
        crate::operation::search_transit_gateway_routes::SearchTransitGatewayRoutesOutput::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::search_transit_gateway_routes::SearchTransitGatewayRoutesInput,
   14     20   
    ) -> ::std::result::Result<
   15     21   
        crate::operation::search_transit_gateway_routes::SearchTransitGatewayRoutesOutput,
   16     22   
        ::aws_smithy_runtime_api::client::result::SdkError<
   17     23   
            crate::operation::search_transit_gateway_routes::SearchTransitGatewayRoutesError,
   18     24   
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19     25   
        >,
   20     26   
    > {
@@ -118,124 +180,187 @@
  138    144   
                crate::operation::search_transit_gateway_routes::SearchTransitGatewayRoutesError,
  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 SearchTransitGatewayRoutesResponseDeserializer;
  147    153   
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for SearchTransitGatewayRoutesResponseDeserializer {
  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_search_transit_gateway_routes::de_search_transit_gateway_routes_http_error(status, headers, body)
  160    167   
        } else {

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

@@ -61,61 +244,254 @@
   81     81   
    "com.amazonaws.ec2.synthetic",
   82     82   
    "SearchTransitGatewayRoutesInput",
   83     83   
);
   84     84   
static SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_TRANSIT_GATEWAY_ROUTE_TABLE_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   85     85   
    ::aws_smithy_schema::ShapeId::from_static(
   86     86   
        "com.amazonaws.ec2.synthetic#SearchTransitGatewayRoutesInput$TransitGatewayRouteTableId",
   87     87   
        "com.amazonaws.ec2.synthetic",
   88     88   
        "SearchTransitGatewayRoutesInput",
   89     89   
    ),
   90     90   
    ::aws_smithy_schema::ShapeType::String,
   91         -
    "transit_gateway_route_table_id",
          91  +
    "TransitGatewayRouteTableId",
   92     92   
    0,
   93     93   
);
   94     94   
static SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_FILTERS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   95     95   
    ::aws_smithy_schema::ShapeId::from_static(
   96     96   
        "com.amazonaws.ec2.synthetic#SearchTransitGatewayRoutesInput$Filters",
   97     97   
        "com.amazonaws.ec2.synthetic",
   98     98   
        "SearchTransitGatewayRoutesInput",
   99     99   
    ),
  100    100   
    ::aws_smithy_schema::ShapeType::List,
  101         -
    "filters",
         101  +
    "Filters",
  102    102   
    1,
  103    103   
)
  104    104   
.with_xml_name("Filter");
  105    105   
static SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_MAX_RESULTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  106    106   
    ::aws_smithy_schema::ShapeId::from_static(
  107    107   
        "com.amazonaws.ec2.synthetic#SearchTransitGatewayRoutesInput$MaxResults",
  108    108   
        "com.amazonaws.ec2.synthetic",
  109    109   
        "SearchTransitGatewayRoutesInput",
  110    110   
    ),
  111    111   
    ::aws_smithy_schema::ShapeType::Integer,
  112         -
    "max_results",
         112  +
    "MaxResults",
  113    113   
    2,
  114    114   
);
  115    115   
static SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  116    116   
    ::aws_smithy_schema::ShapeId::from_static(
  117    117   
        "com.amazonaws.ec2.synthetic#SearchTransitGatewayRoutesInput$DryRun",
  118    118   
        "com.amazonaws.ec2.synthetic",
  119    119   
        "SearchTransitGatewayRoutesInput",
  120    120   
    ),
  121    121   
    ::aws_smithy_schema::ShapeType::Boolean,
  122         -
    "dry_run",
         122  +
    "DryRun",
  123    123   
    3,
  124    124   
);
  125    125   
static SEARCHTRANSITGATEWAYROUTESINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  126    126   
    SEARCHTRANSITGATEWAYROUTESINPUT_SCHEMA_ID,
  127    127   
    ::aws_smithy_schema::ShapeType::Structure,
  128    128   
    &[
  129    129   
        &SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_TRANSIT_GATEWAY_ROUTE_TABLE_ID,
  130    130   
        &SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_FILTERS,
  131    131   
        &SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_MAX_RESULTS,
  132    132   
        &SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_DRY_RUN,
  133    133   
    ],
  134    134   
);
  135    135   
impl SearchTransitGatewayRoutesInput {
  136    136   
    /// The schema for this shape.
  137    137   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &SEARCHTRANSITGATEWAYROUTESINPUT_SCHEMA;
  138    138   
}
  139    139   
impl ::aws_smithy_schema::serde::SerializableStruct for SearchTransitGatewayRoutesInput {
  140    140   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  141    141   
    fn serialize_members(
  142    142   
        &self,
  143    143   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  144    144   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  145    145   
        if let Some(ref val) = self.transit_gateway_route_table_id {
  146    146   
            ser.write_string(&SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_TRANSIT_GATEWAY_ROUTE_TABLE_ID, val)?;
  147    147   
        }
  148    148   
        if let Some(ref val) = self.filters {
  149    149   
            ser.write_list(
  150    150   
                &SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_FILTERS,
  151    151   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  152    152   
                    for item in val {
  153    153   
                        ser.write_struct(crate::types::Filter::SCHEMA, item)?;
  154    154   
                    }
  155    155   
                    Ok(())
  156    156   
                },
  157    157   
            )?;
  158    158   
        }
  159    159   
        if let Some(ref val) = self.max_results {
  160    160   
            ser.write_integer(&SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_MAX_RESULTS, *val)?;
  161    161   
        }
  162    162   
        if let Some(ref val) = self.dry_run {
  163    163   
            ser.write_boolean(&SEARCHTRANSITGATEWAYROUTESINPUT_MEMBER_DRY_RUN, *val)?;
  164    164   
        }
  165    165   
        Ok(())
  166    166   
    }
  167    167   
}
  168    168   
impl SearchTransitGatewayRoutesInput {
  169    169   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  170         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  171         -
        deserializer: &mut D,
         170  +
    pub fn deserialize(
         171  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  172    172   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  173    173   
        #[allow(unused_variables, unused_mut)]
  174    174   
        let mut builder = Self::builder();
  175    175   
        #[allow(
  176    176   
            unused_variables,
  177    177   
            unreachable_code,
  178    178   
            clippy::single_match,
  179    179   
            clippy::match_single_binding,
  180    180   
            clippy::diverging_sub_expression
  181    181   
        )]
  182         -
        deserializer.read_struct(&SEARCHTRANSITGATEWAYROUTESINPUT_SCHEMA, (), |_, member, deser| {
         182  +
        deserializer.read_struct(&SEARCHTRANSITGATEWAYROUTESINPUT_SCHEMA, &mut |member, deser| {
  183    183   
            match member.member_index() {
  184    184   
                Some(0) => {
  185    185   
                    builder.transit_gateway_route_table_id = Some(deser.read_string(member)?);
  186    186   
                }
  187    187   
                Some(1) => {
  188    188   
                    builder.filters = Some({
  189         -
                        let container = if let Some(cap) = deser.container_size() {
  190         -
                            Vec::with_capacity(cap)
  191         -
                        } else {
  192         -
                            Vec::new()
  193         -
                        };
  194         -
                        deser.read_list(member, container, |mut list, deser| {
  195         -
                            list.push(crate::types::Filter::deserialize(deser)?);
  196         -
                            Ok(list)
  197         -
                        })?
         189  +
                        let mut container = Vec::new();
         190  +
                        deser.read_list(member, &mut |deser| {
         191  +
                            container.push(crate::types::Filter::deserialize(deser)?);
         192  +
                            Ok(())
         193  +
                        })?;
         194  +
                        container
  198    195   
                    });
  199    196   
                }
  200    197   
                Some(2) => {
  201    198   
                    builder.max_results = Some(deser.read_integer(member)?);
  202    199   
                }
  203    200   
                Some(3) => {
  204    201   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  205    202   
                }
  206    203   
                _ => {}
  207    204   
            }
  208    205   
            Ok(())
  209    206   
        })?;
         207  +
        builder.transit_gateway_route_table_id = builder.transit_gateway_route_table_id.or(Some(String::new()));
         208  +
        builder.filters = builder.filters.or(Some(Vec::new()));
  210    209   
        builder
  211    210   
            .build()
  212    211   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  213    212   
    }
  214    213   
}
         214  +
impl SearchTransitGatewayRoutesInput {
         215  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         216  +
    pub fn deserialize_with_response(
         217  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         218  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         219  +
        _status: u16,
         220  +
        _body: &[u8],
         221  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         222  +
        Self::deserialize(deserializer)
         223  +
    }
         224  +
}
  215    225   
impl SearchTransitGatewayRoutesInput {
  216    226   
    /// Creates a new builder-style object to manufacture [`SearchTransitGatewayRoutesInput`](crate::operation::search_transit_gateway_routes::SearchTransitGatewayRoutesInput).
  217    227   
    pub fn builder() -> crate::operation::search_transit_gateway_routes::builders::SearchTransitGatewayRoutesInputBuilder {
  218    228   
        crate::operation::search_transit_gateway_routes::builders::SearchTransitGatewayRoutesInputBuilder::default()
  219    229   
    }
  220    230   
}
  221    231   
  222    232   
/// A builder for [`SearchTransitGatewayRoutesInput`](crate::operation::search_transit_gateway_routes::SearchTransitGatewayRoutesInput).
  223    233   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  224    234   
#[non_exhaustive]