in runtime/shared/fbt.js [381:413]
function getPronounGenderKey(usage, gender) {
switch (gender) {
case GenderConst.NOT_A_PERSON:
return usage === ValidPronounUsages.object ||
usage === ValidPronounUsages.reflexive
? GenderConst.NOT_A_PERSON
: GenderConst.UNKNOWN_PLURAL;
case GenderConst.FEMALE_SINGULAR:
case GenderConst.FEMALE_SINGULAR_GUESS:
return GenderConst.FEMALE_SINGULAR;
case GenderConst.MALE_SINGULAR:
case GenderConst.MALE_SINGULAR_GUESS:
return GenderConst.MALE_SINGULAR;
case GenderConst.MIXED_UNKNOWN:
case GenderConst.FEMALE_PLURAL:
case GenderConst.MALE_PLURAL:
case GenderConst.NEUTER_PLURAL:
case GenderConst.UNKNOWN_PLURAL:
return GenderConst.UNKNOWN_PLURAL;
case GenderConst.NEUTER_SINGULAR:
case GenderConst.UNKNOWN_SINGULAR:
return usage === ValidPronounUsages.reflexive
? GenderConst.NOT_A_PERSON
: GenderConst.UNKNOWN_PLURAL;
}
// Mirrors the behavior of :fbt:pronoun when an unknown gender value is given.
return GenderConst.NOT_A_PERSON;
}