blob: b953c2763d6bd2da884e27461ea654a2ca3cf94b [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?><!--
Copyright (C) 2009, International Business Machines Corporation, All Rights Reserved.
--><html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ICU4C API Comparison: 4.0.1 with 4.2 (4.1.4 / M4)</title>
<link type="text/css" href="icu4c.css" rel="stylesheet">
</head>
<body>
<a name="_top"></a>
<h1>ICU4C API Comparison: 4.0.1 with 4.2 (4.1.4 / M4)</h1>
<ul>
<li>
<a href="#removed">Removed from 4.0.1</a>
</li>
<li>
<a href="#deprecated">Deprecated or Obsoleted in 4.2</a>
</li>
<li>
<a href="#changed">Changed in 4.2</a>
</li>
<li>
<a href="#promoted">Promoted to stable in 4.2</a>
</li>
<li>
<a href="#added">Added in 4.2</a>
</li>
<li>
<a href="#other">Other existing drafts in 4.2</a>
</li>
</ul>
<hr>
<a name="removed">
<h2>Removed from 4.0.1</h2>
</a>
<table BORDER="1" class="genTable">
<THEAD>
<tr>
<th>File</th><th>API</th><th>4.0.1</th><th>4.2</th>
</tr>
</THEAD>
<tr class="row1">
<td class="file">datefmt.h</td><td class="proto">static DateFormat* DateFormat::createPatternInstance(const UnicodeString &amp;skeleton, const Locale &amp;locale, UErrorCode &amp;status)</td><td class="">Internal<br>4.0</td><td>None<br>
<span class=""><span></span></span></td>
</tr>
<tr class="row0">
<td class="file">unistr.h</td><td class="proto">UnicodeString::UnicodeString(const char *codepageData, int32_t dataLength, const char *codepage=0)</td><td class="stabchange">Stable<br>2.0</td><td>None<br>
<span class=""><span></span></span></td>
</tr>
<tr class="row1">
<td class="file">unistr.h</td><td class="proto">int32_t UnicodeString::extract(int32_t start, int32_t startLength, char *target, uint32_t targetLength, const char *codepage=0) const</td><td class="stabchange">Stable<br>2.0</td><td>None<br>
<span class=""><span></span></span></td>
</tr>
<tr class="row0">
<td class="file">unistr.h</td><td class="proto">UnicodeString::UnicodeString(const char *codepageData, const char *codepage=0)</td><td class="stabchange">Stable<br>2.0</td><td>None<br>
<span class=""><span></span></span></td>
</tr>
</table>
<P></P>
<a href="#_top">(jump back to top)</a>
<hr>
<a name="deprecated">
<h2>Deprecated or Obsoleted in 4.2</h2>
</a>
<table BORDER="1" class="genTable">
<THEAD>
<tr>
<th>File</th><th>API</th><th>4.0.1</th><th>4.2</th>
</tr>
</THEAD>
</table>
<P></P>
<a href="#_top">(jump back to top)</a>
<hr>
<a name="changed">
<h2>Changed in 4.2 (old, new)</h2>
</a>
<table BORDER="1" class="genTable">
<THEAD>
<tr>
<th>File</th><th>API</th><th>4.0.1</th><th>4.2</th>
</tr>
</THEAD>
<tr class="row1">
<td class="file">bmsearch.h</td><td class="proto">UClassID BoyerMooreSearch::getDynamicClassID() const</td><td class="">Internal<br>4.0.1 technology preview</td><td>
<br>
<span class=""><span></span></span></td>
</tr>
<tr class="row0">
<td class="file">bmsearch.h</td><td class="proto">static UClassID BoyerMooreSearch::getStaticClassID()</td><td class="">Internal<br>4.0.1 technology preview</td><td>
<br>
<span class=""><span></span></span></td>
</tr>
<tr class="row1">
<td class="file">colldata.h</td><td class="proto">UClassID CollData::getDynamicClassID() const</td><td class="">Internal<br>4.0.1 technology preview</td><td>
<br>
<span class=""><span></span></span></td>
</tr>
<tr class="row0">
<td class="file">colldata.h</td><td class="proto">static UClassID StringList::getStaticClassID()</td><td class="">Internal<br>4.0.1 technology preview</td><td>
<br>
<span class=""><span></span></span></td>
</tr>
<tr class="row1">
<td class="file">colldata.h</td><td class="proto">static UClassID CollData::getStaticClassID()</td><td class="">Internal<br>4.0.1 technology preview</td><td>
<br>
<span class=""><span></span></span></td>
</tr>
<tr class="row0">
<td class="file">colldata.h</td><td class="proto">UClassID CEList::getDynamicClassID() const</td><td class="">Internal<br>4.0.1 technology preview</td><td>
<br>
<span class=""><span></span></span></td>
</tr>
<tr class="row1">
<td class="file">colldata.h</td><td class="proto">static UClassID CEList::getStaticClassID()</td><td class="">Internal<br>4.0.1 technology preview</td><td>
<br>
<span class=""><span></span></span></td>
</tr>
<tr class="row0">
<td class="file">colldata.h</td><td class="proto">UClassID StringList::getDynamicClassID() const</td><td class="">Internal<br>4.0.1 technology preview</td><td>
<br>
<span class=""><span></span></span></td>
</tr>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">DateInterval::DateInterval(UDate fromDate, UDate toDate)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtintrv.h</td><td class="proto">DateInterval&amp; DateInterval::operator=(const DateInterval &amp;)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">UDate DateInterval::getToDate() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtintrv.h</td><td class="proto">UBool DateInterval::operator==(const DateInterval &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">DateInterval::DateInterval(const DateInterval &amp;other)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtintrv.h</td><td class="proto">UDate DateInterval::getFromDate() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">UBool DateInterval::operator!=(const DateInterval &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtintrv.h</td><td class="proto">DateInterval* DateInterval::clone() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">UClassID DateInterval::getDynamicClassID(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtintrv.h</td><td class="proto">static UClassID DateInterval::getStaticClassID(void)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">DateInterval::~DateInterval()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">const DateIntervalInfo* DateIntervalFormat::getDateIntervalInfo(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">static DateIntervalFormat* DateIntervalFormat::createInstance(const UnicodeString &amp;skeleton, const Locale &amp;locale, const DateIntervalInfo &amp;dtitvinf, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">DateIntervalFormat::~DateIntervalFormat()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">static DateIntervalFormat* DateIntervalFormat::createInstance(const UnicodeString &amp;skeleton, const Locale &amp;locale, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">UBool DateIntervalFormat::operator!=(const Format &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">void DateIntervalFormat::setDateIntervalInfo(const DateIntervalInfo &amp;newIntervalPatterns, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">const DateFormat* DateIntervalFormat::getDateFormat(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">UClassID DateIntervalFormat::getDynamicClassID(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">UnicodeString&amp; DateIntervalFormat::format(Calendar &amp;fromCalendar, Calendar &amp;toCalendar, UnicodeString &amp;appendTo, FieldPosition &amp;fieldPosition, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">static DateIntervalFormat* DateIntervalFormat::createInstance(const UnicodeString &amp;skeleton, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">Format* DateIntervalFormat::clone(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">UBool DateIntervalFormat::operator==(const Format &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">static DateIntervalFormat* DateIntervalFormat::createInstance(const UnicodeString &amp;skeleton, const DateIntervalInfo &amp;dtitvinf, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">UnicodeString&amp; DateIntervalFormat::format(const Formattable &amp;obj, UnicodeString &amp;appendTo, FieldPosition &amp;fieldPosition, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">static UClassID DateIntervalFormat::getStaticClassID(void)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">UnicodeString&amp; DateIntervalFormat::format(const DateInterval *dtInterval, UnicodeString &amp;appendTo, FieldPosition &amp;fieldPosition, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvinf.h</td><td class="proto">void DateIntervalInfo::setFallbackIntervalPattern(const UnicodeString &amp;fallbackPattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvinf.h</td><td class="proto">void DateIntervalInfo::setIntervalPattern(const UnicodeString &amp;skeleton, UCalendarDateFields lrgDiffCalUnit, const UnicodeString &amp;intervalPattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvinf.h</td><td class="proto">DateIntervalInfo::DateIntervalInfo(const DateIntervalInfo &amp;)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvinf.h</td><td class="proto">DateIntervalInfo::~DateIntervalInfo()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvinf.h</td><td class="proto">DateIntervalInfo::DateIntervalInfo(const Locale &amp;locale, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvinf.h</td><td class="proto">UnicodeString&amp; DateIntervalInfo::getIntervalPattern(const UnicodeString &amp;skeleton, UCalendarDateFields field, UnicodeString &amp;result, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvinf.h</td><td class="proto">UnicodeString&amp; DateIntervalInfo::getFallbackIntervalPattern(UnicodeString &amp;result) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvinf.h</td><td class="proto">UBool DateIntervalInfo::getDefaultOrder() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvinf.h</td><td class="proto">DateIntervalInfo&amp; DateIntervalInfo::operator=(const DateIntervalInfo &amp;)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvinf.h</td><td class="proto">DateIntervalInfo* DateIntervalInfo::clone(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">msgfmt.h</td><td class="proto">Format* MessageFormat::getFormat(const UnicodeString &amp;formatName, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">msgfmt.h</td><td class="proto">StringEnumeration* MessageFormat::getFormatNames(UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">msgfmt.h</td><td class="proto">void MessageFormat::adoptFormat(const UnicodeString &amp;formatName, Format *formatToAdopt, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">msgfmt.h</td><td class="proto">void MessageFormat::setFormat(const UnicodeString &amp;formatName, const Format &amp;format, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">msgfmt.h</td><td class="proto">UBool MessageFormat::usesNamedArguments() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString&amp; PluralFormat::format(int32_t number, UnicodeString &amp;appendTo, FieldPosition &amp;pos, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">Format* PluralFormat::clone(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UClassID PluralFormat::getDynamicClassID() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const Locale &amp;locale, const UnicodeString &amp;pattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString PluralFormat::format(double number, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString PluralFormat::format(int32_t number, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString&amp; PluralFormat::format(const Formattable &amp;obj, UnicodeString &amp;appendTo, FieldPosition &amp;pos, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const PluralFormat &amp;other)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat&amp; PluralFormat::operator=(const PluralFormat &amp;other)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">UBool PluralFormat::operator==(const Format &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">void PluralFormat::setLocale(const Locale &amp;locale, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">void PluralFormat::applyPattern(const UnicodeString &amp;pattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::~PluralFormat()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const PluralRules &amp;rules, const UnicodeString &amp;pattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const Locale &amp;locale, const PluralRules &amp;rules, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">void PluralFormat::setNumberFormat(const NumberFormat *format, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString&amp; PluralFormat::toPattern(UnicodeString &amp;appendTo)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">UBool PluralFormat::operator!=(const Format &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const Locale &amp;locale, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const Locale &amp;locale, const PluralRules &amp;rules, const UnicodeString &amp;pattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">static UClassID PluralFormat::getStaticClassID(void)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const UnicodeString &amp;pattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">void PluralFormat::parseObject(const UnicodeString &amp;source, Formattable &amp;result, ParsePosition &amp;parse_pos) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString&amp; PluralFormat::format(double number, UnicodeString &amp;appendTo, FieldPosition &amp;pos, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const PluralRules &amp;rules, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">static UClassID PluralRules::getStaticClassID(void)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">UClassID PluralRules::getDynamicClassID() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">PluralRules::PluralRules(UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">UnicodeString PluralRules::select(double number) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">UBool PluralRules::operator!=(const PluralRules &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">PluralRules::~PluralRules()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">UBool PluralRules::isKeyword(const UnicodeString &amp;keyword) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">static PluralRules* PluralRules::createRules(const UnicodeString &amp;description, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">UBool PluralRules::operator==(const PluralRules &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">static PluralRules* PluralRules::createDefaultRules(UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">StringEnumeration* PluralRules::getKeywords(UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">PluralRules* PluralRules::clone() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">PluralRules::PluralRules(const PluralRules &amp;other)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">static PluralRules* PluralRules::forLocale(const Locale &amp;locale, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">UnicodeString PluralRules::select(int32_t number) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">PluralRules&amp; PluralRules::operator=(const PluralRules &amp;)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">UBool RegexMatcher::hasAnchoringBounds() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">UBool RegexMatcher::requireEnd() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">RegexMatcher&amp; RegexMatcher::useTransparentBounds(UBool b)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">void RegexMatcher::setStackLimit(int32_t limit, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">int32_t RegexMatcher::regionEnd() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">void RegexMatcher::setMatchCallback(URegexMatchCallback *callback, const void *context, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">RegexMatcher&amp; RegexMatcher::region(int32_t start, int32_t limit, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">int32_t RegexMatcher::getTimeLimit() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">int32_t RegexMatcher::getStackLimit() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">int32_t RegexMatcher::regionStart() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">void RegexMatcher::getMatchCallback(URegexMatchCallback *&amp;callback, const void *&amp;context, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">UBool RegexMatcher::hasTransparentBounds() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">RegexMatcher&amp; RegexMatcher::useAnchoringBounds(UBool b)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">UBool RegexMatcher::hitEnd() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">void RegexMatcher::setTimeLimit(int32_t limit, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">timezone.h</td><td class="proto">static UnicodeString&amp; TimeZone::getCanonicalID(const UnicodeString &amp;id, UnicodeString &amp;canonicalID, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">timezone.h</td><td class="proto">static UnicodeString&amp; TimeZone::getCanonicalID(const UnicodeString &amp;id, UnicodeString &amp;canonicalID, UBool &amp;isSystemID, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">tmutfmt.h</td><td class="proto">static UBool hashTableValueComparator(UHashTok val1, UHashTok val2)</td><td class="">Internal<br>4.0</td><td>Internal<br>
<span class="verchange"><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">ucal.h</td><td class="proto">UCalendar* ucal_clone(const UCalendar *cal, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">ucal.h</td><td class="proto">int32_t ucal_getCanonicalTimeZoneID(const UChar *id, int32_t len, UChar *result, int32_t resultCapacity, UBool *isSystemID, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">ucurr.h</td><td class="proto">int32_t ucurr_forLocaleAndDate(const char *locale, UDate date, int32_t index, UChar *buff, int32_t buffCapacity, UErrorCode *ec)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">ucurr.h</td><td class="proto">int32_t ucurr_countCurrencies(const char *locale, UDate date, UErrorCode *ec)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uloc.h</td><td class="proto">int32_t uloc_minimizeSubtags(const char *localeID, char *minimizedLocaleID, int32_t minimizedLocaleIDCapacity, UErrorCode *err)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uloc.h</td><td class="proto">ULayoutType uloc_getCharacterOrientation(const char *localeId, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uloc.h</td><td class="proto">int32_t uloc_addLikelySubtags(const char *localeID, char *maximizedLocaleID, int32_t maximizedLocaleIDCapacity, UErrorCode *err)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uloc.h</td><td class="proto">ULayoutType uloc_getLineOrientation(const char *localeId, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uniset.h</td><td class="proto">UnicodeSet&amp; UnicodeSet::removeAllStrings()</td><td class="">Internal<br>.</td><td>Draft<br>
<span class="verchange"><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uniset.h</td><td class="proto">UnicodeSet&amp; UnicodeSet::closeOver(int32_t attribute)</td><td class="">Internal<br>.</td><td>Draft<br>
<span class="verchange"><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uniset.h</td><td class="proto">UBool UnicodeSet::isBogus(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uniset.h</td><td class="proto">void UnicodeSet::setToBogus()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">UBool uregex_hasAnchoringBounds(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">UBool uregex_requireEnd(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">void uregex_getMatchCallback(const URegularExpression *regexp, URegexMatchCallback **callback, const void **context, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">UBool uregex_hasTransparentBounds(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">UBool uregex_hitEnd(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">void uregex_useAnchoringBounds(URegularExpression *regexp, UBool b, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">int32_t uregex_getStackLimit(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">int32_t uregex_regionEnd(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">void uregex_setMatchCallback(URegularExpression *regexp, URegexMatchCallback *callback, const void *context, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">void uregex_setRegion(URegularExpression *regexp, int32_t regionStart, int32_t regionLimit, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">int32_t uregex_regionStart(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">void uregex_useTransparentBounds(URegularExpression *regexp, UBool b, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">void uregex_setTimeLimit(URegularExpression *regexp, int32_t limit, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">int32_t uregex_getTimeLimit(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">void uregex_setStackLimit(URegularExpression *regexp, int32_t limit, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">UTransliterator* u_fsettransliterator(UFILE *file, UFileDirection direction, UTransliterator *adopt, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_file_write(const UChar *ustring, int32_t count, UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_fsetlocale(UFILE *file, const char *locale)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">FILE* u_fgetfile(UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">UFILE* u_fopen(const char *filename, const char *perm, const char *locale, const char *codepage)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">void u_frewind(UFILE *file)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vfprintf_u(UFILE *f, const UChar *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vsprintf(UChar *buffer, const char *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">UConverter* u_fgetConverter(UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vsprintf_u(UChar *buffer, const UChar *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vfscanf_u(UFILE *f, const UChar *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_sscanf(const UChar *buffer, const char *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_fscanf_u(UFILE *f, const UChar *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_snprintf_u(UChar *buffer, int32_t count, const UChar *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">void u_fclose(UFILE *file)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">UFILE* u_finit(FILE *f, const char *locale, const char *codepage)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">UChar u_fgetc(UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_fscanf(UFILE *f, const char *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vsscanf(const UChar *buffer, const char *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_sprintf(UChar *buffer, const char *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">UChar32 u_fputc(UChar32 uc, UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_sprintf_u(UChar *buffer, const UChar *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_fputs(const UChar *s, UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">UChar* u_fgets(UChar *s, int32_t n, UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vsnprintf_u(UChar *buffer, int32_t count, const UChar *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">UFILE* u_fstropen(UChar *stringBuf, int32_t capacity, const char *locale)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">const char* u_fgetcodepage(UFILE *file)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">UBool u_feof(UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_fprintf(UFILE *f, const char *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">const char* u_fgetlocale(UFILE *file)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vsnprintf(UChar *buffer, int32_t count, const char *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">UChar32 u_fungetc(UChar32 c, UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_fsetcodepage(const char *codepage, UFILE *file)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_fprintf_u(UFILE *f, const UChar *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vsscanf_u(const UChar *buffer, const UChar *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">void u_fflush(UFILE *file)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_snprintf(UChar *buffer, int32_t count, const char *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vfprintf(UFILE *f, const char *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_file_read(UChar *chars, int32_t count, UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">UChar32 u_fgetcx(UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_sscanf_u(const UChar *buffer, const UChar *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vfscanf(UFILE *f, const char *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
</table>
<P></P>
<a href="#_top">(jump back to top)</a>
<hr>
<a name="promoted">
<h2>Promoted to stable in 4.2</h2>
</a>
<table BORDER="1" class="genTable">
<THEAD>
<tr>
<th>File</th><th>API</th><th>4.0.1</th><th>4.2</th>
</tr>
</THEAD>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">DateInterval::DateInterval(UDate fromDate, UDate toDate)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtintrv.h</td><td class="proto">DateInterval&amp; DateInterval::operator=(const DateInterval &amp;)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">UDate DateInterval::getToDate() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtintrv.h</td><td class="proto">UBool DateInterval::operator==(const DateInterval &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">DateInterval::DateInterval(const DateInterval &amp;other)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtintrv.h</td><td class="proto">UDate DateInterval::getFromDate() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">UBool DateInterval::operator!=(const DateInterval &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtintrv.h</td><td class="proto">DateInterval* DateInterval::clone() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">UClassID DateInterval::getDynamicClassID(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtintrv.h</td><td class="proto">static UClassID DateInterval::getStaticClassID(void)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtintrv.h</td><td class="proto">DateInterval::~DateInterval()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">const DateIntervalInfo* DateIntervalFormat::getDateIntervalInfo(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">static DateIntervalFormat* DateIntervalFormat::createInstance(const UnicodeString &amp;skeleton, const Locale &amp;locale, const DateIntervalInfo &amp;dtitvinf, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">DateIntervalFormat::~DateIntervalFormat()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">static DateIntervalFormat* DateIntervalFormat::createInstance(const UnicodeString &amp;skeleton, const Locale &amp;locale, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">UBool DateIntervalFormat::operator!=(const Format &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">void DateIntervalFormat::setDateIntervalInfo(const DateIntervalInfo &amp;newIntervalPatterns, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">const DateFormat* DateIntervalFormat::getDateFormat(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">UClassID DateIntervalFormat::getDynamicClassID(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">UnicodeString&amp; DateIntervalFormat::format(Calendar &amp;fromCalendar, Calendar &amp;toCalendar, UnicodeString &amp;appendTo, FieldPosition &amp;fieldPosition, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">static DateIntervalFormat* DateIntervalFormat::createInstance(const UnicodeString &amp;skeleton, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">Format* DateIntervalFormat::clone(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">UBool DateIntervalFormat::operator==(const Format &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">static DateIntervalFormat* DateIntervalFormat::createInstance(const UnicodeString &amp;skeleton, const DateIntervalInfo &amp;dtitvinf, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">UnicodeString&amp; DateIntervalFormat::format(const Formattable &amp;obj, UnicodeString &amp;appendTo, FieldPosition &amp;fieldPosition, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvfmt.h</td><td class="proto">static UClassID DateIntervalFormat::getStaticClassID(void)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvfmt.h</td><td class="proto">UnicodeString&amp; DateIntervalFormat::format(const DateInterval *dtInterval, UnicodeString &amp;appendTo, FieldPosition &amp;fieldPosition, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvinf.h</td><td class="proto">void DateIntervalInfo::setFallbackIntervalPattern(const UnicodeString &amp;fallbackPattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvinf.h</td><td class="proto">void DateIntervalInfo::setIntervalPattern(const UnicodeString &amp;skeleton, UCalendarDateFields lrgDiffCalUnit, const UnicodeString &amp;intervalPattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvinf.h</td><td class="proto">DateIntervalInfo::DateIntervalInfo(const DateIntervalInfo &amp;)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvinf.h</td><td class="proto">DateIntervalInfo::~DateIntervalInfo()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvinf.h</td><td class="proto">DateIntervalInfo::DateIntervalInfo(const Locale &amp;locale, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvinf.h</td><td class="proto">UnicodeString&amp; DateIntervalInfo::getIntervalPattern(const UnicodeString &amp;skeleton, UCalendarDateFields field, UnicodeString &amp;result, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvinf.h</td><td class="proto">UnicodeString&amp; DateIntervalInfo::getFallbackIntervalPattern(UnicodeString &amp;result) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvinf.h</td><td class="proto">UBool DateIntervalInfo::getDefaultOrder() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">dtitvinf.h</td><td class="proto">DateIntervalInfo&amp; DateIntervalInfo::operator=(const DateIntervalInfo &amp;)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">dtitvinf.h</td><td class="proto">DateIntervalInfo* DateIntervalInfo::clone(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">msgfmt.h</td><td class="proto">Format* MessageFormat::getFormat(const UnicodeString &amp;formatName, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">msgfmt.h</td><td class="proto">StringEnumeration* MessageFormat::getFormatNames(UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">msgfmt.h</td><td class="proto">void MessageFormat::adoptFormat(const UnicodeString &amp;formatName, Format *formatToAdopt, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">msgfmt.h</td><td class="proto">void MessageFormat::setFormat(const UnicodeString &amp;formatName, const Format &amp;format, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">msgfmt.h</td><td class="proto">UBool MessageFormat::usesNamedArguments() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString&amp; PluralFormat::format(int32_t number, UnicodeString &amp;appendTo, FieldPosition &amp;pos, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">Format* PluralFormat::clone(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UClassID PluralFormat::getDynamicClassID() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const Locale &amp;locale, const UnicodeString &amp;pattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString PluralFormat::format(double number, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString PluralFormat::format(int32_t number, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString&amp; PluralFormat::format(const Formattable &amp;obj, UnicodeString &amp;appendTo, FieldPosition &amp;pos, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const PluralFormat &amp;other)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat&amp; PluralFormat::operator=(const PluralFormat &amp;other)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">UBool PluralFormat::operator==(const Format &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">void PluralFormat::setLocale(const Locale &amp;locale, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">void PluralFormat::applyPattern(const UnicodeString &amp;pattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::~PluralFormat()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const PluralRules &amp;rules, const UnicodeString &amp;pattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const Locale &amp;locale, const PluralRules &amp;rules, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">void PluralFormat::setNumberFormat(const NumberFormat *format, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString&amp; PluralFormat::toPattern(UnicodeString &amp;appendTo)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">UBool PluralFormat::operator!=(const Format &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const Locale &amp;locale, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const Locale &amp;locale, const PluralRules &amp;rules, const UnicodeString &amp;pattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">static UClassID PluralFormat::getStaticClassID(void)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const UnicodeString &amp;pattern, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">void PluralFormat::parseObject(const UnicodeString &amp;source, Formattable &amp;result, ParsePosition &amp;parse_pos) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurfmt.h</td><td class="proto">UnicodeString&amp; PluralFormat::format(double number, UnicodeString &amp;appendTo, FieldPosition &amp;pos, UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurfmt.h</td><td class="proto">PluralFormat::PluralFormat(const PluralRules &amp;rules, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">static UClassID PluralRules::getStaticClassID(void)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">UClassID PluralRules::getDynamicClassID() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">PluralRules::PluralRules(UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">UnicodeString PluralRules::select(double number) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">UBool PluralRules::operator!=(const PluralRules &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">PluralRules::~PluralRules()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">UBool PluralRules::isKeyword(const UnicodeString &amp;keyword) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">static PluralRules* PluralRules::createRules(const UnicodeString &amp;description, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">UBool PluralRules::operator==(const PluralRules &amp;other) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">static PluralRules* PluralRules::createDefaultRules(UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">StringEnumeration* PluralRules::getKeywords(UErrorCode &amp;status) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">PluralRules* PluralRules::clone() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">PluralRules::PluralRules(const PluralRules &amp;other)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">static PluralRules* PluralRules::forLocale(const Locale &amp;locale, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">plurrule.h</td><td class="proto">UnicodeString PluralRules::select(int32_t number) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">plurrule.h</td><td class="proto">PluralRules&amp; PluralRules::operator=(const PluralRules &amp;)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">UBool RegexMatcher::hasAnchoringBounds() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">UBool RegexMatcher::requireEnd() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">RegexMatcher&amp; RegexMatcher::useTransparentBounds(UBool b)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">void RegexMatcher::setStackLimit(int32_t limit, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">int32_t RegexMatcher::regionEnd() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">void RegexMatcher::setMatchCallback(URegexMatchCallback *callback, const void *context, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">RegexMatcher&amp; RegexMatcher::region(int32_t start, int32_t limit, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">int32_t RegexMatcher::getTimeLimit() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">int32_t RegexMatcher::getStackLimit() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">int32_t RegexMatcher::regionStart() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">void RegexMatcher::getMatchCallback(URegexMatchCallback *&amp;callback, const void *&amp;context, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">UBool RegexMatcher::hasTransparentBounds() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">RegexMatcher&amp; RegexMatcher::useAnchoringBounds(UBool b)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">regex.h</td><td class="proto">UBool RegexMatcher::hitEnd() const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">regex.h</td><td class="proto">void RegexMatcher::setTimeLimit(int32_t limit, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">timezone.h</td><td class="proto">static UnicodeString&amp; TimeZone::getCanonicalID(const UnicodeString &amp;id, UnicodeString &amp;canonicalID, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">timezone.h</td><td class="proto">static UnicodeString&amp; TimeZone::getCanonicalID(const UnicodeString &amp;id, UnicodeString &amp;canonicalID, UBool &amp;isSystemID, UErrorCode &amp;status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">ucal.h</td><td class="proto">UCalendar* ucal_clone(const UCalendar *cal, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">ucal.h</td><td class="proto">int32_t ucal_getCanonicalTimeZoneID(const UChar *id, int32_t len, UChar *result, int32_t resultCapacity, UBool *isSystemID, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">ucurr.h</td><td class="proto">int32_t ucurr_forLocaleAndDate(const char *locale, UDate date, int32_t index, UChar *buff, int32_t buffCapacity, UErrorCode *ec)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">ucurr.h</td><td class="proto">int32_t ucurr_countCurrencies(const char *locale, UDate date, UErrorCode *ec)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uloc.h</td><td class="proto">int32_t uloc_minimizeSubtags(const char *localeID, char *minimizedLocaleID, int32_t minimizedLocaleIDCapacity, UErrorCode *err)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uloc.h</td><td class="proto">ULayoutType uloc_getCharacterOrientation(const char *localeId, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uloc.h</td><td class="proto">int32_t uloc_addLikelySubtags(const char *localeID, char *maximizedLocaleID, int32_t maximizedLocaleIDCapacity, UErrorCode *err)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uloc.h</td><td class="proto">ULayoutType uloc_getLineOrientation(const char *localeId, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uniset.h</td><td class="proto">UBool UnicodeSet::isBogus(void) const</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uniset.h</td><td class="proto">void UnicodeSet::setToBogus()</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">unistr.h</td><td class="proto">int32_t UnicodeString::extract(int32_t start, int32_t startLength, char *target, uint32_t targetLength) const</td><td class="">None<br>
</td><td>Stable<br>
<span class=""><span>2.0</span></span></td>
</tr>
<tr class="row1">
<td class="file">unistr.h</td><td class="proto">int32_t UnicodeString::extract(int32_t start, int32_t startLength, char *target, uint32_t targetLength, const char *codepage) const</td><td class="">None<br>
</td><td>Stable<br>
<span class=""><span>2.0</span></span></td>
</tr>
<tr class="row0">
<td class="file">unistr.h</td><td class="proto">UnicodeString::UnicodeString(const char *codepageData)</td><td class="">None<br>
</td><td>Stable<br>
<span class=""><span>2.0</span></span></td>
</tr>
<tr class="row1">
<td class="file">unistr.h</td><td class="proto">UnicodeString::UnicodeString(const char *codepageData, const char *codepage)</td><td class="">None<br>
</td><td>Stable<br>
<span class=""><span>2.0</span></span></td>
</tr>
<tr class="row0">
<td class="file">unistr.h</td><td class="proto">UnicodeString::UnicodeString(const char *codepageData, int32_t dataLength, const char *codepage)</td><td class="">None<br>
</td><td>Stable<br>
<span class=""><span>2.0</span></span></td>
</tr>
<tr class="row1">
<td class="file">unistr.h</td><td class="proto">UnicodeString::UnicodeString(const char *codepageData, int32_t dataLength)</td><td class="">None<br>
</td><td>Stable<br>
<span class=""><span>2.0</span></span></td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">UBool uregex_hasAnchoringBounds(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">UBool uregex_requireEnd(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">void uregex_getMatchCallback(const URegularExpression *regexp, URegexMatchCallback **callback, const void **context, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">UBool uregex_hasTransparentBounds(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">UBool uregex_hitEnd(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">void uregex_useAnchoringBounds(URegularExpression *regexp, UBool b, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">int32_t uregex_getStackLimit(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">int32_t uregex_regionEnd(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">void uregex_setMatchCallback(URegularExpression *regexp, URegexMatchCallback *callback, const void *context, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">void uregex_setRegion(URegularExpression *regexp, int32_t regionStart, int32_t regionLimit, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">int32_t uregex_regionStart(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">void uregex_useTransparentBounds(URegularExpression *regexp, UBool b, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">void uregex_setTimeLimit(URegularExpression *regexp, int32_t limit, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">uregex.h</td><td class="proto">int32_t uregex_getTimeLimit(const URegularExpression *regexp, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row0">
<td class="file">uregex.h</td><td class="proto">void uregex_setStackLimit(URegularExpression *regexp, int32_t limit, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>4.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">UTransliterator* u_fsettransliterator(UFILE *file, UFileDirection direction, UTransliterator *adopt, UErrorCode *status)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_file_write(const UChar *ustring, int32_t count, UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_fsetlocale(UFILE *file, const char *locale)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">FILE* u_fgetfile(UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">UFILE* u_fopen(const char *filename, const char *perm, const char *locale, const char *codepage)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">void u_frewind(UFILE *file)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vfprintf_u(UFILE *f, const UChar *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vsprintf(UChar *buffer, const char *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">UConverter* u_fgetConverter(UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vsprintf_u(UChar *buffer, const UChar *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vfscanf_u(UFILE *f, const UChar *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_sscanf(const UChar *buffer, const char *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_fscanf_u(UFILE *f, const UChar *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_snprintf_u(UChar *buffer, int32_t count, const UChar *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">void u_fclose(UFILE *file)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">UFILE* u_finit(FILE *f, const char *locale, const char *codepage)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">UChar u_fgetc(UFILE *f)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td class="file">ustdio.h</td><td class="proto">int32_t u_fscanf(UFILE *f, const char *patternSpecification,...)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row1">
<td class="file">ustdio.h</td><td class="proto">int32_t u_vsscanf(const UChar *buffer, const char *patternSpecification, va_list ap)</td><td class="" colspan="
2
" align="
center
">Draft&gt;Stable<br>3.0</td>
</tr>
<tr class="row0">
<td