Imported Upstream version 58.2
[platform/upstream/icu.git] / source / i18n / unicode / gender.h
index 4b52ffd..943d445 100644 (file)
@@ -1,3 +1,5 @@
+// Copyright (C) 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
 /*
 *******************************************************************************
 * Copyright (C) 2008-2013, International Business Machines Corporation and
@@ -19,7 +21,6 @@
 #include "unicode/utypes.h"
 
 #if !UCONFIG_NO_FORMATTING
-#ifndef U_HIDE_DRAFT_API
 
 #include "unicode/locid.h"
 #include "unicode/ugender.h"
@@ -29,10 +30,13 @@ class GenderInfoTest;
 
 U_NAMESPACE_BEGIN
 
+// Forward Declaration
+void U_CALLCONV GenderInfo_initCache(UErrorCode &status);
+
 /**
  * GenderInfo computes the gender of a list as a whole given the gender of
  * each element.
- * @draft ICU 50
+ * @stable ICU 50
  */
 class U_I18N_API GenderInfo : public UObject {
 public:
@@ -49,7 +53,7 @@ public:
      *                this locale. The returned object is immutable, so it is
      *                declared as const. Caller does not own the returned
      *                pointer, so it must not attempt to free it.
-     * @draft ICU 50
+     * @stable ICU 50
      */
     static const GenderInfo* U_EXPORT2 getInstance(const Locale& locale, UErrorCode& status);
 
@@ -62,14 +66,14 @@ public:
      * @param status  Output param set to success/failure code on exit, which
      *                must not indicate a failure before the function call.
      * @return        the gender of the whole list.
-     * @draft ICU 50
+     * @stable ICU 50
      */
     UGender getListGender(const UGender* genders, int32_t length, UErrorCode& status) const;
 
     /**
      * Destructor.
      *
-     * @draft ICU 50
+     * @stable ICU 50
      */
     virtual ~GenderInfo();
 
@@ -96,12 +100,13 @@ private:
     static const GenderInfo* getMaleTaintsInstance();
 
     static const GenderInfo* loadInstance(const Locale& locale, UErrorCode& status);
+
     friend class ::GenderInfoTest;
+    friend void U_CALLCONV GenderInfo_initCache(UErrorCode &status);
 };
 
 U_NAMESPACE_END
 
-#endif /* U_HIDE_DRAFT_API */
 #endif /* #if !UCONFIG_NO_FORMATTING */
 
 #endif // _GENDER