AWS SDK

AWS SDK

rev. 96f5a1b4ad139d2f1ad1e8e40f300e1cd1ff574c

Files changed:

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_traffic_mirror_filter.rs

@@ -33,33 +144,144 @@
   53     53   
}
   54     54   
static TRAFFICMIRRORFILTER_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   55     55   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TrafficMirrorFilter", "com.amazonaws.ec2", "TrafficMirrorFilter");
   56     56   
static TRAFFICMIRRORFILTER_MEMBER_TRAFFIC_MIRROR_FILTER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   57     57   
    ::aws_smithy_schema::ShapeId::from_static(
   58     58   
        "com.amazonaws.ec2#TrafficMirrorFilter$TrafficMirrorFilterId",
   59     59   
        "com.amazonaws.ec2",
   60     60   
        "TrafficMirrorFilter",
   61     61   
    ),
   62     62   
    ::aws_smithy_schema::ShapeType::String,
   63         -
    "traffic_mirror_filter_id",
          63  +
    "TrafficMirrorFilterId",
   64     64   
    0,
   65     65   
)
   66     66   
.with_xml_name("trafficMirrorFilterId");
   67     67   
static TRAFFICMIRRORFILTER_MEMBER_INGRESS_FILTER_RULES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   68     68   
    ::aws_smithy_schema::ShapeId::from_static(
   69     69   
        "com.amazonaws.ec2#TrafficMirrorFilter$IngressFilterRules",
   70     70   
        "com.amazonaws.ec2",
   71     71   
        "TrafficMirrorFilter",
   72     72   
    ),
   73     73   
    ::aws_smithy_schema::ShapeType::List,
   74         -
    "ingress_filter_rules",
          74  +
    "IngressFilterRules",
   75     75   
    1,
   76     76   
)
   77     77   
.with_xml_name("ingressFilterRuleSet");
   78     78   
static TRAFFICMIRRORFILTER_MEMBER_EGRESS_FILTER_RULES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   79     79   
    ::aws_smithy_schema::ShapeId::from_static(
   80     80   
        "com.amazonaws.ec2#TrafficMirrorFilter$EgressFilterRules",
   81     81   
        "com.amazonaws.ec2",
   82     82   
        "TrafficMirrorFilter",
   83     83   
    ),
   84     84   
    ::aws_smithy_schema::ShapeType::List,
   85         -
    "egress_filter_rules",
          85  +
    "EgressFilterRules",
   86     86   
    2,
   87     87   
)
   88     88   
.with_xml_name("egressFilterRuleSet");
   89     89   
static TRAFFICMIRRORFILTER_MEMBER_NETWORK_SERVICES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   90     90   
    ::aws_smithy_schema::ShapeId::from_static(
   91     91   
        "com.amazonaws.ec2#TrafficMirrorFilter$NetworkServices",
   92     92   
        "com.amazonaws.ec2",
   93     93   
        "TrafficMirrorFilter",
   94     94   
    ),
   95     95   
    ::aws_smithy_schema::ShapeType::List,
   96         -
    "network_services",
          96  +
    "NetworkServices",
   97     97   
    3,
   98     98   
)
   99     99   
.with_xml_name("networkServiceSet");
  100    100   
static TRAFFICMIRRORFILTER_MEMBER_DESCRIPTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  101    101   
    ::aws_smithy_schema::ShapeId::from_static(
  102    102   
        "com.amazonaws.ec2#TrafficMirrorFilter$Description",
  103    103   
        "com.amazonaws.ec2",
  104    104   
        "TrafficMirrorFilter",
  105    105   
    ),
  106    106   
    ::aws_smithy_schema::ShapeType::String,
  107         -
    "description",
         107  +
    "Description",
  108    108   
    4,
  109    109   
)
  110    110   
.with_xml_name("description");
  111    111   
static TRAFFICMIRRORFILTER_MEMBER_TAGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  112    112   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TrafficMirrorFilter$Tags", "com.amazonaws.ec2", "TrafficMirrorFilter"),
  113    113   
    ::aws_smithy_schema::ShapeType::List,
  114         -
    "tags",
         114  +
    "Tags",
  115    115   
    5,
  116    116   
)
  117    117   
.with_xml_name("tagSet");
  118    118   
static TRAFFICMIRRORFILTER_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  119    119   
    TRAFFICMIRRORFILTER_SCHEMA_ID,
  120    120   
    ::aws_smithy_schema::ShapeType::Structure,
  121    121   
    &[
  122    122   
        &TRAFFICMIRRORFILTER_MEMBER_TRAFFIC_MIRROR_FILTER_ID,
  123    123   
        &TRAFFICMIRRORFILTER_MEMBER_INGRESS_FILTER_RULES,
  124    124   
        &TRAFFICMIRRORFILTER_MEMBER_EGRESS_FILTER_RULES,
@@ -165,165 +303,302 @@
  185    185   
                    }
  186    186   
                    Ok(())
  187    187   
                },
  188    188   
            )?;
  189    189   
        }
  190    190   
        Ok(())
  191    191   
    }
  192    192   
}
  193    193   
impl TrafficMirrorFilter {
  194    194   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  195         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  196         -
        deserializer: &mut D,
         195  +
    pub fn deserialize(
         196  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  197    197   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  198    198   
        #[allow(unused_variables, unused_mut)]
  199    199   
        let mut builder = Self::builder();
  200    200   
        #[allow(
  201    201   
            unused_variables,
  202    202   
            unreachable_code,
  203    203   
            clippy::single_match,
  204    204   
            clippy::match_single_binding,
  205    205   
            clippy::diverging_sub_expression
  206    206   
        )]
  207         -
        deserializer.read_struct(&TRAFFICMIRRORFILTER_SCHEMA, (), |_, member, deser| {
         207  +
        deserializer.read_struct(&TRAFFICMIRRORFILTER_SCHEMA, &mut |member, deser| {
  208    208   
            match member.member_index() {
  209    209   
                Some(0) => {
  210    210   
                    builder.traffic_mirror_filter_id = Some(deser.read_string(member)?);
  211    211   
                }
  212    212   
                Some(1) => {
  213    213   
                    builder.ingress_filter_rules = Some({
  214         -
                        let container = if let Some(cap) = deser.container_size() {
  215         -
                            Vec::with_capacity(cap)
  216         -
                        } else {
  217         -
                            Vec::new()
  218         -
                        };
  219         -
                        deser.read_list(member, container, |mut list, deser| {
  220         -
                            list.push(crate::types::TrafficMirrorFilterRule::deserialize(deser)?);
  221         -
                            Ok(list)
  222         -
                        })?
         214  +
                        let mut container = Vec::new();
         215  +
                        deser.read_list(member, &mut |deser| {
         216  +
                            container.push(crate::types::TrafficMirrorFilterRule::deserialize(deser)?);
         217  +
                            Ok(())
         218  +
                        })?;
         219  +
                        container
  223    220   
                    });
  224    221   
                }
  225    222   
                Some(2) => {
  226    223   
                    builder.egress_filter_rules = Some({
  227         -
                        let container = if let Some(cap) = deser.container_size() {
  228         -
                            Vec::with_capacity(cap)
  229         -
                        } else {
  230         -
                            Vec::new()
  231         -
                        };
  232         -
                        deser.read_list(member, container, |mut list, deser| {
  233         -
                            list.push(crate::types::TrafficMirrorFilterRule::deserialize(deser)?);
  234         -
                            Ok(list)
  235         -
                        })?
         224  +
                        let mut container = Vec::new();
         225  +
                        deser.read_list(member, &mut |deser| {
         226  +
                            container.push(crate::types::TrafficMirrorFilterRule::deserialize(deser)?);
         227  +
                            Ok(())
         228  +
                        })?;
         229  +
                        container
  236    230   
                    });
  237    231   
                }
  238    232   
                Some(3) => {
  239    233   
                    builder.network_services = Some({
  240         -
                        let container = if let Some(cap) = deser.container_size() {
  241         -
                            Vec::with_capacity(cap)
  242         -
                        } else {
  243         -
                            Vec::new()
  244         -
                        };
  245         -
                        deser.read_list(member, container, |mut list, deser| {
  246         -
                            list.push(crate::types::TrafficMirrorNetworkService::from(deser.read_string(member)?.as_str()));
  247         -
                            Ok(list)
  248         -
                        })?
         234  +
                        let mut container = Vec::new();
         235  +
                        deser.read_list(member, &mut |deser| {
         236  +
                            container.push(crate::types::TrafficMirrorNetworkService::from(deser.read_string(member)?.as_str()));
         237  +
                            Ok(())
         238  +
                        })?;
         239  +
                        container
  249    240   
                    });
  250    241   
                }
  251    242   
                Some(4) => {
  252    243   
                    builder.description = Some(deser.read_string(member)?);
  253    244   
                }
  254    245   
                Some(5) => {
  255    246   
                    builder.tags = Some({
  256         -
                        let container = if let Some(cap) = deser.container_size() {
  257         -
                            Vec::with_capacity(cap)
  258         -
                        } else {
  259         -
                            Vec::new()
  260         -
                        };
  261         -
                        deser.read_list(member, container, |mut list, deser| {
  262         -
                            list.push(crate::types::Tag::deserialize(deser)?);
  263         -
                            Ok(list)
  264         -
                        })?
         247  +
                        let mut container = Vec::new();
         248  +
                        deser.read_list(member, &mut |deser| {
         249  +
                            container.push(crate::types::Tag::deserialize(deser)?);
         250  +
                            Ok(())
         251  +
                        })?;
         252  +
                        container
  265    253   
                    });
  266    254   
                }
  267    255   
                _ => {}
  268    256   
            }
  269    257   
            Ok(())
  270    258   
        })?;
  271    259   
        Ok(builder.build())
  272    260   
    }
  273    261   
}
         262  +
impl TrafficMirrorFilter {
         263  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         264  +
    pub fn deserialize_with_response(
         265  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         266  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         267  +
        _status: u16,
         268  +
        _body: &[u8],
         269  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         270  +
        Self::deserialize(deserializer)
         271  +
    }
         272  +
}
  274    273   
impl TrafficMirrorFilter {
  275    274   
    /// Creates a new builder-style object to manufacture [`TrafficMirrorFilter`](crate::types::TrafficMirrorFilter).
  276    275   
    pub fn builder() -> crate::types::builders::TrafficMirrorFilterBuilder {
  277    276   
        crate::types::builders::TrafficMirrorFilterBuilder::default()
  278    277   
    }
  279    278   
}
  280    279   
  281    280   
/// A builder for [`TrafficMirrorFilter`](crate::types::TrafficMirrorFilter).
  282    281   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  283    282   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_traffic_mirror_filter_rule.rs

@@ -66,66 +247,247 @@
   86     86   
    "com.amazonaws.ec2",
   87     87   
    "TrafficMirrorFilterRule",
   88     88   
);
   89     89   
static TRAFFICMIRRORFILTERRULE_MEMBER_TRAFFIC_MIRROR_FILTER_RULE_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   90     90   
    ::aws_smithy_schema::ShapeId::from_static(
   91     91   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$TrafficMirrorFilterRuleId",
   92     92   
        "com.amazonaws.ec2",
   93     93   
        "TrafficMirrorFilterRule",
   94     94   
    ),
   95     95   
    ::aws_smithy_schema::ShapeType::String,
   96         -
    "traffic_mirror_filter_rule_id",
          96  +
    "TrafficMirrorFilterRuleId",
   97     97   
    0,
   98     98   
)
   99     99   
.with_xml_name("trafficMirrorFilterRuleId");
  100    100   
static TRAFFICMIRRORFILTERRULE_MEMBER_TRAFFIC_MIRROR_FILTER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  101    101   
    ::aws_smithy_schema::ShapeId::from_static(
  102    102   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$TrafficMirrorFilterId",
  103    103   
        "com.amazonaws.ec2",
  104    104   
        "TrafficMirrorFilterRule",
  105    105   
    ),
  106    106   
    ::aws_smithy_schema::ShapeType::String,
  107         -
    "traffic_mirror_filter_id",
         107  +
    "TrafficMirrorFilterId",
  108    108   
    1,
  109    109   
)
  110    110   
.with_xml_name("trafficMirrorFilterId");
  111    111   
static TRAFFICMIRRORFILTERRULE_MEMBER_TRAFFIC_DIRECTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  112    112   
    ::aws_smithy_schema::ShapeId::from_static(
  113    113   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$TrafficDirection",
  114    114   
        "com.amazonaws.ec2",
  115    115   
        "TrafficMirrorFilterRule",
  116    116   
    ),
  117    117   
    ::aws_smithy_schema::ShapeType::String,
  118         -
    "traffic_direction",
         118  +
    "TrafficDirection",
  119    119   
    2,
  120    120   
)
  121    121   
.with_xml_name("trafficDirection");
  122    122   
static TRAFFICMIRRORFILTERRULE_MEMBER_RULE_NUMBER: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  123    123   
    ::aws_smithy_schema::ShapeId::from_static(
  124    124   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$RuleNumber",
  125    125   
        "com.amazonaws.ec2",
  126    126   
        "TrafficMirrorFilterRule",
  127    127   
    ),
  128    128   
    ::aws_smithy_schema::ShapeType::Integer,
  129         -
    "rule_number",
         129  +
    "RuleNumber",
  130    130   
    3,
  131    131   
)
  132    132   
.with_xml_name("ruleNumber");
  133    133   
static TRAFFICMIRRORFILTERRULE_MEMBER_RULE_ACTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  134    134   
    ::aws_smithy_schema::ShapeId::from_static(
  135    135   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$RuleAction",
  136    136   
        "com.amazonaws.ec2",
  137    137   
        "TrafficMirrorFilterRule",
  138    138   
    ),
  139    139   
    ::aws_smithy_schema::ShapeType::String,
  140         -
    "rule_action",
         140  +
    "RuleAction",
  141    141   
    4,
  142    142   
)
  143    143   
.with_xml_name("ruleAction");
  144    144   
static TRAFFICMIRRORFILTERRULE_MEMBER_PROTOCOL: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  145    145   
    ::aws_smithy_schema::ShapeId::from_static(
  146    146   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$Protocol",
  147    147   
        "com.amazonaws.ec2",
  148    148   
        "TrafficMirrorFilterRule",
  149    149   
    ),
  150    150   
    ::aws_smithy_schema::ShapeType::Integer,
  151         -
    "protocol",
         151  +
    "Protocol",
  152    152   
    5,
  153    153   
)
  154    154   
.with_xml_name("protocol");
  155    155   
static TRAFFICMIRRORFILTERRULE_MEMBER_DESTINATION_PORT_RANGE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  156    156   
    ::aws_smithy_schema::ShapeId::from_static(
  157    157   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$DestinationPortRange",
  158    158   
        "com.amazonaws.ec2",
  159    159   
        "TrafficMirrorFilterRule",
  160    160   
    ),
  161    161   
    ::aws_smithy_schema::ShapeType::Structure,
  162         -
    "destination_port_range",
         162  +
    "DestinationPortRange",
  163    163   
    6,
  164    164   
)
  165    165   
.with_xml_name("destinationPortRange");
  166    166   
static TRAFFICMIRRORFILTERRULE_MEMBER_SOURCE_PORT_RANGE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  167    167   
    ::aws_smithy_schema::ShapeId::from_static(
  168    168   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$SourcePortRange",
  169    169   
        "com.amazonaws.ec2",
  170    170   
        "TrafficMirrorFilterRule",
  171    171   
    ),
  172    172   
    ::aws_smithy_schema::ShapeType::Structure,
  173         -
    "source_port_range",
         173  +
    "SourcePortRange",
  174    174   
    7,
  175    175   
)
  176    176   
.with_xml_name("sourcePortRange");
  177    177   
static TRAFFICMIRRORFILTERRULE_MEMBER_DESTINATION_CIDR_BLOCK: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  178    178   
    ::aws_smithy_schema::ShapeId::from_static(
  179    179   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$DestinationCidrBlock",
  180    180   
        "com.amazonaws.ec2",
  181    181   
        "TrafficMirrorFilterRule",
  182    182   
    ),
  183    183   
    ::aws_smithy_schema::ShapeType::String,
  184         -
    "destination_cidr_block",
         184  +
    "DestinationCidrBlock",
  185    185   
    8,
  186    186   
)
  187    187   
.with_xml_name("destinationCidrBlock");
  188    188   
static TRAFFICMIRRORFILTERRULE_MEMBER_SOURCE_CIDR_BLOCK: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  189    189   
    ::aws_smithy_schema::ShapeId::from_static(
  190    190   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$SourceCidrBlock",
  191    191   
        "com.amazonaws.ec2",
  192    192   
        "TrafficMirrorFilterRule",
  193    193   
    ),
  194    194   
    ::aws_smithy_schema::ShapeType::String,
  195         -
    "source_cidr_block",
         195  +
    "SourceCidrBlock",
  196    196   
    9,
  197    197   
)
  198    198   
.with_xml_name("sourceCidrBlock");
  199    199   
static TRAFFICMIRRORFILTERRULE_MEMBER_DESCRIPTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  200    200   
    ::aws_smithy_schema::ShapeId::from_static(
  201    201   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$Description",
  202    202   
        "com.amazonaws.ec2",
  203    203   
        "TrafficMirrorFilterRule",
  204    204   
    ),
  205    205   
    ::aws_smithy_schema::ShapeType::String,
  206         -
    "description",
         206  +
    "Description",
  207    207   
    10,
  208    208   
)
  209    209   
.with_xml_name("description");
  210    210   
static TRAFFICMIRRORFILTERRULE_MEMBER_TAGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  211    211   
    ::aws_smithy_schema::ShapeId::from_static(
  212    212   
        "com.amazonaws.ec2#TrafficMirrorFilterRule$Tags",
  213    213   
        "com.amazonaws.ec2",
  214    214   
        "TrafficMirrorFilterRule",
  215    215   
    ),
  216    216   
    ::aws_smithy_schema::ShapeType::List,
  217         -
    "tags",
         217  +
    "Tags",
  218    218   
    11,
  219    219   
)
  220    220   
.with_xml_name("tagSet");
  221    221   
static TRAFFICMIRRORFILTERRULE_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  222    222   
    TRAFFICMIRRORFILTERRULE_SCHEMA_ID,
  223    223   
    ::aws_smithy_schema::ShapeType::Structure,
  224    224   
    &[
  225    225   
        &TRAFFICMIRRORFILTERRULE_MEMBER_TRAFFIC_MIRROR_FILTER_RULE_ID,
  226    226   
        &TRAFFICMIRRORFILTERRULE_MEMBER_TRAFFIC_MIRROR_FILTER_ID,
  227    227   
        &TRAFFICMIRRORFILTERRULE_MEMBER_TRAFFIC_DIRECTION,
@@ -268,268 +394,402 @@
  288    288   
                    }
  289    289   
                    Ok(())
  290    290   
                },
  291    291   
            )?;
  292    292   
        }
  293    293   
        Ok(())
  294    294   
    }
  295    295   
}
  296    296   
impl TrafficMirrorFilterRule {
  297    297   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  298         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  299         -
        deserializer: &mut D,
         298  +
    pub fn deserialize(
         299  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  300    300   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  301    301   
        #[allow(unused_variables, unused_mut)]
  302    302   
        let mut builder = Self::builder();
  303    303   
        #[allow(
  304    304   
            unused_variables,
  305    305   
            unreachable_code,
  306    306   
            clippy::single_match,
  307    307   
            clippy::match_single_binding,
  308    308   
            clippy::diverging_sub_expression
  309    309   
        )]
  310         -
        deserializer.read_struct(&TRAFFICMIRRORFILTERRULE_SCHEMA, (), |_, member, deser| {
         310  +
        deserializer.read_struct(&TRAFFICMIRRORFILTERRULE_SCHEMA, &mut |member, deser| {
  311    311   
            match member.member_index() {
  312    312   
                Some(0) => {
  313    313   
                    builder.traffic_mirror_filter_rule_id = Some(deser.read_string(member)?);
  314    314   
                }
  315    315   
                Some(1) => {
  316    316   
                    builder.traffic_mirror_filter_id = Some(deser.read_string(member)?);
  317    317   
                }
  318    318   
                Some(2) => {
  319    319   
                    builder.traffic_direction = Some(crate::types::TrafficDirection::from(deser.read_string(member)?.as_str()));
  320    320   
                }
  321    321   
                Some(3) => {
  322    322   
                    builder.rule_number = Some(deser.read_integer(member)?);
  323    323   
                }
  324    324   
                Some(4) => {
  325    325   
                    builder.rule_action = Some(crate::types::TrafficMirrorRuleAction::from(deser.read_string(member)?.as_str()));
  326    326   
                }
  327    327   
                Some(5) => {
  328    328   
                    builder.protocol = Some(deser.read_integer(member)?);
  329    329   
                }
  330    330   
                Some(6) => {
  331    331   
                    builder.destination_port_range = Some(crate::types::TrafficMirrorPortRange::deserialize(deser)?);
  332    332   
                }
  333    333   
                Some(7) => {
  334    334   
                    builder.source_port_range = Some(crate::types::TrafficMirrorPortRange::deserialize(deser)?);
  335    335   
                }
  336    336   
                Some(8) => {
  337    337   
                    builder.destination_cidr_block = Some(deser.read_string(member)?);
  338    338   
                }
  339    339   
                Some(9) => {
  340    340   
                    builder.source_cidr_block = Some(deser.read_string(member)?);
  341    341   
                }
  342    342   
                Some(10) => {
  343    343   
                    builder.description = Some(deser.read_string(member)?);
  344    344   
                }
  345    345   
                Some(11) => {
  346    346   
                    builder.tags = Some({
  347         -
                        let container = if let Some(cap) = deser.container_size() {
  348         -
                            Vec::with_capacity(cap)
  349         -
                        } else {
  350         -
                            Vec::new()
  351         -
                        };
  352         -
                        deser.read_list(member, container, |mut list, deser| {
  353         -
                            list.push(crate::types::Tag::deserialize(deser)?);
  354         -
                            Ok(list)
  355         -
                        })?
         347  +
                        let mut container = Vec::new();
         348  +
                        deser.read_list(member, &mut |deser| {
         349  +
                            container.push(crate::types::Tag::deserialize(deser)?);
         350  +
                            Ok(())
         351  +
                        })?;
         352  +
                        container
  356    353   
                    });
  357    354   
                }
  358    355   
                _ => {}
  359    356   
            }
  360    357   
            Ok(())
  361    358   
        })?;
  362    359   
        Ok(builder.build())
  363    360   
    }
  364    361   
}
         362  +
impl TrafficMirrorFilterRule {
         363  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         364  +
    pub fn deserialize_with_response(
         365  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         366  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         367  +
        _status: u16,
         368  +
        _body: &[u8],
         369  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         370  +
        Self::deserialize(deserializer)
         371  +
    }
         372  +
}
  365    373   
impl TrafficMirrorFilterRule {
  366    374   
    /// Creates a new builder-style object to manufacture [`TrafficMirrorFilterRule`](crate::types::TrafficMirrorFilterRule).
  367    375   
    pub fn builder() -> crate::types::builders::TrafficMirrorFilterRuleBuilder {
  368    376   
        crate::types::builders::TrafficMirrorFilterRuleBuilder::default()
  369    377   
    }
  370    378   
}
  371    379   
  372    380   
/// A builder for [`TrafficMirrorFilterRule`](crate::types::TrafficMirrorFilterRule).
  373    381   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  374    382   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_traffic_mirror_port_range.rs

@@ -1,1 +128,139 @@
   21     21   
}
   22     22   
static TRAFFICMIRRORPORTRANGE_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   23     23   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TrafficMirrorPortRange", "com.amazonaws.ec2", "TrafficMirrorPortRange");
   24     24   
static TRAFFICMIRRORPORTRANGE_MEMBER_FROM_PORT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   25     25   
    ::aws_smithy_schema::ShapeId::from_static(
   26     26   
        "com.amazonaws.ec2#TrafficMirrorPortRange$FromPort",
   27     27   
        "com.amazonaws.ec2",
   28     28   
        "TrafficMirrorPortRange",
   29     29   
    ),
   30     30   
    ::aws_smithy_schema::ShapeType::Integer,
   31         -
    "from_port",
          31  +
    "FromPort",
   32     32   
    0,
   33     33   
)
   34     34   
.with_xml_name("fromPort");
   35     35   
static TRAFFICMIRRORPORTRANGE_MEMBER_TO_PORT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   36     36   
    ::aws_smithy_schema::ShapeId::from_static(
   37     37   
        "com.amazonaws.ec2#TrafficMirrorPortRange$ToPort",
   38     38   
        "com.amazonaws.ec2",
   39     39   
        "TrafficMirrorPortRange",
   40     40   
    ),
   41     41   
    ::aws_smithy_schema::ShapeType::Integer,
   42         -
    "to_port",
          42  +
    "ToPort",
   43     43   
    1,
   44     44   
)
   45     45   
.with_xml_name("toPort");
   46     46   
static TRAFFICMIRRORPORTRANGE_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   47     47   
    TRAFFICMIRRORPORTRANGE_SCHEMA_ID,
   48     48   
    ::aws_smithy_schema::ShapeType::Structure,
   49     49   
    &[&TRAFFICMIRRORPORTRANGE_MEMBER_FROM_PORT, &TRAFFICMIRRORPORTRANGE_MEMBER_TO_PORT],
   50     50   
);
   51     51   
impl TrafficMirrorPortRange {
   52     52   
    /// The schema for this shape.
   53     53   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &TRAFFICMIRRORPORTRANGE_SCHEMA;
   54     54   
}
   55     55   
impl ::aws_smithy_schema::serde::SerializableStruct for TrafficMirrorPortRange {
   56     56   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   57     57   
    fn serialize_members(
   58     58   
        &self,
   59     59   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   60     60   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   61     61   
        if let Some(ref val) = self.from_port {
   62     62   
            ser.write_integer(&TRAFFICMIRRORPORTRANGE_MEMBER_FROM_PORT, *val)?;
   63     63   
        }
   64     64   
        if let Some(ref val) = self.to_port {
   65     65   
            ser.write_integer(&TRAFFICMIRRORPORTRANGE_MEMBER_TO_PORT, *val)?;
   66     66   
        }
   67     67   
        Ok(())
   68     68   
    }
   69     69   
}
   70     70   
impl TrafficMirrorPortRange {
   71     71   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   72         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   73         -
        deserializer: &mut D,
          72  +
    pub fn deserialize(
          73  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   74     74   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   75     75   
        #[allow(unused_variables, unused_mut)]
   76     76   
        let mut builder = Self::builder();
   77     77   
        #[allow(
   78     78   
            unused_variables,
   79     79   
            unreachable_code,
   80     80   
            clippy::single_match,
   81     81   
            clippy::match_single_binding,
   82     82   
            clippy::diverging_sub_expression
   83     83   
        )]
   84         -
        deserializer.read_struct(&TRAFFICMIRRORPORTRANGE_SCHEMA, (), |_, member, deser| {
          84  +
        deserializer.read_struct(&TRAFFICMIRRORPORTRANGE_SCHEMA, &mut |member, deser| {
   85     85   
            match member.member_index() {
   86     86   
                Some(0) => {
   87     87   
                    builder.from_port = Some(deser.read_integer(member)?);
   88     88   
                }
   89     89   
                Some(1) => {
   90     90   
                    builder.to_port = Some(deser.read_integer(member)?);
   91     91   
                }
   92     92   
                _ => {}
   93     93   
            }
   94     94   
            Ok(())
   95     95   
        })?;
   96     96   
        Ok(builder.build())
   97     97   
    }
   98     98   
}
          99  +
impl TrafficMirrorPortRange {
         100  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         101  +
    pub fn deserialize_with_response(
         102  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         103  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         104  +
        _status: u16,
         105  +
        _body: &[u8],
         106  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         107  +
        Self::deserialize(deserializer)
         108  +
    }
         109  +
}
   99    110   
impl TrafficMirrorPortRange {
  100    111   
    /// Creates a new builder-style object to manufacture [`TrafficMirrorPortRange`](crate::types::TrafficMirrorPortRange).
  101    112   
    pub fn builder() -> crate::types::builders::TrafficMirrorPortRangeBuilder {
  102    113   
        crate::types::builders::TrafficMirrorPortRangeBuilder::default()
  103    114   
    }
  104    115   
}
  105    116   
  106    117   
/// A builder for [`TrafficMirrorPortRange`](crate::types::TrafficMirrorPortRange).
  107    118   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  108    119   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_traffic_mirror_port_range_request.rs

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

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_traffic_mirror_session.rs

@@ -53,53 +208,208 @@
   73     73   
}
   74     74   
static TRAFFICMIRRORSESSION_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   75     75   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TrafficMirrorSession", "com.amazonaws.ec2", "TrafficMirrorSession");
   76     76   
static TRAFFICMIRRORSESSION_MEMBER_TRAFFIC_MIRROR_SESSION_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   77     77   
    ::aws_smithy_schema::ShapeId::from_static(
   78     78   
        "com.amazonaws.ec2#TrafficMirrorSession$TrafficMirrorSessionId",
   79     79   
        "com.amazonaws.ec2",
   80     80   
        "TrafficMirrorSession",
   81     81   
    ),
   82     82   
    ::aws_smithy_schema::ShapeType::String,
   83         -
    "traffic_mirror_session_id",
          83  +
    "TrafficMirrorSessionId",
   84     84   
    0,
   85     85   
)
   86     86   
.with_xml_name("trafficMirrorSessionId");
   87     87   
static TRAFFICMIRRORSESSION_MEMBER_TRAFFIC_MIRROR_TARGET_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   88     88   
    ::aws_smithy_schema::ShapeId::from_static(
   89     89   
        "com.amazonaws.ec2#TrafficMirrorSession$TrafficMirrorTargetId",
   90     90   
        "com.amazonaws.ec2",
   91     91   
        "TrafficMirrorSession",
   92     92   
    ),
   93     93   
    ::aws_smithy_schema::ShapeType::String,
   94         -
    "traffic_mirror_target_id",
          94  +
    "TrafficMirrorTargetId",
   95     95   
    1,
   96     96   
)
   97     97   
.with_xml_name("trafficMirrorTargetId");
   98     98   
static TRAFFICMIRRORSESSION_MEMBER_TRAFFIC_MIRROR_FILTER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   99     99   
    ::aws_smithy_schema::ShapeId::from_static(
  100    100   
        "com.amazonaws.ec2#TrafficMirrorSession$TrafficMirrorFilterId",
  101    101   
        "com.amazonaws.ec2",
  102    102   
        "TrafficMirrorSession",
  103    103   
    ),
  104    104   
    ::aws_smithy_schema::ShapeType::String,
  105         -
    "traffic_mirror_filter_id",
         105  +
    "TrafficMirrorFilterId",
  106    106   
    2,
  107    107   
)
  108    108   
.with_xml_name("trafficMirrorFilterId");
  109    109   
static TRAFFICMIRRORSESSION_MEMBER_NETWORK_INTERFACE_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  110    110   
    ::aws_smithy_schema::ShapeId::from_static(
  111    111   
        "com.amazonaws.ec2#TrafficMirrorSession$NetworkInterfaceId",
  112    112   
        "com.amazonaws.ec2",
  113    113   
        "TrafficMirrorSession",
  114    114   
    ),
  115    115   
    ::aws_smithy_schema::ShapeType::String,
  116         -
    "network_interface_id",
         116  +
    "NetworkInterfaceId",
  117    117   
    3,
  118    118   
)
  119    119   
.with_xml_name("networkInterfaceId");
  120    120   
static TRAFFICMIRRORSESSION_MEMBER_OWNER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  121    121   
    ::aws_smithy_schema::ShapeId::from_static(
  122    122   
        "com.amazonaws.ec2#TrafficMirrorSession$OwnerId",
  123    123   
        "com.amazonaws.ec2",
  124    124   
        "TrafficMirrorSession",
  125    125   
    ),
  126    126   
    ::aws_smithy_schema::ShapeType::String,
  127         -
    "owner_id",
         127  +
    "OwnerId",
  128    128   
    4,
  129    129   
)
  130    130   
.with_xml_name("ownerId");
  131    131   
static TRAFFICMIRRORSESSION_MEMBER_PACKET_LENGTH: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  132    132   
    ::aws_smithy_schema::ShapeId::from_static(
  133    133   
        "com.amazonaws.ec2#TrafficMirrorSession$PacketLength",
  134    134   
        "com.amazonaws.ec2",
  135    135   
        "TrafficMirrorSession",
  136    136   
    ),
  137    137   
    ::aws_smithy_schema::ShapeType::Integer,
  138         -
    "packet_length",
         138  +
    "PacketLength",
  139    139   
    5,
  140    140   
)
  141    141   
.with_xml_name("packetLength");
  142    142   
static TRAFFICMIRRORSESSION_MEMBER_SESSION_NUMBER: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  143    143   
    ::aws_smithy_schema::ShapeId::from_static(
  144    144   
        "com.amazonaws.ec2#TrafficMirrorSession$SessionNumber",
  145    145   
        "com.amazonaws.ec2",
  146    146   
        "TrafficMirrorSession",
  147    147   
    ),
  148    148   
    ::aws_smithy_schema::ShapeType::Integer,
  149         -
    "session_number",
         149  +
    "SessionNumber",
  150    150   
    6,
  151    151   
)
  152    152   
.with_xml_name("sessionNumber");
  153    153   
static TRAFFICMIRRORSESSION_MEMBER_VIRTUAL_NETWORK_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  154    154   
    ::aws_smithy_schema::ShapeId::from_static(
  155    155   
        "com.amazonaws.ec2#TrafficMirrorSession$VirtualNetworkId",
  156    156   
        "com.amazonaws.ec2",
  157    157   
        "TrafficMirrorSession",
  158    158   
    ),
  159    159   
    ::aws_smithy_schema::ShapeType::Integer,
  160         -
    "virtual_network_id",
         160  +
    "VirtualNetworkId",
  161    161   
    7,
  162    162   
)
  163    163   
.with_xml_name("virtualNetworkId");
  164    164   
static TRAFFICMIRRORSESSION_MEMBER_DESCRIPTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  165    165   
    ::aws_smithy_schema::ShapeId::from_static(
  166    166   
        "com.amazonaws.ec2#TrafficMirrorSession$Description",
  167    167   
        "com.amazonaws.ec2",
  168    168   
        "TrafficMirrorSession",
  169    169   
    ),
  170    170   
    ::aws_smithy_schema::ShapeType::String,
  171         -
    "description",
         171  +
    "Description",
  172    172   
    8,
  173    173   
)
  174    174   
.with_xml_name("description");
  175    175   
static TRAFFICMIRRORSESSION_MEMBER_TAGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  176    176   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TrafficMirrorSession$Tags", "com.amazonaws.ec2", "TrafficMirrorSession"),
  177    177   
    ::aws_smithy_schema::ShapeType::List,
  178         -
    "tags",
         178  +
    "Tags",
  179    179   
    9,
  180    180   
)
  181    181   
.with_xml_name("tagSet");
  182    182   
static TRAFFICMIRRORSESSION_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  183    183   
    TRAFFICMIRRORSESSION_SCHEMA_ID,
  184    184   
    ::aws_smithy_schema::ShapeType::Structure,
  185    185   
    &[
  186    186   
        &TRAFFICMIRRORSESSION_MEMBER_TRAFFIC_MIRROR_SESSION_ID,
  187    187   
        &TRAFFICMIRRORSESSION_MEMBER_TRAFFIC_MIRROR_TARGET_ID,
  188    188   
        &TRAFFICMIRRORSESSION_MEMBER_TRAFFIC_MIRROR_FILTER_ID,
@@ -221,221 +341,349 @@
  241    241   
                    }
  242    242   
                    Ok(())
  243    243   
                },
  244    244   
            )?;
  245    245   
        }
  246    246   
        Ok(())
  247    247   
    }
  248    248   
}
  249    249   
impl TrafficMirrorSession {
  250    250   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  251         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  252         -
        deserializer: &mut D,
         251  +
    pub fn deserialize(
         252  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  253    253   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  254    254   
        #[allow(unused_variables, unused_mut)]
  255    255   
        let mut builder = Self::builder();
  256    256   
        #[allow(
  257    257   
            unused_variables,
  258    258   
            unreachable_code,
  259    259   
            clippy::single_match,
  260    260   
            clippy::match_single_binding,
  261    261   
            clippy::diverging_sub_expression
  262    262   
        )]
  263         -
        deserializer.read_struct(&TRAFFICMIRRORSESSION_SCHEMA, (), |_, member, deser| {
         263  +
        deserializer.read_struct(&TRAFFICMIRRORSESSION_SCHEMA, &mut |member, deser| {
  264    264   
            match member.member_index() {
  265    265   
                Some(0) => {
  266    266   
                    builder.traffic_mirror_session_id = Some(deser.read_string(member)?);
  267    267   
                }
  268    268   
                Some(1) => {
  269    269   
                    builder.traffic_mirror_target_id = Some(deser.read_string(member)?);
  270    270   
                }
  271    271   
                Some(2) => {
  272    272   
                    builder.traffic_mirror_filter_id = Some(deser.read_string(member)?);
  273    273   
                }
  274    274   
                Some(3) => {
  275    275   
                    builder.network_interface_id = Some(deser.read_string(member)?);
  276    276   
                }
  277    277   
                Some(4) => {
  278    278   
                    builder.owner_id = Some(deser.read_string(member)?);
  279    279   
                }
  280    280   
                Some(5) => {
  281    281   
                    builder.packet_length = Some(deser.read_integer(member)?);
  282    282   
                }
  283    283   
                Some(6) => {
  284    284   
                    builder.session_number = Some(deser.read_integer(member)?);
  285    285   
                }
  286    286   
                Some(7) => {
  287    287   
                    builder.virtual_network_id = Some(deser.read_integer(member)?);
  288    288   
                }
  289    289   
                Some(8) => {
  290    290   
                    builder.description = Some(deser.read_string(member)?);
  291    291   
                }
  292    292   
                Some(9) => {
  293    293   
                    builder.tags = Some({
  294         -
                        let container = if let Some(cap) = deser.container_size() {
  295         -
                            Vec::with_capacity(cap)
  296         -
                        } else {
  297         -
                            Vec::new()
  298         -
                        };
  299         -
                        deser.read_list(member, container, |mut list, deser| {
  300         -
                            list.push(crate::types::Tag::deserialize(deser)?);
  301         -
                            Ok(list)
  302         -
                        })?
         294  +
                        let mut container = Vec::new();
         295  +
                        deser.read_list(member, &mut |deser| {
         296  +
                            container.push(crate::types::Tag::deserialize(deser)?);
         297  +
                            Ok(())
         298  +
                        })?;
         299  +
                        container
  303    300   
                    });
  304    301   
                }
  305    302   
                _ => {}
  306    303   
            }
  307    304   
            Ok(())
  308    305   
        })?;
  309    306   
        Ok(builder.build())
  310    307   
    }
  311    308   
}
         309  +
impl TrafficMirrorSession {
         310  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         311  +
    pub fn deserialize_with_response(
         312  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         313  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         314  +
        _status: u16,
         315  +
        _body: &[u8],
         316  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         317  +
        Self::deserialize(deserializer)
         318  +
    }
         319  +
}
  312    320   
impl TrafficMirrorSession {
  313    321   
    /// Creates a new builder-style object to manufacture [`TrafficMirrorSession`](crate::types::TrafficMirrorSession).
  314    322   
    pub fn builder() -> crate::types::builders::TrafficMirrorSessionBuilder {
  315    323   
        crate::types::builders::TrafficMirrorSessionBuilder::default()
  316    324   
    }
  317    325   
}
  318    326   
  319    327   
/// A builder for [`TrafficMirrorSession`](crate::types::TrafficMirrorSession).
  320    328   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  321    329   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_traffic_mirror_target.rs

@@ -39,39 +168,168 @@
   59     59   
}
   60     60   
static TRAFFICMIRRORTARGET_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   61     61   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TrafficMirrorTarget", "com.amazonaws.ec2", "TrafficMirrorTarget");
   62     62   
static TRAFFICMIRRORTARGET_MEMBER_TRAFFIC_MIRROR_TARGET_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   63     63   
    ::aws_smithy_schema::ShapeId::from_static(
   64     64   
        "com.amazonaws.ec2#TrafficMirrorTarget$TrafficMirrorTargetId",
   65     65   
        "com.amazonaws.ec2",
   66     66   
        "TrafficMirrorTarget",
   67     67   
    ),
   68     68   
    ::aws_smithy_schema::ShapeType::String,
   69         -
    "traffic_mirror_target_id",
          69  +
    "TrafficMirrorTargetId",
   70     70   
    0,
   71     71   
)
   72     72   
.with_xml_name("trafficMirrorTargetId");
   73     73   
static TRAFFICMIRRORTARGET_MEMBER_NETWORK_INTERFACE_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   74     74   
    ::aws_smithy_schema::ShapeId::from_static(
   75     75   
        "com.amazonaws.ec2#TrafficMirrorTarget$NetworkInterfaceId",
   76     76   
        "com.amazonaws.ec2",
   77     77   
        "TrafficMirrorTarget",
   78     78   
    ),
   79     79   
    ::aws_smithy_schema::ShapeType::String,
   80         -
    "network_interface_id",
          80  +
    "NetworkInterfaceId",
   81     81   
    1,
   82     82   
)
   83     83   
.with_xml_name("networkInterfaceId");
   84     84   
static TRAFFICMIRRORTARGET_MEMBER_NETWORK_LOAD_BALANCER_ARN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   85     85   
    ::aws_smithy_schema::ShapeId::from_static(
   86     86   
        "com.amazonaws.ec2#TrafficMirrorTarget$NetworkLoadBalancerArn",
   87     87   
        "com.amazonaws.ec2",
   88     88   
        "TrafficMirrorTarget",
   89     89   
    ),
   90     90   
    ::aws_smithy_schema::ShapeType::String,
   91         -
    "network_load_balancer_arn",
          91  +
    "NetworkLoadBalancerArn",
   92     92   
    2,
   93     93   
)
   94     94   
.with_xml_name("networkLoadBalancerArn");
   95     95   
static TRAFFICMIRRORTARGET_MEMBER_TYPE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   96     96   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TrafficMirrorTarget$Type", "com.amazonaws.ec2", "TrafficMirrorTarget"),
   97     97   
    ::aws_smithy_schema::ShapeType::String,
   98         -
    "r##type",
          98  +
    "Type",
   99     99   
    3,
  100    100   
)
  101    101   
.with_xml_name("type");
  102    102   
static TRAFFICMIRRORTARGET_MEMBER_DESCRIPTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  103    103   
    ::aws_smithy_schema::ShapeId::from_static(
  104    104   
        "com.amazonaws.ec2#TrafficMirrorTarget$Description",
  105    105   
        "com.amazonaws.ec2",
  106    106   
        "TrafficMirrorTarget",
  107    107   
    ),
  108    108   
    ::aws_smithy_schema::ShapeType::String,
  109         -
    "description",
         109  +
    "Description",
  110    110   
    4,
  111    111   
)
  112    112   
.with_xml_name("description");
  113    113   
static TRAFFICMIRRORTARGET_MEMBER_OWNER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  114    114   
    ::aws_smithy_schema::ShapeId::from_static(
  115    115   
        "com.amazonaws.ec2#TrafficMirrorTarget$OwnerId",
  116    116   
        "com.amazonaws.ec2",
  117    117   
        "TrafficMirrorTarget",
  118    118   
    ),
  119    119   
    ::aws_smithy_schema::ShapeType::String,
  120         -
    "owner_id",
         120  +
    "OwnerId",
  121    121   
    5,
  122    122   
)
  123    123   
.with_xml_name("ownerId");
  124    124   
static TRAFFICMIRRORTARGET_MEMBER_TAGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  125    125   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TrafficMirrorTarget$Tags", "com.amazonaws.ec2", "TrafficMirrorTarget"),
  126    126   
    ::aws_smithy_schema::ShapeType::List,
  127         -
    "tags",
         127  +
    "Tags",
  128    128   
    6,
  129    129   
)
  130    130   
.with_xml_name("tagSet");
  131    131   
static TRAFFICMIRRORTARGET_MEMBER_GATEWAY_LOAD_BALANCER_ENDPOINT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  132    132   
    ::aws_smithy_schema::ShapeId::from_static(
  133    133   
        "com.amazonaws.ec2#TrafficMirrorTarget$GatewayLoadBalancerEndpointId",
  134    134   
        "com.amazonaws.ec2",
  135    135   
        "TrafficMirrorTarget",
  136    136   
    ),
  137    137   
    ::aws_smithy_schema::ShapeType::String,
  138         -
    "gateway_load_balancer_endpoint_id",
         138  +
    "GatewayLoadBalancerEndpointId",
  139    139   
    7,
  140    140   
)
  141    141   
.with_xml_name("gatewayLoadBalancerEndpointId");
  142    142   
static TRAFFICMIRRORTARGET_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  143    143   
    TRAFFICMIRRORTARGET_SCHEMA_ID,
  144    144   
    ::aws_smithy_schema::ShapeType::Structure,
  145    145   
    &[
  146    146   
        &TRAFFICMIRRORTARGET_MEMBER_TRAFFIC_MIRROR_TARGET_ID,
  147    147   
        &TRAFFICMIRRORTARGET_MEMBER_NETWORK_INTERFACE_ID,
  148    148   
        &TRAFFICMIRRORTARGET_MEMBER_NETWORK_LOAD_BALANCER_ARN,
@@ -173,173 +287,295 @@
  193    193   
            )?;
  194    194   
        }
  195    195   
        if let Some(ref val) = self.gateway_load_balancer_endpoint_id {
  196    196   
            ser.write_string(&TRAFFICMIRRORTARGET_MEMBER_GATEWAY_LOAD_BALANCER_ENDPOINT_ID, val)?;
  197    197   
        }
  198    198   
        Ok(())
  199    199   
    }
  200    200   
}
  201    201   
impl TrafficMirrorTarget {
  202    202   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  203         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  204         -
        deserializer: &mut D,
         203  +
    pub fn deserialize(
         204  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  205    205   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  206    206   
        #[allow(unused_variables, unused_mut)]
  207    207   
        let mut builder = Self::builder();
  208    208   
        #[allow(
  209    209   
            unused_variables,
  210    210   
            unreachable_code,
  211    211   
            clippy::single_match,
  212    212   
            clippy::match_single_binding,
  213    213   
            clippy::diverging_sub_expression
  214    214   
        )]
  215         -
        deserializer.read_struct(&TRAFFICMIRRORTARGET_SCHEMA, (), |_, member, deser| {
         215  +
        deserializer.read_struct(&TRAFFICMIRRORTARGET_SCHEMA, &mut |member, deser| {
  216    216   
            match member.member_index() {
  217    217   
                Some(0) => {
  218    218   
                    builder.traffic_mirror_target_id = Some(deser.read_string(member)?);
  219    219   
                }
  220    220   
                Some(1) => {
  221    221   
                    builder.network_interface_id = Some(deser.read_string(member)?);
  222    222   
                }
  223    223   
                Some(2) => {
  224    224   
                    builder.network_load_balancer_arn = Some(deser.read_string(member)?);
  225    225   
                }
  226    226   
                Some(3) => {
  227    227   
                    builder.r#type = Some(crate::types::TrafficMirrorTargetType::from(deser.read_string(member)?.as_str()));
  228    228   
                }
  229    229   
                Some(4) => {
  230    230   
                    builder.description = Some(deser.read_string(member)?);
  231    231   
                }
  232    232   
                Some(5) => {
  233    233   
                    builder.owner_id = Some(deser.read_string(member)?);
  234    234   
                }
  235    235   
                Some(6) => {
  236    236   
                    builder.tags = Some({
  237         -
                        let container = if let Some(cap) = deser.container_size() {
  238         -
                            Vec::with_capacity(cap)
  239         -
                        } else {
  240         -
                            Vec::new()
  241         -
                        };
  242         -
                        deser.read_list(member, container, |mut list, deser| {
  243         -
                            list.push(crate::types::Tag::deserialize(deser)?);
  244         -
                            Ok(list)
  245         -
                        })?
         237  +
                        let mut container = Vec::new();
         238  +
                        deser.read_list(member, &mut |deser| {
         239  +
                            container.push(crate::types::Tag::deserialize(deser)?);
         240  +
                            Ok(())
         241  +
                        })?;
         242  +
                        container
  246    243   
                    });
  247    244   
                }
  248    245   
                Some(7) => {
  249    246   
                    builder.gateway_load_balancer_endpoint_id = Some(deser.read_string(member)?);
  250    247   
                }
  251    248   
                _ => {}
  252    249   
            }
  253    250   
            Ok(())
  254    251   
        })?;
  255    252   
        Ok(builder.build())
  256    253   
    }
  257    254   
}
         255  +
impl TrafficMirrorTarget {
         256  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         257  +
    pub fn deserialize_with_response(
         258  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         259  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         260  +
        _status: u16,
         261  +
        _body: &[u8],
         262  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         263  +
        Self::deserialize(deserializer)
         264  +
    }
         265  +
}
  258    266   
impl TrafficMirrorTarget {
  259    267   
    /// Creates a new builder-style object to manufacture [`TrafficMirrorTarget`](crate::types::TrafficMirrorTarget).
  260    268   
    pub fn builder() -> crate::types::builders::TrafficMirrorTargetBuilder {
  261    269   
        crate::types::builders::TrafficMirrorTargetBuilder::default()
  262    270   
    }
  263    271   
}
  264    272   
  265    273   
/// A builder for [`TrafficMirrorTarget`](crate::types::TrafficMirrorTarget).
  266    274   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  267    275   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_transit_gateway.rs

@@ -35,35 +148,148 @@
   55     55   
    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.tags.is_none()`.
   56     56   
    pub fn tags(&self) -> &[crate::types::Tag] {
   57     57   
        self.tags.as_deref().unwrap_or_default()
   58     58   
    }
   59     59   
}
   60     60   
static TRANSITGATEWAY_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   61     61   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TransitGateway", "com.amazonaws.ec2", "TransitGateway");
   62     62   
static TRANSITGATEWAY_MEMBER_TRANSIT_GATEWAY_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   63     63   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TransitGateway$TransitGatewayId", "com.amazonaws.ec2", "TransitGateway"),
   64     64   
    ::aws_smithy_schema::ShapeType::String,
   65         -
    "transit_gateway_id",
          65  +
    "TransitGatewayId",
   66     66   
    0,
   67     67   
)
   68     68   
.with_xml_name("transitGatewayId");
   69     69   
static TRANSITGATEWAY_MEMBER_TRANSIT_GATEWAY_ARN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   70     70   
    ::aws_smithy_schema::ShapeId::from_static(
   71     71   
        "com.amazonaws.ec2#TransitGateway$TransitGatewayArn",
   72     72   
        "com.amazonaws.ec2",
   73     73   
        "TransitGateway",
   74     74   
    ),
   75     75   
    ::aws_smithy_schema::ShapeType::String,
   76         -
    "transit_gateway_arn",
          76  +
    "TransitGatewayArn",
   77     77   
    1,
   78     78   
)
   79     79   
.with_xml_name("transitGatewayArn");
   80     80   
static TRANSITGATEWAY_MEMBER_STATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   81     81   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TransitGateway$State", "com.amazonaws.ec2", "TransitGateway"),
   82     82   
    ::aws_smithy_schema::ShapeType::String,
   83         -
    "state",
          83  +
    "State",
   84     84   
    2,
   85     85   
)
   86     86   
.with_xml_name("state");
   87     87   
static TRANSITGATEWAY_MEMBER_OWNER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   88     88   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TransitGateway$OwnerId", "com.amazonaws.ec2", "TransitGateway"),
   89     89   
    ::aws_smithy_schema::ShapeType::String,
   90         -
    "owner_id",
          90  +
    "OwnerId",
   91     91   
    3,
   92     92   
)
   93     93   
.with_xml_name("ownerId");
   94     94   
static TRANSITGATEWAY_MEMBER_DESCRIPTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   95     95   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TransitGateway$Description", "com.amazonaws.ec2", "TransitGateway"),
   96     96   
    ::aws_smithy_schema::ShapeType::String,
   97         -
    "description",
          97  +
    "Description",
   98     98   
    4,
   99     99   
)
  100    100   
.with_xml_name("description");
  101    101   
static TRANSITGATEWAY_MEMBER_CREATION_TIME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  102    102   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TransitGateway$CreationTime", "com.amazonaws.ec2", "TransitGateway"),
  103    103   
    ::aws_smithy_schema::ShapeType::Timestamp,
  104         -
    "creation_time",
         104  +
    "CreationTime",
  105    105   
    5,
  106    106   
)
  107    107   
.with_xml_name("creationTime");
  108    108   
static TRANSITGATEWAY_MEMBER_OPTIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  109    109   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TransitGateway$Options", "com.amazonaws.ec2", "TransitGateway"),
  110    110   
    ::aws_smithy_schema::ShapeType::Structure,
  111         -
    "options",
         111  +
    "Options",
  112    112   
    6,
  113    113   
)
  114    114   
.with_xml_name("options");
  115    115   
static TRANSITGATEWAY_MEMBER_TAGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  116    116   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TransitGateway$Tags", "com.amazonaws.ec2", "TransitGateway"),
  117    117   
    ::aws_smithy_schema::ShapeType::List,
  118         -
    "tags",
         118  +
    "Tags",
  119    119   
    7,
  120    120   
)
  121    121   
.with_xml_name("tagSet");
  122    122   
static TRANSITGATEWAY_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  123    123   
    TRANSITGATEWAY_SCHEMA_ID,
  124    124   
    ::aws_smithy_schema::ShapeType::Structure,
  125    125   
    &[
  126    126   
        &TRANSITGATEWAY_MEMBER_TRANSIT_GATEWAY_ID,
  127    127   
        &TRANSITGATEWAY_MEMBER_TRANSIT_GATEWAY_ARN,
  128    128   
        &TRANSITGATEWAY_MEMBER_STATE,
@@ -153,153 +267,275 @@
  173    173   
                    }
  174    174   
                    Ok(())
  175    175   
                },
  176    176   
            )?;
  177    177   
        }
  178    178   
        Ok(())
  179    179   
    }
  180    180   
}
  181    181   
impl TransitGateway {
  182    182   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  183         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  184         -
        deserializer: &mut D,
         183  +
    pub fn deserialize(
         184  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  185    185   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  186    186   
        #[allow(unused_variables, unused_mut)]
  187    187   
        let mut builder = Self::builder();
  188    188   
        #[allow(
  189    189   
            unused_variables,
  190    190   
            unreachable_code,
  191    191   
            clippy::single_match,
  192    192   
            clippy::match_single_binding,
  193    193   
            clippy::diverging_sub_expression
  194    194   
        )]
  195         -
        deserializer.read_struct(&TRANSITGATEWAY_SCHEMA, (), |_, member, deser| {
         195  +
        deserializer.read_struct(&TRANSITGATEWAY_SCHEMA, &mut |member, deser| {
  196    196   
            match member.member_index() {
  197    197   
                Some(0) => {
  198    198   
                    builder.transit_gateway_id = Some(deser.read_string(member)?);
  199    199   
                }
  200    200   
                Some(1) => {
  201    201   
                    builder.transit_gateway_arn = Some(deser.read_string(member)?);
  202    202   
                }
  203    203   
                Some(2) => {
  204    204   
                    builder.state = Some(crate::types::TransitGatewayState::from(deser.read_string(member)?.as_str()));
  205    205   
                }
  206    206   
                Some(3) => {
  207    207   
                    builder.owner_id = Some(deser.read_string(member)?);
  208    208   
                }
  209    209   
                Some(4) => {
  210    210   
                    builder.description = Some(deser.read_string(member)?);
  211    211   
                }
  212    212   
                Some(5) => {
  213    213   
                    builder.creation_time = Some(deser.read_timestamp(member)?);
  214    214   
                }
  215    215   
                Some(6) => {
  216    216   
                    builder.options = Some(crate::types::TransitGatewayOptions::deserialize(deser)?);
  217    217   
                }
  218    218   
                Some(7) => {
  219    219   
                    builder.tags = Some({
  220         -
                        let container = if let Some(cap) = deser.container_size() {
  221         -
                            Vec::with_capacity(cap)
  222         -
                        } else {
  223         -
                            Vec::new()
  224         -
                        };
  225         -
                        deser.read_list(member, container, |mut list, deser| {
  226         -
                            list.push(crate::types::Tag::deserialize(deser)?);
  227         -
                            Ok(list)
  228         -
                        })?
         220  +
                        let mut container = Vec::new();
         221  +
                        deser.read_list(member, &mut |deser| {
         222  +
                            container.push(crate::types::Tag::deserialize(deser)?);
         223  +
                            Ok(())
         224  +
                        })?;
         225  +
                        container
  229    226   
                    });
  230    227   
                }
  231    228   
                _ => {}
  232    229   
            }
  233    230   
            Ok(())
  234    231   
        })?;
  235    232   
        Ok(builder.build())
  236    233   
    }
  237    234   
}
         235  +
impl TransitGateway {
         236  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         237  +
    pub fn deserialize_with_response(
         238  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         239  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         240  +
        _status: u16,
         241  +
        _body: &[u8],
         242  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         243  +
        Self::deserialize(deserializer)
         244  +
    }
         245  +
}
  238    246   
impl TransitGateway {
  239    247   
    /// Creates a new builder-style object to manufacture [`TransitGateway`](crate::types::TransitGateway).
  240    248   
    pub fn builder() -> crate::types::builders::TransitGatewayBuilder {
  241    249   
        crate::types::builders::TransitGatewayBuilder::default()
  242    250   
    }
  243    251   
}
  244    252   
  245    253   
/// A builder for [`TransitGateway`](crate::types::TransitGateway).
  246    254   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  247    255   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_transit_gateway_association.rs

@@ -22,22 +208,219 @@
   42     42   
    "com.amazonaws.ec2",
   43     43   
    "TransitGatewayAssociation",
   44     44   
);
   45     45   
static TRANSITGATEWAYASSOCIATION_MEMBER_TRANSIT_GATEWAY_ROUTE_TABLE_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   46     46   
    ::aws_smithy_schema::ShapeId::from_static(
   47     47   
        "com.amazonaws.ec2#TransitGatewayAssociation$TransitGatewayRouteTableId",
   48     48   
        "com.amazonaws.ec2",
   49     49   
        "TransitGatewayAssociation",
   50     50   
    ),
   51     51   
    ::aws_smithy_schema::ShapeType::String,
   52         -
    "transit_gateway_route_table_id",
          52  +
    "TransitGatewayRouteTableId",
   53     53   
    0,
   54     54   
)
   55     55   
.with_xml_name("transitGatewayRouteTableId");
   56     56   
static TRANSITGATEWAYASSOCIATION_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   57     57   
    ::aws_smithy_schema::ShapeId::from_static(
   58     58   
        "com.amazonaws.ec2#TransitGatewayAssociation$TransitGatewayAttachmentId",
   59     59   
        "com.amazonaws.ec2",
   60     60   
        "TransitGatewayAssociation",
   61     61   
    ),
   62     62   
    ::aws_smithy_schema::ShapeType::String,
   63         -
    "transit_gateway_attachment_id",
          63  +
    "TransitGatewayAttachmentId",
   64     64   
    1,
   65     65   
)
   66     66   
.with_xml_name("transitGatewayAttachmentId");
   67     67   
static TRANSITGATEWAYASSOCIATION_MEMBER_RESOURCE_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   68     68   
    ::aws_smithy_schema::ShapeId::from_static(
   69     69   
        "com.amazonaws.ec2#TransitGatewayAssociation$ResourceId",
   70     70   
        "com.amazonaws.ec2",
   71     71   
        "TransitGatewayAssociation",
   72     72   
    ),
   73     73   
    ::aws_smithy_schema::ShapeType::String,
   74         -
    "resource_id",
          74  +
    "ResourceId",
   75     75   
    2,
   76     76   
)
   77     77   
.with_xml_name("resourceId");
   78     78   
static TRANSITGATEWAYASSOCIATION_MEMBER_RESOURCE_TYPE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   79     79   
    ::aws_smithy_schema::ShapeId::from_static(
   80     80   
        "com.amazonaws.ec2#TransitGatewayAssociation$ResourceType",
   81     81   
        "com.amazonaws.ec2",
   82     82   
        "TransitGatewayAssociation",
   83     83   
    ),
   84     84   
    ::aws_smithy_schema::ShapeType::String,
   85         -
    "resource_type",
          85  +
    "ResourceType",
   86     86   
    3,
   87     87   
)
   88     88   
.with_xml_name("resourceType");
   89     89   
static TRANSITGATEWAYASSOCIATION_MEMBER_STATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   90     90   
    ::aws_smithy_schema::ShapeId::from_static(
   91     91   
        "com.amazonaws.ec2#TransitGatewayAssociation$State",
   92     92   
        "com.amazonaws.ec2",
   93     93   
        "TransitGatewayAssociation",
   94     94   
    ),
   95     95   
    ::aws_smithy_schema::ShapeType::String,
   96         -
    "state",
          96  +
    "State",
   97     97   
    4,
   98     98   
)
   99     99   
.with_xml_name("state");
  100    100   
static TRANSITGATEWAYASSOCIATION_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  101    101   
    TRANSITGATEWAYASSOCIATION_SCHEMA_ID,
  102    102   
    ::aws_smithy_schema::ShapeType::Structure,
  103    103   
    &[
  104    104   
        &TRANSITGATEWAYASSOCIATION_MEMBER_TRANSIT_GATEWAY_ROUTE_TABLE_ID,
  105    105   
        &TRANSITGATEWAYASSOCIATION_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID,
  106    106   
        &TRANSITGATEWAYASSOCIATION_MEMBER_RESOURCE_ID,
  107    107   
        &TRANSITGATEWAYASSOCIATION_MEMBER_RESOURCE_TYPE,
  108    108   
        &TRANSITGATEWAYASSOCIATION_MEMBER_STATE,
  109    109   
    ],
  110    110   
);
  111    111   
impl TransitGatewayAssociation {
  112    112   
    /// The schema for this shape.
  113    113   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &TRANSITGATEWAYASSOCIATION_SCHEMA;
  114    114   
}
  115    115   
impl ::aws_smithy_schema::serde::SerializableStruct for TransitGatewayAssociation {
  116    116   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  117    117   
    fn serialize_members(
  118    118   
        &self,
  119    119   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  120    120   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  121    121   
        if let Some(ref val) = self.transit_gateway_route_table_id {
  122    122   
            ser.write_string(&TRANSITGATEWAYASSOCIATION_MEMBER_TRANSIT_GATEWAY_ROUTE_TABLE_ID, val)?;
  123    123   
        }
  124    124   
        if let Some(ref val) = self.transit_gateway_attachment_id {
  125    125   
            ser.write_string(&TRANSITGATEWAYASSOCIATION_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID, val)?;
  126    126   
        }
  127    127   
        if let Some(ref val) = self.resource_id {
  128    128   
            ser.write_string(&TRANSITGATEWAYASSOCIATION_MEMBER_RESOURCE_ID, val)?;
  129    129   
        }
  130    130   
        if let Some(ref val) = self.resource_type {
  131    131   
            ser.write_string(&TRANSITGATEWAYASSOCIATION_MEMBER_RESOURCE_TYPE, val.as_str())?;
  132    132   
        }
  133    133   
        if let Some(ref val) = self.state {
  134    134   
            ser.write_string(&TRANSITGATEWAYASSOCIATION_MEMBER_STATE, val.as_str())?;
  135    135   
        }
  136    136   
        Ok(())
  137    137   
    }
  138    138   
}
  139    139   
impl TransitGatewayAssociation {
  140    140   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  141         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  142         -
        deserializer: &mut D,
         141  +
    pub fn deserialize(
         142  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  143    143   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  144    144   
        #[allow(unused_variables, unused_mut)]
  145    145   
        let mut builder = Self::builder();
  146    146   
        #[allow(
  147    147   
            unused_variables,
  148    148   
            unreachable_code,
  149    149   
            clippy::single_match,
  150    150   
            clippy::match_single_binding,
  151    151   
            clippy::diverging_sub_expression
  152    152   
        )]
  153         -
        deserializer.read_struct(&TRANSITGATEWAYASSOCIATION_SCHEMA, (), |_, member, deser| {
         153  +
        deserializer.read_struct(&TRANSITGATEWAYASSOCIATION_SCHEMA, &mut |member, deser| {
  154    154   
            match member.member_index() {
  155    155   
                Some(0) => {
  156    156   
                    builder.transit_gateway_route_table_id = Some(deser.read_string(member)?);
  157    157   
                }
  158    158   
                Some(1) => {
  159    159   
                    builder.transit_gateway_attachment_id = Some(deser.read_string(member)?);
  160    160   
                }
  161    161   
                Some(2) => {
  162    162   
                    builder.resource_id = Some(deser.read_string(member)?);
  163    163   
                }
  164    164   
                Some(3) => {
  165    165   
                    builder.resource_type = Some(crate::types::TransitGatewayAttachmentResourceType::from(
  166    166   
                        deser.read_string(member)?.as_str(),
  167    167   
                    ));
  168    168   
                }
  169    169   
                Some(4) => {
  170    170   
                    builder.state = Some(crate::types::TransitGatewayAssociationState::from(deser.read_string(member)?.as_str()));
  171    171   
                }
  172    172   
                _ => {}
  173    173   
            }
  174    174   
            Ok(())
  175    175   
        })?;
  176    176   
        Ok(builder.build())
  177    177   
    }
  178    178   
}
         179  +
impl TransitGatewayAssociation {
         180  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         181  +
    pub fn deserialize_with_response(
         182  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         183  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         184  +
        _status: u16,
         185  +
        _body: &[u8],
         186  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         187  +
        Self::deserialize(deserializer)
         188  +
    }
         189  +
}
  179    190   
impl TransitGatewayAssociation {
  180    191   
    /// Creates a new builder-style object to manufacture [`TransitGatewayAssociation`](crate::types::TransitGatewayAssociation).
  181    192   
    pub fn builder() -> crate::types::builders::TransitGatewayAssociationBuilder {
  182    193   
        crate::types::builders::TransitGatewayAssociationBuilder::default()
  183    194   
    }
  184    195   
}
  185    196   
  186    197   
/// A builder for [`TransitGatewayAssociation`](crate::types::TransitGatewayAssociation).
  187    198   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  188    199   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_transit_gateway_attachment.rs

@@ -54,54 +213,213 @@
   74     74   
    "com.amazonaws.ec2",
   75     75   
    "TransitGatewayAttachment",
   76     76   
);
   77     77   
static TRANSITGATEWAYATTACHMENT_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   78     78   
    ::aws_smithy_schema::ShapeId::from_static(
   79     79   
        "com.amazonaws.ec2#TransitGatewayAttachment$TransitGatewayAttachmentId",
   80     80   
        "com.amazonaws.ec2",
   81     81   
        "TransitGatewayAttachment",
   82     82   
    ),
   83     83   
    ::aws_smithy_schema::ShapeType::String,
   84         -
    "transit_gateway_attachment_id",
          84  +
    "TransitGatewayAttachmentId",
   85     85   
    0,
   86     86   
)
   87     87   
.with_xml_name("transitGatewayAttachmentId");
   88     88   
static TRANSITGATEWAYATTACHMENT_MEMBER_TRANSIT_GATEWAY_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   89     89   
    ::aws_smithy_schema::ShapeId::from_static(
   90     90   
        "com.amazonaws.ec2#TransitGatewayAttachment$TransitGatewayId",
   91     91   
        "com.amazonaws.ec2",
   92     92   
        "TransitGatewayAttachment",
   93     93   
    ),
   94     94   
    ::aws_smithy_schema::ShapeType::String,
   95         -
    "transit_gateway_id",
          95  +
    "TransitGatewayId",
   96     96   
    1,
   97     97   
)
   98     98   
.with_xml_name("transitGatewayId");
   99     99   
static TRANSITGATEWAYATTACHMENT_MEMBER_TRANSIT_GATEWAY_OWNER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  100    100   
    ::aws_smithy_schema::ShapeId::from_static(
  101    101   
        "com.amazonaws.ec2#TransitGatewayAttachment$TransitGatewayOwnerId",
  102    102   
        "com.amazonaws.ec2",
  103    103   
        "TransitGatewayAttachment",
  104    104   
    ),
  105    105   
    ::aws_smithy_schema::ShapeType::String,
  106         -
    "transit_gateway_owner_id",
         106  +
    "TransitGatewayOwnerId",
  107    107   
    2,
  108    108   
)
  109    109   
.with_xml_name("transitGatewayOwnerId");
  110    110   
static TRANSITGATEWAYATTACHMENT_MEMBER_RESOURCE_OWNER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  111    111   
    ::aws_smithy_schema::ShapeId::from_static(
  112    112   
        "com.amazonaws.ec2#TransitGatewayAttachment$ResourceOwnerId",
  113    113   
        "com.amazonaws.ec2",
  114    114   
        "TransitGatewayAttachment",
  115    115   
    ),
  116    116   
    ::aws_smithy_schema::ShapeType::String,
  117         -
    "resource_owner_id",
         117  +
    "ResourceOwnerId",
  118    118   
    3,
  119    119   
)
  120    120   
.with_xml_name("resourceOwnerId");
  121    121   
static TRANSITGATEWAYATTACHMENT_MEMBER_RESOURCE_TYPE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  122    122   
    ::aws_smithy_schema::ShapeId::from_static(
  123    123   
        "com.amazonaws.ec2#TransitGatewayAttachment$ResourceType",
  124    124   
        "com.amazonaws.ec2",
  125    125   
        "TransitGatewayAttachment",
  126    126   
    ),
  127    127   
    ::aws_smithy_schema::ShapeType::String,
  128         -
    "resource_type",
         128  +
    "ResourceType",
  129    129   
    4,
  130    130   
)
  131    131   
.with_xml_name("resourceType");
  132    132   
static TRANSITGATEWAYATTACHMENT_MEMBER_RESOURCE_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  133    133   
    ::aws_smithy_schema::ShapeId::from_static(
  134    134   
        "com.amazonaws.ec2#TransitGatewayAttachment$ResourceId",
  135    135   
        "com.amazonaws.ec2",
  136    136   
        "TransitGatewayAttachment",
  137    137   
    ),
  138    138   
    ::aws_smithy_schema::ShapeType::String,
  139         -
    "resource_id",
         139  +
    "ResourceId",
  140    140   
    5,
  141    141   
)
  142    142   
.with_xml_name("resourceId");
  143    143   
static TRANSITGATEWAYATTACHMENT_MEMBER_STATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  144    144   
    ::aws_smithy_schema::ShapeId::from_static(
  145    145   
        "com.amazonaws.ec2#TransitGatewayAttachment$State",
  146    146   
        "com.amazonaws.ec2",
  147    147   
        "TransitGatewayAttachment",
  148    148   
    ),
  149    149   
    ::aws_smithy_schema::ShapeType::String,
  150         -
    "state",
         150  +
    "State",
  151    151   
    6,
  152    152   
)
  153    153   
.with_xml_name("state");
  154    154   
static TRANSITGATEWAYATTACHMENT_MEMBER_ASSOCIATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  155    155   
    ::aws_smithy_schema::ShapeId::from_static(
  156    156   
        "com.amazonaws.ec2#TransitGatewayAttachment$Association",
  157    157   
        "com.amazonaws.ec2",
  158    158   
        "TransitGatewayAttachment",
  159    159   
    ),
  160    160   
    ::aws_smithy_schema::ShapeType::Structure,
  161         -
    "association",
         161  +
    "Association",
  162    162   
    7,
  163    163   
)
  164    164   
.with_xml_name("association");
  165    165   
static TRANSITGATEWAYATTACHMENT_MEMBER_CREATION_TIME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  166    166   
    ::aws_smithy_schema::ShapeId::from_static(
  167    167   
        "com.amazonaws.ec2#TransitGatewayAttachment$CreationTime",
  168    168   
        "com.amazonaws.ec2",
  169    169   
        "TransitGatewayAttachment",
  170    170   
    ),
  171    171   
    ::aws_smithy_schema::ShapeType::Timestamp,
  172         -
    "creation_time",
         172  +
    "CreationTime",
  173    173   
    8,
  174    174   
)
  175    175   
.with_xml_name("creationTime");
  176    176   
static TRANSITGATEWAYATTACHMENT_MEMBER_TAGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  177    177   
    ::aws_smithy_schema::ShapeId::from_static(
  178    178   
        "com.amazonaws.ec2#TransitGatewayAttachment$Tags",
  179    179   
        "com.amazonaws.ec2",
  180    180   
        "TransitGatewayAttachment",
  181    181   
    ),
  182    182   
    ::aws_smithy_schema::ShapeType::List,
  183         -
    "tags",
         183  +
    "Tags",
  184    184   
    9,
  185    185   
)
  186    186   
.with_xml_name("tagSet");
  187    187   
static TRANSITGATEWAYATTACHMENT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  188    188   
    TRANSITGATEWAYATTACHMENT_SCHEMA_ID,
  189    189   
    ::aws_smithy_schema::ShapeType::Structure,
  190    190   
    &[
  191    191   
        &TRANSITGATEWAYATTACHMENT_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID,
  192    192   
        &TRANSITGATEWAYATTACHMENT_MEMBER_TRANSIT_GATEWAY_ID,
  193    193   
        &TRANSITGATEWAYATTACHMENT_MEMBER_TRANSIT_GATEWAY_OWNER_ID,
@@ -226,226 +348,356 @@
  246    246   
                    }
  247    247   
                    Ok(())
  248    248   
                },
  249    249   
            )?;
  250    250   
        }
  251    251   
        Ok(())
  252    252   
    }
  253    253   
}
  254    254   
impl TransitGatewayAttachment {
  255    255   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  256         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  257         -
        deserializer: &mut D,
         256  +
    pub fn deserialize(
         257  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  258    258   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  259    259   
        #[allow(unused_variables, unused_mut)]
  260    260   
        let mut builder = Self::builder();
  261    261   
        #[allow(
  262    262   
            unused_variables,
  263    263   
            unreachable_code,
  264    264   
            clippy::single_match,
  265    265   
            clippy::match_single_binding,
  266    266   
            clippy::diverging_sub_expression
  267    267   
        )]
  268         -
        deserializer.read_struct(&TRANSITGATEWAYATTACHMENT_SCHEMA, (), |_, member, deser| {
         268  +
        deserializer.read_struct(&TRANSITGATEWAYATTACHMENT_SCHEMA, &mut |member, deser| {
  269    269   
            match member.member_index() {
  270    270   
                Some(0) => {
  271    271   
                    builder.transit_gateway_attachment_id = Some(deser.read_string(member)?);
  272    272   
                }
  273    273   
                Some(1) => {
  274    274   
                    builder.transit_gateway_id = Some(deser.read_string(member)?);
  275    275   
                }
  276    276   
                Some(2) => {
  277    277   
                    builder.transit_gateway_owner_id = Some(deser.read_string(member)?);
  278    278   
                }
  279    279   
                Some(3) => {
  280    280   
                    builder.resource_owner_id = Some(deser.read_string(member)?);
  281    281   
                }
  282    282   
                Some(4) => {
  283    283   
                    builder.resource_type = Some(crate::types::TransitGatewayAttachmentResourceType::from(
  284    284   
                        deser.read_string(member)?.as_str(),
  285    285   
                    ));
  286    286   
                }
  287    287   
                Some(5) => {
  288    288   
                    builder.resource_id = Some(deser.read_string(member)?);
  289    289   
                }
  290    290   
                Some(6) => {
  291    291   
                    builder.state = Some(crate::types::TransitGatewayAttachmentState::from(deser.read_string(member)?.as_str()));
  292    292   
                }
  293    293   
                Some(7) => {
  294    294   
                    builder.association = Some(crate::types::TransitGatewayAttachmentAssociation::deserialize(deser)?);
  295    295   
                }
  296    296   
                Some(8) => {
  297    297   
                    builder.creation_time = Some(deser.read_timestamp(member)?);
  298    298   
                }
  299    299   
                Some(9) => {
  300    300   
                    builder.tags = Some({
  301         -
                        let container = if let Some(cap) = deser.container_size() {
  302         -
                            Vec::with_capacity(cap)
  303         -
                        } else {
  304         -
                            Vec::new()
  305         -
                        };
  306         -
                        deser.read_list(member, container, |mut list, deser| {
  307         -
                            list.push(crate::types::Tag::deserialize(deser)?);
  308         -
                            Ok(list)
  309         -
                        })?
         301  +
                        let mut container = Vec::new();
         302  +
                        deser.read_list(member, &mut |deser| {
         303  +
                            container.push(crate::types::Tag::deserialize(deser)?);
         304  +
                            Ok(())
         305  +
                        })?;
         306  +
                        container
  310    307   
                    });
  311    308   
                }
  312    309   
                _ => {}
  313    310   
            }
  314    311   
            Ok(())
  315    312   
        })?;
  316    313   
        Ok(builder.build())
  317    314   
    }
  318    315   
}
         316  +
impl TransitGatewayAttachment {
         317  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         318  +
    pub fn deserialize_with_response(
         319  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         320  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         321  +
        _status: u16,
         322  +
        _body: &[u8],
         323  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         324  +
        Self::deserialize(deserializer)
         325  +
    }
         326  +
}
  319    327   
impl TransitGatewayAttachment {
  320    328   
    /// Creates a new builder-style object to manufacture [`TransitGatewayAttachment`](crate::types::TransitGatewayAttachment).
  321    329   
    pub fn builder() -> crate::types::builders::TransitGatewayAttachmentBuilder {
  322    330   
        crate::types::builders::TransitGatewayAttachmentBuilder::default()
  323    331   
    }
  324    332   
}
  325    333   
  326    334   
/// A builder for [`TransitGatewayAttachment`](crate::types::TransitGatewayAttachment).
  327    335   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  328    336   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_transit_gateway_attachment_association.rs

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

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_transit_gateway_attachment_bgp_configuration.rs

@@ -22,22 +207,218 @@
   42     42   
    "com.amazonaws.ec2",
   43     43   
    "TransitGatewayAttachmentBgpConfiguration",
   44     44   
);
   45     45   
static TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_TRANSIT_GATEWAY_ASN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   46     46   
    ::aws_smithy_schema::ShapeId::from_static(
   47     47   
        "com.amazonaws.ec2#TransitGatewayAttachmentBgpConfiguration$TransitGatewayAsn",
   48     48   
        "com.amazonaws.ec2",
   49     49   
        "TransitGatewayAttachmentBgpConfiguration",
   50     50   
    ),
   51     51   
    ::aws_smithy_schema::ShapeType::Long,
   52         -
    "transit_gateway_asn",
          52  +
    "TransitGatewayAsn",
   53     53   
    0,
   54     54   
)
   55     55   
.with_xml_name("transitGatewayAsn");
   56     56   
static TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_PEER_ASN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   57     57   
    ::aws_smithy_schema::ShapeId::from_static(
   58     58   
        "com.amazonaws.ec2#TransitGatewayAttachmentBgpConfiguration$PeerAsn",
   59     59   
        "com.amazonaws.ec2",
   60     60   
        "TransitGatewayAttachmentBgpConfiguration",
   61     61   
    ),
   62     62   
    ::aws_smithy_schema::ShapeType::Long,
   63         -
    "peer_asn",
          63  +
    "PeerAsn",
   64     64   
    1,
   65     65   
)
   66     66   
.with_xml_name("peerAsn");
   67     67   
static TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_TRANSIT_GATEWAY_ADDRESS: ::aws_smithy_schema::Schema =
   68     68   
    ::aws_smithy_schema::Schema::new_member(
   69     69   
        ::aws_smithy_schema::ShapeId::from_static(
   70     70   
            "com.amazonaws.ec2#TransitGatewayAttachmentBgpConfiguration$TransitGatewayAddress",
   71     71   
            "com.amazonaws.ec2",
   72     72   
            "TransitGatewayAttachmentBgpConfiguration",
   73     73   
        ),
   74     74   
        ::aws_smithy_schema::ShapeType::String,
   75         -
        "transit_gateway_address",
          75  +
        "TransitGatewayAddress",
   76     76   
        2,
   77     77   
    )
   78     78   
    .with_xml_name("transitGatewayAddress");
   79     79   
static TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_PEER_ADDRESS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   80     80   
    ::aws_smithy_schema::ShapeId::from_static(
   81     81   
        "com.amazonaws.ec2#TransitGatewayAttachmentBgpConfiguration$PeerAddress",
   82     82   
        "com.amazonaws.ec2",
   83     83   
        "TransitGatewayAttachmentBgpConfiguration",
   84     84   
    ),
   85     85   
    ::aws_smithy_schema::ShapeType::String,
   86         -
    "peer_address",
          86  +
    "PeerAddress",
   87     87   
    3,
   88     88   
)
   89     89   
.with_xml_name("peerAddress");
   90     90   
static TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_BGP_STATUS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   91     91   
    ::aws_smithy_schema::ShapeId::from_static(
   92     92   
        "com.amazonaws.ec2#TransitGatewayAttachmentBgpConfiguration$BgpStatus",
   93     93   
        "com.amazonaws.ec2",
   94     94   
        "TransitGatewayAttachmentBgpConfiguration",
   95     95   
    ),
   96     96   
    ::aws_smithy_schema::ShapeType::String,
   97         -
    "bgp_status",
          97  +
    "BgpStatus",
   98     98   
    4,
   99     99   
)
  100    100   
.with_xml_name("bgpStatus");
  101    101   
static TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  102    102   
    TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_SCHEMA_ID,
  103    103   
    ::aws_smithy_schema::ShapeType::Structure,
  104    104   
    &[
  105    105   
        &TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_TRANSIT_GATEWAY_ASN,
  106    106   
        &TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_PEER_ASN,
  107    107   
        &TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_TRANSIT_GATEWAY_ADDRESS,
  108    108   
        &TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_PEER_ADDRESS,
  109    109   
        &TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_BGP_STATUS,
  110    110   
    ],
  111    111   
);
  112    112   
impl TransitGatewayAttachmentBgpConfiguration {
  113    113   
    /// The schema for this shape.
  114    114   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_SCHEMA;
  115    115   
}
  116    116   
impl ::aws_smithy_schema::serde::SerializableStruct for TransitGatewayAttachmentBgpConfiguration {
  117    117   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  118    118   
    fn serialize_members(
  119    119   
        &self,
  120    120   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  121    121   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  122    122   
        if let Some(ref val) = self.transit_gateway_asn {
  123    123   
            ser.write_long(&TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_TRANSIT_GATEWAY_ASN, *val)?;
  124    124   
        }
  125    125   
        if let Some(ref val) = self.peer_asn {
  126    126   
            ser.write_long(&TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_PEER_ASN, *val)?;
  127    127   
        }
  128    128   
        if let Some(ref val) = self.transit_gateway_address {
  129    129   
            ser.write_string(&TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_TRANSIT_GATEWAY_ADDRESS, val)?;
  130    130   
        }
  131    131   
        if let Some(ref val) = self.peer_address {
  132    132   
            ser.write_string(&TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_PEER_ADDRESS, val)?;
  133    133   
        }
  134    134   
        if let Some(ref val) = self.bgp_status {
  135    135   
            ser.write_string(&TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_MEMBER_BGP_STATUS, val.as_str())?;
  136    136   
        }
  137    137   
        Ok(())
  138    138   
    }
  139    139   
}
  140    140   
impl TransitGatewayAttachmentBgpConfiguration {
  141    141   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  142         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  143         -
        deserializer: &mut D,
         142  +
    pub fn deserialize(
         143  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  144    144   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  145    145   
        #[allow(unused_variables, unused_mut)]
  146    146   
        let mut builder = Self::builder();
  147    147   
        #[allow(
  148    148   
            unused_variables,
  149    149   
            unreachable_code,
  150    150   
            clippy::single_match,
  151    151   
            clippy::match_single_binding,
  152    152   
            clippy::diverging_sub_expression
  153    153   
        )]
  154         -
        deserializer.read_struct(&TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_SCHEMA, (), |_, member, deser| {
         154  +
        deserializer.read_struct(&TRANSITGATEWAYATTACHMENTBGPCONFIGURATION_SCHEMA, &mut |member, deser| {
  155    155   
            match member.member_index() {
  156    156   
                Some(0) => {
  157    157   
                    builder.transit_gateway_asn = Some(deser.read_long(member)?);
  158    158   
                }
  159    159   
                Some(1) => {
  160    160   
                    builder.peer_asn = Some(deser.read_long(member)?);
  161    161   
                }
  162    162   
                Some(2) => {
  163    163   
                    builder.transit_gateway_address = Some(deser.read_string(member)?);
  164    164   
                }
  165    165   
                Some(3) => {
  166    166   
                    builder.peer_address = Some(deser.read_string(member)?);
  167    167   
                }
  168    168   
                Some(4) => {
  169    169   
                    builder.bgp_status = Some(crate::types::BgpStatus::from(deser.read_string(member)?.as_str()));
  170    170   
                }
  171    171   
                _ => {}
  172    172   
            }
  173    173   
            Ok(())
  174    174   
        })?;
  175    175   
        Ok(builder.build())
  176    176   
    }
  177    177   
}
         178  +
impl TransitGatewayAttachmentBgpConfiguration {
         179  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         180  +
    pub fn deserialize_with_response(
         181  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         182  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         183  +
        _status: u16,
         184  +
        _body: &[u8],
         185  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         186  +
        Self::deserialize(deserializer)
         187  +
    }
         188  +
}
  178    189   
impl TransitGatewayAttachmentBgpConfiguration {
  179    190   
    /// Creates a new builder-style object to manufacture [`TransitGatewayAttachmentBgpConfiguration`](crate::types::TransitGatewayAttachmentBgpConfiguration).
  180    191   
    pub fn builder() -> crate::types::builders::TransitGatewayAttachmentBgpConfigurationBuilder {
  181    192   
        crate::types::builders::TransitGatewayAttachmentBgpConfigurationBuilder::default()
  182    193   
    }
  183    194   
}
  184    195   
  185    196   
/// A builder for [`TransitGatewayAttachmentBgpConfiguration`](crate::types::TransitGatewayAttachmentBgpConfiguration).
  186    197   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  187    198   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_transit_gateway_attachment_propagation.rs

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

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_transit_gateway_connect.rs

@@ -33,33 +271,279 @@
   53     53   
}
   54     54   
static TRANSITGATEWAYCONNECT_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   55     55   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.ec2#TransitGatewayConnect", "com.amazonaws.ec2", "TransitGatewayConnect");
   56     56   
static TRANSITGATEWAYCONNECT_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   57     57   
    ::aws_smithy_schema::ShapeId::from_static(
   58     58   
        "com.amazonaws.ec2#TransitGatewayConnect$TransitGatewayAttachmentId",
   59     59   
        "com.amazonaws.ec2",
   60     60   
        "TransitGatewayConnect",
   61     61   
    ),
   62     62   
    ::aws_smithy_schema::ShapeType::String,
   63         -
    "transit_gateway_attachment_id",
          63  +
    "TransitGatewayAttachmentId",
   64     64   
    0,
   65     65   
)
   66     66   
.with_xml_name("transitGatewayAttachmentId");
   67     67   
static TRANSITGATEWAYCONNECT_MEMBER_TRANSPORT_TRANSIT_GATEWAY_ATTACHMENT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   68     68   
    ::aws_smithy_schema::ShapeId::from_static(
   69     69   
        "com.amazonaws.ec2#TransitGatewayConnect$TransportTransitGatewayAttachmentId",
   70     70   
        "com.amazonaws.ec2",
   71     71   
        "TransitGatewayConnect",
   72     72   
    ),
   73     73   
    ::aws_smithy_schema::ShapeType::String,
   74         -
    "transport_transit_gateway_attachment_id",
          74  +
    "TransportTransitGatewayAttachmentId",
   75     75   
    1,
   76     76   
)
   77     77   
.with_xml_name("transportTransitGatewayAttachmentId");
   78     78   
static TRANSITGATEWAYCONNECT_MEMBER_TRANSIT_GATEWAY_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   79     79   
    ::aws_smithy_schema::ShapeId::from_static(
   80     80   
        "com.amazonaws.ec2#TransitGatewayConnect$TransitGatewayId",
   81     81   
        "com.amazonaws.ec2",
   82     82   
        "TransitGatewayConnect",
   83     83   
    ),
   84     84   
    ::aws_smithy_schema::ShapeType::String,
   85         -
    "transit_gateway_id",
          85  +
    "TransitGatewayId",
   86     86   
    2,
   87     87   
)
   88     88   
.with_xml_name("transitGatewayId");
   89     89   
static TRANSITGATEWAYCONNECT_MEMBER_STATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   90     90   
    ::aws_smithy_schema::ShapeId::from_static(
   91     91   
        "com.amazonaws.ec2#TransitGatewayConnect$State",
   92     92   
        "com.amazonaws.ec2",
   93     93   
        "TransitGatewayConnect",
   94     94   
    ),
   95     95   
    ::aws_smithy_schema::ShapeType::String,
   96         -
    "state",
          96  +
    "State",
   97     97   
    3,
   98     98   
)
   99     99   
.with_xml_name("state");
  100    100   
static TRANSITGATEWAYCONNECT_MEMBER_CREATION_TIME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  101    101   
    ::aws_smithy_schema::ShapeId::from_static(
  102    102   
        "com.amazonaws.ec2#TransitGatewayConnect$CreationTime",
  103    103   
        "com.amazonaws.ec2",
  104    104   
        "TransitGatewayConnect",
  105    105   
    ),
  106    106   
    ::aws_smithy_schema::ShapeType::Timestamp,
  107         -
    "creation_time",
         107  +
    "CreationTime",
  108    108   
    4,
  109    109   
)
  110    110   
.with_xml_name("creationTime");
  111    111   
static TRANSITGATEWAYCONNECT_MEMBER_OPTIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  112    112   
    ::aws_smithy_schema::ShapeId::from_static(
  113    113   
        "com.amazonaws.ec2#TransitGatewayConnect$Options",
  114    114   
        "com.amazonaws.ec2",
  115    115   
        "TransitGatewayConnect",
  116    116   
    ),
  117    117   
    ::aws_smithy_schema::ShapeType::Structure,
  118         -
    "options",
         118  +
    "Options",
  119    119   
    5,
  120    120   
)
  121    121   
.with_xml_name("options");
  122    122   
static TRANSITGATEWAYCONNECT_MEMBER_TAGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  123    123   
    ::aws_smithy_schema::ShapeId::from_static(
  124    124   
        "com.amazonaws.ec2#TransitGatewayConnect$Tags",
  125    125   
        "com.amazonaws.ec2",
  126    126   
        "TransitGatewayConnect",
  127    127   
    ),
  128    128   
    ::aws_smithy_schema::ShapeType::List,
  129         -
    "tags",
         129  +
    "Tags",
  130    130   
    6,
  131    131   
)
  132    132   
.with_xml_name("tagSet");
  133    133   
static TRANSITGATEWAYCONNECT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  134    134   
    TRANSITGATEWAYCONNECT_SCHEMA_ID,
  135    135   
    ::aws_smithy_schema::ShapeType::Structure,
  136    136   
    &[
  137    137   
        &TRANSITGATEWAYCONNECT_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID,
  138    138   
        &TRANSITGATEWAYCONNECT_MEMBER_TRANSPORT_TRANSIT_GATEWAY_ATTACHMENT_ID,
  139    139   
        &TRANSITGATEWAYCONNECT_MEMBER_TRANSIT_GATEWAY_ID,
  140    140   
        &TRANSITGATEWAYCONNECT_MEMBER_STATE,
  141    141   
        &TRANSITGATEWAYCONNECT_MEMBER_CREATION_TIME,
  142    142   
        &TRANSITGATEWAYCONNECT_MEMBER_OPTIONS,
  143    143   
        &TRANSITGATEWAYCONNECT_MEMBER_TAGS,
  144    144   
    ],
  145    145   
);
  146    146   
impl TransitGatewayConnect {
  147    147   
    /// The schema for this shape.
  148    148   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &TRANSITGATEWAYCONNECT_SCHEMA;
  149    149   
}
  150    150   
impl ::aws_smithy_schema::serde::SerializableStruct for TransitGatewayConnect {
  151    151   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  152    152   
    fn serialize_members(
  153    153   
        &self,
  154    154   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  155    155   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  156    156   
        if let Some(ref val) = self.transit_gateway_attachment_id {
  157    157   
            ser.write_string(&TRANSITGATEWAYCONNECT_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID, val)?;
  158    158   
        }
  159    159   
        if let Some(ref val) = self.transport_transit_gateway_attachment_id {
  160    160   
            ser.write_string(&TRANSITGATEWAYCONNECT_MEMBER_TRANSPORT_TRANSIT_GATEWAY_ATTACHMENT_ID, val)?;
  161    161   
        }
  162    162   
        if let Some(ref val) = self.transit_gateway_id {
  163    163   
            ser.write_string(&TRANSITGATEWAYCONNECT_MEMBER_TRANSIT_GATEWAY_ID, val)?;
  164    164   
        }
  165    165   
        if let Some(ref val) = self.state {
  166    166   
            ser.write_string(&TRANSITGATEWAYCONNECT_MEMBER_STATE, val.as_str())?;
  167    167   
        }
  168    168   
        if let Some(ref val) = self.creation_time {
  169    169   
            ser.write_timestamp(&TRANSITGATEWAYCONNECT_MEMBER_CREATION_TIME, val)?;
  170    170   
        }
  171    171   
        if let Some(ref val) = self.options {
  172    172   
            ser.write_struct(&TRANSITGATEWAYCONNECT_MEMBER_OPTIONS, val)?;
  173    173   
        }
  174    174   
        if let Some(ref val) = self.tags {
  175    175   
            ser.write_list(
  176    176   
                &TRANSITGATEWAYCONNECT_MEMBER_TAGS,
  177    177   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  178    178   
                    for item in val {
  179    179   
                        ser.write_struct(crate::types::Tag::SCHEMA, item)?;
  180    180   
                    }
  181    181   
                    Ok(())
  182    182   
                },
  183    183   
            )?;
  184    184   
        }
  185    185   
        Ok(())
  186    186   
    }
  187    187   
}
  188    188   
impl TransitGatewayConnect {
  189    189   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  190         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  191         -
        deserializer: &mut D,
         190  +
    pub fn deserialize(
         191  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  192    192   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  193    193   
        #[allow(unused_variables, unused_mut)]
  194    194   
        let mut builder = Self::builder();
  195    195   
        #[allow(
  196    196   
            unused_variables,
  197    197   
            unreachable_code,
  198    198   
            clippy::single_match,
  199    199   
            clippy::match_single_binding,
  200    200   
            clippy::diverging_sub_expression
  201    201   
        )]
  202         -
        deserializer.read_struct(&TRANSITGATEWAYCONNECT_SCHEMA, (), |_, member, deser| {
         202  +
        deserializer.read_struct(&TRANSITGATEWAYCONNECT_SCHEMA, &mut |member, deser| {
  203    203   
            match member.member_index() {
  204    204   
                Some(0) => {
  205    205   
                    builder.transit_gateway_attachment_id = Some(deser.read_string(member)?);
  206    206   
                }
  207    207   
                Some(1) => {
  208    208   
                    builder.transport_transit_gateway_attachment_id = Some(deser.read_string(member)?);
  209    209   
                }
  210    210   
                Some(2) => {
  211    211   
                    builder.transit_gateway_id = Some(deser.read_string(member)?);
  212    212   
                }
  213    213   
                Some(3) => {
  214    214   
                    builder.state = Some(crate::types::TransitGatewayAttachmentState::from(deser.read_string(member)?.as_str()));
  215    215   
                }
  216    216   
                Some(4) => {
  217    217   
                    builder.creation_time = Some(deser.read_timestamp(member)?);
  218    218   
                }
  219    219   
                Some(5) => {
  220    220   
                    builder.options = Some(crate::types::TransitGatewayConnectOptions::deserialize(deser)?);
  221    221   
                }
  222    222   
                Some(6) => {
  223    223   
                    builder.tags = Some({
  224         -
                        let container = if let Some(cap) = deser.container_size() {
  225         -
                            Vec::with_capacity(cap)
  226         -
                        } else {
  227         -
                            Vec::new()
  228         -
                        };
  229         -
                        deser.read_list(member, container, |mut list, deser| {
  230         -
                            list.push(crate::types::Tag::deserialize(deser)?);
  231         -
                            Ok(list)
  232         -
                        })?
         224  +
                        let mut container = Vec::new();
         225  +
                        deser.read_list(member, &mut |deser| {
         226  +
                            container.push(crate::types::Tag::deserialize(deser)?);
         227  +
                            Ok(())
         228  +
                        })?;
         229  +
                        container
  233    230   
                    });
  234    231   
                }
  235    232   
                _ => {}
  236    233   
            }
  237    234   
            Ok(())
  238    235   
        })?;
  239    236   
        Ok(builder.build())
  240    237   
    }
  241    238   
}
         239  +
impl TransitGatewayConnect {
         240  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         241  +
    pub fn deserialize_with_response(
         242  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         243  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         244  +
        _status: u16,
         245  +
        _body: &[u8],
         246  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         247  +
        Self::deserialize(deserializer)
         248  +
    }
         249  +
}
  242    250   
impl TransitGatewayConnect {
  243    251   
    /// Creates a new builder-style object to manufacture [`TransitGatewayConnect`](crate::types::TransitGatewayConnect).
  244    252   
    pub fn builder() -> crate::types::builders::TransitGatewayConnectBuilder {
  245    253   
        crate::types::builders::TransitGatewayConnectBuilder::default()
  246    254   
    }
  247    255   
}
  248    256   
  249    257   
/// A builder for [`TransitGatewayConnect`](crate::types::TransitGatewayConnect).
  250    258   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  251    259   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_transit_gateway_connect_options.rs

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

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_transit_gateway_connect_peer.rs

@@ -30,30 +250,258 @@
   50     50   
    "com.amazonaws.ec2",
   51     51   
    "TransitGatewayConnectPeer",
   52     52   
);
   53     53   
static TRANSITGATEWAYCONNECTPEER_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   54     54   
    ::aws_smithy_schema::ShapeId::from_static(
   55     55   
        "com.amazonaws.ec2#TransitGatewayConnectPeer$TransitGatewayAttachmentId",
   56     56   
        "com.amazonaws.ec2",
   57     57   
        "TransitGatewayConnectPeer",
   58     58   
    ),
   59     59   
    ::aws_smithy_schema::ShapeType::String,
   60         -
    "transit_gateway_attachment_id",
          60  +
    "TransitGatewayAttachmentId",
   61     61   
    0,
   62     62   
)
   63     63   
.with_xml_name("transitGatewayAttachmentId");
   64     64   
static TRANSITGATEWAYCONNECTPEER_MEMBER_TRANSIT_GATEWAY_CONNECT_PEER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   65     65   
    ::aws_smithy_schema::ShapeId::from_static(
   66     66   
        "com.amazonaws.ec2#TransitGatewayConnectPeer$TransitGatewayConnectPeerId",
   67     67   
        "com.amazonaws.ec2",
   68     68   
        "TransitGatewayConnectPeer",
   69     69   
    ),
   70     70   
    ::aws_smithy_schema::ShapeType::String,
   71         -
    "transit_gateway_connect_peer_id",
          71  +
    "TransitGatewayConnectPeerId",
   72     72   
    1,
   73     73   
)
   74     74   
.with_xml_name("transitGatewayConnectPeerId");
   75     75   
static TRANSITGATEWAYCONNECTPEER_MEMBER_STATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   76     76   
    ::aws_smithy_schema::ShapeId::from_static(
   77     77   
        "com.amazonaws.ec2#TransitGatewayConnectPeer$State",
   78     78   
        "com.amazonaws.ec2",
   79     79   
        "TransitGatewayConnectPeer",
   80     80   
    ),
   81     81   
    ::aws_smithy_schema::ShapeType::String,
   82         -
    "state",
          82  +
    "State",
   83     83   
    2,
   84     84   
)
   85     85   
.with_xml_name("state");
   86     86   
static TRANSITGATEWAYCONNECTPEER_MEMBER_CREATION_TIME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   87     87   
    ::aws_smithy_schema::ShapeId::from_static(
   88     88   
        "com.amazonaws.ec2#TransitGatewayConnectPeer$CreationTime",
   89     89   
        "com.amazonaws.ec2",
   90     90   
        "TransitGatewayConnectPeer",
   91     91   
    ),
   92     92   
    ::aws_smithy_schema::ShapeType::Timestamp,
   93         -
    "creation_time",
          93  +
    "CreationTime",
   94     94   
    3,
   95     95   
)
   96     96   
.with_xml_name("creationTime");
   97     97   
static TRANSITGATEWAYCONNECTPEER_MEMBER_CONNECT_PEER_CONFIGURATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   98     98   
    ::aws_smithy_schema::ShapeId::from_static(
   99     99   
        "com.amazonaws.ec2#TransitGatewayConnectPeer$ConnectPeerConfiguration",
  100    100   
        "com.amazonaws.ec2",
  101    101   
        "TransitGatewayConnectPeer",
  102    102   
    ),
  103    103   
    ::aws_smithy_schema::ShapeType::Structure,
  104         -
    "connect_peer_configuration",
         104  +
    "ConnectPeerConfiguration",
  105    105   
    4,
  106    106   
)
  107    107   
.with_xml_name("connectPeerConfiguration");
  108    108   
static TRANSITGATEWAYCONNECTPEER_MEMBER_TAGS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  109    109   
    ::aws_smithy_schema::ShapeId::from_static(
  110    110   
        "com.amazonaws.ec2#TransitGatewayConnectPeer$Tags",
  111    111   
        "com.amazonaws.ec2",
  112    112   
        "TransitGatewayConnectPeer",
  113    113   
    ),
  114    114   
    ::aws_smithy_schema::ShapeType::List,
  115         -
    "tags",
         115  +
    "Tags",
  116    116   
    5,
  117    117   
)
  118    118   
.with_xml_name("tagSet");
  119    119   
static TRANSITGATEWAYCONNECTPEER_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  120    120   
    TRANSITGATEWAYCONNECTPEER_SCHEMA_ID,
  121    121   
    ::aws_smithy_schema::ShapeType::Structure,
  122    122   
    &[
  123    123   
        &TRANSITGATEWAYCONNECTPEER_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID,
  124    124   
        &TRANSITGATEWAYCONNECTPEER_MEMBER_TRANSIT_GATEWAY_CONNECT_PEER_ID,
  125    125   
        &TRANSITGATEWAYCONNECTPEER_MEMBER_STATE,
  126    126   
        &TRANSITGATEWAYCONNECTPEER_MEMBER_CREATION_TIME,
  127    127   
        &TRANSITGATEWAYCONNECTPEER_MEMBER_CONNECT_PEER_CONFIGURATION,
  128    128   
        &TRANSITGATEWAYCONNECTPEER_MEMBER_TAGS,
  129    129   
    ],
  130    130   
);
  131    131   
impl TransitGatewayConnectPeer {
  132    132   
    /// The schema for this shape.
  133    133   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &TRANSITGATEWAYCONNECTPEER_SCHEMA;
  134    134   
}
  135    135   
impl ::aws_smithy_schema::serde::SerializableStruct for TransitGatewayConnectPeer {
  136    136   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  137    137   
    fn serialize_members(
  138    138   
        &self,
  139    139   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  140    140   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  141    141   
        if let Some(ref val) = self.transit_gateway_attachment_id {
  142    142   
            ser.write_string(&TRANSITGATEWAYCONNECTPEER_MEMBER_TRANSIT_GATEWAY_ATTACHMENT_ID, val)?;
  143    143   
        }
  144    144   
        if let Some(ref val) = self.transit_gateway_connect_peer_id {
  145    145   
            ser.write_string(&TRANSITGATEWAYCONNECTPEER_MEMBER_TRANSIT_GATEWAY_CONNECT_PEER_ID, val)?;
  146    146   
        }
  147    147   
        if let Some(ref val) = self.state {
  148    148   
            ser.write_string(&TRANSITGATEWAYCONNECTPEER_MEMBER_STATE, val.as_str())?;
  149    149   
        }
  150    150   
        if let Some(ref val) = self.creation_time {
  151    151   
            ser.write_timestamp(&TRANSITGATEWAYCONNECTPEER_MEMBER_CREATION_TIME, val)?;
  152    152   
        }
  153    153   
        if let Some(ref val) = self.connect_peer_configuration {
  154    154   
            ser.write_struct(&TRANSITGATEWAYCONNECTPEER_MEMBER_CONNECT_PEER_CONFIGURATION, val)?;
  155    155   
        }
  156    156   
        if let Some(ref val) = self.tags {
  157    157   
            ser.write_list(
  158    158   
                &TRANSITGATEWAYCONNECTPEER_MEMBER_TAGS,
  159    159   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  160    160   
                    for item in val {
  161    161   
                        ser.write_struct(crate::types::Tag::SCHEMA, item)?;
  162    162   
                    }
  163    163   
                    Ok(())
  164    164   
                },
  165    165   
            )?;
  166    166   
        }
  167    167   
        Ok(())
  168    168   
    }
  169    169   
}
  170    170   
impl TransitGatewayConnectPeer {
  171    171   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  172         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  173         -
        deserializer: &mut D,
         172  +
    pub fn deserialize(
         173  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  174    174   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  175    175   
        #[allow(unused_variables, unused_mut)]
  176    176   
        let mut builder = Self::builder();
  177    177   
        #[allow(
  178    178   
            unused_variables,
  179    179   
            unreachable_code,
  180    180   
            clippy::single_match,
  181    181   
            clippy::match_single_binding,
  182    182   
            clippy::diverging_sub_expression
  183    183   
        )]
  184         -
        deserializer.read_struct(&TRANSITGATEWAYCONNECTPEER_SCHEMA, (), |_, member, deser| {
         184  +
        deserializer.read_struct(&TRANSITGATEWAYCONNECTPEER_SCHEMA, &mut |member, deser| {
  185    185   
            match member.member_index() {
  186    186   
                Some(0) => {
  187    187   
                    builder.transit_gateway_attachment_id = Some(deser.read_string(member)?);
  188    188   
                }
  189    189   
                Some(1) => {
  190    190   
                    builder.transit_gateway_connect_peer_id = Some(deser.read_string(member)?);
  191    191   
                }
  192    192   
                Some(2) => {
  193    193   
                    builder.state = Some(crate::types::TransitGatewayConnectPeerState::from(deser.read_string(member)?.as_str()));
  194    194   
                }
  195    195   
                Some(3) => {
  196    196   
                    builder.creation_time = Some(deser.read_timestamp(member)?);
  197    197   
                }
  198    198   
                Some(4) => {
  199    199   
                    builder.connect_peer_configuration = Some(crate::types::TransitGatewayConnectPeerConfiguration::deserialize(deser)?);
  200    200   
                }
  201    201   
                Some(5) => {
  202    202   
                    builder.tags = Some({
  203         -
                        let container = if let Some(cap) = deser.container_size() {
  204         -
                            Vec::with_capacity(cap)
  205         -
                        } else {
  206         -
                            Vec::new()
  207         -
                        };
  208         -
                        deser.read_list(member, container, |mut list, deser| {
  209         -
                            list.push(crate::types::Tag::deserialize(deser)?);
  210         -
                            Ok(list)
  211         -
                        })?
         203  +
                        let mut container = Vec::new();
         204  +
                        deser.read_list(member, &mut |deser| {
         205  +
                            container.push(crate::types::Tag::deserialize(deser)?);
         206  +
                            Ok(())
         207  +
                        })?;
         208  +
                        container
  212    209   
                    });
  213    210   
                }
  214    211   
                _ => {}
  215    212   
            }
  216    213   
            Ok(())
  217    214   
        })?;
  218    215   
        Ok(builder.build())
  219    216   
    }
  220    217   
}
         218  +
impl TransitGatewayConnectPeer {
         219  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         220  +
    pub fn deserialize_with_response(
         221  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         222  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         223  +
        _status: u16,
         224  +
        _body: &[u8],
         225  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         226  +
        Self::deserialize(deserializer)
         227  +
    }
         228  +
}
  221    229   
impl TransitGatewayConnectPeer {
  222    230   
    /// Creates a new builder-style object to manufacture [`TransitGatewayConnectPeer`](crate::types::TransitGatewayConnectPeer).
  223    231   
    pub fn builder() -> crate::types::builders::TransitGatewayConnectPeerBuilder {
  224    232   
        crate::types::builders::TransitGatewayConnectPeerBuilder::default()
  225    233   
    }
  226    234   
}
  227    235   
  228    236   
/// A builder for [`TransitGatewayConnectPeer`](crate::types::TransitGatewayConnectPeer).
  229    237   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  230    238   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/ec2/src/types/_transit_gateway_connect_peer_configuration.rs

@@ -26,26 +246,244 @@
   46     46   
    "com.amazonaws.ec2",
   47     47   
    "TransitGatewayConnectPeerConfiguration",
   48     48   
);
   49     49   
static TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_TRANSIT_GATEWAY_ADDRESS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   50     50   
    ::aws_smithy_schema::ShapeId::from_static(
   51     51   
        "com.amazonaws.ec2#TransitGatewayConnectPeerConfiguration$TransitGatewayAddress",
   52     52   
        "com.amazonaws.ec2",
   53     53   
        "TransitGatewayConnectPeerConfiguration",
   54     54   
    ),
   55     55   
    ::aws_smithy_schema::ShapeType::String,
   56         -
    "transit_gateway_address",
          56  +
    "TransitGatewayAddress",
   57     57   
    0,
   58     58   
)
   59     59   
.with_xml_name("transitGatewayAddress");
   60     60   
static TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_PEER_ADDRESS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   61     61   
    ::aws_smithy_schema::ShapeId::from_static(
   62     62   
        "com.amazonaws.ec2#TransitGatewayConnectPeerConfiguration$PeerAddress",
   63     63   
        "com.amazonaws.ec2",
   64     64   
        "TransitGatewayConnectPeerConfiguration",
   65     65   
    ),
   66     66   
    ::aws_smithy_schema::ShapeType::String,
   67         -
    "peer_address",
          67  +
    "PeerAddress",
   68     68   
    1,
   69     69   
)
   70     70   
.with_xml_name("peerAddress");
   71     71   
static TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_INSIDE_CIDR_BLOCKS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   72     72   
    ::aws_smithy_schema::ShapeId::from_static(
   73     73   
        "com.amazonaws.ec2#TransitGatewayConnectPeerConfiguration$InsideCidrBlocks",
   74     74   
        "com.amazonaws.ec2",
   75     75   
        "TransitGatewayConnectPeerConfiguration",
   76     76   
    ),
   77     77   
    ::aws_smithy_schema::ShapeType::List,
   78         -
    "inside_cidr_blocks",
          78  +
    "InsideCidrBlocks",
   79     79   
    2,
   80     80   
)
   81     81   
.with_xml_name("insideCidrBlocks");
   82     82   
static TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_PROTOCOL: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   83     83   
    ::aws_smithy_schema::ShapeId::from_static(
   84     84   
        "com.amazonaws.ec2#TransitGatewayConnectPeerConfiguration$Protocol",
   85     85   
        "com.amazonaws.ec2",
   86     86   
        "TransitGatewayConnectPeerConfiguration",
   87     87   
    ),
   88     88   
    ::aws_smithy_schema::ShapeType::String,
   89         -
    "protocol",
          89  +
    "Protocol",
   90     90   
    3,
   91     91   
)
   92     92   
.with_xml_name("protocol");
   93     93   
static TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_BGP_CONFIGURATIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   94     94   
    ::aws_smithy_schema::ShapeId::from_static(
   95     95   
        "com.amazonaws.ec2#TransitGatewayConnectPeerConfiguration$BgpConfigurations",
   96     96   
        "com.amazonaws.ec2",
   97     97   
        "TransitGatewayConnectPeerConfiguration",
   98     98   
    ),
   99     99   
    ::aws_smithy_schema::ShapeType::List,
  100         -
    "bgp_configurations",
         100  +
    "BgpConfigurations",
  101    101   
    4,
  102    102   
)
  103    103   
.with_xml_name("bgpConfigurations");
  104    104   
static TRANSITGATEWAYCONNECTPEERCONFIGURATION_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  105    105   
    TRANSITGATEWAYCONNECTPEERCONFIGURATION_SCHEMA_ID,
  106    106   
    ::aws_smithy_schema::ShapeType::Structure,
  107    107   
    &[
  108    108   
        &TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_TRANSIT_GATEWAY_ADDRESS,
  109    109   
        &TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_PEER_ADDRESS,
  110    110   
        &TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_INSIDE_CIDR_BLOCKS,
  111    111   
        &TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_PROTOCOL,
  112    112   
        &TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_BGP_CONFIGURATIONS,
  113    113   
    ],
  114    114   
);
  115    115   
impl TransitGatewayConnectPeerConfiguration {
  116    116   
    /// The schema for this shape.
  117    117   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &TRANSITGATEWAYCONNECTPEERCONFIGURATION_SCHEMA;
  118    118   
}
  119    119   
impl ::aws_smithy_schema::serde::SerializableStruct for TransitGatewayConnectPeerConfiguration {
  120    120   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  121    121   
    fn serialize_members(
  122    122   
        &self,
  123    123   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  124    124   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  125    125   
        if let Some(ref val) = self.transit_gateway_address {
  126    126   
            ser.write_string(&TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_TRANSIT_GATEWAY_ADDRESS, val)?;
  127    127   
        }
  128    128   
        if let Some(ref val) = self.peer_address {
  129    129   
            ser.write_string(&TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_PEER_ADDRESS, val)?;
  130    130   
        }
  131    131   
        if let Some(ref val) = self.inside_cidr_blocks {
  132    132   
            ser.write_list(
  133    133   
                &TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_INSIDE_CIDR_BLOCKS,
  134    134   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  135    135   
                    for item in val {
  136    136   
                        ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
  137    137   
                    }
  138    138   
                    Ok(())
  139    139   
                },
  140    140   
            )?;
  141    141   
        }
  142    142   
        if let Some(ref val) = self.protocol {
  143    143   
            ser.write_string(&TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_PROTOCOL, val.as_str())?;
  144    144   
        }
  145    145   
        if let Some(ref val) = self.bgp_configurations {
  146    146   
            ser.write_list(
  147    147   
                &TRANSITGATEWAYCONNECTPEERCONFIGURATION_MEMBER_BGP_CONFIGURATIONS,
  148    148   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  149    149   
                    for item in val {
  150    150   
                        ser.write_struct(crate::types::TransitGatewayAttachmentBgpConfiguration::SCHEMA, item)?;
  151    151   
                    }
  152    152   
                    Ok(())
  153    153   
                },
  154    154   
            )?;
  155    155   
        }
  156    156   
        Ok(())
  157    157   
    }
  158    158   
}
  159    159   
impl TransitGatewayConnectPeerConfiguration {
  160    160   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  161         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  162         -
        deserializer: &mut D,
         161  +
    pub fn deserialize(
         162  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  163    163   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  164    164   
        #[allow(unused_variables, unused_mut)]
  165    165   
        let mut builder = Self::builder();
  166    166   
        #[allow(
  167    167   
            unused_variables,
  168    168   
            unreachable_code,
  169    169   
            clippy::single_match,
  170    170   
            clippy::match_single_binding,
  171    171   
            clippy::diverging_sub_expression
  172    172   
        )]
  173         -
        deserializer.read_struct(&TRANSITGATEWAYCONNECTPEERCONFIGURATION_SCHEMA, (), |_, member, deser| {
         173  +
        deserializer.read_struct(&TRANSITGATEWAYCONNECTPEERCONFIGURATION_SCHEMA, &mut |member, deser| {
  174    174   
            match member.member_index() {
  175    175   
                Some(0) => {
  176    176   
                    builder.transit_gateway_address = Some(deser.read_string(member)?);
  177    177   
                }
  178    178   
                Some(1) => {
  179    179   
                    builder.peer_address = Some(deser.read_string(member)?);
  180    180   
                }
  181    181   
                Some(2) => {
  182         -
                    builder.inside_cidr_blocks = Some({
  183         -
                        let container = if let Some(cap) = deser.container_size() {
  184         -
                            Vec::with_capacity(cap)
  185         -
                        } else {
  186         -
                            Vec::new()
  187         -
                        };
  188         -
                        deser.read_list(member, container, |mut list, deser| {
  189         -
                            list.push(deser.read_string(member)?);
  190         -
                            Ok(list)
  191         -
                        })?
  192         -
                    });
         182  +
                    builder.inside_cidr_blocks = Some(deser.read_string_list(member)?);
  193    183   
                }
  194    184   
                Some(3) => {
  195    185   
                    builder.protocol = Some(crate::types::ProtocolValue::from(deser.read_string(member)?.as_str()));
  196    186   
                }
  197    187   
                Some(4) => {
  198    188   
                    builder.bgp_configurations = Some({
  199         -
                        let container = if let Some(cap) = deser.container_size() {
  200         -
                            Vec::with_capacity(cap)
  201         -
                        } else {
  202         -
                            Vec::new()
  203         -
                        };
  204         -
                        deser.read_list(member, container, |mut list, deser| {
  205         -
                            list.push(crate::types::TransitGatewayAttachmentBgpConfiguration::deserialize(deser)?);
  206         -
                            Ok(list)
  207         -
                        })?
         189  +
                        let mut container = Vec::new();
         190  +
                        deser.read_list(member, &mut |deser| {
         191  +
                            container.push(crate::types::TransitGatewayAttachmentBgpConfiguration::deserialize(deser)?);
         192  +
                            Ok(())
         193  +
                        })?;
         194  +
                        container
  208    195   
                    });
  209    196   
                }
  210    197   
                _ => {}
  211    198   
            }
  212    199   
            Ok(())
  213    200   
        })?;
  214    201   
        Ok(builder.build())
  215    202   
    }
  216    203   
}
         204  +
impl TransitGatewayConnectPeerConfiguration {
         205  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         206  +
    pub fn deserialize_with_response(
         207  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         208  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         209  +
        _status: u16,
         210  +
        _body: &[u8],
         211  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         212  +
        Self::deserialize(deserializer)
         213  +
    }
         214  +
}
  217    215   
impl TransitGatewayConnectPeerConfiguration {
  218    216   
    /// Creates a new builder-style object to manufacture [`TransitGatewayConnectPeerConfiguration`](crate::types::TransitGatewayConnectPeerConfiguration).
  219    217   
    pub fn builder() -> crate::types::builders::TransitGatewayConnectPeerConfigurationBuilder {
  220    218   
        crate::types::builders::TransitGatewayConnectPeerConfigurationBuilder::default()
  221    219   
    }
  222    220   
}
  223    221   
  224    222   
/// A builder for [`TransitGatewayConnectPeerConfiguration`](crate::types::TransitGatewayConnectPeerConfiguration).
  225    223   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  226    224   
#[non_exhaustive]