58 # ifndef U_SHOW_CPLUSPLUS_API
59 # define U_SHOW_CPLUSPLUS_API 1
62 # undef U_SHOW_CPLUSPLUS_API
63 # define U_SHOW_CPLUSPLUS_API 0
78 #if !U_DEFAULT_SHOW_DRAFT && !defined(U_SHOW_DRAFT_API)
79 #define U_HIDE_DRAFT_API 1
81 #if !U_DEFAULT_SHOW_DRAFT && !defined(U_SHOW_INTERNAL_API)
82 #define U_HIDE_INTERNAL_API 1
85 #ifdef U_HIDE_DRAFT_API
86 #include "unicode/udraft.h"
89 #ifdef U_HIDE_DEPRECATED_API
90 #include "unicode/udeprctd.h"
93 #ifdef U_HIDE_DEPRECATED_API
94 #include "unicode/uobslete.h"
97 #ifdef U_HIDE_INTERNAL_API
98 #include "unicode/uintrnal.h"
101 #ifdef U_HIDE_SYSTEM_API
102 #include "unicode/usystem.h"
116 #define U_ASCII_FAMILY 0
122 #define U_EBCDIC_FAMILY 1
167 #ifndef U_CHARSET_FAMILY
168 # define U_CHARSET_FAMILY 0
191 #ifndef U_CHARSET_IS_UTF8
192 # define U_CHARSET_IS_UTF8 0
218 # define U_ICUDATA_TYPE_LETTER "e"
219 # define U_ICUDATA_TYPE_LITLETTER e
221 # error "Don't know what to do with little endian EBCDIC!"
222 # define U_ICUDATA_TYPE_LETTER "x"
223 # define U_ICUDATA_TYPE_LITLETTER x
228 # define U_ICUDATA_TYPE_LETTER "b"
229 # define U_ICUDATA_TYPE_LITLETTER b
232 # define U_ICUDATA_TYPE_LETTER "l"
233 # define U_ICUDATA_TYPE_LITLETTER l
242 #define U_ICUDATA_NAME "icudt" U_ICU_VERSION_SHORT U_ICUDATA_TYPE_LETTER
243 #define U_USRDATA_NAME "usrdt" U_ICU_VERSION_SHORT U_ICUDATA_TYPE_LETTER
244 #define U_USE_USRDATA 1
257 #define U_ICUDATA_ENTRY_POINT U_DEF2_ICUDATA_ENTRY_POINT(U_ICU_VERSION_MAJOR_NUM, U_ICU_VERSION_MINOR_NUM)
263 #define U_DEF2_ICUDATA_ENTRY_POINT(major, minor) U_DEF_ICUDATA_ENTRY_POINT(major, minor)
268 #ifndef U_DEF_ICUDATA_ENTRY_POINT
270 #define U_DEF_ICUDATA_ENTRY_POINT(major, minor) icudt##major##minor##_dat
284 #if defined(OS390) && defined(XP_CPLUSPLUS)
285 # define U_CALLCONV __cdecl
287 # define U_CALLCONV U_EXPORT2
299 #define NULL ((void *)0)
317 #define U_MILLIS_PER_SECOND (1000)
319 #define U_MILLIS_PER_MINUTE (60000)
321 #define U_MILLIS_PER_HOUR (3600000)
323 #define U_MILLIS_PER_DAY (86400000)
329 #define U_DATE_MAX DBL_MAX
335 #define U_DATE_MIN -U_DATE_MAX
454 #if defined(U_COMBINED_IMPLEMENTATION)
455 #define U_DATA_API U_EXPORT
456 #define U_COMMON_API U_EXPORT
457 #define U_I18N_API U_EXPORT
458 #define U_LAYOUT_API U_EXPORT
459 #define U_LAYOUTEX_API U_EXPORT
460 #define U_IO_API U_EXPORT
461 #define U_TOOLUTIL_API U_EXPORT
462 #elif defined(U_STATIC_IMPLEMENTATION)
467 #define U_LAYOUTEX_API
469 #define U_TOOLUTIL_API
470 #elif defined(U_COMMON_IMPLEMENTATION)
471 #define U_DATA_API U_IMPORT
472 #define U_COMMON_API U_EXPORT
473 #define U_I18N_API U_IMPORT
474 #define U_LAYOUT_API U_IMPORT
475 #define U_LAYOUTEX_API U_IMPORT
476 #define U_IO_API U_IMPORT
477 #define U_TOOLUTIL_API U_IMPORT
478 #elif defined(U_I18N_IMPLEMENTATION)
479 #define U_DATA_API U_IMPORT
480 #define U_COMMON_API U_IMPORT
481 #define U_I18N_API U_EXPORT
482 #define U_LAYOUT_API U_IMPORT
483 #define U_LAYOUTEX_API U_IMPORT
484 #define U_IO_API U_IMPORT
485 #define U_TOOLUTIL_API U_IMPORT
486 #elif defined(U_LAYOUT_IMPLEMENTATION)
487 #define U_DATA_API U_IMPORT
488 #define U_COMMON_API U_IMPORT
489 #define U_I18N_API U_IMPORT
490 #define U_LAYOUT_API U_EXPORT
491 #define U_LAYOUTEX_API U_IMPORT
492 #define U_IO_API U_IMPORT
493 #define U_TOOLUTIL_API U_IMPORT
494 #elif defined(U_LAYOUTEX_IMPLEMENTATION)
495 #define U_DATA_API U_IMPORT
496 #define U_COMMON_API U_IMPORT
497 #define U_I18N_API U_IMPORT
498 #define U_LAYOUT_API U_IMPORT
499 #define U_LAYOUTEX_API U_EXPORT
500 #define U_IO_API U_IMPORT
501 #define U_TOOLUTIL_API U_IMPORT
502 #elif defined(U_IO_IMPLEMENTATION)
503 #define U_DATA_API U_IMPORT
504 #define U_COMMON_API U_IMPORT
505 #define U_I18N_API U_IMPORT
506 #define U_LAYOUT_API U_IMPORT
507 #define U_LAYOUTEX_API U_IMPORT
508 #define U_IO_API U_EXPORT
509 #define U_TOOLUTIL_API U_IMPORT
510 #elif defined(U_TOOLUTIL_IMPLEMENTATION)
511 #define U_DATA_API U_IMPORT
512 #define U_COMMON_API U_IMPORT
513 #define U_I18N_API U_IMPORT
514 #define U_LAYOUT_API U_IMPORT
515 #define U_LAYOUTEX_API U_IMPORT
516 #define U_IO_API U_IMPORT
517 #define U_TOOLUTIL_API U_EXPORT
519 #define U_DATA_API U_IMPORT
520 #define U_COMMON_API U_IMPORT
521 #define U_I18N_API U_IMPORT
522 #define U_LAYOUT_API U_IMPORT
523 #define U_LAYOUTEX_API U_IMPORT
524 #define U_IO_API U_IMPORT
525 #define U_TOOLUTIL_API U_IMPORT
534 #define U_STANDARD_CPP_NAMESPACE ::
536 #define U_STANDARD_CPP_NAMESPACE
565 #if defined(XP_CPLUSPLUS) && defined(U_WINDOWS) && U_DEBUG && U_OVERRIDE_CXX_ALLOCATION && (_MSC_VER>=1200) && !defined(U_STATIC_IMPLEMENTATION) && (defined(U_COMMON_IMPLEMENTATION) || defined(U_I18N_IMPLEMENTATION) || defined(U_IO_IMPLEMENTATION) || defined(U_LAYOUT_IMPLEMENTATION) || defined(U_LAYOUTEX_IMPLEMENTATION))
567 #ifndef U_HIDE_INTERNAL_API
574 operator new(
size_t ) {
590 operator new[](
size_t ) {
602 operator delete(
void * ) {
613 operator delete[](
void * ) {
819 U_IDNA_PROHIBITED_ERROR=0x10400,
820 U_IDNA_ERROR_START=0x10400,
821 U_IDNA_UNASSIGNED_ERROR,
822 U_IDNA_CHECK_BIDI_ERROR,
823 U_IDNA_STD3_ASCII_RULES_ERROR,
824 U_IDNA_ACE_PREFIX_ERROR,
825 U_IDNA_VERIFICATION_ERROR,
826 U_IDNA_LABEL_TOO_LONG_ERROR,
827 U_IDNA_ZERO_LENGTH_LABEL_ERROR,
828 U_IDNA_DOMAIN_NAME_TOO_LONG_ERROR,
833 U_STRINGPREP_PROHIBITED_ERROR = U_IDNA_PROHIBITED_ERROR,
834 U_STRINGPREP_UNASSIGNED_ERROR = U_IDNA_UNASSIGNED_ERROR,
835 U_STRINGPREP_CHECK_BIDI_ERROR = U_IDNA_CHECK_BIDI_ERROR,
869 # define U_SUCCESS(x) ((x)<=U_ZERO_ERROR)
874 # define U_FAILURE(x) ((x)>U_ZERO_ERROR)