pub fn ser_create_change_set_input_input_input(
input: &crate::operation::create_change_set::CreateChangeSetInput,
) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
let mut out = String::new();
#[allow(unused_mut)]
let mut writer = ::aws_smithy_query::QueryWriter::new(&mut out, "CreateChangeSet", "2010-05-15");
#[allow(unused_mut)]
let mut scope_1 = writer.prefix("StackName");
if let Some(var_2) = &input.stack_name {
scope_1.string(var_2);
}
#[allow(unused_mut)]
let mut scope_3 = writer.prefix("TemplateBody");
if let Some(var_4) = &input.template_body {
scope_3.string(var_4);
}
#[allow(unused_mut)]
let mut scope_5 = writer.prefix("TemplateURL");
if let Some(var_6) = &input.template_url {
scope_5.string(var_6);
}
#[allow(unused_mut)]
let mut scope_7 = writer.prefix("UsePreviousTemplate");
if let Some(var_8) = &input.use_previous_template {
scope_7.boolean(*var_8);
}
#[allow(unused_mut)]
let mut scope_9 = writer.prefix("Parameters");
if let Some(var_10) = &input.parameters {
let mut list_12 = scope_9.start_list(false, None);
for item_11 in var_10 {
#[allow(unused_mut)]
let mut entry_13 = list_12.entry();
crate::protocol_serde::shape_parameter::ser_parameter(entry_13, item_11)?;
}
list_12.finish();
}
#[allow(unused_mut)]
let mut scope_14 = writer.prefix("Capabilities");
if let Some(var_15) = &input.capabilities {
let mut list_17 = scope_14.start_list(false, None);
for item_16 in var_15 {
#[allow(unused_mut)]
let mut entry_18 = list_17.entry();
entry_18.string(item_16.as_str());
}
list_17.finish();
}
#[allow(unused_mut)]
let mut scope_19 = writer.prefix("ResourceTypes");
if let Some(var_20) = &input.resource_types {
let mut list_22 = scope_19.start_list(false, None);
for item_21 in var_20 {
#[allow(unused_mut)]
let mut entry_23 = list_22.entry();
entry_23.string(item_21);
}
list_22.finish();
}
#[allow(unused_mut)]
let mut scope_24 = writer.prefix("RoleARN");
if let Some(var_25) = &input.role_arn {
scope_24.string(var_25);
}
#[allow(unused_mut)]
let mut scope_26 = writer.prefix("RollbackConfiguration");
if let Some(var_27) = &input.rollback_configuration {
crate::protocol_serde::shape_rollback_configuration::ser_rollback_configuration(scope_26, var_27)?;
}
#[allow(unused_mut)]
let mut scope_28 = writer.prefix("NotificationARNs");
if let Some(var_29) = &input.notification_arns {
let mut list_31 = scope_28.start_list(false, None);
for item_30 in var_29 {
#[allow(unused_mut)]
let mut entry_32 = list_31.entry();
entry_32.string(item_30);
}
list_31.finish();
}
#[allow(unused_mut)]
let mut scope_33 = writer.prefix("Tags");
if let Some(var_34) = &input.tags {
let mut list_36 = scope_33.start_list(false, None);
for item_35 in var_34 {
#[allow(unused_mut)]
let mut entry_37 = list_36.entry();
crate::protocol_serde::shape_tag::ser_tag(entry_37, item_35)?;
}
list_36.finish();
}
#[allow(unused_mut)]
let mut scope_38 = writer.prefix("ChangeSetName");
if let Some(var_39) = &input.change_set_name {
scope_38.string(var_39);
}
#[allow(unused_mut)]
let mut scope_40 = writer.prefix("ClientToken");
if let Some(var_41) = &input.client_token {
scope_40.string(var_41);
}
#[allow(unused_mut)]
let mut scope_42 = writer.prefix("Description");
if let Some(var_43) = &input.description {
scope_42.string(var_43);
}
#[allow(unused_mut)]
let mut scope_44 = writer.prefix("ChangeSetType");
if let Some(var_45) = &input.change_set_type {
scope_44.string(var_45.as_str());
}
#[allow(unused_mut)]
let mut scope_46 = writer.prefix("ResourcesToImport");
if let Some(var_47) = &input.resources_to_import {
let mut list_49 = scope_46.start_list(false, None);
for item_48 in var_47 {
#[allow(unused_mut)]
let mut entry_50 = list_49.entry();
crate::protocol_serde::shape_resource_to_import::ser_resource_to_import(entry_50, item_48)?;
}
list_49.finish();
}
#[allow(unused_mut)]
let mut scope_51 = writer.prefix("IncludeNestedStacks");
if let Some(var_52) = &input.include_nested_stacks {
scope_51.boolean(*var_52);
}
#[allow(unused_mut)]
let mut scope_53 = writer.prefix("OnStackFailure");
if let Some(var_54) = &input.on_stack_failure {
scope_53.string(var_54.as_str());
}
#[allow(unused_mut)]
let mut scope_55 = writer.prefix("ImportExistingResources");
if let Some(var_56) = &input.import_existing_resources {
scope_55.boolean(*var_56);
}
#[allow(unused_mut)]
let mut scope_57 = writer.prefix("DeploymentMode");
if let Some(var_58) = &input.deployment_mode {
scope_57.string(var_58.as_str());
}
writer.finish();
Ok(::aws_smithy_types::body::SdkBody::from(out))
}