<?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 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="row1">
<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="row0">
<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="row1">
<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="row0">
<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="row1">
<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="row0">
<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="row1">
<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="row0">
<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="row1">
<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="row0">
<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="row1">
<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="row0">
<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="row1">
<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="row0">
<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="row1">
<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="row0">
<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="row1">
<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="row0">
<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="row1">
<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="row0">
<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="row1">
<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="row0">
<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="added">
<h2>Added 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">bytestream.h</td><td class="proto">CheckedArrayByteSink::CheckedArrayByteSink(char *outbuf, int32_t capacity)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">bytestream.h</td><td class="proto">void ByteSink::Flush()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">bytestream.h</td><td class="proto">ByteSink::~ByteSink()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">bytestream.h</td><td class="proto">char* ByteSink::GetAppendBuffer(int32_t min_capacity, int32_t desired_capacity_hint, char *scratch, int32_t scratch_capacity, int32_t *result_capacity)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">bytestream.h</td><td class="proto">void CheckedArrayByteSink::Append(const char *bytes, int32_t n)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">bytestream.h</td><td class="proto">char* CheckedArrayByteSink::GetAppendBuffer(int32_t min_capacity, int32_t desired_capacity_hint, char *scratch, int32_t scratch_capacity, int32_t *result_capacity)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">bytestream.h</td><td class="proto">ByteSink::ByteSink()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">bytestream.h</td><td class="proto">UBool CheckedArrayByteSink::Overflowed() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">bytestream.h</td><td class="proto">int32_t CheckedArrayByteSink::NumberOfBytesWritten() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">bytestream.h</td><td class="proto">void ByteSink::Append(const char *bytes, int32_t n)=0</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">calendar.h</td><td class="proto">static StringEnumeration* Calendar::getKeywordValuesForLocale(const char *key, const Locale &amp;locale, UBool commonlyUsed, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">coll.h</td><td class="proto">UCollationResult Collator::compare(UCharIterator &amp;sIter, UCharIterator &amp;tIter, UErrorCode &amp;status) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">coll.h</td><td class="proto">UCollationResult Collator::compareUTF8(const StringPiece &amp;source, const StringPiece &amp;target, UErrorCode &amp;status) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">coll.h</td><td class="proto">static StringEnumeration* Collator::getKeywordValuesForLocale(const char *keyword, const Locale &amp;locale, UBool commonlyUsed, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">currpinf.h</td><td class="proto">static UClassID CurrencyPluralInfo::getStaticClassID()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">currpinf.h</td><td class="proto">CurrencyPluralInfo* CurrencyPluralInfo::clone() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">currpinf.h</td><td class="proto">void CurrencyPluralInfo::setCurrencyPluralPattern(const UnicodeString &amp;pluralCount, const UnicodeString &amp;pattern, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">currpinf.h</td><td class="proto">void CurrencyPluralInfo::setPluralRules(const UnicodeString &amp;ruleDescription, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">currpinf.h</td><td class="proto">UnicodeString&amp; CurrencyPluralInfo::getCurrencyPluralPattern(const UnicodeString &amp;pluralCount, UnicodeString &amp;result) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">currpinf.h</td><td class="proto">const PluralRules* CurrencyPluralInfo::getPluralRules() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">currpinf.h</td><td class="proto">void CurrencyPluralInfo::setLocale(const Locale &amp;loc, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">currpinf.h</td><td class="proto">CurrencyPluralInfo::CurrencyPluralInfo(const CurrencyPluralInfo &amp;info)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">currpinf.h</td><td class="proto">UClassID CurrencyPluralInfo::getDynamicClassID() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">currpinf.h</td><td class="proto">CurrencyPluralInfo::CurrencyPluralInfo(UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">currpinf.h</td><td class="proto">CurrencyPluralInfo::~CurrencyPluralInfo()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">currpinf.h</td><td class="proto">const Locale&amp; CurrencyPluralInfo::getLocale() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">currpinf.h</td><td class="proto">CurrencyPluralInfo::CurrencyPluralInfo(const Locale &amp;locale, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">currpinf.h</td><td class="proto">CurrencyPluralInfo&amp; CurrencyPluralInfo::operator=(const CurrencyPluralInfo &amp;info)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">currpinf.h</td><td class="proto">UBool CurrencyPluralInfo::operator!=(const CurrencyPluralInfo &amp;info) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">currpinf.h</td><td class="proto">static UBool ValueComparator(UHashTok val1, UHashTok val2)</td><td class="">None<br>
</td><td>Internal<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">currpinf.h</td><td class="proto">UBool CurrencyPluralInfo::operator==(const CurrencyPluralInfo &amp;info) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">dcfmtsym.h</td><td class="proto">const UnicodeString&amp; DecimalFormatSymbols::getPatternForCurrencySpacing(ECurrencySpacing type, UBool beforeCurrency, UErrorCode &amp;status) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">dcfmtsym.h</td><td class="proto">void DecimalFormatSymbols::setPatternForCurrencySpacing(ECurrencySpacing type, UBool beforeCurrency, const UnicodeString &amp;pattern)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">decimfmt.h</td><td class="proto">void DecimalFormat::setCurrencyPluralInfo(const CurrencyPluralInfo &amp;info)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">decimfmt.h</td><td class="proto">static UBool AffixValueComparator(UHashTok val1, UHashTok val2)</td><td class="">None<br>
</td><td>Internal<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">decimfmt.h</td><td class="proto">const CurrencyPluralInfo* DecimalFormat::getCurrencyPluralInfo(void) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">decimfmt.h</td><td class="proto">static UBool AffixPatternValueComparator(UHashTok val1, UHashTok val2)</td><td class="">None<br>
</td><td>Internal<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">decimfmt.h</td><td class="proto">void DecimalFormat::adoptCurrencyPluralInfo(CurrencyPluralInfo *toAdopt)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">decimfmt.h</td><td class="proto">DecimalFormat::DecimalFormat(const UnicodeString &amp;pattern, DecimalFormatSymbols *symbolsToAdopt, NumberFormat::EStyles style, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Internal<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">dtfmtsym.h</td><td class="proto">const UnicodeString* DateFormatSymbols::getNarrowEras(int32_t &amp;count) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">dtfmtsym.h</td><td class="proto">void DateFormatSymbols::setNarrowEras(const UnicodeString *narrowEras, int32_t count)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">dtitvinf.h</td><td class="proto">static UBool hashTableValueComparator(UHashTok val1, UHashTok val2)</td><td class="">None<br>
</td><td>Internal<br>
<span class=""><span>4.0</span></span></td>
</tr>
<tr class="row1">
<td class="file">errorcode.h</td><td class="proto">void ErrorCode::set(UErrorCode value)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">errorcode.h</td><td class="proto">UBool ErrorCode::isSuccess() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">errorcode.h</td><td class="proto">UErrorCode ErrorCode::reset()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">errorcode.h</td><td class="proto">void ErrorCode::check() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">errorcode.h</td><td class="proto">ErrorCode::operator UErrorCode &amp;()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">errorcode.h</td><td class="proto">ErrorCode::~ErrorCode()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">errorcode.h</td><td class="proto">UBool ErrorCode::isFailure() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">errorcode.h</td><td class="proto">ErrorCode::ErrorCode()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">errorcode.h</td><td class="proto">ErrorCode::operator UErrorCode *()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">errorcode.h</td><td class="proto">UErrorCode ErrorCode::get() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">LEGlyphStorage.h</td><td class="proto">void LEGlyphStorage::moveGlyph(le_int32 fromPosition, le_int32 toPosition, le_uint32 marker)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">LEGlyphStorage.h</td><td class="proto">LEGlyphID* LEGlyphStorage::insertGlyphs(le_int32 atIndex, le_int32 insertCount, LEErrorCode &amp;success)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">msgfmt.h</td><td class="proto">int32_t MessageFormat::getArgTypeCount() const</td><td class="">None<br>
</td><td>Internal<br>
<span class=""><span>.</span></span></td>
</tr>
<tr class="row0">
<td class="file">numfmt.h</td><td class="proto">static NumberFormat* NumberFormat::createInstance(const Locale &amp;desiredLocale, EStyles choice, UErrorCode &amp;success)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">numsys.h</td><td class="proto">int32_t NumberingSystem::getRadix()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">numsys.h</td><td class="proto">NumberingSystem::NumberingSystem(const NumberingSystem &amp;other)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">numsys.h</td><td class="proto">static NumberingSystem* NumberingSystem::createInstance(UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">numsys.h</td><td class="proto">static StringEnumeration* NumberingSystem::getAvailableNames(UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">numsys.h</td><td class="proto">static NumberingSystem* NumberingSystem::createInstance(const Locale &amp;inLocale, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">numsys.h</td><td class="proto">NumberingSystem::NumberingSystem()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">numsys.h</td><td class="proto">UBool NumberingSystem::isAlgorithmic() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">numsys.h</td><td class="proto">static NumberingSystem* NumberingSystem::createInstanceByName(const char *name, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">numsys.h</td><td class="proto">UnicodeString NumberingSystem::getDescription()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">numsys.h</td><td class="proto">static UClassID NumberingSystem::getStaticClassID(void)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">numsys.h</td><td class="proto">NumberingSystem::~NumberingSystem()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">numsys.h</td><td class="proto">static NumberingSystem* NumberingSystem::createInstance(int32_t radix, UBool isAlgorithmic, const UnicodeString &amp;description, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">numsys.h</td><td class="proto">UClassID NumberingSystem::getDynamicClassID() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">smpdtfmt.h</td><td class="proto">SimpleDateFormat::SimpleDateFormat(const UnicodeString &amp;pattern, const UnicodeString &amp;override, const Locale &amp;locale, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">smpdtfmt.h</td><td class="proto">SimpleDateFormat::SimpleDateFormat(const UnicodeString &amp;pattern, const UnicodeString &amp;override, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">stringpiece.h</td><td class="proto">void StringPiece::remove_suffix(int32_t n)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">stringpiece.h</td><td class="proto">UBool StringPiece::empty() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">stringpiece.h</td><td class="proto">void StringPiece::remove_prefix(int32_t n)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">stringpiece.h</td><td class="proto">void StringPiece::clear()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">stringpiece.h</td><td class="proto">int32_t StringPiece::length() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">stringpiece.h</td><td class="proto">StringPiece::StringPiece(const char *offset, int32_t len)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">stringpiece.h</td><td class="proto">const char* StringPiece::data() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">stringpiece.h</td><td class="proto">int32_t StringPiece::size() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">stringpiece.h</td><td class="proto">StringPiece StringPiece::substr(int32_t pos, int32_t len=npos) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">stringpiece.h</td><td class="proto">StringPiece::StringPiece(const StringPiece &amp;x, int32_t pos, int32_t len)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">stringpiece.h</td><td class="proto">StringPiece::StringPiece()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">stringpiece.h</td><td class="proto">StringPiece::StringPiece(const char *str)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">stringpiece.h</td><td class="proto">StringPiece::StringPiece(const StringPiece &amp;x, int32_t pos)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tblcoll.h</td><td class="proto">UCollationResult RuleBasedCollator::compare(UCharIterator &amp;sIter, UCharIterator &amp;tIter, UErrorCode &amp;status) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmunit.h</td><td class="proto">UObject* TimeUnit::clone() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmunit.h</td><td class="proto">UTimeUnitFields TimeUnit::getTimeUnitField() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmunit.h</td><td class="proto">UClassID TimeUnit::getDynamicClassID() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmunit.h</td><td class="proto">TimeUnit::TimeUnit(const TimeUnit &amp;other)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmunit.h</td><td class="proto">UBool TimeUnit::operator==(const UObject &amp;other) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmunit.h</td><td class="proto">TimeUnit::~TimeUnit()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmunit.h</td><td class="proto">UBool TimeUnit::operator!=(const UObject &amp;other) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmunit.h</td><td class="proto">TimeUnit&amp; TimeUnit::operator=(const TimeUnit &amp;other)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmunit.h</td><td class="proto">static TimeUnit* TimeUnit::createInstance(UTimeUnitFields timeUnitField, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmunit.h</td><td class="proto">static UClassID TimeUnit::getStaticClassID()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutamt.h</td><td class="proto">TimeUnit::UTimeUnitFields TimeUnitAmount::getTimeUnitField() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutamt.h</td><td class="proto">UBool TimeUnitAmount::operator==(const UObject &amp;other) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutamt.h</td><td class="proto">UObject* TimeUnitAmount::clone() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutamt.h</td><td class="proto">UBool TimeUnitAmount::operator!=(const UObject &amp;other) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutamt.h</td><td class="proto">TimeUnitAmount&amp; TimeUnitAmount::operator=(const TimeUnitAmount &amp;other)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutamt.h</td><td class="proto">TimeUnitAmount::TimeUnitAmount(const TimeUnitAmount &amp;other)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutamt.h</td><td class="proto">TimeUnitAmount::TimeUnitAmount(const Formattable &amp;number, TimeUnit::UTimeUnitFields timeUnitField, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutamt.h</td><td class="proto">TimeUnitAmount::~TimeUnitAmount()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutamt.h</td><td class="proto">const TimeUnit&amp; TimeUnitAmount::getTimeUnit() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutamt.h</td><td class="proto">static UClassID TimeUnitAmount::getStaticClassID(void)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutamt.h</td><td class="proto">TimeUnitAmount::TimeUnitAmount(double amount, TimeUnit::UTimeUnitFields timeUnitField, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutamt.h</td><td class="proto">UClassID TimeUnitAmount::getDynamicClassID(void) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutfmt.h</td><td class="proto">TimeUnitFormat::~TimeUnitFormat()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutfmt.h</td><td class="proto">TimeUnitFormat::TimeUnitFormat(UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutfmt.h</td><td class="proto">UClassID TimeUnitFormat::getDynamicClassID(void) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutfmt.h</td><td class="proto">TimeUnitFormat::TimeUnitFormat(const Locale &amp;locale, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutfmt.h</td><td class="proto">UnicodeString&amp; TimeUnitFormat::format(const Formattable &amp;obj, UnicodeString &amp;toAppendTo, FieldPosition &amp;pos, UErrorCode &amp;status) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutfmt.h</td><td class="proto">UBool TimeUnitFormat::operator==(const Format &amp;other) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutfmt.h</td><td class="proto">Format* TimeUnitFormat::clone(void) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutfmt.h</td><td class="proto">void TimeUnitFormat::setLocale(const Locale &amp;locale, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutfmt.h</td><td class="proto">void TimeUnitFormat::parseObject(const UnicodeString &amp;source, Formattable &amp;result, ParsePosition &amp;pos) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutfmt.h</td><td class="proto">TimeUnitFormat::TimeUnitFormat(const TimeUnitFormat &amp;)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutfmt.h</td><td class="proto">TimeUnitFormat::TimeUnitFormat(const Locale &amp;locale, EStyle style, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutfmt.h</td><td class="proto">static UClassID TimeUnitFormat::getStaticClassID(void)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutfmt.h</td><td class="proto">TimeUnitFormat&amp; TimeUnitFormat::operator=(const TimeUnitFormat &amp;other)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">tmutfmt.h</td><td class="proto">void TimeUnitFormat::setNumberFormat(const NumberFormat &amp;format, UErrorCode &amp;status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">tmutfmt.h</td><td class="proto">UBool TimeUnitFormat::operator!=(const Format &amp;other) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">ucal.h</td><td class="proto">const char* ucal_getType(const UCalendar *cal, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">ucal.h</td><td class="proto">UEnumeration* ucal_getKeywordValuesForLocale(const char *key, const char *locale, UBool commonlyUsed, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">ucnvsel.h</td><td class="proto">void ucnvsel_close(UConverterSelector *sel)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">ucnvsel.h</td><td class="proto">UConverterSelector* ucnvsel_open(const char *const *converterList, int32_t converterListSize, const USet *excludedCodePoints, const UConverterUnicodeSet whichSet, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">ucnvsel.h</td><td class="proto">int32_t ucnvsel_serialize(const UConverterSelector *sel, void *buffer, int32_t bufferCapacity, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">ucnvsel.h</td><td class="proto">UEnumeration* ucnvsel_selectForString(const UConverterSelector *sel, const UChar *s, int32_t length, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">ucnvsel.h</td><td class="proto">UEnumeration* ucnvsel_selectForUTF8(const UConverterSelector *sel, const char *s, int32_t length, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">ucnvsel.h</td><td class="proto">UConverterSelector* ucnvsel_openFromSerialized(const void *buffer, int32_t length, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">ucol.h</td><td class="proto">UEnumeration* ucol_getKeywordValuesForLocale(const char *key, const char *locale, UBool commonlyUsed, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">ucurr.h</td><td class="proto">UEnumeration* ucurr_getKeywordValuesForLocale(const char *key, const char *locale, UBool commonlyUsed, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">ucurr.h</td><td class="proto">const UChar* ucurr_getPluralName(const UChar *currency, const char *locale, UBool *isChoiceFormat, const char *pluralCount, int32_t *len, UErrorCode *ec)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uloc.h</td><td class="proto">int32_t uloc_forLanguageTag(const char *langtag, char *localeID, int32_t localeIDCapacity, int32_t *parsedLength, UErrorCode *err)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uloc.h</td><td class="proto">int32_t uloc_toLanguageTag(const char *localeID, char *langtag, int32_t langtagCapacity, UBool strict, UErrorCode *err)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">ulocdata.h</td><td class="proto">int32_t ulocdata_getLocaleDisplayPattern(ULocaleData *uld, UChar *pattern, int32_t patternCapacity, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">ulocdata.h</td><td class="proto">void ulocdata_getCLDRVersion(UVersionInfo versionArray, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">ulocdata.h</td><td class="proto">int32_t ulocdata_getLocaleSeparator(ULocaleData *uld, UChar *separator, int32_t separatorCapacity, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uniset.h</td><td class="proto">USet * UnicodeSet::toUSet()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uniset.h</td><td class="proto">const UnicodeSet * UnicodeSet::fromUSet(const USet *uset)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uniset.h</td><td class="proto">UnicodeSet * UnicodeSet::fromUSet(USet *uset)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uniset.h</td><td class="proto">const USet * UnicodeSet::toUSet() const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</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</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">static UnicodeString UnicodeString::fromUTF32(const UChar32 *utf32, int32_t length)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</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">void UnicodeString::toUTF8(ByteSink &amp;sink) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">unistr.h</td><td class="proto">static UnicodeString UnicodeString::fromUTF8(const StringPiece &amp;utf8)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</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">unistr.h</td><td class="proto">int32_t UnicodeString::toUTF32(UChar32 *utf32, int32_t capacity, UErrorCode &amp;errorCode) const</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uset.h</td><td class="proto">USet* uset_openEmpty()</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uset.h</td><td class="proto">void uset_closeOver(USet *set, int32_t attributes)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uset.h</td><td class="proto">void uset_removeAllStrings(USet *set)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uspoof.h</td><td class="proto">int32_t uspoof_getSkeletonUTF8(const USpoofChecker *sc, uint32_t type, const char *s, int32_t length, char *dest, int32_t destCapacity, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uspoof.h</td><td class="proto">int32_t uspoof_areConfusableUTF8(const USpoofChecker *sc, const char *s1, int32_t length1, const char *s2, int32_t length2, int32_t *position, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uspoof.h</td><td class="proto">const USet* uspoof_getAllowedChars(const USpoofChecker *sc, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uspoof.h</td><td class="proto">USpoofChecker* uspoof_clone(const USpoofChecker *sc, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uspoof.h</td><td class="proto">int32_t uspoof_getSkeleton(const USpoofChecker *sc, uint32_t type, const UChar *s, int32_t length, UChar *dest, int32_t destCapacity, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uspoof.h</td><td class="proto">void uspoof_setAllowedLocales(USpoofChecker *sc, const char *localesList, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uspoof.h</td><td class="proto">const char* uspoof_getAllowedLocales(USpoofChecker *sc, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uspoof.h</td><td class="proto">USpoofChecker* uspoof_openFromSource(const char *confusables, int32_t confusablesLen, const char *confusablesWholeScript, int32_t confusablesWholeScriptLen, int32_t *errType, UParseError *pe, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uspoof.h</td><td class="proto">int32_t uspoof_areConfusable(const USpoofChecker *sc, const UChar *s1, int32_t length1, const UChar *s2, int32_t length2, int32_t *position, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uspoof.h</td><td class="proto">int32_t uspoof_getChecks(const USpoofChecker *sc, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uspoof.h</td><td class="proto">void uspoof_setChecks(USpoofChecker *sc, int32_t checks, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uspoof.h</td><td class="proto">USpoofChecker* uspoof_open(UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uspoof.h</td><td class="proto">void uspoof_close(USpoofChecker *sc)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uspoof.h</td><td class="proto">int32_t uspoof_serialize(USpoofChecker *sc, void *data, int32_t capacity, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uspoof.h</td><td class="proto">void uspoof_setAllowedChars(USpoofChecker *sc, const USet *chars, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uspoof.h</td><td class="proto">int32_t uspoof_check(const USpoofChecker *sc, const UChar *text, int32_t length, int32_t *position, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uspoof.h</td><td class="proto">int32_t uspoof_checkUTF8(const USpoofChecker *sc, const char *text, int32_t length, int32_t *position, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uspoof.h</td><td class="proto">USpoofChecker* uspoof_openFromSerialized(const void *data, int32_t length, int32_t *pActualLength, UErrorCode *pErrorCode)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">usprep.h</td><td class="proto">UStringPrepProfile* usprep_openByType(UStringPrepProfileType type, UErrorCode *status)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">ustring.h</td><td class="proto">UChar* u_strFromUTF32WithSub(UChar *dest, int32_t destCapacity, int32_t *pDestLength, const UChar32 *src, int32_t srcLength, UChar32 subchar, int32_t *pNumSubstitutions, UErrorCode *pErrorCode)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">ustring.h</td><td class="proto">UChar32* u_strToUTF32WithSub(UChar32 *dest, int32_t destCapacity, int32_t *pDestLength, const UChar *src, int32_t srcLength, UChar32 subchar, int32_t *pNumSubstitutions, UErrorCode *pErrorCode)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row1">
<td class="file">uversion.h</td><td class="proto">int32_t u_compareVersions(UVersionInfo v1, UVersionInfo v2)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
<tr class="row0">
<td class="file">uversion.h</td><td class="proto">void u_versionFromUString(UVersionInfo versionArray, const UChar *versionString)</td><td class="">None<br>
</td><td>Draft<br>
<span class=""><span>4.2</span></span></td>
</tr>
</table>
<P></P>
<a href="#_top">(jump back to top)</a>
<hr>
<a name="other">
<h2>Other existing drafts in 4.2</h2>
</a>
<div class="other">
<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>
</div>
<P></P>
<a href="#_top">(jump back to top)</a>
<hr>
<p>
<i><font size="-1">Contents generated by StableAPI tool on Wed Mar 18 22:04:30 PDT 2009<br>Copyright (C) 2009, International Business Machines Corporation, All Rights Reserved.</font></i>
</p>
</body>
</html>
