pub fn ser_browser_action(
object_2: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::types::BrowserAction,
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
match input {
crate::types::BrowserAction::MouseClick(inner) => {
#[allow(unused_mut)]
let mut object_1 = object_2.key("mouseClick").start_object();
crate::protocol_serde::shape_mouse_click_arguments::ser_mouse_click_arguments(&mut object_1, inner)?;
object_1.finish();
}
crate::types::BrowserAction::MouseMove(inner) => {
#[allow(unused_mut)]
let mut object_2 = object_2.key("mouseMove").start_object();
crate::protocol_serde::shape_mouse_move_arguments::ser_mouse_move_arguments(&mut object_2, inner)?;
object_2.finish();
}
crate::types::BrowserAction::MouseDrag(inner) => {
#[allow(unused_mut)]
let mut object_3 = object_2.key("mouseDrag").start_object();
crate::protocol_serde::shape_mouse_drag_arguments::ser_mouse_drag_arguments(&mut object_3, inner)?;
object_3.finish();
}
crate::types::BrowserAction::MouseScroll(inner) => {
#[allow(unused_mut)]
let mut object_4 = object_2.key("mouseScroll").start_object();
crate::protocol_serde::shape_mouse_scroll_arguments::ser_mouse_scroll_arguments(&mut object_4, inner)?;
object_4.finish();
}
crate::types::BrowserAction::KeyType(inner) => {
#[allow(unused_mut)]
let mut object_5 = object_2.key("keyType").start_object();
crate::protocol_serde::shape_key_type_arguments::ser_key_type_arguments(&mut object_5, inner)?;
object_5.finish();
}
crate::types::BrowserAction::KeyPress(inner) => {
#[allow(unused_mut)]
let mut object_6 = object_2.key("keyPress").start_object();
crate::protocol_serde::shape_key_press_arguments::ser_key_press_arguments(&mut object_6, inner)?;
object_6.finish();
}
crate::types::BrowserAction::KeyShortcut(inner) => {
#[allow(unused_mut)]
let mut object_7 = object_2.key("keyShortcut").start_object();
crate::protocol_serde::shape_key_shortcut_arguments::ser_key_shortcut_arguments(&mut object_7, inner)?;
object_7.finish();
}
crate::types::BrowserAction::Screenshot(inner) => {
#[allow(unused_mut)]
let mut object_8 = object_2.key("screenshot").start_object();
crate::protocol_serde::shape_screenshot_arguments::ser_screenshot_arguments(&mut object_8, inner)?;
object_8.finish();
}
crate::types::BrowserAction::Unknown => {
return Err(::aws_smithy_types::error::operation::SerializationError::unknown_variant("BrowserAction"))
}
}
Ok(())
}