# ICU4C API Comparison: 4.2.1 with 4.4(4.3.3/M3)

- Removed from 4.2.1
- Deprecated or Obsoleted in 4.4
- Changed in 4.4
- Promoted to stable in 4.4
- Added in 4.4
- Other existing drafts in 4.4

## Removed from 4.2.1

File | API | 4.2.1 | 4.4
--- | --- | --- | ---
errorcode.h | void ErrorCode::check() const | Draft 4.2 | None
tmutfmt.h | static UBool hashTableValueComparator(UHashTok , UHashTok ) | Internal 4.2 | None
uversion.h | int32_t u_compareVersions(UVersionInfo , UVersionInfo ) | Draft 4.2 | None

(jump back to top)

## Deprecated or Obsoleted in 4.4

File | API | 4.2.1 | 4.4
--- | --- | --- | ---

(jump back to top)

## Changed in 4.4 (old, new)

File | API | 4.2.1 | 4.4
--- | --- | --- | ---
timezone.h | UnicodeString& TimeZone::getDisplayName(UBool , EDisplayType , UnicodeString &) const | Stable 2.0 | Draft 4.4
timezone.h | UnicodeString& TimeZone::getDisplayName(UBool , EDisplayType , const Locale &, UnicodeString &) const | Stable 2.0 | Draft 4.4

(jump back to top)

## Promoted to stable in 4.4

File | API | 4.2.1 | 4.4
--- | --- | --- | ---

(jump back to top)

## Added in 4.4

File | API | 4.2.1 | 4.4
--- | --- | --- | ---
errorcode.h | const char* ErrorCode::errorName() const | None | Draft 4.4
errorcode.h | void ErrorCode::assertSuccess() const | None | Draft 4.4
icudataver.h | void u_getDataVersion(UVersionInfo , UErrorCode *) | None | Draft 4.4
icudataver.h | UBool u_isDataOlder(UVersionInfo , UBool *, UErrorCode *) | None | Draft 4.4
timezone.h | void TimeZone::setDefaultTimeZoneNameStyle(EDisplayType ) | None | Draft 4.4
timezone.h | EDisplayType TimeZone::getDefaultTimeZoneNameStyle() | None | Draft 4.4
tmutfmt.h | UBool tmutfmtHashTableValueComparator(UHashTok , UHashTok ) | None | Internal 4.2

(jump back to top)

## Other existing drafts in 4.4

File | API | 4.2.1 | 4.4
--- | --- | --- | ---
bytestream.h | char* CheckedArrayByteSink::GetAppendBuffer(int32_t , int32_t , char *, int32_t , int32_t *) | Draft 4.2
bytestream.h | char* ByteSink::GetAppendBuffer(int32_t , int32_t , char *, int32_t , int32_t *) | Draft 4.2
bytestream.h | void ByteSink::Append(const char *, int32_t )=0 | Draft 4.2
bytestream.h | void ByteSink::Flush() | Draft 4.2
bytestream.h | ByteSink::ByteSink() | Draft 4.2
bytestream.h | CheckedArrayByteSink::CheckedArrayByteSink(char *, int32_t ) | Draft 4.2
bytestream.h | ByteSink::~ByteSink() | Draft 4.2
bytestream.h | void StringByteSink< StringClass >::Append(const char *, int32_t ) | Draft 4.2
bytestream.h | StringByteSink< StringClass >::StringByteSink(StringClass *) | Draft 4.2
bytestream.h | int32_t CheckedArrayByteSink::NumberOfBytesWritten() const | Draft 4.2
bytestream.h | void CheckedArrayByteSink::Append(const char *, int32_t ) | Draft 4.2
bytestream.h | UBool CheckedArrayByteSink::Overflowed() const | Draft 4.2
calendar.h | static StringEnumeration* Calendar::getKeywordValuesForLocale(const char *, const Locale &, UBool , UErrorCode &) | Draft 4.2
coll.h | static StringEnumeration* Collator::getKeywordValuesForLocale(const char *, const Locale &, UBool , UErrorCode &) | Draft 4.2
coll.h | UCollationResult Collator::compareUTF8(const StringPiece &, const StringPiece &, UErrorCode &) const | Draft 4.2
coll.h | UCollationResult Collator::compare(UCharIterator &, UCharIterator &, UErrorCode &) const | Draft 4.2
currpinf.h | UClassID CurrencyPluralInfo::getDynamicClassID() const | Draft 4.2
currpinf.h | UBool CurrencyPluralInfo::operator==(const CurrencyPluralInfo &) const | Draft 4.2
currpinf.h | CurrencyPluralInfo& CurrencyPluralInfo::operator=(const CurrencyPluralInfo &) | Draft 4.2
currpinf.h | CurrencyPluralInfo::CurrencyPluralInfo(const CurrencyPluralInfo &) | Draft 4.2
currpinf.h | void CurrencyPluralInfo::setCurrencyPluralPattern(const UnicodeString &, const UnicodeString &, UErrorCode &) | Draft 4.2
currpinf.h | void CurrencyPluralInfo::setPluralRules(const UnicodeString &, UErrorCode &) | Draft 4.2
currpinf.h | CurrencyPluralInfo* CurrencyPluralInfo::clone() const | Draft 4.2
currpinf.h | CurrencyPluralInfo::CurrencyPluralInfo(UErrorCode &) | Draft 4.2
currpinf.h | UBool CurrencyPluralInfo::operator!=(const CurrencyPluralInfo &) const | Draft 4.2
currpinf.h | const Locale& CurrencyPluralInfo::getLocale() const | Draft 4.2
currpinf.h | CurrencyPluralInfo::CurrencyPluralInfo(const Locale &, UErrorCode &) | Draft 4.2
currpinf.h | CurrencyPluralInfo::~CurrencyPluralInfo() | Draft 4.2
currpinf.h | UnicodeString& CurrencyPluralInfo::getCurrencyPluralPattern(const UnicodeString &, UnicodeString &) const | Draft 4.2
currpinf.h | void CurrencyPluralInfo::setLocale(const Locale &, UErrorCode &) | Draft 4.2
currpinf.h | static UClassID CurrencyPluralInfo::getStaticClassID() | Draft 4.2
currpinf.h | const PluralRules* CurrencyPluralInfo::getPluralRules() const | Draft 4.2
dcfmtsym.h | void DecimalFormatSymbols::setPatternForCurrencySpacing(ECurrencySpacing , UBool , const UnicodeString &) | Draft 4.2
dcfmtsym.h | const UnicodeString& DecimalFormatSymbols::getPatternForCurrencySpacing(ECurrencySpacing , UBool , UErrorCode &) const | Draft 4.2
decimfmt.h | const CurrencyPluralInfo* DecimalFormat::getCurrencyPluralInfo(void) const | Draft 4.2
decimfmt.h | void DecimalFormat::adoptCurrencyPluralInfo(CurrencyPluralInfo *) | Draft 4.2
decimfmt.h | void DecimalFormat::setCurrencyPluralInfo(const CurrencyPluralInfo &) | Draft 4.2
dtfmtsym.h | const UnicodeString* DateFormatSymbols::getNarrowEras(int32_t &) const | Draft 4.2
dtfmtsym.h | void DateFormatSymbols::setNarrowEras(const UnicodeString *, int32_t ) | Draft 4.2
errorcode.h | UBool ErrorCode::isSuccess() const | Draft 4.2
errorcode.h | ErrorCode::~ErrorCode() | Draft 4.2
errorcode.h | UErrorCode ErrorCode::get() const | Draft 4.2
errorcode.h | UBool ErrorCode::isFailure() const | Draft 4.2
errorcode.h | ErrorCode::operator UErrorCode *() | Draft 4.2
errorcode.h | void ErrorCode::set(UErrorCode ) | Draft 4.2
errorcode.h | UErrorCode ErrorCode::reset() | Draft 4.2
errorcode.h | ErrorCode::operator UErrorCode &() | Draft 4.2
errorcode.h | ErrorCode::ErrorCode() | Draft 4.2
LEGlyphStorage.h | LEGlyphID* LEGlyphStorage::insertGlyphs(le_int32 , le_int32 , LEErrorCode &) | Draft 4.2
LEGlyphStorage.h | void LEGlyphStorage::moveGlyph(le_int32 , le_int32 , le_uint32 ) | Draft 4.2
numfmt.h | static NumberFormat* NumberFormat::createInstance(const Locale &, EStyles , UErrorCode &) | Draft 4.2
numsys.h | int32_t NumberingSystem::getRadix() | Draft 4.2
numsys.h | NumberingSystem::~NumberingSystem() | Draft 4.2
numsys.h | static NumberingSystem* NumberingSystem::createInstanceByName(const char *, UErrorCode &) | Draft 4.2
numsys.h | static NumberingSystem* NumberingSystem::createInstance(UErrorCode &) | Draft 4.2
numsys.h | static NumberingSystem* NumberingSystem::createInstance(const Locale &, UErrorCode &) | Draft 4.2
numsys.h | static NumberingSystem* NumberingSystem::createInstance(int32_t , UBool , const UnicodeString &, UErrorCode &) | Draft 4.2
numsys.h | UBool NumberingSystem::isAlgorithmic() const | Draft 4.2
numsys.h | UnicodeString NumberingSystem::getDescription() | Draft 4.2
numsys.h | NumberingSystem::NumberingSystem() | Draft 4.2
numsys.h | static UClassID NumberingSystem::getStaticClassID(void) | Draft 4.2
numsys.h | NumberingSystem::NumberingSystem(const NumberingSystem &) | Draft 4.2
numsys.h | static StringEnumeration* NumberingSystem::getAvailableNames(UErrorCode &) | Draft 4.2
numsys.h | UClassID NumberingSystem::getDynamicClassID() const | Draft 4.2
smpdtfmt.h | SimpleDateFormat::SimpleDateFormat(const UnicodeString &, const UnicodeString &, UErrorCode &) | Draft 4.2
smpdtfmt.h | SimpleDateFormat::SimpleDateFormat(const UnicodeString &, const UnicodeString &, const Locale &, UErrorCode &) | Draft 4.2
stringpiece.h | StringPiece::StringPiece(const StringPiece &, int32_t , int32_t ) | Draft 4.2
stringpiece.h | const char* StringPiece::data() const | Draft 4.2
stringpiece.h | StringPiece::StringPiece(const char *) | Draft 4.2
stringpiece.h | StringPiece::StringPiece(const StringPiece &, int32_t ) | Draft 4.2
stringpiece.h | StringPiece::StringPiece() | Draft 4.2
stringpiece.h | void StringPiece::remove_suffix(int32_t ) | Draft 4.2
stringpiece.h | int32_t StringPiece::length() const | Draft 4.2
stringpiece.h | UBool StringPiece::empty() const | Draft 4.2
stringpiece.h | StringPiece::StringPiece(const U_STD_NSQ string &) | Draft 4.2
stringpiece.h | void StringPiece::remove_prefix(int32_t ) | Draft 4.2
stringpiece.h | int32_t StringPiece::size() const | Draft 4.2
stringpiece.h | StringPiece::StringPiece(const char *, int32_t ) | Draft 4.2
stringpiece.h | StringPiece StringPiece::substr(int32_t , int32_t len=) const | Draft 4.2
stringpiece.h | void StringPiece::clear() | Draft 4.2
tblcoll.h | UCollationResult RuleBasedCollator::compare(UCharIterator &, UCharIterator &, UErrorCode &) const | Draft 4.2
tmunit.h | UClassID TimeUnit::getDynamicClassID() const | Draft 4.2
tmunit.h | TimeUnit::~TimeUnit() | Draft 4.2
tmunit.h | UObject* TimeUnit::clone() const | Draft 4.2
tmunit.h | static UClassID TimeUnit::getStaticClassID() | Draft 4.2
tmunit.h | static TimeUnit* TimeUnit::createInstance(UTimeUnitFields , UErrorCode &) | Draft 4.2
tmunit.h | TimeUnit& TimeUnit::operator=(const TimeUnit &) | Draft 4.2
tmunit.h | UTimeUnitFields TimeUnit::getTimeUnitField() const | Draft 4.2
tmunit.h | UBool TimeUnit::operator==(const UObject &) const | Draft 4.2
tmunit.h | TimeUnit::TimeUnit(const TimeUnit &) | Draft 4.2
tmunit.h | UBool TimeUnit::operator!=(const UObject &) const | Draft 4.2
tmutamt.h | TimeUnitAmount::~TimeUnitAmount() | Draft 4.2
tmutamt.h | UClassID TimeUnitAmount::getDynamicClassID(void) const | Draft 4.2
tmutamt.h | TimeUnitAmount& TimeUnitAmount::operator=(const TimeUnitAmount &) | Draft 4.2
tmutamt.h | TimeUnitAmount::TimeUnitAmount(double , TimeUnit::UTimeUnitFields , UErrorCode &) | Draft 4.2
tmutamt.h | UObject* TimeUnitAmount::clone() const | Draft 4.2
tmutamt.h | TimeUnitAmount::TimeUnitAmount(const Formattable &, TimeUnit::UTimeUnitFields , UErrorCode &) | Draft 4.2
tmutamt.h | UBool TimeUnitAmount::operator==(const UObject &) const | Draft 4.2
tmutamt.h | TimeUnitAmount::TimeUnitAmount(const TimeUnitAmount &) | Draft 4.2
tmutamt.h | UBool TimeUnitAmount::operator!=(const UObject &) const | Draft 4.2
tmutamt.h | static UClassID TimeUnitAmount::getStaticClassID(void) | Draft 4.2
tmutamt.h | const TimeUnit& TimeUnitAmount::getTimeUnit() const | Draft 4.2
tmutamt.h | TimeUnit::UTimeUnitFields TimeUnitAmount::getTimeUnitField() const | Draft 4.2
tmutfmt.h | TimeUnitFormat::TimeUnitFormat(const Locale &, EStyle , UErrorCode &) | Draft 4.2
tmutfmt.h | UnicodeString& TimeUnitFormat::format(const Formattable &, UnicodeString &, FieldPosition &, UErrorCode &) const | Draft 4.2
tmutfmt.h | TimeUnitFormat& TimeUnitFormat::operator=(const TimeUnitFormat &) | Draft 4.2
tmutfmt.h | static UClassID TimeUnitFormat::getStaticClassID(void) | Draft 4.2
tmutfmt.h | UClassID TimeUnitFormat::getDynamicClassID(void) const | Draft 4.2
tmutfmt.h | TimeUnitFormat::~TimeUnitFormat() | Draft 4.2
tmutfmt.h | TimeUnitFormat::TimeUnitFormat(const Locale &, UErrorCode &) | Draft 4.2
tmutfmt.h | TimeUnitFormat::TimeUnitFormat(const TimeUnitFormat &) | Draft 4.2
tmutfmt.h | void TimeUnitFormat::parseObject(const UnicodeString &, Formattable &, ParsePosition &) const | Draft 4.2
tmutfmt.h | UBool TimeUnitFormat::operator!=(const Format &) const | Draft 4.2
tmutfmt.h | void TimeUnitFormat::setLocale(const Locale &, UErrorCode &) | Draft 4.2
tmutfmt.h | TimeUnitFormat::TimeUnitFormat(UErrorCode &) | Draft 4.2
tmutfmt.h | void TimeUnitFormat::setNumberFormat(const NumberFormat &, UErrorCode &) | Draft 4.2
tmutfmt.h | UBool TimeUnitFormat::operator==(const Format &) const | Draft 4.2
tmutfmt.h | Format* TimeUnitFormat::clone(void) const | Draft 4.2
ucal.h | const char* ucal_getType(const UCalendar *, UErrorCode *) | Draft 4.2
ucal.h | UEnumeration* ucal_getKeywordValuesForLocale(const char *, const char *, UBool , UErrorCode *) | Draft 4.2
ucnvsel.h | void ucnvsel_close(UConverterSelector *) | Draft 4.2
ucnvsel.h | UConverterSelector* ucnvsel_open(const char *const *, int32_t , const USet *, const UConverterUnicodeSet , UErrorCode *) | Draft 4.2
ucnvsel.h | UEnumeration* ucnvsel_selectForUTF8(const UConverterSelector *, const char *, int32_t , UErrorCode *) | Draft 4.2
ucnvsel.h | UEnumeration* ucnvsel_selectForString(const UConverterSelector *, const UChar *, int32_t , UErrorCode *) | Draft 4.2
ucnvsel.h | int32_t ucnvsel_serialize(const UConverterSelector *, void *, int32_t , UErrorCode *) | Draft 4.2
ucnvsel.h | UConverterSelector* ucnvsel_openFromSerialized(const void *, int32_t , UErrorCode *) | Draft 4.2
ucol.h | UEnumeration* ucol_getKeywordValuesForLocale(const char *, const char *, UBool , UErrorCode *) | Draft 4.2
ucurr.h | UEnumeration* ucurr_getKeywordValuesForLocale(const char *, const char *, UBool , UErrorCode *) | Draft 4.2
ucurr.h | const UChar* ucurr_getPluralName(const UChar *, const char *, UBool *, const char *, int32_t *, UErrorCode *) | Draft 4.2
uloc.h | int32_t uloc_forLanguageTag(const char *, char *, int32_t , int32_t *, UErrorCode *) | Draft 4.2
uloc.h | int32_t uloc_toLanguageTag(const char *, char *, int32_t , UBool , UErrorCode *) | Draft 4.2
ulocdata.h | void ulocdata_getCLDRVersion(UVersionInfo , UErrorCode *) | Draft 4.2
ulocdata.h | int32_t ulocdata_getLocaleDisplayPattern(ULocaleData *, UChar *, int32_t , UErrorCode *) | Draft 4.2
ulocdata.h | int32_t ulocdata_getLocaleSeparator(ULocaleData *, UChar *, int32_t , UErrorCode *) | Draft 4.2
uniset.h | USet * UnicodeSet::toUSet() | Draft 4.2
uniset.h | const USet * UnicodeSet::toUSet() const | Draft 4.2
uniset.h | UnicodeSet& UnicodeSet::closeOver(int32_t ) | Draft 4.2
uniset.h | UnicodeSet * UnicodeSet::fromUSet(USet *) | Draft 4.2
uniset.h | const UnicodeSet * UnicodeSet::fromUSet(const USet *) | Draft 4.2
uniset.h | UnicodeSet& UnicodeSet::removeAllStrings() | Draft 4.2
unistr.h | int32_t UnicodeString::toUTF32(UChar32 *, int32_t , UErrorCode &) const | Draft 4.2
unistr.h | StringClass& UnicodeString::toUTF8String(StringClass &) const | Draft 4.2
unistr.h | static UnicodeString UnicodeString::fromUTF8(const StringPiece &) | Draft 4.2
unistr.h | static UnicodeString UnicodeString::fromUTF32(const UChar32 *, int32_t ) | Draft 4.2
unistr.h | void UnicodeString::toUTF8(ByteSink &) const | Draft 4.2
uset.h | void uset_removeAllStrings(USet *) | Draft 4.2
uset.h | USet* uset_openEmpty() | Draft 4.2
uset.h | void uset_closeOver(USet *, int32_t ) | Draft 4.2
uspoof.h | int32_t uspoof_getSkeleton(const USpoofChecker *, uint32_t , const UChar *, int32_t , UChar *, int32_t , UErrorCode *) | Draft 4.2
uspoof.h | int32_t uspoof_serialize(USpoofChecker *, void *, int32_t , UErrorCode *) | Draft 4.2
uspoof.h | USpoofChecker* uspoof_openFromSerialized(const void *, int32_t , int32_t *, UErrorCode *) | Draft 4.2
uspoof.h | int32_t uspoof_checkUTF8(const USpoofChecker *, const char *, int32_t , int32_t *, UErrorCode *) | Draft 4.2
uspoof.h | USpoofChecker* uspoof_clone(const USpoofChecker *, UErrorCode *) | Draft 4.2
uspoof.h | int32_t uspoof_getChecks(const USpoofChecker *, UErrorCode *) | Draft 4.2
uspoof.h | void uspoof_close(USpoofChecker *) | Draft 4.2
uspoof.h | int32_t uspoof_check(const USpoofChecker *, const UChar *, int32_t , int32_t *, UErrorCode *) | Draft 4.2
uspoof.h | int32_t uspoof_areConfusable(const USpoofChecker *, const UChar *, int32_t , const UChar *, int32_t , UErrorCode *) | Draft 4.2
uspoof.h | void uspoof_setChecks(USpoofChecker *, int32_t , UErrorCode *) | Draft 4.2
uspoof.h | const USet* uspoof_getAllowedChars(const USpoofChecker *, UErrorCode *) | Draft 4.2
uspoof.h | void uspoof_setAllowedChars(USpoofChecker *, const USet *, UErrorCode *) | Draft 4.2
uspoof.h | int32_t uspoof_areConfusableUTF8(const USpoofChecker *, const char *, int32_t , const char *, int32_t , UErrorCode *) | Draft 4.2
uspoof.h | USpoofChecker* uspoof_openFromSource(const char *, int32_t , const char *, int32_t , int32_t *, UParseError *, UErrorCode *) | Draft 4.2
uspoof.h | const char* uspoof_getAllowedLocales(USpoofChecker *, UErrorCode *) | Draft 4.2
uspoof.h | int32_t uspoof_getSkeletonUTF8(const USpoofChecker *, uint32_t , const char *, int32_t , char *, int32_t , UErrorCode *) | Draft 4.2
uspoof.h | USpoofChecker* uspoof_open(UErrorCode *) | Draft 4.2
uspoof.h | void uspoof_setAllowedLocales(USpoofChecker *, const char *, UErrorCode *) | Draft 4.2
usprep.h | UStringPrepProfile* usprep_openByType(UStringPrepProfileType , UErrorCode *) | Draft 4.2
ustring.h | UChar* u_strFromUTF32WithSub(UChar *, int32_t , int32_t *, const UChar32 *, int32_t , UChar32 , int32_t *, UErrorCode *) | Draft 4.2
ustring.h | UChar32* u_strToUTF32WithSub(UChar32 *, int32_t , int32_t *, const UChar *, int32_t , UChar32 , int32_t *, UErrorCode *) | Draft 4.2
uversion.h | void u_versionFromUString(UVersionInfo , const UChar *) | Draft 4.2

(jump back to top)

Contents generated by StableAPI tool on Tue Nov 17 09:04:21 GMT-08:00 2009
Copyright (C) 2009, International Business Machines Corporation, All Rights Reserved.