aws_sdk_bedrockruntime/protocol_serde/
shape_tool_choice.rs1pub fn ser_tool_choice(
3 object_5: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
4 input: &crate::types::ToolChoice,
5) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
6 match input {
7 crate::types::ToolChoice::Auto(inner) => {
8 #[allow(unused_mut)]
9 let mut object_1 = object_5.key("auto").start_object();
10 crate::protocol_serde::shape_auto_tool_choice::ser_auto_tool_choice(&mut object_1, inner)?;
11 object_1.finish();
12 }
13 crate::types::ToolChoice::Any(inner) => {
14 #[allow(unused_mut)]
15 let mut object_2 = object_5.key("any").start_object();
16 crate::protocol_serde::shape_any_tool_choice::ser_any_tool_choice(&mut object_2, inner)?;
17 object_2.finish();
18 }
19 crate::types::ToolChoice::Tool(inner) => {
20 #[allow(unused_mut)]
21 let mut object_3 = object_5.key("tool").start_object();
22 crate::protocol_serde::shape_specific_tool_choice::ser_specific_tool_choice(&mut object_3, inner)?;
23 object_3.finish();
24 }
25 crate::types::ToolChoice::Unknown => return Err(::aws_smithy_types::error::operation::SerializationError::unknown_variant("ToolChoice")),
26 }
27 Ok(())
28}