Sophie

Sophie

distrib > Mageia > 6 > armv5tl > media > core-release > by-pkgid > 3a4e91bde08970529a0aa07935652fe8 > files > 186

icu-doc-58.2-3.mga6.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>ICU 58.2: icu::MessageFormat Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">ICU 58.2
   &#160;<span id="projectnumber">58.2</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceicu.html">icu</a></li><li class="navelem"><a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#friends">Friends</a>  </div>
  <div class="headertitle">
<div class="title">icu::MessageFormat Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="msgfmt_8h_source.html">msgfmt.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for icu::MessageFormat:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classicu_1_1MessageFormat.png" usemap="#icu::MessageFormat_map" alt=""/>
  <map id="icu::MessageFormat_map" name="icu::MessageFormat_map">
<area href="classicu_1_1Format.html" title="Base class for all formats. " alt="icu::Format" shape="rect" coords="0,112,125,136"/>
<area href="classicu_1_1UObject.html" title="UObject is the common ICU &quot;boilerplate&quot; class. " alt="icu::UObject" shape="rect" coords="0,56,125,80"/>
<area href="classicu_1_1UMemory.html" title="UMemory is the common ICU base class. " alt="icu::UMemory" shape="rect" coords="0,0,125,24"/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a746caee2c4690b86603b875eefdd7ac1"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a746caee2c4690b86603b875eefdd7ac1">EFormatNumber</a> { <a class="el" href="classicu_1_1MessageFormat.html#a746caee2c4690b86603b875eefdd7ac1a5645953ab29b9297945b05223601a456">kMaxFormat</a> = 10
 }<tr class="memdesc:a746caee2c4690b86603b875eefdd7ac1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enum type for kMaxFormat.  <a href="classicu_1_1MessageFormat.html#a746caee2c4690b86603b875eefdd7ac1">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a746caee2c4690b86603b875eefdd7ac1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a48d1dcf631420d444632a18fbec549ea"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a48d1dcf631420d444632a18fbec549ea">MessageFormat</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;pattern, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:a48d1dcf631420d444632a18fbec549ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a new <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> using the given pattern and the default locale.  <a href="#a48d1dcf631420d444632a18fbec549ea">More...</a><br /></td></tr>
<tr class="separator:a48d1dcf631420d444632a18fbec549ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade1d7ec2841bee8b9f534633417868f2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#ade1d7ec2841bee8b9f534633417868f2">MessageFormat</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;pattern, const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;newLocale, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:ade1d7ec2841bee8b9f534633417868f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a new <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> using the given pattern and locale.  <a href="#ade1d7ec2841bee8b9f534633417868f2">More...</a><br /></td></tr>
<tr class="separator:ade1d7ec2841bee8b9f534633417868f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ee2e09d6b34ace52e58d6a2c9db99ed"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a4ee2e09d6b34ace52e58d6a2c9db99ed">MessageFormat</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;pattern, const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;newLocale, <a class="el" href="structUParseError.html">UParseError</a> &amp;parseError, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:a4ee2e09d6b34ace52e58d6a2c9db99ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a new <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> using the given pattern and locale.  <a href="#a4ee2e09d6b34ace52e58d6a2c9db99ed">More...</a><br /></td></tr>
<tr class="separator:a4ee2e09d6b34ace52e58d6a2c9db99ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71b1acd983209f1b9756d4d365d2a21f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a71b1acd983209f1b9756d4d365d2a21f">MessageFormat</a> (const <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> &amp;)</td></tr>
<tr class="memdesc:a71b1acd983209f1b9756d4d365d2a21f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a new <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> from an existing one.  <a href="#a71b1acd983209f1b9756d4d365d2a21f">More...</a><br /></td></tr>
<tr class="separator:a71b1acd983209f1b9756d4d365d2a21f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d7fbf952089eb83eb61623564b83a74"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a8d7fbf952089eb83eb61623564b83a74">operator=</a> (const <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> &amp;)</td></tr>
<tr class="memdesc:a8d7fbf952089eb83eb61623564b83a74"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assignment operator.  <a href="#a8d7fbf952089eb83eb61623564b83a74">More...</a><br /></td></tr>
<tr class="separator:a8d7fbf952089eb83eb61623564b83a74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d229f822f9889aeb02c7c2b77470676"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a7d229f822f9889aeb02c7c2b77470676">~MessageFormat</a> ()</td></tr>
<tr class="memdesc:a7d229f822f9889aeb02c7c2b77470676"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#a7d229f822f9889aeb02c7c2b77470676">More...</a><br /></td></tr>
<tr class="separator:a7d229f822f9889aeb02c7c2b77470676"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad17094511b3f742cfa7ed8513c38e4a3"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classicu_1_1Format.html">Format</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#ad17094511b3f742cfa7ed8513c38e4a3">clone</a> (void) const </td></tr>
<tr class="memdesc:ad17094511b3f742cfa7ed8513c38e4a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clones this <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> object polymorphically.  <a href="#ad17094511b3f742cfa7ed8513c38e4a3">More...</a><br /></td></tr>
<tr class="separator:ad17094511b3f742cfa7ed8513c38e4a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b2aa5a7cb29b975fc5b178cd72e6619"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a4b2aa5a7cb29b975fc5b178cd72e6619">operator==</a> (const <a class="el" href="classicu_1_1Format.html">Format</a> &amp;other) const </td></tr>
<tr class="memdesc:a4b2aa5a7cb29b975fc5b178cd72e6619"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the given <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects are semantically equal.  <a href="#a4b2aa5a7cb29b975fc5b178cd72e6619">More...</a><br /></td></tr>
<tr class="separator:a4b2aa5a7cb29b975fc5b178cd72e6619"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79c2fab22fbd865890002fbb254be3a8"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a79c2fab22fbd865890002fbb254be3a8">setLocale</a> (const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;theLocale)</td></tr>
<tr class="memdesc:a79c2fab22fbd865890002fbb254be3a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the locale to be used for creating argument <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects.  <a href="#a79c2fab22fbd865890002fbb254be3a8">More...</a><br /></td></tr>
<tr class="separator:a79c2fab22fbd865890002fbb254be3a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad67c1dbceff53859d415d13cb56832cd"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#ad67c1dbceff53859d415d13cb56832cd">getLocale</a> (void) const </td></tr>
<tr class="memdesc:ad67c1dbceff53859d415d13cb56832cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the locale used for creating argument <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects.  <a href="#ad67c1dbceff53859d415d13cb56832cd">More...</a><br /></td></tr>
<tr class="separator:ad67c1dbceff53859d415d13cb56832cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd0150beeea80ff8baecfa4923d16062"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#afd0150beeea80ff8baecfa4923d16062">applyPattern</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;pattern, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:afd0150beeea80ff8baecfa4923d16062"><td class="mdescLeft">&#160;</td><td class="mdescRight">Applies the given pattern string to this message format.  <a href="#afd0150beeea80ff8baecfa4923d16062">More...</a><br /></td></tr>
<tr class="separator:afd0150beeea80ff8baecfa4923d16062"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea2e46c754d11a4b43b8dd9b28a48641"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#aea2e46c754d11a4b43b8dd9b28a48641">applyPattern</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;pattern, <a class="el" href="structUParseError.html">UParseError</a> &amp;parseError, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:aea2e46c754d11a4b43b8dd9b28a48641"><td class="mdescLeft">&#160;</td><td class="mdescRight">Applies the given pattern string to this message format.  <a href="#aea2e46c754d11a4b43b8dd9b28a48641">More...</a><br /></td></tr>
<tr class="separator:aea2e46c754d11a4b43b8dd9b28a48641"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a126cd4c5bf45eff292c1f8c1e838295c"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a126cd4c5bf45eff292c1f8c1e838295c">applyPattern</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;pattern, <a class="el" href="messagepattern_8h.html#af6e0757e0eb81c980b01ee5d68a9978b">UMessagePatternApostropheMode</a> aposMode, <a class="el" href="structUParseError.html">UParseError</a> *parseError, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:a126cd4c5bf45eff292c1f8c1e838295c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the UMessagePatternApostropheMode and the pattern used by this message format.  <a href="#a126cd4c5bf45eff292c1f8c1e838295c">More...</a><br /></td></tr>
<tr class="separator:a126cd4c5bf45eff292c1f8c1e838295c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a06f22064ff3cfa645a5077ad1b217132"><td class="memItemLeft" align="right" valign="top"><a class="el" href="messagepattern_8h.html#af6e0757e0eb81c980b01ee5d68a9978b">UMessagePatternApostropheMode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a06f22064ff3cfa645a5077ad1b217132">getApostropheMode</a> () const </td></tr>
<tr class="separator:a06f22064ff3cfa645a5077ad1b217132"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abca0a90e9e55303c34e3a0db455f71c6"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#abca0a90e9e55303c34e3a0db455f71c6">toPattern</a> (<a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;appendTo) const </td></tr>
<tr class="memdesc:abca0a90e9e55303c34e3a0db455f71c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pattern that can be used to recreate this object.  <a href="#abca0a90e9e55303c34e3a0db455f71c6">More...</a><br /></td></tr>
<tr class="separator:abca0a90e9e55303c34e3a0db455f71c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af976a0cdbcc895b2b1070fbaf0a1d87d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#af976a0cdbcc895b2b1070fbaf0a1d87d">adoptFormats</a> (<a class="el" href="classicu_1_1Format.html">Format</a> **formatsToAdopt, int32_t count)</td></tr>
<tr class="memdesc:af976a0cdbcc895b2b1070fbaf0a1d87d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets subformats.  <a href="#af976a0cdbcc895b2b1070fbaf0a1d87d">More...</a><br /></td></tr>
<tr class="separator:af976a0cdbcc895b2b1070fbaf0a1d87d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55f6290d5957ae918422ec69bc998be2"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a55f6290d5957ae918422ec69bc998be2">setFormats</a> (const <a class="el" href="classicu_1_1Format.html">Format</a> **newFormats, int32_t cnt)</td></tr>
<tr class="memdesc:a55f6290d5957ae918422ec69bc998be2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets subformats.  <a href="#a55f6290d5957ae918422ec69bc998be2">More...</a><br /></td></tr>
<tr class="separator:a55f6290d5957ae918422ec69bc998be2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac668f3151bc1f2ffe520bca31fba54dc"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#ac668f3151bc1f2ffe520bca31fba54dc">adoptFormat</a> (int32_t formatNumber, <a class="el" href="classicu_1_1Format.html">Format</a> *formatToAdopt)</td></tr>
<tr class="memdesc:ac668f3151bc1f2ffe520bca31fba54dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets one subformat.  <a href="#ac668f3151bc1f2ffe520bca31fba54dc">More...</a><br /></td></tr>
<tr class="separator:ac668f3151bc1f2ffe520bca31fba54dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58b8e85067b73e4784eaaa5bd56a13ae"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a58b8e85067b73e4784eaaa5bd56a13ae">setFormat</a> (int32_t formatNumber, const <a class="el" href="classicu_1_1Format.html">Format</a> &amp;<a class="el" href="classicu_1_1MessageFormat.html#ac15c5f9f3f9ce31df122f82419f84fa3">format</a>)</td></tr>
<tr class="memdesc:a58b8e85067b73e4784eaaa5bd56a13ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets one subformat.  <a href="#a58b8e85067b73e4784eaaa5bd56a13ae">More...</a><br /></td></tr>
<tr class="separator:a58b8e85067b73e4784eaaa5bd56a13ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69ecc0f1e97fbeabda70c37e2b47c191"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classicu_1_1StringEnumeration.html">StringEnumeration</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a69ecc0f1e97fbeabda70c37e2b47c191">getFormatNames</a> (<a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:a69ecc0f1e97fbeabda70c37e2b47c191"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets format names.  <a href="#a69ecc0f1e97fbeabda70c37e2b47c191">More...</a><br /></td></tr>
<tr class="separator:a69ecc0f1e97fbeabda70c37e2b47c191"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a227d9b60771076092f0acb979c51c8bd"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classicu_1_1Format.html">Format</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a227d9b60771076092f0acb979c51c8bd">getFormat</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;formatName, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:a227d9b60771076092f0acb979c51c8bd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets subformat pointer for given format name.  <a href="#a227d9b60771076092f0acb979c51c8bd">More...</a><br /></td></tr>
<tr class="separator:a227d9b60771076092f0acb979c51c8bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93cc2e808ab0c128eaae5585384136e4"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a93cc2e808ab0c128eaae5585384136e4">setFormat</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;formatName, const <a class="el" href="classicu_1_1Format.html">Format</a> &amp;<a class="el" href="classicu_1_1MessageFormat.html#ac15c5f9f3f9ce31df122f82419f84fa3">format</a>, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:a93cc2e808ab0c128eaae5585384136e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets one subformat for given format name.  <a href="#a93cc2e808ab0c128eaae5585384136e4">More...</a><br /></td></tr>
<tr class="separator:a93cc2e808ab0c128eaae5585384136e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a340ad4cbe4127f11d70654b14759e701"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a340ad4cbe4127f11d70654b14759e701">adoptFormat</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;formatName, <a class="el" href="classicu_1_1Format.html">Format</a> *formatToAdopt, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:a340ad4cbe4127f11d70654b14759e701"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets one subformat for given format name.  <a href="#a340ad4cbe4127f11d70654b14759e701">More...</a><br /></td></tr>
<tr class="separator:a340ad4cbe4127f11d70654b14759e701"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd4d0599d3e48e51697929426fa53c93"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classicu_1_1Format.html">Format</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#abd4d0599d3e48e51697929426fa53c93">getFormats</a> (int32_t &amp;count) const </td></tr>
<tr class="memdesc:abd4d0599d3e48e51697929426fa53c93"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets an array of subformats of this object.  <a href="#abd4d0599d3e48e51697929426fa53c93">More...</a><br /></td></tr>
<tr class="separator:abd4d0599d3e48e51697929426fa53c93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac15c5f9f3f9ce31df122f82419f84fa3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#ac15c5f9f3f9ce31df122f82419f84fa3">format</a> (const <a class="el" href="classicu_1_1Formattable.html">Formattable</a> *source, int32_t count, <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;appendTo, <a class="el" href="classicu_1_1FieldPosition.html">FieldPosition</a> &amp;ignore, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const </td></tr>
<tr class="memdesc:ac15c5f9f3f9ce31df122f82419f84fa3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats the given array of arguments into a user-readable string.  <a href="#ac15c5f9f3f9ce31df122f82419f84fa3">More...</a><br /></td></tr>
<tr class="separator:ac15c5f9f3f9ce31df122f82419f84fa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a455648202a7266100b4588e90da2e244"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a455648202a7266100b4588e90da2e244">format</a> (const <a class="el" href="classicu_1_1Formattable.html">Formattable</a> &amp;obj, <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;appendTo, <a class="el" href="classicu_1_1FieldPosition.html">FieldPosition</a> &amp;pos, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const </td></tr>
<tr class="memdesc:a455648202a7266100b4588e90da2e244"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats the given array of arguments into a user-readable string.  <a href="#a455648202a7266100b4588e90da2e244">More...</a><br /></td></tr>
<tr class="separator:a455648202a7266100b4588e90da2e244"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4adac9e2347635642c9a4e32869bfe37"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a4adac9e2347635642c9a4e32869bfe37">format</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> *argumentNames, const <a class="el" href="classicu_1_1Formattable.html">Formattable</a> *arguments, int32_t count, <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;appendTo, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const </td></tr>
<tr class="memdesc:a4adac9e2347635642c9a4e32869bfe37"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats the given array of arguments into a user-defined argument name array.  <a href="#a4adac9e2347635642c9a4e32869bfe37">More...</a><br /></td></tr>
<tr class="separator:a4adac9e2347635642c9a4e32869bfe37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a300d5d66501c2afa74a8750a6d9e84ad"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classicu_1_1Formattable.html">Formattable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a300d5d66501c2afa74a8750a6d9e84ad">parse</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;source, <a class="el" href="classicu_1_1ParsePosition.html">ParsePosition</a> &amp;pos, int32_t &amp;count) const </td></tr>
<tr class="memdesc:a300d5d66501c2afa74a8750a6d9e84ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parses the given string into an array of output arguments.  <a href="#a300d5d66501c2afa74a8750a6d9e84ad">More...</a><br /></td></tr>
<tr class="separator:a300d5d66501c2afa74a8750a6d9e84ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17e56db0a75a94483872a9994efd156d"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classicu_1_1Formattable.html">Formattable</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a17e56db0a75a94483872a9994efd156d">parse</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;source, int32_t &amp;count, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const </td></tr>
<tr class="memdesc:a17e56db0a75a94483872a9994efd156d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parses the given string into an array of output arguments.  <a href="#a17e56db0a75a94483872a9994efd156d">More...</a><br /></td></tr>
<tr class="separator:a17e56db0a75a94483872a9994efd156d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acf78231d56a02ccd02bb255d10dc119f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#acf78231d56a02ccd02bb255d10dc119f">parseObject</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;source, <a class="el" href="classicu_1_1Formattable.html">Formattable</a> &amp;result, <a class="el" href="classicu_1_1ParsePosition.html">ParsePosition</a> &amp;pos) const </td></tr>
<tr class="memdesc:acf78231d56a02ccd02bb255d10dc119f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parses the given string into an array of output arguments stored within a single <a class="el" href="classicu_1_1Formattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting. ">Formattable</a> of type kArray.  <a href="#acf78231d56a02ccd02bb255d10dc119f">More...</a><br /></td></tr>
<tr class="separator:acf78231d56a02ccd02bb255d10dc119f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a670e953de37f88d708d2833820bc63e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a670e953de37f88d708d2833820bc63e6">usesNamedArguments</a> () const </td></tr>
<tr class="memdesc:a670e953de37f88d708d2833820bc63e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if this <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> uses named arguments, and false otherwise.  <a href="#a670e953de37f88d708d2833820bc63e6">More...</a><br /></td></tr>
<tr class="separator:a670e953de37f88d708d2833820bc63e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87260edf1a0c3197a0dac4baab7a6118"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a87260edf1a0c3197a0dac4baab7a6118">getArgTypeCount</a> () const </td></tr>
<tr class="memdesc:a87260edf1a0c3197a0dac4baab7a6118"><td class="mdescLeft">&#160;</td><td class="mdescRight">This API is for ICU internal use only.  <a href="#a87260edf1a0c3197a0dac4baab7a6118">More...</a><br /></td></tr>
<tr class="separator:a87260edf1a0c3197a0dac4baab7a6118"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa105dc6b7879e78072bee2c32f78be8c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#aa105dc6b7879e78072bee2c32f78be8c">getDynamicClassID</a> (void) const </td></tr>
<tr class="memdesc:aa105dc6b7879e78072bee2c32f78be8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a unique class ID POLYMORPHICALLY.  <a href="#aa105dc6b7879e78072bee2c32f78be8c">More...</a><br /></td></tr>
<tr class="separator:aa105dc6b7879e78072bee2c32f78be8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classicu_1_1Format"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classicu_1_1Format')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classicu_1_1Format.html">icu::Format</a></td></tr>
<tr class="memitem:ab5b0d091d165c5576af62b3ee246058a inherit pub_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#ab5b0d091d165c5576af62b3ee246058a">~Format</a> ()</td></tr>
<tr class="memdesc:ab5b0d091d165c5576af62b3ee246058a inherit pub_methods_classicu_1_1Format"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#ab5b0d091d165c5576af62b3ee246058a">More...</a><br /></td></tr>
<tr class="separator:ab5b0d091d165c5576af62b3ee246058a inherit pub_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6805569ed12cf68e0e8359dadcbe9b1c inherit pub_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#a6805569ed12cf68e0e8359dadcbe9b1c">operator!=</a> (const <a class="el" href="classicu_1_1Format.html">Format</a> &amp;other) const </td></tr>
<tr class="memdesc:a6805569ed12cf68e0e8359dadcbe9b1c inherit pub_methods_classicu_1_1Format"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return true if the given <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects are not semantically equal.  <a href="#a6805569ed12cf68e0e8359dadcbe9b1c">More...</a><br /></td></tr>
<tr class="separator:a6805569ed12cf68e0e8359dadcbe9b1c inherit pub_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab510bded8f13465d98b950db03f15297 inherit pub_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#ab510bded8f13465d98b950db03f15297">format</a> (const <a class="el" href="classicu_1_1Formattable.html">Formattable</a> &amp;obj, <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;appendTo, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const </td></tr>
<tr class="memdesc:ab510bded8f13465d98b950db03f15297 inherit pub_methods_classicu_1_1Format"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats an object to produce a string.  <a href="#ab510bded8f13465d98b950db03f15297">More...</a><br /></td></tr>
<tr class="separator:ab510bded8f13465d98b950db03f15297 inherit pub_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a24241eabda236878b4f93395ca5218 inherit pub_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#a3a24241eabda236878b4f93395ca5218">format</a> (const <a class="el" href="classicu_1_1Formattable.html">Formattable</a> &amp;obj, <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;appendTo, <a class="el" href="classicu_1_1FieldPositionIterator.html">FieldPositionIterator</a> *posIter, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const </td></tr>
<tr class="memdesc:a3a24241eabda236878b4f93395ca5218 inherit pub_methods_classicu_1_1Format"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> an object to produce a string.  <a href="#a3a24241eabda236878b4f93395ca5218">More...</a><br /></td></tr>
<tr class="separator:a3a24241eabda236878b4f93395ca5218 inherit pub_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14835811eb14a1826b8529704de07bbf inherit pub_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#a14835811eb14a1826b8529704de07bbf">parseObject</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;source, <a class="el" href="classicu_1_1Formattable.html">Formattable</a> &amp;result, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const </td></tr>
<tr class="memdesc:a14835811eb14a1826b8529704de07bbf inherit pub_methods_classicu_1_1Format"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parses a string to produce an object.  <a href="#a14835811eb14a1826b8529704de07bbf">More...</a><br /></td></tr>
<tr class="separator:a14835811eb14a1826b8529704de07bbf inherit pub_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5064d4b46b3f5882fb339960089bf87e inherit pub_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1Locale.html">Locale</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#a5064d4b46b3f5882fb339960089bf87e">getLocale</a> (<a class="el" href="uloc_8h.html#adf053345d343f8d82ae080f7a5871f34">ULocDataLocaleType</a> type, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const </td></tr>
<tr class="memdesc:a5064d4b46b3f5882fb339960089bf87e inherit pub_methods_classicu_1_1Format"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the locale for this format object.  <a href="#a5064d4b46b3f5882fb339960089bf87e">More...</a><br /></td></tr>
<tr class="separator:a5064d4b46b3f5882fb339960089bf87e inherit pub_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b0f21f3e3f6cc3ed196af5e6559b421 inherit pub_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#a1b0f21f3e3f6cc3ed196af5e6559b421">getLocaleID</a> (<a class="el" href="uloc_8h.html#adf053345d343f8d82ae080f7a5871f34">ULocDataLocaleType</a> type, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status) const </td></tr>
<tr class="memdesc:a1b0f21f3e3f6cc3ed196af5e6559b421 inherit pub_methods_classicu_1_1Format"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the locale for this format object.  <a href="#a1b0f21f3e3f6cc3ed196af5e6559b421">More...</a><br /></td></tr>
<tr class="separator:a1b0f21f3e3f6cc3ed196af5e6559b421 inherit pub_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classicu_1_1UObject"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classicu_1_1UObject')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classicu_1_1UObject.html">icu::UObject</a></td></tr>
<tr class="memitem:af10026497704f510d3d1f2eff50acb18 inherit pub_methods_classicu_1_1UObject"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1UObject.html#af10026497704f510d3d1f2eff50acb18">~UObject</a> ()</td></tr>
<tr class="memdesc:af10026497704f510d3d1f2eff50acb18 inherit pub_methods_classicu_1_1UObject"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#af10026497704f510d3d1f2eff50acb18">More...</a><br /></td></tr>
<tr class="separator:af10026497704f510d3d1f2eff50acb18 inherit pub_methods_classicu_1_1UObject"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a24ab7e1805afd64825fc3d444b7d7cc2"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a24ab7e1805afd64825fc3d444b7d7cc2">format</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;pattern, const <a class="el" href="classicu_1_1Formattable.html">Formattable</a> *arguments, int32_t count, <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;appendTo, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:a24ab7e1805afd64825fc3d444b7d7cc2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Formats the given array of arguments into a user-readable string using the given pattern.  <a href="#a24ab7e1805afd64825fc3d444b7d7cc2">More...</a><br /></td></tr>
<tr class="separator:a24ab7e1805afd64825fc3d444b7d7cc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a573ce9e22886239fc7877ff1b6727c9a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a573ce9e22886239fc7877ff1b6727c9a">autoQuoteApostrophe</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;pattern, <a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;status)</td></tr>
<tr class="memdesc:a573ce9e22886239fc7877ff1b6727c9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert an 'apostrophe-friendly' pattern into a standard pattern.  <a href="#a573ce9e22886239fc7877ff1b6727c9a">More...</a><br /></td></tr>
<tr class="separator:a573ce9e22886239fc7877ff1b6727c9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3183c4a92647602e4f986501dde2bf67"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a3183c4a92647602e4f986501dde2bf67">getStaticClassID</a> (void)</td></tr>
<tr class="memdesc:a3183c4a92647602e4f986501dde2bf67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the class ID for this class.  <a href="#a3183c4a92647602e4f986501dde2bf67">More...</a><br /></td></tr>
<tr class="separator:a3183c4a92647602e4f986501dde2bf67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a504b9c67758853ebfce923ad9a999797"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1MessageFormat.html#a504b9c67758853ebfce923ad9a999797">equalFormats</a> (const void *left, const void *right)</td></tr>
<tr class="memdesc:a504b9c67758853ebfce923ad9a999797"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects.  <a href="#a504b9c67758853ebfce923ad9a999797">More...</a><br /></td></tr>
<tr class="separator:a504b9c67758853ebfce923ad9a999797"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a633236b616d8e67ea32f83ed52132aae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a633236b616d8e67ea32f83ed52132aae"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>MessageFormatAdapter</b></td></tr>
<tr class="separator:a633236b616d8e67ea32f83ed52132aae"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pro_methods_classicu_1_1Format"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classicu_1_1Format')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classicu_1_1Format.html">icu::Format</a></td></tr>
<tr class="memitem:a9c316525df8bdb422d3e73f0eb9a2a32 inherit pro_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#a9c316525df8bdb422d3e73f0eb9a2a32">setLocaleIDs</a> (const char *valid, const char *actual)</td></tr>
<tr class="separator:a9c316525df8bdb422d3e73f0eb9a2a32 inherit pro_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e673e9e040598bace20c25a2261b845 inherit pro_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#a0e673e9e040598bace20c25a2261b845">Format</a> ()</td></tr>
<tr class="memdesc:a0e673e9e040598bace20c25a2261b845 inherit pro_methods_classicu_1_1Format"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor for subclass use only.  <a href="#a0e673e9e040598bace20c25a2261b845">More...</a><br /></td></tr>
<tr class="separator:a0e673e9e040598bace20c25a2261b845 inherit pro_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2747bab62f7164f3c1556c044502df6e inherit pro_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#a2747bab62f7164f3c1556c044502df6e">Format</a> (const <a class="el" href="classicu_1_1Format.html">Format</a> &amp;)</td></tr>
<tr class="separator:a2747bab62f7164f3c1556c044502df6e inherit pro_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e4a4f6e5eedfe8d949e9307191a3afc inherit pro_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classicu_1_1Format.html">Format</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#a6e4a4f6e5eedfe8d949e9307191a3afc">operator=</a> (const <a class="el" href="classicu_1_1Format.html">Format</a> &amp;)</td></tr>
<tr class="separator:a6e4a4f6e5eedfe8d949e9307191a3afc inherit pro_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_static_methods_classicu_1_1Format"><td colspan="2" onclick="javascript:toggleInherit('pro_static_methods_classicu_1_1Format')"><img src="closed.png" alt="-"/>&#160;Static Protected Member Functions inherited from <a class="el" href="classicu_1_1Format.html">icu::Format</a></td></tr>
<tr class="memitem:a4667230f833245c55ba081c163d8bb71 inherit pro_static_methods_classicu_1_1Format"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classicu_1_1Format.html#a4667230f833245c55ba081c163d8bb71">syntaxError</a> (const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;pattern, int32_t pos, <a class="el" href="structUParseError.html">UParseError</a> &amp;parseError)</td></tr>
<tr class="memdesc:a4667230f833245c55ba081c163d8bb71 inherit pro_static_methods_classicu_1_1Format"><td class="mdescLeft">&#160;</td><td class="mdescRight">Simple function for initializing a <a class="el" href="structUParseError.html" title="A UParseError struct is used to returned detailed information about parsing errors. ">UParseError</a> from a <a class="el" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>.  <a href="#a4667230f833245c55ba081c163d8bb71">More...</a><br /></td></tr>
<tr class="separator:a4667230f833245c55ba081c163d8bb71 inherit pro_static_methods_classicu_1_1Format"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> prepares strings for display to users, with optional arguments (variables/placeholders). The arguments can occur in any order, which is necessary for translation into languages with different grammars.</p>
<p>A <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> is constructed from a <em>pattern</em> string with arguments in {curly braces} which will be replaced by formatted values.</p>
<p><code><a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a></code> differs from the other <code><a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a></code> classes in that you create a <code><a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a></code> object with one of its constructors (not with a <code>createInstance</code> style factory method). Factory methods aren't necessary because <code><a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a></code> itself doesn't implement locale-specific behavior. Any locale-specific behavior is defined by the pattern that you provide and the subformats used for inserted arguments.</p>
<p>Arguments can be named (using identifiers) or numbered (using small ASCII-digit integers). Some of the API methods work only with argument numbers and throw an exception if the pattern has named arguments (see <a class="el" href="classicu_1_1MessageFormat.html#a670e953de37f88d708d2833820bc63e6">usesNamedArguments()</a>).</p>
<p>An argument might not specify any format type. In this case, a Number value is formatted with a default (for the locale) <a class="el" href="classicu_1_1NumberFormat.html" title="Abstract base class for all number formats. ">NumberFormat</a>, a Date value is formatted with a default (for the locale) <a class="el" href="classicu_1_1DateFormat.html" title="DateFormat is an abstract class for a family of classes that convert dates and times from their inter...">DateFormat</a>, and for any other value its toString() value is used.</p>
<p>An argument might specify a "simple" type for which the specified <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> object is created, cached and used.</p>
<p>An argument might have a "complex" type with nested <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> sub-patterns. During formatting, one of these sub-messages is selected according to the argument value and recursively formatted.</p>
<p>After construction, a custom <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> object can be set for a top-level argument, overriding the default formatting and parsing behavior for that argument. However, custom formatting can be achieved more simply by writing a typeless argument in the pattern string and supplying it with a preformatted string value.</p>
<p>When formatting, <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> takes a collection of argument values and writes an output string. The argument values may be passed as an array (when the pattern contains only numbered arguments) or as an array of names and and an array of arguments (which works for both named and numbered arguments).</p>
<p>Each argument is matched with one of the input values by array index or argument name and formatted according to its pattern specification (or using a custom <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> object if one was set). A numbered pattern argument is matched with an argument name that contains that number as an ASCII-decimal-digit string (without leading zero).</p>
<h4><a class="anchor" id="patterns"></a>Patterns and Their Interpretation</h4>
<p><code><a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a></code> uses patterns of the following form: </p><pre>
message = messageText (argument messageText)*
argument = noneArg | simpleArg | complexArg
complexArg = choiceArg | pluralArg | selectArg | selectordinalArg</pre><pre>noneArg = '{' argNameOrNumber '}'
simpleArg = '{' argNameOrNumber ',' argType [',' argStyle] '}'
choiceArg = '{' argNameOrNumber ',' "choice" ',' choiceStyle '}'
pluralArg = '{' argNameOrNumber ',' "plural" ',' pluralStyle '}'
selectArg = '{' argNameOrNumber ',' "select" ',' selectStyle '}'
selectordinalArg = '{' argNameOrNumber ',' "selectordinal" ',' pluralStyle '}'</pre><pre>choiceStyle: see <a class="el" href="classicu_1_1ChoiceFormat.html">ChoiceFormat</a>
pluralStyle: see <a class="el" href="classicu_1_1PluralFormat.html">PluralFormat</a>
selectStyle: see <a class="el" href="classicu_1_1SelectFormat.html">SelectFormat</a></pre><pre>argNameOrNumber = argName | argNumber
argName = [^[[:Pattern_Syntax:][:Pattern_White_Space:]]]+
argNumber = '0' | ('1'..'9' ('0'..'9')*)</pre><pre>argType = "number" | "date" | "time" | "spellout" | "ordinal" | "duration"
argStyle = "short" | "medium" | "long" | "full" | "integer" | "currency" | "percent" | argStyleText
</pre><ul>
<li>
messageText can contain quoted literal strings including syntax characters. A quoted literal string begins with an ASCII apostrophe and a syntax character (usually a {curly brace}) and continues until the next single apostrophe. A double ASCII apostrohpe inside or outside of a quoted string represents one literal apostrophe. </li>
<li>
Quotable syntax characters are the {curly braces} in all messageText parts, plus the '#' sign in a messageText immediately inside a pluralStyle, and the '|' symbol in a messageText immediately inside a choiceStyle. </li>
<li>
See also <a class="el" href="messagepattern_8h.html#a56aa1f898bc4cb898a0cb2facb19b258">UMessagePatternApostropheMode</a> </li>
<li>
In argStyleText, every single ASCII apostrophe begins and ends quoted literal text, and unquoted {curly braces} must occur in matched pairs. </li>
</ul>
<p>Recommendation: Use the real apostrophe (single quote) character  &#x2019; (U+2019) for human-readable text, and use the ASCII apostrophe ' (U+0027) only in program syntax, like quoting in <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a>. See the annotations for U+0027 Apostrophe in The Unicode Standard.</p>
<p>The <code>choice</code> argument type is deprecated. Use <code>plural</code> arguments for proper plural selection, and <code>select</code> arguments for simple selection among a fixed set of choices.</p>
<p>The <code>argType</code> and <code>argStyle</code> values are used to create a <code><a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a></code> instance for the format element. The following table shows how the values map to <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> instances. Combinations not shown in the table are illegal. Any <code>argStyleText</code> must be a valid pattern string for the <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> subclass used.</p>
<table  border="1">
<tr>
<th>argType </th><th>argStyle </th><th>resulting <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> object </th></tr>
<tr>
<td colspan="2"><em>(none)</em> </td><td><code>null</code> </td></tr>
<tr>
<td rowspan="5"><code>number</code> </td><td><em>(none)</em> </td><td><code>NumberFormat.createInstance(getLocale(), status)</code> </td></tr>
<tr>
<td><code>integer</code> </td><td><code>NumberFormat.createInstance(getLocale(), kNumberStyle, status)</code> </td></tr>
<tr>
<td><code>currency</code> </td><td><code>NumberFormat.createCurrencyInstance(getLocale(), status)</code> </td></tr>
<tr>
<td><code>percent</code> </td><td><code>NumberFormat.createPercentInstance(getLocale(), status)</code> </td></tr>
<tr>
<td><em>argStyleText</em> </td><td><code>new <a class="el" href="classicu_1_1DecimalFormat.html" title="DecimalFormat is a concrete subclass of NumberFormat that formats decimal numbers. ">DecimalFormat</a>(argStyleText, new DecimalFormatSymbols(getLocale(), status), status)</code> </td></tr>
<tr>
<td rowspan="6"><code>date</code> </td><td><em>(none)</em> </td><td><code>DateFormat.createDateInstance(kDefault, getLocale(), status)</code> </td></tr>
<tr>
<td><code>short</code> </td><td><code>DateFormat.createDateInstance(kShort, getLocale(), status)</code> </td></tr>
<tr>
<td><code>medium</code> </td><td><code>DateFormat.createDateInstance(kDefault, getLocale(), status)</code> </td></tr>
<tr>
<td><code>long</code> </td><td><code>DateFormat.createDateInstance(kLong, getLocale(), status)</code> </td></tr>
<tr>
<td><code>full</code> </td><td><code>DateFormat.createDateInstance(kFull, getLocale(), status)</code> </td></tr>
<tr>
<td><em>argStyleText</em> </td><td><code>new SimpleDateFormat(argStyleText, getLocale(), status) </code></td></tr>
<tr>
<td rowspan="6"><code><code>time</code> </code></td><td><code><em>(none)</em> </code></td><td><code><code>DateFormat.createTimeInstance(kDefault, getLocale(), status)</code> </code></td></tr>
<tr>
<td><code><code>short</code> </code></td><td><code><code>DateFormat.createTimeInstance(kShort, getLocale(), status)</code> </code></td></tr>
<tr>
<td><code><code>medium</code> </code></td><td><code><code>DateFormat.createTimeInstance(kDefault, getLocale(), status)</code> </code></td></tr>
<tr>
<td><code><code>long</code> </code></td><td><code><code>DateFormat.createTimeInstance(kLong, getLocale(), status)</code> </code></td></tr>
<tr>
<td><code><code>full</code> </code></td><td><code><code>DateFormat.createTimeInstance(kFull, getLocale(), status)</code> </code></td></tr>
<tr>
<td><code><em>argStyleText</em> </code></td><td><code><code>new SimpleDateFormat(argStyleText, getLocale(), status) </code></code></td></tr>
<tr>
<td><code><code><code>spellout</code> </code></code></td><td><code><code><em>argStyleText (optional)</em> </code></code></td><td><code><code><code>new RuleBasedNumberFormat(URBNF_SPELLOUT, getLocale(), status) <br />
&#160;&#160;&#160;&#160;.setDefaultRuleset(argStyleText, status);</code> </code></code></td></tr>
<tr>
<td><code><code><code>ordinal</code> </code></code></td><td><code><code><em>argStyleText (optional)</em> </code></code></td><td><code><code><code>new RuleBasedNumberFormat(URBNF_ORDINAL, getLocale(), status) <br />
&#160;&#160;&#160;&#160;.setDefaultRuleset(argStyleText, status);</code> </code></code></td></tr>
<tr>
<td><code><code><code>duration</code> </code></code></td><td><code><code><em>argStyleText (optional)</em> </code></code></td><td><code><code><code>new RuleBasedNumberFormat(URBNF_DURATION, getLocale(), status) <br />
&#160;&#160;&#160;&#160;.setDefaultRuleset(argStyleText, status);</code> </code></code></td></tr>
</table>
<p><code><code></code></code></p>
<p><code><code></p><h4>Usage Information</h4>
<p></code></code></p>
<p><code><code></code></code></p>
<p><code><code></code></code></p>
<p><code><code>Here are some examples of usage: Example 1:</code></code></p>
<p><code><code></p><pre>
<div class="fragment"><div class="line"><a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> success = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78caa43dbfc9499c5f911d04e1a0ca3bf6f9">U_ZERO_ERROR</a>;</div><div class="line">GregorianCalendar cal(success);</div><div class="line">Formattable arguments[] = {</div><div class="line">    7L,</div><div class="line">    Formattable( (Date) cal.getTime(success), Formattable::kIsDate),</div><div class="line">    <span class="stringliteral">&quot;a disturbance in the Force&quot;</span></div><div class="line">};</div><div class="line"></div><div class="line">UnicodeString result;</div><div class="line"><a class="code" href="classicu_1_1MessageFormat.html#ac15c5f9f3f9ce31df122f82419f84fa3">MessageFormat::format</a>(</div><div class="line">     <span class="stringliteral">&quot;At {1,time} on {1,date}, there was {2} on planet {0,number}.&quot;</span>,</div><div class="line">     arguments, 3, result, success );</div><div class="line"></div><div class="line">cout &lt;&lt; <span class="stringliteral">&quot;result: &quot;</span> &lt;&lt; result &lt;&lt; endl;</div><div class="line"><span class="comment">//&lt;output&gt;: At 4:34:20 PM on 23-Mar-98, there was a disturbance</span></div><div class="line"><span class="comment">//             in the Force on planet 7.</span></div></div><!-- fragment -->
</pre><p></code></code></p>
<p><code><code>Typically, the message format will come from resources, and the arguments will be dynamically set at runtime.</code></code></p>
<p><code><code></code></code></p>
<p><code><code>Example 2:</code></code></p>
<p><code><code></p><pre>
<div class="fragment"><div class="line">success = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78caa43dbfc9499c5f911d04e1a0ca3bf6f9">U_ZERO_ERROR</a>;</div><div class="line">Formattable testArgs[] = {3L, <span class="stringliteral">&quot;MyDisk&quot;</span>};</div><div class="line"></div><div class="line"><a class="code" href="classicu_1_1MessageFormat.html#a48d1dcf631420d444632a18fbec549ea">MessageFormat</a> form(</div><div class="line">    <span class="stringliteral">&quot;The disk \&quot;{1}\&quot; contains {0} file(s).&quot;</span>, success );</div><div class="line"></div><div class="line">UnicodeString string;</div><div class="line">FieldPosition fpos = 0;</div><div class="line">cout &lt;&lt; <span class="stringliteral">&quot;format: &quot;</span> &lt;&lt; form.format(testArgs, 2, <span class="keywordtype">string</span>, fpos, success ) &lt;&lt; endl;</div><div class="line"></div><div class="line"><span class="comment">// output, with different testArgs:</span></div><div class="line"><span class="comment">// output: The disk &quot;MyDisk&quot; contains 0 file(s).</span></div><div class="line"><span class="comment">// output: The disk &quot;MyDisk&quot; contains 1 file(s).</span></div><div class="line"><span class="comment">// output: The disk &quot;MyDisk&quot; contains 1,273 file(s).</span></div></div><!-- fragment -->
 </pre><p></code></code></p>
<p><code><code></code></code></p>
<p><code><code>For messages that include plural forms, you can use a plural argument: </p><pre>
<div class="fragment"><div class="line">success = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78caa43dbfc9499c5f911d04e1a0ca3bf6f9">U_ZERO_ERROR</a>;</div><div class="line"><a class="code" href="classicu_1_1MessageFormat.html#a48d1dcf631420d444632a18fbec549ea">MessageFormat</a> msgFmt(</div><div class="line">     <span class="stringliteral">&quot;{num_files, plural, &quot;</span></div><div class="line">     <span class="stringliteral">&quot;=0{There are no files on disk \&quot;{disk_name}\&quot;.}&quot;</span></div><div class="line">     <span class="stringliteral">&quot;=1{There is one file on disk \&quot;{disk_name}\&quot;.}&quot;</span></div><div class="line">     <span class="stringliteral">&quot;other{There are # files on disk \&quot;{disk_name}\&quot;.}}&quot;</span>,</div><div class="line">    Locale(<span class="stringliteral">&quot;en&quot;</span>),</div><div class="line">    success);</div><div class="line">FieldPosition fpos = 0;</div><div class="line">Formattable testArgs[] = {0L, <span class="stringliteral">&quot;MyDisk&quot;</span>};</div><div class="line">UnicodeString testArgsNames[] = {<span class="stringliteral">&quot;num_files&quot;</span>, <span class="stringliteral">&quot;disk_name&quot;</span>};</div><div class="line">UnicodeString result;</div><div class="line">cout &lt;&lt; msgFmt.format(testArgs, testArgsNames, 2, result, fpos, 0, success);</div><div class="line">testArgs[0] = 3L;</div><div class="line">cout &lt;&lt; msgFmt.format(testArgs, testArgsNames, 2, result, fpos, 0, success);</div></div><!-- fragment -->
<em>output</em>:
There are no files on disk "MyDisk".
There are 3 files on "MyDisk".
</pre><p> See <a class="el" href="classicu_1_1PluralFormat.html">PluralFormat</a> and <a class="el" href="classicu_1_1PluralRules.html">PluralRules</a> for details.</code></code></p>
<p><code><code></p><h4><a class="anchor" id="synchronization"></a>Synchronization</h4>
<p></code></code></p>
<p><code><code></code></code></p>
<p><code><code></code></code></p>
<p><code><code>MessageFormats are not synchronized. It is recommended to create separate format instances for each thread. If multiple threads access a format concurrently, it must be synchronized externally.</code></code></p>
<p><code><code></p><dl class="stable"><dt><b><a class="el" href="stable.html#_stable003890">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>
<p></code></code></p>

<p>Definition at line <a class="el" href="msgfmt_8h_source.html#l00325">325</a> of file <a class="el" href="msgfmt_8h_source.html">msgfmt.h</a>.</p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a class="anchor" id="a746caee2c4690b86603b875eefdd7ac1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classicu_1_1MessageFormat.html#a746caee2c4690b86603b875eefdd7ac1">icu::MessageFormat::EFormatNumber</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Enum type for kMaxFormat. </p>
<dl class="obsolete"><dt><b><a class="el" href="obsolete.html#_obsolete000002">Obsolete:</a></b></dt><dd>ICU 3.0. The 10-argument limit was removed as of ICU 2.6, rendering this enum type obsolete. </dd></dl>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a746caee2c4690b86603b875eefdd7ac1a5645953ab29b9297945b05223601a456"></a>kMaxFormat&#160;</td><td class="fielddoc">
<p>The maximum number of arguments. </p>
<dl class="obsolete"><dt><b><a class="el" href="obsolete.html#_obsolete000003">Obsolete:</a></b></dt><dd>ICU 3.0. The 10-argument limit was removed as of ICU 2.6, rendering this constant obsolete. </dd></dl>
</td></tr>
</table>

<p>Definition at line <a class="el" href="msgfmt_8h_source.html#l00333">333</a> of file <a class="el" href="msgfmt_8h_source.html">msgfmt.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a48d1dcf631420d444632a18fbec549ea"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">icu::MessageFormat::MessageFormat </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs a new <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> using the given pattern and the default locale. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pattern</td><td>Pattern used to construct object. </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, set to failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003891">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="ade1d7ec2841bee8b9f534633417868f2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">icu::MessageFormat::MessageFormat </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;&#160;</td>
          <td class="paramname"><em>newLocale</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs a new <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> using the given pattern and locale. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pattern</td><td>Pattern used to construct object. </td></tr>
    <tr><td class="paramname">newLocale</td><td>The locale to use for formatting dates and numbers. </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, set to failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003892">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a4ee2e09d6b34ace52e58d6a2c9db99ed"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">icu::MessageFormat::MessageFormat </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;&#160;</td>
          <td class="paramname"><em>newLocale</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structUParseError.html">UParseError</a> &amp;&#160;</td>
          <td class="paramname"><em>parseError</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs a new <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> using the given pattern and locale. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pattern</td><td>Pattern used to construct object. </td></tr>
    <tr><td class="paramname">newLocale</td><td>The locale to use for formatting dates and numbers. </td></tr>
    <tr><td class="paramname">parseError</td><td>Struct to receive information on the position of an error within the pattern. </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, set to failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003893">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a71b1acd983209f1b9756d4d365d2a21f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">icu::MessageFormat::MessageFormat </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructs a new <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> from an existing one. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003894">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a7d229f822f9889aeb02c7c2b77470676"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual icu::MessageFormat::~MessageFormat </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Destructor. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003896">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ac668f3151bc1f2ffe520bca31fba54dc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void icu::MessageFormat::adoptFormat </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>formatNumber</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classicu_1_1Format.html">Format</a> *&#160;</td>
          <td class="paramname"><em>formatToAdopt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets one subformat. </p>
<p>See the class description about format numbering. The caller should not delete the <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> object after this call. If the number is over the number of formats already set, the item will be deleted and ignored.</p>
<p>If this format uses named arguments, the new format is discarded and this format remains unchanged.</p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003908">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">formatNumber</td><td>index of the subformat. </td></tr>
    <tr><td class="paramname">formatToAdopt</td><td>the format to be adopted. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a340ad4cbe4127f11d70654b14759e701"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void icu::MessageFormat::adoptFormat </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>formatName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classicu_1_1Format.html">Format</a> *&#160;</td>
          <td class="paramname"><em>formatToAdopt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets one subformat for given format name. </p>
<p>See the class description about format name. This function supports both named and numbered arguments&ndash; if numbered, the formatName is the corresponding UnicodeStrings (e.g. "0", "1", "2"...). If there is no matched formatName or wrong type, the item will be ignored. The caller should not delete the <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> object after this call. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">formatName</td><td>Name of the subformat. </td></tr>
    <tr><td class="paramname">formatToAdopt</td><td><a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> to be adopted. </td></tr>
    <tr><td class="paramname">status</td><td>output param set to success/failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003913">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl>

</div>
</div>
<a class="anchor" id="af976a0cdbcc895b2b1070fbaf0a1d87d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void icu::MessageFormat::adoptFormats </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classicu_1_1Format.html">Format</a> **&#160;</td>
          <td class="paramname"><em>formatsToAdopt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets subformats. </p>
<p>See the class description about format numbering. The caller should not delete the <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects after this call. <em>The array formatsToAdopt is not itself adopted.</em> Its ownership is retained by the caller. If the call fails because memory cannot be allocated, then the formats will be deleted by this method, and this object will remain unchanged.</p>
<p>If this format uses named arguments, the new formats are discarded and this format remains unchanged.</p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003906">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">formatsToAdopt</td><td>the format to be adopted. </td></tr>
    <tr><td class="paramname">count</td><td>the size of the array. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="afd0150beeea80ff8baecfa4923d16062"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void icu::MessageFormat::applyPattern </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Applies the given pattern string to this message format. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pattern</td><td>The pattern to be applied. </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, set to failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003901">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="aea2e46c754d11a4b43b8dd9b28a48641"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void icu::MessageFormat::applyPattern </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structUParseError.html">UParseError</a> &amp;&#160;</td>
          <td class="paramname"><em>parseError</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Applies the given pattern string to this message format. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pattern</td><td>The pattern to be applied. </td></tr>
    <tr><td class="paramname">parseError</td><td>Struct to receive information on the position of an error within the pattern. </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, set to failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003902">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a126cd4c5bf45eff292c1f8c1e838295c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void icu::MessageFormat::applyPattern </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="messagepattern_8h.html#af6e0757e0eb81c980b01ee5d68a9978b">UMessagePatternApostropheMode</a>&#160;</td>
          <td class="paramname"><em>aposMode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structUParseError.html">UParseError</a> *&#160;</td>
          <td class="paramname"><em>parseError</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets the UMessagePatternApostropheMode and the pattern used by this message format. </p>
<p>Parses the pattern and caches <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects for simple argument types. Patterns and their interpretation are specified in the <a href="#patterns">class description</a>. </p>
<p>This method is best used only once on a given object to avoid confusion about the mode, and after constructing the object with an empty pattern string to minimize overhead.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pattern</td><td>The pattern to be applied. </td></tr>
    <tr><td class="paramname">aposMode</td><td>The new apostrophe mode. </td></tr>
    <tr><td class="paramname">parseError</td><td>Struct to receive information on the position of an error within the pattern. Can be NULL. </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, set to failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003903">Stable:</a></b></dt><dd>ICU 4.8 </dd></dl>

</div>
</div>
<a class="anchor" id="a573ce9e22886239fc7877ff1b6727c9a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> icu::MessageFormat::autoQuoteApostrophe </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Convert an 'apostrophe-friendly' pattern into a standard pattern. </p>
<p>Standard patterns treat all apostrophes as quotes, which is problematic in some languages, e.g. French, where apostrophe is commonly used. This utility assumes that only an unpaired apostrophe immediately before a brace is a true quote. Other unpaired apostrophes are paired, and the resulting standard pattern string is returned.</p>
<p><b>Note</b> it is not guaranteed that the returned pattern is indeed a valid pattern. The only effect is to convert between patterns having different quoting semantics.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pattern</td><td>the 'apostrophe-friendly' patttern to convert </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, the failure code is set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the standard equivalent of the original pattern </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003922">Stable:</a></b></dt><dd>ICU 3.4 </dd></dl>

</div>
</div>
<a class="anchor" id="ad17094511b3f742cfa7ed8513c38e4a3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classicu_1_1Format.html">Format</a>* icu::MessageFormat::clone </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Clones this <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> object polymorphically. </p>
<p>The caller owns the result and should delete it when done. </p><dl class="stable"><dt><b><a class="el" href="stable.html#_stable003897">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Implements <a class="el" href="classicu_1_1Format.html#ad606fa4ed45908fe4220085c6276c65a">icu::Format</a>.</p>

</div>
</div>
<a class="anchor" id="a504b9c67758853ebfce923ad9a999797"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> icu::MessageFormat::equalFormats </td>
          <td>(</td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>left</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&#160;</td>
          <td class="paramname"><em>right</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Compares two <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects. </p>
<p>This is used for constructing the hash tables.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">left</td><td>pointer to a <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> object. Must not be NULL. </td></tr>
    <tr><td class="paramname">right</td><td>pointer to a <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> object. Must not be NULL.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>whether the two objects are the same </dd></dl>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000388">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. </dd></dl>

</div>
</div>
<a class="anchor" id="ac15c5f9f3f9ce31df122f82419f84fa3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&amp; icu::MessageFormat::format </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1Formattable.html">Formattable</a> *&#160;</td>
          <td class="paramname"><em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>appendTo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classicu_1_1FieldPosition.html">FieldPosition</a> &amp;&#160;</td>
          <td class="paramname"><em>ignore</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Formats the given array of arguments into a user-readable string. </p>
<p>Does not take ownership of the Formattable* array or its contents.</p>
<p>If this format uses named arguments, appendTo is unchanged and status is set to U_ILLEGAL_ARGUMENT_ERROR.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">source</td><td>An array of objects to be formatted. </td></tr>
    <tr><td class="paramname">count</td><td>The number of elements of 'source'. </td></tr>
    <tr><td class="paramname">appendTo</td><td>Output parameter to receive result. Result is appended to existing contents. </td></tr>
    <tr><td class="paramname">ignore</td><td>Not used; inherited from base class API. </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, set to failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to 'appendTo' parameter. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003915">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a24ab7e1805afd64825fc3d444b7d7cc2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&amp; icu::MessageFormat::format </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>pattern</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classicu_1_1Formattable.html">Formattable</a> *&#160;</td>
          <td class="paramname"><em>arguments</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>appendTo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Formats the given array of arguments into a user-readable string using the given pattern. </p>
<p>If this format uses named arguments, appendTo is unchanged and status is set to U_ILLEGAL_ARGUMENT_ERROR.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">pattern</td><td>The pattern. </td></tr>
    <tr><td class="paramname">arguments</td><td>An array of objects to be formatted. </td></tr>
    <tr><td class="paramname">count</td><td>The number of elements of 'source'. </td></tr>
    <tr><td class="paramname">appendTo</td><td>Output parameter to receive result. Result is appended to existing contents. </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, set to failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to 'appendTo' parameter. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003916">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a455648202a7266100b4588e90da2e244"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&amp; icu::MessageFormat::format </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1Formattable.html">Formattable</a> &amp;&#160;</td>
          <td class="paramname"><em>obj</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>appendTo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classicu_1_1FieldPosition.html">FieldPosition</a> &amp;&#160;</td>
          <td class="paramname"><em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Formats the given array of arguments into a user-readable string. </p>
<p>The array must be stored within a single <a class="el" href="classicu_1_1Formattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting. ">Formattable</a> object of type kArray. If the <a class="el" href="classicu_1_1Formattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting. ">Formattable</a> object type is not of type kArray, then returns a failing UErrorCode.</p>
<p>If this format uses named arguments, appendTo is unchanged and status is set to U_ILLEGAL_ARGUMENT_ERROR.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">obj</td><td>A <a class="el" href="classicu_1_1Formattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting. ">Formattable</a> of type kArray containing arguments to be formatted. </td></tr>
    <tr><td class="paramname">appendTo</td><td>Output parameter to receive result. Result is appended to existing contents. </td></tr>
    <tr><td class="paramname">pos</td><td>On input: an alignment field, if desired. On output: the offsets of the alignment field. </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, set to failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to 'appendTo' parameter. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003917">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Implements <a class="el" href="classicu_1_1Format.html#a68fb0a8875645f7ab11bb5230c03c212">icu::Format</a>.</p>

</div>
</div>
<a class="anchor" id="a4adac9e2347635642c9a4e32869bfe37"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&amp; icu::MessageFormat::format </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> *&#160;</td>
          <td class="paramname"><em>argumentNames</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classicu_1_1Formattable.html">Formattable</a> *&#160;</td>
          <td class="paramname"><em>arguments</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>appendTo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Formats the given array of arguments into a user-defined argument name array. </p>
<p>This function supports both named and numbered arguments&ndash; if numbered, the formatName is the corresponding UnicodeStrings (e.g. "0", "1", "2"...).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">argumentNames</td><td>argument name array </td></tr>
    <tr><td class="paramname">arguments</td><td>An array of objects to be formatted. </td></tr>
    <tr><td class="paramname">count</td><td>The number of elements of 'argumentNames' and arguments. The number of argumentNames and arguments must be the same. </td></tr>
    <tr><td class="paramname">appendTo</td><td>Output parameter to receive result. Result is appended to existing contents. </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, set to failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to 'appendTo' parameter. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003918">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a06f22064ff3cfa645a5077ad1b217132"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="messagepattern_8h.html#af6e0757e0eb81c980b01ee5d68a9978b">UMessagePatternApostropheMode</a> icu::MessageFormat::getApostropheMode </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>this instance's UMessagePatternApostropheMode. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003904">Stable:</a></b></dt><dd>ICU 4.8 </dd></dl>

<p>Definition at line <a class="el" href="msgfmt_8h_source.html#l00480">480</a> of file <a class="el" href="msgfmt_8h_source.html">msgfmt.h</a>.</p>

<p>References <a class="el" href="classicu_1_1Format.html#ad606fa4ed45908fe4220085c6276c65a">icu::Format::clone()</a>, <a class="el" href="classicu_1_1PluralFormat.html#a8cec9f8579702e799c6161d026552c4f">icu::PluralFormat::copyObjects()</a>, <a class="el" href="classicu_1_1Format.html#ab510bded8f13465d98b950db03f15297">icu::Format::format()</a>, <a class="el" href="classicu_1_1PluralFormat.html#a6ef08bd30c176be42acae50138541929">icu::PluralFormat::format()</a>, <a class="el" href="classicu_1_1UObject.html#a1aa93096e880907080b503ff1fb0f8bc">icu::UObject::getDynamicClassID()</a>, <a class="el" href="classicu_1_1Format.html#ab2db8f1097b03f3660d329752370bdf7">icu::Format::operator==()</a>, <a class="el" href="classicu_1_1Format.html#a292d797eb9d3bc8a42d8d8efba119a83">icu::Format::parseObject()</a>, <a class="el" href="classicu_1_1PluralFormat_1_1PluralSelector.html#accf766820558594ac9c1631458bf4046">icu::PluralFormat::PluralSelector::select()</a>, <a class="el" href="utypes_8h_source.html#l00360">U_I18N_API</a>, and <a class="el" href="uversion_8h_source.html#l00132">U_NAMESPACE_END</a>.</p>

</div>
</div>
<a class="anchor" id="a87260edf1a0c3197a0dac4baab7a6118"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t icu::MessageFormat::getArgTypeCount </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>This API is for ICU internal use only. </p>
<p>Please do not use it.</p>
<p>Returns argument types count in the parsed pattern. Used to distinguish pattern "{0} d" and "d".</p>
<dl class="section return"><dt>Returns</dt><dd>The number of formattable types in the pattern </dd></dl>
<dl class="internal"><dt><b><a class="el" href="internal.html#_internal000387">Internal:</a></b></dt><dd>Do not use. This API is for internal use only. </dd></dl>

</div>
</div>
<a class="anchor" id="aa105dc6b7879e78072bee2c32f78be8c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> icu::MessageFormat::getDynamicClassID </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns a unique class ID POLYMORPHICALLY. </p>
<p>Pure virtual override. This method is to implement a simple version of RTTI, since not all C++ compilers support genuine RTTI. Polymorphic <a class="el" href="classicu_1_1MessageFormat.html#a4b2aa5a7cb29b975fc5b178cd72e6619" title="Returns true if the given Format objects are semantically equal. ">operator==()</a> and <a class="el" href="classicu_1_1MessageFormat.html#ad17094511b3f742cfa7ed8513c38e4a3" title="Clones this Format object polymorphically. ">clone()</a> methods call this method.</p>
<dl class="section return"><dt>Returns</dt><dd>The class ID for this object. All objects of a given class have the same class ID. Objects of other classes have different class IDs. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003924">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Reimplemented from <a class="el" href="classicu_1_1UObject.html#a1aa93096e880907080b503ff1fb0f8bc">icu::UObject</a>.</p>

</div>
</div>
<a class="anchor" id="a227d9b60771076092f0acb979c51c8bd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classicu_1_1Format.html">Format</a>* icu::MessageFormat::getFormat </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>formatName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets subformat pointer for given format name. </p>
<p>This function supports both named and numbered arguments. If numbered, the formatName is the corresponding UnicodeStrings (e.g. "0", "1", "2"...). The returned <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> object should not be deleted by the caller, nor should the ponter of other object . The pointer and its contents remain valid only until the next call to any method of this class is made with this object. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">formatName</td><td>the name or number specifying a format </td></tr>
    <tr><td class="paramname">status</td><td>output param set to success/failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003911">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a69ecc0f1e97fbeabda70c37e2b47c191"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classicu_1_1StringEnumeration.html">StringEnumeration</a>* icu::MessageFormat::getFormatNames </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets format names. </p>
<p>This function returns formatNames in StringEnumerations which can be used with <a class="el" href="classicu_1_1MessageFormat.html#a227d9b60771076092f0acb979c51c8bd" title="Gets subformat pointer for given format name. ">getFormat()</a> and <a class="el" href="classicu_1_1MessageFormat.html#a58b8e85067b73e4784eaaa5bd56a13ae" title="Sets one subformat. ">setFormat()</a> to export formattable array from current <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> to another. It is the caller's responsibility to delete the returned formatNames. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">status</td><td>output param set to success/failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003910">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl>

</div>
</div>
<a class="anchor" id="abd4d0599d3e48e51697929426fa53c93"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classicu_1_1Format.html">Format</a>** icu::MessageFormat::getFormats </td>
          <td>(</td>
          <td class="paramtype">int32_t &amp;&#160;</td>
          <td class="paramname"><em>count</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets an array of subformats of this object. </p>
<p>The returned array should not be deleted by the caller, nor should the pointers within the array. The array and its contents remain valid only until the next call to this format. See the class description about format numbering.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">count</td><td>output parameter to receive the size of the array </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an array of count Format* objects, or NULL if out of memory. Any or all of the array elements may be NULL. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003914">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="ad67c1dbceff53859d415d13cb56832cd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classicu_1_1Locale.html">Locale</a>&amp; icu::MessageFormat::getLocale </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets the locale used for creating argument <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects. </p>
<p>format information. </p><dl class="section return"><dt>Returns</dt><dd>the locale of the object. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003900">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a3183c4a92647602e4f986501dde2bf67"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> icu::MessageFormat::getStaticClassID </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return the class ID for this class. </p>
<p>This is useful only for comparing to a return value from <a class="el" href="classicu_1_1MessageFormat.html#aa105dc6b7879e78072bee2c32f78be8c" title="Returns a unique class ID POLYMORPHICALLY. ">getDynamicClassID()</a>. For example: </p><pre>
.   Base* polymorphic_pointer = createPolymorphicObject();
.   if (polymorphic_pointer-&gt;<a class="el" href="classicu_1_1MessageFormat.html#aa105dc6b7879e78072bee2c32f78be8c" title="Returns a unique class ID POLYMORPHICALLY. ">getDynamicClassID()</a> ==
.      Derived::getStaticClassID()) ...
</pre> <dl class="section return"><dt>Returns</dt><dd>The class ID for all objects of this class. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003925">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a8d7fbf952089eb83eb61623564b83a74"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a>&amp; icu::MessageFormat::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Assignment operator. </p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003895">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a4b2aa5a7cb29b975fc5b178cd72e6619"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> icu::MessageFormat::operator== </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1Format.html">Format</a> &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns true if the given <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects are semantically equal. </p>
<p>Objects of different subclasses are considered unequal. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">other</td><td>the object to be compared with. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the given <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects are semantically equal. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003898">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Implements <a class="el" href="classicu_1_1Format.html#ab2db8f1097b03f3660d329752370bdf7">icu::Format</a>.</p>

</div>
</div>
<a class="anchor" id="a300d5d66501c2afa74a8750a6d9e84ad"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classicu_1_1Formattable.html">Formattable</a>* icu::MessageFormat::parse </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classicu_1_1ParsePosition.html">ParsePosition</a> &amp;&#160;</td>
          <td class="paramname"><em>pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t &amp;&#160;</td>
          <td class="paramname"><em>count</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Parses the given string into an array of output arguments. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">source</td><td>String to be parsed. </td></tr>
    <tr><td class="paramname">pos</td><td>On input, starting position for parse. On output, final position after parse. Unchanged if parse fails. </td></tr>
    <tr><td class="paramname">count</td><td>Output parameter to receive the number of arguments parsed. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an array of parsed arguments. The caller owns both the array and its contents. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003919">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a17e56db0a75a94483872a9994efd156d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classicu_1_1Formattable.html">Formattable</a>* icu::MessageFormat::parse </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t &amp;&#160;</td>
          <td class="paramname"><em>count</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Parses the given string into an array of output arguments. </p>
<p>If this format uses named arguments, status is set to U_ARGUMENT_TYPE_MISMATCH.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">source</td><td>String to be parsed. </td></tr>
    <tr><td class="paramname">count</td><td>Output param to receive size of returned array. </td></tr>
    <tr><td class="paramname">status</td><td>Input/output error code. If the pattern cannot be parsed, set to failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an array of parsed arguments. The caller owns both the array and its contents. Returns NULL if status is not U_ZERO_ERROR.</dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003920">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="acf78231d56a02ccd02bb255d10dc119f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void icu::MessageFormat::parseObject </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>source</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classicu_1_1Formattable.html">Formattable</a> &amp;&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classicu_1_1ParsePosition.html">ParsePosition</a> &amp;&#160;</td>
          <td class="paramname"><em>pos</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Parses the given string into an array of output arguments stored within a single <a class="el" href="classicu_1_1Formattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting. ">Formattable</a> of type kArray. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">source</td><td>The string to be parsed into an object. </td></tr>
    <tr><td class="paramname">result</td><td><a class="el" href="classicu_1_1Formattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting. ">Formattable</a> to be set to the parse result. If parse fails, return contents are undefined. </td></tr>
    <tr><td class="paramname">pos</td><td>On input, starting position for parse. On output, final position after parse. Unchanged if parse fails. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003921">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

<p>Implements <a class="el" href="classicu_1_1Format.html#a292d797eb9d3bc8a42d8d8efba119a83">icu::Format</a>.</p>

</div>
</div>
<a class="anchor" id="a58b8e85067b73e4784eaaa5bd56a13ae"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void icu::MessageFormat::setFormat </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>formatNumber</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classicu_1_1Format.html">Format</a> &amp;&#160;</td>
          <td class="paramname"><em>format</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets one subformat. </p>
<p>See the class description about format numbering. If the number is over the number of formats already set, the item will be ignored. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">formatNumber</td><td>index of the subformat. </td></tr>
    <tr><td class="paramname">format</td><td>the format to be set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003909">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a93cc2e808ab0c128eaae5585384136e4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void icu::MessageFormat::setFormat </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>formatName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classicu_1_1Format.html">Format</a> &amp;&#160;</td>
          <td class="paramname"><em>format</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &amp;&#160;</td>
          <td class="paramname"><em>status</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets one subformat for given format name. </p>
<p>See the class description about format name. This function supports both named and numbered arguments&ndash; if numbered, the formatName is the corresponding UnicodeStrings (e.g. "0", "1", "2"...). If there is no matched formatName or wrong type, the item will be ignored. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">formatName</td><td>Name of the subformat. </td></tr>
    <tr><td class="paramname">format</td><td>the format to be set. </td></tr>
    <tr><td class="paramname">status</td><td>output param set to success/failure code. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003912">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a55f6290d5957ae918422ec69bc998be2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void icu::MessageFormat::setFormats </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1Format.html">Format</a> **&#160;</td>
          <td class="paramname"><em>newFormats</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>cnt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets subformats. </p>
<p>See the class description about format numbering. Each item in the array is cloned into the internal array. If the call fails because memory cannot be allocated, then this object will remain unchanged.</p>
<p>If this format uses named arguments, the new formats are discarded and this format remains unchanged.</p>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003907">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">newFormats</td><td>the new format to be set. </td></tr>
    <tr><td class="paramname">cnt</td><td>the size of the array. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a79c2fab22fbd865890002fbb254be3a8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void icu::MessageFormat::setLocale </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classicu_1_1Locale.html">Locale</a> &amp;&#160;</td>
          <td class="paramname"><em>theLocale</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sets the locale to be used for creating argument <a class="el" href="classicu_1_1Format.html" title="Base class for all formats. ">Format</a> objects. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">theLocale</td><td>the new locale value to be set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003899">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="abca0a90e9e55303c34e3a0db455f71c6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a>&amp; icu::MessageFormat::toPattern </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classicu_1_1UnicodeString.html">UnicodeString</a> &amp;&#160;</td>
          <td class="paramname"><em>appendTo</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns a pattern that can be used to recreate this object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">appendTo</td><td>Output parameter to receive the pattern. Result is appended to existing contents. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to 'appendTo' parameter. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003905">Stable:</a></b></dt><dd>ICU 2.0 </dd></dl>

</div>
</div>
<a class="anchor" id="a670e953de37f88d708d2833820bc63e6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> icu::MessageFormat::usesNamedArguments </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns true if this <a class="el" href="classicu_1_1MessageFormat.html">MessageFormat</a> uses named arguments, and false otherwise. </p>
<p>See class description.</p>
<dl class="section return"><dt>Returns</dt><dd>true if named arguments are used. </dd></dl>
<dl class="stable"><dt><b><a class="el" href="stable.html#_stable003923">Stable:</a></b></dt><dd>ICU 4.0 </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="msgfmt_8h_source.html">msgfmt.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
</html>