pub fn ser_put_managed_rule_set_versions_input_input(
object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::operation::put_managed_rule_set_versions::PutManagedRuleSetVersionsInput,
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
if let Some(var_1) = &input.name {
object.key("Name").string(var_1.as_str());
}
if let Some(var_2) = &input.scope {
object.key("Scope").string(var_2.as_str());
}
if let Some(var_3) = &input.id {
object.key("Id").string(var_3.as_str());
}
if let Some(var_4) = &input.lock_token {
object.key("LockToken").string(var_4.as_str());
}
if let Some(var_5) = &input.recommended_version {
object.key("RecommendedVersion").string(var_5.as_str());
}
if let Some(var_6) = &input.versions_to_publish {
#[allow(unused_mut)]
let mut object_7 = object.key("VersionsToPublish").start_object();
for (key_8, value_9) in var_6 {
{
#[allow(unused_mut)]
let mut object_10 = object_7.key(key_8.as_str()).start_object();
crate::protocol_serde::shape_version_to_publish::ser_version_to_publish(&mut object_10, value_9)?;
object_10.finish();
}
}
object_7.finish();
}
Ok(())
}