<!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.3.1"/> <title>ICU 49.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="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 49.1.1  <span id="projectnumber">49.1.1</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.3.1 --> <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> </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> <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-2012, 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="l00322"></a><span class="lineno"><a class="code" href="classMessageFormat.html"> 322</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="l00323"></a><span class="lineno"> 323</span> <span class="keyword">public</span>:</div> <div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="preprocessor">#ifndef U_HIDE_OBSOLETE_API</span></div> <div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00330"></a><span class="lineno"><a class="code" href="classMessageFormat.html#a3b02759e9345bba433598ca169fe2626"> 330</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="l00336"></a><span class="lineno"><a class="code" href="classMessageFormat.html#a3b02759e9345bba433598ca169fe2626a2c4649766d55fba1106595c70fab6a79"> 336</a></span>  kMaxFormat = 10</div> <div class="line"><a name="l00337"></a><span class="lineno"> 337</span>  };</div> <div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_OBSOLETE_API */</span><span class="preprocessor"></span></div> <div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00349"></a><span class="lineno"> 349</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="l00350"></a><span class="lineno"> 350</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="l00351"></a><span class="lineno"> 351</span> </div> <div class="line"><a name="l00360"></a><span class="lineno"> 360</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="l00361"></a><span class="lineno"> 361</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="l00362"></a><span class="lineno"> 362</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="l00373"></a><span class="lineno"> 373</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="l00374"></a><span class="lineno"> 374</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="l00375"></a><span class="lineno"> 375</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="l00376"></a><span class="lineno"> 376</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="l00381"></a><span class="lineno"> 381</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="l00382"></a><span class="lineno"> 382</span> </div> <div class="line"><a name="l00387"></a><span class="lineno"> 387</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="l00388"></a><span class="lineno"> 388</span> </div> <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  <span class="keyword">virtual</span> ~<a class="code" href="classMessageFormat.html">MessageFormat</a>();</div> <div class="line"><a name="l00394"></a><span class="lineno"> 394</span> </div> <div class="line"><a name="l00400"></a><span class="lineno"> 400</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="l00401"></a><span class="lineno"> 401</span> </div> <div class="line"><a name="l00409"></a><span class="lineno"> 409</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="l00410"></a><span class="lineno"> 410</span> </div> <div class="line"><a name="l00416"></a><span class="lineno"> 416</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="l00417"></a><span class="lineno"> 417</span> </div> <div class="line"><a name="l00424"></a><span class="lineno"> 424</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="l00425"></a><span class="lineno"> 425</span> </div> <div class="line"><a name="l00434"></a><span class="lineno"> 434</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="l00435"></a><span class="lineno"> 435</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="l00446"></a><span class="lineno"> 446</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="l00447"></a><span class="lineno"> 447</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="l00448"></a><span class="lineno"> 448</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="l00449"></a><span class="lineno"> 449</span> </div> <div class="line"><a name="l00468"></a><span class="lineno"> 468</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="l00469"></a><span class="lineno"> 469</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="l00470"></a><span class="lineno"> 470</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="l00471"></a><span class="lineno"> 471</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="l00472"></a><span class="lineno"> 472</span> </div> <div class="line"><a name="l00477"></a><span class="lineno"><a class="code" href="classMessageFormat.html#ad9115365d575c42997d3724e99f22f31"> 477</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="l00478"></a><span class="lineno"> 478</span>  <span class="keywordflow">return</span> msgPattern.getApostropheMode();</div> <div class="line"><a name="l00479"></a><span class="lineno"> 479</span>  }</div> <div class="line"><a name="l00480"></a><span class="lineno"> 480</span> </div> <div class="line"><a name="l00489"></a><span class="lineno"> 489</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="l00490"></a><span class="lineno"> 490</span> </div> <div class="line"><a name="l00507"></a><span class="lineno"> 507</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="l00508"></a><span class="lineno"> 508</span> </div> <div class="line"><a name="l00523"></a><span class="lineno"> 523</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="l00524"></a><span class="lineno"> 524</span> </div> <div class="line"><a name="l00525"></a><span class="lineno"> 525</span> </div> <div class="line"><a name="l00540"></a><span class="lineno"> 540</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="l00541"></a><span class="lineno"> 541</span> </div> <div class="line"><a name="l00551"></a><span class="lineno"> 551</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="l00552"></a><span class="lineno"> 552</span> </div> <div class="line"><a name="l00561"></a><span class="lineno"> 561</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="l00562"></a><span class="lineno"> 562</span> </div> <div class="line"><a name="l00576"></a><span class="lineno"> 576</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="l00577"></a><span class="lineno"> 577</span> </div> <div class="line"><a name="l00591"></a><span class="lineno"> 591</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="l00592"></a><span class="lineno"> 592</span> </div> <div class="line"><a name="l00607"></a><span class="lineno"> 607</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="l00608"></a><span class="lineno"> 608</span> </div> <div class="line"><a name="l00621"></a><span class="lineno"> 621</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="l00622"></a><span class="lineno"> 622</span> </div> <div class="line"><a name="l00623"></a><span class="lineno"> 623</span> </div> <div class="line"><a name="l00624"></a><span class="lineno"> 624</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="l00625"></a><span class="lineno"> 625</span> </div> <div class="line"><a name="l00643"></a><span class="lineno"> 643</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="l00644"></a><span class="lineno"> 644</span>  int32_t count,</div> <div class="line"><a name="l00645"></a><span class="lineno"> 645</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="l00646"></a><span class="lineno"> 646</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="l00647"></a><span class="lineno"> 647</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="l00648"></a><span class="lineno"> 648</span> </div> <div class="line"><a name="l00666"></a><span class="lineno"> 666</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="l00667"></a><span class="lineno"> 667</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="l00668"></a><span class="lineno"> 668</span>  int32_t count,</div> <div class="line"><a name="l00669"></a><span class="lineno"> 669</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="l00670"></a><span class="lineno"> 670</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="l00671"></a><span class="lineno"> 671</span> </div> <div class="line"><a name="l00692"></a><span class="lineno"> 692</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="l00693"></a><span class="lineno"> 693</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="l00694"></a><span class="lineno"> 694</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="l00695"></a><span class="lineno"> 695</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="l00696"></a><span class="lineno"> 696</span> </div> <div class="line"><a name="l00711"></a><span class="lineno"> 711</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="l00712"></a><span class="lineno"> 712</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="l00713"></a><span class="lineno"> 713</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="l00714"></a><span class="lineno"> 714</span> </div> <div class="line"><a name="l00715"></a><span class="lineno"> 715</span> </div> <div class="line"><a name="l00734"></a><span class="lineno"> 734</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="l00735"></a><span class="lineno"> 735</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="l00736"></a><span class="lineno"> 736</span>  int32_t count,</div> <div class="line"><a name="l00737"></a><span class="lineno"> 737</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="l00738"></a><span class="lineno"> 738</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="l00752"></a><span class="lineno"> 752</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="l00753"></a><span class="lineno"> 753</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="l00754"></a><span class="lineno"> 754</span>  int32_t& count) <span class="keyword">const</span>;</div> <div class="line"><a name="l00755"></a><span class="lineno"> 755</span> </div> <div class="line"><a name="l00771"></a><span class="lineno"> 771</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="l00772"></a><span class="lineno"> 772</span>  int32_t& count,</div> <div class="line"><a name="l00773"></a><span class="lineno"> 773</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="l00774"></a><span class="lineno"> 774</span> </div> <div class="line"><a name="l00787"></a><span class="lineno"> 787</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="l00788"></a><span class="lineno"> 788</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="l00789"></a><span class="lineno"> 789</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="l00790"></a><span class="lineno"> 790</span> </div> <div class="line"><a name="l00810"></a><span class="lineno"> 810</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="l00811"></a><span class="lineno"> 811</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="l00812"></a><span class="lineno"> 812</span> </div> <div class="line"><a name="l00813"></a><span class="lineno"> 813</span> </div> <div class="line"><a name="l00821"></a><span class="lineno"> 821</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="l00822"></a><span class="lineno"> 822</span> </div> <div class="line"><a name="l00823"></a><span class="lineno"> 823</span> </div> <div class="line"><a name="l00824"></a><span class="lineno"> 824</span> <span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div> <div class="line"><a name="l00825"></a><span class="lineno"> 825</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00835"></a><span class="lineno"> 835</span>  int32_t getArgTypeCount() <span class="keyword">const</span>;</div> <div class="line"><a name="l00836"></a><span class="lineno"> 836</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div> <div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00849"></a><span class="lineno"> 849</span>  <span class="keyword">virtual</span> <a class="code" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f" title="UClassID is used to identify classes without using the compiler's RTTI.">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="l00850"></a><span class="lineno"> 850</span> </div> <div class="line"><a name="l00862"></a><span class="lineno"> 862</span>  <span class="keyword">static</span> <a class="code" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f" title="UClassID is used to identify classes without using the compiler's RTTI.">UClassID</a> U_EXPORT2 getStaticClassID(<span class="keywordtype">void</span>);</div> <div class="line"><a name="l00863"></a><span class="lineno"> 863</span> </div> <div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div> <div class="line"><a name="l00865"></a><span class="lineno"> 865</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00875"></a><span class="lineno"> 875</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="l00876"></a><span class="lineno"> 876</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div> <div class="line"><a name="l00877"></a><span class="lineno"> 877</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00878"></a><span class="lineno"> 878</span> <span class="keyword">private</span>:</div> <div class="line"><a name="l00879"></a><span class="lineno"> 879</span> </div> <div class="line"><a name="l00880"></a><span class="lineno"> 880</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="l00881"></a><span class="lineno"> 881</span>  <a class="code" href="classMessagePattern.html" title="Parses and represents ICU MessageFormat patterns.">MessagePattern</a> msgPattern;</div> <div class="line"><a name="l00882"></a><span class="lineno"> 882</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="l00883"></a><span class="lineno"> 883</span>  int32_t formatAliasesCapacity;</div> <div class="line"><a name="l00884"></a><span class="lineno"> 884</span> </div> <div class="line"><a name="l00885"></a><span class="lineno"> 885</span>  <a class="code" href="classMessageFormat.html">MessageFormat</a>(); <span class="comment">// default constructor not implemented</span></div> <div class="line"><a name="l00886"></a><span class="lineno"> 886</span> </div> <div class="line"><a name="l00893"></a><span class="lineno"> 893</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> <a class="code" href="classPluralFormat_1_1PluralSelector.html">PluralFormat::PluralSelector</a> {</div> <div class="line"><a name="l00894"></a><span class="lineno"> 894</span>  <span class="keyword">public</span>:</div> <div class="line"><a name="l00895"></a><span class="lineno"> 895</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="l00896"></a><span class="lineno"> 896</span>  <span class="keyword">virtual</span> ~PluralSelectorProvider();</div> <div class="line"><a name="l00897"></a><span class="lineno"> 897</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="l00898"></a><span class="lineno"> 898</span> </div> <div class="line"><a name="l00899"></a><span class="lineno"> 899</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="l00900"></a><span class="lineno"> 900</span>  <span class="keyword">private</span>:</div> <div class="line"><a name="l00901"></a><span class="lineno"> 901</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="l00902"></a><span class="lineno"> 902</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="l00903"></a><span class="lineno"> 903</span>  };</div> <div class="line"><a name="l00904"></a><span class="lineno"> 904</span> </div> <div class="line"><a name="l00913"></a><span class="lineno"> 913</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="l00914"></a><span class="lineno"> 914</span>  int32_t argTypeCount;</div> <div class="line"><a name="l00915"></a><span class="lineno"> 915</span>  int32_t argTypeCapacity;</div> <div class="line"><a name="l00916"></a><span class="lineno"> 916</span> </div> <div class="line"><a name="l00922"></a><span class="lineno"> 922</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> hasArgTypeConflicts;</div> <div class="line"><a name="l00923"></a><span class="lineno"> 923</span> </div> <div class="line"><a name="l00924"></a><span class="lineno"> 924</span>  <span class="comment">// Variable-size array management</span></div> <div class="line"><a name="l00925"></a><span class="lineno"> 925</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="l00926"></a><span class="lineno"> 926</span> </div> <div class="line"><a name="l00934"></a><span class="lineno"> 934</span>  <a class="code" href="classNumberFormat.html" title="Abstract base class for all number formats.">NumberFormat</a>* defaultNumberFormat;</div> <div class="line"><a name="l00935"></a><span class="lineno"> 935</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="l00936"></a><span class="lineno"> 936</span> </div> <div class="line"><a name="l00937"></a><span class="lineno"> 937</span>  UHashtable* cachedFormatters;</div> <div class="line"><a name="l00938"></a><span class="lineno"> 938</span>  UHashtable* customFormatArgStarts;</div> <div class="line"><a name="l00939"></a><span class="lineno"> 939</span> </div> <div class="line"><a name="l00940"></a><span class="lineno"> 940</span>  PluralSelectorProvider pluralProvider;</div> <div class="line"><a name="l00941"></a><span class="lineno"> 941</span> </div> <div class="line"><a name="l00946"></a><span class="lineno"> 946</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="l00947"></a><span class="lineno"> 947</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="l00948"></a><span class="lineno"> 948</span> </div> <div class="line"><a name="l00955"></a><span class="lineno"> 955</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="l00956"></a><span class="lineno"> 956</span>  <span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be char16_t, if available, or wchar_t if that is 16 bits wide; always assumed to be u...">UChar</a> * <span class="keyword">const</span> *list);</div> <div class="line"><a name="l00957"></a><span class="lineno"> 957</span> </div> <div class="line"><a name="l00963"></a><span class="lineno"> 963</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="classPluralFormat.html#a574169695e8a514c4ba0f2dd070d0e71" title="Formats a plural message for a given number.">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>* arguments,</div> <div class="line"><a name="l00964"></a><span class="lineno"> 964</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="l00965"></a><span class="lineno"> 965</span>  int32_t cnt,</div> <div class="line"><a name="l00966"></a><span class="lineno"> 966</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="l00967"></a><span class="lineno"> 967</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="l00968"></a><span class="lineno"> 968</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="l00969"></a><span class="lineno"> 969</span> </div> <div class="line"><a name="l00987"></a><span class="lineno"> 987</span>  <span class="keywordtype">void</span> <a class="code" href="classPluralFormat.html#a574169695e8a514c4ba0f2dd070d0e71" title="Formats a plural message for a given number.">format</a>(int32_t msgStart,</div> <div class="line"><a name="l00988"></a><span class="lineno"> 988</span>  <span class="keywordtype">double</span> pluralNumber,</div> <div class="line"><a name="l00989"></a><span class="lineno"> 989</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="l00990"></a><span class="lineno"> 990</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="l00991"></a><span class="lineno"> 991</span>  int32_t cnt,</div> <div class="line"><a name="l00992"></a><span class="lineno"> 992</span>  AppendableWrapper& appendTo,</div> <div class="line"><a name="l00993"></a><span class="lineno"> 993</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="l00994"></a><span class="lineno"> 994</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="l00995"></a><span class="lineno"> 995</span> </div> <div class="line"><a name="l00996"></a><span class="lineno"> 996</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="l00997"></a><span class="lineno"> 997</span> </div> <div class="line"><a name="l00998"></a><span class="lineno"> 998</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="l00999"></a><span class="lineno"> 999</span> </div> <div class="line"><a name="l01000"></a><span class="lineno"> 1000</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="l01001"></a><span class="lineno"> 1001</span> </div> <div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>  int32_t nextTopLevelArgStart(int32_t partIndex) <span class="keyword">const</span>;</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>  <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="l01005"></a><span class="lineno"> 1005</span> </div> <div class="line"><a name="l01006"></a><span class="lineno"> 1006</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="l01007"></a><span class="lineno"> 1007</span> </div> <div class="line"><a name="l01008"></a><span class="lineno"> 1008</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="l01009"></a><span class="lineno"> 1009</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="l01010"></a><span class="lineno"> 1010</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="l01011"></a><span class="lineno"> 1011</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="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);</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>  <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="l01015"></a><span class="lineno"> 1015</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="l01016"></a><span class="lineno"> 1016</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="l01017"></a><span class="lineno"> 1017</span> </div> <div class="line"><a name="l01018"></a><span class="lineno"> 1018</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="l01019"></a><span class="lineno"> 1019</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="l01020"></a><span class="lineno"> 1020</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="l01021"></a><span class="lineno"> 1021</span>  int32_t& count,</div> <div class="line"><a name="l01022"></a><span class="lineno"> 1022</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="l01023"></a><span class="lineno"> 1023</span> </div> <div class="line"><a name="l01024"></a><span class="lineno"> 1024</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="l01025"></a><span class="lineno"> 1025</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="l01026"></a><span class="lineno"> 1026</span> </div> <div class="line"><a name="l01027"></a><span class="lineno"> 1027</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="l01028"></a><span class="lineno"> 1028</span> </div> <div class="line"><a name="l01029"></a><span class="lineno"> 1029</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="l01030"></a><span class="lineno"> 1030</span> </div> <div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>  <span class="keywordtype">void</span> <a class="code" href="classPluralFormat.html#a8f5ec6c934f17c051b914cb5749e0ccf" title="Copies dynamically allocated values (pointer fields).">copyObjects</a>(<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="l01032"></a><span class="lineno"> 1032</span> </div> <div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>  <span class="keywordtype">void</span> formatComplexSubMessage(int32_t msgStart,</div> <div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>  <span class="keywordtype">double</span> pluralNumber,</div> <div class="line"><a name="l01035"></a><span class="lineno"> 1035</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="l01036"></a><span class="lineno"> 1036</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="l01037"></a><span class="lineno"> 1037</span>  int32_t cnt,</div> <div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>  AppendableWrapper& appendTo,</div> <div class="line"><a name="l01039"></a><span class="lineno"> 1039</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="l01040"></a><span class="lineno"> 1040</span> </div> <div class="line"><a name="l01044"></a><span class="lineno"> 1044</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="l01045"></a><span class="lineno"> 1045</span> </div> <div class="line"><a name="l01054"></a><span class="lineno"> 1054</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="l01055"></a><span class="lineno"> 1055</span>  listCount = argTypeCount;</div> <div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>  <span class="keywordflow">return</span> argTypes;</div> <div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>  }</div> <div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> </div> <div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>  <span class="keywordtype">void</span> resetPattern();</div> <div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> </div> <div class="line"><a name="l01069"></a><span class="lineno"> 1069</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="l01070"></a><span class="lineno"> 1070</span>  <span class="keyword">public</span>:</div> <div class="line"><a name="l01071"></a><span class="lineno"> 1071</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="l01072"></a><span class="lineno"> 1072</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="l01073"></a><span class="lineno"> 1073</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="l01074"></a><span class="lineno"> 1074</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="l01075"></a><span class="lineno"> 1075</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="l01076"></a><span class="lineno"> 1076</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="l01077"></a><span class="lineno"> 1077</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="l01078"></a><span class="lineno"> 1078</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="l01079"></a><span class="lineno"> 1079</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="l01080"></a><span class="lineno"> 1080</span>  <span class="keyword">virtual</span> <a class="code" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f" title="UClassID is used to identify classes without using the compiler's RTTI.">UClassID</a> getDynamicClassID() <span class="keyword">const</span>;</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>  <span class="keyword">friend</span> <span class="keyword">class </span>MessageFormatAdapter; <span class="comment">// getFormatTypeList() access</span></div> <div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> };</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="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="l01087"></a><span class="lineno"><a class="code" href="classMessageFormat.html#a7e78ae8192e0889a196b0b4ae86a3a6a"> 1087</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="l01088"></a><span class="lineno"> 1088</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="l01089"></a><span class="lineno"> 1089</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="l01090"></a><span class="lineno"> 1090</span>  <span class="keywordflow">return</span> <a class="code" href="classFormat.html#af3f0b157f07d6e9f908da69c99239600" title="Formats an object to produce a string.">Format::format</a>(obj, appendTo, status);</div> <div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> }</div> <div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> </div> <div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> </div> <div class="line"><a name="l01094"></a><span class="lineno"> 1094</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="l01095"></a><span class="lineno"> 1095</span> </div> <div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> <span class="preprocessor">#endif </span><span class="comment">/* #if !UCONFIG_NO_FORMATTING */</span><span class="preprocessor"></span></div> <div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> <span class="preprocessor"></span></div> <div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> <span class="preprocessor">#endif // _MSGFMT</span></div> <div class="line"><a name="l01099"></a><span class="lineno"> 1099</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.3.1 </small></address> </body> </html>