# define U_ALIASING_BARRIER(ptr) asm volatile("" : : "rm"(ptr) : "memory")
#endif
+// Do not use #ifndef U_HIDE_DRAFT_API for the following class, it
+// is now used in place of UChar* in several stable C++ methods
/**
* char16_t * wrapper with implicit conversion from distinct but bit-compatible pointer types.
* @draft ICU 59
#endif
+// Do not use #ifndef U_HIDE_DRAFT_API for the following class, it is
+// now used in place of const UChar* in several stable C++ methods
/**
* const char16_t * wrapper with implicit conversion from distinct but bit-compatible pointer types.
* @draft ICU 59
*/
UNISTR_FROM_STRING_EXPLICIT UnicodeString(const char16_t *text);
+ /*
+ * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
+ * it should always be available regardless of U_HIDE_DRAFT_API status
+ */
#if !U_CHAR16_IS_TYPEDEF
/**
* uint16_t * constructor.
UnicodeString(ConstChar16Ptr(text)) {}
#endif
+ /*
+ * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
+ * it should always be available regardless of U_HIDE_DRAFT_API status
+ */
#if U_SIZEOF_WCHAR_T==2 || defined(U_IN_DOXYGEN)
/**
* wchar_t * constructor.
UnicodeString(ConstChar16Ptr(text)) {}
#endif
+ /*
+ * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
+ * it should always be available regardless of U_HIDE_DRAFT_API status
+ */
/**
* nullptr_t constructor.
* Effectively the same as the default constructor, makes an empty string object.
UnicodeString(const char16_t *text,
int32_t textLength);
+ /*
+ * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
+ * it should always be available regardless of U_HIDE_DRAFT_API status
+ */
#if !U_CHAR16_IS_TYPEDEF
/**
* uint16_t * constructor.
UnicodeString(ConstChar16Ptr(text), length) {}
#endif
+ /*
+ * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
+ * it should always be available regardless of U_HIDE_DRAFT_API status
+ */
#if U_SIZEOF_WCHAR_T==2 || defined(U_IN_DOXYGEN)
/**
* wchar_t * constructor.
UnicodeString(ConstChar16Ptr(text), length) {}
#endif
+ /*
+ * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
+ * it should always be available regardless of U_HIDE_DRAFT_API status
+ */
/**
* nullptr_t constructor.
* Effectively the same as the default constructor, makes an empty string object.
*/
UnicodeString(char16_t *buffer, int32_t buffLength, int32_t buffCapacity);
+ /*
+ * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
+ * it should always be available regardless of U_HIDE_DRAFT_API status
+ */
#if !U_CHAR16_IS_TYPEDEF
/**
* Writable-aliasing uint16_t * constructor.
UnicodeString(Char16Ptr(buffer), buffLength, buffCapacity) {}
#endif
+ /*
+ * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
+ * it should always be available regardless of U_HIDE_DRAFT_API status
+ */
#if U_SIZEOF_WCHAR_T==2 || defined(U_IN_DOXYGEN)
/**
* Writable-aliasing wchar_t * constructor.
UnicodeString(Char16Ptr(buffer), buffLength, buffCapacity) {}
#endif
+ /*
+ * Do not use #ifndef U_HIDE_DRAFT_API for the following constructor,
+ * it should always be available regardless of U_HIDE_DRAFT_API status
+ */
/**
* Writable-aliasing nullptr_t constructor.
* Effectively the same as the default constructor, makes an empty string object.
*/
UCAL_IS_LEAP_MONTH,
- // Do not conditionalize with #ifndef U_HIDE_DEPRECATED_API,
- // it is needed for layout of Calendar, DateFormat, and other objects
+ /* Do not conditionalize the following with #ifndef U_HIDE_DEPRECATED_API,
+ * it is needed for layout of Calendar, DateFormat, and other objects */
/**
* One more than the highest normal UCalendarDateFields value.
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UCOL_ATTRIBUTE_VALUE_COUNT
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} UColAttributeValue;
/**
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UCOL_REORDER_CODE_LIMIT = 0x1005
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} UColReorderCode;
/**
*/
UCOL_NUMERIC_COLLATION = UCOL_STRENGTH + 2,
- // Do not conditionalize the following with #ifndef U_HIDE_DEPRECATED_API,
- // it is needed for layout of RuleBasedCollator object.
+ /* Do not conditionalize the following with #ifndef U_HIDE_DEPRECATED_API,
+ * it is needed for layout of RuleBasedCollator object. */
/**
* One more than the highest normal UColAttribute value.
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UCOL_BOUND_VALUE_COUNT
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} UColBoundMode;
/**
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UDAT_FIELD_COUNT = 38
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} UDateFormatField;
*/
UDAT_PARSE_MULTIPLE_PATTERNS_FOR_MATCH = 3,
- // Do not conditionalize the following with #ifndef U_HIDE_DEPRECATED_API,
- // it is needed for layout of DateFormat object.
+ /* Do not conditionalize the following with #ifndef U_HIDE_DEPRECATED_API,
+ * it is needed for layout of DateFormat object. */
/**
* One more than the highest normal UDateFormatBooleanAttribute value.
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
/** @stable ICU 3.8 */
UDATPG_ZONE_FIELD,
- // Do not conditionalize the following with #ifndef U_HIDE_DEPRECATED_API,
- // it is needed for layout of DateTimePatternGenerator object.
+ /* Do not conditionalize the following with #ifndef U_HIDE_DEPRECATED_API,
+ * it is needed for layout of DateTimePatternGenerator object. */
/**
* One more than the highest normal UDateTimePatternField value.
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UFMT_COUNT
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} UFormattableType;
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
ULOCDATA_ES_COUNT=4
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} ULocaleDataExemplarSetType;
/** The possible types of delimiters.
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
ULOCDATA_DELIMITER_COUNT = 4
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} ULocaleDataDelimiterType;
/**
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UMS_LIMIT
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} UMeasurementSystem;
/**
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UNUM_FORMAT_STYLE_COUNT=17,
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
/**
* Default format
/** @stable ICU 4.8 */
UNUM_CURRENCY_INSERT,
- // Do not conditionalize the following with #ifndef U_HIDE_DEPRECATED_API,
- // it is needed for layout of DecimalFormatSymbols object.
+ /* Do not conditionalize the following with #ifndef U_HIDE_DEPRECATED_API,
+ * it is needed for layout of DecimalFormatSymbols object. */
/**
* One more than the highest normal UCurrencySpacing value.
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UNUM_FIELD_COUNT
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} UNumberFormatFields;
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UNUM_FORMAT_SYMBOL_COUNT = 28
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} UNumberFormatSymbol;
/**
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UPLURAL_TYPE_COUNT
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
};
/**
* @stable ICU 50
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
URGN_LIMIT
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} URegionType;
#if !UCONFIG_NO_FORMATTING
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UDAT_STYLE_COUNT
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} UDateRelativeDateTimeFormatterStyle;
/**
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
UDAT_REL_UNIT_COUNT
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} URelativeDateTimeUnit;
/**
* @stable ICU 57
*/
struct URelativeDateTimeFormatter;
-typedef struct URelativeDateTimeFormatter URelativeDateTimeFormatter; /**< C typedef for struct URelativeDateTimeFormatter. @draft ICU 57 */
+typedef struct URelativeDateTimeFormatter URelativeDateTimeFormatter; /**< C typedef for struct URelativeDateTimeFormatter. @stable ICU 57 */
/**
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
USEARCH_ATTRIBUTE_COUNT = 3
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} USearchAttribute;
/**
* @deprecated ICU 58 The numeric value may change over time, see ICU ticket #12420.
*/
USEARCH_ATTRIBUTE_VALUE_COUNT
-#endif // U_HIDE_DEPRECATED_API
+#endif /* U_HIDE_DEPRECATED_API */
} USearchAttributeValue;
/* open and close ------------------------------------------------------ */
*/
UDTS_UNIX_MICROSECONDS_TIME,
+#ifndef U_HIDE_DEPRECATED_API
/**
* The first unused time scale value. The limit of this enum
+ * @deprecated ICU 59 The numeric value may change over time, see ICU ticket #12420.
*/
UDTS_MAX_SCALE
+#endif /* U_HIDE_DEPRECATED_API */
+
} UDateTimeScale;
/**
#endif /* U_HIDE_INTERNAL_API */
+#ifndef U_HIDE_DEPRECATED_API
/**
* The number of time scale values, in other words limit of this enum.
*
* @see utmscale_getTimeScaleValue
+ * @deprecated ICU 59 The numeric value may change over time, see ICU ticket #12420.
*/
UTSV_MAX_SCALE_VALUE=11
+#endif /* U_HIDE_DEPRECATED_API */
} UTimeScaleValue;