| decimfmt.h | | decimfmt.h | |
| | | | |
| skipping to change at line 42 | | skipping to change at line 42 | |
| | | | |
| #if !UCONFIG_NO_FORMATTING | | #if !UCONFIG_NO_FORMATTING | |
| | | | |
| #include "unicode/dcfmtsym.h" | | #include "unicode/dcfmtsym.h" | |
| #include "unicode/numfmt.h" | | #include "unicode/numfmt.h" | |
| #include "unicode/locid.h" | | #include "unicode/locid.h" | |
| #include "unicode/fpositer.h" | | #include "unicode/fpositer.h" | |
| #include "unicode/stringpiece.h" | | #include "unicode/stringpiece.h" | |
| #include "unicode/curramt.h" | | #include "unicode/curramt.h" | |
| | | | |
|
| | | /** | |
| | | * \def UNUM_DECIMFORMAT_INTERNAL_SIZE | |
| | | * @internal | |
| | | */ | |
| | | #if UCONFIG_FORMAT_FASTPATHS_49 | |
| | | #define UNUM_DECIMALFORMAT_INTERNAL_SIZE 16 | |
| | | #endif | |
| | | | |
| U_NAMESPACE_BEGIN | | U_NAMESPACE_BEGIN | |
| | | | |
| class DigitList; | | class DigitList; | |
| class ChoiceFormat; | | class ChoiceFormat; | |
| class CurrencyPluralInfo; | | class CurrencyPluralInfo; | |
| class Hashtable; | | class Hashtable; | |
| class UnicodeSet; | | class UnicodeSet; | |
| class FieldPositionHandler; | | class FieldPositionHandler; | |
| | | | |
| /** | | /** | |
| | | | |
| skipping to change at line 750 | | skipping to change at line 758 | |
| * delete this object after making this call. | | * delete this object after making this call. | |
| * @param style style of decimal format | | * @param style style of decimal format | |
| * @param status Output param set to success/failure code. I
f the | | * @param status Output param set to success/failure code. I
f the | |
| * pattern is invalid this will be set to a fa
ilure code. | | * pattern is invalid this will be set to a fa
ilure code. | |
| * @internal ICU 4.2 | | * @internal ICU 4.2 | |
| */ | | */ | |
| DecimalFormat( const UnicodeString& pattern, | | DecimalFormat( const UnicodeString& pattern, | |
| DecimalFormatSymbols* symbolsToAdopt, | | DecimalFormatSymbols* symbolsToAdopt, | |
| UNumberFormatStyle style, | | UNumberFormatStyle style, | |
| UErrorCode& status); | | UErrorCode& status); | |
|
| | | | |
| | | #if UCONFIG_HAVE_PARSEALLINPUT | |
| | | /** | |
| | | * @internal | |
| | | */ | |
| | | void setParseAllInput(UNumberFormatAttributeValue value); | |
| | | #endif | |
| | | | |
| #endif /* U_HIDE_INTERNAL_API */ | | #endif /* U_HIDE_INTERNAL_API */ | |
| | | | |
| /** | | /** | |
| * Create a DecimalFormat from the given pattern and symbols. | | * Create a DecimalFormat from the given pattern and symbols. | |
| * Use this constructor when you need to completely customize the | | * Use this constructor when you need to completely customize the | |
| * behavior of the format. | | * behavior of the format. | |
| * <P> | | * <P> | |
| * To obtain standard formats for a given | | * To obtain standard formats for a given | |
| * locale, use the factory methods on NumberFormat such as | | * locale, use the factory methods on NumberFormat such as | |
| * createInstance or createCurrencyInstance. If you need only minor adj
ustments | | * createInstance or createCurrencyInstance. If you need only minor adj
ustments | |
| | | | |
| skipping to change at line 1861 | | skipping to change at line 1877 | |
| private: | | private: | |
| | | | |
| DecimalFormat(); // default constructor not implemented | | DecimalFormat(); // default constructor not implemented | |
| | | | |
| int32_t precision() const; | | int32_t precision() const; | |
| | | | |
| /** | | /** | |
| * Initialize all fields of a new DecimalFormatter. | | * Initialize all fields of a new DecimalFormatter. | |
| * Common code for use by constructors. | | * Common code for use by constructors. | |
| */ | | */ | |
|
| void init(); | | void init(UErrorCode& status); | |
| | | | |
| /** | | /** | |
| * Do real work of constructing a new DecimalFormat. | | * Do real work of constructing a new DecimalFormat. | |
| */ | | */ | |
| void construct(UErrorCode& status, | | void construct(UErrorCode& status, | |
| UParseError& parseErr, | | UParseError& parseErr, | |
| const UnicodeString* pattern = 0, | | const UnicodeString* pattern = 0, | |
| DecimalFormatSymbols* symbolsToAdopt = 0 | | DecimalFormatSymbols* symbolsToAdopt = 0 | |
| ); | | ); | |
| | | | |
| | | | |
| skipping to change at line 2254 | | skipping to change at line 2270 | |
| // negative suffix, positive prefix, and positive suffix of a pattern. | | // negative suffix, positive prefix, and positive suffix of a pattern. | |
| // It is used during currency formatting only when the currency sign co
unt | | // It is used during currency formatting only when the currency sign co
unt | |
| // is 3. In which case, the affixes are getting from here, not | | // is 3. In which case, the affixes are getting from here, not | |
| // from the fNegativePrefix etc. | | // from the fNegativePrefix etc. | |
| Hashtable* fAffixesForCurrency; // for current pattern | | Hashtable* fAffixesForCurrency; // for current pattern | |
| Hashtable* fPluralAffixesForCurrency; // for plural pattern | | Hashtable* fPluralAffixesForCurrency; // for plural pattern | |
| | | | |
| // Information needed for DecimalFormat to format/parse currency plural
. | | // Information needed for DecimalFormat to format/parse currency plural
. | |
| CurrencyPluralInfo* fCurrencyPluralInfo; | | CurrencyPluralInfo* fCurrencyPluralInfo; | |
| | | | |
|
| | | #if UCONFIG_HAVE_PARSEALLINPUT | |
| | | UNumberFormatAttributeValue fParseAllInput; | |
| | | #endif | |
| | | | |
| protected: | | protected: | |
| | | | |
| /** | | /** | |
| * Returns the currency in effect for this formatter. Subclasses | | * Returns the currency in effect for this formatter. Subclasses | |
| * should override this method as needed. Unlike getCurrency(), | | * should override this method as needed. Unlike getCurrency(), | |
| * this method should never return "". | | * this method should never return "". | |
| * @result output parameter for null-terminated result, which must | | * @result output parameter for null-terminated result, which must | |
| * have a capacity of at least 4 | | * have a capacity of at least 4 | |
| * @internal | | * @internal | |
| */ | | */ | |
| | | | |
| skipping to change at line 2286 | | skipping to change at line 2306 | |
| * When someone turns on scientific mode, we assume that more than this | | * When someone turns on scientific mode, we assume that more than this | |
| * number of digits is due to flipping from some other mode that didn't | | * number of digits is due to flipping from some other mode that didn't | |
| * restrict the maximum, and so we force 1 integer digit. We don't bot
her | | * restrict the maximum, and so we force 1 integer digit. We don't bot
her | |
| * to track and see if someone is using exponential notation with more
than | | * to track and see if someone is using exponential notation with more
than | |
| * this number, it wouldn't make sense anyway, and this is just to make
sure | | * this number, it wouldn't make sense anyway, and this is just to make
sure | |
| * that someone turning on scientific mode with default settings doesn'
t | | * that someone turning on scientific mode with default settings doesn'
t | |
| * end up with lots of zeroes. | | * end up with lots of zeroes. | |
| * @stable ICU 2.8 | | * @stable ICU 2.8 | |
| */ | | */ | |
| static const int32_t kMaxScientificIntegerDigits; | | static const int32_t kMaxScientificIntegerDigits; | |
|
| | | | |
| | | #if UCONFIG_FORMAT_FASTPATHS_49 | |
| | | private: | |
| | | /** | |
| | | * Internal state. | |
| | | * @internal | |
| | | */ | |
| | | uint8_t fReserved[UNUM_DECIMALFORMAT_INTERNAL_SIZE]; | |
| | | | |
| | | /** | |
| | | * Called whenever any state changes. Recomputes whether fastpath is OK | |
| | | to use. | |
| | | */ | |
| | | void handleChanged(); | |
| | | #endif | |
| }; | | }; | |
| | | | |
| inline UnicodeString& | | inline UnicodeString& | |
| DecimalFormat::format(const Formattable& obj, | | DecimalFormat::format(const Formattable& obj, | |
| UnicodeString& appendTo, | | UnicodeString& appendTo, | |
| UErrorCode& status) const { | | UErrorCode& status) const { | |
| // Don't use Format:: - use immediate base class only, | | // Don't use Format:: - use immediate base class only, | |
| // in case immediate base modifies behavior later. | | // in case immediate base modifies behavior later. | |
| return NumberFormat::format(obj, appendTo, status); | | return NumberFormat::format(obj, appendTo, status); | |
| } | | } | |
| | | | |
End of changes. 5 change blocks. |
| 1 lines changed or deleted | | 36 lines changed or added | |
|
| fmtable.h | | fmtable.h | |
| /* | | /* | |
| ***************************************************************************
***** | | ***************************************************************************
***** | |
|
| * Copyright (C) 1997-2011, International Business Machines | | * Copyright (C) 1997-2012, International Business Machines | |
| * Corporation and others. All Rights Reserved. | | * Corporation and others. All Rights Reserved. | |
| ***************************************************************************
***** | | ***************************************************************************
***** | |
| * | | * | |
| * File FMTABLE.H | | * File FMTABLE.H | |
| * | | * | |
| * Modification History: | | * Modification History: | |
| * | | * | |
| * Date Name Description | | * Date Name Description | |
| * 02/29/97 aliu Creation. | | * 02/29/97 aliu Creation. | |
| ***************************************************************************
***** | | ***************************************************************************
***** | |
| | | | |
| skipping to change at line 608 | | skipping to change at line 608 | |
| /** | | /** | |
| * Internal function, do not use. | | * Internal function, do not use. | |
| * TODO: figure out how to make this be non-public. | | * TODO: figure out how to make this be non-public. | |
| * NumberFormat::format(Formattable, ... | | * NumberFormat::format(Formattable, ... | |
| * needs to get at the DigitList, if it exists, for | | * needs to get at the DigitList, if it exists, for | |
| * big decimal formatting. | | * big decimal formatting. | |
| * @internal | | * @internal | |
| */ | | */ | |
| DigitList *getDigitList() const { return fDecimalNum;} | | DigitList *getDigitList() const { return fDecimalNum;} | |
| | | | |
|
| | | #if UCONFIG_INTERNAL_DIGITLIST | |
| | | /** | |
| | | * @internal | |
| | | */ | |
| | | DigitList *getInternalDigitList(); | |
| | | #endif | |
| | | | |
| /** | | /** | |
| * Adopt, and set value from, a DigitList | | * Adopt, and set value from, a DigitList | |
| * Internal Function, do not use. | | * Internal Function, do not use. | |
| * @param dl the Digit List to be adopted | | * @param dl the Digit List to be adopted | |
| * @internal | | * @internal | |
| */ | | */ | |
| void adoptDigitList(DigitList *dl); | | void adoptDigitList(DigitList *dl); | |
| #endif /* U_HIDE_INTERNAL_API */ | | #endif /* U_HIDE_INTERNAL_API */ | |
| | | | |
| private: | | private: | |
| | | | |
| skipping to change at line 644 | | skipping to change at line 651 | |
| double fDouble; | | double fDouble; | |
| int64_t fInt64; | | int64_t fInt64; | |
| UDate fDate; | | UDate fDate; | |
| struct { | | struct { | |
| Formattable* fArray; | | Formattable* fArray; | |
| int32_t fCount; | | int32_t fCount; | |
| } fArrayAndCount; | | } fArrayAndCount; | |
| } fValue; | | } fValue; | |
| | | | |
| CharString *fDecimalStr; | | CharString *fDecimalStr; | |
|
| | | | |
| DigitList *fDecimalNum; | | DigitList *fDecimalNum; | |
| | | | |
|
| | | #if UCONFIG_INTERNAL_DIGITLIST | |
| | | char fStackData[128]; // must be big enough for DigitLis | |
| | | t | |
| | | #endif | |
| | | | |
| Type fType; | | Type fType; | |
| UnicodeString fBogus; // Bogus string when it's needed. | | UnicodeString fBogus; // Bogus string when it's needed. | |
| }; | | }; | |
| | | | |
| inline UDate Formattable::getDate(UErrorCode& status) const { | | inline UDate Formattable::getDate(UErrorCode& status) const { | |
| if (fType != kDate) { | | if (fType != kDate) { | |
| if (U_SUCCESS(status)) { | | if (U_SUCCESS(status)) { | |
| status = U_INVALID_FORMAT_ERROR; | | status = U_INVALID_FORMAT_ERROR; | |
| } | | } | |
| return 0; | | return 0; | |
| | | | |
End of changes. 4 change blocks. |
| 1 lines changed or deleted | | 14 lines changed or added | |
|
| platform.h | | platform.h | |
| | | | |
| skipping to change at line 349 | | skipping to change at line 349 | |
| /* Use the predefined value. */ | | /* Use the predefined value. */ | |
| #elif defined(BYTE_ORDER) && defined(BIG_ENDIAN) | | #elif defined(BYTE_ORDER) && defined(BIG_ENDIAN) | |
| # define U_IS_BIG_ENDIAN (BYTE_ORDER == BIG_ENDIAN) | | # define U_IS_BIG_ENDIAN (BYTE_ORDER == BIG_ENDIAN) | |
| #elif defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) | | #elif defined(__BYTE_ORDER__) && defined(__ORDER_BIG_ENDIAN__) | |
| /* gcc */ | | /* gcc */ | |
| # define U_IS_BIG_ENDIAN (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__) | | # define U_IS_BIG_ENDIAN (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__) | |
| #elif defined(__BIG_ENDIAN__) || defined(_BIG_ENDIAN) | | #elif defined(__BIG_ENDIAN__) || defined(_BIG_ENDIAN) | |
| # define U_IS_BIG_ENDIAN 1 | | # define U_IS_BIG_ENDIAN 1 | |
| #elif defined(__LITTLE_ENDIAN__) || defined(_LITTLE_ENDIAN) | | #elif defined(__LITTLE_ENDIAN__) || defined(_LITTLE_ENDIAN) | |
| # define U_IS_BIG_ENDIAN 0 | | # define U_IS_BIG_ENDIAN 0 | |
|
| #elif U_PLATFORM == U_PF_OS390 || U_PLATFORM == U_PF_OS400 | | #elif U_PLATFORM == U_PF_OS390 || U_PLATFORM == U_PF_OS400 || defined(__s39
0__) || defined(__s390x__) | |
| /* These platforms do not appear to predefine any endianness macros. */ | | /* These platforms do not appear to predefine any endianness macros. */ | |
| # define U_IS_BIG_ENDIAN 1 | | # define U_IS_BIG_ENDIAN 1 | |
|
| | | #elif defined(_PA_RISC1_0) || defined(_PA_RISC1_1) || defined(_PA_RISC2_0) | |
| | | /* HPPA do not appear to predefine any endianness macros. */ | |
| | | # define U_IS_BIG_ENDIAN 1 | |
| #else | | #else | |
| # define U_IS_BIG_ENDIAN 0 | | # define U_IS_BIG_ENDIAN 0 | |
| #endif | | #endif | |
| | | | |
| /** | | /** | |
| * \def U_HAVE_PLACEMENT_NEW | | * \def U_HAVE_PLACEMENT_NEW | |
| * Determines whether to override placement new and delete for STL. | | * Determines whether to override placement new and delete for STL. | |
| * @stable ICU 2.6 | | * @stable ICU 2.6 | |
| */ | | */ | |
| #ifdef U_HAVE_PLACEMENT_NEW | | #ifdef U_HAVE_PLACEMENT_NEW | |
| | | | |
End of changes. 2 change blocks. |
| 1 lines changed or deleted | | 4 lines changed or added | |
|
| unum.h | | unum.h | |
| | | | |
| skipping to change at line 714 | | skipping to change at line 714 | |
| * results of this call are not valid for rule-based number formats. | | * results of this call are not valid for rule-based number formats. | |
| * This function is useful for determining the loop ending condition for | | * This function is useful for determining the loop ending condition for | |
| * calls to {@link #unum_getAvailable }. | | * calls to {@link #unum_getAvailable }. | |
| * @return The number of locales for which decimal formatting patterns are a
vailable. | | * @return The number of locales for which decimal formatting patterns are a
vailable. | |
| * @see unum_getAvailable | | * @see unum_getAvailable | |
| * @stable ICU 2.0 | | * @stable ICU 2.0 | |
| */ | | */ | |
| U_STABLE int32_t U_EXPORT2 | | U_STABLE int32_t U_EXPORT2 | |
| unum_countAvailable(void); | | unum_countAvailable(void); | |
| | | | |
|
| | | #if UCONFIG_HAVE_PARSEALLINPUT | |
| | | /** | |
| | | * @internal | |
| | | */ | |
| | | typedef enum UNumberFormatAttributeValue { | |
| | | /** @internal */ | |
| | | UNUM_NO = 0, | |
| | | /** @internal */ | |
| | | UNUM_YES = 1, | |
| | | /** @internal */ | |
| | | UNUM_MAYBE = 2 | |
| | | } UNumberFormatAttributeValue; | |
| | | #endif | |
| | | | |
| /** The possible UNumberFormat numeric attributes @stable ICU 2.0 */ | | /** The possible UNumberFormat numeric attributes @stable ICU 2.0 */ | |
| typedef enum UNumberFormatAttribute { | | typedef enum UNumberFormatAttribute { | |
| /** Parse integers only */ | | /** Parse integers only */ | |
| UNUM_PARSE_INT_ONLY, | | UNUM_PARSE_INT_ONLY, | |
| /** Use grouping separator */ | | /** Use grouping separator */ | |
| UNUM_GROUPING_USED, | | UNUM_GROUPING_USED, | |
| /** Always show decimal point */ | | /** Always show decimal point */ | |
| UNUM_DECIMAL_ALWAYS_SHOWN, | | UNUM_DECIMAL_ALWAYS_SHOWN, | |
| /** Maximum integer digits */ | | /** Maximum integer digits */ | |
| UNUM_MAX_INTEGER_DIGITS, | | UNUM_MAX_INTEGER_DIGITS, | |
| | | | |
| skipping to change at line 761 | | skipping to change at line 775 | |
| /** Minimum significant digits | | /** Minimum significant digits | |
| * @stable ICU 3.0 */ | | * @stable ICU 3.0 */ | |
| UNUM_MIN_SIGNIFICANT_DIGITS, | | UNUM_MIN_SIGNIFICANT_DIGITS, | |
| /** Maximum significant digits | | /** Maximum significant digits | |
| * @stable ICU 3.0 */ | | * @stable ICU 3.0 */ | |
| UNUM_MAX_SIGNIFICANT_DIGITS, | | UNUM_MAX_SIGNIFICANT_DIGITS, | |
| /** Lenient parse mode used by rule-based formats. | | /** Lenient parse mode used by rule-based formats. | |
| * @stable ICU 3.0 | | * @stable ICU 3.0 | |
| */ | | */ | |
| UNUM_LENIENT_PARSE | | UNUM_LENIENT_PARSE | |
|
| | | | |
| | | #if UCONFIG_HAVE_PARSEALLINPUT | |
| | | /** Consume all input. (may use fastpath). Set to UNUM_YES (require fastp | |
| | | ath), UNUM_NO (skip fastpath), or UNUM_MAYBE (heuristic). | |
| | | * @internal | |
| | | */ | |
| | | ,UNUM_PARSE_ALL_INPUT | |
| | | #endif | |
| | | | |
| } UNumberFormatAttribute; | | } UNumberFormatAttribute; | |
| | | | |
| /** | | /** | |
| * Get a numeric attribute associated with a UNumberFormat. | | * Get a numeric attribute associated with a UNumberFormat. | |
| * An example of a numeric attribute is the number of integer digits a forma
tter will produce. | | * An example of a numeric attribute is the number of integer digits a forma
tter will produce. | |
| * @param fmt The formatter to query. | | * @param fmt The formatter to query. | |
| * @param attr The attribute to query; one of UNUM_PARSE_INT_ONLY, UNUM_GROU
PING_USED, | | * @param attr The attribute to query; one of UNUM_PARSE_INT_ONLY, UNUM_GROU
PING_USED, | |
| * UNUM_DECIMAL_ALWAYS_SHOWN, UNUM_MAX_INTEGER_DIGITS, UNUM_MIN_INTEGER_DIGI
TS, UNUM_INTEGER_DIGITS, | | * UNUM_DECIMAL_ALWAYS_SHOWN, UNUM_MAX_INTEGER_DIGITS, UNUM_MIN_INTEGER_DIGI
TS, UNUM_INTEGER_DIGITS, | |
| * UNUM_MAX_FRACTION_DIGITS, UNUM_MIN_FRACTION_DIGITS, UNUM_FRACTION_DIGITS,
UNUM_MULTIPLIER, | | * UNUM_MAX_FRACTION_DIGITS, UNUM_MIN_FRACTION_DIGITS, UNUM_FRACTION_DIGITS,
UNUM_MULTIPLIER, | |
| * UNUM_GROUPING_SIZE, UNUM_ROUNDING_MODE, UNUM_FORMAT_WIDTH, UNUM_PADDING_P
OSITION, UNUM_SECONDARY_GROUPING_SIZE. | | * UNUM_GROUPING_SIZE, UNUM_ROUNDING_MODE, UNUM_FORMAT_WIDTH, UNUM_PADDING_P
OSITION, UNUM_SECONDARY_GROUPING_SIZE. | |
| | | | |
End of changes. 2 change blocks. |
| 0 lines changed or deleted | | 23 lines changed or added | |
|
| uvernum.h | | uvernum.h | |
| | | | |
| skipping to change at line 63 | | skipping to change at line 63 | |
| /** The current ICU minor version as an integer. | | /** The current ICU minor version as an integer. | |
| * This value will change in the subsequent releases of ICU | | * This value will change in the subsequent releases of ICU | |
| * @stable ICU 2.6 | | * @stable ICU 2.6 | |
| */ | | */ | |
| #define U_ICU_VERSION_MINOR_NUM 1 | | #define U_ICU_VERSION_MINOR_NUM 1 | |
| | | | |
| /** The current ICU patchlevel version as an integer. | | /** The current ICU patchlevel version as an integer. | |
| * This value will change in the subsequent releases of ICU | | * This value will change in the subsequent releases of ICU | |
| * @stable ICU 2.4 | | * @stable ICU 2.4 | |
| */ | | */ | |
|
| #define U_ICU_VERSION_PATCHLEVEL_NUM 1 | | #define U_ICU_VERSION_PATCHLEVEL_NUM 2 | |
| | | | |
| /** The current ICU build level version as an integer. | | /** The current ICU build level version as an integer. | |
| * This value is for use by ICU clients. It defaults to 0. | | * This value is for use by ICU clients. It defaults to 0. | |
| * @stable ICU 4.0 | | * @stable ICU 4.0 | |
| */ | | */ | |
| #ifndef U_ICU_VERSION_BUILDLEVEL_NUM | | #ifndef U_ICU_VERSION_BUILDLEVEL_NUM | |
| #define U_ICU_VERSION_BUILDLEVEL_NUM 0 | | #define U_ICU_VERSION_BUILDLEVEL_NUM 0 | |
| #endif | | #endif | |
| | | | |
| /** Glued version suffix for renamers | | /** Glued version suffix for renamers | |
| | | | |
| skipping to change at line 112 | | skipping to change at line 112 | |
| #define U_DEF2_ICU_ENTRY_POINT_RENAME(x,y) U_DEF_ICU_ENTRY_POINT_RENAME(x,y
) | | #define U_DEF2_ICU_ENTRY_POINT_RENAME(x,y) U_DEF_ICU_ENTRY_POINT_RENAME(x,y
) | |
| #define U_ICU_ENTRY_POINT_RENAME(x) U_DEF2_ICU_ENTRY_POINT_RENAME(x,U_IC
U_VERSION_SUFFIX) | | #define U_ICU_ENTRY_POINT_RENAME(x) U_DEF2_ICU_ENTRY_POINT_RENAME(x,U_IC
U_VERSION_SUFFIX) | |
| #endif | | #endif | |
| #endif | | #endif | |
| | | | |
| /** The current ICU library version as a dotted-decimal string. The patchle
vel | | /** The current ICU library version as a dotted-decimal string. The patchle
vel | |
| * only appears in this string if it non-zero. | | * only appears in this string if it non-zero. | |
| * This value will change in the subsequent releases of ICU | | * This value will change in the subsequent releases of ICU | |
| * @stable ICU 2.4 | | * @stable ICU 2.4 | |
| */ | | */ | |
|
| #define U_ICU_VERSION "49.1.1" | | #define U_ICU_VERSION "49.1.2" | |
| | | | |
| /** The current ICU library major/minor version as a string without dots, f
or library name suffixes. | | /** The current ICU library major/minor version as a string without dots, f
or library name suffixes. | |
| * This value will change in the subsequent releases of ICU | | * This value will change in the subsequent releases of ICU | |
| * @stable ICU 2.6 | | * @stable ICU 2.6 | |
| */ | | */ | |
| #define U_ICU_VERSION_SHORT "49" | | #define U_ICU_VERSION_SHORT "49" | |
| | | | |
| #ifndef U_HIDE_INTERNAL_API | | #ifndef U_HIDE_INTERNAL_API | |
| /** Data version in ICU4C. | | /** Data version in ICU4C. | |
| * @internal ICU 4.4 Internal Use Only | | * @internal ICU 4.4 Internal Use Only | |
| **/ | | **/ | |
|
| #define U_ICU_DATA_VERSION "49.1.1" | | #define U_ICU_DATA_VERSION "49.1.2" | |
| #endif /* U_HIDE_INTERNAL_API */ | | #endif /* U_HIDE_INTERNAL_API */ | |
| | | | |
| /*=========================================================================
== | | /*=========================================================================
== | |
| * ICU collation framework version information | | * ICU collation framework version information | |
| * Version info that can be obtained from a collator is affected by these | | * Version info that can be obtained from a collator is affected by these | |
| * numbers in a secret and magic way. Please use collator version as whole | | * numbers in a secret and magic way. Please use collator version as whole | |
| *=========================================================================
== | | *=========================================================================
== | |
| */ | | */ | |
| | | | |
| /** | | /** | |
| | | | |
End of changes. 3 change blocks. |
| 3 lines changed or deleted | | 3 lines changed or added | |
|