AWS SDK

AWS SDK

rev. e063993ca0ab793f44c575dbe707d50a5e3e2406

Files changed:

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_guardrail_trace_assessment.rs

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

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_guardrail_usage.rs

@@ -46,46 +186,186 @@
   66     66   
    "com.amazonaws.bedrockruntime",
   67     67   
    "GuardrailUsage",
   68     68   
);
   69     69   
static GUARDRAILUSAGE_MEMBER_TOPIC_POLICY_UNITS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   70     70   
    ::aws_smithy_schema::ShapeId::from_static(
   71     71   
        "com.amazonaws.bedrockruntime#GuardrailUsage$topicPolicyUnits",
   72     72   
        "com.amazonaws.bedrockruntime",
   73     73   
        "GuardrailUsage",
   74     74   
    ),
   75     75   
    ::aws_smithy_schema::ShapeType::Integer,
   76         -
    "topic_policy_units",
          76  +
    "topicPolicyUnits",
   77     77   
    0,
   78     78   
);
   79     79   
static GUARDRAILUSAGE_MEMBER_CONTENT_POLICY_UNITS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   80     80   
    ::aws_smithy_schema::ShapeId::from_static(
   81     81   
        "com.amazonaws.bedrockruntime#GuardrailUsage$contentPolicyUnits",
   82     82   
        "com.amazonaws.bedrockruntime",
   83     83   
        "GuardrailUsage",
   84     84   
    ),
   85     85   
    ::aws_smithy_schema::ShapeType::Integer,
   86         -
    "content_policy_units",
          86  +
    "contentPolicyUnits",
   87     87   
    1,
   88     88   
);
   89     89   
static GUARDRAILUSAGE_MEMBER_WORD_POLICY_UNITS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   90     90   
    ::aws_smithy_schema::ShapeId::from_static(
   91     91   
        "com.amazonaws.bedrockruntime#GuardrailUsage$wordPolicyUnits",
   92     92   
        "com.amazonaws.bedrockruntime",
   93     93   
        "GuardrailUsage",
   94     94   
    ),
   95     95   
    ::aws_smithy_schema::ShapeType::Integer,
   96         -
    "word_policy_units",
          96  +
    "wordPolicyUnits",
   97     97   
    2,
   98     98   
);
   99     99   
static GUARDRAILUSAGE_MEMBER_SENSITIVE_INFORMATION_POLICY_UNITS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  100    100   
    ::aws_smithy_schema::ShapeId::from_static(
  101    101   
        "com.amazonaws.bedrockruntime#GuardrailUsage$sensitiveInformationPolicyUnits",
  102    102   
        "com.amazonaws.bedrockruntime",
  103    103   
        "GuardrailUsage",
  104    104   
    ),
  105    105   
    ::aws_smithy_schema::ShapeType::Integer,
  106         -
    "sensitive_information_policy_units",
         106  +
    "sensitiveInformationPolicyUnits",
  107    107   
    3,
  108    108   
);
  109    109   
static GUARDRAILUSAGE_MEMBER_SENSITIVE_INFORMATION_POLICY_FREE_UNITS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  110    110   
    ::aws_smithy_schema::ShapeId::from_static(
  111    111   
        "com.amazonaws.bedrockruntime#GuardrailUsage$sensitiveInformationPolicyFreeUnits",
  112    112   
        "com.amazonaws.bedrockruntime",
  113    113   
        "GuardrailUsage",
  114    114   
    ),
  115    115   
    ::aws_smithy_schema::ShapeType::Integer,
  116         -
    "sensitive_information_policy_free_units",
         116  +
    "sensitiveInformationPolicyFreeUnits",
  117    117   
    4,
  118    118   
);
  119    119   
static GUARDRAILUSAGE_MEMBER_CONTEXTUAL_GROUNDING_POLICY_UNITS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  120    120   
    ::aws_smithy_schema::ShapeId::from_static(
  121    121   
        "com.amazonaws.bedrockruntime#GuardrailUsage$contextualGroundingPolicyUnits",
  122    122   
        "com.amazonaws.bedrockruntime",
  123    123   
        "GuardrailUsage",
  124    124   
    ),
  125    125   
    ::aws_smithy_schema::ShapeType::Integer,
  126         -
    "contextual_grounding_policy_units",
         126  +
    "contextualGroundingPolicyUnits",
  127    127   
    5,
  128    128   
);
  129    129   
static GUARDRAILUSAGE_MEMBER_CONTENT_POLICY_IMAGE_UNITS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  130    130   
    ::aws_smithy_schema::ShapeId::from_static(
  131    131   
        "com.amazonaws.bedrockruntime#GuardrailUsage$contentPolicyImageUnits",
  132    132   
        "com.amazonaws.bedrockruntime",
  133    133   
        "GuardrailUsage",
  134    134   
    ),
  135    135   
    ::aws_smithy_schema::ShapeType::Integer,
  136         -
    "content_policy_image_units",
         136  +
    "contentPolicyImageUnits",
  137    137   
    6,
  138    138   
);
  139    139   
static GUARDRAILUSAGE_MEMBER_AUTOMATED_REASONING_POLICY_UNITS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  140    140   
    ::aws_smithy_schema::ShapeId::from_static(
  141    141   
        "com.amazonaws.bedrockruntime#GuardrailUsage$automatedReasoningPolicyUnits",
  142    142   
        "com.amazonaws.bedrockruntime",
  143    143   
        "GuardrailUsage",
  144    144   
    ),
  145    145   
    ::aws_smithy_schema::ShapeType::Integer,
  146         -
    "automated_reasoning_policy_units",
         146  +
    "automatedReasoningPolicyUnits",
  147    147   
    7,
  148    148   
);
  149    149   
static GUARDRAILUSAGE_MEMBER_AUTOMATED_REASONING_POLICIES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
  150    150   
    ::aws_smithy_schema::ShapeId::from_static(
  151    151   
        "com.amazonaws.bedrockruntime#GuardrailUsage$automatedReasoningPolicies",
  152    152   
        "com.amazonaws.bedrockruntime",
  153    153   
        "GuardrailUsage",
  154    154   
    ),
  155    155   
    ::aws_smithy_schema::ShapeType::Integer,
  156         -
    "automated_reasoning_policies",
         156  +
    "automatedReasoningPolicies",
  157    157   
    8,
  158    158   
);
  159    159   
static GUARDRAILUSAGE_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
  160    160   
    GUARDRAILUSAGE_SCHEMA_ID,
  161    161   
    ::aws_smithy_schema::ShapeType::Structure,
  162    162   
    &[
  163    163   
        &GUARDRAILUSAGE_MEMBER_TOPIC_POLICY_UNITS,
  164    164   
        &GUARDRAILUSAGE_MEMBER_CONTENT_POLICY_UNITS,
  165    165   
        &GUARDRAILUSAGE_MEMBER_WORD_POLICY_UNITS,
  166    166   
        &GUARDRAILUSAGE_MEMBER_SENSITIVE_INFORMATION_POLICY_UNITS,
@@ -192,192 +301,318 @@
  212    212   
            ser.write_integer(&GUARDRAILUSAGE_MEMBER_AUTOMATED_REASONING_POLICY_UNITS, *val)?;
  213    213   
        }
  214    214   
        if let Some(ref val) = self.automated_reasoning_policies {
  215    215   
            ser.write_integer(&GUARDRAILUSAGE_MEMBER_AUTOMATED_REASONING_POLICIES, *val)?;
  216    216   
        }
  217    217   
        Ok(())
  218    218   
    }
  219    219   
}
  220    220   
impl GuardrailUsage {
  221    221   
    /// Deserializes this structure from a [`ShapeDeserializer`].
  222         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
  223         -
        deserializer: &mut D,
         222  +
    pub fn deserialize(
         223  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
  224    224   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
  225    225   
        #[allow(unused_variables, unused_mut)]
  226    226   
        let mut builder = Self::builder();
  227    227   
        #[allow(
  228    228   
            unused_variables,
  229    229   
            unreachable_code,
  230    230   
            clippy::single_match,
  231    231   
            clippy::match_single_binding,
  232    232   
            clippy::diverging_sub_expression
  233    233   
        )]
  234         -
        deserializer.read_struct(&GUARDRAILUSAGE_SCHEMA, (), |_, member, deser| {
         234  +
        deserializer.read_struct(&GUARDRAILUSAGE_SCHEMA, &mut |member, deser| {
  235    235   
            match member.member_index() {
  236    236   
                Some(0) => {
  237    237   
                    builder.topic_policy_units = Some(deser.read_integer(member)?);
  238    238   
                }
  239    239   
                Some(1) => {
  240    240   
                    builder.content_policy_units = Some(deser.read_integer(member)?);
  241    241   
                }
  242    242   
                Some(2) => {
  243    243   
                    builder.word_policy_units = Some(deser.read_integer(member)?);
  244    244   
                }
  245    245   
                Some(3) => {
  246    246   
                    builder.sensitive_information_policy_units = Some(deser.read_integer(member)?);
  247    247   
                }
  248    248   
                Some(4) => {
  249    249   
                    builder.sensitive_information_policy_free_units = Some(deser.read_integer(member)?);
  250    250   
                }
  251    251   
                Some(5) => {
  252    252   
                    builder.contextual_grounding_policy_units = Some(deser.read_integer(member)?);
  253    253   
                }
  254    254   
                Some(6) => {
  255    255   
                    builder.content_policy_image_units = Some(deser.read_integer(member)?);
  256    256   
                }
  257    257   
                Some(7) => {
  258    258   
                    builder.automated_reasoning_policy_units = Some(deser.read_integer(member)?);
  259    259   
                }
  260    260   
                Some(8) => {
  261    261   
                    builder.automated_reasoning_policies = Some(deser.read_integer(member)?);
  262    262   
                }
  263    263   
                _ => {}
  264    264   
            }
  265    265   
            Ok(())
  266    266   
        })?;
         267  +
        builder.topic_policy_units = builder.topic_policy_units.or(Some(0i32));
         268  +
        builder.content_policy_units = builder.content_policy_units.or(Some(0i32));
         269  +
        builder.word_policy_units = builder.word_policy_units.or(Some(0i32));
         270  +
        builder.sensitive_information_policy_units = builder.sensitive_information_policy_units.or(Some(0i32));
         271  +
        builder.sensitive_information_policy_free_units = builder.sensitive_information_policy_free_units.or(Some(0i32));
         272  +
        builder.contextual_grounding_policy_units = builder.contextual_grounding_policy_units.or(Some(0i32));
  267    273   
        builder
  268    274   
            .build()
  269    275   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  270    276   
    }
  271    277   
}
         278  +
impl GuardrailUsage {
         279  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         280  +
    pub fn deserialize_with_response(
         281  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         282  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         283  +
        _status: u16,
         284  +
        _body: &[u8],
         285  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         286  +
        Self::deserialize(deserializer)
         287  +
    }
         288  +
}
  272    289   
impl GuardrailUsage {
  273    290   
    /// Creates a new builder-style object to manufacture [`GuardrailUsage`](crate::types::GuardrailUsage).
  274    291   
    pub fn builder() -> crate::types::builders::GuardrailUsageBuilder {
  275    292   
        crate::types::builders::GuardrailUsageBuilder::default()
  276    293   
    }
  277    294   
}
  278    295   
  279    296   
/// A builder for [`GuardrailUsage`](crate::types::GuardrailUsage).
  280    297   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  281    298   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_guardrail_word_policy_assessment.rs

@@ -6,6 +176,183 @@
   26     26   
    "com.amazonaws.bedrockruntime",
   27     27   
    "GuardrailWordPolicyAssessment",
   28     28   
);
   29     29   
static GUARDRAILWORDPOLICYASSESSMENT_MEMBER_CUSTOM_WORDS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   30     30   
    ::aws_smithy_schema::ShapeId::from_static(
   31     31   
        "com.amazonaws.bedrockruntime#GuardrailWordPolicyAssessment$customWords",
   32     32   
        "com.amazonaws.bedrockruntime",
   33     33   
        "GuardrailWordPolicyAssessment",
   34     34   
    ),
   35     35   
    ::aws_smithy_schema::ShapeType::List,
   36         -
    "custom_words",
          36  +
    "customWords",
   37     37   
    0,
   38     38   
);
   39     39   
static GUARDRAILWORDPOLICYASSESSMENT_MEMBER_MANAGED_WORD_LISTS: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
   40     40   
    ::aws_smithy_schema::ShapeId::from_static(
   41     41   
        "com.amazonaws.bedrockruntime#GuardrailWordPolicyAssessment$managedWordLists",
   42     42   
        "com.amazonaws.bedrockruntime",
   43     43   
        "GuardrailWordPolicyAssessment",
   44     44   
    ),
   45     45   
    ::aws_smithy_schema::ShapeType::List,
   46         -
    "managed_word_lists",
          46  +
    "managedWordLists",
   47     47   
    1,
   48     48   
);
   49     49   
static GUARDRAILWORDPOLICYASSESSMENT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
   50     50   
    GUARDRAILWORDPOLICYASSESSMENT_SCHEMA_ID,
   51     51   
    ::aws_smithy_schema::ShapeType::Structure,
   52     52   
    &[
   53     53   
        &GUARDRAILWORDPOLICYASSESSMENT_MEMBER_CUSTOM_WORDS,
   54     54   
        &GUARDRAILWORDPOLICYASSESSMENT_MEMBER_MANAGED_WORD_LISTS,
   55     55   
    ],
   56     56   
);
   57     57   
impl GuardrailWordPolicyAssessment {
   58     58   
    /// The schema for this shape.
   59     59   
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &GUARDRAILWORDPOLICYASSESSMENT_SCHEMA;
   60     60   
}
   61     61   
impl ::aws_smithy_schema::serde::SerializableStruct for GuardrailWordPolicyAssessment {
   62     62   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   63     63   
    fn serialize_members(
   64     64   
        &self,
   65     65   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   66     66   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   67     67   
        {
   68     68   
            let val = &self.custom_words;
   69     69   
   70     70   
            ser.write_list(
   71     71   
                &GUARDRAILWORDPOLICYASSESSMENT_MEMBER_CUSTOM_WORDS,
   72     72   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   73     73   
                    for item in val {
   74     74   
                        ser.write_struct(crate::types::GuardrailCustomWord::SCHEMA, item)?;
   75     75   
                    }
   76     76   
                    Ok(())
   77     77   
                },
   78     78   
            )?;
   79     79   
        }
   80     80   
        {
   81     81   
            let val = &self.managed_word_lists;
   82     82   
   83     83   
            ser.write_list(
   84     84   
                &GUARDRAILWORDPOLICYASSESSMENT_MEMBER_MANAGED_WORD_LISTS,
   85     85   
                &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   86     86   
                    for item in val {
   87     87   
                        ser.write_struct(crate::types::GuardrailManagedWord::SCHEMA, item)?;
   88     88   
                    }
   89     89   
                    Ok(())
   90     90   
                },
   91     91   
            )?;
   92     92   
        }
   93     93   
        Ok(())
   94     94   
    }
   95     95   
}
   96     96   
impl GuardrailWordPolicyAssessment {
   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(&GUARDRAILWORDPOLICYASSESSMENT_SCHEMA, (), |_, member, deser| {
         110  +
        deserializer.read_struct(&GUARDRAILWORDPOLICYASSESSMENT_SCHEMA, &mut |member, deser| {
  111    111   
            match member.member_index() {
  112    112   
                Some(0) => {
  113    113   
                    builder.custom_words = Some({
  114         -
                        let container = if let Some(cap) = deser.container_size() {
  115         -
                            Vec::with_capacity(cap)
  116         -
                        } else {
  117         -
                            Vec::new()
  118         -
                        };
  119         -
                        deser.read_list(member, container, |mut list, deser| {
  120         -
                            list.push(crate::types::GuardrailCustomWord::deserialize(deser)?);
  121         -
                            Ok(list)
  122         -
                        })?
         114  +
                        let mut container = Vec::new();
         115  +
                        deser.read_list(member, &mut |deser| {
         116  +
                            container.push(crate::types::GuardrailCustomWord::deserialize(deser)?);
         117  +
                            Ok(())
         118  +
                        })?;
         119  +
                        container
  123    120   
                    });
  124    121   
                }
  125    122   
                Some(1) => {
  126    123   
                    builder.managed_word_lists = Some({
  127         -
                        let container = if let Some(cap) = deser.container_size() {
  128         -
                            Vec::with_capacity(cap)
  129         -
                        } else {
  130         -
                            Vec::new()
  131         -
                        };
  132         -
                        deser.read_list(member, container, |mut list, deser| {
  133         -
                            list.push(crate::types::GuardrailManagedWord::deserialize(deser)?);
  134         -
                            Ok(list)
  135         -
                        })?
         124  +
                        let mut container = Vec::new();
         125  +
                        deser.read_list(member, &mut |deser| {
         126  +
                            container.push(crate::types::GuardrailManagedWord::deserialize(deser)?);
         127  +
                            Ok(())
         128  +
                        })?;
         129  +
                        container
  136    130   
                    });
  137    131   
                }
  138    132   
                _ => {}
  139    133   
            }
  140    134   
            Ok(())
  141    135   
        })?;
         136  +
        builder.custom_words = builder.custom_words.or(Some(Vec::new()));
         137  +
        builder.managed_word_lists = builder.managed_word_lists.or(Some(Vec::new()));
  142    138   
        builder
  143    139   
            .build()
  144    140   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  145    141   
    }
  146    142   
}
         143  +
impl GuardrailWordPolicyAssessment {
         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  +
}
  147    154   
impl GuardrailWordPolicyAssessment {
  148    155   
    /// Creates a new builder-style object to manufacture [`GuardrailWordPolicyAssessment`](crate::types::GuardrailWordPolicyAssessment).
  149    156   
    pub fn builder() -> crate::types::builders::GuardrailWordPolicyAssessmentBuilder {
  150    157   
        crate::types::builders::GuardrailWordPolicyAssessmentBuilder::default()
  151    158   
    }
  152    159   
}
  153    160   
  154    161   
/// A builder for [`GuardrailWordPolicyAssessment`](crate::types::GuardrailWordPolicyAssessment).
  155    162   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  156    163   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_image_block.rs

@@ -34,34 +132,140 @@
   54     54   
    #[allow(unused_variables, clippy::diverging_sub_expression)]
   55     55   
    fn serialize_members(
   56     56   
        &self,
   57     57   
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
   58     58   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   59     59   
        {
   60     60   
            let val = &self.format;
   61     61   
            ser.write_string(&IMAGEBLOCK_MEMBER_FORMAT, val.as_str())?;
   62     62   
        }
   63     63   
        if let Some(ref val) = self.source {
   64         -
            ser.write_null(&IMAGEBLOCK_MEMBER_SOURCE)?;
          64  +
            ser.write_struct(&IMAGEBLOCK_MEMBER_SOURCE, val)?;
   65     65   
        }
   66     66   
        Ok(())
   67     67   
    }
   68     68   
}
   69     69   
impl ImageBlock {
   70     70   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   71         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   72         -
        deserializer: &mut D,
          71  +
    pub fn deserialize(
          72  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   73     73   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   74     74   
        #[allow(unused_variables, unused_mut)]
   75     75   
        let mut builder = Self::builder();
   76     76   
        #[allow(
   77     77   
            unused_variables,
   78     78   
            unreachable_code,
   79     79   
            clippy::single_match,
   80     80   
            clippy::match_single_binding,
   81     81   
            clippy::diverging_sub_expression
   82     82   
        )]
   83         -
        deserializer.read_struct(&IMAGEBLOCK_SCHEMA, (), |_, member, deser| {
          83  +
        deserializer.read_struct(&IMAGEBLOCK_SCHEMA, &mut |member, deser| {
   84     84   
            match member.member_index() {
   85     85   
                Some(0) => {
   86     86   
                    builder.format = Some(crate::types::ImageFormat::from(deser.read_string(member)?.as_str()));
   87     87   
                }
   88     88   
                Some(1) => {
   89         -
                    builder.source = Some({
   90         -
                        let _ = member;
   91         -
                        todo!("deserialize aggregate")
   92         -
                    });
          89  +
                    builder.source = Some(crate::types::ImageSource::deserialize(deser)?);
   93     90   
                }
   94     91   
                _ => {}
   95     92   
            }
   96     93   
            Ok(())
   97     94   
        })?;
   98     95   
        builder
   99     96   
            .build()
  100     97   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  101     98   
    }
  102     99   
}
         100  +
impl ImageBlock {
         101  +
    /// Deserializes this structure from a body deserializer and HTTP response.
         102  +
    pub fn deserialize_with_response(
         103  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         104  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
         105  +
        _status: u16,
         106  +
        _body: &[u8],
         107  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         108  +
        Self::deserialize(deserializer)
         109  +
    }
         110  +
}
  103    111   
impl ImageBlock {
  104    112   
    /// Creates a new builder-style object to manufacture [`ImageBlock`](crate::types::ImageBlock).
  105    113   
    pub fn builder() -> crate::types::builders::ImageBlockBuilder {
  106    114   
        crate::types::builders::ImageBlockBuilder::default()
  107    115   
    }
  108    116   
}
  109    117   
  110    118   
/// A builder for [`ImageBlock`](crate::types::ImageBlock).
  111    119   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  112    120   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_image_source.rs

@@ -23,23 +0,119 @@
   43     43   
    }
   44     44   
    /// Returns true if this is a [`S3Location`](crate::types::ImageSource::S3Location).
   45     45   
    pub fn is_s3_location(&self) -> bool {
   46     46   
        self.as_s3_location().is_ok()
   47     47   
    }
   48     48   
    /// Returns true if the enum instance is the `Unknown` variant.
   49     49   
    pub fn is_unknown(&self) -> bool {
   50     50   
        matches!(self, Self::Unknown)
   51     51   
    }
   52     52   
}
          53  +
static IMAGESOURCE_SCHEMA_ID: ::aws_smithy_schema::ShapeId =
          54  +
    ::aws_smithy_schema::ShapeId::from_static("com.amazonaws.bedrockruntime#ImageSource", "com.amazonaws.bedrockruntime", "ImageSource");
          55  +
static IMAGESOURCE_MEMBER_BYTES: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          56  +
    ::aws_smithy_schema::ShapeId::from_static(
          57  +
        "com.amazonaws.bedrockruntime#ImageSource$bytes",
          58  +
        "com.amazonaws.bedrockruntime",
          59  +
        "ImageSource",
          60  +
    ),
          61  +
    ::aws_smithy_schema::ShapeType::Blob,
          62  +
    "bytes",
          63  +
    0,
          64  +
);
          65  +
static IMAGESOURCE_MEMBER_S3LOCATION: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          66  +
    ::aws_smithy_schema::ShapeId::from_static(
          67  +
        "com.amazonaws.bedrockruntime#ImageSource$s3Location",
          68  +
        "com.amazonaws.bedrockruntime",
          69  +
        "ImageSource",
          70  +
    ),
          71  +
    ::aws_smithy_schema::ShapeType::Structure,
          72  +
    "s3Location",
          73  +
    1,
          74  +
);
          75  +
static IMAGESOURCE_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          76  +
    IMAGESOURCE_SCHEMA_ID,
          77  +
    ::aws_smithy_schema::ShapeType::Union,
          78  +
    &[&IMAGESOURCE_MEMBER_BYTES, &IMAGESOURCE_MEMBER_S3LOCATION],
          79  +
);
          80  +
impl ImageSource {
          81  +
    /// The schema for this shape.
          82  +
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &IMAGESOURCE_SCHEMA;
          83  +
}
          84  +
impl ::aws_smithy_schema::serde::SerializableStruct for ImageSource {
          85  +
    #[allow(unused_variables, clippy::diverging_sub_expression)]
          86  +
    fn serialize_members(
          87  +
        &self,
          88  +
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
          89  +
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
          90  +
        match self {
          91  +
            Self::Bytes(val) => {
          92  +
                ser.write_blob(&IMAGESOURCE_MEMBER_BYTES, val)?;
          93  +
            }
          94  +
            Self::S3Location(val) => {
          95  +
                ser.write_struct(&IMAGESOURCE_MEMBER_S3LOCATION, val)?;
          96  +
            }
          97  +
            Self::Unknown => return Err(::aws_smithy_schema::serde::SerdeError::custom("cannot serialize unknown union variant")),
          98  +
        }
          99  +
        Ok(())
         100  +
    }
         101  +
}
         102  +
impl ImageSource {
         103  +
    /// Deserializes this union from a [`ShapeDeserializer`].
         104  +
    pub fn deserialize(
         105  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
         106  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
         107  +
        let mut result: ::std::option::Option<Self> = ::std::option::Option::None;
         108  +
        #[allow(unused_variables, unreachable_code, clippy::single_match, clippy::match_single_binding)]
         109  +
        deserializer.read_struct(&IMAGESOURCE_SCHEMA, &mut |member, deser| {
         110  +
            result = ::std::option::Option::Some(match member.member_index() {
         111  +
                Some(0) => Self::Bytes(deser.read_blob(member)?),
         112  +
                Some(1) => Self::S3Location(crate::types::S3Location::deserialize(deser)?),
         113  +
                _ => Self::Unknown,
         114  +
            });
         115  +
            Ok(())
         116  +
        })?;
         117  +
        result.ok_or_else(|| ::aws_smithy_schema::serde::SerdeError::custom("expected a union variant"))
         118  +
    }
         119  +
}

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_inference_configuration.rs

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

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_invoke_model_tokens_request.rs

@@ -32,32 +117,129 @@
   52     52   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   53     53   
        {
   54     54   
            let val = &self.body;
   55     55   
            ser.write_blob(&INVOKEMODELTOKENSREQUEST_MEMBER_BODY, val)?;
   56     56   
        }
   57     57   
        Ok(())
   58     58   
    }
   59     59   
}
   60     60   
impl InvokeModelTokensRequest {
   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(&INVOKEMODELTOKENSREQUEST_SCHEMA, (), |_, member, deser| {
          74  +
        deserializer.read_struct(&INVOKEMODELTOKENSREQUEST_SCHEMA, &mut |member, deser| {
   75     75   
            match member.member_index() {
   76     76   
                Some(0) => {
   77     77   
                    builder.body = Some(deser.read_blob(member)?);
   78     78   
                }
   79     79   
                _ => {}
   80     80   
            }
   81     81   
            Ok(())
   82     82   
        })?;
          83  +
        builder.body = builder.body.or(Some(::aws_smithy_types::Blob::new("")));
   83     84   
        builder
   84     85   
            .build()
   85     86   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
   86     87   
    }
   87     88   
}
          89  +
impl InvokeModelTokensRequest {
          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  +
}
   88    100   
impl InvokeModelTokensRequest {
   89    101   
    /// Creates a new builder-style object to manufacture [`InvokeModelTokensRequest`](crate::types::InvokeModelTokensRequest).
   90    102   
    pub fn builder() -> crate::types::builders::InvokeModelTokensRequestBuilder {
   91    103   
        crate::types::builders::InvokeModelTokensRequestBuilder::default()
   92    104   
    }
   93    105   
}
   94    106   
   95    107   
/// A builder for [`InvokeModelTokensRequest`](crate::types::InvokeModelTokensRequest).
   96    108   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
   97    109   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_invoke_model_with_bidirectional_stream_input.rs

@@ -17,17 +0,103 @@
   37     37   
    }
   38     38   
}
   39     39   
impl ::std::fmt::Debug for InvokeModelWithBidirectionalStreamInput {
   40     40   
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
   41     41   
        match self {
   42     42   
            InvokeModelWithBidirectionalStreamInput::Chunk(_) => f.debug_tuple("*** Sensitive Data Redacted ***").finish(),
   43     43   
            InvokeModelWithBidirectionalStreamInput::Unknown => f.debug_tuple("Unknown").finish(),
   44     44   
        }
   45     45   
    }
   46     46   
}
          47  +
static INVOKEMODELWITHBIDIRECTIONALSTREAMINPUT_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
          48  +
    "com.amazonaws.bedrockruntime#InvokeModelWithBidirectionalStreamInput",
          49  +
    "com.amazonaws.bedrockruntime",
          50  +
    "InvokeModelWithBidirectionalStreamInput",
          51  +
);
          52  +
static INVOKEMODELWITHBIDIRECTIONALSTREAMINPUT_MEMBER_CHUNK: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          53  +
    ::aws_smithy_schema::ShapeId::from_static(
          54  +
        "com.amazonaws.bedrockruntime#InvokeModelWithBidirectionalStreamInput$chunk",
          55  +
        "com.amazonaws.bedrockruntime",
          56  +
        "InvokeModelWithBidirectionalStreamInput",
          57  +
    ),
          58  +
    ::aws_smithy_schema::ShapeType::Structure,
          59  +
    "chunk",
          60  +
    0,
          61  +
);
          62  +
static INVOKEMODELWITHBIDIRECTIONALSTREAMINPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          63  +
    INVOKEMODELWITHBIDIRECTIONALSTREAMINPUT_SCHEMA_ID,
          64  +
    ::aws_smithy_schema::ShapeType::Union,
          65  +
    &[&INVOKEMODELWITHBIDIRECTIONALSTREAMINPUT_MEMBER_CHUNK],
          66  +
)
          67  +
.with_streaming();
          68  +
impl InvokeModelWithBidirectionalStreamInput {
          69  +
    /// The schema for this shape.
          70  +
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &INVOKEMODELWITHBIDIRECTIONALSTREAMINPUT_SCHEMA;
          71  +
}
          72  +
impl ::aws_smithy_schema::serde::SerializableStruct for InvokeModelWithBidirectionalStreamInput {
          73  +
    #[allow(unused_variables, clippy::diverging_sub_expression)]
          74  +
    fn serialize_members(
          75  +
        &self,
          76  +
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
          77  +
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
          78  +
        match self {
          79  +
            Self::Chunk(val) => {
          80  +
                ser.write_struct(&INVOKEMODELWITHBIDIRECTIONALSTREAMINPUT_MEMBER_CHUNK, val)?;
          81  +
            }
          82  +
            Self::Unknown => return Err(::aws_smithy_schema::serde::SerdeError::custom("cannot serialize unknown union variant")),
          83  +
        }
          84  +
        Ok(())
          85  +
    }
          86  +
}
          87  +
impl InvokeModelWithBidirectionalStreamInput {
          88  +
    /// Deserializes this union from a [`ShapeDeserializer`].
          89  +
    pub fn deserialize(
          90  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          91  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          92  +
        let mut result: ::std::option::Option<Self> = ::std::option::Option::None;
          93  +
        #[allow(unused_variables, unreachable_code, clippy::single_match, clippy::match_single_binding)]
          94  +
        deserializer.read_struct(&INVOKEMODELWITHBIDIRECTIONALSTREAMINPUT_SCHEMA, &mut |member, deser| {
          95  +
            result = ::std::option::Option::Some(match member.member_index() {
          96  +
                Some(0) => Self::Chunk(crate::types::BidirectionalInputPayloadPart::deserialize(deser)?),
          97  +
                _ => Self::Unknown,
          98  +
            });
          99  +
            Ok(())
         100  +
        })?;
         101  +
        result.ok_or_else(|| ::aws_smithy_schema::serde::SerdeError::custom("expected a union variant"))
         102  +
    }
         103  +
}

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_invoke_model_with_bidirectional_stream_output.rs

@@ -17,17 +0,103 @@
   37     37   
    }
   38     38   
}
   39     39   
impl ::std::fmt::Debug for InvokeModelWithBidirectionalStreamOutput {
   40     40   
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
   41     41   
        match self {
   42     42   
            InvokeModelWithBidirectionalStreamOutput::Chunk(_) => f.debug_tuple("*** Sensitive Data Redacted ***").finish(),
   43     43   
            InvokeModelWithBidirectionalStreamOutput::Unknown => f.debug_tuple("Unknown").finish(),
   44     44   
        }
   45     45   
    }
   46     46   
}
          47  +
static INVOKEMODELWITHBIDIRECTIONALSTREAMOUTPUT_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
          48  +
    "com.amazonaws.bedrockruntime#InvokeModelWithBidirectionalStreamOutput",
          49  +
    "com.amazonaws.bedrockruntime",
          50  +
    "InvokeModelWithBidirectionalStreamOutput",
          51  +
);
          52  +
static INVOKEMODELWITHBIDIRECTIONALSTREAMOUTPUT_MEMBER_CHUNK: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          53  +
    ::aws_smithy_schema::ShapeId::from_static(
          54  +
        "com.amazonaws.bedrockruntime#InvokeModelWithBidirectionalStreamOutput$chunk",
          55  +
        "com.amazonaws.bedrockruntime",
          56  +
        "InvokeModelWithBidirectionalStreamOutput",
          57  +
    ),
          58  +
    ::aws_smithy_schema::ShapeType::Structure,
          59  +
    "chunk",
          60  +
    0,
          61  +
);
          62  +
static INVOKEMODELWITHBIDIRECTIONALSTREAMOUTPUT_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          63  +
    INVOKEMODELWITHBIDIRECTIONALSTREAMOUTPUT_SCHEMA_ID,
          64  +
    ::aws_smithy_schema::ShapeType::Union,
          65  +
    &[&INVOKEMODELWITHBIDIRECTIONALSTREAMOUTPUT_MEMBER_CHUNK],
          66  +
)
          67  +
.with_streaming();
          68  +
impl InvokeModelWithBidirectionalStreamOutput {
          69  +
    /// The schema for this shape.
          70  +
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &INVOKEMODELWITHBIDIRECTIONALSTREAMOUTPUT_SCHEMA;
          71  +
}
          72  +
impl ::aws_smithy_schema::serde::SerializableStruct for InvokeModelWithBidirectionalStreamOutput {
          73  +
    #[allow(unused_variables, clippy::diverging_sub_expression)]
          74  +
    fn serialize_members(
          75  +
        &self,
          76  +
        ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer,
          77  +
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
          78  +
        match self {
          79  +
            Self::Chunk(val) => {
          80  +
                ser.write_struct(&INVOKEMODELWITHBIDIRECTIONALSTREAMOUTPUT_MEMBER_CHUNK, val)?;
          81  +
            }
          82  +
            Self::Unknown => return Err(::aws_smithy_schema::serde::SerdeError::custom("cannot serialize unknown union variant")),
          83  +
        }
          84  +
        Ok(())
          85  +
    }
          86  +
}
          87  +
impl InvokeModelWithBidirectionalStreamOutput {
          88  +
    /// Deserializes this union from a [`ShapeDeserializer`].
          89  +
    pub fn deserialize(
          90  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          91  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          92  +
        let mut result: ::std::option::Option<Self> = ::std::option::Option::None;
          93  +
        #[allow(unused_variables, unreachable_code, clippy::single_match, clippy::match_single_binding)]
          94  +
        deserializer.read_struct(&INVOKEMODELWITHBIDIRECTIONALSTREAMOUTPUT_SCHEMA, &mut |member, deser| {
          95  +
            result = ::std::option::Option::Some(match member.member_index() {
          96  +
                Some(0) => Self::Chunk(crate::types::BidirectionalOutputPayloadPart::deserialize(deser)?),
          97  +
                _ => Self::Unknown,
          98  +
            });
          99  +
            Ok(())
         100  +
        })?;
         101  +
        result.ok_or_else(|| ::aws_smithy_schema::serde::SerdeError::custom("expected a union variant"))
         102  +
    }
         103  +
}

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_message.rs

@@ -51,51 +159,168 @@
   71     71   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   72     72   
        {
   73     73   
            let val = &self.role;
   74     74   
            ser.write_string(&MESSAGE_MEMBER_ROLE, val.as_str())?;
   75     75   
        }
   76     76   
        {
   77     77   
            let val = &self.content;
   78     78   
   79     79   
            ser.write_list(&MESSAGE_MEMBER_CONTENT, &|ser: &mut dyn ::aws_smithy_schema::serde::ShapeSerializer| {
   80     80   
                for item in val {
   81         -
                    todo!("schema: unsupported list element type");
          81  +
                    ser.write_struct(crate::types::ContentBlock::SCHEMA, item)?;
   82     82   
                }
   83     83   
                Ok(())
   84     84   
            })?;
   85     85   
        }
   86     86   
        Ok(())
   87     87   
    }
   88     88   
}
   89     89   
impl Message {
   90     90   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   91         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   92         -
        deserializer: &mut D,
          91  +
    pub fn deserialize(
          92  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   93     93   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   94     94   
        #[allow(unused_variables, unused_mut)]
   95     95   
        let mut builder = Self::builder();
   96     96   
        #[allow(
   97     97   
            unused_variables,
   98     98   
            unreachable_code,
   99     99   
            clippy::single_match,
  100    100   
            clippy::match_single_binding,
  101    101   
            clippy::diverging_sub_expression
  102    102   
        )]
  103         -
        deserializer.read_struct(&MESSAGE_SCHEMA, (), |_, member, deser| {
         103  +
        deserializer.read_struct(&MESSAGE_SCHEMA, &mut |member, deser| {
  104    104   
            match member.member_index() {
  105    105   
                Some(0) => {
  106    106   
                    builder.role = Some(crate::types::ConversationRole::from(deser.read_string(member)?.as_str()));
  107    107   
                }
  108    108   
                Some(1) => {
  109    109   
                    builder.content = Some({
  110         -
                        let container = if let Some(cap) = deser.container_size() {
  111         -
                            Vec::with_capacity(cap)
  112         -
                        } else {
  113         -
                            Vec::new()
  114         -
                        };
  115         -
                        deser.read_list(member, container, |mut list, deser| {
  116         -
                            list.push(todo!("deserialize nested aggregate"));
  117         -
                            Ok(list)
  118         -
                        })?
         110  +
                        let mut container = Vec::new();
         111  +
                        deser.read_list(member, &mut |deser| {
         112  +
                            container.push(crate::types::ContentBlock::deserialize(deser)?);
         113  +
                            Ok(())
         114  +
                        })?;
         115  +
                        container
  119    116   
                    });
  120    117   
                }
  121    118   
                _ => {}
  122    119   
            }
  123    120   
            Ok(())
  124    121   
        })?;
         122  +
        builder.content = builder.content.or(Some(Vec::new()));
  125    123   
        builder
  126    124   
            .build()
  127    125   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
  128    126   
    }
  129    127   
}
         128  +
impl Message {
         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  +
}
  130    139   
impl Message {
  131    140   
    /// Creates a new builder-style object to manufacture [`Message`](crate::types::Message).
  132    141   
    pub fn builder() -> crate::types::builders::MessageBuilder {
  133    142   
        crate::types::builders::MessageBuilder::default()
  134    143   
    }
  135    144   
}
  136    145   
  137    146   
/// A builder for [`Message`](crate::types::Message).
  138    147   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
  139    148   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_message_start_event.rs

@@ -25,25 +110,121 @@
   45     45   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   46     46   
        {
   47     47   
            let val = &self.role;
   48     48   
            ser.write_string(&MESSAGESTARTEVENT_MEMBER_ROLE, val.as_str())?;
   49     49   
        }
   50     50   
        Ok(())
   51     51   
    }
   52     52   
}
   53     53   
impl MessageStartEvent {
   54     54   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   55         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   56         -
        deserializer: &mut D,
          55  +
    pub fn deserialize(
          56  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   57     57   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   58     58   
        #[allow(unused_variables, unused_mut)]
   59     59   
        let mut builder = Self::builder();
   60     60   
        #[allow(
   61     61   
            unused_variables,
   62     62   
            unreachable_code,
   63     63   
            clippy::single_match,
   64     64   
            clippy::match_single_binding,
   65     65   
            clippy::diverging_sub_expression
   66     66   
        )]
   67         -
        deserializer.read_struct(&MESSAGESTARTEVENT_SCHEMA, (), |_, member, deser| {
          67  +
        deserializer.read_struct(&MESSAGESTARTEVENT_SCHEMA, &mut |member, deser| {
   68     68   
            match member.member_index() {
   69     69   
                Some(0) => {
   70     70   
                    builder.role = Some(crate::types::ConversationRole::from(deser.read_string(member)?.as_str()));
   71     71   
                }
   72     72   
                _ => {}
   73     73   
            }
   74     74   
            Ok(())
   75     75   
        })?;
   76     76   
        builder
   77     77   
            .build()
   78     78   
            .map_err(|e| aws_smithy_schema::serde::SerdeError::Custom { message: e.to_string() })
   79     79   
    }
   80     80   
}
          81  +
impl MessageStartEvent {
          82  +
    /// Deserializes this structure from a body deserializer and HTTP response.
          83  +
    pub fn deserialize_with_response(
          84  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          85  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
          86  +
        _status: u16,
          87  +
        _body: &[u8],
          88  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          89  +
        Self::deserialize(deserializer)
          90  +
    }
          91  +
}
   81     92   
impl MessageStartEvent {
   82     93   
    /// Creates a new builder-style object to manufacture [`MessageStartEvent`](crate::types::MessageStartEvent).
   83     94   
    pub fn builder() -> crate::types::builders::MessageStartEventBuilder {
   84     95   
        crate::types::builders::MessageStartEventBuilder::default()
   85     96   
    }
   86     97   
}
   87     98   
   88     99   
/// A builder for [`MessageStartEvent`](crate::types::MessageStartEvent).
   89    100   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   90    101   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_message_stop_event.rs

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

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_payload_part.rs

@@ -29,29 +112,123 @@
   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.bytes {
   52     52   
            ser.write_blob(&PAYLOADPART_MEMBER_BYTES, val)?;
   53     53   
        }
   54     54   
        Ok(())
   55     55   
    }
   56     56   
}
   57     57   
impl PayloadPart {
   58     58   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   59         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   60         -
        deserializer: &mut D,
          59  +
    pub fn deserialize(
          60  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   61     61   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   62     62   
        #[allow(unused_variables, unused_mut)]
   63     63   
        let mut builder = Self::builder();
   64     64   
        #[allow(
   65     65   
            unused_variables,
   66     66   
            unreachable_code,
   67     67   
            clippy::single_match,
   68     68   
            clippy::match_single_binding,
   69     69   
            clippy::diverging_sub_expression
   70     70   
        )]
   71         -
        deserializer.read_struct(&PAYLOADPART_SCHEMA, (), |_, member, deser| {
          71  +
        deserializer.read_struct(&PAYLOADPART_SCHEMA, &mut |member, deser| {
   72     72   
            match member.member_index() {
   73     73   
                Some(0) => {
   74     74   
                    builder.bytes = Some(deser.read_blob(member)?);
   75     75   
                }
   76     76   
                _ => {}
   77     77   
            }
   78     78   
            Ok(())
   79     79   
        })?;
   80     80   
        Ok(builder.build())
   81     81   
    }
   82     82   
}
          83  +
impl PayloadPart {
          84  +
    /// Deserializes this structure from a body deserializer and HTTP response.
          85  +
    pub fn deserialize_with_response(
          86  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          87  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
          88  +
        _status: u16,
          89  +
        _body: &[u8],
          90  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          91  +
        Self::deserialize(deserializer)
          92  +
    }
          93  +
}
   83     94   
impl PayloadPart {
   84     95   
    /// Creates a new builder-style object to manufacture [`PayloadPart`](crate::types::PayloadPart).
   85     96   
    pub fn builder() -> crate::types::builders::PayloadPartBuilder {
   86     97   
        crate::types::builders::PayloadPartBuilder::default()
   87     98   
    }
   88     99   
}
   89    100   
   90    101   
/// A builder for [`PayloadPart`](crate::types::PayloadPart).
   91    102   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
   92    103   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_performance_configuration.rs

@@ -25,25 +108,119 @@
   45     45   
    ) -> ::std::result::Result<(), ::aws_smithy_schema::serde::SerdeError> {
   46     46   
        {
   47     47   
            let val = &self.latency;
   48     48   
            ser.write_string(&PERFORMANCECONFIGURATION_MEMBER_LATENCY, val.as_str())?;
   49     49   
        }
   50     50   
        Ok(())
   51     51   
    }
   52     52   
}
   53     53   
impl PerformanceConfiguration {
   54     54   
    /// Deserializes this structure from a [`ShapeDeserializer`].
   55         -
    pub fn deserialize<D: ::aws_smithy_schema::serde::ShapeDeserializer>(
   56         -
        deserializer: &mut D,
          55  +
    pub fn deserialize(
          56  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
   57     57   
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
   58     58   
        #[allow(unused_variables, unused_mut)]
   59     59   
        let mut builder = Self::builder();
   60     60   
        #[allow(
   61     61   
            unused_variables,
   62     62   
            unreachable_code,
   63     63   
            clippy::single_match,
   64     64   
            clippy::match_single_binding,
   65     65   
            clippy::diverging_sub_expression
   66     66   
        )]
   67         -
        deserializer.read_struct(&PERFORMANCECONFIGURATION_SCHEMA, (), |_, member, deser| {
          67  +
        deserializer.read_struct(&PERFORMANCECONFIGURATION_SCHEMA, &mut |member, deser| {
   68     68   
            match member.member_index() {
   69     69   
                Some(0) => {
   70     70   
                    builder.latency = Some(crate::types::PerformanceConfigLatency::from(deser.read_string(member)?.as_str()));
   71     71   
                }
   72     72   
                _ => {}
   73     73   
            }
   74     74   
            Ok(())
   75     75   
        })?;
   76     76   
        Ok(builder.build())
   77     77   
    }
   78     78   
}
          79  +
impl PerformanceConfiguration {
          80  +
    /// Deserializes this structure from a body deserializer and HTTP response.
          81  +
    pub fn deserialize_with_response(
          82  +
        deserializer: &mut dyn ::aws_smithy_schema::serde::ShapeDeserializer,
          83  +
        _headers: &::aws_smithy_runtime_api::http::Headers,
          84  +
        _status: u16,
          85  +
        _body: &[u8],
          86  +
    ) -> ::std::result::Result<Self, ::aws_smithy_schema::serde::SerdeError> {
          87  +
        Self::deserialize(deserializer)
          88  +
    }
          89  +
}
   79     90   
impl PerformanceConfiguration {
   80     91   
    /// Creates a new builder-style object to manufacture [`PerformanceConfiguration`](crate::types::PerformanceConfiguration).
   81     92   
    pub fn builder() -> crate::types::builders::PerformanceConfigurationBuilder {
   82     93   
        crate::types::builders::PerformanceConfigurationBuilder::default()
   83     94   
    }
   84     95   
}
   85     96   
   86     97   
/// A builder for [`PerformanceConfiguration`](crate::types::PerformanceConfiguration).
   87     98   
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   88     99   
#[non_exhaustive]

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_prompt_router_trace.rs

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

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/types/_prompt_variable_values.rs

@@ -9,9 +0,94 @@
   29     29   
    }
   30     30   
    /// Returns true if this is a [`Text`](crate::types::PromptVariableValues::Text).
   31     31   
    pub fn is_text(&self) -> bool {
   32     32   
        self.as_text().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 PROMPTVARIABLEVALUES_SCHEMA_ID: ::aws_smithy_schema::ShapeId = ::aws_smithy_schema::ShapeId::from_static(
          40  +
    "com.amazonaws.bedrockruntime#PromptVariableValues",
          41  +
    "com.amazonaws.bedrockruntime",
          42  +
    "PromptVariableValues",
          43  +
);
          44  +
static PROMPTVARIABLEVALUES_MEMBER_TEXT: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_member(
          45  +
    ::aws_smithy_schema::ShapeId::from_static(
          46  +
        "com.amazonaws.bedrockruntime#PromptVariableValues$text",
          47  +
        "com.amazonaws.bedrockruntime",
          48  +
        "PromptVariableValues",
          49  +
    ),
          50  +
    ::aws_smithy_schema::ShapeType::String,
          51  +
    "text",
          52  +
    0,
          53  +
);
          54  +
static PROMPTVARIABLEVALUES_SCHEMA: ::aws_smithy_schema::Schema = ::aws_smithy_schema::Schema::new_struct(
          55  +
    PROMPTVARIABLEVALUES_SCHEMA_ID,
          56  +
    ::aws_smithy_schema::ShapeType::Union,
          57  +
    &[&PROMPTVARIABLEVALUES_MEMBER_TEXT],
          58  +
);
          59  +
impl PromptVariableValues {
          60  +
    /// The schema for this shape.
          61  +
    pub const SCHEMA: &'static ::aws_smithy_schema::Schema = &PROMPTVARIABLEVALUES_SCHEMA;
          62  +
}
          63  +
impl ::aws_smithy_schema::serde::SerializableStruct for PromptVariableValues {
          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::Text(val) => {
          71  +
                ser.write_string(&PROMPTVARIABLEVALUES_MEMBER_TEXT, 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 PromptVariableValues {
          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(&PROMPTVARIABLEVALUES_SCHEMA, &mut |member, deser| {
          86  +
            result = ::std::option::Option::Some(match member.member_index() {
          87  +
                Some(0) => Self::Text(deser.read_string(member)?),
          88  +
                _ => Self::Unknown,
          89  +
            });
          90  +
            Ok(())
          91  +
        })?;
          92  +
        result.ok_or_else(|| ::aws_smithy_schema::serde::SerdeError::custom("expected a union variant"))
          93  +
    }
          94  +
}