📁 File Manager Pro
v10.0.3 | PHP: 8.1.34
Server: Apache
2026-06-22 15:30:48
📂
/ (Root)
/
opt
/
alt
/
alt-nodejs18
/
root
/
usr
/
share
/
doc
/
alt-nodejs18-libicu-doc
📍 /opt/alt/alt-nodejs18/root/usr/share/doc/alt-nodejs18-libicu-doc
🔄 Refresh
✏️
Editing: msgfmt_8h_source.html
Read Only
<!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.14"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>ICU 74.2: i18n/unicode/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 id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">ICU 74.2  <span id="projectnumber">74.2</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.14 --> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',false,false,'search.php','Search'); }); /* @license-end */</script> <div id="main-nav"></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">// © 2016 and later: Unicode, Inc. and others.</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// License & terms of use: http://www.unicode.org/copyright.html</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">/*</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">* Copyright (C) 2007-2013, International Business Machines Corporation and</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">* others. All Rights Reserved.</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">********************************************************************************</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">* File MSGFMT.H</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">* Modification History:</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">*</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment">* Date Name Description</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">* 02/19/97 aliu Converted from java.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">* 03/20/97 helena Finished first cut of implementation.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">* 07/22/98 stephen Removed operator!= (defined in Format)</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment">* 08/19/2002 srl Removing Javaisms</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment">*******************************************************************************/</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#ifndef MSGFMT_H</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#define MSGFMT_H</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include "<a class="code" href="utypes_8h.html">unicode/utypes.h</a>"</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> </div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#if U_SHOW_CPLUSPLUS_API</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> </div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#if !UCONFIG_NO_FORMATTING</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "<a class="code" href="format_8h.html">unicode/format.h</a>"</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include "<a class="code" href="locid_8h.html">unicode/locid.h</a>"</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#include "<a class="code" href="messagepattern_8h.html">unicode/messagepattern.h</a>"</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#include "<a class="code" href="parseerr_8h.html">unicode/parseerr.h</a>"</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include "<a class="code" href="plurfmt_8h.html">unicode/plurfmt.h</a>"</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#include "<a class="code" href="plurrule_8h.html">unicode/plurrule.h</a>"</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <a class="code" href="umachine_8h.html#a82c853d86803ab75c89267be54fbac6a">U_CDECL_BEGIN</a></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment">// Forward declaration.</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">struct </span><a class="code" href="msgfmt_8h.html#a6c890111dda4b555e2a2ef52178b5129">UHashtable</a>;</div><div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="msgfmt_8h.html#a6c890111dda4b555e2a2ef52178b5129"> 43</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="msgfmt_8h.html#a6c890111dda4b555e2a2ef52178b5129">UHashtable</a> <a class="code" href="msgfmt_8h.html#a6c890111dda4b555e2a2ef52178b5129">UHashtable</a>; </div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <a class="code" href="umachine_8h.html#a1a820e5c6cbe8ac1742b654e6bf9ed7d">U_CDECL_END</a></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> U_NAMESPACE_BEGIN</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keyword">class </span>AppendableWrapper;</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keyword">class </span>DateFormat;</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keyword">class </span>NumberFormat;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div><div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="classicu_1_1MessageFormat.html"> 345</a></span> <span class="keyword">class </span><a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a> : <span class="keyword">public</span> <a class="code" href="classicu_1_1Format.html">Format</a> {</div><div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="preprocessor">#ifndef U_HIDE_OBSOLETE_API</span></div><div class="line"><a name="l00348"></a><span class="lineno"> 348</span> </div><div class="line"><a name="l00353"></a><span class="lineno"><a class="line" href="classicu_1_1MessageFormat.html#a746caee2c4690b86603b875eefdd7ac1"> 353</a></span>  <span class="keyword">enum</span> <a class="code" href="classicu_1_1MessageFormat.html#a746caee2c4690b86603b875eefdd7ac1">EFormatNumber</a> {</div><div class="line"><a name="l00359"></a><span class="lineno"><a class="line" href="classicu_1_1MessageFormat.html#a746caee2c4690b86603b875eefdd7ac1a5645953ab29b9297945b05223601a456"> 359</a></span>  kMaxFormat = 10</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>  };</div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_OBSOLETE_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span> </div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status);</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span> </div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span>  <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1Locale.html">Locale</a>& newLocale,</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>  <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1Locale.html">Locale</a>& newLocale,</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  <a class="code" href="structUParseError.html">UParseError</a>& parseError,</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00404"></a><span class="lineno"> 404</span>  <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a>&);</div><div class="line"><a name="l00405"></a><span class="lineno"> 405</span> </div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a>& <a class="code" href="classicu_1_1Format.html#a6e4a4f6e5eedfe8d949e9307191a3afc">operator=</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a>&);</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span> </div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  <span class="keyword">virtual</span> ~<a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a>();</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span> </div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a>* <a class="code" href="classicu_1_1Format.html#ad606fa4ed45908fe4220085c6276c65a">clone</a>() <span class="keyword">const override</span>;</div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span> </div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classicu_1_1Format.html#ae1e8e16cd0803127ac506d8de257ec4f">operator==</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1Format.html">Format</a>& other) <span class="keyword">const override</span>;</div><div class="line"><a name="l00433"></a><span class="lineno"> 433</span> </div><div class="line"><a name="l00439"></a><span class="lineno"> 439</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> setLocale(<span class="keyword">const</span> <a class="code" href="classicu_1_1Locale.html">Locale</a>& theLocale);</div><div class="line"><a name="l00440"></a><span class="lineno"> 440</span> </div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span>  <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classicu_1_1Locale.html">Locale</a>& <a class="code" href="classicu_1_1Format.html#afb8661d3a5d713adc9845c6c76de2a09">getLocale</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span> </div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> applyPattern(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> applyPattern(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  <a class="code" href="structUParseError.html">UParseError</a>& parseError,</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span> </div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> applyPattern(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>  <a class="code" href="messagepattern_8h.html#af6e0757e0eb81c980b01ee5d68a9978b">UMessagePatternApostropheMode</a> aposMode,</div><div class="line"><a name="l00493"></a><span class="lineno"> 493</span>  <a class="code" href="structUParseError.html">UParseError</a>* parseError,</div><div class="line"><a name="l00494"></a><span class="lineno"> 494</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span> </div><div class="line"><a name="l00500"></a><span class="lineno"><a class="line" href="classicu_1_1MessageFormat.html#a5960cf8a23f16609cbf1814c4339ce57"> 500</a></span>  <a class="code" href="messagepattern_8h.html#af6e0757e0eb81c980b01ee5d68a9978b">UMessagePatternApostropheMode</a> <a class="code" href="classicu_1_1MessageFormat.html#a5960cf8a23f16609cbf1814c4339ce57">getApostropheMode</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00501"></a><span class="lineno"> 501</span>  <span class="keywordflow">return</span> msgPattern.getApostropheMode();</div><div class="line"><a name="l00502"></a><span class="lineno"> 502</span>  }</div><div class="line"><a name="l00503"></a><span class="lineno"> 503</span> </div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& toPattern(<a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& appendTo) <span class="keyword">const</span>;</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span> </div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> adoptFormats(<a class="code" href="classicu_1_1Format.html">Format</a>** formatsToAdopt, int32_t count);</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span> </div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> setFormats(<span class="keyword">const</span> <a class="code" href="classicu_1_1Format.html">Format</a>** newFormats, int32_t cnt);</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span> </div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span> </div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> adoptFormat(int32_t formatNumber, <a class="code" href="classicu_1_1Format.html">Format</a>* formatToAdopt);</div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span> </div><div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> setFormat(int32_t formatNumber, <span class="keyword">const</span> <a class="code" href="classicu_1_1Format.html">Format</a>& format);</div><div class="line"><a name="l00575"></a><span class="lineno"> 575</span> </div><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1StringEnumeration.html">StringEnumeration</a>* getFormatNames(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00585"></a><span class="lineno"> 585</span> </div><div class="line"><a name="l00599"></a><span class="lineno"> 599</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1Format.html">Format</a>* getFormat(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& formatName, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00600"></a><span class="lineno"> 600</span> </div><div class="line"><a name="l00614"></a><span class="lineno"> 614</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> setFormat(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& formatName, <span class="keyword">const</span> <a class="code" href="classicu_1_1Format.html">Format</a>& format, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00615"></a><span class="lineno"> 615</span> </div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> adoptFormat(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& formatName, <a class="code" href="classicu_1_1Format.html">Format</a>* formatToAdopt, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span> </div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span>  <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classicu_1_1Format.html">Format</a>** getFormats(int32_t& count) <span class="keyword">const</span>;</div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span> </div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span> </div><div class="line"><a name="l00647"></a><span class="lineno"> 647</span>  <span class="keyword">using</span> <a class="code" href="classicu_1_1Format.html#affaf0088c4eb9976223a327bdc4f1dd0">Format::format</a>;</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>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& <a class="code" href="classicu_1_1Format.html#affaf0088c4eb9976223a327bdc4f1dd0">format</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1Formattable.html">Formattable</a>* source,</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span>  int32_t count,</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& appendTo,</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>  <a class="code" href="classicu_1_1FieldPosition.html">FieldPosition</a>& ignore,</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const</span>;</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span> </div><div class="line"><a name="l00689"></a><span class="lineno"> 689</span>  <span class="keyword">static</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& <a class="code" href="classicu_1_1Format.html#affaf0088c4eb9976223a327bdc4f1dd0">format</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00690"></a><span class="lineno"> 690</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1Formattable.html">Formattable</a>* arguments,</div><div class="line"><a name="l00691"></a><span class="lineno"> 691</span>  int32_t count,</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& appendTo,</div><div class="line"><a name="l00693"></a><span class="lineno"> 693</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span> </div><div class="line"><a name="l00715"></a><span class="lineno"> 715</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& <a class="code" href="classicu_1_1Format.html#affaf0088c4eb9976223a327bdc4f1dd0">format</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1Formattable.html">Formattable</a>& obj,</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& appendTo,</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>  <a class="code" href="classicu_1_1FieldPosition.html">FieldPosition</a>& pos,</div><div class="line"><a name="l00718"></a><span class="lineno"> 718</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const override</span>;</div><div class="line"><a name="l00719"></a><span class="lineno"> 719</span> </div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& <a class="code" href="classicu_1_1Format.html#affaf0088c4eb9976223a327bdc4f1dd0">format</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>* argumentNames,</div><div class="line"><a name="l00739"></a><span class="lineno"> 739</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1Formattable.html">Formattable</a>* arguments,</div><div class="line"><a name="l00740"></a><span class="lineno"> 740</span>  int32_t count,</div><div class="line"><a name="l00741"></a><span class="lineno"> 741</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& appendTo,</div><div class="line"><a name="l00742"></a><span class="lineno"> 742</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const</span>;</div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1Formattable.html">Formattable</a>* parse(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& source,</div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span>  <a class="code" href="classicu_1_1ParsePosition.html">ParsePosition</a>& pos,</div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span>  int32_t& count) <span class="keyword">const</span>;</div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span> </div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1Formattable.html">Formattable</a>* parse(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& source,</div><div class="line"><a name="l00776"></a><span class="lineno"> 776</span>  int32_t& count,</div><div class="line"><a name="l00777"></a><span class="lineno"> 777</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const</span>;</div><div class="line"><a name="l00778"></a><span class="lineno"> 778</span> </div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classicu_1_1Format.html#a292d797eb9d3bc8a42d8d8efba119a83">parseObject</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& source,</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span>  <a class="code" href="classicu_1_1Formattable.html">Formattable</a>& result,</div><div class="line"><a name="l00793"></a><span class="lineno"> 793</span>  <a class="code" href="classicu_1_1ParsePosition.html">ParsePosition</a>& pos) <span class="keyword">const override</span>;</div><div class="line"><a name="l00794"></a><span class="lineno"> 794</span> </div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span>  <span class="keyword">static</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> autoQuoteApostrophe(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</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="l00825"></a><span class="lineno"> 825</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> usesNamedArguments() <span class="keyword">const</span>;</div><div class="line"><a name="l00826"></a><span class="lineno"> 826</span> </div><div class="line"><a name="l00827"></a><span class="lineno"> 827</span> </div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span> <span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span> </div><div class="line"><a name="l00839"></a><span class="lineno"> 839</span>  int32_t getArgTypeCount() <span class="keyword">const</span>;</div><div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l00841"></a><span class="lineno"> 841</span> </div><div class="line"><a name="l00853"></a><span class="lineno"> 853</span>  <span class="keyword">virtual</span> <a class="code" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> <a class="code" href="classicu_1_1UObject.html#aca1169c4978c52ce2b76eda104e9a214">getDynamicClassID</a>(<span class="keywordtype">void</span>) <span class="keyword">const override</span>;</div><div class="line"><a name="l00854"></a><span class="lineno"> 854</span> </div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>  <span class="keyword">static</span> <a class="code" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> U_EXPORT2 getStaticClassID(<span class="keywordtype">void</span>);</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="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span> </div><div class="line"><a name="l00879"></a><span class="lineno"> 879</span>  <span class="keyword">static</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">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="l00880"></a><span class="lineno"> 880</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l00881"></a><span class="lineno"> 881</span> </div><div class="line"><a name="l00882"></a><span class="lineno"> 882</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span> </div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span>  <a class="code" href="classicu_1_1Locale.html">Locale</a> fLocale;</div><div class="line"><a name="l00885"></a><span class="lineno"> 885</span>  <a class="code" href="classicu_1_1MessagePattern.html">MessagePattern</a> msgPattern;</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>  <a class="code" href="classicu_1_1Format.html">Format</a>** formatAliases; <span class="comment">// see getFormats</span></div><div class="line"><a name="l00887"></a><span class="lineno"> 887</span>  int32_t formatAliasesCapacity;</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>  <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a>() = <span class="keyword">delete</span>; <span class="comment">// default constructor not implemented</span></div><div class="line"><a name="l00890"></a><span class="lineno"> 890</span> </div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>  <span class="keyword">class </span><a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> PluralSelectorProvider : <span class="keyword">public</span> PluralFormat::PluralSelector {</div><div class="line"><a name="l00898"></a><span class="lineno"> 898</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00899"></a><span class="lineno"> 899</span>  PluralSelectorProvider(<span class="keyword">const</span> <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a> &mf, <a class="code" href="upluralrules_8h.html#afceec9f2dee10dbf3ca0d694f66d5d3c">UPluralType</a> type);</div><div class="line"><a name="l00900"></a><span class="lineno"> 900</span>  <span class="keyword">virtual</span> ~PluralSelectorProvider();</div><div class="line"><a name="l00901"></a><span class="lineno"> 901</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> select(<span class="keywordtype">void</span> *ctx, <span class="keywordtype">double</span> number, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& ec) <span class="keyword">const override</span>;</div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span> </div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span>  <span class="keywordtype">void</span> reset();</div><div class="line"><a name="l00904"></a><span class="lineno"> 904</span>  <span class="keyword">private</span>:</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1MessageFormat.html">MessageFormat</a> &msgFormat;</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>  <a class="code" href="classicu_1_1PluralRules.html">PluralRules</a>* rules;</div><div class="line"><a name="l00907"></a><span class="lineno"> 907</span>  <a class="code" href="upluralrules_8h.html#afceec9f2dee10dbf3ca0d694f66d5d3c">UPluralType</a> type;</div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>  };</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span> </div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>  Formattable::Type* argTypes;</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>  int32_t argTypeCount;</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>  int32_t argTypeCapacity;</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span> </div><div class="line"><a name="l00927"></a><span class="lineno"> 927</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> hasArgTypeConflicts;</div><div class="line"><a name="l00928"></a><span class="lineno"> 928</span> </div><div class="line"><a name="l00929"></a><span class="lineno"> 929</span>  <span class="comment">// Variable-size array management</span></div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> allocateArgTypes(int32_t capacity, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span> </div><div class="line"><a name="l00939"></a><span class="lineno"> 939</span>  NumberFormat* defaultNumberFormat;</div><div class="line"><a name="l00940"></a><span class="lineno"> 940</span>  DateFormat* defaultDateFormat;</div><div class="line"><a name="l00941"></a><span class="lineno"> 941</span> </div><div class="line"><a name="l00942"></a><span class="lineno"> 942</span>  <a class="code" href="msgfmt_8h.html#a6c890111dda4b555e2a2ef52178b5129">UHashtable</a>* cachedFormatters;</div><div class="line"><a name="l00943"></a><span class="lineno"> 943</span>  <a class="code" href="msgfmt_8h.html#a6c890111dda4b555e2a2ef52178b5129">UHashtable</a>* customFormatArgStarts;</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span> </div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>  PluralSelectorProvider pluralProvider;</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>  PluralSelectorProvider ordinalProvider;</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span> </div><div class="line"><a name="l00952"></a><span class="lineno"> 952</span>  <span class="keyword">const</span> NumberFormat* getDefaultNumberFormat(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>&) <span class="keyword">const</span>;</div><div class="line"><a name="l00953"></a><span class="lineno"> 953</span>  <span class="keyword">const</span> DateFormat* getDefaultDateFormat(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>&) <span class="keyword">const</span>;</div><div class="line"><a name="l00954"></a><span class="lineno"> 954</span> </div><div class="line"><a name="l00961"></a><span class="lineno"> 961</span>  <span class="keyword">static</span> int32_t findKeyword( <span class="keyword">const</span> UnicodeString& s,</div><div class="line"><a name="l00962"></a><span class="lineno"> 962</span>  <span class="keyword">const</span> char16_t * <span class="keyword">const</span> *list);</div><div class="line"><a name="l00963"></a><span class="lineno"> 963</span> </div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>  UnicodeString& format(<span class="keyword">const</span> Formattable* arguments,</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>  <span class="keyword">const</span> UnicodeString *argumentNames,</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>  int32_t cnt,</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>  UnicodeString& appendTo,</div><div class="line"><a name="l00973"></a><span class="lineno"> 973</span>  FieldPosition* pos,</div><div class="line"><a name="l00974"></a><span class="lineno"> 974</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const</span>;</div><div class="line"><a name="l00975"></a><span class="lineno"> 975</span> </div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>  <span class="keywordtype">void</span> format(int32_t msgStart,</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>  <span class="keyword">const</span> <span class="keywordtype">void</span> *plNumber,</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>  <span class="keyword">const</span> Formattable* arguments,</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>  <span class="keyword">const</span> UnicodeString *argumentNames,</div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>  int32_t cnt,</div><div class="line"><a name="l00998"></a><span class="lineno"> 998</span>  AppendableWrapper& appendTo,</div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>  FieldPosition* pos,</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& success) <span class="keyword">const</span>;</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>  UnicodeString getArgName(int32_t partIndex);</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="keywordtype">void</span> setArgStartFormat(int32_t argStart, Format* formatter, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</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> setCustomArgStartFormat(int32_t argStart, Format* formatter, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">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>  int32_t nextTopLevelArgStart(int32_t partIndex) <span class="keyword">const</span>;</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> </div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> argNameMatches(int32_t partIndex, <span class="keyword">const</span> UnicodeString& argName, int32_t argNumber);</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> </div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>  <span class="keywordtype">void</span> cacheExplicitFormats(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</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>  Format* createAppropriateFormat(UnicodeString& type,</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>  UnicodeString& style,</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>  Formattable::Type& formattableType,</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>  <a class="code" href="structUParseError.html">UParseError</a>& parseError,</div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& ec);</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> </div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>  <span class="keyword">const</span> Formattable* getArgFromListByName(<span class="keyword">const</span> Formattable* arguments,</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>  <span class="keyword">const</span> UnicodeString *argumentNames,</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>  int32_t cnt, UnicodeString& name) <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>  Formattable* parse(int32_t msgStart,</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>  <span class="keyword">const</span> UnicodeString& source,</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>  ParsePosition& pos,</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>  int32_t& count,</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& ec) <span class="keyword">const</span>;</div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> </div><div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>  FieldPosition* updateMetaData(AppendableWrapper& dest, int32_t prevLength,</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>  FieldPosition* fp, <span class="keyword">const</span> Formattable* argId) <span class="keyword">const</span>;</div><div class="line"><a name="l01032"></a><span class="lineno"> 1032</span> </div><div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>  int32_t findOtherSubMessage(int32_t partIndex) <span class="keyword">const</span>;</div><div class="line"><a name="l01039"></a><span class="lineno"> 1039</span> </div><div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>  int32_t findFirstPluralNumberArg(int32_t msgStart, <span class="keyword">const</span> UnicodeString &argName) <span class="keyword">const</span>;</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> </div><div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>  Format* getCachedFormatter(int32_t argumentNumber) <span class="keyword">const</span>;</div><div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> </div><div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>  UnicodeString getLiteralStringUntilNextArgument(int32_t from) <span class="keyword">const</span>;</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span> </div><div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>  <span class="keywordtype">void</span> copyObjects(<span class="keyword">const</span> MessageFormat& that, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& ec);</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span> </div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>  <span class="keywordtype">void</span> formatComplexSubMessage(int32_t msgStart,</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>  <span class="keyword">const</span> <span class="keywordtype">void</span> *plNumber,</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>  <span class="keyword">const</span> Formattable* arguments,</div><div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>  <span class="keyword">const</span> UnicodeString *argumentNames,</div><div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>  int32_t cnt,</div><div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>  AppendableWrapper& appendTo,</div><div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& success) <span class="keyword">const</span>;</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> </div><div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>  NumberFormat* createIntegerFormat(<span class="keyword">const</span> Locale& locale, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const</span>;</div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> </div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>  <span class="keyword">const</span> Formattable::Type* getArgTypeList(int32_t& listCount)<span class="keyword"> const </span>{</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>  listCount = argTypeCount;</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>  <span class="keywordflow">return</span> argTypes;</div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>  }</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> </div><div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>  <span class="keywordtype">void</span> resetPattern();</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> </div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>  <span class="keyword">class </span><a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> DummyFormat : <span class="keyword">public</span> Format {</div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="namespaceicu.html#a1c2f6ca43e636f38d1a3291eb851e9f0">operator==</a>(<span class="keyword">const</span> Format&) <span class="keyword">const override</span>;</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>  <span class="keyword">virtual</span> DummyFormat* clone() <span class="keyword">const override</span>;</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>  <span class="keyword">virtual</span> UnicodeString& format(<span class="keyword">const</span> Formattable& obj,</div><div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>  UnicodeString& appendTo,</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const</span>;</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>  <span class="keyword">virtual</span> UnicodeString& format(<span class="keyword">const</span> Formattable&,</div><div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>  UnicodeString& appendTo,</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>  FieldPosition&,</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const override</span>;</div><div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>  <span class="keyword">virtual</span> UnicodeString& format(<span class="keyword">const</span> Formattable& obj,</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>  UnicodeString& appendTo,</div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>  FieldPositionIterator* posIter,</div><div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const override</span>;</div><div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> parseObject(<span class="keyword">const</span> UnicodeString&,</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>  Formattable&,</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>  ParsePosition&) <span class="keyword">const override</span>;</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>  };</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> </div><div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>  <span class="keyword">friend</span> <span class="keyword">class </span>MessageFormatAdapter; <span class="comment">// getFormatTypeList() access</span></div><div class="line"><a name="l01108"></a><span class="lineno"> 1108</span> };</div><div class="line"><a name="l01109"></a><span class="lineno"> 1109</span> </div><div class="line"><a name="l01110"></a><span class="lineno"> 1110</span> U_NAMESPACE_END</div><div class="line"><a name="l01111"></a><span class="lineno"> 1111</span> </div><div class="line"><a name="l01112"></a><span class="lineno"> 1112</span> <span class="preprocessor">#endif </span><span class="comment">/* #if !UCONFIG_NO_FORMATTING */</span><span class="preprocessor"></span></div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span> </div><div class="line"><a name="l01114"></a><span class="lineno"> 1114</span> <span class="preprocessor">#endif </span><span class="comment">/* U_SHOW_CPLUSPLUS_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span> </div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span> <span class="preprocessor">#endif // _MSGFMT</span></div><div class="line"><a name="l01117"></a><span class="lineno"> 1117</span> <span class="comment">//eof</span></div><div class="ttc" id="classicu_1_1Format_html"><div class="ttname"><a href="classicu_1_1Format.html">icu::Format</a></div><div class="ttdoc">Base class for all formats. </div><div class="ttdef"><b>Definition:</b> <a href="format_8h_source.html#l00098">format.h:98</a></div></div> <div class="ttc" id="msgfmt_8h_html_a6c890111dda4b555e2a2ef52178b5129"><div class="ttname"><a href="msgfmt_8h.html#a6c890111dda4b555e2a2ef52178b5129">UHashtable</a></div><div class="ttdeci">struct UHashtable UHashtable</div><div class="ttdef"><b>Definition:</b> <a href="msgfmt_8h_source.html#l00043">msgfmt.h:43</a></div></div> <div class="ttc" id="classicu_1_1Format_html_affaf0088c4eb9976223a327bdc4f1dd0"><div class="ttname"><a href="classicu_1_1Format.html#affaf0088c4eb9976223a327bdc4f1dd0">icu::Format::format</a></div><div class="ttdeci">UnicodeString & format(const Formattable &obj, UnicodeString &appendTo, UErrorCode &status) const</div><div class="ttdoc">Formats an object to produce a string. </div></div> <div class="ttc" id="classicu_1_1Format_html_ae1e8e16cd0803127ac506d8de257ec4f"><div class="ttname"><a href="classicu_1_1Format.html#ae1e8e16cd0803127ac506d8de257ec4f">icu::Format::operator==</a></div><div class="ttdeci">virtual bool operator==(const Format &other) const =0</div><div class="ttdoc">Return true if the given Format objects are semantically equal. </div></div> <div class="ttc" id="namespaceicu_html_a1c2f6ca43e636f38d1a3291eb851e9f0"><div class="ttname"><a href="namespaceicu.html#a1c2f6ca43e636f38d1a3291eb851e9f0">icu::operator==</a></div><div class="ttdeci">U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)</div><div class="ttdoc">Global operator == for StringPiece. </div></div> <div class="ttc" id="uobject_8h_html_a22af10545208a455a6e884008df48e9f"><div class="ttname"><a href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a></div><div class="ttdeci">void * UClassID</div><div class="ttdoc">UClassID is used to identify classes without using the compiler&#39;s RTTI. </div><div class="ttdef"><b>Definition:</b> <a href="uobject_8h_source.html#l00096">uobject.h:96</a></div></div> <div class="ttc" id="plurfmt_8h_html"><div class="ttname"><a href="plurfmt_8h.html">plurfmt.h</a></div><div class="ttdoc">C++ API: PluralFormat object. </div></div> <div class="ttc" id="classicu_1_1StringEnumeration_html"><div class="ttname"><a href="classicu_1_1StringEnumeration.html">icu::StringEnumeration</a></div><div class="ttdoc">Base class for &#39;pure&#39; C++ implementations of uenum api. </div><div class="ttdef"><b>Definition:</b> <a href="strenum_8h_source.html#l00061">strenum.h:61</a></div></div> <div class="ttc" id="classicu_1_1Format_html_ad606fa4ed45908fe4220085c6276c65a"><div class="ttname"><a href="classicu_1_1Format.html#ad606fa4ed45908fe4220085c6276c65a">icu::Format::clone</a></div><div class="ttdeci">virtual Format * clone() const =0</div><div class="ttdoc">Clone this object polymorphically. </div></div> <div class="ttc" id="plurrule_8h_html"><div class="ttname"><a href="plurrule_8h.html">plurrule.h</a></div><div class="ttdoc">C++ API: PluralRules object. </div></div> <div class="ttc" id="classicu_1_1MessageFormat_html_a746caee2c4690b86603b875eefdd7ac1"><div class="ttname"><a href="classicu_1_1MessageFormat.html#a746caee2c4690b86603b875eefdd7ac1">icu::MessageFormat::EFormatNumber</a></div><div class="ttdeci">EFormatNumber</div><div class="ttdoc">Enum type for kMaxFormat. </div><div class="ttdef"><b>Definition:</b> <a href="msgfmt_8h_source.html#l00353">msgfmt.h:353</a></div></div> <div class="ttc" id="classicu_1_1PluralRules_html"><div class="ttname"><a href="classicu_1_1PluralRules.html">icu::PluralRules</a></div><div class="ttdoc">Defines rules for mapping non-negative numeric values onto a small set of keywords. </div><div class="ttdef"><b>Definition:</b> <a href="plurrule_8h_source.html#l00212">plurrule.h:212</a></div></div> <div class="ttc" id="format_8h_html"><div class="ttname"><a href="format_8h.html">format.h</a></div><div class="ttdoc">C++ API: Base class for all formats. </div></div> <div class="ttc" id="classicu_1_1MessagePattern_html"><div class="ttname"><a href="classicu_1_1MessagePattern.html">icu::MessagePattern</a></div><div class="ttdoc">Parses and represents ICU MessageFormat patterns. </div><div class="ttdef"><b>Definition:</b> <a href="messagepattern_8h_source.html#l00362">messagepattern.h:362</a></div></div> <div class="ttc" id="umachine_8h_html_a82c853d86803ab75c89267be54fbac6a"><div class="ttname"><a href="umachine_8h.html#a82c853d86803ab75c89267be54fbac6a">U_CDECL_BEGIN</a></div><div class="ttdeci">#define U_CDECL_BEGIN</div><div class="ttdoc">This is used to begin a declaration of a library private ICU C API. </div><div class="ttdef"><b>Definition:</b> <a href="umachine_8h_source.html#l00085">umachine.h:85</a></div></div> <div class="ttc" id="utypes_8h_html_ab9d90a30137b6ec046fe59e79b09745a"><div class="ttname"><a href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a></div><div class="ttdeci">#define U_I18N_API</div><div class="ttdoc">Set to export library symbols from inside the i18n library, and to import them from outside...</div><div class="ttdef"><b>Definition:</b> <a href="utypes_8h_source.html#l00301">utypes.h:301</a></div></div> <div class="ttc" id="classicu_1_1UObject_html_aca1169c4978c52ce2b76eda104e9a214"><div class="ttname"><a href="classicu_1_1UObject.html#aca1169c4978c52ce2b76eda104e9a214">icu::UObject::getDynamicClassID</a></div><div class="ttdeci">virtual UClassID getDynamicClassID() const</div><div class="ttdoc">ICU4C "poor man&#39;s RTTI", returns a UClassID for the actual ICU class. </div></div> <div class="ttc" id="classicu_1_1MessageFormat_html"><div class="ttname"><a href="classicu_1_1MessageFormat.html">icu::MessageFormat</a></div><div class="ttdef"><b>Definition:</b> <a href="msgfmt_8h_source.html#l00345">msgfmt.h:345</a></div></div> <div class="ttc" id="umachine_8h_html_a1a820e5c6cbe8ac1742b654e6bf9ed7d"><div class="ttname"><a href="umachine_8h.html#a1a820e5c6cbe8ac1742b654e6bf9ed7d">U_CDECL_END</a></div><div class="ttdeci">#define U_CDECL_END</div><div class="ttdoc">This is used to end a declaration of a library private ICU C API. </div><div class="ttdef"><b>Definition:</b> <a href="umachine_8h_source.html#l00086">umachine.h:86</a></div></div> <div class="ttc" id="parseerr_8h_html"><div class="ttname"><a href="parseerr_8h.html">parseerr.h</a></div><div class="ttdoc">C API: Parse Error Information. </div></div> <div class="ttc" id="utypes_8h_html_a3343c1c8a8377277046774691c98d78c"><div class="ttname"><a href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a></div><div class="ttdeci">UErrorCode</div><div class="ttdoc">Standard ICU4C error code type, a substitute for exceptions. </div><div class="ttdef"><b>Definition:</b> <a href="utypes_8h_source.html#l00415">utypes.h:415</a></div></div> <div class="ttc" id="classicu_1_1FieldPosition_html"><div class="ttname"><a href="classicu_1_1FieldPosition.html">icu::FieldPosition</a></div><div class="ttdoc">FieldPosition is a simple class used by Format and its subclasses to identify fields in formatted out...</div><div class="ttdef"><b>Definition:</b> <a href="fieldpos_8h_source.html#l00110">fieldpos.h:110</a></div></div> <div class="ttc" id="upluralrules_8h_html_afceec9f2dee10dbf3ca0d694f66d5d3c"><div class="ttname"><a href="upluralrules_8h.html#afceec9f2dee10dbf3ca0d694f66d5d3c">UPluralType</a></div><div class="ttdeci">UPluralType</div><div class="ttdoc">Type of plurals and PluralRules. </div><div class="ttdef"><b>Definition:</b> <a href="upluralrules_8h_source.html#l00059">upluralrules.h:59</a></div></div> <div class="ttc" id="classicu_1_1ParsePosition_html"><div class="ttname"><a href="classicu_1_1ParsePosition.html">icu::ParsePosition</a></div><div class="ttdoc">ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...</div><div class="ttdef"><b>Definition:</b> <a href="parsepos_8h_source.html#l00052">parsepos.h:52</a></div></div> <div class="ttc" id="locid_8h_html"><div class="ttname"><a href="locid_8h.html">locid.h</a></div><div class="ttdoc">C++ API: Locale ID object. </div></div> <div class="ttc" id="classicu_1_1Format_html_a292d797eb9d3bc8a42d8d8efba119a83"><div class="ttname"><a href="classicu_1_1Format.html#a292d797eb9d3bc8a42d8d8efba119a83">icu::Format::parseObject</a></div><div class="ttdeci">virtual void parseObject(const UnicodeString &source, Formattable &result, ParsePosition &parse_pos) const =0</div><div class="ttdoc">Parse a string to produce an object. </div></div> <div class="ttc" id="structUParseError_html"><div class="ttname"><a href="structUParseError.html">UParseError</a></div><div class="ttdoc">A UParseError struct is used to returned detailed information about parsing errors. </div><div class="ttdef"><b>Definition:</b> <a href="parseerr_8h_source.html#l00058">parseerr.h:58</a></div></div> <div class="ttc" id="classicu_1_1MessageFormat_html_a5960cf8a23f16609cbf1814c4339ce57"><div class="ttname"><a href="classicu_1_1MessageFormat.html#a5960cf8a23f16609cbf1814c4339ce57">icu::MessageFormat::getApostropheMode</a></div><div class="ttdeci">UMessagePatternApostropheMode getApostropheMode() const</div><div class="ttdef"><b>Definition:</b> <a href="msgfmt_8h_source.html#l00500">msgfmt.h:500</a></div></div> <div class="ttc" id="utypes_8h_html"><div class="ttname"><a href="utypes_8h.html">utypes.h</a></div><div class="ttdoc">Basic definitions for ICU, for both C and C++ APIs. </div></div> <div class="ttc" id="classicu_1_1Format_html_a6e4a4f6e5eedfe8d949e9307191a3afc"><div class="ttname"><a href="classicu_1_1Format.html#a6e4a4f6e5eedfe8d949e9307191a3afc">icu::Format::operator=</a></div><div class="ttdeci">Format & operator=(const Format &)</div></div> <div class="ttc" id="classicu_1_1UnicodeString_html"><div class="ttname"><a href="classicu_1_1UnicodeString.html">icu::UnicodeString</a></div><div class="ttdoc">UnicodeString is a string class that stores Unicode characters directly and provides similar function...</div><div class="ttdef"><b>Definition:</b> <a href="unistr_8h_source.html#l00295">unistr.h:295</a></div></div> <div class="ttc" id="classicu_1_1Formattable_html"><div class="ttname"><a href="classicu_1_1Formattable.html">icu::Formattable</a></div><div class="ttdoc">Formattable objects can be passed to the Format class or its subclasses for formatting. </div><div class="ttdef"><b>Definition:</b> <a href="fmtable_8h_source.html#l00064">fmtable.h:64</a></div></div> <div class="ttc" id="classicu_1_1Format_html_afb8661d3a5d713adc9845c6c76de2a09"><div class="ttname"><a href="classicu_1_1Format.html#afb8661d3a5d713adc9845c6c76de2a09">icu::Format::getLocale</a></div><div class="ttdeci">Locale getLocale(ULocDataLocaleType type, UErrorCode &status) const</div><div class="ttdoc">Get the locale for this format object. </div></div> <div class="ttc" id="messagepattern_8h_html"><div class="ttname"><a href="messagepattern_8h.html">messagepattern.h</a></div><div class="ttdoc">C++ API: MessagePattern class: Parses and represents ICU MessageFormat patterns. </div></div> <div class="ttc" id="messagepattern_8h_html_af6e0757e0eb81c980b01ee5d68a9978b"><div class="ttname"><a href="messagepattern_8h.html#af6e0757e0eb81c980b01ee5d68a9978b">UMessagePatternApostropheMode</a></div><div class="ttdeci">UMessagePatternApostropheMode</div><div class="ttdoc">Mode for when an apostrophe starts quoted literal text for MessageFormat output. </div><div class="ttdef"><b>Definition:</b> <a href="messagepattern_8h_source.html#l00070">messagepattern.h:70</a></div></div> <div class="ttc" id="umachine_8h_html_a349ef00011f20ccd1d3b424445681aa5"><div class="ttname"><a href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a></div><div class="ttdeci">int8_t UBool</div><div class="ttdoc">The ICU boolean type, a signed-byte integer. </div><div class="ttdef"><b>Definition:</b> <a href="umachine_8h_source.html#l00247">umachine.h:247</a></div></div> <div class="ttc" id="classicu_1_1Locale_html"><div class="ttname"><a href="classicu_1_1Locale.html">icu::Locale</a></div><div class="ttdoc">A Locale object represents a specific geographical, political, or cultural region. </div><div class="ttdef"><b>Definition:</b> <a href="locid_8h_source.html#l00195">locid.h:195</a></div></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.14 </small></address> </body> </html>
💾 Save Changes
❌ Cancel