pub fn ser_create_function_input_input(
object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::operation::create_function::CreateFunctionInput,
) -> Result<(), ::aws_smithy_types::error::operation::SerializationError> {
if let Some(var_1) = &input.architectures {
let mut array_2 = object.key("Architectures").start_array();
for item_3 in var_1 {
{
array_2.value().string(item_3.as_str());
}
}
array_2.finish();
}
if let Some(var_4) = &input.code {
#[allow(unused_mut)]
let mut object_5 = object.key("Code").start_object();
crate::protocol_serde::shape_function_code::ser_function_code(&mut object_5, var_4)?;
object_5.finish();
}
if let Some(var_6) = &input.code_signing_config_arn {
object.key("CodeSigningConfigArn").string(var_6.as_str());
}
if let Some(var_7) = &input.dead_letter_config {
#[allow(unused_mut)]
let mut object_8 = object.key("DeadLetterConfig").start_object();
crate::protocol_serde::shape_dead_letter_config::ser_dead_letter_config(&mut object_8, var_7)?;
object_8.finish();
}
if let Some(var_9) = &input.description {
object.key("Description").string(var_9.as_str());
}
if let Some(var_10) = &input.environment {
#[allow(unused_mut)]
let mut object_11 = object.key("Environment").start_object();
crate::protocol_serde::shape_environment::ser_environment(&mut object_11, var_10)?;
object_11.finish();
}
if let Some(var_12) = &input.ephemeral_storage {
#[allow(unused_mut)]
let mut object_13 = object.key("EphemeralStorage").start_object();
crate::protocol_serde::shape_ephemeral_storage::ser_ephemeral_storage(&mut object_13, var_12)?;
object_13.finish();
}
if let Some(var_14) = &input.file_system_configs {
let mut array_15 = object.key("FileSystemConfigs").start_array();
for item_16 in var_14 {
{
#[allow(unused_mut)]
let mut object_17 = array_15.value().start_object();
crate::protocol_serde::shape_file_system_config::ser_file_system_config(&mut object_17, item_16)?;
object_17.finish();
}
}
array_15.finish();
}
if let Some(var_18) = &input.function_name {
object.key("FunctionName").string(var_18.as_str());
}
if let Some(var_19) = &input.handler {
object.key("Handler").string(var_19.as_str());
}
if let Some(var_20) = &input.image_config {
#[allow(unused_mut)]
let mut object_21 = object.key("ImageConfig").start_object();
crate::protocol_serde::shape_image_config::ser_image_config(&mut object_21, var_20)?;
object_21.finish();
}
if let Some(var_22) = &input.kms_key_arn {
object.key("KMSKeyArn").string(var_22.as_str());
}
if let Some(var_23) = &input.layers {
let mut array_24 = object.key("Layers").start_array();
for item_25 in var_23 {
{
array_24.value().string(item_25.as_str());
}
}
array_24.finish();
}
if let Some(var_26) = &input.logging_config {
#[allow(unused_mut)]
let mut object_27 = object.key("LoggingConfig").start_object();
crate::protocol_serde::shape_logging_config::ser_logging_config(&mut object_27, var_26)?;
object_27.finish();
}
if let Some(var_28) = &input.memory_size {
object.key("MemorySize").number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_28).into()),
);
}
if let Some(var_29) = &input.package_type {
object.key("PackageType").string(var_29.as_str());
}
if let Some(var_30) = &input.publish {
object.key("Publish").boolean(*var_30);
}
if let Some(var_31) = &input.role {
object.key("Role").string(var_31.as_str());
}
if let Some(var_32) = &input.runtime {
object.key("Runtime").string(var_32.as_str());
}
if let Some(var_33) = &input.snap_start {
#[allow(unused_mut)]
let mut object_34 = object.key("SnapStart").start_object();
crate::protocol_serde::shape_snap_start::ser_snap_start(&mut object_34, var_33)?;
object_34.finish();
}
if let Some(var_35) = &input.tags {
#[allow(unused_mut)]
let mut object_36 = object.key("Tags").start_object();
for (key_37, value_38) in var_35 {
{
object_36.key(key_37.as_str()).string(value_38.as_str());
}
}
object_36.finish();
}
if let Some(var_39) = &input.timeout {
object.key("Timeout").number(
#[allow(clippy::useless_conversion)]
::aws_smithy_types::Number::NegInt((*var_39).into()),
);
}
if let Some(var_40) = &input.tracing_config {
#[allow(unused_mut)]
let mut object_41 = object.key("TracingConfig").start_object();
crate::protocol_serde::shape_tracing_config::ser_tracing_config(&mut object_41, var_40)?;
object_41.finish();
}
if let Some(var_42) = &input.vpc_config {
#[allow(unused_mut)]
let mut object_43 = object.key("VpcConfig").start_object();
crate::protocol_serde::shape_vpc_config::ser_vpc_config(&mut object_43, var_42)?;
object_43.finish();
}
Ok(())
}