pub fn ser_subscribed_principal_input(
object_22: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::types::SubscribedPrincipalInput,
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
match input {
crate::types::SubscribedPrincipalInput::Project(inner) => {
#[allow(unused_mut)]
let mut object_1 = object_22.key("project").start_object();
crate::protocol_serde::shape_subscribed_project_input::ser_subscribed_project_input(&mut object_1, inner)?;
object_1.finish();
}
crate::types::SubscribedPrincipalInput::User(inner) => {
#[allow(unused_mut)]
let mut object_2 = object_22.key("user").start_object();
crate::protocol_serde::shape_subscribed_user_input::ser_subscribed_user_input(&mut object_2, inner)?;
object_2.finish();
}
crate::types::SubscribedPrincipalInput::Group(inner) => {
#[allow(unused_mut)]
let mut object_3 = object_22.key("group").start_object();
crate::protocol_serde::shape_subscribed_group_input::ser_subscribed_group_input(&mut object_3, inner)?;
object_3.finish();
}
crate::types::SubscribedPrincipalInput::Iam(inner) => {
#[allow(unused_mut)]
let mut object_4 = object_22.key("iam").start_object();
crate::protocol_serde::shape_subscribed_iam_principal_input::ser_subscribed_iam_principal_input(&mut object_4, inner)?;
object_4.finish();
}
crate::types::SubscribedPrincipalInput::Unknown => {
return Err(::aws_smithy_types::error::operation::SerializationError::unknown_variant(
"SubscribedPrincipalInput",
))
}
}
Ok(())
}