Go to the documentation of this file.
43 #if !U_NO_DEFAULT_INCLUDE_UTF_HEADERS
63 # ifndef U_SHOW_CPLUSPLUS_API
64 # define U_SHOW_CPLUSPLUS_API 1
67 # undef U_SHOW_CPLUSPLUS_API
68 # define U_SHOW_CPLUSPLUS_API 0
83 #if !U_DEFAULT_SHOW_DRAFT && !defined(U_SHOW_DRAFT_API)
84 #define U_HIDE_DRAFT_API 1
86 #if !U_DEFAULT_SHOW_DRAFT && !defined(U_SHOW_INTERNAL_API)
87 #define U_HIDE_INTERNAL_API 1
115 # define U_ICUDATA_TYPE_LETTER "e"
116 # define U_ICUDATA_TYPE_LITLETTER e
118 # error "Don't know what to do with little endian EBCDIC!"
119 # define U_ICUDATA_TYPE_LETTER "x"
120 # define U_ICUDATA_TYPE_LITLETTER x
125 # define U_ICUDATA_TYPE_LETTER "b"
126 # define U_ICUDATA_TYPE_LITLETTER b
129 # define U_ICUDATA_TYPE_LETTER "l"
130 # define U_ICUDATA_TYPE_LITLETTER l
139 #define U_ICUDATA_NAME "icudt" U_ICU_VERSION_SHORT U_ICUDATA_TYPE_LETTER
140 #ifndef U_HIDE_INTERNAL_API
141 #define U_USRDATA_NAME "usrdt" U_ICU_VERSION_SHORT U_ICUDATA_TYPE_LETTER
142 #define U_USE_USRDATA 0
156 #define U_ICUDATA_ENTRY_POINT U_DEF2_ICUDATA_ENTRY_POINT(U_ICU_VERSION_MAJOR_NUM,U_LIB_SUFFIX_C_NAME)
158 #ifndef U_HIDE_INTERNAL_API
163 #define U_DEF2_ICUDATA_ENTRY_POINT(major,suff) U_DEF_ICUDATA_ENTRY_POINT(major,suff)
169 #ifndef U_DEF_ICUDATA_ENTRY_POINT
171 #ifndef U_LIB_SUFFIX_C_NAME
172 #define U_DEF_ICUDATA_ENTRY_POINT(major, suff) icudt##major##_dat
174 #define U_DEF_ICUDATA_ENTRY_POINT(major, suff) icudt##suff ## major##_dat
188 #define NULL ((void *)0)
206 #define U_MILLIS_PER_SECOND (1000)
208 #define U_MILLIS_PER_MINUTE (60000)
210 #define U_MILLIS_PER_HOUR (3600000)
212 #define U_MILLIS_PER_DAY (86400000)
218 #define U_DATE_MAX DBL_MAX
224 #define U_DATE_MIN -U_DATE_MAX
295 #define U_COMBINED_IMPLEMENTATION 1
298 #if defined(U_COMBINED_IMPLEMENTATION)
299 #define U_DATA_API U_EXPORT
300 #define U_COMMON_API U_EXPORT
301 #define U_I18N_API U_EXPORT
302 #define U_LAYOUT_API U_EXPORT
303 #define U_LAYOUTEX_API U_EXPORT
304 #define U_IO_API U_EXPORT
305 #define U_TOOLUTIL_API U_EXPORT
306 #elif defined(U_STATIC_IMPLEMENTATION)
311 #define U_LAYOUTEX_API
313 #define U_TOOLUTIL_API
314 #elif defined(U_COMMON_IMPLEMENTATION)
315 #define U_DATA_API U_IMPORT
316 #define U_COMMON_API U_EXPORT
317 #define U_I18N_API U_IMPORT
318 #define U_LAYOUT_API U_IMPORT
319 #define U_LAYOUTEX_API U_IMPORT
320 #define U_IO_API U_IMPORT
321 #define U_TOOLUTIL_API U_IMPORT
322 #elif defined(U_I18N_IMPLEMENTATION)
323 #define U_DATA_API U_IMPORT
324 #define U_COMMON_API U_IMPORT
325 #define U_I18N_API U_EXPORT
326 #define U_LAYOUT_API U_IMPORT
327 #define U_LAYOUTEX_API U_IMPORT
328 #define U_IO_API U_IMPORT
329 #define U_TOOLUTIL_API U_IMPORT
330 #elif defined(U_LAYOUT_IMPLEMENTATION)
331 #define U_DATA_API U_IMPORT
332 #define U_COMMON_API U_IMPORT
333 #define U_I18N_API U_IMPORT
334 #define U_LAYOUT_API U_EXPORT
335 #define U_LAYOUTEX_API U_IMPORT
336 #define U_IO_API U_IMPORT
337 #define U_TOOLUTIL_API U_IMPORT
338 #elif defined(U_LAYOUTEX_IMPLEMENTATION)
339 #define U_DATA_API U_IMPORT
340 #define U_COMMON_API U_IMPORT
341 #define U_I18N_API U_IMPORT
342 #define U_LAYOUT_API U_IMPORT
343 #define U_LAYOUTEX_API U_EXPORT
344 #define U_IO_API U_IMPORT
345 #define U_TOOLUTIL_API U_IMPORT
346 #elif defined(U_IO_IMPLEMENTATION)
347 #define U_DATA_API U_IMPORT
348 #define U_COMMON_API U_IMPORT
349 #define U_I18N_API U_IMPORT
350 #define U_LAYOUT_API U_IMPORT
351 #define U_LAYOUTEX_API U_IMPORT
352 #define U_IO_API U_EXPORT
353 #define U_TOOLUTIL_API U_IMPORT
354 #elif defined(U_TOOLUTIL_IMPLEMENTATION)
355 #define U_DATA_API U_IMPORT
356 #define U_COMMON_API U_IMPORT
357 #define U_I18N_API U_IMPORT
358 #define U_LAYOUT_API U_IMPORT
359 #define U_LAYOUTEX_API U_IMPORT
360 #define U_IO_API U_IMPORT
361 #define U_TOOLUTIL_API U_EXPORT
363 #define U_DATA_API U_IMPORT
364 #define U_COMMON_API U_IMPORT
365 #define U_I18N_API U_IMPORT
366 #define U_LAYOUT_API U_IMPORT
367 #define U_LAYOUTEX_API U_IMPORT
368 #define U_IO_API U_IMPORT
369 #define U_TOOLUTIL_API U_IMPORT
378 #define U_STANDARD_CPP_NAMESPACE ::
380 #define U_STANDARD_CPP_NAMESPACE
441 #ifndef U_HIDE_DEPRECATED_API
447 #endif // U_HIDE_DEPRECATED_API
483 #ifndef U_HIDE_DEPRECATED_API
489 #endif // U_HIDE_DEPRECATED_API
530 #ifndef U_HIDE_DEPRECATED_API
536 #endif // U_HIDE_DEPRECATED_API
563 #ifndef U_HIDE_DEPRECATED_API
569 #endif // U_HIDE_DEPRECATED_API
589 #ifndef U_HIDE_DEPRECATED_API
595 #endif // U_HIDE_DEPRECATED_API
615 #ifndef U_HIDE_DEPRECATED_API
625 #ifndef U_HIDE_DEPRECATED_API
631 #endif // U_HIDE_DEPRECATED_API
636 U_IDNA_PROHIBITED_ERROR=0x10400,
637 U_IDNA_ERROR_START=0x10400,
638 U_IDNA_UNASSIGNED_ERROR,
639 U_IDNA_CHECK_BIDI_ERROR,
640 U_IDNA_STD3_ASCII_RULES_ERROR,
641 U_IDNA_ACE_PREFIX_ERROR,
642 U_IDNA_VERIFICATION_ERROR,
643 U_IDNA_LABEL_TOO_LONG_ERROR,
644 U_IDNA_ZERO_LENGTH_LABEL_ERROR,
645 U_IDNA_DOMAIN_NAME_TOO_LONG_ERROR,
646 #ifndef U_HIDE_DEPRECATED_API
652 #endif // U_HIDE_DEPRECATED_API
656 U_STRINGPREP_PROHIBITED_ERROR = U_IDNA_PROHIBITED_ERROR,
657 U_STRINGPREP_UNASSIGNED_ERROR = U_IDNA_UNASSIGNED_ERROR,
658 U_STRINGPREP_CHECK_BIDI_ERROR = U_IDNA_CHECK_BIDI_ERROR,
666 #ifndef U_HIDE_DEPRECATED_API
672 #endif // U_HIDE_DEPRECATED_API
674 #ifndef U_HIDE_DEPRECATED_API
680 #endif // U_HIDE_DEPRECATED_API
704 # define U_SUCCESS(x) ((x)<=U_ZERO_ERROR)
709 # define U_FAILURE(x) ((x)>U_ZERO_ERROR)
The plugin didn't call uplug_setPlugLevel in response to a QUERY.
Invalid capture group name.
Hex digits expected as part of a escaped char in a rule.
Undefined Plural keyword.
A "::id" rule specifies an unknown transliterator.
Pad symbol misplaced in number pattern.
Start of Transliterator errors.
Trying to access the index that is out of bounds.
A closing ')' is missing.
The {nnn} tag on a rule is malformed
One more than the highest normal BreakIterator error code.
Data format is not what is expected.
An output string could not be NUL-terminated because output length==destCapacity.
Decimal number syntax error.
Start of codes indicating Break Iterator failures.
One more than the highest normal error code.
A resource bundle lookup returned a fallback result (not an error)
In a character range [x-y], x is greater than y.
int8_t UBool
The ICU boolean type.
A variable definition is invalid.
Collator version is not compatible with the base version.
More than one ante context.
Maximum allowed match time exceeded
ISO-2022 unsupported escape sequence.
Missing ';' at the end of a RBBI rule.
UEnumeration out of sync with underlying collection.
Cannot format a number exactly and rounding mode is ROUND_UNNECESSARY.
The number skeleton passed to C++ NumberFormatter or C UNumberFormatter was invalid or contained a sy...
Indicates a bug in the library code.
Pattern exceeds limits on size or complexity.
Missing '$' or duplicate variable name.
Missing closing quote in an RBBI rule.
Typo: kept for backward compatibility.
One more than the highest standard error code.
Braces do not match in message pattern.
Start of codes indicating Regexp failures
A closing single quote is missing.
C API: Code point macros.
C API: API for accessing ICU version numbers.
Start of information results (semantically successful)
Number of levels requested in getBound is higher than the number of levels in the sort key.
Duplicate keyword in PluralFormat.
Internal transliterator system error.
ISO-2022 illegal escape sequence.
Invalid value for match mode flags.
A cursor offset occurs at an illegal position.
One more than the highest normal regular expression error code.
Syntax error in regexp pattern.
A SafeClone operation required allocating memory (informational only)
Start of format library errors.
Grouping symbol in exponent pattern.
More than one post context.
Currently used only while setting variable top, but can be used generally.
A UnicodeSet pattern is invalid.
ICU cannot construct a service from this state, as it is no longer supported.
ucol_open encountered a mismatch between UCA version and collator image version, so the collator was ...
Unrecognized backslash escape sequence in pattern
#define U_FAILURE(x)
Does the error code indicate a failure?
The requested resource cannot be found.
Attempt to modify read-only or constant data.
One more than the highest normal Transliterator error code.
One more than the highest normal plug-in error code.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
A "&fn()" rule specifies an unknown transliterator.
ICU has to use compatibility layer to construct the service.
Syntax error in format pattern.
No space available for in-buffer expansion for Arabic shaping.
A compound filter is in an invalid location.
Missing DEFAULT rule in plural rules.
A variable reference is invalid.
A start anchor appears at an illegal position.
A result would not fit in the supplied buffer.
Rule contains an empty Unicode Set.
Collator is options only and no base is specified.
A plugin caused a level change.
The requested file cannot be found.
Mis-matched parentheses in an RBBI rule.
Regular expression backtrack stack overflow.
Basic types and constants for UTF.
Character conversion: Unmappable input sequence.
Syntax error in RBBI rule assignment statement.
Too many stand-ins generated for the given variable range.
A rule is hidden by an earlier more general rule.
An internal error (bug) was detected.
More than one permill symbol in number pattern.
Octal character constants must be <= 0377.
Missing closing bracket on a bracket expression.
A special character was not quoted or escaped.
This converter alias can go to different converter implementations.
Incorrectly nested parentheses in regexp pattern.
Character conversion: Illegal input sequence/combination of input units.
One more than the highest normal UErrorCode warning value.
RBBI rule $Variable redefined.
In {min,max}, max is less than min.
Argument name and argument index mismatch in MessageFormat functions.
#define U_SUCCESS(x)
Does the error code indicate success?
const char * u_errorName(UErrorCode code)
Return a string for a UErrorCode value.
!!option in RBBI rules not recognized.
A Unicode escape pattern is invalid.
One more than the highest normal formatting API error code.
A variable reference does not correspond to a defined variable.
A rule contains no operator.
One more than the highest normal IDNA error code.
Conversion table file not found.
Error in {min,max} interval
A 'use' pragma is invalid.
Regexps cannot have UnicodeSets containing strings.
Unable to convert a UChar* string to char* with the invariant converter.
Start of codes indicating failure.
double UDate
Date and Time data type.
More than one decimal separator in number pattern.
There are too many aliases in the path to the requested resource.
Incorrect Unicode property
User tried to set variable top to a primary that is longer than two bytes.
More than one pad symbol in number pattern.
Unable to parse a message (message format)
The plugin's level is too high to be loaded right now.
More than one compound filter.
More than one exponent symbol in number pattern.
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
Elements of a rule are misplaced.
Requested operation not supported in current context.
Conversion table file found, but corrupted.
The variable range overlaps characters used in rules.
an operation is requested over a resource that does not support it
A quantifier appears after a segment close delimiter.
User-configurable settings.
A special character is outside its allowed context.
Use of regexp feature that is not yet implemented.
Character conversion: Incomplete input sequence.
Syntax error in RBBI rule.
Requested operation can not be completed with ICU in its current state.
Back-reference to a non-existent capture group.
RegexMatcher in invalid state for requested operation.
A "::id" rule was passed to the RuleBasedTransliterator parser.
A resource bundle lookup returned a result from the root locale (not an error)
Start of codes indicating plugin failures.
Equivalent to Java ParseException.
Look-Behind pattern matches must have a bounded maximum length.
Decimal number is too large.
A segment reference does not correspond to a defined segment.
More than one percent symbol in number pattern.
Use of an undefined $Variable in an RBBI rule.
An internal error (bug) was detected.
UnicodeSet writing an RBBI rule missing a closing ']'.
The argument to a NumberFormatter helper method was out of bounds; the bounds are usually 0 to 999.
Syntax error in format pattern.
Matching operation aborted by user callback fn.