pub fn ser_principal_role_entitlement(
object: &mut ::aws_smithy_json::serialize::JsonObjectWriter,
input: &crate::types::PrincipalRoleEntitlement,
) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
if let Some(var_1) = &input.principal {
#[allow(unused_mut)]
let mut object_2 = object.key("principal").start_object();
crate::protocol_serde::shape_principal::ser_principal(&mut object_2, var_1)?;
object_2.finish();
}
{
object.key("roleArn").string(input.role_arn.as_str());
}
Ok(())
}