#include "unicode/utypes.h"
#if !UCONFIG_NO_FORMATTING
#include <utility>
#include "unicode/gender.h"
#include "unicode/ugender.h"
#include "unicode/ures.h"
#include "bytesinkutil.h"
#include "charstr.h"
#include "cmemory.h"
#include "cstring.h"
#include "mutex.h"
#include "uassert.h"
#include "ucln_in.h"
#include "ulocimp.h"
#include "umutex.h"
#include "uhash.h"
static UHashtable* gGenderInfoCache = …;
static const char* gNeutralStr = …;
static const char* gMailTaintsStr = …;
static const char* gMixedNeutralStr = …;
static icu::GenderInfo* gObjs = …;
static icu::UInitOnce gGenderInitOnce { … };
enum GenderStyle { … };
U_CDECL_BEGIN
static UBool U_CALLCONV gender_cleanup() { … }
U_CDECL_END
U_NAMESPACE_BEGIN
void U_CALLCONV GenderInfo_initCache(UErrorCode &status) { … }
GenderInfo::GenderInfo() { … }
GenderInfo::~GenderInfo() { … }
const GenderInfo* GenderInfo::getInstance(const Locale& locale, UErrorCode& status) { … }
const GenderInfo* GenderInfo::loadInstance(const Locale& locale, UErrorCode& status) { … }
UGender GenderInfo::getListGender(const UGender* genders, int32_t length, UErrorCode& status) const { … }
const GenderInfo* GenderInfo::getNeutralInstance() { … }
const GenderInfo* GenderInfo::getMixedNeutralInstance() { … }
const GenderInfo* GenderInfo::getMaleTaintsInstance() { … }
U_NAMESPACE_END
U_CAPI const UGenderInfo* U_EXPORT2
ugender_getInstance(const char* locale, UErrorCode* status) { … }
U_CAPI UGender U_EXPORT2
ugender_getListGender(const UGenderInfo* genderInfo, const UGender* genders, int32_t size, UErrorCode* status) { … }
#endif