Файловый менеджер - Редактировать - /opt/alt/alt-nodejs20/root/usr/share/doc/alt-nodejs20-libicu-doc/messageformat2__formattable_8h_source.html
Назад
<!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 78.3: i18n/unicode/messageformat2_formattable.h Source File</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/searchdata.js"></script> <script type="text/javascript" src="search/search.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 78.3  <span id="projectnumber">78.3</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.14 --> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ var searchBox = new SearchBox("searchBox", "search",false,'Search'); /* @license-end */ </script> <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('',true,false,'search.php','Search'); $(document).ready(function() { init_search(); }); }); /* @license-end */</script> <div id="main-nav"></div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> </div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_73bc6a9bb617ea1bc89a10aa59ce84e4.html">i18n</a></li><li class="navelem"><a class="el" href="dir_0119ce638985e8a1561a00fdb5f76ff6.html">unicode</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="headertitle"> <div class="title">messageformat2_formattable.h</div> </div> </div><!--header--> <div class="contents"> <div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// © 2024 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> </div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="preprocessor">#include "<a class="code" href="utypes_8h.html">unicode/utypes.h</a>"</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> </div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="preprocessor">#ifndef MESSAGEFORMAT2_FORMATTABLE_H</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="preprocessor">#define MESSAGEFORMAT2_FORMATTABLE_H</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> </div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="preprocessor">#if U_SHOW_CPLUSPLUS_API</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> </div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#if !UCONFIG_NO_NORMALIZATION</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> </div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="preprocessor">#if !UCONFIG_NO_FORMATTING</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> </div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="preprocessor">#if !UCONFIG_NO_MF2</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">#include "<a class="code" href="chariter_8h.html">unicode/chariter.h</a>"</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#include "<a class="code" href="numberformatter_8h.html">unicode/numberformatter.h</a>"</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#include "unicode/messageformat2_data_model_names.h"</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "<a class="code" href="smpdtfmt_8h.html">unicode/smpdtfmt.h</a>"</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">#ifndef U_HIDE_DEPRECATED_API</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">#include <map></span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <variant></span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> U_NAMESPACE_BEGIN</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">class </span>Hashtable;</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">class </span>UVector;</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keyword">namespace </span>message2 {</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  <span class="keyword">class </span>Formatter;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  <span class="keyword">class </span>MessageContext;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  <span class="keyword">class </span>Selector;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  <span class="comment">// Formattable</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  <span class="comment">// ----------</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattableObject.html"> 49</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_1message2_1_1FormattableObject.html">FormattableObject</a> : <span class="keyword">public</span> <a class="code" href="classicu_1_1UObject.html">UObject</a> {</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& tag() <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keyword">virtual</span> ~<a class="code" href="classicu_1_1message2_1_1FormattableObject.html">FormattableObject</a>();</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  }; <span class="comment">// class FormattableObject</span></div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structicu_1_1message2_1_1DateInfo.html"> 78</a></span>  <span class="keyword">struct </span><a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="structicu_1_1message2_1_1DateInfo.html">DateInfo</a> {</div><div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structicu_1_1message2_1_1DateInfo.html#a43f6f3bca778f8e1900b52078c0e2992"> 85</a></span>  <a class="code" href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039">UDate</a> <a class="code" href="structicu_1_1message2_1_1DateInfo.html#a43f6f3bca778f8e1900b52078c0e2992">date</a>;</div><div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="structicu_1_1message2_1_1DateInfo.html#a45632211370fba1873121579fbac28c5"> 95</a></span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> <a class="code" href="structicu_1_1message2_1_1DateInfo.html#a45632211370fba1873121579fbac28c5">zoneId</a>;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  };</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html"> 113</a></span>  <span class="keyword">class </span><a class="code" href="utypes_8h.html#aab9c32f472a54ec81629b5b031f5741c">U_I18N_API_CLASS</a> <a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a> : <span class="keyword">public</span> <a class="code" href="classicu_1_1UObject.html">UObject</a> {</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span> </div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31">UFormattableType</a> getType() <span class="keyword">const</span>;</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#a9cd6e7952fc7e569970f3680cd7de05b"> 133</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keywordtype">double</span> <a class="code" href="classicu_1_1message2_1_1Formattable.html#a9cd6e7952fc7e569970f3680cd7de05b">getDouble</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const </span>{</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <span class="keywordflow">if</span> (isDecimal() && getType() == <a class="code" href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31a8f43ec16b9d12dc49d18b70685bf896a">UFMT_DOUBLE</a>) {</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  <span class="keywordflow">return</span> (std::get_if<icu::Formattable>(&contents))->getDouble();</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  }</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  <span class="keywordflow">if</span> (std::holds_alternative<double>(contents)) {</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  <span class="keywordflow">return</span> *(std::get_if<double>(&contents));</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  }</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca309ec9eeda4fba18847cf61f833445ea">U_ILLEGAL_ARGUMENT_ERROR</a>;</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  }</div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  }</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#a26d8934297443260dc99bc6158a01068"> 155</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> int32_t <a class="code" href="classicu_1_1message2_1_1Formattable.html#a26d8934297443260dc99bc6158a01068">getLong</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const </span>{</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keywordflow">if</span> (isDecimal() && getType() == <a class="code" href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31a395a7b29bce8877c8095e65f899d6499">UFMT_LONG</a>) {</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  <span class="keywordflow">return</span> std::get_if<icu::Formattable>(&contents)->getLong();</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  }</div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  <span class="keywordflow">if</span> (std::holds_alternative<int64_t>(contents)) {</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  <span class="keywordflow">return</span> <span class="keyword">static_cast<</span>int32_t<span class="keyword">></span>(*(std::get_if<int64_t>(&contents)));</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  }</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca309ec9eeda4fba18847cf61f833445ea">U_ILLEGAL_ARGUMENT_ERROR</a>;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  }</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>  }</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div><div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#aa44f789a3ffc03a9e84453cefe0f3f70"> 178</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> int64_t <a class="code" href="classicu_1_1message2_1_1Formattable.html#aa44f789a3ffc03a9e84453cefe0f3f70">getInt64Value</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const </span>{</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  <span class="keywordflow">if</span> (isDecimal() && getType() == <a class="code" href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31aeccbb155a4ba35697ccff1465eeaa09a">UFMT_INT64</a>) {</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  <span class="keywordflow">return</span> std::get_if<icu::Formattable>(&contents)->getInt64();</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  }</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordflow">if</span> (std::holds_alternative<int64_t>(contents)) {</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <span class="keywordflow">return</span> *(std::get_if<int64_t>(&contents));</div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  }</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca309ec9eeda4fba18847cf61f833445ea">U_ILLEGAL_ARGUMENT_ERROR</a>;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  }</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  }</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span> </div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> int64_t getInt64(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const</span>;</div><div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#af7e73531f1fd92c56bc000f69325a3b3"> 215</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& <a class="code" href="classicu_1_1message2_1_1Formattable.html#af7e73531f1fd92c56bc000f69325a3b3">getString</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const </span>{</div><div class="line"><a name="l00216"></a><span class="lineno"> 216</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  <span class="keywordflow">if</span> (std::holds_alternative<UnicodeString>(contents)) {</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span>  <span class="keywordflow">return</span> *std::get_if<UnicodeString>(&contents);</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  }</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca309ec9eeda4fba18847cf61f833445ea">U_ILLEGAL_ARGUMENT_ERROR</a>;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  }</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <span class="keywordflow">return</span> bogusString;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>  }</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span> </div><div class="line"><a name="l00236"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#a74b0a4476f6a4f5b0f6ebf7386522685"> 236</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">const</span> <a class="code" href="structicu_1_1message2_1_1DateInfo.html">DateInfo</a>* <a class="code" href="classicu_1_1message2_1_1Formattable.html#a74b0a4476f6a4f5b0f6ebf7386522685">getDate</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const </span>{</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  <span class="keywordflow">if</span> (isDate()) {</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>  <span class="keywordflow">return</span> std::get_if<DateInfo>(&contents);</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>  }</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca309ec9eeda4fba18847cf61f833445ea">U_ILLEGAL_ARGUMENT_ERROR</a>;</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>  }</div><div class="line"><a name="l00243"></a><span class="lineno"> 243</span>  <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>  }</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span> </div><div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#a45b610689b6e36b34bd6684a2d34f100"> 253</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> <a class="code" href="classicu_1_1message2_1_1Formattable.html#a45b610689b6e36b34bd6684a2d34f100">isNumeric</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (getType() == <a class="code" href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31a8f43ec16b9d12dc49d18b70685bf896a">UFMT_DOUBLE</a> || getType() == <a class="code" href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31a395a7b29bce8877c8095e65f899d6499">UFMT_LONG</a> || getType() == <a class="code" href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31aeccbb155a4ba35697ccff1465eeaa09a">UFMT_INT64</a>); }</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a>* getArray(int32_t& count, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const</span>;</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div><div class="line"><a name="l00277"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#af5c0ae9b4fc869c32fc1393fbd55e449"> 277</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1FormattableObject.html">FormattableObject</a>* <a class="code" href="classicu_1_1message2_1_1Formattable.html#af5c0ae9b4fc869c32fc1393fbd55e449">getObject</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const </span>{</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  <span class="comment">// Can't return a reference since FormattableObject</span></div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  <span class="comment">// is an abstract class</span></div><div class="line"><a name="l00281"></a><span class="lineno"> 281</span>  <span class="keywordflow">if</span> (getType() == <a class="code" href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31a5bb91a7a04d185b66faa64f90ae15214">UFMT_OBJECT</a>) {</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>  <span class="keywordflow">return</span> *std::get_if<const FormattableObject*>(&contents);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  <span class="comment">// TODO: should assert that if type is object, object is non-null</span></div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span>  }</div><div class="line"><a name="l00285"></a><span class="lineno"> 285</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca309ec9eeda4fba18847cf61f833445ea">U_ILLEGAL_ARGUMENT_ERROR</a>;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>  }</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>  <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>  }</div><div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#a059ad53964c51f809829c52129324a39"> 297</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">friend</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classicu_1_1message2_1_1Formattable.html#a059ad53964c51f809829c52129324a39">swap</a>(<a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a>& f1, <a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a>& f2) noexcept {</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  <span class="keyword">using</span> std::swap;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span> </div><div class="line"><a name="l00300"></a><span class="lineno"> 300</span>  swap(f1.contents, f2.contents);</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>  }</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a>&);</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a>& operator=(<a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a>) noexcept;</div><div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#a6dc114ad92dbaec61ef04bb4257419ab"> 323</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1Formattable.html#a6dc114ad92dbaec61ef04bb4257419ab">Formattable</a>() : contents(0.0) {}</div><div class="line"><a name="l00332"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#a05f3429b1f35269b70f63313fc472f69"> 332</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1Formattable.html#a05f3429b1f35269b70f63313fc472f69">Formattable</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s) : contents(s) {}</div><div class="line"><a name="l00341"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#a603d89df32223ffed27ce4fec480f2aa"> 341</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1Formattable.html#a603d89df32223ffed27ce4fec480f2aa">Formattable</a>(<span class="keywordtype">double</span> d) : contents(d) {}</div><div class="line"><a name="l00350"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#aa413410e102a512bf7837e7a5b54a537"> 350</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1Formattable.html#aa413410e102a512bf7837e7a5b54a537">Formattable</a>(int64_t i) : contents(i) {}</div><div class="line"><a name="l00360"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#acafccaf12f117903756d03dd2f8c7d1c"> 360</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1Formattable.html#acafccaf12f117903756d03dd2f8c7d1c">Formattable</a>(<a class="code" href="structicu_1_1message2_1_1DateInfo.html">DateInfo</a>&& d) : contents(std::move(d)) {}</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">static</span> <a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a> forDecimal(std::string_view number, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00385"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#a7a52cec7f5b19df9bbb79e94c8802db0"> 385</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1Formattable.html#a7a52cec7f5b19df9bbb79e94c8802db0">Formattable</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a>* arr, int32_t len) : contents(std::pair(arr, len)) {}</div><div class="line"><a name="l00394"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1Formattable.html#a4f180f412b32f63c01aa81bf99bb483a"> 394</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1Formattable.html#a4f180f412b32f63c01aa81bf99bb483a">Formattable</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1FormattableObject.html">FormattableObject</a>* obj) : contents(obj) {}</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">virtual</span> ~<a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a>();</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1Formattable.html">icu::Formattable</a> asICUFormattable(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const</span>;</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span>  <span class="keyword">private</span>:</div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span> </div><div class="line"><a name="l00416"></a><span class="lineno"> 416</span>  std::variant<double,</div><div class="line"><a name="l00417"></a><span class="lineno"> 417</span>  int64_t,</div><div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>,</div><div class="line"><a name="l00419"></a><span class="lineno"> 419</span>  <a class="code" href="classicu_1_1Formattable.html">icu::Formattable</a>, <span class="comment">// represents a Decimal</span></div><div class="line"><a name="l00420"></a><span class="lineno"> 420</span>  <a class="code" href="structicu_1_1message2_1_1DateInfo.html">DateInfo</a>,</div><div class="line"><a name="l00421"></a><span class="lineno"> 421</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1FormattableObject.html">FormattableObject</a>*,</div><div class="line"><a name="l00422"></a><span class="lineno"> 422</span>  std::pair<const Formattable*, int32_t>> contents;</div><div class="line"><a name="l00423"></a><span class="lineno"> 423</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> bogusString; <span class="comment">// :((((</span></div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span> </div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> isDecimal()<span class="keyword"> const </span>{</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span>  <span class="keywordflow">return</span> std::holds_alternative<icu::Formattable>(contents);</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>  }</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> isDate()<span class="keyword"> const </span>{</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span>  <span class="keywordflow">return</span> std::holds_alternative<DateInfo>(contents);</div><div class="line"><a name="l00430"></a><span class="lineno"> 430</span>  }</div><div class="line"><a name="l00431"></a><span class="lineno"> 431</span>  }; <span class="comment">// class Formattable</span></div><div class="line"><a name="l00432"></a><span class="lineno"> 432</span> </div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="preprocessor">#ifndef U_IN_DOXYGEN</span></div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="keyword">class </span><a class="code" href="utypes_8h.html#aab9c32f472a54ec81629b5b031f5741c">U_I18N_API_CLASS</a> ResolvedFunctionOption : <span class="keyword">public</span> UObject {</div><div class="line"><a name="l00448"></a><span class="lineno"> 448</span>  <span class="keyword">private</span>:</div><div class="line"><a name="l00449"></a><span class="lineno"> 449</span> </div><div class="line"><a name="l00450"></a><span class="lineno"> 450</span>  <span class="comment">/* const */</span> UnicodeString name;</div><div class="line"><a name="l00451"></a><span class="lineno"> 451</span>  <span class="comment">/* const */</span> Formattable value;</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>  <span class="comment">// True iff this option was represented in the syntax by a literal value.</span></div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>  <span class="comment">// This is necessary in order to implement the spec for the `select` option</span></div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span>  <span class="comment">// of `:number` and `:integer`.</span></div><div class="line"><a name="l00455"></a><span class="lineno"> 455</span>  <span class="comment">/* const */</span> <span class="keywordtype">bool</span> sourceIsLiteral;</div><div class="line"><a name="l00456"></a><span class="lineno"> 456</span> </div><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00458"></a><span class="lineno"> 458</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">const</span> UnicodeString& getName()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> name; }</div><div class="line"><a name="l00459"></a><span class="lineno"> 459</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">const</span> Formattable& getValue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value; }</div><div class="line"><a name="l00460"></a><span class="lineno"> 460</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keywordtype">bool</span> isLiteral()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> sourceIsLiteral; }</div><div class="line"><a name="l00461"></a><span class="lineno"> 461</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> ResolvedFunctionOption(<span class="keyword">const</span> UnicodeString& n, <span class="keyword">const</span> Formattable& f, <span class="keywordtype">bool</span> s)</div><div class="line"><a name="l00462"></a><span class="lineno"> 462</span>  : name(n), value(f), sourceIsLiteral(s) {}</div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> ResolvedFunctionOption() {}</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> ResolvedFunctionOption(ResolvedFunctionOption&&);</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> ResolvedFunctionOption& operator=(ResolvedFunctionOption&& other) noexcept {</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>  name = std::move(other.name);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>  value = std::move(other.value);</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>  sourceIsLiteral = other.sourceIsLiteral;</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>  <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div><div class="line"><a name="l00470"></a><span class="lineno"> 470</span>  }</div><div class="line"><a name="l00471"></a><span class="lineno"> 471</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">virtual</span> ~ResolvedFunctionOption();</div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span> }; <span class="comment">// class ResolvedFunctionOption</span></div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="preprocessor">#endif</span></div><div class="line"><a name="l00474"></a><span class="lineno"> 474</span> </div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="keyword">using</span> FunctionOptionsMap = std::map<UnicodeString, message2::Formattable>;</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span> </div><div class="line"><a name="l00490"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FunctionOptions.html"> 490</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_1message2_1_1FunctionOptions.html">FunctionOptions</a> : <span class="keyword">public</span> <a class="code" href="classicu_1_1UObject.html">UObject</a> {</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00505"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FunctionOptions.html#ad5052404634e63c5816b49daed4395c3"> 505</a></span>  FunctionOptionsMap <a class="code" href="classicu_1_1message2_1_1FunctionOptions.html#ad5052404634e63c5816b49daed4395c3">getOptions</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span>  int32_t len;</div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>  <span class="keyword">const</span> ResolvedFunctionOption* resolvedOptions = getResolvedFunctionOptions(len);</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span>  FunctionOptionsMap result;</div><div class="line"><a name="l00509"></a><span class="lineno"> 509</span>  <span class="keywordflow">for</span> (int32_t i = 0; i < len; i++) {</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  <span class="keyword">const</span> ResolvedFunctionOption& opt = resolvedOptions[i];</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>  result[opt.getName()] = opt.getValue();</div><div class="line"><a name="l00512"></a><span class="lineno"> 512</span>  }</div><div class="line"><a name="l00513"></a><span class="lineno"> 513</span>  <span class="keywordflow">return</span> result;</div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  }</div><div class="line"><a name="l00522"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FunctionOptions.html#a0fbe398617f6aa8a34604d75d35f74e4"> 522</a></span>  <a class="code" href="classicu_1_1message2_1_1FunctionOptions.html#a0fbe398617f6aa8a34604d75d35f74e4">FunctionOptions</a>() { options = <span class="keyword">nullptr</span>; }</div><div class="line"><a name="l00529"></a><span class="lineno"> 529</span>  <span class="keyword">virtual</span> ~<a class="code" href="classicu_1_1message2_1_1FunctionOptions.html">FunctionOptions</a>();</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>  <a class="code" href="classicu_1_1message2_1_1FunctionOptions.html">FunctionOptions</a>& operator=(<a class="code" href="classicu_1_1message2_1_1FunctionOptions.html">FunctionOptions</a>&&) noexcept;</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>  <a class="code" href="classicu_1_1message2_1_1FunctionOptions.html">FunctionOptions</a>(<a class="code" href="classicu_1_1message2_1_1FunctionOptions.html">FunctionOptions</a>&&);</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>  <a class="code" href="classicu_1_1message2_1_1FunctionOptions.html">FunctionOptions</a>& operator=(const <a class="code" href="classicu_1_1message2_1_1FunctionOptions.html">FunctionOptions</a>&) = delete;</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  private:</div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  friend class InternalValue;</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>  friend class <a class="code" href="classicu_1_1message2_1_1MessageFormatter.html">MessageFormatter</a>;</div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>  friend class StandardFunctions;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span> </div><div class="line"><a name="l00558"></a><span class="lineno"> 558</span>  explicit <a class="code" href="classicu_1_1message2_1_1FunctionOptions.html">FunctionOptions</a>(UVector&&, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>&);</div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span> </div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span>  const ResolvedFunctionOption* getResolvedFunctionOptions(int32_t& len) const;</div><div class="line"><a name="l00561"></a><span class="lineno"> 561</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> getFunctionOption(std::u16string_view, <a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a>&) const;</div><div class="line"><a name="l00562"></a><span class="lineno"> 562</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> wasSetFromLiteral(const <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>&) const;</div><div class="line"><a name="l00563"></a><span class="lineno"> 563</span>  <span class="comment">// Returns empty string if option doesn't exist</span></div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> getStringFunctionOption(std::u16string_view) const;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span>  int32_t optionsCount()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> functionOptionsLen; }</div><div class="line"><a name="l00566"></a><span class="lineno"> 566</span> </div><div class="line"><a name="l00567"></a><span class="lineno"> 567</span>  <span class="comment">// Named options passed to functions</span></div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>  <span class="comment">// This is not a Hashtable in order to make it possible for code in a public header file</span></div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>  <span class="comment">// to construct a std::map from it, on-the-fly. Otherwise, it would be impossible to put</span></div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span>  <span class="comment">// that code in the header because it would have to call internal Hashtable methods.</span></div><div class="line"><a name="l00571"></a><span class="lineno"> 571</span>  ResolvedFunctionOption* options;</div><div class="line"><a name="l00572"></a><span class="lineno"> 572</span>  int32_t functionOptionsLen = 0;</div><div class="line"><a name="l00573"></a><span class="lineno"> 573</span> </div><div class="line"><a name="l00578"></a><span class="lineno"> 578</span>  FunctionOptions mergeOptions(FunctionOptions&& other, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>&);</div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span> }; <span class="comment">// class FunctionOptions</span></div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span> </div><div class="line"><a name="l00591"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedValue.html"> 591</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_1message2_1_1FormattedValue.html">FormattedValue</a> : <span class="keyword">public</span> <a class="code" href="classicu_1_1UObject.html">UObject</a> {</div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00598"></a><span class="lineno"> 598</span>  <span class="keyword">explicit</span> <a class="code" href="classicu_1_1message2_1_1FormattedValue.html">FormattedValue</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>&);</div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>  <span class="keyword">explicit</span> <a class="code" href="classicu_1_1message2_1_1FormattedValue.html">FormattedValue</a>(<a class="code" href="classicu_1_1number_1_1FormattedNumber.html">number::FormattedNumber</a>&&);</div><div class="line"><a name="l00611"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedValue.html#a1722c92698c8f90219f0a9617103d3b0"> 611</a></span>  <a class="code" href="classicu_1_1message2_1_1FormattedValue.html#a1722c92698c8f90219f0a9617103d3b0">FormattedValue</a>() : type(kString) {}</div><div class="line"><a name="l00620"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedValue.html#ad61eb3388c04264d3f57b1f0bcb45e10"> 620</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classicu_1_1message2_1_1FormattedValue.html#ad61eb3388c04264d3f57b1f0bcb45e10">isString</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> type == kString; }</div><div class="line"><a name="l00629"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedValue.html#ab810ef25ab838f63c36ef862db95decb"> 629</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classicu_1_1message2_1_1FormattedValue.html#ab810ef25ab838f63c36ef862db95decb">isNumber</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> type == kNumber; }</div><div class="line"><a name="l00637"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedValue.html#a045000f63cbf99628a3a4dd18dc1b76c"> 637</a></span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& <a class="code" href="classicu_1_1message2_1_1FormattedValue.html#a045000f63cbf99628a3a4dd18dc1b76c">getString</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> stringOutput; }</div><div class="line"><a name="l00645"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedValue.html#ab4309259b8973e2b6905a33d1e1f7a6b"> 645</a></span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1number_1_1FormattedNumber.html">number::FormattedNumber</a>& <a class="code" href="classicu_1_1message2_1_1FormattedValue.html#ab4309259b8973e2b6905a33d1e1f7a6b">getNumber</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> numberOutput; }</div><div class="line"><a name="l00653"></a><span class="lineno"> 653</span>  <a class="code" href="classicu_1_1message2_1_1FormattedValue.html">FormattedValue</a>& operator=(<a class="code" href="classicu_1_1message2_1_1FormattedValue.html">FormattedValue</a>&&) noexcept;</div><div class="line"><a name="l00661"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedValue.html#a5135300fa9d29c5b805ce9c72edde9e7"> 661</a></span>  <a class="code" href="classicu_1_1message2_1_1FormattedValue.html">FormattedValue</a>(<a class="code" href="classicu_1_1message2_1_1FormattedValue.html">FormattedValue</a>&& other) { *<span class="keyword">this</span> = std::move(other); }</div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>  <span class="keyword">virtual</span> ~<a class="code" href="classicu_1_1message2_1_1FormattedValue.html">FormattedValue</a>();</div><div class="line"><a name="l00669"></a><span class="lineno"> 669</span>  <span class="keyword">private</span>:</div><div class="line"><a name="l00670"></a><span class="lineno"> 670</span>  <span class="keyword">enum</span> Type {</div><div class="line"><a name="l00671"></a><span class="lineno"> 671</span>  kString,</div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>  kNumber</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>  };</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>  Type type;</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> stringOutput;</div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span>  <a class="code" href="classicu_1_1number_1_1FormattedNumber.html">number::FormattedNumber</a> numberOutput;</div><div class="line"><a name="l00677"></a><span class="lineno"> 677</span>  }; <span class="comment">// class FormattedValue</span></div><div class="line"><a name="l00678"></a><span class="lineno"> 678</span> </div><div class="line"><a name="l00691"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html"> 691</a></span>  <span class="keyword">class </span><a class="code" href="utypes_8h.html#aab9c32f472a54ec81629b5b031f5741c">U_I18N_API_CLASS</a> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html">FormattedPlaceholder</a> : <span class="keyword">public</span> <a class="code" href="classicu_1_1UObject.html">UObject</a> {</div><div class="line"><a name="l00692"></a><span class="lineno"> 692</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00703"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a2cc674d703d7229d1a4444e703585539"> 703</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">explicit</span> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a2cc674d703d7229d1a4444e703585539">FormattedPlaceholder</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s) : fallback(s), type(kFallback) {}</div><div class="line"><a name="l00715"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#ab6d58ccc79fda2ecb4f5289dc7c2021d"> 715</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#ab6d58ccc79fda2ecb4f5289dc7c2021d">FormattedPlaceholder</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html">FormattedPlaceholder</a>& input, <a class="code" href="classicu_1_1message2_1_1FormattedValue.html">FormattedValue</a>&& output)</div><div class="line"><a name="l00716"></a><span class="lineno"> 716</span>  : fallback(input.fallback), source(input.source),</div><div class="line"><a name="l00717"></a><span class="lineno"> 717</span>  formatted(std::move(output)), previousOptions(<a class="code" href="classicu_1_1message2_1_1FunctionOptions.html">FunctionOptions</a>()), type(kEvaluated) {}</div><div class="line"><a name="l00730"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a0510c3d85635422cddd89219fabdf7f3"> 730</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a0510c3d85635422cddd89219fabdf7f3">FormattedPlaceholder</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html">FormattedPlaceholder</a>& input, <a class="code" href="classicu_1_1message2_1_1FunctionOptions.html">FunctionOptions</a>&& opts, <a class="code" href="classicu_1_1message2_1_1FormattedValue.html">FormattedValue</a>&& output)</div><div class="line"><a name="l00731"></a><span class="lineno"> 731</span>  : fallback(input.fallback), source(input.source),</div><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>  formatted(std::move(output)), previousOptions(std::move(opts)), type(kEvaluated) {}</div><div class="line"><a name="l00742"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a986d3a21025cd80ea91c65c40103f500"> 742</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a986d3a21025cd80ea91c65c40103f500">FormattedPlaceholder</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1Formattable.html">Formattable</a>& input, <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& fb)</div><div class="line"><a name="l00743"></a><span class="lineno"> 743</span>  : fallback(fb), source(input), type(kUnevaluated) {}</div><div class="line"><a name="l00751"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#af68c252c8919eea7bba022230941eac9"> 751</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#af68c252c8919eea7bba022230941eac9">FormattedPlaceholder</a>() : type(kNull) {}</div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1Formattable.html">message2::Formattable</a>& asFormattable() <span class="keyword">const</span>;</div><div class="line"><a name="l00771"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a69391bc5579f1a9325053fec4beb4e4c"> 771</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keywordtype">bool</span> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a69391bc5579f1a9325053fec4beb4e4c">isFallback</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> type == kFallback; }</div><div class="line"><a name="l00781"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#af3b3f05fd3521d51f28b824b2c05254a"> 781</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keywordtype">bool</span> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#af3b3f05fd3521d51f28b824b2c05254a">isNullOperand</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> type == kNull; }</div><div class="line"><a name="l00791"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a81bcf5d48296880dce7cd66b9a331c11"> 791</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keywordtype">bool</span> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a81bcf5d48296880dce7cd66b9a331c11">isEvaluated</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (type == kEvaluated); }</div><div class="line"><a name="l00800"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#af36163ff4d5bac9636be52836ce9b948"> 800</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keywordtype">bool</span> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#af36163ff4d5bac9636be52836ce9b948">canFormat</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !(isFallback() || isNullOperand()); }</div><div class="line"><a name="l00808"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#ab79efbcd2af497652bfb9ff1524cda94"> 808</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#ab79efbcd2af497652bfb9ff1524cda94">getFallback</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> fallback; }</div><div class="line"><a name="l00817"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a9d66891fa88d52cf2a04a2cbe82115a9"> 817</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1FunctionOptions.html">FunctionOptions</a>& <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a9d66891fa88d52cf2a04a2cbe82115a9">options</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> previousOptions; }</div><div class="line"><a name="l00824"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#ac473ceffac410d7e359a70bb94c0d5c1"> 824</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <span class="keyword">const</span> <a class="code" href="classicu_1_1message2_1_1FormattedValue.html">FormattedValue</a>& <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html#ac473ceffac410d7e359a70bb94c0d5c1">output</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> formatted; }</div><div class="line"><a name="l00832"></a><span class="lineno"> 832</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html">FormattedPlaceholder</a>& operator=(<a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html">FormattedPlaceholder</a>&&) noexcept;</div><div class="line"><a name="l00840"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedPlaceholder.html#a6c0fbe1c0ef21a0f54da894b63cd2f67"> 840</a></span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html">FormattedPlaceholder</a>(<a class="code" href="classicu_1_1message2_1_1FormattedPlaceholder.html">FormattedPlaceholder</a>&& other) { *<span class="keyword">this</span> = std::move(other); }</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>  <a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a">U_I18N_API</a> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> formatToString(<span class="keyword">const</span> <a class="code" href="classicu_1_1Locale.html">Locale</a>& locale,</div><div class="line"><a name="l00857"></a><span class="lineno"> 857</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const</span>;</div><div class="line"><a name="l00858"></a><span class="lineno"> 858</span> </div><div class="line"><a name="l00859"></a><span class="lineno"> 859</span>  <span class="keyword">private</span>:</div><div class="line"><a name="l00860"></a><span class="lineno"> 860</span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classicu_1_1message2_1_1MessageFormatter.html">MessageFormatter</a>;</div><div class="line"><a name="l00861"></a><span class="lineno"> 861</span> </div><div class="line"><a name="l00862"></a><span class="lineno"> 862</span>  <span class="keyword">enum</span> Type {</div><div class="line"><a name="l00863"></a><span class="lineno"> 863</span>  kFallback, <span class="comment">// Represents the result of formatting that encountered an error</span></div><div class="line"><a name="l00864"></a><span class="lineno"> 864</span>  kNull, <span class="comment">// Represents the absence of both an output and an input (not necessarily an error)</span></div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>  kUnevaluated, <span class="comment">// `source` should be valid, but there's no result yet</span></div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span>  kEvaluated, <span class="comment">// `formatted` exists</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>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> fallback;</div><div class="line"><a name="l00869"></a><span class="lineno"> 869</span>  <a class="code" href="classicu_1_1Formattable.html">Formattable</a> source;</div><div class="line"><a name="l00870"></a><span class="lineno"> 870</span>  <a class="code" href="classicu_1_1FormattedValue.html">FormattedValue</a> formatted;</div><div class="line"><a name="l00871"></a><span class="lineno"> 871</span>  FunctionOptions previousOptions; <span class="comment">// Ignored unless type is kEvaluated</span></div><div class="line"><a name="l00872"></a><span class="lineno"> 872</span>  Type type;</div><div class="line"><a name="l00873"></a><span class="lineno"> 873</span>  }; <span class="comment">// class FormattedPlaceholder</span></div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span> </div><div class="line"><a name="l00885"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedMessage.html"> 885</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_1message2_1_1FormattedMessage.html">FormattedMessage</a> : <span class="keyword">public</span> <a class="code" href="classicu_1_1FormattedValue.html">icu::FormattedValue</a> {</div><div class="line"><a name="l00886"></a><span class="lineno"> 886</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00893"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedMessage.html#aa7e3d200ae9e3d40f57c6f37077d8013"> 893</a></span>  <a class="code" href="classicu_1_1message2_1_1FormattedMessage.html#aa7e3d200ae9e3d40f57c6f37077d8013">FormattedMessage</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) {</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00895"></a><span class="lineno"> 895</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca65a5a3a1b2f8ed0fb97e26068729a758">U_UNSUPPORTED_ERROR</a>;</div><div class="line"><a name="l00896"></a><span class="lineno"> 896</span>  }</div><div class="line"><a name="l00897"></a><span class="lineno"> 897</span>  }</div><div class="line"><a name="l00904"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedMessage.html#a4fa37809bf19f01047d2c9eeb8dff490"> 904</a></span>  int32_t <a class="code" href="classicu_1_1message2_1_1FormattedMessage.html#a4fa37809bf19f01047d2c9eeb8dff490">length</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const </span>{</div><div class="line"><a name="l00905"></a><span class="lineno"> 905</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00906"></a><span class="lineno"> 906</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca65a5a3a1b2f8ed0fb97e26068729a758">U_UNSUPPORTED_ERROR</a>;</div><div class="line"><a name="l00907"></a><span class="lineno"> 907</span>  }</div><div class="line"><a name="l00908"></a><span class="lineno"> 908</span>  <span class="keywordflow">return</span> -1;</div><div class="line"><a name="l00909"></a><span class="lineno"> 909</span>  }</div><div class="line"><a name="l00916"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedMessage.html#adad54ce70828fd1b8038cc274d82f769"> 916</a></span>  char16_t <a class="code" href="classicu_1_1message2_1_1FormattedMessage.html#adad54ce70828fd1b8038cc274d82f769">charAt</a>(int32_t index, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const </span>{</div><div class="line"><a name="l00917"></a><span class="lineno"> 917</span>  (void) index;</div><div class="line"><a name="l00918"></a><span class="lineno"> 918</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00919"></a><span class="lineno"> 919</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca65a5a3a1b2f8ed0fb97e26068729a758">U_UNSUPPORTED_ERROR</a>;</div><div class="line"><a name="l00920"></a><span class="lineno"> 920</span>  }</div><div class="line"><a name="l00921"></a><span class="lineno"> 921</span>  <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00922"></a><span class="lineno"> 922</span>  }</div><div class="line"><a name="l00929"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedMessage.html#a320824a81ed3748445e84e612ff765fc"> 929</a></span>  <a class="code" href="classicu_1_1StringPiece.html">StringPiece</a> <a class="code" href="classicu_1_1message2_1_1FormattedMessage.html#a320824a81ed3748445e84e612ff765fc">subSequence</a>(int32_t start, int32_t end, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const </span>{</div><div class="line"><a name="l00930"></a><span class="lineno"> 930</span>  (void) start;</div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>  (void) end;</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00933"></a><span class="lineno"> 933</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca65a5a3a1b2f8ed0fb97e26068729a758">U_UNSUPPORTED_ERROR</a>;</div><div class="line"><a name="l00934"></a><span class="lineno"> 934</span>  }</div><div class="line"><a name="l00935"></a><span class="lineno"> 935</span>  <span class="keywordflow">return</span> <span class="stringliteral">""</span>;</div><div class="line"><a name="l00936"></a><span class="lineno"> 936</span>  }</div><div class="line"><a name="l00943"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedMessage.html#ab05eba0a12d7f100eb85863700a4ef08"> 943</a></span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> <a class="code" href="classicu_1_1message2_1_1FormattedMessage.html#ab05eba0a12d7f100eb85863700a4ef08">toString</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const override </span>{</div><div class="line"><a name="l00944"></a><span class="lineno"> 944</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca65a5a3a1b2f8ed0fb97e26068729a758">U_UNSUPPORTED_ERROR</a>;</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span>  }</div><div class="line"><a name="l00947"></a><span class="lineno"> 947</span>  <span class="keywordflow">return</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"><a class="line" href="classicu_1_1message2_1_1FormattedMessage.html#a6262e5202331707c8f0b422ad1b658eb"> 955</a></span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> <a class="code" href="classicu_1_1message2_1_1FormattedMessage.html#a6262e5202331707c8f0b422ad1b658eb">toTempString</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const override </span>{</div><div class="line"><a name="l00956"></a><span class="lineno"> 956</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00957"></a><span class="lineno"> 957</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca65a5a3a1b2f8ed0fb97e26068729a758">U_UNSUPPORTED_ERROR</a>;</div><div class="line"><a name="l00958"></a><span class="lineno"> 958</span>  }</div><div class="line"><a name="l00959"></a><span class="lineno"> 959</span>  <span class="keywordflow">return</span> {};</div><div class="line"><a name="l00960"></a><span class="lineno"> 960</span>  }</div><div class="line"><a name="l00967"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedMessage.html#ab91df274c480d41cccddcba5c5ef96e6"> 967</a></span>  <a class="code" href="classicu_1_1Appendable.html">Appendable</a>& <a class="code" href="classicu_1_1message2_1_1FormattedMessage.html#ab91df274c480d41cccddcba5c5ef96e6">appendTo</a>(<a class="code" href="classicu_1_1Appendable.html">Appendable</a>& appendable, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const override </span>{</div><div class="line"><a name="l00968"></a><span class="lineno"> 968</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00969"></a><span class="lineno"> 969</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca65a5a3a1b2f8ed0fb97e26068729a758">U_UNSUPPORTED_ERROR</a>;</div><div class="line"><a name="l00970"></a><span class="lineno"> 970</span>  }</div><div class="line"><a name="l00971"></a><span class="lineno"> 971</span>  <span class="keywordflow">return</span> appendable;</div><div class="line"><a name="l00972"></a><span class="lineno"> 972</span>  }</div><div class="line"><a name="l00979"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedMessage.html#a18d87f6aed93cb6243807f02f0ff4c57"> 979</a></span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> <a class="code" href="classicu_1_1message2_1_1FormattedMessage.html#a18d87f6aed93cb6243807f02f0ff4c57">nextPosition</a>(<a class="code" href="classicu_1_1ConstrainedFieldPosition.html">ConstrainedFieldPosition</a>& cfpos, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status)<span class="keyword"> const override </span>{</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span>  (void) cfpos;</div><div class="line"><a name="l00981"></a><span class="lineno"> 981</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00982"></a><span class="lineno"> 982</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca65a5a3a1b2f8ed0fb97e26068729a758">U_UNSUPPORTED_ERROR</a>;</div><div class="line"><a name="l00983"></a><span class="lineno"> 983</span>  }</div><div class="line"><a name="l00984"></a><span class="lineno"> 984</span>  <span class="keywordflow">return</span> <span class="keyword">false</span>;</div><div class="line"><a name="l00985"></a><span class="lineno"> 985</span>  }</div><div class="line"><a name="l00992"></a><span class="lineno"><a class="line" href="classicu_1_1message2_1_1FormattedMessage.html#a53dc72d0d996e02e00aecf8ac730e212"> 992</a></span>  <a class="code" href="classicu_1_1CharacterIterator.html">CharacterIterator</a>* <a class="code" href="classicu_1_1message2_1_1FormattedMessage.html#a53dc72d0d996e02e00aecf8ac730e212">toCharacterIterator</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) {</div><div class="line"><a name="l00993"></a><span class="lineno"> 993</span>  <span class="keywordflow">if</span> (<a class="code" href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a>(status)) {</div><div class="line"><a name="l00994"></a><span class="lineno"> 994</span>  status = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca65a5a3a1b2f8ed0fb97e26068729a758">U_UNSUPPORTED_ERROR</a>;</div><div class="line"><a name="l00995"></a><span class="lineno"> 995</span>  }</div><div class="line"><a name="l00996"></a><span class="lineno"> 996</span>  <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00997"></a><span class="lineno"> 997</span>  }</div><div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>  <span class="keyword">virtual</span> ~<a class="code" href="classicu_1_1message2_1_1FormattedMessage.html">FormattedMessage</a>();</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>  }; <span class="comment">// class FormattedMessage</span></div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> </div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> } <span class="comment">// namespace message2</span></div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> </div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> U_NAMESPACE_END</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> </div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> <span class="preprocessor">#endif // U_HIDE_DEPRECATED_API</span></div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> </div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> <span class="preprocessor">#endif </span><span class="comment">/* #if !UCONFIG_NO_MF2 */</span><span class="preprocessor"></span></div><div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> </div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> <span class="preprocessor">#endif </span><span class="comment">/* #if !UCONFIG_NO_FORMATTING */</span><span class="preprocessor"></span></div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> </div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> <span class="preprocessor">#endif </span><span class="comment">/* #if !UCONFIG_NO_NORMALIZATION */</span><span class="preprocessor"></span></div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> </div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> <span class="preprocessor">#endif </span><span class="comment">/* U_SHOW_CPLUSPLUS_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> </div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> <span class="preprocessor">#endif // MESSAGEFORMAT2_FORMATTABLE_H</span></div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> </div><div class="line"><a name="l01023"></a><span class="lineno"> 1023</span> <span class="comment">// eof</span></div><div class="ttc" id="classicu_1_1message2_1_1FormattedMessage_html_aa7e3d200ae9e3d40f57c6f37077d8013"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedMessage.html#aa7e3d200ae9e3d40f57c6f37077d8013">icu::message2::FormattedMessage::FormattedMessage</a></div><div class="ttdeci">FormattedMessage(UErrorCode &status)</div><div class="ttdoc">Not yet implemented. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00893">messageformat2_formattable.h:893</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_a603d89df32223ffed27ce4fec480f2aa"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#a603d89df32223ffed27ce4fec480f2aa">icu::message2::Formattable::Formattable</a></div><div class="ttdeci">U_I18N_API Formattable(double d)</div><div class="ttdoc">Double constructor. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00341">messageformat2_formattable.h:341</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedMessage_html_adad54ce70828fd1b8038cc274d82f769"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedMessage.html#adad54ce70828fd1b8038cc274d82f769">icu::message2::FormattedMessage::charAt</a></div><div class="ttdeci">char16_t charAt(int32_t index, UErrorCode &status) const</div><div class="ttdoc">Not yet implemented. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00916">messageformat2_formattable.h:916</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1MessageFormatter_html"><div class="ttname"><a href="classicu_1_1message2_1_1MessageFormatter.html">icu::message2::MessageFormatter</a></div><div class="ttdef"><b>Definition:</b> <a href="messageformat2_8h_source.html#l00054">messageformat2.h:54</a></div></div> <div class="ttc" id="utypes_8h_html_a527f2c69e6b2e3b2c53ad8a99fb36711"><div class="ttname"><a href="utypes_8h.html#a527f2c69e6b2e3b2c53ad8a99fb36711">U_SUCCESS</a></div><div class="ttdeci">#define U_SUCCESS(x)</div><div class="ttdoc">Does the error code indicate success? </div><div class="ttdef"><b>Definition:</b> <a href="utypes_8h_source.html#l00822">utypes.h:822</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_af36163ff4d5bac9636be52836ce9b948"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#af36163ff4d5bac9636be52836ce9b948">icu::message2::FormattedPlaceholder::canFormat</a></div><div class="ttdeci">U_I18N_API bool canFormat() const</div><div class="ttdoc">Returns true iff this represents a valid argument to the formatter. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00800">messageformat2_formattable.h:800</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_a26d8934297443260dc99bc6158a01068"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#a26d8934297443260dc99bc6158a01068">icu::message2::Formattable::getLong</a></div><div class="ttdeci">U_I18N_API int32_t getLong(UErrorCode &status) const</div><div class="ttdoc">Gets the long value of this object. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00155">messageformat2_formattable.h:155</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedValue_html"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedValue.html">icu::message2::FormattedValue</a></div><div class="ttdoc">A FormattedValue represents the result of formatting a message2::Formattable. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00591">messageformat2_formattable.h:591</a></div></div> <div class="ttc" id="utypes_8h_html_ace1704e9e77d407d1eaaa2e73ec0c039"><div class="ttname"><a href="utypes_8h.html#ace1704e9e77d407d1eaaa2e73ec0c039">UDate</a></div><div class="ttdeci">double UDate</div><div class="ttdoc">Date and Time data type. </div><div class="ttdef"><b>Definition:</b> <a href="utypes_8h_source.html#l00218">utypes.h:218</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedValue_html_ab810ef25ab838f63c36ef862db95decb"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedValue.html#ab810ef25ab838f63c36ef862db95decb">icu::message2::FormattedValue::isNumber</a></div><div class="ttdeci">bool isNumber() const</div><div class="ttdoc">Returns true iff this is a formatted number. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00629">messageformat2_formattable.h:629</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_a05f3429b1f35269b70f63313fc472f69"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#a05f3429b1f35269b70f63313fc472f69">icu::message2::Formattable::Formattable</a></div><div class="ttdeci">U_I18N_API Formattable(const UnicodeString &s)</div><div class="ttdoc">String constructor. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00332">messageformat2_formattable.h:332</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattableObject_html"><div class="ttname"><a href="classicu_1_1message2_1_1FormattableObject.html">icu::message2::FormattableObject</a></div><div class="ttdoc">FormattableObject is an abstract class that can be implemented in order to define an arbitrary class ...</div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00049">messageformat2_formattable.h:49</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedMessage_html_a4fa37809bf19f01047d2c9eeb8dff490"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedMessage.html#a4fa37809bf19f01047d2c9eeb8dff490">icu::message2::FormattedMessage::length</a></div><div class="ttdeci">int32_t length(UErrorCode &status) const</div><div class="ttdoc">Not yet implemented. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00904">messageformat2_formattable.h:904</a></div></div> <div class="ttc" id="classicu_1_1FormattedValue_html"><div class="ttname"><a href="classicu_1_1FormattedValue.html">icu::FormattedValue</a></div><div class="ttdoc">An abstract formatted value: a string with associated field attributes. </div><div class="ttdef"><b>Definition:</b> <a href="formattedvalue_8h_source.html#l00241">formattedvalue.h:241</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_a6dc114ad92dbaec61ef04bb4257419ab"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#a6dc114ad92dbaec61ef04bb4257419ab">icu::message2::Formattable::Formattable</a></div><div class="ttdeci">U_I18N_API Formattable()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00323">messageformat2_formattable.h:323</a></div></div> <div class="ttc" id="uformattable_8h_html_a5ca1403e425b22398d314ed8050eeb31"><div class="ttname"><a href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31">UFormattableType</a></div><div class="ttdeci">UFormattableType</div><div class="ttdoc">Enum designating the type of a UFormattable instance. </div><div class="ttdef"><b>Definition:</b> <a href="uformattable_8h_source.html#l00048">uformattable.h:48</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_a7a52cec7f5b19df9bbb79e94c8802db0"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#a7a52cec7f5b19df9bbb79e94c8802db0">icu::message2::Formattable::Formattable</a></div><div class="ttdeci">U_I18N_API Formattable(const Formattable *arr, int32_t len)</div><div class="ttdoc">Array constructor. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00385">messageformat2_formattable.h:385</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedMessage_html_ab05eba0a12d7f100eb85863700a4ef08"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedMessage.html#ab05eba0a12d7f100eb85863700a4ef08">icu::message2::FormattedMessage::toString</a></div><div class="ttdeci">UnicodeString toString(UErrorCode &status) const override</div><div class="ttdoc">Not yet implemented. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00943">messageformat2_formattable.h:943</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_a9d66891fa88d52cf2a04a2cbe82115a9"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#a9d66891fa88d52cf2a04a2cbe82115a9">icu::message2::FormattedPlaceholder::options</a></div><div class="ttdeci">U_I18N_API const FunctionOptions & options() const</div><div class="ttdoc">Returns the options of this placeholder. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00817">messageformat2_formattable.h:817</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#l00316">utypes.h:316</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedValue_html_ad61eb3388c04264d3f57b1f0bcb45e10"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedValue.html#ad61eb3388c04264d3f57b1f0bcb45e10">icu::message2::FormattedValue::isString</a></div><div class="ttdeci">bool isString() const</div><div class="ttdoc">Returns true iff this is a formatted string. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00620">messageformat2_formattable.h:620</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedMessage_html_a53dc72d0d996e02e00aecf8ac730e212"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedMessage.html#a53dc72d0d996e02e00aecf8ac730e212">icu::message2::FormattedMessage::toCharacterIterator</a></div><div class="ttdeci">CharacterIterator * toCharacterIterator(UErrorCode &status)</div><div class="ttdoc">Not yet implemented. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00992">messageformat2_formattable.h:992</a></div></div> <div class="ttc" id="utypes_8h_html_aab9c32f472a54ec81629b5b031f5741c"><div class="ttname"><a href="utypes_8h.html#aab9c32f472a54ec81629b5b031f5741c">U_I18N_API_CLASS</a></div><div class="ttdeci">#define U_I18N_API_CLASS</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#l00457">utypes.h:457</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_a0510c3d85635422cddd89219fabdf7f3"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#a0510c3d85635422cddd89219fabdf7f3">icu::message2::FormattedPlaceholder::FormattedPlaceholder</a></div><div class="ttdeci">U_I18N_API FormattedPlaceholder(const FormattedPlaceholder &input, FunctionOptions &&opts, FormattedValue &&output)</div><div class="ttdoc">Constructor for fully formatted placeholders with options. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00730">messageformat2_formattable.h:730</a></div></div> <div class="ttc" id="utypes_8h_html_a3343c1c8a8377277046774691c98d78ca65a5a3a1b2f8ed0fb97e26068729a758"><div class="ttname"><a href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca65a5a3a1b2f8ed0fb97e26068729a758">U_UNSUPPORTED_ERROR</a></div><div class="ttdoc">Requested operation not supported in current context. </div><div class="ttdef"><b>Definition:</b> <a href="utypes_8h_source.html#l00561">utypes.h:561</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_a9cd6e7952fc7e569970f3680cd7de05b"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#a9cd6e7952fc7e569970f3680cd7de05b">icu::message2::Formattable::getDouble</a></div><div class="ttdeci">U_I18N_API double getDouble(UErrorCode &status) const</div><div class="ttdoc">Gets the double value of this object. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00133">messageformat2_formattable.h:133</a></div></div> <div class="ttc" id="classicu_1_1CharacterIterator_html"><div class="ttname"><a href="classicu_1_1CharacterIterator.html">icu::CharacterIterator</a></div><div class="ttdoc">Abstract class that defines an API for iteration on text objects. </div><div class="ttdef"><b>Definition:</b> <a href="chariter_8h_source.html#l00361">chariter.h:361</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedMessage_html_a6262e5202331707c8f0b422ad1b658eb"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedMessage.html#a6262e5202331707c8f0b422ad1b658eb">icu::message2::FormattedMessage::toTempString</a></div><div class="ttdeci">UnicodeString toTempString(UErrorCode &status) const override</div><div class="ttdoc">Not yet implemented. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00955">messageformat2_formattable.h:955</a></div></div> <div class="ttc" id="utypes_8h_html_a3343c1c8a8377277046774691c98d78ca309ec9eeda4fba18847cf61f833445ea"><div class="ttname"><a href="utypes_8h.html#a3343c1c8a8377277046774691c98d78ca309ec9eeda4fba18847cf61f833445ea">U_ILLEGAL_ARGUMENT_ERROR</a></div><div class="ttdoc">Start of codes indicating failure. </div><div class="ttdef"><b>Definition:</b> <a href="utypes_8h_source.html#l00546">utypes.h:546</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedMessage_html_ab91df274c480d41cccddcba5c5ef96e6"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedMessage.html#ab91df274c480d41cccddcba5c5ef96e6">icu::message2::FormattedMessage::appendTo</a></div><div class="ttdeci">Appendable & appendTo(Appendable &appendable, UErrorCode &status) const override</div><div class="ttdoc">Not yet implemented. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00967">messageformat2_formattable.h:967</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_acafccaf12f117903756d03dd2f8c7d1c"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#acafccaf12f117903756d03dd2f8c7d1c">icu::message2::Formattable::Formattable</a></div><div class="ttdeci">U_I18N_API Formattable(DateInfo &&d)</div><div class="ttdoc">Date constructor. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00360">messageformat2_formattable.h:360</a></div></div> <div class="ttc" id="smpdtfmt_8h_html"><div class="ttname"><a href="smpdtfmt_8h.html">smpdtfmt.h</a></div><div class="ttdoc">C++ API: Format and parse dates in a language-independent manner. </div></div> <div class="ttc" id="uformattable_8h_html_a5ca1403e425b22398d314ed8050eeb31aeccbb155a4ba35697ccff1465eeaa09a"><div class="ttname"><a href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31aeccbb155a4ba35697ccff1465eeaa09a">UFMT_INT64</a></div><div class="ttdoc">ufmt_getInt64() will return without conversion. </div><div class="ttdef"><b>Definition:</b> <a href="uformattable_8h_source.html#l00054">uformattable.h:54</a></div></div> <div class="ttc" id="uformattable_8h_html_a5ca1403e425b22398d314ed8050eeb31a5bb91a7a04d185b66faa64f90ae15214"><div class="ttname"><a href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31a5bb91a7a04d185b66faa64f90ae15214">UFMT_OBJECT</a></div><div class="ttdoc">ufmt_getObject() will return without conversion. </div><div class="ttdef"><b>Definition:</b> <a href="uformattable_8h_source.html#l00055">uformattable.h:55</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_ab79efbcd2af497652bfb9ff1524cda94"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#ab79efbcd2af497652bfb9ff1524cda94">icu::message2::FormattedPlaceholder::getFallback</a></div><div class="ttdeci">U_I18N_API const UnicodeString & getFallback() const</div><div class="ttdoc">Gets the fallback value of this placeholder, to be used in its place if an error occurs while formatt...</div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00808">messageformat2_formattable.h:808</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_a69391bc5579f1a9325053fec4beb4e4c"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#a69391bc5579f1a9325053fec4beb4e4c">icu::message2::FormattedPlaceholder::isFallback</a></div><div class="ttdeci">U_I18N_API bool isFallback() const</div><div class="ttdoc">Returns true iff this is a fallback placeholder. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00771">messageformat2_formattable.h:771</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_ac473ceffac410d7e359a70bb94c0d5c1"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#ac473ceffac410d7e359a70bb94c0d5c1">icu::message2::FormattedPlaceholder::output</a></div><div class="ttdeci">U_I18N_API const FormattedValue & output() const</div><div class="ttdoc">Returns the formatted output of this placeholder. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00824">messageformat2_formattable.h:824</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_aa413410e102a512bf7837e7a5b54a537"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#aa413410e102a512bf7837e7a5b54a537">icu::message2::Formattable::Formattable</a></div><div class="ttdeci">U_I18N_API Formattable(int64_t i)</div><div class="ttdoc">Int64 constructor. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00350">messageformat2_formattable.h:350</a></div></div> <div class="ttc" id="uformattable_8h_html_a5ca1403e425b22398d314ed8050eeb31a395a7b29bce8877c8095e65f899d6499"><div class="ttname"><a href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31a395a7b29bce8877c8095e65f899d6499">UFMT_LONG</a></div><div class="ttdoc">ufmt_getLong() will return without conversion. </div><div class="ttdef"><b>Definition:</b> <a href="uformattable_8h_source.html#l00051">uformattable.h:51</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_a45b610689b6e36b34bd6684a2d34f100"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#a45b610689b6e36b34bd6684a2d34f100">icu::message2::Formattable::isNumeric</a></div><div class="ttdeci">U_I18N_API UBool isNumeric() const</div><div class="ttdoc">Returns true if the data type of this Formattable object is kDouble. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00253">messageformat2_formattable.h:253</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_ab6d58ccc79fda2ecb4f5289dc7c2021d"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#ab6d58ccc79fda2ecb4f5289dc7c2021d">icu::message2::FormattedPlaceholder::FormattedPlaceholder</a></div><div class="ttdeci">U_I18N_API FormattedPlaceholder(const FormattedPlaceholder &input, FormattedValue &&output)</div><div class="ttdoc">Constructor for fully formatted placeholders. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00715">messageformat2_formattable.h:715</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedValue_html_a1722c92698c8f90219f0a9617103d3b0"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedValue.html#a1722c92698c8f90219f0a9617103d3b0">icu::message2::FormattedValue::FormattedValue</a></div><div class="ttdeci">FormattedValue()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00611">messageformat2_formattable.h:611</a></div></div> <div class="ttc" id="classicu_1_1ConstrainedFieldPosition_html"><div class="ttname"><a href="classicu_1_1ConstrainedFieldPosition.html">icu::ConstrainedFieldPosition</a></div><div class="ttdoc">Represents a span of a string containing a given field. </div><div class="ttdef"><b>Definition:</b> <a href="formattedvalue_8h_source.html#l00041">formattedvalue.h:41</a></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#l00509">utypes.h:509</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedMessage_html"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedMessage.html">icu::message2::FormattedMessage</a></div><div class="ttdoc">Not yet implemented: The result of a message formatting operation. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00885">messageformat2_formattable.h:885</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_a81bcf5d48296880dce7cd66b9a331c11"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#a81bcf5d48296880dce7cd66b9a331c11">icu::message2::FormattedPlaceholder::isEvaluated</a></div><div class="ttdeci">U_I18N_API bool isEvaluated() const</div><div class="ttdoc">Returns true iff this has formatting output. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00791">messageformat2_formattable.h:791</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_aa44f789a3ffc03a9e84453cefe0f3f70"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#aa44f789a3ffc03a9e84453cefe0f3f70">icu::message2::Formattable::getInt64Value</a></div><div class="ttdeci">U_I18N_API int64_t getInt64Value(UErrorCode &status) const</div><div class="ttdoc">Gets the int64 value of this object. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00178">messageformat2_formattable.h:178</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_af7e73531f1fd92c56bc000f69325a3b3"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#af7e73531f1fd92c56bc000f69325a3b3">icu::message2::Formattable::getString</a></div><div class="ttdeci">U_I18N_API const UnicodeString & getString(UErrorCode &status) const</div><div class="ttdoc">Gets the string value of this object. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00215">messageformat2_formattable.h:215</a></div></div> <div class="ttc" id="structicu_1_1message2_1_1DateInfo_html_a43f6f3bca778f8e1900b52078c0e2992"><div class="ttname"><a href="structicu_1_1message2_1_1DateInfo.html#a43f6f3bca778f8e1900b52078c0e2992">icu::message2::DateInfo::date</a></div><div class="ttdeci">UDate date</div><div class="ttdoc">Date in UTC. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00085">messageformat2_formattable.h:85</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedValue_html_ab4309259b8973e2b6905a33d1e1f7a6b"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedValue.html#ab4309259b8973e2b6905a33d1e1f7a6b">icu::message2::FormattedValue::getNumber</a></div><div class="ttdeci">const number::FormattedNumber & getNumber() const</div><div class="ttdoc">Gets the number contents of this value. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00645">messageformat2_formattable.h:645</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FunctionOptions_html_ad5052404634e63c5816b49daed4395c3"><div class="ttname"><a href="classicu_1_1message2_1_1FunctionOptions.html#ad5052404634e63c5816b49daed4395c3">icu::message2::FunctionOptions::getOptions</a></div><div class="ttdeci">FunctionOptionsMap getOptions() const</div><div class="ttdoc">Returns a map of all name-value pairs provided as options to this function. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00505">messageformat2_formattable.h:505</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html">icu::message2::Formattable</a></div><div class="ttdoc">The Formattable class represents a typed value that can be formatted, originating either from a messa...</div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00113">messageformat2_formattable.h:113</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FunctionOptions_html"><div class="ttname"><a href="classicu_1_1message2_1_1FunctionOptions.html">icu::message2::FunctionOptions</a></div><div class="ttdoc">Structure encapsulating named options passed to a custom selector or formatter. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00490">messageformat2_formattable.h:490</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_a986d3a21025cd80ea91c65c40103f500"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#a986d3a21025cd80ea91c65c40103f500">icu::message2::FormattedPlaceholder::FormattedPlaceholder</a></div><div class="ttdeci">U_I18N_API FormattedPlaceholder(const Formattable &input, const UnicodeString &fb)</div><div class="ttdoc">Constructor for unformatted placeholders. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00742">messageformat2_formattable.h:742</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html">icu::message2::FormattedPlaceholder</a></div><div class="ttdoc">A FormattablePlaceholder encapsulates an input value (a message2::Formattable) together with an optio...</div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00691">messageformat2_formattable.h:691</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_af68c252c8919eea7bba022230941eac9"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#af68c252c8919eea7bba022230941eac9">icu::message2::FormattedPlaceholder::FormattedPlaceholder</a></div><div class="ttdeci">U_I18N_API FormattedPlaceholder()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00751">messageformat2_formattable.h:751</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_a4f180f412b32f63c01aa81bf99bb483a"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#a4f180f412b32f63c01aa81bf99bb483a">icu::message2::Formattable::Formattable</a></div><div class="ttdeci">U_I18N_API Formattable(const FormattableObject *obj)</div><div class="ttdoc">Object constructor. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00394">messageformat2_formattable.h:394</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_1message2_1_1FormattedMessage_html_a320824a81ed3748445e84e612ff765fc"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedMessage.html#a320824a81ed3748445e84e612ff765fc">icu::message2::FormattedMessage::subSequence</a></div><div class="ttdeci">StringPiece subSequence(int32_t start, int32_t end, UErrorCode &status) const</div><div class="ttdoc">Not yet implemented. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00929">messageformat2_formattable.h:929</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FunctionOptions_html_a0fbe398617f6aa8a34604d75d35f74e4"><div class="ttname"><a href="classicu_1_1message2_1_1FunctionOptions.html#a0fbe398617f6aa8a34604d75d35f74e4">icu::message2::FunctionOptions::FunctionOptions</a></div><div class="ttdeci">FunctionOptions()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00522">messageformat2_formattable.h:522</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_a059ad53964c51f809829c52129324a39"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#a059ad53964c51f809829c52129324a39">icu::message2::Formattable::swap</a></div><div class="ttdeci">U_I18N_API friend void swap(Formattable &f1, Formattable &f2) noexcept</div><div class="ttdoc">Non-member swap function. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00297">messageformat2_formattable.h:297</a></div></div> <div class="ttc" id="structicu_1_1message2_1_1DateInfo_html_a45632211370fba1873121579fbac28c5"><div class="ttname"><a href="structicu_1_1message2_1_1DateInfo.html#a45632211370fba1873121579fbac28c5">icu::message2::DateInfo::zoneId</a></div><div class="ttdeci">UnicodeString zoneId</div><div class="ttdoc">IANA time zone name; "UTC" if UTC; empty string if value is floating The time zone is required in ord...</div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00095">messageformat2_formattable.h:95</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedMessage_html_a18d87f6aed93cb6243807f02f0ff4c57"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedMessage.html#a18d87f6aed93cb6243807f02f0ff4c57">icu::message2::FormattedMessage::nextPosition</a></div><div class="ttdeci">UBool nextPosition(ConstrainedFieldPosition &cfpos, UErrorCode &status) const override</div><div class="ttdoc">Not yet implemented. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00979">messageformat2_formattable.h:979</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedValue_html_a045000f63cbf99628a3a4dd18dc1b76c"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedValue.html#a045000f63cbf99628a3a4dd18dc1b76c">icu::message2::FormattedValue::getString</a></div><div class="ttdeci">const UnicodeString & getString() const</div><div class="ttdoc">Gets the string contents of this value. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00637">messageformat2_formattable.h:637</a></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#l00302">unistr.h:302</a></div></div> <div class="ttc" id="chariter_8h_html"><div class="ttname"><a href="chariter_8h.html">chariter.h</a></div><div class="ttdoc">C++ API: Character Iterator. </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#l00063">fmtable.h:63</a></div></div> <div class="ttc" id="classicu_1_1number_1_1FormattedNumber_html"><div class="ttname"><a href="classicu_1_1number_1_1FormattedNumber.html">icu::number::FormattedNumber</a></div><div class="ttdoc">The result of a number formatting operation. </div><div class="ttdef"><b>Definition:</b> <a href="formattednumber_8h_source.html#l00048">formattednumber.h:48</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_af3b3f05fd3521d51f28b824b2c05254a"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#af3b3f05fd3521d51f28b824b2c05254a">icu::message2::FormattedPlaceholder::isNullOperand</a></div><div class="ttdeci">U_I18N_API bool isNullOperand() const</div><div class="ttdoc">Returns true iff this is a null placeholder. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00781">messageformat2_formattable.h:781</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1FormattedPlaceholder_html_a2cc674d703d7229d1a4444e703585539"><div class="ttname"><a href="classicu_1_1message2_1_1FormattedPlaceholder.html#a2cc674d703d7229d1a4444e703585539">icu::message2::FormattedPlaceholder::FormattedPlaceholder</a></div><div class="ttdeci">U_I18N_API FormattedPlaceholder(const UnicodeString &s)</div><div class="ttdoc">Fallback constructor. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00703">messageformat2_formattable.h:703</a></div></div> <div class="ttc" id="classicu_1_1StringPiece_html"><div class="ttname"><a href="classicu_1_1StringPiece.html">icu::StringPiece</a></div><div class="ttdoc">A string-like object that points to a sized piece of memory. </div><div class="ttdef"><b>Definition:</b> <a href="stringpiece_8h_source.html#l00061">stringpiece.h:61</a></div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_a74b0a4476f6a4f5b0f6ebf7386522685"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#a74b0a4476f6a4f5b0f6ebf7386522685">icu::message2::Formattable::getDate</a></div><div class="ttdeci">U_I18N_API const DateInfo * getDate(UErrorCode &status) const</div><div class="ttdoc">Gets the struct representing the date value of this object. </div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00236">messageformat2_formattable.h:236</a></div></div> <div class="ttc" id="classicu_1_1UObject_html"><div class="ttname"><a href="classicu_1_1UObject.html">icu::UObject</a></div><div class="ttdoc">UObject is the common ICU "boilerplate" class. </div><div class="ttdef"><b>Definition:</b> <a href="uobject_8h_source.html#l00222">uobject.h:222</a></div></div> <div class="ttc" id="numberformatter_8h_html"><div class="ttname"><a href="numberformatter_8h.html">numberformatter.h</a></div><div class="ttdoc">C++ API: All-in-one formatter for localized numbers, currencies, and units. </div></div> <div class="ttc" id="classicu_1_1message2_1_1Formattable_html_af5c0ae9b4fc869c32fc1393fbd55e449"><div class="ttname"><a href="classicu_1_1message2_1_1Formattable.html#af5c0ae9b4fc869c32fc1393fbd55e449">icu::message2::Formattable::getObject</a></div><div class="ttdeci">U_I18N_API const FormattableObject * getObject(UErrorCode &status) const</div><div class="ttdoc">Returns a pointer to the FormattableObject contained within this formattable, or if this object does ...</div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00277">messageformat2_formattable.h:277</a></div></div> <div class="ttc" id="structicu_1_1message2_1_1DateInfo_html"><div class="ttname"><a href="structicu_1_1message2_1_1DateInfo.html">icu::message2::DateInfo</a></div><div class="ttdoc">The DateInfo struct represents all the information needed to format a date with a time zone...</div><div class="ttdef"><b>Definition:</b> <a href="messageformat2__formattable_8h_source.html#l00078">messageformat2_formattable.h:78</a></div></div> <div class="ttc" id="uformattable_8h_html_a5ca1403e425b22398d314ed8050eeb31a8f43ec16b9d12dc49d18b70685bf896a"><div class="ttname"><a href="uformattable_8h.html#a5ca1403e425b22398d314ed8050eeb31a8f43ec16b9d12dc49d18b70685bf896a">UFMT_DOUBLE</a></div><div class="ttdoc">ufmt_getDouble() will return without conversion. </div><div class="ttdef"><b>Definition:</b> <a href="uformattable_8h_source.html#l00050">uformattable.h:50</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#l00269">umachine.h:269</a></div></div> <div class="ttc" id="classicu_1_1Appendable_html"><div class="ttname"><a href="classicu_1_1Appendable.html">icu::Appendable</a></div><div class="ttdoc">Base class for objects to which Unicode characters and strings can be appended. </div><div class="ttdef"><b>Definition:</b> <a href="appendable_8h_source.html#l00054">appendable.h:54</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#l00198">locid.h:198</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>
| ver. 1.6 |
Github
|
.
| PHP 8.3.30 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка