pub fn ser_harness_model_configuration(
object_12: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::types::HarnessModelConfiguration,
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
match input {
crate::types::HarnessModelConfiguration::BedrockModelConfig(inner) => {
#[allow(unused_mut)]
let mut object_1 = object_12.key("bedrockModelConfig").start_object();
crate::protocol_serde::shape_harness_bedrock_model_config::ser_harness_bedrock_model_config(&mut object_1, inner)?;
object_1.finish();
}
crate::types::HarnessModelConfiguration::OpenAiModelConfig(inner) => {
#[allow(unused_mut)]
let mut object_2 = object_12.key("openAiModelConfig").start_object();
crate::protocol_serde::shape_harness_open_ai_model_config::ser_harness_open_ai_model_config(&mut object_2, inner)?;
object_2.finish();
}
crate::types::HarnessModelConfiguration::GeminiModelConfig(inner) => {
#[allow(unused_mut)]
let mut object_3 = object_12.key("geminiModelConfig").start_object();
crate::protocol_serde::shape_harness_gemini_model_config::ser_harness_gemini_model_config(&mut object_3, inner)?;
object_3.finish();
}
crate::types::HarnessModelConfiguration::LiteLlmModelConfig(inner) => {
#[allow(unused_mut)]
let mut object_4 = object_12.key("liteLlmModelConfig").start_object();
crate::protocol_serde::shape_harness_lite_llm_model_config::ser_harness_lite_llm_model_config(&mut object_4, inner)?;
object_4.finish();
}
crate::types::HarnessModelConfiguration::Unknown => {
return Err(::aws_smithy_types::error::operation::SerializationError::unknown_variant(
"HarnessModelConfiguration",
))
}
}
Ok(())
}