AWS SDK

AWS SDK

rev. 163d4d6410694aaf071424777ecbecd050925f36 (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_list_descriptor.rs

@@ -40,40 +271,282 @@
   60     60   
    "com.amazonaws.s3control",
   61     61   
    "JobListDescriptor",
   62     62   
);
   63     63   
static JOBLISTDESCRIPTOR_MEMBER_JOB_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   64     64   
    ::aws_smithy_schema::ShapeId::from_static(
   65     65   
        "com.amazonaws.s3control#JobListDescriptor$JobId",
   66     66   
        "com.amazonaws.s3control",
   67     67   
        "JobListDescriptor",
   68     68   
    ),
   69     69   
    ::aws_smithy_schema::ShapeType::String,
   70         -
    "job_id",
          70  +
    "JobId",
   71     71   
    0,
   72     72   
);
   73     73   
static JOBLISTDESCRIPTOR_MEMBER_DESCRIPTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   74     74   
    ::aws_smithy_schema::ShapeId::from_static(
   75     75   
        "com.amazonaws.s3control#JobListDescriptor$Description",
   76     76   
        "com.amazonaws.s3control",
   77     77   
        "JobListDescriptor",
   78     78   
    ),
   79     79   
    ::aws_smithy_schema::ShapeType::String,
   80         -
    "description",
          80  +
    "Description",
   81     81   
    1,
   82     82   
);
   83     83   
static JOBLISTDESCRIPTOR_MEMBER_OPERATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   84     84   
    ::aws_smithy_schema::ShapeId::from_static(
   85     85   
        "com.amazonaws.s3control#JobListDescriptor$Operation",
   86     86   
        "com.amazonaws.s3control",
   87     87   
        "JobListDescriptor",
   88     88   
    ),
   89     89   
    ::aws_smithy_schema::ShapeType::String,
   90         -
    "operation",
          90  +
    "Operation",
   91     91   
    2,
   92     92   
);
   93     93   
static JOBLISTDESCRIPTOR_MEMBER_PRIORITY: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   94     94   
    ::aws_smithy_schema::ShapeId::from_static(
   95     95   
        "com.amazonaws.s3control#JobListDescriptor$Priority",
   96     96   
        "com.amazonaws.s3control",
   97     97   
        "JobListDescriptor",
   98     98   
    ),
   99     99   
    ::aws_smithy_schema::ShapeType::Integer,
  100         -
    "priority",
         100  +
    "Priority",
  101    101   
    3,
  102    102   
);
  103    103   
static JOBLISTDESCRIPTOR_MEMBER_STATUS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  104    104   
    ::aws_smithy_schema::ShapeId::from_static(
  105    105   
        "com.amazonaws.s3control#JobListDescriptor$Status",
  106    106   
        "com.amazonaws.s3control",
  107    107   
        "JobListDescriptor",
  108    108   
    ),
  109    109   
    ::aws_smithy_schema::ShapeType::String,
  110         -
    "status",
         110  +
    "Status",
  111    111   
    4,
  112    112   
);
  113    113   
static JOBLISTDESCRIPTOR_MEMBER_CREATION_TIME: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  114    114   
    ::aws_smithy_schema::ShapeId::from_static(
  115    115   
        "com.amazonaws.s3control#JobListDescriptor$CreationTime",
  116    116   
        "com.amazonaws.s3control",
  117    117   
        "JobListDescriptor",
  118    118   
    ),
  119    119   
    ::aws_smithy_schema::ShapeType::Timestamp,
  120         -
    "creation_time",
         120  +
    "CreationTime",
  121    121   
    5,
  122    122   
);
  123    123   
static JOBLISTDESCRIPTOR_MEMBER_TERMINATION_DATE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  124    124   
    ::aws_smithy_schema::ShapeId::from_static(
  125    125   
        "com.amazonaws.s3control#JobListDescriptor$TerminationDate",
  126    126   
        "com.amazonaws.s3control",
  127    127   
        "JobListDescriptor",
  128    128   
    ),
  129    129   
    ::aws_smithy_schema::ShapeType::Timestamp,
  130         -
    "termination_date",
         130  +
    "TerminationDate",
  131    131   
    6,
  132    132   
);
  133    133   
static JOBLISTDESCRIPTOR_MEMBER_PROGRESS_SUMMARY: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  134    134   
    ::aws_smithy_schema::ShapeId::from_static(
  135    135   
        "com.amazonaws.s3control#JobListDescriptor$ProgressSummary",
  136    136   
        "com.amazonaws.s3control",
  137    137   
        "JobListDescriptor",
  138    138   
    ),
  139    139   
    ::aws_smithy_schema::ShapeType::Structure,
  140         -
    "progress_summary",
         140  +
    "ProgressSummary",
  141    141   
    7,
  142    142   
);
  143    143   
static JOBLISTDESCRIPTOR_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  144    144   
    JOBLISTDESCRIPTOR_SCHEMA_ID,
  145    145   
    ::aws_smithy_schema::ShapeType::Structure,
  146    146   
    &[
  147    147   
        &JOBLISTDESCRIPTOR_MEMBER_JOB_ID,
  148    148   
        &JOBLISTDESCRIPTOR_MEMBER_DESCRIPTION,
  149    149   
        &JOBLISTDESCRIPTOR_MEMBER_OPERATION,
  150    150   
        &JOBLISTDESCRIPTOR_MEMBER_PRIORITY,
  151    151   
        &JOBLISTDESCRIPTOR_MEMBER_STATUS,
  152    152   
        &JOBLISTDESCRIPTOR_MEMBER_CREATION_TIME,
  153    153   
        &JOBLISTDESCRIPTOR_MEMBER_TERMINATION_DATE,
  154    154   
        &JOBLISTDESCRIPTOR_MEMBER_PROGRESS_SUMMARY,
  155    155   
    ],
  156    156   
);
  157    157   
impl JobListDescriptor {
  158    158   
    /// The schema for this shape.
  159    159   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBLISTDESCRIPTOR_SCHEMA;
  160    160   
}
  161    161   
impl ::aws_smithy_schema::serde::SerializableStruct for JobListDescriptor {
  162    162   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  163    163   
    fn serialize_members(
  164    164   
        &self,
  165    165   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  166    166   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  167    167   
        if let Some(ref val) = self.job_id {
  168    168   
            ser.write_string(&JOBLISTDESCRIPTOR_MEMBER_JOB_ID, val)?;
  169    169   
        }
  170    170   
        if let Some(ref val) = self.description {
  171    171   
            ser.write_string(&JOBLISTDESCRIPTOR_MEMBER_DESCRIPTION, val)?;
  172    172   
        }
  173    173   
        if let Some(ref val) = self.operation {
  174    174   
            ser.write_string(&JOBLISTDESCRIPTOR_MEMBER_OPERATION, val.as_str())?;
  175    175   
        }
  176    176   
        {
  177    177   
            let val = &self.priority;
  178    178   
            ser.write_integer(&JOBLISTDESCRIPTOR_MEMBER_PRIORITY, *val)?;
  179    179   
        }
  180    180   
        if let Some(ref val) = self.status {
  181    181   
            ser.write_string(&JOBLISTDESCRIPTOR_MEMBER_STATUS, val.as_str())?;
  182    182   
        }
  183    183   
        if let Some(ref val) = self.creation_time {
  184    184   
            ser.write_timestamp(&JOBLISTDESCRIPTOR_MEMBER_CREATION_TIME, val)?;
  185    185   
        }
  186    186   
        if let Some(ref val) = self.termination_date {
  187    187   
            ser.write_timestamp(&JOBLISTDESCRIPTOR_MEMBER_TERMINATION_DATE, val)?;
  188    188   
        }
  189    189   
        if let Some(ref val) = self.progress_summary {
  190    190   
            ser.write_struct(&JOBLISTDESCRIPTOR_MEMBER_PROGRESS_SUMMARY, val)?;
  191    191   
        }
  192    192   
        Ok(())
  193    193   
    }
  194    194   
}
  195    195   
impl JobListDescriptor {
  196    196   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  197         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  198         -
        deserializer: &mut D,
         197  +
    pub fn deserialize(
         198  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  199    199   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  200    200   
        #[allow(unused_variables, unused_mut)]
  201    201   
        let mut builder = Self::builder();
  202    202   
        #[allow(
  203    203   
            unused_variables,
  204    204   
            unreachable_code,
  205    205   
            clippy::single_match,
  206    206   
            clippy::match_single_binding,
  207    207   
            clippy::diverging_sub_expression
  208    208   
        )]
  209         -
        deserializer.read_struct(&JOBLISTDESCRIPTOR_SCHEMA, (), |_, member, deser| {
         209  +
        deserializer.read_struct(&JOBLISTDESCRIPTOR_SCHEMA, &mut |member, deser| {
  210    210   
            match member.member_index() {
  211    211   
                Some(0) => {
  212    212   
                    builder.job_id = Some(deser.read_string(member)?);
  213    213   
                }
  214    214   
                Some(1) => {
  215    215   
                    builder.description = Some(deser.read_string(member)?);
  216    216   
                }
  217    217   
                Some(2) => {
  218    218   
                    builder.operation = Some(crate::types::OperationName::from(deser.read_string(member)?.as_str()));
  219    219   
                }
  220    220   
                Some(3) => {
  221    221   
                    builder.priority = Some(deser.read_integer(member)?);
  222    222   
                }
  223    223   
                Some(4) => {
  224    224   
                    builder.status = Some(crate::types::JobStatus::from(deser.read_string(member)?.as_str()));
  225    225   
                }
  226    226   
                Some(5) => {
  227    227   
                    builder.creation_time = Some(deser.read_timestamp(member)?);
  228    228   
                }
  229    229   
                Some(6) => {
  230    230   
                    builder.termination_date = Some(deser.read_timestamp(member)?);
  231    231   
                }
  232    232   
                Some(7) => {
  233    233   
                    builder.progress_summary = Some(crate::types::JobProgressSummary::deserialize(deser)?);
  234    234   
                }
  235    235   
                _ => {}
  236    236   
            }
  237    237   
            Ok(())
  238    238   
        })?;
  239    239   
        Ok(builder.build())
  240    240   
    }
  241    241   
}
         242  +
impl JobListDescriptor {
         243  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         244  +
    pub fn deserialize_with_response(
         245  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         246  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         247  +
        _status: u16,
         248  +
        _body: &[u8],
         249  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         250  +
        Self::deserialize(deserializer)
         251  +
    }
         252  +
}
  242    253   
impl JobListDescriptor {
  243    254   
    /// Creates a new builder-style object to manufacture [`JobListDescriptor`](crate::types::JobListDescriptor).
  244    255   
    pub fn builder() -> crate::types::builders::JobListDescriptorBuilder {
  245    256   
        crate::types::builders::JobListDescriptorBuilder::default()
  246    257   
    }
  247    258   
}
  248    259   
  249    260   
/// A builder for [`JobListDescriptor`](crate::types::JobListDescriptor).
  250    261   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  251    262   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_manifest.rs

@@ -1,1 +118,129 @@
   17     17   
    /// <p>Contains the information required to locate the specified job's manifest. Manifests can't be imported from directory buckets. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html">Directory buckets</a>.</p>
   18     18   
    pub fn location(&self) -> ::std::option::Option<&crate::types::JobManifestLocation> {
   19     19   
        self.location.as_ref()
   20     20   
    }
   21     21   
}
   22     22   
static JOBMANIFEST_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   23     23   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobManifest", "com.amazonaws.s3control", "JobManifest");
   24     24   
static JOBMANIFEST_MEMBER_SPEC: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   25     25   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobManifest$Spec", "com.amazonaws.s3control", "JobManifest"),
   26     26   
    ::aws_smithy_schema::ShapeType::Structure,
   27         -
    "spec",
          27  +
    "Spec",
   28     28   
    0,
   29     29   
);
   30     30   
static JOBMANIFEST_MEMBER_LOCATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   31     31   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobManifest$Location", "com.amazonaws.s3control", "JobManifest"),
   32     32   
    ::aws_smithy_schema::ShapeType::Structure,
   33         -
    "location",
          33  +
    "Location",
   34     34   
    1,
   35     35   
);
   36     36   
static JOBMANIFEST_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   37     37   
    JOBMANIFEST_SCHEMA_ID,
   38     38   
    ::aws_smithy_schema::ShapeType::Structure,
   39     39   
    &[&JOBMANIFEST_MEMBER_SPEC, &JOBMANIFEST_MEMBER_LOCATION],
   40     40   
);
   41     41   
impl JobManifest {
   42     42   
    /// The schema for this shape.
   43     43   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBMANIFEST_SCHEMA;
   44     44   
}
   45     45   
impl ::aws_smithy_schema::serde::SerializableStruct for JobManifest {
   46     46   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   47     47   
    fn serialize_members(
   48     48   
        &self,
   49     49   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   50     50   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   51     51   
        if let Some(ref val) = self.spec {
   52     52   
            ser.write_struct(&JOBMANIFEST_MEMBER_SPEC, val)?;
   53     53   
        }
   54     54   
        if let Some(ref val) = self.location {
   55     55   
            ser.write_struct(&JOBMANIFEST_MEMBER_LOCATION, val)?;
   56     56   
        }
   57     57   
        Ok(())
   58     58   
    }
   59     59   
}
   60     60   
impl JobManifest {
   61     61   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   62         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   63         -
        deserializer: &mut D,
          62  +
    pub fn deserialize(
          63  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   64     64   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   65     65   
        #[allow(unused_variables, unused_mut)]
   66     66   
        let mut builder = Self::builder();
   67     67   
        #[allow(
   68     68   
            unused_variables,
   69     69   
            unreachable_code,
   70     70   
            clippy::single_match,
   71     71   
            clippy::match_single_binding,
   72     72   
            clippy::diverging_sub_expression
   73     73   
        )]
   74         -
        deserializer.read_struct(&JOBMANIFEST_SCHEMA, (), |_, member, deser| {
          74  +
        deserializer.read_struct(&JOBMANIFEST_SCHEMA, &mut |member, deser| {
   75     75   
            match member.member_index() {
   76     76   
                Some(0) => {
   77     77   
                    builder.spec = Some(crate::types::JobManifestSpec::deserialize(deser)?);
   78     78   
                }
   79     79   
                Some(1) => {
   80     80   
                    builder.location = Some(crate::types::JobManifestLocation::deserialize(deser)?);
   81     81   
                }
   82     82   
                _ => {}
   83     83   
            }
   84     84   
            Ok(())
   85     85   
        })?;
   86     86   
        Ok(builder.build())
   87     87   
    }
   88     88   
}
          89  +
impl JobManifest {
          90  +
    /// Deserializes this structure from a body deserializer and HTTP response.
          91  +
    pub fn deserialize_with_response(
          92  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          93  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
          94  +
        _status: u16,
          95  +
        _body: &[u8],
          96  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          97  +
        Self::deserialize(deserializer)
          98  +
    }
          99  +
}
   89    100   
impl JobManifest {
   90    101   
    /// Creates a new builder-style object to manufacture [`JobManifest`](crate::types::JobManifest).
   91    102   
    pub fn builder() -> crate::types::builders::JobManifestBuilder {
   92    103   
        crate::types::builders::JobManifestBuilder::default()
   93    104   
    }
   94    105   
}
   95    106   
   96    107   
/// A builder for [`JobManifest`](crate::types::JobManifest).
   97    108   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   98    109   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_manifest_generator.rs

@@ -9,9 +0,94 @@
   29     29   
    }
   30     30   
    /// Returns true if this is a [`S3JobManifestGenerator`](crate::types::JobManifestGenerator::S3JobManifestGenerator).
   31     31   
    pub fn is_s3_job_manifest_generator(&self) -> bool {
   32     32   
        self.as_s3_job_manifest_generator().is_ok()
   33     33   
    }
   34     34   
    /// Returns true if the enum instance is the `Unknown` variant.
   35     35   
    pub fn is_unknown(&self) -> bool {
   36     36   
        matches!(self, Self::Unknown)
   37     37   
    }
   38     38   
}
          39  +
static JOBMANIFESTGENERATOR_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
          40  +
    "com.amazonaws.s3control#JobManifestGenerator",
          41  +
    "com.amazonaws.s3control",
          42  +
    "JobManifestGenerator",
          43  +
);
          44  +
static JOBMANIFESTGENERATOR_MEMBER_S3JOBMANIFESTGENERATOR: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          45  +
    ::aws_smithy_schema::ShapeId::from_static(
          46  +
        "com.amazonaws.s3control#JobManifestGenerator$S3JobManifestGenerator",
          47  +
        "com.amazonaws.s3control",
          48  +
        "JobManifestGenerator",
          49  +
    ),
          50  +
    ::aws_smithy_schema::ShapeType::Structure,
          51  +
    "S3JobManifestGenerator",
          52  +
    0,
          53  +
);
          54  +
static JOBMANIFESTGENERATOR_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          55  +
    JOBMANIFESTGENERATOR_SCHEMA_ID,
          56  +
    ::aws_smithy_schema::ShapeType::Union,
          57  +
    &[&JOBMANIFESTGENERATOR_MEMBER_S3JOBMANIFESTGENERATOR],
          58  +
);
          59  +
impl JobManifestGenerator {
          60  +
    /// The schema for this shape.
          61  +
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBMANIFESTGENERATOR_SCHEMA;
          62  +
}
          63  +
impl ::aws_smithy_schema::serde::SerializableStruct for JobManifestGenerator {
          64  +
    #[allow(unused_variables, clippy::diverging_sub_expression)]
          65  +
    fn serialize_members(
          66  +
        &self,
          67  +
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
          68  +
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
          69  +
        match self {
          70  +
            Self::S3JobManifestGenerator(val) => {
          71  +
                ser.write_struct(&JOBMANIFESTGENERATOR_MEMBER_S3JOBMANIFESTGENERATOR, val)?;
          72  +
            }
          73  +
            Self::Unknown => return Err(::aws_smithy_schema::serde::SerdeError::custom("cannot serialize unknown union variant")),
          74  +
        }
          75  +
        Ok(())
          76  +
    }
          77  +
}
          78  +
impl JobManifestGenerator {
          79  +
    /// Deserializes this union from a [`ShapeDeserializer`].
          80  +
    pub fn deserialize(
          81  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          82  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          83  +
        let mut result: ::std::option::Option<Self> = ::std::option::Option::None;
          84  +
        #[allow(unused_variables, unreachable_code, clippy::single_match, clippy::match_single_binding)]
          85  +
        deserializer.read_struct(&JOBMANIFESTGENERATOR_SCHEMA, &mut |member, deser| {
          86  +
            result = ::std::option::Option::Some(match member.member_index() {
          87  +
                Some(0) => Self::S3JobManifestGenerator(crate::types::S3JobManifestGenerator::deserialize(deser)?),
          88  +
                _ => Self::Unknown,
          89  +
            });
          90  +
            Ok(())
          91  +
        })?;
          92  +
        result.ok_or_else(|| ::aws_smithy_schema::serde::SerdeError::custom("expected a union variant"))
          93  +
    }
          94  +
}

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_manifest_generator_filter.rs

@@ -52,52 +192,192 @@
   72     72   
    "com.amazonaws.s3control",
   73     73   
    "JobManifestGeneratorFilter",
   74     74   
);
   75     75   
static JOBMANIFESTGENERATORFILTER_MEMBER_ELIGIBLE_FOR_REPLICATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   76     76   
    ::aws_smithy_schema::ShapeId::from_static(
   77     77   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$EligibleForReplication",
   78     78   
        "com.amazonaws.s3control",
   79     79   
        "JobManifestGeneratorFilter",
   80     80   
    ),
   81     81   
    ::aws_smithy_schema::ShapeType::Boolean,
   82         -
    "eligible_for_replication",
          82  +
    "EligibleForReplication",
   83     83   
    0,
   84     84   
);
   85     85   
static JOBMANIFESTGENERATORFILTER_MEMBER_CREATED_AFTER: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   86     86   
    ::aws_smithy_schema::ShapeId::from_static(
   87     87   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$CreatedAfter",
   88     88   
        "com.amazonaws.s3control",
   89     89   
        "JobManifestGeneratorFilter",
   90     90   
    ),
   91     91   
    ::aws_smithy_schema::ShapeType::Timestamp,
   92         -
    "created_after",
          92  +
    "CreatedAfter",
   93     93   
    1,
   94     94   
);
   95     95   
static JOBMANIFESTGENERATORFILTER_MEMBER_CREATED_BEFORE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   96     96   
    ::aws_smithy_schema::ShapeId::from_static(
   97     97   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$CreatedBefore",
   98     98   
        "com.amazonaws.s3control",
   99     99   
        "JobManifestGeneratorFilter",
  100    100   
    ),
  101    101   
    ::aws_smithy_schema::ShapeType::Timestamp,
  102         -
    "created_before",
         102  +
    "CreatedBefore",
  103    103   
    2,
  104    104   
);
  105    105   
static JOBMANIFESTGENERATORFILTER_MEMBER_OBJECT_REPLICATION_STATUSES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  106    106   
    ::aws_smithy_schema::ShapeId::from_static(
  107    107   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$ObjectReplicationStatuses",
  108    108   
        "com.amazonaws.s3control",
  109    109   
        "JobManifestGeneratorFilter",
  110    110   
    ),
  111    111   
    ::aws_smithy_schema::ShapeType::List,
  112         -
    "object_replication_statuses",
         112  +
    "ObjectReplicationStatuses",
  113    113   
    3,
  114    114   
);
  115    115   
static JOBMANIFESTGENERATORFILTER_MEMBER_KEY_NAME_CONSTRAINT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  116    116   
    ::aws_smithy_schema::ShapeId::from_static(
  117    117   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$KeyNameConstraint",
  118    118   
        "com.amazonaws.s3control",
  119    119   
        "JobManifestGeneratorFilter",
  120    120   
    ),
  121    121   
    ::aws_smithy_schema::ShapeType::Structure,
  122         -
    "key_name_constraint",
         122  +
    "KeyNameConstraint",
  123    123   
    4,
  124    124   
);
  125    125   
static JOBMANIFESTGENERATORFILTER_MEMBER_OBJECT_SIZE_GREATER_THAN_BYTES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  126    126   
    ::aws_smithy_schema::ShapeId::from_static(
  127    127   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$ObjectSizeGreaterThanBytes",
  128    128   
        "com.amazonaws.s3control",
  129    129   
        "JobManifestGeneratorFilter",
  130    130   
    ),
  131    131   
    ::aws_smithy_schema::ShapeType::Long,
  132         -
    "object_size_greater_than_bytes",
         132  +
    "ObjectSizeGreaterThanBytes",
  133    133   
    5,
  134    134   
);
  135    135   
static JOBMANIFESTGENERATORFILTER_MEMBER_OBJECT_SIZE_LESS_THAN_BYTES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  136    136   
    ::aws_smithy_schema::ShapeId::from_static(
  137    137   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$ObjectSizeLessThanBytes",
  138    138   
        "com.amazonaws.s3control",
  139    139   
        "JobManifestGeneratorFilter",
  140    140   
    ),
  141    141   
    ::aws_smithy_schema::ShapeType::Long,
  142         -
    "object_size_less_than_bytes",
         142  +
    "ObjectSizeLessThanBytes",
  143    143   
    6,
  144    144   
);
  145    145   
static JOBMANIFESTGENERATORFILTER_MEMBER_MATCH_ANY_STORAGE_CLASS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  146    146   
    ::aws_smithy_schema::ShapeId::from_static(
  147    147   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$MatchAnyStorageClass",
  148    148   
        "com.amazonaws.s3control",
  149    149   
        "JobManifestGeneratorFilter",
  150    150   
    ),
  151    151   
    ::aws_smithy_schema::ShapeType::List,
  152         -
    "match_any_storage_class",
         152  +
    "MatchAnyStorageClass",
  153    153   
    7,
  154    154   
);
  155    155   
static JOBMANIFESTGENERATORFILTER_MEMBER_MATCH_ANY_OBJECT_ENCRYPTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  156    156   
    ::aws_smithy_schema::ShapeId::from_static(
  157    157   
        "com.amazonaws.s3control#JobManifestGeneratorFilter$MatchAnyObjectEncryption",
  158    158   
        "com.amazonaws.s3control",
  159    159   
        "JobManifestGeneratorFilter",
  160    160   
    ),
  161    161   
    ::aws_smithy_schema::ShapeType::List,
  162         -
    "match_any_object_encryption",
         162  +
    "MatchAnyObjectEncryption",
  163    163   
    8,
  164    164   
);
  165    165   
static JOBMANIFESTGENERATORFILTER_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  166    166   
    JOBMANIFESTGENERATORFILTER_SCHEMA_ID,
  167    167   
    ::aws_smithy_schema::ShapeType::Structure,
  168    168   
    &[
  169    169   
        &JOBMANIFESTGENERATORFILTER_MEMBER_ELIGIBLE_FOR_REPLICATION,
  170    170   
        &JOBMANIFESTGENERATORFILTER_MEMBER_CREATED_AFTER,
  171    171   
        &JOBMANIFESTGENERATORFILTER_MEMBER_CREATED_BEFORE,
  172    172   
        &JOBMANIFESTGENERATORFILTER_MEMBER_OBJECT_REPLICATION_STATUSES,
@@ -205,205 +353,355 @@
  225    225   
                    }
  226    226   
                    Ok(())
  227    227   
                },
  228    228   
            )?;
  229    229   
        }
  230    230   
        if let Some(ref val) = self.match_any_object_encryption {
  231    231   
            ser.write_list(
  232    232   
                &JOBMANIFESTGENERATORFILTER_MEMBER_MATCH_ANY_OBJECT_ENCRYPTION,
  233    233   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  234    234   
                    for item in val {
  235         -
                        todo!("schema: unsupported list element type");
         235  +
                        ser.write_struct(crate::types::ObjectEncryptionFilter::SCHEMA, item)?;
  236    236   
                    }
  237    237   
                    Ok(())
  238    238   
                },
  239    239   
            )?;
  240    240   
        }
  241    241   
        Ok(())
  242    242   
    }
  243    243   
}
  244    244   
impl JobManifestGeneratorFilter {
  245    245   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  246         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  247         -
        deserializer: &mut D,
         246  +
    pub fn deserialize(
         247  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  248    248   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  249    249   
        #[allow(unused_variables, unused_mut)]
  250    250   
        let mut builder = Self::builder();
  251    251   
        #[allow(
  252    252   
            unused_variables,
  253    253   
            unreachable_code,
  254    254   
            clippy::single_match,
  255    255   
            clippy::match_single_binding,
  256    256   
            clippy::diverging_sub_expression
  257    257   
        )]
  258         -
        deserializer.read_struct(&JOBMANIFESTGENERATORFILTER_SCHEMA, (), |_, member, deser| {
         258  +
        deserializer.read_struct(&JOBMANIFESTGENERATORFILTER_SCHEMA, &mut |member, deser| {
  259    259   
            match member.member_index() {
  260    260   
                Some(0) => {
  261    261   
                    builder.eligible_for_replication = Some(deser.read_boolean(member)?);
  262    262   
                }
  263    263   
                Some(1) => {
  264    264   
                    builder.created_after = Some(deser.read_timestamp(member)?);
  265    265   
                }
  266    266   
                Some(2) => {
  267    267   
                    builder.created_before = Some(deser.read_timestamp(member)?);
  268    268   
                }
  269    269   
                Some(3) => {
  270    270   
                    builder.object_replication_statuses = Some({
  271         -
                        let container = if let Some(cap) = deser.container_size() {
  272         -
                            Vec::with_capacity(cap)
  273         -
                        } else {
  274         -
                            Vec::new()
  275         -
                        };
  276         -
                        deser.read_list(member, container, |mut list, deser| {
  277         -
                            list.push(crate::types::ReplicationStatus::from(deser.read_string(member)?.as_str()));
  278         -
                            Ok(list)
  279         -
                        })?
         271  +
                        let mut container = Vec::new();
         272  +
                        deser.read_list(member, &mut |deser| {
         273  +
                            container.push(crate::types::ReplicationStatus::from(deser.read_string(member)?.as_str()));
         274  +
                            Ok(())
         275  +
                        })?;
         276  +
                        container
  280    277   
                    });
  281    278   
                }
  282    279   
                Some(4) => {
  283    280   
                    builder.key_name_constraint = Some(crate::types::KeyNameConstraint::deserialize(deser)?);
  284    281   
                }
  285    282   
                Some(5) => {
  286    283   
                    builder.object_size_greater_than_bytes = Some(deser.read_long(member)?);
  287    284   
                }
  288    285   
                Some(6) => {
  289    286   
                    builder.object_size_less_than_bytes = Some(deser.read_long(member)?);
  290    287   
                }
  291    288   
                Some(7) => {
  292    289   
                    builder.match_any_storage_class = Some({
  293         -
                        let container = if let Some(cap) = deser.container_size() {
  294         -
                            Vec::with_capacity(cap)
  295         -
                        } else {
  296         -
                            Vec::new()
  297         -
                        };
  298         -
                        deser.read_list(member, container, |mut list, deser| {
  299         -
                            list.push(crate::types::S3StorageClass::from(deser.read_string(member)?.as_str()));
  300         -
                            Ok(list)
  301         -
                        })?
         290  +
                        let mut container = Vec::new();
         291  +
                        deser.read_list(member, &mut |deser| {
         292  +
                            container.push(crate::types::S3StorageClass::from(deser.read_string(member)?.as_str()));
         293  +
                            Ok(())
         294  +
                        })?;
         295  +
                        container
  302    296   
                    });
  303    297   
                }
  304    298   
                Some(8) => {
  305    299   
                    builder.match_any_object_encryption = Some({
  306         -
                        let container = if let Some(cap) = deser.container_size() {
  307         -
                            Vec::with_capacity(cap)
  308         -
                        } else {
  309         -
                            Vec::new()
  310         -
                        };
  311         -
                        deser.read_list(member, container, |mut list, deser| {
  312         -
                            list.push(todo!("deserialize nested aggregate"));
  313         -
                            Ok(list)
  314         -
                        })?
         300  +
                        let mut container = Vec::new();
         301  +
                        deser.read_list(member, &mut |deser| {
         302  +
                            container.push(crate::types::ObjectEncryptionFilter::deserialize(deser)?);
         303  +
                            Ok(())
         304  +
                        })?;
         305  +
                        container
  315    306   
                    });
  316    307   
                }
  317    308   
                _ => {}
  318    309   
            }
  319    310   
            Ok(())
  320    311   
        })?;
  321    312   
        Ok(builder.build())
  322    313   
    }
  323    314   
}
         315  +
impl JobManifestGeneratorFilter {
         316  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         317  +
    pub fn deserialize_with_response(
         318  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         319  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         320  +
        _status: u16,
         321  +
        _body: &[u8],
         322  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         323  +
        Self::deserialize(deserializer)
         324  +
    }
         325  +
}
  324    326   
impl JobManifestGeneratorFilter {
  325    327   
    /// Creates a new builder-style object to manufacture [`JobManifestGeneratorFilter`](crate::types::JobManifestGeneratorFilter).
  326    328   
    pub fn builder() -> crate::types::builders::JobManifestGeneratorFilterBuilder {
  327    329   
        crate::types::builders::JobManifestGeneratorFilterBuilder::default()
  328    330   
    }
  329    331   
}
  330    332   
  331    333   
/// A builder for [`JobManifestGeneratorFilter`](crate::types::JobManifestGeneratorFilter).
  332    334   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  333    335   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_manifest_location.rs

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

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_manifest_spec.rs

@@ -3,3 +149,157 @@
   23     23   
}
   24     24   
static JOBMANIFESTSPEC_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   25     25   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobManifestSpec", "com.amazonaws.s3control", "JobManifestSpec");
   26     26   
static JOBMANIFESTSPEC_MEMBER_FORMAT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   27     27   
    ::aws_smithy_schema::ShapeId::from_static(
   28     28   
        "com.amazonaws.s3control#JobManifestSpec$Format",
   29     29   
        "com.amazonaws.s3control",
   30     30   
        "JobManifestSpec",
   31     31   
    ),
   32     32   
    ::aws_smithy_schema::ShapeType::String,
   33         -
    "format",
          33  +
    "Format",
   34     34   
    0,
   35     35   
);
   36     36   
static JOBMANIFESTSPEC_MEMBER_FIELDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   37     37   
    ::aws_smithy_schema::ShapeId::from_static(
   38     38   
        "com.amazonaws.s3control#JobManifestSpec$Fields",
   39     39   
        "com.amazonaws.s3control",
   40     40   
        "JobManifestSpec",
   41     41   
    ),
   42     42   
    ::aws_smithy_schema::ShapeType::List,
   43         -
    "fields",
          43  +
    "Fields",
   44     44   
    1,
   45     45   
);
   46     46   
static JOBMANIFESTSPEC_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   47     47   
    JOBMANIFESTSPEC_SCHEMA_ID,
   48     48   
    ::aws_smithy_schema::ShapeType::Structure,
   49     49   
    &[&JOBMANIFESTSPEC_MEMBER_FORMAT, &JOBMANIFESTSPEC_MEMBER_FIELDS],
   50     50   
);
   51     51   
impl JobManifestSpec {
   52     52   
    /// The schema for this shape.
   53     53   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBMANIFESTSPEC_SCHEMA;
   54     54   
}
   55     55   
impl ::aws_smithy_schema::serde::SerializableStruct for JobManifestSpec {
   56     56   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   57     57   
    fn serialize_members(
   58     58   
        &self,
   59     59   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   60     60   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   61     61   
        {
   62     62   
            let val = &self.format;
   63     63   
            ser.write_string(&JOBMANIFESTSPEC_MEMBER_FORMAT, val.as_str())?;
   64     64   
        }
   65     65   
        if let Some(ref val) = self.fields {
   66     66   
            ser.write_list(
   67     67   
                &JOBMANIFESTSPEC_MEMBER_FIELDS,
   68     68   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   69     69   
                    for item in val {
   70     70   
                        ser.write_string(&aws_smithy_schema::prelude::STRING, item.as_str())?;
   71     71   
                    }
   72     72   
                    Ok(())
   73     73   
                },
   74     74   
            )?;
   75     75   
        }
   76     76   
        Ok(())
   77     77   
    }
   78     78   
}
   79     79   
impl JobManifestSpec {
   80     80   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   81         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   82         -
        deserializer: &mut D,
          81  +
    pub fn deserialize(
          82  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   83     83   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   84     84   
        #[allow(unused_variables, unused_mut)]
   85     85   
        let mut builder = Self::builder();
   86     86   
        #[allow(
   87     87   
            unused_variables,
   88     88   
            unreachable_code,
   89     89   
            clippy::single_match,
   90     90   
            clippy::match_single_binding,
   91     91   
            clippy::diverging_sub_expression
   92     92   
        )]
   93         -
        deserializer.read_struct(&JOBMANIFESTSPEC_SCHEMA, (), |_, member, deser| {
          93  +
        deserializer.read_struct(&JOBMANIFESTSPEC_SCHEMA, &mut |member, deser| {
   94     94   
            match member.member_index() {
   95     95   
                Some(0) => {
   96     96   
                    builder.format = Some(crate::types::JobManifestFormat::from(deser.read_string(member)?.as_str()));
   97     97   
                }
   98     98   
                Some(1) => {
   99     99   
                    builder.fields = Some({
  100         -
                        let container = if let Some(cap) = deser.container_size() {
  101         -
                            Vec::with_capacity(cap)
  102         -
                        } else {
  103         -
                            Vec::new()
  104         -
                        };
  105         -
                        deser.read_list(member, container, |mut list, deser| {
  106         -
                            list.push(crate::types::JobManifestFieldName::from(deser.read_string(member)?.as_str()));
  107         -
                            Ok(list)
  108         -
                        })?
         100  +
                        let mut container = Vec::new();
         101  +
                        deser.read_list(member, &mut |deser| {
         102  +
                            container.push(crate::types::JobManifestFieldName::from(deser.read_string(member)?.as_str()));
         103  +
                            Ok(())
         104  +
                        })?;
         105  +
                        container
  109    106   
                    });
  110    107   
                }
  111    108   
                _ => {}
  112    109   
            }
  113    110   
            Ok(())
  114    111   
        })?;
  115    112   
        builder
  116    113   
            .build()
  117    114   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  118    115   
    }
  119    116   
}
         117  +
impl JobManifestSpec {
         118  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         119  +
    pub fn deserialize_with_response(
         120  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         121  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         122  +
        _status: u16,
         123  +
        _body: &[u8],
         124  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         125  +
        Self::deserialize(deserializer)
         126  +
    }
         127  +
}
  120    128   
impl JobManifestSpec {
  121    129   
    /// Creates a new builder-style object to manufacture [`JobManifestSpec`](crate::types::JobManifestSpec).
  122    130   
    pub fn builder() -> crate::types::builders::JobManifestSpecBuilder {
  123    131   
        crate::types::builders::JobManifestSpecBuilder::default()
  124    132   
    }
  125    133   
}
  126    134   
  127    135   
/// A builder for [`JobManifestSpec`](crate::types::JobManifestSpec).
  128    136   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  129    137   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_operation.rs

@@ -77,77 +227,227 @@
   97     97   
}
   98     98   
static JOBOPERATION_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   99     99   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobOperation", "com.amazonaws.s3control", "JobOperation");
  100    100   
static JOBOPERATION_MEMBER_LAMBDA_INVOKE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  101    101   
    ::aws_smithy_schema::ShapeId::from_static(
  102    102   
        "com.amazonaws.s3control#JobOperation$LambdaInvoke",
  103    103   
        "com.amazonaws.s3control",
  104    104   
        "JobOperation",
  105    105   
    ),
  106    106   
    ::aws_smithy_schema::ShapeType::Structure,
  107         -
    "lambda_invoke",
         107  +
    "LambdaInvoke",
  108    108   
    0,
  109    109   
);
  110    110   
static JOBOPERATION_MEMBER_S3_PUT_OBJECT_COPY: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  111    111   
    ::aws_smithy_schema::ShapeId::from_static(
  112    112   
        "com.amazonaws.s3control#JobOperation$S3PutObjectCopy",
  113    113   
        "com.amazonaws.s3control",
  114    114   
        "JobOperation",
  115    115   
    ),
  116    116   
    ::aws_smithy_schema::ShapeType::Structure,
  117         -
    "s3_put_object_copy",
         117  +
    "S3PutObjectCopy",
  118    118   
    1,
  119    119   
);
  120    120   
static JOBOPERATION_MEMBER_S3_PUT_OBJECT_ACL: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  121    121   
    ::aws_smithy_schema::ShapeId::from_static(
  122    122   
        "com.amazonaws.s3control#JobOperation$S3PutObjectAcl",
  123    123   
        "com.amazonaws.s3control",
  124    124   
        "JobOperation",
  125    125   
    ),
  126    126   
    ::aws_smithy_schema::ShapeType::Structure,
  127         -
    "s3_put_object_acl",
         127  +
    "S3PutObjectAcl",
  128    128   
    2,
  129    129   
);
  130    130   
static JOBOPERATION_MEMBER_S3_PUT_OBJECT_TAGGING: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  131    131   
    ::aws_smithy_schema::ShapeId::from_static(
  132    132   
        "com.amazonaws.s3control#JobOperation$S3PutObjectTagging",
  133    133   
        "com.amazonaws.s3control",
  134    134   
        "JobOperation",
  135    135   
    ),
  136    136   
    ::aws_smithy_schema::ShapeType::Structure,
  137         -
    "s3_put_object_tagging",
         137  +
    "S3PutObjectTagging",
  138    138   
    3,
  139    139   
);
  140    140   
static JOBOPERATION_MEMBER_S3_DELETE_OBJECT_TAGGING: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  141    141   
    ::aws_smithy_schema::ShapeId::from_static(
  142    142   
        "com.amazonaws.s3control#JobOperation$S3DeleteObjectTagging",
  143    143   
        "com.amazonaws.s3control",
  144    144   
        "JobOperation",
  145    145   
    ),
  146    146   
    ::aws_smithy_schema::ShapeType::Structure,
  147         -
    "s3_delete_object_tagging",
         147  +
    "S3DeleteObjectTagging",
  148    148   
    4,
  149    149   
);
  150    150   
static JOBOPERATION_MEMBER_S3_INITIATE_RESTORE_OBJECT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  151    151   
    ::aws_smithy_schema::ShapeId::from_static(
  152    152   
        "com.amazonaws.s3control#JobOperation$S3InitiateRestoreObject",
  153    153   
        "com.amazonaws.s3control",
  154    154   
        "JobOperation",
  155    155   
    ),
  156    156   
    ::aws_smithy_schema::ShapeType::Structure,
  157         -
    "s3_initiate_restore_object",
         157  +
    "S3InitiateRestoreObject",
  158    158   
    5,
  159    159   
);
  160    160   
static JOBOPERATION_MEMBER_S3_PUT_OBJECT_LEGAL_HOLD: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  161    161   
    ::aws_smithy_schema::ShapeId::from_static(
  162    162   
        "com.amazonaws.s3control#JobOperation$S3PutObjectLegalHold",
  163    163   
        "com.amazonaws.s3control",
  164    164   
        "JobOperation",
  165    165   
    ),
  166    166   
    ::aws_smithy_schema::ShapeType::Structure,
  167         -
    "s3_put_object_legal_hold",
         167  +
    "S3PutObjectLegalHold",
  168    168   
    6,
  169    169   
);
  170    170   
static JOBOPERATION_MEMBER_S3_PUT_OBJECT_RETENTION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  171    171   
    ::aws_smithy_schema::ShapeId::from_static(
  172    172   
        "com.amazonaws.s3control#JobOperation$S3PutObjectRetention",
  173    173   
        "com.amazonaws.s3control",
  174    174   
        "JobOperation",
  175    175   
    ),
  176    176   
    ::aws_smithy_schema::ShapeType::Structure,
  177         -
    "s3_put_object_retention",
         177  +
    "S3PutObjectRetention",
  178    178   
    7,
  179    179   
);
  180    180   
static JOBOPERATION_MEMBER_S3_REPLICATE_OBJECT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  181    181   
    ::aws_smithy_schema::ShapeId::from_static(
  182    182   
        "com.amazonaws.s3control#JobOperation$S3ReplicateObject",
  183    183   
        "com.amazonaws.s3control",
  184    184   
        "JobOperation",
  185    185   
    ),
  186    186   
    ::aws_smithy_schema::ShapeType::Structure,
  187         -
    "s3_replicate_object",
         187  +
    "S3ReplicateObject",
  188    188   
    8,
  189    189   
);
  190    190   
static JOBOPERATION_MEMBER_S3_COMPUTE_OBJECT_CHECKSUM: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  191    191   
    ::aws_smithy_schema::ShapeId::from_static(
  192    192   
        "com.amazonaws.s3control#JobOperation$S3ComputeObjectChecksum",
  193    193   
        "com.amazonaws.s3control",
  194    194   
        "JobOperation",
  195    195   
    ),
  196    196   
    ::aws_smithy_schema::ShapeType::Structure,
  197         -
    "s3_compute_object_checksum",
         197  +
    "S3ComputeObjectChecksum",
  198    198   
    9,
  199    199   
);
  200    200   
static JOBOPERATION_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  201    201   
    JOBOPERATION_SCHEMA_ID,
  202    202   
    ::aws_smithy_schema::ShapeType::Structure,
  203    203   
    &[
  204    204   
        &JOBOPERATION_MEMBER_LAMBDA_INVOKE,
  205    205   
        &JOBOPERATION_MEMBER_S3_PUT_OBJECT_COPY,
  206    206   
        &JOBOPERATION_MEMBER_S3_PUT_OBJECT_ACL,
  207    207   
        &JOBOPERATION_MEMBER_S3_PUT_OBJECT_TAGGING,
@@ -231,231 +341,352 @@
  251    251   
            ser.write_struct(&JOBOPERATION_MEMBER_S3_REPLICATE_OBJECT, val)?;
  252    252   
        }
  253    253   
        if let Some(ref val) = self.s3_compute_object_checksum {
  254    254   
            ser.write_struct(&JOBOPERATION_MEMBER_S3_COMPUTE_OBJECT_CHECKSUM, val)?;
  255    255   
        }
  256    256   
        Ok(())
  257    257   
    }
  258    258   
}
  259    259   
impl JobOperation {
  260    260   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  261         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  262         -
        deserializer: &mut D,
         261  +
    pub fn deserialize(
         262  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  263    263   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  264    264   
        #[allow(unused_variables, unused_mut)]
  265    265   
        let mut builder = Self::builder();
  266    266   
        #[allow(
  267    267   
            unused_variables,
  268    268   
            unreachable_code,
  269    269   
            clippy::single_match,
  270    270   
            clippy::match_single_binding,
  271    271   
            clippy::diverging_sub_expression
  272    272   
        )]
  273         -
        deserializer.read_struct(&JOBOPERATION_SCHEMA, (), |_, member, deser| {
         273  +
        deserializer.read_struct(&JOBOPERATION_SCHEMA, &mut |member, deser| {
  274    274   
            match member.member_index() {
  275    275   
                Some(0) => {
  276    276   
                    builder.lambda_invoke = Some(crate::types::LambdaInvokeOperation::deserialize(deser)?);
  277    277   
                }
  278    278   
                Some(1) => {
  279    279   
                    builder.s3_put_object_copy = Some(crate::types::S3CopyObjectOperation::deserialize(deser)?);
  280    280   
                }
  281    281   
                Some(2) => {
  282    282   
                    builder.s3_put_object_acl = Some(crate::types::S3SetObjectAclOperation::deserialize(deser)?);
  283    283   
                }
  284    284   
                Some(3) => {
  285    285   
                    builder.s3_put_object_tagging = Some(crate::types::S3SetObjectTaggingOperation::deserialize(deser)?);
  286    286   
                }
  287    287   
                Some(4) => {
  288    288   
                    builder.s3_delete_object_tagging = Some(crate::types::S3DeleteObjectTaggingOperation::deserialize(deser)?);
  289    289   
                }
  290    290   
                Some(5) => {
  291    291   
                    builder.s3_initiate_restore_object = Some(crate::types::S3InitiateRestoreObjectOperation::deserialize(deser)?);
  292    292   
                }
  293    293   
                Some(6) => {
  294    294   
                    builder.s3_put_object_legal_hold = Some(crate::types::S3SetObjectLegalHoldOperation::deserialize(deser)?);
  295    295   
                }
  296    296   
                Some(7) => {
  297    297   
                    builder.s3_put_object_retention = Some(crate::types::S3SetObjectRetentionOperation::deserialize(deser)?);
  298    298   
                }
  299    299   
                Some(8) => {
  300    300   
                    builder.s3_replicate_object = Some(crate::types::S3ReplicateObjectOperation::deserialize(deser)?);
  301    301   
                }
  302    302   
                Some(9) => {
  303    303   
                    builder.s3_compute_object_checksum = Some(crate::types::S3ComputeObjectChecksumOperation::deserialize(deser)?);
  304    304   
                }
  305    305   
                _ => {}
  306    306   
            }
  307    307   
            Ok(())
  308    308   
        })?;
  309    309   
        Ok(builder.build())
  310    310   
    }
  311    311   
}
         312  +
impl JobOperation {
         313  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         314  +
    pub fn deserialize_with_response(
         315  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         316  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         317  +
        _status: u16,
         318  +
        _body: &[u8],
         319  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         320  +
        Self::deserialize(deserializer)
         321  +
    }
         322  +
}
  312    323   
impl JobOperation {
  313    324   
    /// Creates a new builder-style object to manufacture [`JobOperation`](crate::types::JobOperation).
  314    325   
    pub fn builder() -> crate::types::builders::JobOperationBuilder {
  315    326   
        crate::types::builders::JobOperationBuilder::default()
  316    327   
    }
  317    328   
}
  318    329   
  319    330   
/// A builder for [`JobOperation`](crate::types::JobOperation).
  320    331   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  321    332   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_progress_summary.rs

@@ -16,16 +178,189 @@
   36     36   
    "com.amazonaws.s3control",
   37     37   
    "JobProgressSummary",
   38     38   
);
   39     39   
static JOBPROGRESSSUMMARY_MEMBER_TOTAL_NUMBER_OF_TASKS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   40     40   
    ::aws_smithy_schema::ShapeId::from_static(
   41     41   
        "com.amazonaws.s3control#JobProgressSummary$TotalNumberOfTasks",
   42     42   
        "com.amazonaws.s3control",
   43     43   
        "JobProgressSummary",
   44     44   
    ),
   45     45   
    ::aws_smithy_schema::ShapeType::Long,
   46         -
    "total_number_of_tasks",
          46  +
    "TotalNumberOfTasks",
   47     47   
    0,
   48     48   
);
   49     49   
static JOBPROGRESSSUMMARY_MEMBER_NUMBER_OF_TASKS_SUCCEEDED: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   50     50   
    ::aws_smithy_schema::ShapeId::from_static(
   51     51   
        "com.amazonaws.s3control#JobProgressSummary$NumberOfTasksSucceeded",
   52     52   
        "com.amazonaws.s3control",
   53     53   
        "JobProgressSummary",
   54     54   
    ),
   55     55   
    ::aws_smithy_schema::ShapeType::Long,
   56         -
    "number_of_tasks_succeeded",
          56  +
    "NumberOfTasksSucceeded",
   57     57   
    1,
   58     58   
);
   59     59   
static JOBPROGRESSSUMMARY_MEMBER_NUMBER_OF_TASKS_FAILED: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   60     60   
    ::aws_smithy_schema::ShapeId::from_static(
   61     61   
        "com.amazonaws.s3control#JobProgressSummary$NumberOfTasksFailed",
   62     62   
        "com.amazonaws.s3control",
   63     63   
        "JobProgressSummary",
   64     64   
    ),
   65     65   
    ::aws_smithy_schema::ShapeType::Long,
   66         -
    "number_of_tasks_failed",
          66  +
    "NumberOfTasksFailed",
   67     67   
    2,
   68     68   
);
   69     69   
static JOBPROGRESSSUMMARY_MEMBER_TIMERS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   70     70   
    ::aws_smithy_schema::ShapeId::from_static(
   71     71   
        "com.amazonaws.s3control#JobProgressSummary$Timers",
   72     72   
        "com.amazonaws.s3control",
   73     73   
        "JobProgressSummary",
   74     74   
    ),
   75     75   
    ::aws_smithy_schema::ShapeType::Structure,
   76         -
    "timers",
          76  +
    "Timers",
   77     77   
    3,
   78     78   
);
   79     79   
static JOBPROGRESSSUMMARY_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   80     80   
    JOBPROGRESSSUMMARY_SCHEMA_ID,
   81     81   
    ::aws_smithy_schema::ShapeType::Structure,
   82     82   
    &[
   83     83   
        &JOBPROGRESSSUMMARY_MEMBER_TOTAL_NUMBER_OF_TASKS,
   84     84   
        &JOBPROGRESSSUMMARY_MEMBER_NUMBER_OF_TASKS_SUCCEEDED,
   85     85   
        &JOBPROGRESSSUMMARY_MEMBER_NUMBER_OF_TASKS_FAILED,
   86     86   
        &JOBPROGRESSSUMMARY_MEMBER_TIMERS,
   87     87   
    ],
   88     88   
);
   89     89   
impl JobProgressSummary {
   90     90   
    /// The schema for this shape.
   91     91   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBPROGRESSSUMMARY_SCHEMA;
   92     92   
}
   93     93   
impl ::aws_smithy_schema::serde::SerializableStruct for JobProgressSummary {
   94     94   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   95     95   
    fn serialize_members(
   96     96   
        &self,
   97     97   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   98     98   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   99     99   
        if let Some(ref val) = self.total_number_of_tasks {
  100    100   
            ser.write_long(&JOBPROGRESSSUMMARY_MEMBER_TOTAL_NUMBER_OF_TASKS, *val)?;
  101    101   
        }
  102    102   
        if let Some(ref val) = self.number_of_tasks_succeeded {
  103    103   
            ser.write_long(&JOBPROGRESSSUMMARY_MEMBER_NUMBER_OF_TASKS_SUCCEEDED, *val)?;
  104    104   
        }
  105    105   
        if let Some(ref val) = self.number_of_tasks_failed {
  106    106   
            ser.write_long(&JOBPROGRESSSUMMARY_MEMBER_NUMBER_OF_TASKS_FAILED, *val)?;
  107    107   
        }
  108    108   
        if let Some(ref val) = self.timers {
  109    109   
            ser.write_struct(&JOBPROGRESSSUMMARY_MEMBER_TIMERS, val)?;
  110    110   
        }
  111    111   
        Ok(())
  112    112   
    }
  113    113   
}
  114    114   
impl JobProgressSummary {
  115    115   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  116         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  117         -
        deserializer: &mut D,
         116  +
    pub fn deserialize(
         117  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  118    118   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  119    119   
        #[allow(unused_variables, unused_mut)]
  120    120   
        let mut builder = Self::builder();
  121    121   
        #[allow(
  122    122   
            unused_variables,
  123    123   
            unreachable_code,
  124    124   
            clippy::single_match,
  125    125   
            clippy::match_single_binding,
  126    126   
            clippy::diverging_sub_expression
  127    127   
        )]
  128         -
        deserializer.read_struct(&JOBPROGRESSSUMMARY_SCHEMA, (), |_, member, deser| {
         128  +
        deserializer.read_struct(&JOBPROGRESSSUMMARY_SCHEMA, &mut |member, deser| {
  129    129   
            match member.member_index() {
  130    130   
                Some(0) => {
  131    131   
                    builder.total_number_of_tasks = Some(deser.read_long(member)?);
  132    132   
                }
  133    133   
                Some(1) => {
  134    134   
                    builder.number_of_tasks_succeeded = Some(deser.read_long(member)?);
  135    135   
                }
  136    136   
                Some(2) => {
  137    137   
                    builder.number_of_tasks_failed = Some(deser.read_long(member)?);
  138    138   
                }
  139    139   
                Some(3) => {
  140    140   
                    builder.timers = Some(crate::types::JobTimers::deserialize(deser)?);
  141    141   
                }
  142    142   
                _ => {}
  143    143   
            }
  144    144   
            Ok(())
  145    145   
        })?;
  146    146   
        Ok(builder.build())
  147    147   
    }
  148    148   
}
         149  +
impl JobProgressSummary {
         150  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         151  +
    pub fn deserialize_with_response(
         152  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         153  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         154  +
        _status: u16,
         155  +
        _body: &[u8],
         156  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         157  +
        Self::deserialize(deserializer)
         158  +
    }
         159  +
}
  149    160   
impl JobProgressSummary {
  150    161   
    /// Creates a new builder-style object to manufacture [`JobProgressSummary`](crate::types::JobProgressSummary).
  151    162   
    pub fn builder() -> crate::types::builders::JobProgressSummaryBuilder {
  152    163   
        crate::types::builders::JobProgressSummaryBuilder::default()
  153    164   
    }
  154    165   
}
  155    166   
  156    167   
/// A builder for [`JobProgressSummary`](crate::types::JobProgressSummary).
  157    168   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  158    169   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_report.rs

@@ -35,35 +216,227 @@
   55     55   
    /// <p>Lists the Amazon Web Services account ID that owns the target bucket, where the completion report is received.</p>
   56     56   
    pub fn expected_bucket_owner(&self) -> ::std::option::Option<&str> {
   57     57   
        self.expected_bucket_owner.as_deref()
   58     58   
    }
   59     59   
}
   60     60   
static JOBREPORT_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   61     61   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobReport", "com.amazonaws.s3control", "JobReport");
   62     62   
static JOBREPORT_MEMBER_BUCKET: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   63     63   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobReport$Bucket", "com.amazonaws.s3control", "JobReport"),
   64     64   
    ::aws_smithy_schema::ShapeType::String,
   65         -
    "bucket",
          65  +
    "Bucket",
   66     66   
    0,
   67     67   
);
   68     68   
static JOBREPORT_MEMBER_FORMAT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   69     69   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobReport$Format", "com.amazonaws.s3control", "JobReport"),
   70     70   
    ::aws_smithy_schema::ShapeType::String,
   71         -
    "format",
          71  +
    "Format",
   72     72   
    1,
   73     73   
);
   74     74   
static JOBREPORT_MEMBER_ENABLED: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   75     75   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobReport$Enabled", "com.amazonaws.s3control", "JobReport"),
   76     76   
    ::aws_smithy_schema::ShapeType::Boolean,
   77         -
    "enabled",
          77  +
    "Enabled",
   78     78   
    2,
   79     79   
);
   80     80   
static JOBREPORT_MEMBER_PREFIX: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   81     81   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobReport$Prefix", "com.amazonaws.s3control", "JobReport"),
   82     82   
    ::aws_smithy_schema::ShapeType::String,
   83         -
    "prefix",
          83  +
    "Prefix",
   84     84   
    3,
   85     85   
);
   86     86   
static JOBREPORT_MEMBER_REPORT_SCOPE: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   87     87   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#JobReport$ReportScope", "com.amazonaws.s3control", "JobReport"),
   88     88   
    ::aws_smithy_schema::ShapeType::String,
   89         -
    "report_scope",
          89  +
    "ReportScope",
   90     90   
    4,
   91     91   
);
   92     92   
static JOBREPORT_MEMBER_EXPECTED_BUCKET_OWNER: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   93     93   
    ::aws_smithy_schema::ShapeId::from_static(
   94     94   
        "com.amazonaws.s3control#JobReport$ExpectedBucketOwner",
   95     95   
        "com.amazonaws.s3control",
   96     96   
        "JobReport",
   97     97   
    ),
   98     98   
    ::aws_smithy_schema::ShapeType::String,
   99         -
    "expected_bucket_owner",
          99  +
    "ExpectedBucketOwner",
  100    100   
    5,
  101    101   
);
  102    102   
static JOBREPORT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  103    103   
    JOBREPORT_SCHEMA_ID,
  104    104   
    ::aws_smithy_schema::ShapeType::Structure,
  105    105   
    &[
  106    106   
        &JOBREPORT_MEMBER_BUCKET,
  107    107   
        &JOBREPORT_MEMBER_FORMAT,
  108    108   
        &JOBREPORT_MEMBER_ENABLED,
  109    109   
        &JOBREPORT_MEMBER_PREFIX,
  110    110   
        &JOBREPORT_MEMBER_REPORT_SCOPE,
  111    111   
        &JOBREPORT_MEMBER_EXPECTED_BUCKET_OWNER,
  112    112   
    ],
  113    113   
);
  114    114   
impl JobReport {
  115    115   
    /// The schema for this shape.
  116    116   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &JOBREPORT_SCHEMA;
  117    117   
}
  118    118   
impl ::aws_smithy_schema::serde::SerializableStruct for JobReport {
  119    119   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
  120    120   
    fn serialize_members(
  121    121   
        &self,
  122    122   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
  123    123   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
  124    124   
        if let Some(ref val) = self.bucket {
  125    125   
            ser.write_string(&JOBREPORT_MEMBER_BUCKET, val)?;
  126    126   
        }
  127    127   
        if let Some(ref val) = self.format {
  128    128   
            ser.write_string(&JOBREPORT_MEMBER_FORMAT, val.as_str())?;
  129    129   
        }
  130    130   
        {
  131    131   
            let val = &self.enabled;
  132    132   
            ser.write_boolean(&JOBREPORT_MEMBER_ENABLED, *val)?;
  133    133   
        }
  134    134   
        if let Some(ref val) = self.prefix {
  135    135   
            ser.write_string(&JOBREPORT_MEMBER_PREFIX, val)?;
  136    136   
        }
  137    137   
        if let Some(ref val) = self.report_scope {
  138    138   
            ser.write_string(&JOBREPORT_MEMBER_REPORT_SCOPE, val.as_str())?;
  139    139   
        }
  140    140   
        if let Some(ref val) = self.expected_bucket_owner {
  141    141   
            ser.write_string(&JOBREPORT_MEMBER_EXPECTED_BUCKET_OWNER, val)?;
  142    142   
        }
  143    143   
        Ok(())
  144    144   
    }
  145    145   
}
  146    146   
impl JobReport {
  147    147   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  148         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  149         -
        deserializer: &mut D,
         148  +
    pub fn deserialize(
         149  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  150    150   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  151    151   
        #[allow(unused_variables, unused_mut)]
  152    152   
        let mut builder = Self::builder();
  153    153   
        #[allow(
  154    154   
            unused_variables,
  155    155   
            unreachable_code,
  156    156   
            clippy::single_match,
  157    157   
            clippy::match_single_binding,
  158    158   
            clippy::diverging_sub_expression
  159    159   
        )]
  160         -
        deserializer.read_struct(&JOBREPORT_SCHEMA, (), |_, member, deser| {
         160  +
        deserializer.read_struct(&JOBREPORT_SCHEMA, &mut |member, deser| {
  161    161   
            match member.member_index() {
  162    162   
                Some(0) => {
  163    163   
                    builder.bucket = Some(deser.read_string(member)?);
  164    164   
                }
  165    165   
                Some(1) => {
  166    166   
                    builder.format = Some(crate::types::JobReportFormat::from(deser.read_string(member)?.as_str()));
  167    167   
                }
  168    168   
                Some(2) => {
  169    169   
                    builder.enabled = Some(deser.read_boolean(member)?);
  170    170   
                }
  171    171   
                Some(3) => {
  172    172   
                    builder.prefix = Some(deser.read_string(member)?);
  173    173   
                }
  174    174   
                Some(4) => {
  175    175   
                    builder.report_scope = Some(crate::types::JobReportScope::from(deser.read_string(member)?.as_str()));
  176    176   
                }
  177    177   
                Some(5) => {
  178    178   
                    builder.expected_bucket_owner = Some(deser.read_string(member)?);
  179    179   
                }
  180    180   
                _ => {}
  181    181   
            }
  182    182   
            Ok(())
  183    183   
        })?;
  184    184   
        Ok(builder.build())
  185    185   
    }
  186    186   
}
         187  +
impl JobReport {
         188  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         189  +
    pub fn deserialize_with_response(
         190  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         191  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         192  +
        _status: u16,
         193  +
        _body: &[u8],
         194  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         195  +
        Self::deserialize(deserializer)
         196  +
    }
         197  +
}
  187    198   
impl JobReport {
  188    199   
    /// Creates a new builder-style object to manufacture [`JobReport`](crate::types::JobReport).
  189    200   
    pub fn builder() -> crate::types::builders::JobReportBuilder {
  190    201   
        crate::types::builders::JobReportBuilder::default()
  191    202   
    }
  192    203   
}
  193    204   
  194    205   
/// A builder for [`JobReport`](crate::types::JobReport).
  195    206   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  196    207   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_job_timers.rs

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

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_key_name_constraint.rs

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

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_lambda_invoke_operation.rs

@@ -18,18 +182,183 @@
   38     38   
    "com.amazonaws.s3control",
   39     39   
    "LambdaInvokeOperation",
   40     40   
);
   41     41   
static LAMBDAINVOKEOPERATION_MEMBER_FUNCTION_ARN: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   42     42   
    ::aws_smithy_schema::ShapeId::from_static(
   43     43   
        "com.amazonaws.s3control#LambdaInvokeOperation$FunctionArn",
   44     44   
        "com.amazonaws.s3control",
   45     45   
        "LambdaInvokeOperation",
   46     46   
    ),
   47     47   
    ::aws_smithy_schema::ShapeType::String,
   48         -
    "function_arn",
          48  +
    "FunctionArn",
   49     49   
    0,
   50     50   
);
   51     51   
static LAMBDAINVOKEOPERATION_MEMBER_INVOCATION_SCHEMA_VERSION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   52     52   
    ::aws_smithy_schema::ShapeId::from_static(
   53     53   
        "com.amazonaws.s3control#LambdaInvokeOperation$InvocationSchemaVersion",
   54     54   
        "com.amazonaws.s3control",
   55     55   
        "LambdaInvokeOperation",
   56     56   
    ),
   57     57   
    ::aws_smithy_schema::ShapeType::String,
   58         -
    "invocation_schema_version",
          58  +
    "InvocationSchemaVersion",
   59     59   
    1,
   60     60   
);
   61     61   
static LAMBDAINVOKEOPERATION_MEMBER_USER_ARGUMENTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   62     62   
    ::aws_smithy_schema::ShapeId::from_static(
   63     63   
        "com.amazonaws.s3control#LambdaInvokeOperation$UserArguments",
   64     64   
        "com.amazonaws.s3control",
   65     65   
        "LambdaInvokeOperation",
   66     66   
    ),
   67     67   
    ::aws_smithy_schema::ShapeType::Map,
   68         -
    "user_arguments",
          68  +
    "UserArguments",
   69     69   
    2,
   70     70   
);
   71     71   
static LAMBDAINVOKEOPERATION_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   72     72   
    LAMBDAINVOKEOPERATION_SCHEMA_ID,
   73     73   
    ::aws_smithy_schema::ShapeType::Structure,
   74     74   
    &[
   75     75   
        &LAMBDAINVOKEOPERATION_MEMBER_FUNCTION_ARN,
   76     76   
        &LAMBDAINVOKEOPERATION_MEMBER_INVOCATION_SCHEMA_VERSION,
   77     77   
        &LAMBDAINVOKEOPERATION_MEMBER_USER_ARGUMENTS,
   78     78   
    ],
   79     79   
);
   80     80   
impl LambdaInvokeOperation {
   81     81   
    /// The schema for this shape.
   82     82   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &LAMBDAINVOKEOPERATION_SCHEMA;
   83     83   
}
   84     84   
impl ::aws_smithy_schema::serde::SerializableStruct for LambdaInvokeOperation {
   85     85   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   86     86   
    fn serialize_members(
   87     87   
        &self,
   88     88   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   89     89   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   90     90   
        if let Some(ref val) = self.function_arn {
   91     91   
            ser.write_string(&LAMBDAINVOKEOPERATION_MEMBER_FUNCTION_ARN, val)?;
   92     92   
        }
   93     93   
        if let Some(ref val) = self.invocation_schema_version {
   94     94   
            ser.write_string(&LAMBDAINVOKEOPERATION_MEMBER_INVOCATION_SCHEMA_VERSION, val)?;
   95     95   
        }
   96     96   
        if let Some(ref val) = self.user_arguments {
   97     97   
            ser.write_map(
   98     98   
                &LAMBDAINVOKEOPERATION_MEMBER_USER_ARGUMENTS,
   99     99   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
  100    100   
                    for (key, value) in val {
  101    101   
                        ser.write_string(&::aws_smithy_schema::prelude::STRING, key)?;
  102    102   
                        ser.write_string(&::aws_smithy_schema::prelude::STRING, value)?;
  103    103   
                    }
  104    104   
                    Ok(())
  105    105   
                },
  106    106   
            )?;
  107    107   
        }
  108    108   
        Ok(())
  109    109   
    }
  110    110   
}
  111    111   
impl LambdaInvokeOperation {
  112    112   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  113         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  114         -
        deserializer: &mut D,
         113  +
    pub fn deserialize(
         114  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  115    115   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  116    116   
        #[allow(unused_variables, unused_mut)]
  117    117   
        let mut builder = Self::builder();
  118    118   
        #[allow(
  119    119   
            unused_variables,
  120    120   
            unreachable_code,
  121    121   
            clippy::single_match,
  122    122   
            clippy::match_single_binding,
  123    123   
            clippy::diverging_sub_expression
  124    124   
        )]
  125         -
        deserializer.read_struct(&LAMBDAINVOKEOPERATION_SCHEMA, (), |_, member, deser| {
         125  +
        deserializer.read_struct(&LAMBDAINVOKEOPERATION_SCHEMA, &mut |member, deser| {
  126    126   
            match member.member_index() {
  127    127   
                Some(0) => {
  128    128   
                    builder.function_arn = Some(deser.read_string(member)?);
  129    129   
                }
  130    130   
                Some(1) => {
  131    131   
                    builder.invocation_schema_version = Some(deser.read_string(member)?);
  132    132   
                }
  133    133   
                Some(2) => {
  134         -
                    builder.user_arguments = Some({
  135         -
                        let container = if let Some(cap) = deser.container_size() {
  136         -
                            std::collections::HashMap::with_capacity(cap)
  137         -
                        } else {
  138         -
                            std::collections::HashMap::new()
  139         -
                        };
  140         -
                        deser.read_map(member, container, |mut map, key, deser| {
  141         -
                            map.insert(key, deser.read_string(member)?);
  142         -
                            Ok(map)
  143         -
                        })?
  144         -
                    });
         134  +
                    builder.user_arguments = Some(deser.read_string_string_map(member)?);
  145    135   
                }
  146    136   
                _ => {}
  147    137   
            }
  148    138   
            Ok(())
  149    139   
        })?;
  150    140   
        Ok(builder.build())
  151    141   
    }
  152    142   
}
         143  +
impl LambdaInvokeOperation {
         144  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         145  +
    pub fn deserialize_with_response(
         146  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         147  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         148  +
        _status: u16,
         149  +
        _body: &[u8],
         150  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         151  +
        Self::deserialize(deserializer)
         152  +
    }
         153  +
}
  153    154   
impl LambdaInvokeOperation {
  154    155   
    /// Creates a new builder-style object to manufacture [`LambdaInvokeOperation`](crate::types::LambdaInvokeOperation).
  155    156   
    pub fn builder() -> crate::types::builders::LambdaInvokeOperationBuilder {
  156    157   
        crate::types::builders::LambdaInvokeOperationBuilder::default()
  157    158   
    }
  158    159   
}
  159    160   
  160    161   
/// A builder for [`LambdaInvokeOperation`](crate::types::LambdaInvokeOperation).
  161    162   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  162    163   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_lifecycle_configuration.rs

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

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_lifecycle_expiration.rs

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

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_lifecycle_rule.rs

@@ -49,49 +167,167 @@
   69     69   
}
   70     70   
static LIFECYCLERULE_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
   71     71   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#LifecycleRule", "com.amazonaws.s3control", "LifecycleRule");
   72     72   
static LIFECYCLERULE_MEMBER_EXPIRATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   73     73   
    ::aws_smithy_schema::ShapeId::from_static(
   74     74   
        "com.amazonaws.s3control#LifecycleRule$Expiration",
   75     75   
        "com.amazonaws.s3control",
   76     76   
        "LifecycleRule",
   77     77   
    ),
   78     78   
    ::aws_smithy_schema::ShapeType::Structure,
   79         -
    "expiration",
          79  +
    "Expiration",
   80     80   
    0,
   81     81   
);
   82     82   
static LIFECYCLERULE_MEMBER_ID: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   83     83   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#LifecycleRule$ID", "com.amazonaws.s3control", "LifecycleRule"),
   84     84   
    ::aws_smithy_schema::ShapeType::String,
   85         -
    "id",
          85  +
    "ID",
   86     86   
    1,
   87     87   
);
   88     88   
static LIFECYCLERULE_MEMBER_FILTER: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   89     89   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#LifecycleRule$Filter", "com.amazonaws.s3control", "LifecycleRule"),
   90     90   
    ::aws_smithy_schema::ShapeType::Structure,
   91         -
    "filter",
          91  +
    "Filter",
   92     92   
    2,
   93     93   
);
   94     94   
static LIFECYCLERULE_MEMBER_STATUS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   95     95   
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.s3control#LifecycleRule$Status", "com.amazonaws.s3control", "LifecycleRule"),
   96     96   
    ::aws_smithy_schema::ShapeType::String,
   97         -
    "status",
          97  +
    "Status",
   98     98   
    3,
   99     99   
);
  100    100   
static LIFECYCLERULE_MEMBER_TRANSITIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  101    101   
    ::aws_smithy_schema::ShapeId::from_static(
  102    102   
        "com.amazonaws.s3control#LifecycleRule$Transitions",
  103    103   
        "com.amazonaws.s3control",
  104    104   
        "LifecycleRule",
  105    105   
    ),
  106    106   
    ::aws_smithy_schema::ShapeType::List,
  107         -
    "transitions",
         107  +
    "Transitions",
  108    108   
    4,
  109    109   
);
  110    110   
static LIFECYCLERULE_MEMBER_NONCURRENT_VERSION_TRANSITIONS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  111    111   
    ::aws_smithy_schema::ShapeId::from_static(
  112    112   
        "com.amazonaws.s3control#LifecycleRule$NoncurrentVersionTransitions",
  113    113   
        "com.amazonaws.s3control",
  114    114   
        "LifecycleRule",
  115    115   
    ),
  116    116   
    ::aws_smithy_schema::ShapeType::List,
  117         -
    "noncurrent_version_transitions",
         117  +
    "NoncurrentVersionTransitions",
  118    118   
    5,
  119    119   
);
  120    120   
static LIFECYCLERULE_MEMBER_NONCURRENT_VERSION_EXPIRATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  121    121   
    ::aws_smithy_schema::ShapeId::from_static(
  122    122   
        "com.amazonaws.s3control#LifecycleRule$NoncurrentVersionExpiration",
  123    123   
        "com.amazonaws.s3control",
  124    124   
        "LifecycleRule",
  125    125   
    ),
  126    126   
    ::aws_smithy_schema::ShapeType::Structure,
  127         -
    "noncurrent_version_expiration",
         127  +
    "NoncurrentVersionExpiration",
  128    128   
    6,
  129    129   
);
  130    130   
static LIFECYCLERULE_MEMBER_ABORT_INCOMPLETE_MULTIPART_UPLOAD: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  131    131   
    ::aws_smithy_schema::ShapeId::from_static(
  132    132   
        "com.amazonaws.s3control#LifecycleRule$AbortIncompleteMultipartUpload",
  133    133   
        "com.amazonaws.s3control",
  134    134   
        "LifecycleRule",
  135    135   
    ),
  136    136   
    ::aws_smithy_schema::ShapeType::Structure,
  137         -
    "abort_incomplete_multipart_upload",
         137  +
    "AbortIncompleteMultipartUpload",
  138    138   
    7,
  139    139   
);
  140    140   
static LIFECYCLERULE_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  141    141   
    LIFECYCLERULE_SCHEMA_ID,
  142    142   
    ::aws_smithy_schema::ShapeType::Structure,
  143    143   
    &[
  144    144   
        &LIFECYCLERULE_MEMBER_EXPIRATION,
  145    145   
        &LIFECYCLERULE_MEMBER_ID,
  146    146   
        &LIFECYCLERULE_MEMBER_FILTER,
  147    147   
        &LIFECYCLERULE_MEMBER_STATUS,
@@ -180,180 +306,311 @@
  200    200   
            ser.write_struct(&LIFECYCLERULE_MEMBER_NONCURRENT_VERSION_EXPIRATION, val)?;
  201    201   
        }
  202    202   
        if let Some(ref val) = self.abort_incomplete_multipart_upload {
  203    203   
            ser.write_struct(&LIFECYCLERULE_MEMBER_ABORT_INCOMPLETE_MULTIPART_UPLOAD, val)?;
  204    204   
        }
  205    205   
        Ok(())
  206    206   
    }
  207    207   
}
  208    208   
impl LifecycleRule {
  209    209   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  210         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  211         -
        deserializer: &mut D,
         210  +
    pub fn deserialize(
         211  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  212    212   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  213    213   
        #[allow(unused_variables, unused_mut)]
  214    214   
        let mut builder = Self::builder();
  215    215   
        #[allow(
  216    216   
            unused_variables,
  217    217   
            unreachable_code,
  218    218   
            clippy::single_match,
  219    219   
            clippy::match_single_binding,
  220    220   
            clippy::diverging_sub_expression
  221    221   
        )]
  222         -
        deserializer.read_struct(&LIFECYCLERULE_SCHEMA, (), |_, member, deser| {
         222  +
        deserializer.read_struct(&LIFECYCLERULE_SCHEMA, &mut |member, deser| {
  223    223   
            match member.member_index() {
  224    224   
                Some(0) => {
  225    225   
                    builder.expiration = Some(crate::types::LifecycleExpiration::deserialize(deser)?);
  226    226   
                }
  227    227   
                Some(1) => {
  228    228   
                    builder.id = Some(deser.read_string(member)?);
  229    229   
                }
  230    230   
                Some(2) => {
  231    231   
                    builder.filter = Some(crate::types::LifecycleRuleFilter::deserialize(deser)?);
  232    232   
                }
  233    233   
                Some(3) => {
  234    234   
                    builder.status = Some(crate::types::ExpirationStatus::from(deser.read_string(member)?.as_str()));
  235    235   
                }
  236    236   
                Some(4) => {
  237    237   
                    builder.transitions = Some({
  238         -
                        let container = if let Some(cap) = deser.container_size() {
  239         -
                            Vec::with_capacity(cap)
  240         -
                        } else {
  241         -
                            Vec::new()
  242         -
                        };
  243         -
                        deser.read_list(member, container, |mut list, deser| {
  244         -
                            list.push(crate::types::Transition::deserialize(deser)?);
  245         -
                            Ok(list)
  246         -
                        })?
         238  +
                        let mut container = Vec::new();
         239  +
                        deser.read_list(member, &mut |deser| {
         240  +
                            container.push(crate::types::Transition::deserialize(deser)?);
         241  +
                            Ok(())
         242  +
                        })?;
         243  +
                        container
  247    244   
                    });
  248    245   
                }
  249    246   
                Some(5) => {
  250    247   
                    builder.noncurrent_version_transitions = Some({
  251         -
                        let container = if let Some(cap) = deser.container_size() {
  252         -
                            Vec::with_capacity(cap)
  253         -
                        } else {
  254         -
                            Vec::new()
  255         -
                        };
  256         -
                        deser.read_list(member, container, |mut list, deser| {
  257         -
                            list.push(crate::types::NoncurrentVersionTransition::deserialize(deser)?);
  258         -
                            Ok(list)
  259         -
                        })?
         248  +
                        let mut container = Vec::new();
         249  +
                        deser.read_list(member, &mut |deser| {
         250  +
                            container.push(crate::types::NoncurrentVersionTransition::deserialize(deser)?);
         251  +
                            Ok(())
         252  +
                        })?;
         253  +
                        container
  260    254   
                    });
  261    255   
                }
  262    256   
                Some(6) => {
  263    257   
                    builder.noncurrent_version_expiration = Some(crate::types::NoncurrentVersionExpiration::deserialize(deser)?);
  264    258   
                }
  265    259   
                Some(7) => {
  266    260   
                    builder.abort_incomplete_multipart_upload = Some(crate::types::AbortIncompleteMultipartUpload::deserialize(deser)?);
  267    261   
                }
  268    262   
                _ => {}
  269    263   
            }
  270    264   
            Ok(())
  271    265   
        })?;
  272    266   
        builder
  273    267   
            .build()
  274    268   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  275    269   
    }
  276    270   
}
         271  +
impl LifecycleRule {
         272  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         273  +
    pub fn deserialize_with_response(
         274  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         275  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         276  +
        _status: u16,
         277  +
        _body: &[u8],
         278  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         279  +
        Self::deserialize(deserializer)
         280  +
    }
         281  +
}
  277    282   
impl LifecycleRule {
  278    283   
    /// Creates a new builder-style object to manufacture [`LifecycleRule`](crate::types::LifecycleRule).
  279    284   
    pub fn builder() -> crate::types::builders::LifecycleRuleBuilder {
  280    285   
        crate::types::builders::LifecycleRuleBuilder::default()
  281    286   
    }
  282    287   
}
  283    288   
  284    289   
/// A builder for [`LifecycleRule`](crate::types::LifecycleRule).
  285    290   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  286    291   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/s3control/src/types/_lifecycle_rule_and_operator.rs

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