LESwaps.h | LESwaps.h | |||
---|---|---|---|---|
/* | /* | |||
* | * | |||
* (C) Copyright IBM Corp. 1998-2010 - All Rights Reserved | * (C) Copyright IBM Corp. 1998-2011 - All Rights Reserved | |||
* | * | |||
*/ | */ | |||
#ifndef __LESWAPS_H | #ifndef __LESWAPS_H | |||
#define __LESWAPS_H | #define __LESWAPS_H | |||
#include "LETypes.h" | #include "LETypes.h" | |||
/** | /** | |||
* \file | * \file | |||
skipping to change at line 48 | skipping to change at line 48 | |||
* | * | |||
* All methods are static and inline in an attempt to induce the compiler | * All methods are static and inline in an attempt to induce the compiler | |||
* to do most of the calculations at compile time. | * to do most of the calculations at compile time. | |||
* | * | |||
* @stable ICU 2.8 | * @stable ICU 2.8 | |||
*/ | */ | |||
class U_LAYOUT_API LESwaps /* not : public UObject because all methods are static */ { | class U_LAYOUT_API LESwaps /* not : public UObject because all methods are static */ { | |||
public: | public: | |||
/** | /** | |||
* This method does the byte swap required on little endian platforms | * Reads a big-endian 16-bit word and returns a native-endian value. | |||
* to correctly access a (16-bit) word. | * No-op on a big-endian platform, byte-swaps on a little-endian platfo | |||
rm. | ||||
* | * | |||
* @param value - the word to be byte swapped | * @param value - the word to be byte swapped | |||
* | * | |||
* @return the byte swapped word | * @return the byte swapped word | |||
* | * | |||
* @stable ICU 2.8 | * @stable ICU 2.8 | |||
*/ | */ | |||
static le_uint16 swapWord(le_uint16 value) | static le_uint16 swapWord(le_uint16 value) | |||
{ | { | |||
return (le_uint16)((value << 8) | (value >> 8)); | #if (defined(U_IS_BIG_ENDIAN) && U_IS_BIG_ENDIAN) || (defined(BYTE_ORDER) & | |||
& defined(BIG_ENDIAN)) || defined(__BIG_ENDIAN__) | ||||
// Fastpath when we know that the platform is big-endian. | ||||
return value; | ||||
#else | ||||
// Reads a big-endian value on any platform. | ||||
const le_uint8 *p = reinterpret_cast<const le_uint8 *>(&value); | ||||
return (le_uint16)((p[0] << 8) | p[1]); | ||||
#endif | ||||
}; | }; | |||
/** | /** | |||
* This method does the byte swapping required on little endian platfor | * Reads a big-endian 32-bit word and returns a native-endian value. | |||
ms | * No-op on a big-endian platform, byte-swaps on a little-endian platfo | |||
* to correctly access a (32-bit) long. | rm. | |||
* | * | |||
* @param value - the long to be byte swapped | * @param value - the long to be byte swapped | |||
* | * | |||
* @return the byte swapped long | * @return the byte swapped long | |||
* | * | |||
* @stable ICU 2.8 | * @stable ICU 2.8 | |||
*/ | */ | |||
static le_uint32 swapLong(le_uint32 value) | static le_uint32 swapLong(le_uint32 value) | |||
{ | { | |||
return (le_uint32)( | #if (defined(U_IS_BIG_ENDIAN) && U_IS_BIG_ENDIAN) || (defined(BYTE_ORDER) & | |||
(value << 24) | | & defined(BIG_ENDIAN)) || defined(__BIG_ENDIAN__) | |||
((value << 8) & 0xff0000) | | // Fastpath when we know that the platform is big-endian. | |||
((value >> 8) & 0xff00) | | return value; | |||
(value >> 24)); | #else | |||
// Reads a big-endian value on any platform. | ||||
const le_uint8 *p = reinterpret_cast<const le_uint8 *>(&value); | ||||
return (le_uint32)((p[0] << 24) | (p[1] << 16) | (p[2] << 8) | p[3] | ||||
); | ||||
#endif | ||||
}; | }; | |||
private: | private: | |||
LESwaps() {} // private - forbid instantiation | LESwaps() {} // private - forbid instantiation | |||
}; | }; | |||
U_NAMESPACE_END | U_NAMESPACE_END | |||
#endif | #endif | |||
End of changes. 5 change blocks. | ||||
12 lines changed or deleted | 26 lines changed or added | |||
dcfmtsym.h | dcfmtsym.h | |||
---|---|---|---|---|
/* | /* | |||
*************************************************************************** ***** | *************************************************************************** ***** | |||
* Copyright (C) 1997-2010, International Business Machines | * Copyright (C) 1997-2011, International Business Machines | |||
* Corporation and others. All Rights Reserved. | * Corporation and others. All Rights Reserved. | |||
*************************************************************************** ***** | *************************************************************************** ***** | |||
* | * | |||
* File DCFMTSYM.H | * File DCFMTSYM.H | |||
* | * | |||
* Modification History: | * Modification History: | |||
* | * | |||
* Date Name Description | * Date Name Description | |||
* 02/19/97 aliu Converted from java. | * 02/19/97 aliu Converted from java. | |||
* 03/18/97 clhuang Updated per C++ implementation. | * 03/18/97 clhuang Updated per C++ implementation. | |||
skipping to change at line 35 | skipping to change at line 35 | |||
#ifndef DCFMTSYM_H | #ifndef DCFMTSYM_H | |||
#define DCFMTSYM_H | #define DCFMTSYM_H | |||
#include "unicode/utypes.h" | #include "unicode/utypes.h" | |||
#include "unicode/uchar.h" | #include "unicode/uchar.h" | |||
#if !UCONFIG_NO_FORMATTING | #if !UCONFIG_NO_FORMATTING | |||
#include "unicode/uobject.h" | #include "unicode/uobject.h" | |||
#include "unicode/locid.h" | #include "unicode/locid.h" | |||
#include "unum.h" | #include "unicode/unum.h" | |||
/** | /** | |||
* \file | * \file | |||
* \brief C++ API: Symbols for formatting numbers. | * \brief C++ API: Symbols for formatting numbers. | |||
*/ | */ | |||
U_NAMESPACE_BEGIN | U_NAMESPACE_BEGIN | |||
/** | /** | |||
* This class represents the set of symbols needed by DecimalFormat | * This class represents the set of symbols needed by DecimalFormat | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
fmtable.h | fmtable.h | |||
---|---|---|---|---|
/* | /* | |||
*************************************************************************** ***** | *************************************************************************** ***** | |||
* Copyright (C) 1997-2010, International Business Machines | * Copyright (C) 1997-2011, 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 603 | skipping to change at line 603 | |||
inline int32_t getLong(UErrorCode* status) const; | inline int32_t getLong(UErrorCode* status) const; | |||
/** | /** | |||
* 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;} | |||
/** | /** | |||
* 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); | |||
private: | private: | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
msgfmt.h | msgfmt.h | |||
---|---|---|---|---|
skipping to change at line 989 | skipping to change at line 989 | |||
UErrorCode& success) const; | UErrorCode& success) const; | |||
UnicodeString getArgName(int32_t partIndex); | UnicodeString getArgName(int32_t partIndex); | |||
void setArgStartFormat(int32_t argStart, Format* formatter, UErrorCode& status); | void setArgStartFormat(int32_t argStart, Format* formatter, UErrorCode& status); | |||
void setCustomArgStartFormat(int32_t argStart, Format* formatter, UErro rCode& status); | void setCustomArgStartFormat(int32_t argStart, Format* formatter, UErro rCode& status); | |||
int32_t nextTopLevelArgStart(int32_t partIndex) const; | int32_t nextTopLevelArgStart(int32_t partIndex) const; | |||
bool argNameMatches(int32_t partIndex, const UnicodeString& argName, in t32_t argNumber); | UBool argNameMatches(int32_t partIndex, const UnicodeString& argName, i nt32_t argNumber); | |||
void cacheExplicitFormats(UErrorCode& status); | void cacheExplicitFormats(UErrorCode& status); | |||
Format* createAppropriateFormat(UnicodeString& type, | Format* createAppropriateFormat(UnicodeString& type, | |||
UnicodeString& style, | UnicodeString& style, | |||
Formattable::Type& formattableType, | Formattable::Type& formattableType, | |||
UParseError& parseError, | UParseError& parseError, | |||
UErrorCode& ec); | UErrorCode& ec); | |||
const Formattable* getArgFromListByName(const Formattable* arguments, | const Formattable* getArgFromListByName(const Formattable* arguments, | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
plurfmt.h | plurfmt.h | |||
---|---|---|---|---|
skipping to change at line 486 | skipping to change at line 486 | |||
* | * | |||
* @stable ICU 4.0 | * @stable ICU 4.0 | |||
*/ | */ | |||
virtual UClassID getDynamicClassID() const; | virtual UClassID getDynamicClassID() const; | |||
private: | private: | |||
/** | /** | |||
* @internal | * @internal | |||
*/ | */ | |||
class PluralSelector : public UMemory { | class U_I18N_API PluralSelector : public UMemory { | |||
public: | public: | |||
/** | /** | |||
* Given a number, returns the appropriate PluralFormat keyword. | * Given a number, returns the appropriate PluralFormat keyword. | |||
* | * | |||
* @param number The number to be plural-formatted. | * @param number The number to be plural-formatted. | |||
* @param ec Error code. | * @param ec Error code. | |||
* @return The selected PluralFormat keyword. | * @return The selected PluralFormat keyword. | |||
*/ | */ | |||
virtual UnicodeString select(double number, UErrorCode& ec) const = 0; | virtual UnicodeString select(double number, UErrorCode& ec) const = 0; | |||
}; | }; | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
pwin32.h | pwin32.h | |||
---|---|---|---|---|
skipping to change at line 43 | skipping to change at line 43 | |||
/** _MSC_VER is used to detect the Microsoft compiler. */ | /** _MSC_VER is used to detect the Microsoft compiler. */ | |||
#if defined(_MSC_VER) | #if defined(_MSC_VER) | |||
#define U_INT64_IS_LONG_LONG 0 | #define U_INT64_IS_LONG_LONG 0 | |||
#else | #else | |||
#define U_INT64_IS_LONG_LONG 1 | #define U_INT64_IS_LONG_LONG 1 | |||
#endif | #endif | |||
/** Define whether inttypes.h is available */ | /** Define whether inttypes.h is available */ | |||
#ifndef U_HAVE_INTTYPES_H | #ifndef U_HAVE_INTTYPES_H | |||
# if defined(__BORLANDC__) || defined(__MINGW32__) | # if defined(__BORLANDC__) | |||
# define U_HAVE_INTTYPES_H 1 | # define U_HAVE_INTTYPES_H 1 | |||
# else | # else | |||
# define U_HAVE_INTTYPES_H 0 | # define U_HAVE_INTTYPES_H 0 | |||
# endif | # endif | |||
#endif | #endif | |||
/** | /** | |||
* Define what support for C++ streams is available. | * Define what support for C++ streams is available. | |||
* If U_IOSTREAM_SOURCE is set to 199711, then <iostream> is avai lable | * If U_IOSTREAM_SOURCE is set to 199711, then <iostream> is avai lable | |||
* (1997711 is the date the ISO/IEC C++ FDIS was published), and then | * (1997711 is the date the ISO/IEC C++ FDIS was published), and then | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
tmutfmt.h | tmutfmt.h | |||
---|---|---|---|---|
skipping to change at line 28 | skipping to change at line 28 | |||
#if !UCONFIG_NO_FORMATTING | #if !UCONFIG_NO_FORMATTING | |||
#include "unicode/unistr.h" | #include "unicode/unistr.h" | |||
#include "unicode/tmunit.h" | #include "unicode/tmunit.h" | |||
#include "unicode/tmutamt.h" | #include "unicode/tmutamt.h" | |||
#include "unicode/measfmt.h" | #include "unicode/measfmt.h" | |||
#include "unicode/numfmt.h" | #include "unicode/numfmt.h" | |||
#include "unicode/plurrule.h" | #include "unicode/plurrule.h" | |||
/** | /** | |||
* @internal ICU 4.2 | ||||
*/ | ||||
union UHashTok; | ||||
/** | ||||
* Constants for various styles. | * Constants for various styles. | |||
* There are 2 styles: full name and abbreviated name. | * There are 2 styles: full name and abbreviated name. | |||
* For example, for English, the full name for hour duration is "3 hours", | * For example, for English, the full name for hour duration is "3 hours", | |||
* and the abbreviated name is "3 hrs". | * and the abbreviated name is "3 hrs". | |||
* @draft ICU 4.8 | * @draft ICU 4.8 | |||
*/ | */ | |||
enum UTimeUnitFormatStyle { | enum UTimeUnitFormatStyle { | |||
/** @draft ICU 4.8 */ | /** @draft ICU 4.8 */ | |||
UTMUTFMT_FULL_STYLE, | UTMUTFMT_FULL_STYLE, | |||
/** @draft ICU 4.8 */ | /** @draft ICU 4.8 */ | |||
skipping to change at line 241 | skipping to change at line 235 | |||
// initialize fTimeUnitToCountToPatterns from current locale's resource . | // initialize fTimeUnitToCountToPatterns from current locale's resource . | |||
void readFromCurrentLocale(UTimeUnitFormatStyle style, const char* key, UErrorCode& status); | void readFromCurrentLocale(UTimeUnitFormatStyle style, const char* key, UErrorCode& status); | |||
// check completeness of fTimeUnitToCountToPatterns against all time un its, | // check completeness of fTimeUnitToCountToPatterns against all time un its, | |||
// and all plural rules, fill in fallback as necessary. | // and all plural rules, fill in fallback as necessary. | |||
void checkConsistency(UTimeUnitFormatStyle style, const char* key, UErr orCode& status); | void checkConsistency(UTimeUnitFormatStyle style, const char* key, UErr orCode& status); | |||
// fill in fTimeUnitToCountToPatterns from locale fall-back chain | // fill in fTimeUnitToCountToPatterns from locale fall-back chain | |||
void searchInLocaleChain(UTimeUnitFormatStyle style, const char* key, c onst char* localeName, | void searchInLocaleChain(UTimeUnitFormatStyle style, const char* key, c onst char* localeName, | |||
TimeUnit::UTimeUnitFields field, const char*, | TimeUnit::UTimeUnitFields field, const Unicode String&, | |||
const char*, Hashtable*, UErrorCode&); | const char*, Hashtable*, UErrorCode&); | |||
// initialize hash table | // initialize hash table | |||
Hashtable* initHash(UErrorCode& status); | Hashtable* initHash(UErrorCode& status); | |||
// delete hash table | // delete hash table | |||
void deleteHash(Hashtable* htable); | void deleteHash(Hashtable* htable); | |||
// copy hash table | // copy hash table | |||
void copyHash(const Hashtable* source, Hashtable* target, UErrorCode& s tatus); | void copyHash(const Hashtable* source, Hashtable* target, UErrorCode& s tatus); | |||
End of changes. 2 change blocks. | ||||
7 lines changed or deleted | 1 lines changed or added | |||
ucnvsel.h | ucnvsel.h | |||
---|---|---|---|---|
/* | /* | |||
*************************************************************************** **** | *************************************************************************** **** | |||
* | * | |||
* Copyright (C) 2008-2010, International Business Machines | * Copyright (C) 2008-2011, International Business Machines | |||
* Corporation, Google and others. All Rights Reserved. | * Corporation, Google and others. All Rights Reserved. | |||
* | * | |||
*************************************************************************** **** | *************************************************************************** **** | |||
*/ | */ | |||
/* | /* | |||
* Author : eldawy@google.com (Mohamed Eldawy) | * Author : eldawy@google.com (Mohamed Eldawy) | |||
* ucnvsel.h | * ucnvsel.h | |||
* | * | |||
* Purpose: To generate a list of encodings capable of handling | * Purpose: To generate a list of encodings capable of handling | |||
* a given Unicode text | * a given Unicode text | |||
* | * | |||
* Started 09-April-2008 | * Started 09-April-2008 | |||
*/ | */ | |||
#ifndef __ICU_UCNV_SEL_H__ | #ifndef __ICU_UCNV_SEL_H__ | |||
#define __ICU_UCNV_SEL_H__ | #define __ICU_UCNV_SEL_H__ | |||
#include "unicode/uset.h" | ||||
#include "unicode/utypes.h" | #include "unicode/utypes.h" | |||
#if !UCONFIG_NO_CONVERSION | ||||
#include "unicode/uset.h" | ||||
#include "unicode/utf16.h" | #include "unicode/utf16.h" | |||
#include "unicode/uenum.h" | #include "unicode/uenum.h" | |||
#include "unicode/ucnv.h" | #include "unicode/ucnv.h" | |||
#include "unicode/localpointer.h" | #include "unicode/localpointer.h" | |||
/** | /** | |||
* \file | * \file | |||
* | * | |||
* A converter selector is built with a set of encoding/charset names | * A converter selector is built with a set of encoding/charset names | |||
* and given an input string returns the set of names of the | * and given an input string returns the set of names of the | |||
skipping to change at line 182 | skipping to change at line 185 | |||
* @return an enumeration containing encoding names. | * @return an enumeration containing encoding names. | |||
* The returned encoding names and their order will be the same as | * The returned encoding names and their order will be the same as | |||
* supplied when building the selector. | * supplied when building the selector. | |||
* | * | |||
* @stable ICU 4.2 | * @stable ICU 4.2 | |||
*/ | */ | |||
U_STABLE UEnumeration * U_EXPORT2 | U_STABLE UEnumeration * U_EXPORT2 | |||
ucnvsel_selectForUTF8(const UConverterSelector* sel, | ucnvsel_selectForUTF8(const UConverterSelector* sel, | |||
const char *s, int32_t length, UErrorCode *status); | const char *s, int32_t length, UErrorCode *status); | |||
#endif /* !UCONFIG_NO_CONVERSION */ | ||||
#endif /* __ICU_UCNV_SEL_H__ */ | #endif /* __ICU_UCNV_SEL_H__ */ | |||
End of changes. 4 change blocks. | ||||
2 lines changed or deleted | 7 lines changed or added | |||
ucol.h | ucol.h | |||
---|---|---|---|---|
skipping to change at line 614 | skipping to change at line 614 | |||
int32_t destCapacity, | int32_t destCapacity, | |||
UErrorCode *pErrorCode); | UErrorCode *pErrorCode); | |||
/** | /** | |||
* Sets the reordering codes for this collator. | * Sets the reordering codes for this collator. | |||
* Collation reordering allows scripts and some other defined blocks of cha racters | * Collation reordering allows scripts and some other defined blocks of cha racters | |||
* to be moved relative to each other as a block. This reordering is done o n top of | * to be moved relative to each other as a block. This reordering is done o n top of | |||
* the DUCET/CLDR standard collation order. Reordering can specify groups t o be placed | * the DUCET/CLDR standard collation order. Reordering can specify groups t o be placed | |||
* at the start and/or the end of the collation order. These groups are spe cified using | * at the start and/or the end of the collation order. These groups are spe cified using | |||
* UScript codes and UColReorderCode entries. | * UScript codes and UColReorderCode entries. | |||
* <p>By default, reordering codes specified for the start of the order are placed in the | * <p>By default, reordering codes specified for the start of the order are placed in the | |||
* order given after a group of “special” non-script blocks. These special groups of characters | * order given after a group of "special" non-script blocks. These special groups of characters | |||
* are space, punctuation, symbol, currency, and digit. These special group s are represented with | * are space, punctuation, symbol, currency, and digit. These special group s are represented with | |||
* UColReorderCode entries. Script groups can be intermingled with | * UColReorderCode entries. Script groups can be intermingled with | |||
* these special non-script blocks if those special blocks are explicitly s pecified in the reordering. | * these special non-script blocks if those special blocks are explicitly s pecified in the reordering. | |||
* <p>The special code OTHERS stands for any script that is not explicitly | * <p>The special code OTHERS stands for any script that is not explicitly | |||
* mentioned in the list of reordering codes given. Anything that is after OTHERS | * mentioned in the list of reordering codes given. Anything that is after OTHERS | |||
* will go at the very end of the reordering in the order given. | * will go at the very end of the reordering in the order given. | |||
* <p>The special reorder code DEFAULT will reset the reordering for this c ollator | * <p>The special reorder code DEFAULT will reset the reordering for this c ollator | |||
* to the default for this collator. The default reordering may be the DUCE T/CLDR order or may be a reordering that | * to the default for this collator. The default reordering may be the DUCE T/CLDR order or may be a reordering that | |||
* was specified when this collator was created from resource data or from rules. The | * was specified when this collator was created from resource data or from rules. The | |||
* DEFAULT code <b>must</b> be the sole code supplied when it used. If not | * DEFAULT code <b>must</b> be the sole code supplied when it used. If not | |||
End of changes. 1 change blocks. | ||||
1 lines changed or deleted | 1 lines changed or added | |||
umachine.h | umachine.h | |||
---|---|---|---|---|
skipping to change at line 45 | skipping to change at line 45 | |||
* the UTF-handling macros made this unmaintainable. | * the UTF-handling macros made this unmaintainable. | |||
* | * | |||
*/ | */ | |||
/*========================================================================= =*/ | /*========================================================================= =*/ | |||
/* Include platform-dependent definitions */ | /* Include platform-dependent definitions */ | |||
/* which are contained in the platform-specific file platform.h */ | /* which are contained in the platform-specific file platform.h */ | |||
/*========================================================================= =*/ | /*========================================================================= =*/ | |||
#if defined(U_PALMOS) | #if defined(U_PALMOS) | |||
# include "unicode/ppalmos.h" | # include "unicode/ppalmos.h" | |||
#elif /*!defined(__MINGW32__) && */(defined(WIN32) || defined(_WIN32) || de fined(WIN64) || defined(_WIN64)) | #elif !defined(__MINGW32__) && (defined(WIN32) || defined(_WIN32) || define d(WIN64) || defined(_WIN64)) | |||
/* | /* | |||
* platform.h is now also generated by MSVC Solution/Project files | * platform.h is now also generated by MSVC Solution/Project files | |||
* from platform.win and should always be included unless you are | * from platform.win and should always be included unless you are | |||
* building stubdata which is built before the platform.h file is | * building stubdata which is built before the platform.h file is | |||
* generated. | * generated. | |||
*/ | */ | |||
#ifndef STUBDATA_BUILD | #ifndef STUBDATA_BUILD | |||
# include "unicode/platform.h" | # include "unicode/platform.h" | |||
#endif | #endif | |||
# include "unicode/pwin32.h" | # include "unicode/pwin32.h" | |||
skipping to change at line 113 | skipping to change at line 113 | |||
#ifdef XP_CPLUSPLUS | #ifdef XP_CPLUSPLUS | |||
# define U_CFUNC extern "C" | # define U_CFUNC extern "C" | |||
# define U_CDECL_BEGIN extern "C" { | # define U_CDECL_BEGIN extern "C" { | |||
# define U_CDECL_END } | # define U_CDECL_END } | |||
#else | #else | |||
# define U_CFUNC extern | # define U_CFUNC extern | |||
# define U_CDECL_BEGIN | # define U_CDECL_BEGIN | |||
# define U_CDECL_END | # define U_CDECL_END | |||
#endif | #endif | |||
#ifndef U_ATTRIBUTE_DEPRECATED | ||||
/** | /** | |||
* \def U_ATTRIBUTE_DEPRECATED | * \def U_ATTRIBUTE_DEPRECATED | |||
* This is used for GCC specific attributes | * This is used for GCC specific attributes | |||
* @internal | * @internal | |||
*/ | */ | |||
#if defined(__GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)) | #if defined(__GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 2)) | |||
# define U_ATTRIBUTE_DEPRECATED __attribute__ ((deprecated)) | # define U_ATTRIBUTE_DEPRECATED __attribute__ ((deprecated)) | |||
/** | /** | |||
* \def U_ATTRIBUTE_DEPRECATED | * \def U_ATTRIBUTE_DEPRECATED | |||
* This is used for Visual C++ specific attributes | * This is used for Visual C++ specific attributes | |||
* @internal | * @internal | |||
*/ | */ | |||
#elif defined(U_WINDOWS) && defined(_MSC_VER) && (_MSC_VER >= 1400) | #elif defined(U_WINDOWS) && defined(_MSC_VER) && (_MSC_VER >= 1400) | |||
# define U_ATTRIBUTE_DEPRECATED __declspec(deprecated) | # define U_ATTRIBUTE_DEPRECATED __declspec(deprecated) | |||
#else | #else | |||
# define U_ATTRIBUTE_DEPRECATED | # define U_ATTRIBUTE_DEPRECATED | |||
#endif | #endif | |||
#endif | ||||
/** This is used to declare a function as a public ICU C API @stable ICU 2. 0*/ | /** This is used to declare a function as a public ICU C API @stable ICU 2. 0*/ | |||
#define U_CAPI U_CFUNC U_EXPORT | #define U_CAPI U_CFUNC U_EXPORT | |||
/** This is used to declare a function as a stable public ICU C API*/ | /** This is used to declare a function as a stable public ICU C API*/ | |||
#define U_STABLE U_CAPI | #define U_STABLE U_CAPI | |||
/** This is used to declare a function as a draft public ICU C API */ | /** This is used to declare a function as a draft public ICU C API */ | |||
#define U_DRAFT U_CAPI | #define U_DRAFT U_CAPI | |||
/** This is used to declare a function as a deprecated public ICU C API */ | /** This is used to declare a function as a deprecated public ICU C API */ | |||
#define U_DEPRECATED U_CAPI U_ATTRIBUTE_DEPRECATED | #define U_DEPRECATED U_CAPI U_ATTRIBUTE_DEPRECATED | |||
/** This is used to declare a function as an obsolete public ICU C API */ | /** This is used to declare a function as an obsolete public ICU C API */ | |||
#define U_OBSOLETE U_CAPI | #define U_OBSOLETE U_CAPI | |||
End of changes. 3 change blocks. | ||||
1 lines changed or deleted | 4 lines changed or added | |||
unistr.h | unistr.h | |||
---|---|---|---|---|
skipping to change at line 3949 | skipping to change at line 3949 | |||
UnicodeString::startsWith(const UnicodeString& text) const | UnicodeString::startsWith(const UnicodeString& text) const | |||
{ return compare(0, text.length(), text, 0, text.length()) == 0; } | { return compare(0, text.length(), text, 0, text.length()) == 0; } | |||
inline UBool | inline UBool | |||
UnicodeString::startsWith(const UnicodeString& srcText, | UnicodeString::startsWith(const UnicodeString& srcText, | |||
int32_t srcStart, | int32_t srcStart, | |||
int32_t srcLength) const | int32_t srcLength) const | |||
{ return doCompare(0, srcLength, srcText, srcStart, srcLength) == 0; } | { return doCompare(0, srcLength, srcText, srcStart, srcLength) == 0; } | |||
inline UBool | inline UBool | |||
UnicodeString::startsWith(const UChar *srcChars, | UnicodeString::startsWith(const UChar *srcChars, int32_t srcLength) const { | |||
int32_t srcLength) const | if(srcLength < 0) { | |||
{ return doCompare(0, srcLength, srcChars, 0, srcLength) == 0; } | srcLength = u_strlen(srcChars); | |||
} | ||||
return doCompare(0, srcLength, srcChars, 0, srcLength) == 0; | ||||
} | ||||
inline UBool | inline UBool | |||
UnicodeString::startsWith(const UChar *srcChars, | UnicodeString::startsWith(const UChar *srcChars, int32_t srcStart, int32_t | |||
int32_t srcStart, | srcLength) const { | |||
int32_t srcLength) const | if(srcLength < 0) { | |||
{ return doCompare(0, srcLength, srcChars, srcStart, srcLength) == 0;} | srcLength = u_strlen(srcChars); | |||
} | ||||
return doCompare(0, srcLength, srcChars, srcStart, srcLength) == 0; | ||||
} | ||||
inline UBool | inline UBool | |||
UnicodeString::endsWith(const UnicodeString& text) const | UnicodeString::endsWith(const UnicodeString& text) const | |||
{ return doCompare(length() - text.length(), text.length(), | { return doCompare(length() - text.length(), text.length(), | |||
text, 0, text.length()) == 0; } | text, 0, text.length()) == 0; } | |||
inline UBool | inline UBool | |||
UnicodeString::endsWith(const UnicodeString& srcText, | UnicodeString::endsWith(const UnicodeString& srcText, | |||
int32_t srcStart, | int32_t srcStart, | |||
int32_t srcLength) const { | int32_t srcLength) const { | |||
End of changes. 2 change blocks. | ||||
7 lines changed or deleted | 13 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 8 | #define U_ICU_VERSION_MINOR_NUM 8 | |||
/** 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 0 | #define U_ICU_VERSION_PATCHLEVEL_NUM 1 | |||
/** 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 94 | skipping to change at line 94 | |||
*/ | */ | |||
#ifndef U_ICU_ENTRY_POINT_RENAME | #ifndef U_ICU_ENTRY_POINT_RENAME | |||
#define U_ICU_ENTRY_POINT_RENAME(x) x ## _48 | #define U_ICU_ENTRY_POINT_RENAME(x) x ## _48 | |||
#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 "4.8" | #define U_ICU_VERSION "4.8.1" | |||
/** 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 "48" | #define U_ICU_VERSION_SHORT "48" | |||
/** 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 "4.8" | #define U_ICU_DATA_VERSION "4.8.1" | |||
/*========================================================================= == | /*========================================================================= == | |||
* 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 | |||
*========================================================================= == | *========================================================================= == | |||
*/ | */ | |||
/** | /** | |||
* Collation runtime version (sort key generator, strcoll). | * Collation runtime version (sort key generator, strcoll). | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||