AWS SDK

AWS SDK

rev. 96f5a1b4ad139d2f1ad1e8e40f300e1cd1ff574c

Files changed:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@@ -105,105 +325,323 @@
  125    125   
    "com.amazonaws.ec2.synthetic",
  126    126   
    "DescribeNetworkAclsInput",
  127    127   
);
  128    128   
static DESCRIBENETWORKACLSINPUT_MEMBER_NEXT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  129    129   
    ::aws_smithy_schema::ShapeId::from_static(
  130    130   
        "com.amazonaws.ec2.synthetic#DescribeNetworkAclsInput$NextToken",
  131    131   
        "com.amazonaws.ec2.synthetic",
  132    132   
        "DescribeNetworkAclsInput",
  133    133   
    ),
  134    134   
    ::aws_smithy_schema::ShapeType::String,
  135         -
    "next_token",
         135  +
    "NextToken",
  136    136   
    0,
  137    137   
);
  138    138   
static DESCRIBENETWORKACLSINPUT_MEMBER_MAX_RESULTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  139    139   
    ::aws_smithy_schema::ShapeId::from_static(
  140    140   
        "com.amazonaws.ec2.synthetic#DescribeNetworkAclsInput$MaxResults",
  141    141   
        "com.amazonaws.ec2.synthetic",
  142    142   
        "DescribeNetworkAclsInput",
  143    143   
    ),
  144    144   
    ::aws_smithy_schema::ShapeType::Integer,
  145         -
    "max_results",
         145  +
    "MaxResults",
  146    146   
    1,
  147    147   
);
  148    148   
static DESCRIBENETWORKACLSINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  149    149   
    ::aws_smithy_schema::ShapeId::from_static(
  150    150   
        "com.amazonaws.ec2.synthetic#DescribeNetworkAclsInput$DryRun",
  151    151   
        "com.amazonaws.ec2.synthetic",
  152    152   
        "DescribeNetworkAclsInput",
  153    153   
    ),
  154    154   
    ::aws_smithy_schema::ShapeType::Boolean,
  155         -
    "dry_run",
         155  +
    "DryRun",
  156    156   
    2,
  157    157   
)
  158    158   
.with_xml_name("dryRun");
  159    159   
static DESCRIBENETWORKACLSINPUT_MEMBER_NETWORK_ACL_IDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  160    160   
    ::aws_smithy_schema::ShapeId::from_static(
  161    161   
        "com.amazonaws.ec2.synthetic#DescribeNetworkAclsInput$NetworkAclIds",
  162    162   
        "com.amazonaws.ec2.synthetic",
  163    163   
        "DescribeNetworkAclsInput",
  164    164   
    ),
  165    165   
    ::aws_smithy_schema::ShapeType::List,
  166         -
    "network_acl_ids",
         166  +
    "NetworkAclIds",
  167    167   
    3,
  168    168   
)
  169    169   
.with_xml_name("NetworkAclId");
  170    170   
static DESCRIBENETWORKACLSINPUT_MEMBER_FILTERS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  171    171   
    ::aws_smithy_schema::ShapeId::from_static(
  172    172   
        "com.amazonaws.ec2.synthetic#DescribeNetworkAclsInput$Filters",
  173    173   
        "com.amazonaws.ec2.synthetic",
  174    174   
        "DescribeNetworkAclsInput",
  175    175   
    ),
  176    176   
    ::aws_smithy_schema::ShapeType::List,
  177         -
    "filters",
         177  +
    "Filters",
  178    178   
    4,
  179    179   
)
  180    180   
.with_xml_name("Filter");
  181    181   
static DESCRIBENETWORKACLSINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  182    182   
    DESCRIBENETWORKACLSINPUT_SCHEMA_ID,
  183    183   
    ::aws_smithy_schema::ShapeType::Structure,
  184    184   
    &[
  185    185   
        &DESCRIBENETWORKACLSINPUT_MEMBER_NEXT_TOKEN,
  186    186   
        &DESCRIBENETWORKACLSINPUT_MEMBER_MAX_RESULTS,
  187    187   
        &DESCRIBENETWORKACLSINPUT_MEMBER_DRY_RUN,
  188    188   
        &DESCRIBENETWORKACLSINPUT_MEMBER_NETWORK_ACL_IDS,
  189    189   
        &DESCRIBENETWORKACLSINPUT_MEMBER_FILTERS,
  190    190   
    ],
  191    191   
);
  192    192   
impl DescribeNetworkAclsInput {
  193    193   
    /// The schema for this shape.
  194    194   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &DESCRIBENETWORKACLSINPUT_SCHEMA;
  195    195   
}
  196    196   
impl ::aws_smithy_schema::serde::SerializableStruct for DescribeNetworkAclsInput {
  197    197   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  198    198   
    fn serialize_members(
  199    199   
        &self,
  200    200   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  201    201   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  202    202   
        if let Some(ref val) = self.next_token {
  203    203   
            ser.write_string(&DESCRIBENETWORKACLSINPUT_MEMBER_NEXT_TOKEN, val)?;
  204    204   
        }
  205    205   
        if let Some(ref val) = self.max_results {
  206    206   
            ser.write_integer(&DESCRIBENETWORKACLSINPUT_MEMBER_MAX_RESULTS, *val)?;
  207    207   
        }
  208    208   
        if let Some(ref val) = self.dry_run {
  209    209   
            ser.write_boolean(&DESCRIBENETWORKACLSINPUT_MEMBER_DRY_RUN, *val)?;
  210    210   
        }
  211    211   
        if let Some(ref val) = self.network_acl_ids {
  212    212   
            ser.write_list(
  213    213   
                &DESCRIBENETWORKACLSINPUT_MEMBER_NETWORK_ACL_IDS,
  214    214   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  215    215   
                    for item in val {
  216    216   
                        ser.write_string(&aws_smithy_schema::prelude::STRING, item)?;
  217    217   
                    }
  218    218   
                    Ok(())
  219    219   
                },
  220    220   
            )?;
  221    221   
        }
  222    222   
        if let Some(ref val) = self.filters {
  223    223   
            ser.write_list(
  224    224   
                &DESCRIBENETWORKACLSINPUT_MEMBER_FILTERS,
  225    225   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  226    226   
                    for item in val {
  227    227   
                        ser.write_struct(crate::types::Filter::SCHEMA, item)?;
  228    228   
                    }
  229    229   
                    Ok(())
  230    230   
                },
  231    231   
            )?;
  232    232   
        }
  233    233   
        Ok(())
  234    234   
    }
  235    235   
}
  236    236   
impl DescribeNetworkAclsInput {
  237    237   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  238         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  239         -
        deserializer: &mut D,
         238  +
    pub fn deserialize(
         239  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  240    240   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  241    241   
        #[allow(unused_variables, unused_mut)]
  242    242   
        let mut builder = Self::builder();
  243    243   
        #[allow(
  244    244   
            unused_variables,
  245    245   
            unreachable_code,
  246    246   
            clippy::single_match,
  247    247   
            clippy::match_single_binding,
  248    248   
            clippy::diverging_sub_expression
  249    249   
        )]
  250         -
        deserializer.read_struct(&DESCRIBENETWORKACLSINPUT_SCHEMA, (), |_, member, deser| {
         250  +
        deserializer.read_struct(&DESCRIBENETWORKACLSINPUT_SCHEMA, &mut |member, deser| {
  251    251   
            match member.member_index() {
  252    252   
                Some(0) => {
  253    253   
                    builder.next_token = Some(deser.read_string(member)?);
  254    254   
                }
  255    255   
                Some(1) => {
  256    256   
                    builder.max_results = Some(deser.read_integer(member)?);
  257    257   
                }
  258    258   
                Some(2) => {
  259    259   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  260    260   
                }
  261    261   
                Some(3) => {
  262         -
                    builder.network_acl_ids = Some({
  263         -
                        let container = if let Some(cap) = deser.container_size() {
  264         -
                            Vec::with_capacity(cap)
  265         -
                        } else {
  266         -
                            Vec::new()
  267         -
                        };
  268         -
                        deser.read_list(member, container, |mut list, deser| {
  269         -
                            list.push(deser.read_string(member)?);
  270         -
                            Ok(list)
  271         -
                        })?
  272         -
                    });
         262  +
                    builder.network_acl_ids = Some(deser.read_string_list(member)?);
  273    263   
                }
  274    264   
                Some(4) => {
  275    265   
                    builder.filters = Some({
  276         -
                        let container = if let Some(cap) = deser.container_size() {
  277         -
                            Vec::with_capacity(cap)
  278         -
                        } else {
  279         -
                            Vec::new()
  280         -
                        };
  281         -
                        deser.read_list(member, container, |mut list, deser| {
  282         -
                            list.push(crate::types::Filter::deserialize(deser)?);
  283         -
                            Ok(list)
  284         -
                        })?
         266  +
                        let mut container = Vec::new();
         267  +
                        deser.read_list(member, &mut |deser| {
         268  +
                            container.push(crate::types::Filter::deserialize(deser)?);
         269  +
                            Ok(())
         270  +
                        })?;
         271  +
                        container
  285    272   
                    });
  286    273   
                }
  287    274   
                _ => {}
  288    275   
            }
  289    276   
            Ok(())
  290    277   
        })?;
  291    278   
        builder
  292    279   
            .build()
  293    280   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  294    281   
    }
  295    282   
}
         283  +
impl DescribeNetworkAclsInput {
         284  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         285  +
    pub fn deserialize_with_response(
         286  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         287  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         288  +
        _status: u16,
         289  +
        _body: &[u8],
         290  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         291  +
        Self::deserialize(deserializer)
         292  +
    }
         293  +
}
  296    294   
impl DescribeNetworkAclsInput {
  297    295   
    /// Creates a new builder-style object to manufacture [`DescribeNetworkAclsInput`](crate::operation::describe_network_acls::DescribeNetworkAclsInput).
  298    296   
    pub fn builder() -> crate::operation::describe_network_acls::builders::DescribeNetworkAclsInputBuilder {
  299    297   
        crate::operation::describe_network_acls::builders::DescribeNetworkAclsInputBuilder::default()
  300    298   
    }
  301    299   
}
  302    300   
  303    301   
/// A builder for [`DescribeNetworkAclsInput`](crate::operation::describe_network_acls::DescribeNetworkAclsInput).
  304    302   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  305    303   
#[non_exhaustive]

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

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

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

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

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

@@ -44,44 +179,179 @@
   64     64   
    "DescribeNetworkInsightsAccessScopeAnalysesInput",
   65     65   
);
   66     66   
static DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_NETWORK_INSIGHTS_ACCESS_SCOPE_ANALYSIS_IDS: ::aws_smithy_schema::Schema =
   67     67   
    ::aws_smithy_schema::Schema::new_member(
   68     68   
        ::aws_smithy_schema::ShapeId::from_static(
   69     69   
            "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAccessScopeAnalysesInput$NetworkInsightsAccessScopeAnalysisIds",
   70     70   
            "com.amazonaws.ec2.synthetic",
   71     71   
            "DescribeNetworkInsightsAccessScopeAnalysesInput",
   72     72   
        ),
   73     73   
        ::aws_smithy_schema::ShapeType::List,
   74         -
        "network_insights_access_scope_analysis_ids",
          74  +
        "NetworkInsightsAccessScopeAnalysisIds",
   75     75   
        0,
   76     76   
    )
   77     77   
    .with_xml_name("NetworkInsightsAccessScopeAnalysisId");
   78     78   
static DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_NETWORK_INSIGHTS_ACCESS_SCOPE_ID: ::aws_smithy_schema::Schema =
   79     79   
    ::aws_smithy_schema::Schema::new_member(
   80     80   
        ::aws_smithy_schema::ShapeId::from_static(
   81     81   
            "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAccessScopeAnalysesInput$NetworkInsightsAccessScopeId",
   82     82   
            "com.amazonaws.ec2.synthetic",
   83     83   
            "DescribeNetworkInsightsAccessScopeAnalysesInput",
   84     84   
        ),
   85     85   
        ::aws_smithy_schema::ShapeType::String,
   86         -
        "network_insights_access_scope_id",
          86  +
        "NetworkInsightsAccessScopeId",
   87     87   
        1,
   88     88   
    );
   89     89   
static DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_ANALYSIS_START_TIME_BEGIN: ::aws_smithy_schema::Schema =
   90     90   
    ::aws_smithy_schema::Schema::new_member(
   91     91   
        ::aws_smithy_schema::ShapeId::from_static(
   92     92   
            "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAccessScopeAnalysesInput$AnalysisStartTimeBegin",
   93     93   
            "com.amazonaws.ec2.synthetic",
   94     94   
            "DescribeNetworkInsightsAccessScopeAnalysesInput",
   95     95   
        ),
   96     96   
        ::aws_smithy_schema::ShapeType::Timestamp,
   97         -
        "analysis_start_time_begin",
          97  +
        "AnalysisStartTimeBegin",
   98     98   
        2,
   99     99   
    );
  100    100   
static DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_ANALYSIS_START_TIME_END: ::aws_smithy_schema::Schema =
  101    101   
    ::aws_smithy_schema::Schema::new_member(
  102    102   
        ::aws_smithy_schema::ShapeId::from_static(
  103    103   
            "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAccessScopeAnalysesInput$AnalysisStartTimeEnd",
  104    104   
            "com.amazonaws.ec2.synthetic",
  105    105   
            "DescribeNetworkInsightsAccessScopeAnalysesInput",
  106    106   
        ),
  107    107   
        ::aws_smithy_schema::ShapeType::Timestamp,
  108         -
        "analysis_start_time_end",
         108  +
        "AnalysisStartTimeEnd",
  109    109   
        3,
  110    110   
    );
  111    111   
static DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_FILTERS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  112    112   
    ::aws_smithy_schema::ShapeId::from_static(
  113    113   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAccessScopeAnalysesInput$Filters",
  114    114   
        "com.amazonaws.ec2.synthetic",
  115    115   
        "DescribeNetworkInsightsAccessScopeAnalysesInput",
  116    116   
    ),
  117    117   
    ::aws_smithy_schema::ShapeType::List,
  118         -
    "filters",
         118  +
    "Filters",
  119    119   
    4,
  120    120   
)
  121    121   
.with_xml_name("Filter");
  122    122   
static DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_MAX_RESULTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  123    123   
    ::aws_smithy_schema::ShapeId::from_static(
  124    124   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAccessScopeAnalysesInput$MaxResults",
  125    125   
        "com.amazonaws.ec2.synthetic",
  126    126   
        "DescribeNetworkInsightsAccessScopeAnalysesInput",
  127    127   
    ),
  128    128   
    ::aws_smithy_schema::ShapeType::Integer,
  129         -
    "max_results",
         129  +
    "MaxResults",
  130    130   
    5,
  131    131   
);
  132    132   
static DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_DRY_RUN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  133    133   
    ::aws_smithy_schema::ShapeId::from_static(
  134    134   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAccessScopeAnalysesInput$DryRun",
  135    135   
        "com.amazonaws.ec2.synthetic",
  136    136   
        "DescribeNetworkInsightsAccessScopeAnalysesInput",
  137    137   
    ),
  138    138   
    ::aws_smithy_schema::ShapeType::Boolean,
  139         -
    "dry_run",
         139  +
    "DryRun",
  140    140   
    6,
  141    141   
);
  142    142   
static DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_NEXT_TOKEN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  143    143   
    ::aws_smithy_schema::ShapeId::from_static(
  144    144   
        "com.amazonaws.ec2.synthetic#DescribeNetworkInsightsAccessScopeAnalysesInput$NextToken",
  145    145   
        "com.amazonaws.ec2.synthetic",
  146    146   
        "DescribeNetworkInsightsAccessScopeAnalysesInput",
  147    147   
    ),
  148    148   
    ::aws_smithy_schema::ShapeType::String,
  149         -
    "next_token",
         149  +
    "NextToken",
  150    150   
    7,
  151    151   
);
  152    152   
static DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  153    153   
    DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_SCHEMA_ID,
  154    154   
    ::aws_smithy_schema::ShapeType::Structure,
  155    155   
    &[
  156    156   
        &DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_NETWORK_INSIGHTS_ACCESS_SCOPE_ANALYSIS_IDS,
  157    157   
        &DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_NETWORK_INSIGHTS_ACCESS_SCOPE_ID,
  158    158   
        &DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_ANALYSIS_START_TIME_BEGIN,
  159    159   
        &DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_ANALYSIS_START_TIME_END,
@@ -194,194 +320,318 @@
  214    214   
            ser.write_boolean(&DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_DRY_RUN, *val)?;
  215    215   
        }
  216    216   
        if let Some(ref val) = self.next_token {
  217    217   
            ser.write_string(&DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_MEMBER_NEXT_TOKEN, val)?;
  218    218   
        }
  219    219   
        Ok(())
  220    220   
    }
  221    221   
}
  222    222   
impl DescribeNetworkInsightsAccessScopeAnalysesInput {
  223    223   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  224         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  225         -
        deserializer: &mut D,
         224  +
    pub fn deserialize(
         225  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  226    226   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  227    227   
        #[allow(unused_variables, unused_mut)]
  228    228   
        let mut builder = Self::builder();
  229    229   
        #[allow(
  230    230   
            unused_variables,
  231    231   
            unreachable_code,
  232    232   
            clippy::single_match,
  233    233   
            clippy::match_single_binding,
  234    234   
            clippy::diverging_sub_expression
  235    235   
        )]
  236         -
        deserializer.read_struct(&DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_SCHEMA, (), |_, member, deser| {
         236  +
        deserializer.read_struct(&DESCRIBENETWORKINSIGHTSACCESSSCOPEANALYSESINPUT_SCHEMA, &mut |member, deser| {
  237    237   
            match member.member_index() {
  238    238   
                Some(0) => {
  239         -
                    builder.network_insights_access_scope_analysis_ids = 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(deser.read_string(member)?);
  247         -
                            Ok(list)
  248         -
                        })?
  249         -
                    });
         239  +
                    builder.network_insights_access_scope_analysis_ids = Some(deser.read_string_list(member)?);
  250    240   
                }
  251    241   
                Some(1) => {
  252    242   
                    builder.network_insights_access_scope_id = Some(deser.read_string(member)?);
  253    243   
                }
  254    244   
                Some(2) => {
  255    245   
                    builder.analysis_start_time_begin = Some(deser.read_timestamp(member)?);
  256    246   
                }
  257    247   
                Some(3) => {
  258    248   
                    builder.analysis_start_time_end = Some(deser.read_timestamp(member)?);
  259    249   
                }
  260    250   
                Some(4) => {
  261    251   
                    builder.filters = Some({
  262         -
                        let container = if let Some(cap) = deser.container_size() {
  263         -
                            Vec::with_capacity(cap)
  264         -
                        } else {
  265         -
                            Vec::new()
  266         -
                        };
  267         -
                        deser.read_list(member, container, |mut list, deser| {
  268         -
                            list.push(crate::types::Filter::deserialize(deser)?);
  269         -
                            Ok(list)
  270         -
                        })?
         252  +
                        let mut container = Vec::new();
         253  +
                        deser.read_list(member, &mut |deser| {
         254  +
                            container.push(crate::types::Filter::deserialize(deser)?);
         255  +
                            Ok(())
         256  +
                        })?;
         257  +
                        container
  271    258   
                    });
  272    259   
                }
  273    260   
                Some(5) => {
  274    261   
                    builder.max_results = Some(deser.read_integer(member)?);
  275    262   
                }
  276    263   
                Some(6) => {
  277    264   
                    builder.dry_run = Some(deser.read_boolean(member)?);
  278    265   
                }
  279    266   
                Some(7) => {
  280    267   
                    builder.next_token = Some(deser.read_string(member)?);
  281    268   
                }
  282    269   
                _ => {}
  283    270   
            }
  284    271   
            Ok(())
  285    272   
        })?;
  286    273   
        builder
  287    274   
            .build()
  288    275   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  289    276   
    }
  290    277   
}
         278  +
impl DescribeNetworkInsightsAccessScopeAnalysesInput {
         279  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         280  +
    pub fn deserialize_with_response(
         281  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         282  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         283  +
        _status: u16,
         284  +
        _body: &[u8],
         285  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         286  +
        Self::deserialize(deserializer)
         287  +
    }
         288  +
}
  291    289   
impl DescribeNetworkInsightsAccessScopeAnalysesInput {
  292    290   
    /// Creates a new builder-style object to manufacture [`DescribeNetworkInsightsAccessScopeAnalysesInput`](crate::operation::describe_network_insights_access_scope_analyses::DescribeNetworkInsightsAccessScopeAnalysesInput).
  293    291   
    pub fn builder(
  294    292   
    ) -> crate::operation::describe_network_insights_access_scope_analyses::builders::DescribeNetworkInsightsAccessScopeAnalysesInputBuilder {
  295    293   
        crate::operation::describe_network_insights_access_scope_analyses::builders::DescribeNetworkInsightsAccessScopeAnalysesInputBuilder::default()
  296    294   
    }
  297    295   
}
  298    296   
  299    297   
/// A builder for [`DescribeNetworkInsightsAccessScopeAnalysesInput`](crate::operation::describe_network_insights_access_scope_analyses::DescribeNetworkInsightsAccessScopeAnalysesInput).
  300    298   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]

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

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

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

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

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

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

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

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

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

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