<!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"/> <title>ICU 4.8.1.1: msgfmt.h Source File</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="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/search.js"></script> <script type="text/javascript"> $(document).ready(function() { searchBox.OnSelectItem(0); }); </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 style="padding-left: 0.5em;"> <div id="projectname">ICU 4.8.1.1  <span id="projectnumber">4.8.1.1</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.1.1 --> <script type="text/javascript"> var searchBox = new SearchBox("searchBox", "search",false,'Search'); </script> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li> <div id="MSearchBox" class="MSearchBoxInactive"> <span class="left"> <img id="MSearchSelect" src="search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/> <input type="text" id="MSearchField" value="Search" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/> </span><span class="right"> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </span> </div> </li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul> </div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Pages</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_73bc6a9bb617ea1bc89a10aa59ce84e4.html">i18n</a></li><li class="navelem"><a class="el" href="dir_0119ce638985e8a1561a00fdb5f76ff6.html">unicode</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="headertitle"> <div class="title">msgfmt.h</div> </div> </div><!--header--> <div class="contents"> <a href="msgfmt_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div> <div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">* Copyright (C) 2007-2011, International Business Machines Corporation and</span></div> <div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">* others. All Rights Reserved.</span></div> <div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">********************************************************************************</span></div> <div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">*</span></div> <div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">* File MSGFMT.H</span></div> <div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">*</span></div> <div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">* Modification History:</span></div> <div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">*</span></div> <div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">* Date Name Description</span></div> <div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">* 02/19/97 aliu Converted from java.</span></div> <div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment">* 03/20/97 helena Finished first cut of implementation.</span></div> <div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">* 07/22/98 stephen Removed operator!= (defined in Format)</span></div> <div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">* 08/19/2002 srl Removing Javaisms</span></div> <div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">*******************************************************************************/</span></div> <div class="line"><a name="l00016"></a><span class="lineno"> 16</span> </div> <div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#ifndef MSGFMT_H</span></div> <div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor"></span><span class="preprocessor">#define MSGFMT_H</span></div> <div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "<a class="code" href="utypes_8h.html" title="Basic definitions for ICU, for both C and C++ APIs.">unicode/utypes.h</a>"</span></div> <div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div> <div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#if !UCONFIG_NO_FORMATTING</span></div> <div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="format_8h.html" title="C++ API: Base class for all formats.">unicode/format.h</a>"</span></div> <div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="locid_8h.html" title="C++ API: Locale ID object.">unicode/locid.h</a>"</span></div> <div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="messagepattern_8h.html" title="C++ API: MessagePattern class: Parses and represents ICU MessageFormat patterns.">unicode/messagepattern.h</a>"</span></div> <div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "<a class="code" href="parseerr_8h.html" title="C API: Parse Error Information.">unicode/parseerr.h</a>"</span></div> <div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "<a class="code" href="plurfmt_8h.html" title="C++ API: PluralFormat object.">unicode/plurfmt.h</a>"</span></div> <div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include "<a class="code" href="plurrule_8h.html" title="C++ API: PluralRules object.">unicode/plurrule.h</a>"</span></div> <div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div> <div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <a class="code" href="umachine_8h.html#a82c853d86803ab75c89267be54fbac6a" title="This is used to begin a declaration of a library private ICU C API.">U_CDECL_BEGIN</a></div> <div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment">// Forward declaration.</span></div> <div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">struct </span>UHashtable;</div> <div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keyword">typedef</span> <span class="keyword">struct </span>UHashtable UHashtable;</div> <div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <a class="code" href="umachine_8h.html#a1a820e5c6cbe8ac1742b654e6bf9ed7d" title="This is used to end a declaration of a library private ICU C API.">U_CDECL_END</a></div> <div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div> <div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <a class="code" href="uversion_8h.html#a7d9374e037299886d4192b763b4c5e8b" title="This is used to begin a declaration of a public ICU C++ API.">U_NAMESPACE_BEGIN</a></div> <div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div> <div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keyword">class </span>AppendableWrapper;</div> <div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keyword">class </span><a class="code" href="classDateFormat.html" title="DateFormat is an abstract class for a family of classes that convert dates and times from their inter...">DateFormat</a>;</div> <div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keyword">class </span><a class="code" href="classNumberFormat.html" title="Abstract base class for all number formats.">NumberFormat</a>;</div> <div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div> <div class="line"><a name="l00318"></a><span class="lineno"><a class="code" href="classMessageFormat.html"> 318</a></span> <span class="keyword">class </span><a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a" title="Set to export library symbols from inside the i18n library, and to import them from outside...">U_I18N_API</a> <a class="code" href="classMessageFormat.html">MessageFormat</a> : <span class="keyword">public</span> <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a> {</div> <div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="keyword">public</span>:</div> <div class="line"><a name="l00325"></a><span class="lineno"><a class="code" href="classMessageFormat.html#a3b02759e9345bba433598ca169fe2626"> 325</a></span>  <span class="keyword">enum</span> <a class="code" href="classMessageFormat.html#a3b02759e9345bba433598ca169fe2626" title="Enum type for kMaxFormat.">EFormatNumber</a> {</div> <div class="line"><a name="l00331"></a><span class="lineno"><a class="code" href="classMessageFormat.html#a3b02759e9345bba433598ca169fe2626a2c4649766d55fba1106595c70fab6a79"> 331</a></span>  kMaxFormat = 10</div> <div class="line"><a name="l00332"></a><span class="lineno"> 332</span>  };</div> <div class="line"><a name="l00333"></a><span class="lineno"> 333</span> </div> <div class="line"><a name="l00343"></a><span class="lineno"> 343</span>  <a class="code" href="classMessageFormat.html">MessageFormat</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a> &status);</div> <div class="line"><a name="l00345"></a><span class="lineno"> 345</span> </div> <div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  <a class="code" href="classMessageFormat.html">MessageFormat</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00355"></a><span class="lineno"> 355</span>  <span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>& newLocale,</div> <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00367"></a><span class="lineno"> 367</span>  <a class="code" href="classMessageFormat.html">MessageFormat</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  <span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>& newLocale,</div> <div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  <a class="code" href="structUParseError.html" title="A UParseError struct is used to returned detailed information about parsing errors.">UParseError</a>& parseError,</div> <div class="line"><a name="l00370"></a><span class="lineno"> 370</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  <a class="code" href="classMessageFormat.html">MessageFormat</a>(<span class="keyword">const</span> <a class="code" href="classMessageFormat.html">MessageFormat</a>&);</div> <div class="line"><a name="l00376"></a><span class="lineno"> 376</span> </div> <div class="line"><a name="l00381"></a><span class="lineno"> 381</span>  <span class="keyword">const</span> <a class="code" href="classMessageFormat.html">MessageFormat</a>& <a class="code" href="classFormat.html#a7a5276a88c488462eea3a508b71f4d9c">operator=</a>(<span class="keyword">const</span> <a class="code" href="classMessageFormat.html">MessageFormat</a>&);</div> <div class="line"><a name="l00382"></a><span class="lineno"> 382</span> </div> <div class="line"><a name="l00387"></a><span class="lineno"> 387</span>  <span class="keyword">virtual</span> ~<a class="code" href="classMessageFormat.html">MessageFormat</a>();</div> <div class="line"><a name="l00388"></a><span class="lineno"> 388</span> </div> <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  <span class="keyword">virtual</span> <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>* <a class="code" href="classFormat.html#a4e7ebd5cfd390c35e2bda88257f8b51a" title="Clone this object polymorphically.">clone</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div> <div class="line"><a name="l00395"></a><span class="lineno"> 395</span> </div> <div class="line"><a name="l00403"></a><span class="lineno"> 403</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classFormat.html#ad9be7e8b7bef97013ff74ef1be3903a5" title="Return true if the given Format objects are semantically equal.">operator==</a>(<span class="keyword">const</span> <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>& other) <span class="keyword">const</span>;</div> <div class="line"><a name="l00404"></a><span class="lineno"> 404</span> </div> <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> setLocale(<span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>& theLocale);</div> <div class="line"><a name="l00411"></a><span class="lineno"> 411</span> </div> <div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>& <a class="code" href="classFormat.html#a4502b04fe77be54f9f0343a87156fbd5" title="Get the locale for this format object.">getLocale</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div> <div class="line"><a name="l00419"></a><span class="lineno"> 419</span> </div> <div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> applyPattern(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00440"></a><span class="lineno"> 440</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> applyPattern(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00441"></a><span class="lineno"> 441</span>  <a class="code" href="structUParseError.html" title="A UParseError struct is used to returned detailed information about parsing errors.">UParseError</a>& parseError,</div> <div class="line"><a name="l00442"></a><span class="lineno"> 442</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00443"></a><span class="lineno"> 443</span> </div> <div class="line"><a name="l00462"></a><span class="lineno"> 462</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> applyPattern(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  <a class="code" href="messagepattern_8h.html#af6e0757e0eb81c980b01ee5d68a9978b" title="Mode for when an apostrophe starts quoted literal text for MessageFormat output.">UMessagePatternApostropheMode</a> aposMode,</div> <div class="line"><a name="l00464"></a><span class="lineno"> 464</span>  <a class="code" href="structUParseError.html" title="A UParseError struct is used to returned detailed information about parsing errors.">UParseError</a>* parseError,</div> <div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00466"></a><span class="lineno"> 466</span> </div> <div class="line"><a name="l00471"></a><span class="lineno"><a class="code" href="classMessageFormat.html#ad9115365d575c42997d3724e99f22f31"> 471</a></span>  <a class="code" href="messagepattern_8h.html#af6e0757e0eb81c980b01ee5d68a9978b" title="Mode for when an apostrophe starts quoted literal text for MessageFormat output.">UMessagePatternApostropheMode</a> <a class="code" href="classMessageFormat.html#ad9115365d575c42997d3724e99f22f31">getApostropheMode</a>()<span class="keyword"> const </span>{</div> <div class="line"><a name="l00472"></a><span class="lineno"> 472</span>  <span class="keywordflow">return</span> msgPattern.getApostropheMode();</div> <div class="line"><a name="l00473"></a><span class="lineno"> 473</span>  }</div> <div class="line"><a name="l00474"></a><span class="lineno"> 474</span> </div> <div class="line"><a name="l00483"></a><span class="lineno"> 483</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& toPattern(<a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& appendTo) <span class="keyword">const</span>;</div> <div class="line"><a name="l00484"></a><span class="lineno"> 484</span> </div> <div class="line"><a name="l00501"></a><span class="lineno"> 501</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> adoptFormats(<a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>** formatsToAdopt, int32_t count);</div> <div class="line"><a name="l00502"></a><span class="lineno"> 502</span> </div> <div class="line"><a name="l00517"></a><span class="lineno"> 517</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> setFormats(<span class="keyword">const</span> <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>** newFormats, int32_t cnt);</div> <div class="line"><a name="l00518"></a><span class="lineno"> 518</span> </div> <div class="line"><a name="l00519"></a><span class="lineno"> 519</span> </div> <div class="line"><a name="l00534"></a><span class="lineno"> 534</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> adoptFormat(int32_t formatNumber, <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>* formatToAdopt);</div> <div class="line"><a name="l00535"></a><span class="lineno"> 535</span> </div> <div class="line"><a name="l00545"></a><span class="lineno"> 545</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> setFormat(int32_t formatNumber, <span class="keyword">const</span> <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>& format);</div> <div class="line"><a name="l00546"></a><span class="lineno"> 546</span> </div> <div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  <span class="keyword">virtual</span> <a class="code" href="classStringEnumeration.html" title="Base class for 'pure' C++ implementations of uenum api.">StringEnumeration</a>* getFormatNames(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00556"></a><span class="lineno"> 556</span> </div> <div class="line"><a name="l00570"></a><span class="lineno"> 570</span>  <span class="keyword">virtual</span> <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>* getFormat(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& formatName, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00571"></a><span class="lineno"> 571</span> </div> <div class="line"><a name="l00585"></a><span class="lineno"> 585</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> setFormat(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& formatName, <span class="keyword">const</span> <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>& format, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00586"></a><span class="lineno"> 586</span> </div> <div class="line"><a name="l00601"></a><span class="lineno"> 601</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> adoptFormat(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& formatName, <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>* formatToAdopt, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00602"></a><span class="lineno"> 602</span> </div> <div class="line"><a name="l00615"></a><span class="lineno"> 615</span>  <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>** getFormats(int32_t& count) <span class="keyword">const</span>;</div> <div class="line"><a name="l00616"></a><span class="lineno"> 616</span> </div> <div class="line"><a name="l00617"></a><span class="lineno"> 617</span> </div> <div class="line"><a name="l00618"></a><span class="lineno"> 618</span>  <span class="keyword">using</span> <a class="code" href="classFormat.html#af3f0b157f07d6e9f908da69c99239600" title="Formats an object to produce a string.">Format::format</a>;</div> <div class="line"><a name="l00619"></a><span class="lineno"> 619</span> </div> <div class="line"><a name="l00637"></a><span class="lineno"> 637</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& <a class="code" href="classFormat.html#af3f0b157f07d6e9f908da69c99239600" title="Formats an object to produce a string.">format</a>(<span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* source,</div> <div class="line"><a name="l00638"></a><span class="lineno"> 638</span>  int32_t count,</div> <div class="line"><a name="l00639"></a><span class="lineno"> 639</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& appendTo,</div> <div class="line"><a name="l00640"></a><span class="lineno"> 640</span>  <a class="code" href="classFieldPosition.html" title="FieldPosition is a simple class used by Format and its subclasses to identify fields in formatted out...">FieldPosition</a>& ignore,</div> <div class="line"><a name="l00641"></a><span class="lineno"> 641</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status) <span class="keyword">const</span>;</div> <div class="line"><a name="l00642"></a><span class="lineno"> 642</span> </div> <div class="line"><a name="l00660"></a><span class="lineno"> 660</span>  <span class="keyword">static</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& <a class="code" href="classFormat.html#af3f0b157f07d6e9f908da69c99239600" title="Formats an object to produce a string.">format</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00661"></a><span class="lineno"> 661</span>  <span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* arguments,</div> <div class="line"><a name="l00662"></a><span class="lineno"> 662</span>  int32_t count,</div> <div class="line"><a name="l00663"></a><span class="lineno"> 663</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& appendTo,</div> <div class="line"><a name="l00664"></a><span class="lineno"> 664</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00665"></a><span class="lineno"> 665</span> </div> <div class="line"><a name="l00686"></a><span class="lineno"> 686</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& <a class="code" href="classFormat.html#af3f0b157f07d6e9f908da69c99239600" title="Formats an object to produce a string.">format</a>(<span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>& obj,</div> <div class="line"><a name="l00687"></a><span class="lineno"> 687</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& appendTo,</div> <div class="line"><a name="l00688"></a><span class="lineno"> 688</span>  <a class="code" href="classFieldPosition.html" title="FieldPosition is a simple class used by Format and its subclasses to identify fields in formatted out...">FieldPosition</a>& pos,</div> <div class="line"><a name="l00689"></a><span class="lineno"> 689</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status) <span class="keyword">const</span>;</div> <div class="line"><a name="l00690"></a><span class="lineno"> 690</span> </div> <div class="line"><a name="l00705"></a><span class="lineno"> 705</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& <a class="code" href="classFormat.html#af3f0b157f07d6e9f908da69c99239600" title="Formats an object to produce a string.">format</a>(<span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>& obj,</div> <div class="line"><a name="l00706"></a><span class="lineno"> 706</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& appendTo,</div> <div class="line"><a name="l00707"></a><span class="lineno"> 707</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status) <span class="keyword">const</span>;</div> <div class="line"><a name="l00708"></a><span class="lineno"> 708</span> </div> <div class="line"><a name="l00709"></a><span class="lineno"> 709</span> </div> <div class="line"><a name="l00728"></a><span class="lineno"> 728</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& <a class="code" href="classFormat.html#af3f0b157f07d6e9f908da69c99239600" title="Formats an object to produce a string.">format</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>* argumentNames,</div> <div class="line"><a name="l00729"></a><span class="lineno"> 729</span>  <span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* arguments,</div> <div class="line"><a name="l00730"></a><span class="lineno"> 730</span>  int32_t count,</div> <div class="line"><a name="l00731"></a><span class="lineno"> 731</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& appendTo,</div> <div class="line"><a name="l00732"></a><span class="lineno"> 732</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status) <span class="keyword">const</span>;</div> <div class="line"><a name="l00746"></a><span class="lineno"> 746</span>  <span class="keyword">virtual</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* parse(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& source,</div> <div class="line"><a name="l00747"></a><span class="lineno"> 747</span>  <a class="code" href="classParsePosition.html" title="ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...">ParsePosition</a>& pos,</div> <div class="line"><a name="l00748"></a><span class="lineno"> 748</span>  int32_t& count) <span class="keyword">const</span>;</div> <div class="line"><a name="l00749"></a><span class="lineno"> 749</span> </div> <div class="line"><a name="l00765"></a><span class="lineno"> 765</span>  <span class="keyword">virtual</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* parse(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& source,</div> <div class="line"><a name="l00766"></a><span class="lineno"> 766</span>  int32_t& count,</div> <div class="line"><a name="l00767"></a><span class="lineno"> 767</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status) <span class="keyword">const</span>;</div> <div class="line"><a name="l00768"></a><span class="lineno"> 768</span> </div> <div class="line"><a name="l00781"></a><span class="lineno"> 781</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classFormat.html#aa53bea97b986c2f21e5638aa30aa08b7" title="Parse a string to produce an object.">parseObject</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& source,</div> <div class="line"><a name="l00782"></a><span class="lineno"> 782</span>  <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>& result,</div> <div class="line"><a name="l00783"></a><span class="lineno"> 783</span>  <a class="code" href="classParsePosition.html" title="ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...">ParsePosition</a>& pos) <span class="keyword">const</span>;</div> <div class="line"><a name="l00784"></a><span class="lineno"> 784</span> </div> <div class="line"><a name="l00804"></a><span class="lineno"> 804</span>  <span class="keyword">static</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> autoQuoteApostrophe(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00805"></a><span class="lineno"> 805</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00806"></a><span class="lineno"> 806</span> </div> <div class="line"><a name="l00807"></a><span class="lineno"> 807</span> </div> <div class="line"><a name="l00815"></a><span class="lineno"> 815</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> usesNamedArguments() <span class="keyword">const</span>;</div> <div class="line"><a name="l00816"></a><span class="lineno"> 816</span> </div> <div class="line"><a name="l00817"></a><span class="lineno"> 817</span> </div> <div class="line"><a name="l00828"></a><span class="lineno"> 828</span>  int32_t getArgTypeCount() <span class="keyword">const</span>;</div> <div class="line"><a name="l00829"></a><span class="lineno"> 829</span> </div> <div class="line"><a name="l00841"></a><span class="lineno"> 841</span>  <span class="keyword">virtual</span> <a class="code" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f" title="UClassID is used to identify classes without using RTTI, since RTTI is not yet supported by all C++ c...">UClassID</a> <a class="code" href="classUObject.html#a9b1acc95efd89cb86ec31f2dc947a262" title="ICU4C "poor man's RTTI", returns a UClassID for the actual ICU class.">getDynamicClassID</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div> <div class="line"><a name="l00842"></a><span class="lineno"> 842</span> </div> <div class="line"><a name="l00854"></a><span class="lineno"> 854</span>  <span class="keyword">static</span> <a class="code" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f" title="UClassID is used to identify classes without using RTTI, since RTTI is not yet supported by all C++ c...">UClassID</a> <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> getStaticClassID(<span class="keywordtype">void</span>);</div> <div class="line"><a name="l00855"></a><span class="lineno"> 855</span> </div> <div class="line"><a name="l00866"></a><span class="lineno"> 866</span>  <span class="keyword">static</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> equalFormats(<span class="keyword">const</span> <span class="keywordtype">void</span>* left, <span class="keyword">const</span> <span class="keywordtype">void</span>* right);</div> <div class="line"><a name="l00867"></a><span class="lineno"> 867</span> </div> <div class="line"><a name="l00868"></a><span class="lineno"> 868</span> <span class="keyword">private</span>:</div> <div class="line"><a name="l00869"></a><span class="lineno"> 869</span> </div> <div class="line"><a name="l00870"></a><span class="lineno"> 870</span>  <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a> fLocale;</div> <div class="line"><a name="l00871"></a><span class="lineno"> 871</span>  <a class="code" href="classMessagePattern.html" title="Parses and represents ICU MessageFormat patterns.">MessagePattern</a> msgPattern;</div> <div class="line"><a name="l00872"></a><span class="lineno"> 872</span>  <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>** formatAliases; <span class="comment">// see getFormats</span></div> <div class="line"><a name="l00873"></a><span class="lineno"> 873</span>  int32_t formatAliasesCapacity;</div> <div class="line"><a name="l00874"></a><span class="lineno"> 874</span> </div> <div class="line"><a name="l00875"></a><span class="lineno"> 875</span>  <a class="code" href="classMessageFormat.html">MessageFormat</a>(); <span class="comment">// default constructor not implemented</span></div> <div class="line"><a name="l00876"></a><span class="lineno"> 876</span> </div> <div class="line"><a name="l00883"></a><span class="lineno"> 883</span>  <span class="keyword">class </span><a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a" title="Set to export library symbols from inside the i18n library, and to import them from outside...">U_I18N_API</a> PluralSelectorProvider : <span class="keyword">public</span> PluralFormat::PluralSelector {</div> <div class="line"><a name="l00884"></a><span class="lineno"> 884</span>  <span class="keyword">public</span>:</div> <div class="line"><a name="l00885"></a><span class="lineno"> 885</span>  PluralSelectorProvider(<span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>* loc);</div> <div class="line"><a name="l00886"></a><span class="lineno"> 886</span>  <span class="keyword">virtual</span> ~PluralSelectorProvider();</div> <div class="line"><a name="l00887"></a><span class="lineno"> 887</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> select(<span class="keywordtype">double</span> number, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& ec) <span class="keyword">const</span>;</div> <div class="line"><a name="l00888"></a><span class="lineno"> 888</span> </div> <div class="line"><a name="l00889"></a><span class="lineno"> 889</span>  <span class="keywordtype">void</span> reset(<span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>* loc);</div> <div class="line"><a name="l00890"></a><span class="lineno"> 890</span>  <span class="keyword">private</span>:</div> <div class="line"><a name="l00891"></a><span class="lineno"> 891</span>  <span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>* locale;</div> <div class="line"><a name="l00892"></a><span class="lineno"> 892</span>  <a class="code" href="classPluralRules.html" title="Defines rules for mapping non-negative numeric values onto a small set of keywords.">PluralRules</a>* rules;</div> <div class="line"><a name="l00893"></a><span class="lineno"> 893</span>  };</div> <div class="line"><a name="l00894"></a><span class="lineno"> 894</span> </div> <div class="line"><a name="l00903"></a><span class="lineno"> 903</span>  <a class="code" href="classFormattable.html#a6116dce32d34fe529d3a15c4f4d587a9" title="Selector for flavor of data type contained within a Formattable object.">Formattable::Type</a>* argTypes;</div> <div class="line"><a name="l00904"></a><span class="lineno"> 904</span>  int32_t argTypeCount;</div> <div class="line"><a name="l00905"></a><span class="lineno"> 905</span>  int32_t argTypeCapacity;</div> <div class="line"><a name="l00906"></a><span class="lineno"> 906</span> </div> <div class="line"><a name="l00912"></a><span class="lineno"> 912</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> hasArgTypeConflicts;</div> <div class="line"><a name="l00913"></a><span class="lineno"> 913</span> </div> <div class="line"><a name="l00914"></a><span class="lineno"> 914</span>  <span class="comment">// Variable-size array management</span></div> <div class="line"><a name="l00915"></a><span class="lineno"> 915</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> allocateArgTypes(int32_t capacity, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00916"></a><span class="lineno"> 916</span> </div> <div class="line"><a name="l00924"></a><span class="lineno"> 924</span>  <a class="code" href="classNumberFormat.html" title="Abstract base class for all number formats.">NumberFormat</a>* defaultNumberFormat;</div> <div class="line"><a name="l00925"></a><span class="lineno"> 925</span>  <a class="code" href="classDateFormat.html" title="DateFormat is an abstract class for a family of classes that convert dates and times from their inter...">DateFormat</a>* defaultDateFormat;</div> <div class="line"><a name="l00926"></a><span class="lineno"> 926</span> </div> <div class="line"><a name="l00927"></a><span class="lineno"> 927</span>  UHashtable* cachedFormatters;</div> <div class="line"><a name="l00928"></a><span class="lineno"> 928</span>  UHashtable* customFormatArgStarts;</div> <div class="line"><a name="l00929"></a><span class="lineno"> 929</span> </div> <div class="line"><a name="l00930"></a><span class="lineno"> 930</span>  PluralSelectorProvider pluralProvider;</div> <div class="line"><a name="l00931"></a><span class="lineno"> 931</span> </div> <div class="line"><a name="l00936"></a><span class="lineno"> 936</span>  <span class="keyword">const</span> <a class="code" href="classNumberFormat.html" title="Abstract base class for all number formats.">NumberFormat</a>* getDefaultNumberFormat(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>&) <span class="keyword">const</span>;</div> <div class="line"><a name="l00937"></a><span class="lineno"> 937</span>  <span class="keyword">const</span> <a class="code" href="classDateFormat.html" title="DateFormat is an abstract class for a family of classes that convert dates and times from their inter...">DateFormat</a>* getDefaultDateFormat(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>&) <span class="keyword">const</span>;</div> <div class="line"><a name="l00938"></a><span class="lineno"> 938</span> </div> <div class="line"><a name="l00945"></a><span class="lineno"> 945</span>  <span class="keyword">static</span> int32_t findKeyword( <span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s,</div> <div class="line"><a name="l00946"></a><span class="lineno"> 946</span>  <span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be wchar_t if that is 16 bits wide; always assumed to be unsigned.">UChar</a> * <span class="keyword">const</span> *list);</div> <div class="line"><a name="l00947"></a><span class="lineno"> 947</span> </div> <div class="line"><a name="l00953"></a><span class="lineno"> 953</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& format(<span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* arguments,</div> <div class="line"><a name="l00954"></a><span class="lineno"> 954</span>  <span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> *argumentNames,</div> <div class="line"><a name="l00955"></a><span class="lineno"> 955</span>  int32_t cnt,</div> <div class="line"><a name="l00956"></a><span class="lineno"> 956</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& appendTo,</div> <div class="line"><a name="l00957"></a><span class="lineno"> 957</span>  <a class="code" href="classFieldPosition.html" title="FieldPosition is a simple class used by Format and its subclasses to identify fields in formatted out...">FieldPosition</a>* pos,</div> <div class="line"><a name="l00958"></a><span class="lineno"> 958</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status) <span class="keyword">const</span>;</div> <div class="line"><a name="l00959"></a><span class="lineno"> 959</span> </div> <div class="line"><a name="l00977"></a><span class="lineno"> 977</span>  <span class="keywordtype">void</span> format(int32_t msgStart,</div> <div class="line"><a name="l00978"></a><span class="lineno"> 978</span>  <span class="keywordtype">double</span> pluralNumber,</div> <div class="line"><a name="l00979"></a><span class="lineno"> 979</span>  <span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* arguments,</div> <div class="line"><a name="l00980"></a><span class="lineno"> 980</span>  <span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> *argumentNames,</div> <div class="line"><a name="l00981"></a><span class="lineno"> 981</span>  int32_t cnt,</div> <div class="line"><a name="l00982"></a><span class="lineno"> 982</span>  AppendableWrapper& appendTo,</div> <div class="line"><a name="l00983"></a><span class="lineno"> 983</span>  <a class="code" href="classFieldPosition.html" title="FieldPosition is a simple class used by Format and its subclasses to identify fields in formatted out...">FieldPosition</a>* pos,</div> <div class="line"><a name="l00984"></a><span class="lineno"> 984</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& success) <span class="keyword">const</span>;</div> <div class="line"><a name="l00985"></a><span class="lineno"> 985</span> </div> <div class="line"><a name="l00986"></a><span class="lineno"> 986</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> getArgName(int32_t partIndex);</div> <div class="line"><a name="l00987"></a><span class="lineno"> 987</span> </div> <div class="line"><a name="l00988"></a><span class="lineno"> 988</span>  <span class="keywordtype">void</span> setArgStartFormat(int32_t argStart, <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>* formatter, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00989"></a><span class="lineno"> 989</span> </div> <div class="line"><a name="l00990"></a><span class="lineno"> 990</span>  <span class="keywordtype">void</span> setCustomArgStartFormat(int32_t argStart, <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>* formatter, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00991"></a><span class="lineno"> 991</span> </div> <div class="line"><a name="l00992"></a><span class="lineno"> 992</span>  int32_t nextTopLevelArgStart(int32_t partIndex) <span class="keyword">const</span>;</div> <div class="line"><a name="l00993"></a><span class="lineno"> 993</span> </div> <div class="line"><a name="l00994"></a><span class="lineno"> 994</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> argNameMatches(int32_t partIndex, <span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& argName, int32_t argNumber);</div> <div class="line"><a name="l00995"></a><span class="lineno"> 995</span> </div> <div class="line"><a name="l00996"></a><span class="lineno"> 996</span>  <span class="keywordtype">void</span> cacheExplicitFormats(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00997"></a><span class="lineno"> 997</span> </div> <div class="line"><a name="l00998"></a><span class="lineno"> 998</span>  <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>* createAppropriateFormat(<a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& type,</div> <div class="line"><a name="l00999"></a><span class="lineno"> 999</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& style,</div> <div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>  <a class="code" href="classFormattable.html#a6116dce32d34fe529d3a15c4f4d587a9" title="Selector for flavor of data type contained within a Formattable object.">Formattable::Type</a>& formattableType,</div> <div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>  <a class="code" href="structUParseError.html" title="A UParseError struct is used to returned detailed information about parsing errors.">UParseError</a>& parseError,</div> <div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& ec);</div> <div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> </div> <div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>  <span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* getArgFromListByName(<span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* arguments,</div> <div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>  <span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> *argumentNames,</div> <div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>  int32_t cnt, <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& name) <span class="keyword">const</span>;</div> <div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> </div> <div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>  <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* parse(int32_t msgStart,</div> <div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>  <span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& source,</div> <div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>  <a class="code" href="classParsePosition.html" title="ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...">ParsePosition</a>& pos,</div> <div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>  int32_t& count,</div> <div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& ec) <span class="keyword">const</span>;</div> <div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> </div> <div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>  <a class="code" href="classFieldPosition.html" title="FieldPosition is a simple class used by Format and its subclasses to identify fields in formatted out...">FieldPosition</a>* updateMetaData(AppendableWrapper& dest, int32_t prevLength,</div> <div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>  <a class="code" href="classFieldPosition.html" title="FieldPosition is a simple class used by Format and its subclasses to identify fields in formatted out...">FieldPosition</a>* fp, <span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* argId) <span class="keyword">const</span>;</div> <div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> </div> <div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>  <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>* getCachedFormatter(int32_t argumentNumber) <span class="keyword">const</span>;</div> <div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> </div> <div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> getLiteralStringUntilNextArgument(int32_t from) <span class="keyword">const</span>;</div> <div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> </div> <div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>  <span class="keywordtype">void</span> copyObjects(<span class="keyword">const</span> <a class="code" href="classMessageFormat.html">MessageFormat</a>& that, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& ec);</div> <div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> </div> <div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>  <span class="keywordtype">void</span> formatComplexSubMessage(int32_t msgStart,</div> <div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>  <span class="keywordtype">double</span> pluralNumber,</div> <div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>  <span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>* arguments,</div> <div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>  <span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> *argumentNames,</div> <div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>  int32_t cnt,</div> <div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>  AppendableWrapper& appendTo,</div> <div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& success) <span class="keyword">const</span>;</div> <div class="line"><a name="l01030"></a><span class="lineno"> 1030</span> </div> <div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>  <a class="code" href="classNumberFormat.html" title="Abstract base class for all number formats.">NumberFormat</a>* createIntegerFormat(<span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>& locale, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status) <span class="keyword">const</span>;</div> <div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> </div> <div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>  <span class="keyword">const</span> <a class="code" href="classFormattable.html#a6116dce32d34fe529d3a15c4f4d587a9" title="Selector for flavor of data type contained within a Formattable object.">Formattable::Type</a>* getArgTypeList(int32_t& listCount)<span class="keyword"> const </span>{</div> <div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>  listCount = argTypeCount;</div> <div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>  <span class="keywordflow">return</span> argTypes;</div> <div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>  }</div> <div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> </div> <div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>  <span class="keywordtype">void</span> resetPattern();</div> <div class="line"><a name="l01053"></a><span class="lineno"> 1053</span> </div> <div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>  <span class="keyword">class </span><a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a" title="Set to export library symbols from inside the i18n library, and to import them from outside...">U_I18N_API</a> DummyFormat : <span class="keyword">public</span> <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a> {</div> <div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>  <span class="keyword">public</span>:</div> <div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="stringpiece_8h.html#a7652049cbac0bfeae2cd2aa4514a3352" title="Global operator == for StringPiece.">operator==</a>(<span class="keyword">const</span> <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>&) <span class="keyword">const</span>;</div> <div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>  <span class="keyword">virtual</span> <a class="code" href="classFormat.html" title="Base class for all formats.">Format</a>* clone() <span class="keyword">const</span>;</div> <div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& format(<span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>&,</div> <div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& appendTo,</div> <div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>  <a class="code" href="classFieldPosition.html" title="FieldPosition is a simple class used by Format and its subclasses to identify fields in formatted out...">FieldPosition</a>&,</div> <div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status) <span class="keyword">const</span>;</div> <div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> parseObject(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&,</div> <div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>  <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>&,</div> <div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>  <a class="code" href="classParsePosition.html" title="ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...">ParsePosition</a>&) <span class="keyword">const</span>;</div> <div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>  <span class="keyword">virtual</span> <a class="code" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f" title="UClassID is used to identify classes without using RTTI, since RTTI is not yet supported by all C++ c...">UClassID</a> getDynamicClassID() <span class="keyword">const</span>;</div> <div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>  };</div> <div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> </div> <div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>  <span class="keyword">friend</span> <span class="keyword">class </span>MessageFormatAdapter; <span class="comment">// getFormatTypeList() access</span></div> <div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> };</div> <div class="line"><a name="l01075"></a><span class="lineno"> 1075</span> </div> <div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> <span class="keyword">inline</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&</div> <div class="line"><a name="l01077"></a><span class="lineno"><a class="code" href="classMessageFormat.html#a7e78ae8192e0889a196b0b4ae86a3a6a"> 1077</a></span> <a class="code" href="classMessageFormat.html#ac984e47d8f99db7f623bd60f856f8666" title="Formats the given array of arguments into a user-readable string.">MessageFormat::format</a>(<span class="keyword">const</span> <a class="code" href="classFormattable.html" title="Formattable objects can be passed to the Format class or its subclasses for formatting.">Formattable</a>& obj,</div> <div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& appendTo,</div> <div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status)<span class="keyword"> const </span>{</div> <div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>  <span class="keywordflow">return</span> <a class="code" href="classMessageFormat.html#ac984e47d8f99db7f623bd60f856f8666" title="Formats the given array of arguments into a user-readable string.">Format::format</a>(obj, appendTo, status);</div> <div class="line"><a name="l01081"></a><span class="lineno"> 1081</span> }</div> <div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> </div> <div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> </div> <div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> <a class="code" href="uversion_8h.html#a3da1f00f3b02976ac53c014a3e4c0933" title="This is used to end a declaration of a public ICU C++ API.">U_NAMESPACE_END</a></div> <div class="line"><a name="l01085"></a><span class="lineno"> 1085</span> </div> <div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> <span class="preprocessor">#endif </span><span class="comment">/* #if !UCONFIG_NO_FORMATTING */</span><span class="preprocessor"></span></div> <div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> <span class="preprocessor"></span></div> <div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> <span class="preprocessor">#endif // _MSGFMT</span></div> <div class="line"><a name="l01089"></a><span class="lineno"> 1089</span> <span class="preprocessor"></span><span class="comment">//eof</span></div> </div><!-- fragment --></div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.1.1 </small></address> </body> </html>