JezK
Edit File: uniset_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 77.1: common/unicode/uniset.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 77.1  <span id="projectnumber">77.1</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_bdd9a5d540de89e9fe90efdfc6973a4f.html">common</a></li><li class="navelem"><a class="el" href="dir_f59c6450ff718ff1b085cfd1c36acbd7.html">unicode</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="headertitle"> <div class="title">uniset.h</div> </div> </div><!--header--> <div class="contents"> <a href="uniset_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// © 2016 and later: Unicode, Inc. and others.</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// License & terms of use: http://www.unicode.org/copyright.html</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">/*</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">***************************************************************************</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">* Copyright (C) 1999-2016, International Business Machines Corporation</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">* and others. All Rights Reserved.</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">***************************************************************************</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">* Date Name Description</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">* 10/20/99 alan Creation.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">***************************************************************************</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">*/</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> </div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="preprocessor">#ifndef UNICODESET_H</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="preprocessor">#define UNICODESET_H</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> </div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="preprocessor">#include "<a class="code" href="utypes_8h.html">unicode/utypes.h</a>"</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> </div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#if U_SHOW_CPLUSPLUS_API</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> </div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "<a class="code" href="ucpmap_8h.html">unicode/ucpmap.h</a>"</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "<a class="code" href="unifilt_8h.html">unicode/unifilt.h</a>"</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include "<a class="code" href="unistr_8h.html">unicode/unistr.h</a>"</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include "<a class="code" href="uset_8h.html">unicode/uset.h</a>"</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> U_NAMESPACE_BEGIN</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="comment">// Forward Declarations.</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keyword">class </span>BMPSet;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">class </span>ParsePosition;</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keyword">class </span>RBBIRuleScanner;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keyword">class </span>SymbolTable;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keyword">class </span>UnicodeSetStringSpan;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">class </span>UVector;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keyword">class </span>RuleCharacterIterator;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div><div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html"> 285</a></span> <span class="keyword">class </span><a class="code" href="utypes_8h.html#a559955ec3bc692657c5d8b1c6de8e334">U_COMMON_API</a> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a> final : <span class="keyword">public</span> <a class="code" href="classicu_1_1UnicodeFilter.html">UnicodeFilter</a> {</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>  <span class="keyword">static</span> constexpr int32_t <a class="code" href="RunArrays_8h.html#a5446a5bbb68bb93392b04dfbfa0095af">INITIAL_CAPACITY</a> = 25;</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  <span class="comment">// fFlags constant</span></div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  <span class="keyword">static</span> constexpr uint8_t kIsBogus = 1; <span class="comment">// This set is bogus (i.e. not valid)</span></div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span> </div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>* list = stackList; <span class="comment">// MUST be terminated with HIGH</span></div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  int32_t capacity = <a class="code" href="RunArrays_8h.html#a5446a5bbb68bb93392b04dfbfa0095af">INITIAL_CAPACITY</a>; <span class="comment">// capacity of list</span></div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  int32_t len = 1; <span class="comment">// length of list used; 1 <= len <= capacity</span></div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  uint8_t fFlags = 0; <span class="comment">// Bit flag (see constants above)</span></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>  BMPSet *bmpSet = <span class="keyword">nullptr</span>; <span class="comment">// The set is frozen iff either bmpSet or stringSpan is not nullptr.</span></div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>  <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>* buffer = <span class="keyword">nullptr</span>; <span class="comment">// internal buffer, may be nullptr</span></div><div class="line"><a name="l00302"></a><span class="lineno"> 302</span>  int32_t bufferCapacity = 0; <span class="comment">// capacity of buffer</span></div><div class="line"><a name="l00303"></a><span class="lineno"> 303</span> </div><div class="line"><a name="l00313"></a><span class="lineno"> 313</span>  char16_t *pat = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>  int32_t patLen = 0;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span> </div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>  UVector* strings_ = <span class="keyword">nullptr</span>; <span class="comment">// maintained in sorted order</span></div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>  UnicodeSetStringSpan *stringSpan = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span> </div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>  <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> stackList[<a class="code" href="RunArrays_8h.html#a5446a5bbb68bb93392b04dfbfa0095af">INITIAL_CAPACITY</a>];</div><div class="line"><a name="l00325"></a><span class="lineno"> 325</span> </div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> isBogus() <span class="keyword">const</span>;</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span> </div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>  <span class="keywordtype">void</span> setToBogus();</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span> </div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span> </div><div class="line"><a name="l00358"></a><span class="lineno"> 358</span>  <span class="keyword">enum</span> {</div><div class="line"><a name="l00363"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a3b29590118ff2a1f4c7927a930abb809a104cad219e5d184fac1b5c9e25272334"> 363</a></span>  MIN_VALUE = 0,</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span> </div><div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a3b29590118ff2a1f4c7927a930abb809add725986d52c034ea1a30d1ba6f5baab"> 369</a></span>  MAX_VALUE = 0x10ffff</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>  };</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span> </div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  <span class="comment">// Constructors &c</span></div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span> </div><div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00377"></a><span class="lineno"> 377</span> </div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>();</div><div class="line"><a name="l00383"></a><span class="lineno"> 383</span> </div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end);</div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span> </div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span> </div><div class="line"><a name="l00398"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a04345555373b09f97a947251a8bea1ad"> 398</a></span>  <span class="keyword">enum</span> <a class="code" href="classicu_1_1UnicodeSet.html#a04345555373b09f97a947251a8bea1ad">ESerialization</a> {</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>  kSerialized <span class="comment">/* result of serialize() */</span></div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  };</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span> </div><div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>(<span class="keyword">const</span> uint16_t buffer[], int32_t bufferLen,</div><div class="line"><a name="l00413"></a><span class="lineno"> 413</span>  ESerialization serialization, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status);</div><div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l00415"></a><span class="lineno"> 415</span> </div><div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00425"></a><span class="lineno"> 425</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00426"></a><span class="lineno"> 426</span> </div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span> </div><div class="line"><a name="l00442"></a><span class="lineno"> 442</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00443"></a><span class="lineno"> 443</span>  uint32_t options,</div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1SymbolTable.html">SymbolTable</a>* symbols,</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l00447"></a><span class="lineno"> 447</span> </div><div class="line"><a name="l00463"></a><span class="lineno"> 463</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern, <a class="code" href="classicu_1_1ParsePosition.html">ParsePosition</a>& pos,</div><div class="line"><a name="l00464"></a><span class="lineno"> 464</span>  uint32_t options,</div><div class="line"><a name="l00465"></a><span class="lineno"> 465</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1SymbolTable.html">SymbolTable</a>* symbols,</div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span> </div><div class="line"><a name="l00472"></a><span class="lineno"> 472</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& o);</div><div class="line"><a name="l00473"></a><span class="lineno"> 473</span> </div><div class="line"><a name="l00478"></a><span class="lineno"> 478</span>  <span class="keyword">virtual</span> ~<a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>();</div><div class="line"><a name="l00479"></a><span class="lineno"> 479</span> </div><div class="line"><a name="l00485"></a><span class="lineno"> 485</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& operator=(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& o);</div><div class="line"><a name="l00486"></a><span class="lineno"> 486</span> </div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="namespaceicu.html#a1c2f6ca43e636f38d1a3291eb851e9f0">operator==</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& o) <span class="keyword">const</span>;</div><div class="line"><a name="l00499"></a><span class="lineno"> 499</span> </div><div class="line"><a name="l00505"></a><span class="lineno"> 505</span>  <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="namespaceicu.html#a8d8f68e93f4a83a227b82cec7745dff6">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& o) <span class="keyword">const</span>;</div><div class="line"><a name="l00506"></a><span class="lineno"> 506</span> </div><div class="line"><a name="l00516"></a><span class="lineno"> 516</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>* <a class="code" href="classicu_1_1UnicodeFilter.html#a843a77efc53550c90cb865a902e4f8b7">clone</a>() <span class="keyword">const override</span>;</div><div class="line"><a name="l00517"></a><span class="lineno"> 517</span> </div><div class="line"><a name="l00525"></a><span class="lineno"> 525</span>  <span class="keyword">virtual</span> int32_t hashCode() <span class="keyword">const</span>;</div><div class="line"><a name="l00526"></a><span class="lineno"> 526</span> </div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>  <span class="keyword">inline</span> <span class="keyword">static</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a> *fromUSet(<a class="code" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *uset);</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span> </div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>  <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a> *fromUSet(<span class="keyword">const</span> <a class="code" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *uset);</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>  </div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  <span class="keyword">inline</span> <a class="code" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *toUSet();</div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span> </div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span> </div><div class="line"><a name="l00564"></a><span class="lineno"> 564</span>  <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> * toUSet() <span class="keyword">const</span>;</div><div class="line"><a name="l00565"></a><span class="lineno"> 565</span> </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">//----------------------------------------------------------------</span></div><div class="line"><a name="l00568"></a><span class="lineno"> 568</span>  <span class="comment">// Freezable API</span></div><div class="line"><a name="l00569"></a><span class="lineno"> 569</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l00570"></a><span class="lineno"> 570</span> </div><div class="line"><a name="l00579"></a><span class="lineno"> 579</span>  <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> isFrozen() <span class="keyword">const</span>;</div><div class="line"><a name="l00580"></a><span class="lineno"> 580</span> </div><div class="line"><a name="l00594"></a><span class="lineno"> 594</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a> *freeze();</div><div class="line"><a name="l00595"></a><span class="lineno"> 595</span> </div><div class="line"><a name="l00604"></a><span class="lineno"> 604</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a> *cloneAsThawed() <span class="keyword">const</span>;</div><div class="line"><a name="l00605"></a><span class="lineno"> 605</span> </div><div class="line"><a name="l00606"></a><span class="lineno"> 606</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l00607"></a><span class="lineno"> 607</span>  <span class="comment">// Public API</span></div><div class="line"><a name="l00608"></a><span class="lineno"> 608</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l00609"></a><span class="lineno"> 609</span> </div><div class="line"><a name="l00619"></a><span class="lineno"> 619</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& <span class="keyword">set</span>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end);</div><div class="line"><a name="l00620"></a><span class="lineno"> 620</span> </div><div class="line"><a name="l00626"></a><span class="lineno"> 626</span>  <span class="keyword">static</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> resemblesPattern(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>  int32_t pos);</div><div class="line"><a name="l00628"></a><span class="lineno"> 628</span> </div><div class="line"><a name="l00641"></a><span class="lineno"> 641</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& applyPattern(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00642"></a><span class="lineno"> 642</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span> </div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span> </div><div class="line"><a name="l00663"></a><span class="lineno"> 663</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& applyPattern(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00664"></a><span class="lineno"> 664</span>  uint32_t options,</div><div class="line"><a name="l00665"></a><span class="lineno"> 665</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1SymbolTable.html">SymbolTable</a>* symbols,</div><div class="line"><a name="l00666"></a><span class="lineno"> 666</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l00668"></a><span class="lineno"> 668</span> </div><div class="line"><a name="l00702"></a><span class="lineno"> 702</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& applyPattern(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l00703"></a><span class="lineno"> 703</span>  <a class="code" href="classicu_1_1ParsePosition.html">ParsePosition</a>& pos,</div><div class="line"><a name="l00704"></a><span class="lineno"> 704</span>  uint32_t options,</div><div class="line"><a name="l00705"></a><span class="lineno"> 705</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1SymbolTable.html">SymbolTable</a>* symbols,</div><div class="line"><a name="l00706"></a><span class="lineno"> 706</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00707"></a><span class="lineno"> 707</span> </div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& <a class="code" href="classicu_1_1UnicodeMatcher.html#aa2d17c41221099e719da2f95c5bbbbec">toPattern</a>(<a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& result,</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> escapeUnprintable = <span class="keyword">false</span>) <span class="keyword">const override</span>;</div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span> </div><div class="line"><a name="l00746"></a><span class="lineno"> 746</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& applyIntPropertyValue(<a class="code" href="uchar_8h.html#ae40d616419e74ecc7c80a9febab03199">UProperty</a> prop,</div><div class="line"><a name="l00747"></a><span class="lineno"> 747</span>  int32_t value,</div><div class="line"><a name="l00748"></a><span class="lineno"> 748</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& ec);</div><div class="line"><a name="l00749"></a><span class="lineno"> 749</span> </div><div class="line"><a name="l00779"></a><span class="lineno"> 779</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& applyPropertyAlias(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& prop,</div><div class="line"><a name="l00780"></a><span class="lineno"> 780</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& value,</div><div class="line"><a name="l00781"></a><span class="lineno"> 781</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& ec);</div><div class="line"><a name="l00782"></a><span class="lineno"> 782</span> </div><div class="line"><a name="l00795"></a><span class="lineno"> 795</span>  <span class="keyword">virtual</span> int32_t size() <span class="keyword">const</span>;</div><div class="line"><a name="l00796"></a><span class="lineno"> 796</span> </div><div class="line"><a name="l00803"></a><span class="lineno"> 803</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> isEmpty() <span class="keyword">const</span>;</div><div class="line"><a name="l00804"></a><span class="lineno"> 804</span> </div><div class="line"><a name="l00809"></a><span class="lineno"> 809</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> hasStrings() <span class="keyword">const</span>;</div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span> </div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> <a class="code" href="classicu_1_1UnicodeFilter.html#afdf2d8d579f6904de6115e3ade299848">contains</a>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c) <span class="keyword">const override</span>;</div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span> </div><div class="line"><a name="l00828"></a><span class="lineno"> 828</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> <a class="code" href="classicu_1_1UnicodeFilter.html#afdf2d8d579f6904de6115e3ade299848">contains</a>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end) <span class="keyword">const</span>;</div><div class="line"><a name="l00829"></a><span class="lineno"> 829</span> </div><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> <a class="code" href="classicu_1_1UnicodeFilter.html#afdf2d8d579f6904de6115e3ade299848">contains</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s) <span class="keyword">const</span>;</div><div class="line"><a name="l00838"></a><span class="lineno"> 838</span> </div><div class="line"><a name="l00846"></a><span class="lineno"> 846</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> containsAll(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& c) <span class="keyword">const</span>;</div><div class="line"><a name="l00847"></a><span class="lineno"> 847</span> </div><div class="line"><a name="l00855"></a><span class="lineno"> 855</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> containsAll(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s) <span class="keyword">const</span>;</div><div class="line"><a name="l00856"></a><span class="lineno"> 856</span> </div><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> containsNone(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end) <span class="keyword">const</span>;</div><div class="line"><a name="l00866"></a><span class="lineno"> 866</span> </div><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> containsNone(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& c) <span class="keyword">const</span>;</div><div class="line"><a name="l00875"></a><span class="lineno"> 875</span> </div><div class="line"><a name="l00883"></a><span class="lineno"> 883</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> containsNone(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s) <span class="keyword">const</span>;</div><div class="line"><a name="l00884"></a><span class="lineno"> 884</span> </div><div class="line"><a name="l00893"></a><span class="lineno"> 893</span>  <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> containsSome(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end) <span class="keyword">const</span>;</div><div class="line"><a name="l00894"></a><span class="lineno"> 894</span> </div><div class="line"><a name="l00902"></a><span class="lineno"> 902</span>  <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> containsSome(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& s) <span class="keyword">const</span>;</div><div class="line"><a name="l00903"></a><span class="lineno"> 903</span> </div><div class="line"><a name="l00911"></a><span class="lineno"> 911</span>  <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> containsSome(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s) <span class="keyword">const</span>;</div><div class="line"><a name="l00912"></a><span class="lineno"> 912</span> </div><div class="line"><a name="l00931"></a><span class="lineno"> 931</span>  int32_t span(<span class="keyword">const</span> char16_t *s, int32_t length, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div><div class="line"><a name="l00932"></a><span class="lineno"> 932</span> </div><div class="line"><a name="l00945"></a><span class="lineno"> 945</span>  <span class="keyword">inline</span> int32_t span(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> &s, int32_t start, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div><div class="line"><a name="l00946"></a><span class="lineno"> 946</span> </div><div class="line"><a name="l00964"></a><span class="lineno"> 964</span>  int32_t spanBack(<span class="keyword">const</span> char16_t *s, int32_t length, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div><div class="line"><a name="l00965"></a><span class="lineno"> 965</span> </div><div class="line"><a name="l00979"></a><span class="lineno"> 979</span>  <span class="keyword">inline</span> int32_t spanBack(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> &s, int32_t limit, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div><div class="line"><a name="l00980"></a><span class="lineno"> 980</span> </div><div class="line"><a name="l00999"></a><span class="lineno"> 999</span>  int32_t spanUTF8(<span class="keyword">const</span> <span class="keywordtype">char</span> *s, int32_t length, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> </div><div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>  int32_t spanBackUTF8(<span class="keyword">const</span> <span class="keywordtype">char</span> *s, int32_t length, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> </div><div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>  <span class="keyword">virtual</span> <a class="code" href="namespaceicu.html#a6b6eaca969662d8185a58bb2e2e68d0f">UMatchDegree</a> <a class="code" href="classicu_1_1UnicodeFilter.html#ada0730a2dea83b94b980b08010800d84">matches</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1Replaceable.html">Replaceable</a>& text,</div><div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>  int32_t& offset,</div><div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>  int32_t limit,</div><div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> incremental) <span class="keyword">override</span>;</div><div class="line"><a name="l01028"></a><span class="lineno"> 1028</span> </div><div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> <span class="keyword">private</span>:</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>  <span class="keyword">static</span> int32_t matchRest(<span class="keyword">const</span> <a class="code" href="classicu_1_1Replaceable.html">Replaceable</a>& text,</div><div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>  int32_t start, int32_t limit,</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span> </div><div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>  int32_t findCodePoint(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c) <span class="keyword">const</span>;</div><div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> </div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> <span class="keyword">public</span>:</div><div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> </div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classicu_1_1UnicodeMatcher.html#ad2ff342d41851f6f845070cdfc6b1da0">addMatchSetTo</a>(<a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& toUnionTo) <span class="keyword">const override</span>;</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> </div><div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>  int32_t indexOf(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c) <span class="keyword">const</span>;</div><div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> </div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>  <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> charAt(int32_t index) <span class="keyword">const</span>;</div><div class="line"><a name="l01104"></a><span class="lineno"> 1104</span> </div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span> <span class="preprocessor">#ifndef U_HIDE_DRAFT_API</span></div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> </div><div class="line"><a name="l01123"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a537a13a1b3adcaebc140f715876aca63"> 1123</a></span>  <span class="keyword">inline</span> U_HEADER_NESTED_NAMESPACE::USetCodePoints <a class="code" href="classicu_1_1UnicodeSet.html#a537a13a1b3adcaebc140f715876aca63">codePoints</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>  <span class="keywordflow">return</span> U_HEADER_NESTED_NAMESPACE::USetCodePoints(toUSet());</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>  }</div><div class="line"><a name="l01126"></a><span class="lineno"> 1126</span> </div><div class="line"><a name="l01149"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a689385fcc1e2e9e05996e9e19229ea3f"> 1149</a></span>  <span class="keyword">inline</span> U_HEADER_NESTED_NAMESPACE::USetRanges <a class="code" href="classicu_1_1UnicodeSet.html#a689385fcc1e2e9e05996e9e19229ea3f">ranges</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>  <span class="keywordflow">return</span> U_HEADER_NESTED_NAMESPACE::USetRanges(toUSet());</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>  }</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span> </div><div class="line"><a name="l01173"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a054e7d9e1c1476acd1a9f3d9113395bd"> 1173</a></span>  <span class="keyword">inline</span> U_HEADER_NESTED_NAMESPACE::USetStrings <a class="code" href="classicu_1_1UnicodeSet.html#a054e7d9e1c1476acd1a9f3d9113395bd">strings</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>  <span class="keywordflow">return</span> U_HEADER_NESTED_NAMESPACE::USetStrings(toUSet());</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>  }</div><div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> <span class="preprocessor">#endif // U_HIDE_DRAFT_API</span></div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> </div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> <span class="preprocessor">#ifndef U_HIDE_DRAFT_API</span></div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span> </div><div class="line"><a name="l01203"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a5fa614db3126d486342773afb5979e56"> 1203</a></span>  <span class="keyword">inline</span> U_HEADER_NESTED_NAMESPACE::USetElementIterator <a class="code" href="classicu_1_1UnicodeSet.html#a5fa614db3126d486342773afb5979e56">begin</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>  <span class="keywordflow">return</span> U_HEADER_NESTED_NAMESPACE::USetElements(toUSet()).begin();</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>  }</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span> </div><div class="line"><a name="l01215"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a5806e04261e1fc150f9e177090697f0f"> 1215</a></span>  <span class="keyword">inline</span> U_HEADER_NESTED_NAMESPACE::USetElementIterator <a class="code" href="classicu_1_1UnicodeSet.html#a5806e04261e1fc150f9e177090697f0f">end</a>()<span class="keyword"> const </span>{</div><div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>  <span class="keywordflow">return</span> U_HEADER_NESTED_NAMESPACE::USetElements(toUSet()).end();</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>  }</div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> <span class="preprocessor">#endif // U_HIDE_DRAFT_API</span></div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> </div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& add(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end);</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span> </div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& add(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c);</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span> </div><div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& add(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01260"></a><span class="lineno"> 1260</span> </div><div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>  <span class="keyword">private</span>:</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>  <span class="keyword">static</span> int32_t getSingleCP(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span> </div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>  <span class="keywordtype">void</span> _add(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span> </div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& addAll(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01281"></a><span class="lineno"> 1281</span> </div><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& retainAll(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01290"></a><span class="lineno"> 1290</span> </div><div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& complementAll(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01299"></a><span class="lineno"> 1299</span> </div><div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& removeAll(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01308"></a><span class="lineno"> 1308</span> </div><div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>  <span class="keyword">static</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>* U_EXPORT2 createFrom(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01318"></a><span class="lineno"> 1318</span> </div><div class="line"><a name="l01319"></a><span class="lineno"> 1319</span> </div><div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>  <span class="keyword">static</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>* U_EXPORT2 createFromAll(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01328"></a><span class="lineno"> 1328</span> </div><div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& retain(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end);</div><div class="line"><a name="l01341"></a><span class="lineno"> 1341</span> </div><div class="line"><a name="l01342"></a><span class="lineno"> 1342</span> </div><div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& retain(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c);</div><div class="line"><a name="l01352"></a><span class="lineno"> 1352</span> </div><div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& retain(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> &s);</div><div class="line"><a name="l01364"></a><span class="lineno"> 1364</span> </div><div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& <span class="keyword">remove</span>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end);</div><div class="line"><a name="l01379"></a><span class="lineno"> 1379</span> </div><div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& <span class="keyword">remove</span>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c);</div><div class="line"><a name="l01391"></a><span class="lineno"> 1391</span> </div><div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& <span class="keyword">remove</span>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01402"></a><span class="lineno"> 1402</span> </div><div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& complement();</div><div class="line"><a name="l01416"></a><span class="lineno"> 1416</span> </div><div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& complement(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end);</div><div class="line"><a name="l01430"></a><span class="lineno"> 1430</span> </div><div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& complement(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c);</div><div class="line"><a name="l01442"></a><span class="lineno"> 1442</span> </div><div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& complement(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s);</div><div class="line"><a name="l01453"></a><span class="lineno"> 1453</span> </div><div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& addAll(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& c);</div><div class="line"><a name="l01467"></a><span class="lineno"> 1467</span> </div><div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& retainAll(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& c);</div><div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> </div><div class="line"><a name="l01492"></a><span class="lineno"> 1492</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& removeAll(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& c);</div><div class="line"><a name="l01493"></a><span class="lineno"> 1493</span> </div><div class="line"><a name="l01504"></a><span class="lineno"> 1504</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& complementAll(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& c);</div><div class="line"><a name="l01505"></a><span class="lineno"> 1505</span> </div><div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& clear();</div><div class="line"><a name="l01513"></a><span class="lineno"> 1513</span> </div><div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& closeOver(int32_t attribute);</div><div class="line"><a name="l01542"></a><span class="lineno"> 1542</span> </div><div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a> &removeAllStrings();</div><div class="line"><a name="l01550"></a><span class="lineno"> 1550</span> </div><div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>  <span class="keyword">virtual</span> int32_t getRangeCount() <span class="keyword">const</span>;</div><div class="line"><a name="l01559"></a><span class="lineno"> 1559</span> </div><div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> getRangeStart(int32_t index) <span class="keyword">const</span>;</div><div class="line"><a name="l01568"></a><span class="lineno"> 1568</span> </div><div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> getRangeEnd(int32_t index) <span class="keyword">const</span>;</div><div class="line"><a name="l01577"></a><span class="lineno"> 1577</span> </div><div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>  int32_t serialize(uint16_t *dest, int32_t destCapacity, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& ec) <span class="keyword">const</span>;</div><div class="line"><a name="l01627"></a><span class="lineno"> 1627</span> </div><div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& compact();</div><div class="line"><a name="l01635"></a><span class="lineno"> 1635</span> </div><div class="line"><a name="l01647"></a><span class="lineno"> 1647</span>  <span class="keyword">static</span> <a class="code" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> U_EXPORT2 <a class="code" href="classicu_1_1UnicodeFilter.html#a736f2b13102cdca9d385d2b4aa0012b2">getStaticClassID</a>();</div><div class="line"><a name="l01648"></a><span class="lineno"> 1648</span> </div><div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>  <span class="keyword">virtual</span> <a class="code" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> <a class="code" href="classicu_1_1UnicodeFunctor.html#aa6b6193b74673285df9d2c70b117a6ce">getDynamicClassID</a>() <span class="keyword">const override</span>;</div><div class="line"><a name="l01658"></a><span class="lineno"> 1658</span> </div><div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>  <span class="keyword">private</span>:</div><div class="line"><a name="l01660"></a><span class="lineno"> 1660</span> </div><div class="line"><a name="l01661"></a><span class="lineno"> 1661</span>  <span class="comment">// Private API for the USet API</span></div><div class="line"><a name="l01662"></a><span class="lineno"> 1662</span> </div><div class="line"><a name="l01663"></a><span class="lineno"> 1663</span>  <span class="keyword">friend</span> <span class="keyword">class </span>USetAccess;</div><div class="line"><a name="l01664"></a><span class="lineno"> 1664</span> </div><div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>* getString(int32_t index) <span class="keyword">const</span>;</div><div class="line"><a name="l01666"></a><span class="lineno"> 1666</span> </div><div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>  <span class="comment">// RuleBasedTransliterator support</span></div><div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l01670"></a><span class="lineno"> 1670</span> </div><div class="line"><a name="l01671"></a><span class="lineno"> 1671</span> <span class="keyword">private</span>:</div><div class="line"><a name="l01672"></a><span class="lineno"> 1672</span> </div><div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> <a class="code" href="classicu_1_1UnicodeMatcher.html#ae6c02c180dcb3332a4b2ece814ce9f9a">matchesIndexValue</a>(uint8_t v) <span class="keyword">const override</span>;</div><div class="line"><a name="l01679"></a><span class="lineno"> 1679</span> </div><div class="line"><a name="l01680"></a><span class="lineno"> 1680</span> <span class="keyword">private</span>:</div><div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>  <span class="keyword">friend</span> <span class="keyword">class </span>RBBIRuleScanner;</div><div class="line"><a name="l01682"></a><span class="lineno"> 1682</span> </div><div class="line"><a name="l01683"></a><span class="lineno"> 1683</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l01684"></a><span class="lineno"> 1684</span>  <span class="comment">// Implementation: Clone as thawed (see ICU4J Freezable)</span></div><div class="line"><a name="l01685"></a><span class="lineno"> 1685</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l01686"></a><span class="lineno"> 1686</span> </div><div class="line"><a name="l01687"></a><span class="lineno"> 1687</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& o, <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> <span class="comment">/* asThawed */</span>);</div><div class="line"><a name="l01688"></a><span class="lineno"> 1688</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& copyFrom(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& o, <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> asThawed);</div><div class="line"><a name="l01689"></a><span class="lineno"> 1689</span> </div><div class="line"><a name="l01690"></a><span class="lineno"> 1690</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l01691"></a><span class="lineno"> 1691</span>  <span class="comment">// Implementation: Pattern parsing</span></div><div class="line"><a name="l01692"></a><span class="lineno"> 1692</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l01693"></a><span class="lineno"> 1693</span> </div><div class="line"><a name="l01694"></a><span class="lineno"> 1694</span>  <span class="keywordtype">void</span> applyPatternIgnoreSpace(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l01695"></a><span class="lineno"> 1695</span>  <a class="code" href="classicu_1_1ParsePosition.html">ParsePosition</a>& pos,</div><div class="line"><a name="l01696"></a><span class="lineno"> 1696</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1SymbolTable.html">SymbolTable</a>* symbols,</div><div class="line"><a name="l01697"></a><span class="lineno"> 1697</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l01698"></a><span class="lineno"> 1698</span> </div><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>  <span class="keywordtype">void</span> applyPattern(RuleCharacterIterator& chars,</div><div class="line"><a name="l01700"></a><span class="lineno"> 1700</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1SymbolTable.html">SymbolTable</a>* symbols,</div><div class="line"><a name="l01701"></a><span class="lineno"> 1701</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& rebuiltPat,</div><div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>  uint32_t options,</div><div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& (<a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>::*caseClosure)(int32_t attribute),</div><div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>  int32_t depth,</div><div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& ec);</div><div class="line"><a name="l01706"></a><span class="lineno"> 1706</span> </div><div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>  <span class="keywordtype">void</span> closeOverCaseInsensitive(<span class="keywordtype">bool</span> simple);</div><div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>  <span class="keywordtype">void</span> closeOverAddCaseMappings();</div><div class="line"><a name="l01709"></a><span class="lineno"> 1709</span> </div><div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>  <span class="comment">// Implementation: Utility methods</span></div><div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l01713"></a><span class="lineno"> 1713</span> </div><div class="line"><a name="l01714"></a><span class="lineno"> 1714</span>  <span class="keyword">static</span> int32_t nextCapacity(int32_t minCapacity);</div><div class="line"><a name="l01715"></a><span class="lineno"> 1715</span> </div><div class="line"><a name="l01716"></a><span class="lineno"> 1716</span>  <span class="keywordtype">bool</span> ensureCapacity(int32_t newLen);</div><div class="line"><a name="l01717"></a><span class="lineno"> 1717</span> </div><div class="line"><a name="l01718"></a><span class="lineno"> 1718</span>  <span class="keywordtype">bool</span> ensureBufferCapacity(int32_t newLen);</div><div class="line"><a name="l01719"></a><span class="lineno"> 1719</span> </div><div class="line"><a name="l01720"></a><span class="lineno"> 1720</span>  <span class="keywordtype">void</span> swapBuffers();</div><div class="line"><a name="l01721"></a><span class="lineno"> 1721</span> </div><div class="line"><a name="l01722"></a><span class="lineno"> 1722</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> allocateStrings(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status);</div><div class="line"><a name="l01723"></a><span class="lineno"> 1723</span>  int32_t stringsSize() <span class="keyword">const</span>;</div><div class="line"><a name="l01724"></a><span class="lineno"> 1724</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> stringsContains(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> &s) <span class="keyword">const</span>;</div><div class="line"><a name="l01725"></a><span class="lineno"> 1725</span> </div><div class="line"><a name="l01726"></a><span class="lineno"> 1726</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& _toPattern(<a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& result,</div><div class="line"><a name="l01727"></a><span class="lineno"> 1727</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> escapeUnprintable) <span class="keyword">const</span>;</div><div class="line"><a name="l01728"></a><span class="lineno"> 1728</span> </div><div class="line"><a name="l01729"></a><span class="lineno"> 1729</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& _generatePattern(<a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& result,</div><div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> escapeUnprintable) <span class="keyword">const</span>;</div><div class="line"><a name="l01731"></a><span class="lineno"> 1731</span> </div><div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> _appendToPat(<a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& buf, <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s, <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> escapeUnprintable);</div><div class="line"><a name="l01733"></a><span class="lineno"> 1733</span> </div><div class="line"><a name="l01734"></a><span class="lineno"> 1734</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> _appendToPat(<a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& buf, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c, <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> escapeUnprintable);</div><div class="line"><a name="l01735"></a><span class="lineno"> 1735</span> </div><div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> _appendToPat(<a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> &result, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end,</div><div class="line"><a name="l01737"></a><span class="lineno"> 1737</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> escapeUnprintable);</div><div class="line"><a name="l01738"></a><span class="lineno"> 1738</span> </div><div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l01740"></a><span class="lineno"> 1740</span>  <span class="comment">// Implementation: Fundamental operators</span></div><div class="line"><a name="l01741"></a><span class="lineno"> 1741</span>  <span class="comment">//----------------------------------------------------------------</span></div><div class="line"><a name="l01742"></a><span class="lineno"> 1742</span> </div><div class="line"><a name="l01743"></a><span class="lineno"> 1743</span>  <span class="keywordtype">void</span> exclusiveOr(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>* other, int32_t otherLen, int8_t polarity);</div><div class="line"><a name="l01744"></a><span class="lineno"> 1744</span> </div><div class="line"><a name="l01745"></a><span class="lineno"> 1745</span>  <span class="keywordtype">void</span> add(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>* other, int32_t otherLen, int8_t polarity);</div><div class="line"><a name="l01746"></a><span class="lineno"> 1746</span> </div><div class="line"><a name="l01747"></a><span class="lineno"> 1747</span>  <span class="keywordtype">void</span> retain(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>* other, int32_t otherLen, int8_t polarity);</div><div class="line"><a name="l01748"></a><span class="lineno"> 1748</span> </div><div class="line"><a name="l01754"></a><span class="lineno"> 1754</span>  <span class="keyword">static</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> resemblesPropertyPattern(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l01755"></a><span class="lineno"> 1755</span>  int32_t pos);</div><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span> </div><div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>  <span class="keyword">static</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> resemblesPropertyPattern(RuleCharacterIterator& chars,</div><div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>  int32_t iterOpts);</div><div class="line"><a name="l01759"></a><span class="lineno"> 1759</span> </div><div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>  <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& applyPropertyPattern(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& pattern,</div><div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>  <a class="code" href="classicu_1_1ParsePosition.html">ParsePosition</a>& ppos,</div><div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &ec);</div><div class="line"><a name="l01802"></a><span class="lineno"> 1802</span> </div><div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>  <span class="keywordtype">void</span> applyPropertyPattern(RuleCharacterIterator& chars,</div><div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>  <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& rebuiltPat,</div><div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& ec);</div><div class="line"><a name="l01806"></a><span class="lineno"> 1806</span> </div><div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>  <span class="keyword">typedef</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> (*Filter)(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> codePoint, <span class="keywordtype">void</span>* context);</div><div class="line"><a name="l01812"></a><span class="lineno"> 1812</span> </div><div class="line"><a name="l01822"></a><span class="lineno"> 1822</span>  <span class="keywordtype">void</span> applyFilter(Filter filter,</div><div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>  <span class="keywordtype">void</span>* context,</div><div class="line"><a name="l01824"></a><span class="lineno"> 1824</span>  <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>* inclusions,</div><div class="line"><a name="l01825"></a><span class="lineno"> 1825</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status);</div><div class="line"><a name="l01826"></a><span class="lineno"> 1826</span> </div><div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>  <span class="keywordtype">void</span> setPattern(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& newPat) {</div><div class="line"><a name="l01831"></a><span class="lineno"> 1831</span>  setPattern(newPat.<a class="code" href="classicu_1_1UnicodeString.html#ae9ea82f86d91d9d978befb155cbec3cf">getBuffer</a>(), newPat.<a class="code" href="classicu_1_1UnicodeString.html#a6db22c11bd171a70bf991b4fe788bc18">length</a>());</div><div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>  }</div><div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>  <span class="keywordtype">void</span> setPattern(<span class="keyword">const</span> char16_t *newPat, int32_t newPatLen);</div><div class="line"><a name="l01837"></a><span class="lineno"> 1837</span>  <span class="keywordtype">void</span> releasePattern();</div><div class="line"><a name="l01838"></a><span class="lineno"> 1838</span> </div><div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>  <span class="keyword">friend</span> <span class="keyword">class </span>UnicodeSetIterator;</div><div class="line"><a name="l01840"></a><span class="lineno"> 1840</span> };</div><div class="line"><a name="l01841"></a><span class="lineno"> 1841</span> </div><div class="line"><a name="l01842"></a><span class="lineno"> 1842</span> </div><div class="line"><a name="l01843"></a><span class="lineno"> 1843</span> </div><div class="line"><a name="l01844"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#ad5f8aafcca618ecfff89d8b9ba51e016"> 1844</a></span> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="namespaceicu.html#a8d8f68e93f4a83a227b82cec7745dff6">UnicodeSet::operator!=</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& o)<span class="keyword"> const </span>{</div><div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>  <span class="keywordflow">return</span> !<a class="code" href="namespaceicu.html#a1c2f6ca43e636f38d1a3291eb851e9f0">operator==</a>(o);</div><div class="line"><a name="l01846"></a><span class="lineno"> 1846</span> }</div><div class="line"><a name="l01847"></a><span class="lineno"> 1847</span> </div><div class="line"><a name="l01848"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a44a57b67296bb8336d454008248672b7"> 1848</a></span> <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::isFrozen()<span class="keyword"> const </span>{</div><div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>  <span class="keywordflow">return</span> bmpSet != <span class="keyword">nullptr</span> || stringSpan != <span class="keyword">nullptr</span>;</div><div class="line"><a name="l01850"></a><span class="lineno"> 1850</span> }</div><div class="line"><a name="l01851"></a><span class="lineno"> 1851</span> </div><div class="line"><a name="l01852"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#af646001319f3d5bf92a3df484be80e55"> 1852</a></span> <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::containsSome(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> end)<span class="keyword"> const </span>{</div><div class="line"><a name="l01853"></a><span class="lineno"> 1853</span>  <span class="keywordflow">return</span> !containsNone(start, end);</div><div class="line"><a name="l01854"></a><span class="lineno"> 1854</span> }</div><div class="line"><a name="l01855"></a><span class="lineno"> 1855</span> </div><div class="line"><a name="l01856"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a52083cef96c99d87662fbd58f3e34c74"> 1856</a></span> <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::containsSome(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a>& s)<span class="keyword"> const </span>{</div><div class="line"><a name="l01857"></a><span class="lineno"> 1857</span>  <span class="keywordflow">return</span> !containsNone(s);</div><div class="line"><a name="l01858"></a><span class="lineno"> 1858</span> }</div><div class="line"><a name="l01859"></a><span class="lineno"> 1859</span> </div><div class="line"><a name="l01860"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#ac6bfecaaf771b30848fcbf48da0ffafe"> 1860</a></span> <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::containsSome(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& s)<span class="keyword"> const </span>{</div><div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>  <span class="keywordflow">return</span> !containsNone(s);</div><div class="line"><a name="l01862"></a><span class="lineno"> 1862</span> }</div><div class="line"><a name="l01863"></a><span class="lineno"> 1863</span> </div><div class="line"><a name="l01864"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a1a383623a727e9c2fe6e30ed3f63135c"> 1864</a></span> <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> UnicodeSet::isBogus()<span class="keyword"> const </span>{</div><div class="line"><a name="l01865"></a><span class="lineno"> 1865</span>  <span class="keywordflow">return</span> fFlags & kIsBogus;</div><div class="line"><a name="l01866"></a><span class="lineno"> 1866</span> }</div><div class="line"><a name="l01867"></a><span class="lineno"> 1867</span> </div><div class="line"><a name="l01868"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a0f91bdecac70733f07dcf0ac6714363e"> 1868</a></span> <span class="keyword">inline</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a> *UnicodeSet::fromUSet(<a class="code" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *uset) {</div><div class="line"><a name="l01869"></a><span class="lineno"> 1869</span>  <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span><a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a> *<span class="keyword">></span>(uset);</div><div class="line"><a name="l01870"></a><span class="lineno"> 1870</span> }</div><div class="line"><a name="l01871"></a><span class="lineno"> 1871</span> </div><div class="line"><a name="l01872"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#ab8a729468172225aee8fd68389460230"> 1872</a></span> <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a> *UnicodeSet::fromUSet(<span class="keyword">const</span> <a class="code" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *uset) {</div><div class="line"><a name="l01873"></a><span class="lineno"> 1873</span>  <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span><span class="keyword">const </span><a class="code" href="classicu_1_1UnicodeSet.html">UnicodeSet</a> *<span class="keyword">></span>(uset);</div><div class="line"><a name="l01874"></a><span class="lineno"> 1874</span> }</div><div class="line"><a name="l01875"></a><span class="lineno"> 1875</span> </div><div class="line"><a name="l01876"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#aec4b95d4d74d07a89431f630236aa18d"> 1876</a></span> <span class="keyword">inline</span> <a class="code" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *UnicodeSet::toUSet() {</div><div class="line"><a name="l01877"></a><span class="lineno"> 1877</span>  <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span><a class="code" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *<span class="keyword">></span>(<span class="keyword">this</span>);</div><div class="line"><a name="l01878"></a><span class="lineno"> 1878</span> }</div><div class="line"><a name="l01879"></a><span class="lineno"> 1879</span> </div><div class="line"><a name="l01880"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a4c32d1f8aaa5a402d7738806459cfd9a"> 1880</a></span> <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *UnicodeSet::toUSet()<span class="keyword"> const </span>{</div><div class="line"><a name="l01881"></a><span class="lineno"> 1881</span>  <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span><span class="keyword">const </span><a class="code" href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *<span class="keyword">></span>(<span class="keyword">this</span>);</div><div class="line"><a name="l01882"></a><span class="lineno"> 1882</span> }</div><div class="line"><a name="l01883"></a><span class="lineno"> 1883</span> </div><div class="line"><a name="l01884"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a6e9fc23f97af7c0649eead7c769533fa"> 1884</a></span> <span class="keyword">inline</span> int32_t UnicodeSet::span(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> &s, int32_t start, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition)<span class="keyword"> const </span>{</div><div class="line"><a name="l01885"></a><span class="lineno"> 1885</span>  int32_t sLength=s.<a class="code" href="classicu_1_1UnicodeString.html#a6db22c11bd171a70bf991b4fe788bc18">length</a>();</div><div class="line"><a name="l01886"></a><span class="lineno"> 1886</span>  <span class="keywordflow">if</span>(start<0) {</div><div class="line"><a name="l01887"></a><span class="lineno"> 1887</span>  start=0;</div><div class="line"><a name="l01888"></a><span class="lineno"> 1888</span>  } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(start>sLength) {</div><div class="line"><a name="l01889"></a><span class="lineno"> 1889</span>  start=sLength;</div><div class="line"><a name="l01890"></a><span class="lineno"> 1890</span>  }</div><div class="line"><a name="l01891"></a><span class="lineno"> 1891</span>  <span class="keywordflow">return</span> start+span(s.<a class="code" href="classicu_1_1UnicodeString.html#ae9ea82f86d91d9d978befb155cbec3cf">getBuffer</a>()+start, sLength-start, spanCondition);</div><div class="line"><a name="l01892"></a><span class="lineno"> 1892</span> }</div><div class="line"><a name="l01893"></a><span class="lineno"> 1893</span> </div><div class="line"><a name="l01894"></a><span class="lineno"><a class="line" href="classicu_1_1UnicodeSet.html#a7c5a8980c7231810bae245ee8691ff28"> 1894</a></span> <span class="keyword">inline</span> int32_t UnicodeSet::spanBack(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> &s, int32_t limit, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a> spanCondition)<span class="keyword"> const </span>{</div><div class="line"><a name="l01895"></a><span class="lineno"> 1895</span>  int32_t sLength=s.<a class="code" href="classicu_1_1UnicodeString.html#a6db22c11bd171a70bf991b4fe788bc18">length</a>();</div><div class="line"><a name="l01896"></a><span class="lineno"> 1896</span>  <span class="keywordflow">if</span>(limit<0) {</div><div class="line"><a name="l01897"></a><span class="lineno"> 1897</span>  limit=0;</div><div class="line"><a name="l01898"></a><span class="lineno"> 1898</span>  } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(limit>sLength) {</div><div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>  limit=sLength;</div><div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>  }</div><div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>  <span class="keywordflow">return</span> spanBack(s.<a class="code" href="classicu_1_1UnicodeString.html#ae9ea82f86d91d9d978befb155cbec3cf">getBuffer</a>(), limit, spanCondition);</div><div class="line"><a name="l01902"></a><span class="lineno"> 1902</span> }</div><div class="line"><a name="l01903"></a><span class="lineno"> 1903</span> </div><div class="line"><a name="l01904"></a><span class="lineno"> 1904</span> U_NAMESPACE_END</div><div class="line"><a name="l01905"></a><span class="lineno"> 1905</span> </div><div class="line"><a name="l01906"></a><span class="lineno"> 1906</span> <span class="preprocessor">#endif </span><span class="comment">/* U_SHOW_CPLUSPLUS_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l01907"></a><span class="lineno"> 1907</span> </div><div class="line"><a name="l01908"></a><span class="lineno"> 1908</span> <span class="preprocessor">#endif</span></div><div class="ttc" id="RunArrays_8h_html_a5446a5bbb68bb93392b04dfbfa0095af"><div class="ttname"><a href="RunArrays_8h.html#a5446a5bbb68bb93392b04dfbfa0095af">INITIAL_CAPACITY</a></div><div class="ttdeci">#define INITIAL_CAPACITY</div><div class="ttdoc">The initial size of an array if it is unspecified. </div><div class="ttdef"><b>Definition:</b> <a href="RunArrays_8h_source.html#l00032">RunArrays.h:32</a></div></div> <div class="ttc" id="namespaceicu_html_a8d8f68e93f4a83a227b82cec7745dff6"><div class="ttname"><a href="namespaceicu.html#a8d8f68e93f4a83a227b82cec7745dff6">icu::operator!=</a></div><div class="ttdeci">bool operator!=(const StringPiece &x, const StringPiece &y)</div><div class="ttdoc">Global operator != for StringPiece. </div><div class="ttdef"><b>Definition:</b> <a href="stringpiece_8h_source.html#l00346">stringpiece.h:346</a></div></div> <div class="ttc" id="classicu_1_1UnicodeFilter_html_ada0730a2dea83b94b980b08010800d84"><div class="ttname"><a href="classicu_1_1UnicodeFilter.html#ada0730a2dea83b94b980b08010800d84">icu::UnicodeFilter::matches</a></div><div class="ttdeci">virtual UMatchDegree matches(const Replaceable &text, int32_t &offset, int32_t limit, UBool incremental) override</div><div class="ttdoc">Implement UnicodeMatcher API. </div></div> <div class="ttc" id="classicu_1_1UnicodeFilter_html_a736f2b13102cdca9d385d2b4aa0012b2"><div class="ttname"><a href="classicu_1_1UnicodeFilter.html#a736f2b13102cdca9d385d2b4aa0012b2">icu::UnicodeFilter::getStaticClassID</a></div><div class="ttdeci">static UClassID getStaticClassID()</div><div class="ttdoc">ICU "poor man&#39;s RTTI", returns a UClassID for this class. </div></div> <div class="ttc" id="classicu_1_1UnicodeString_html_a6db22c11bd171a70bf991b4fe788bc18"><div class="ttname"><a href="classicu_1_1UnicodeString.html#a6db22c11bd171a70bf991b4fe788bc18">icu::UnicodeString::length</a></div><div class="ttdeci">int32_t length() const</div><div class="ttdoc">Return the length of the UnicodeString object. </div><div class="ttdef"><b>Definition:</b> <a href="unistr_8h_source.html#l04214">unistr.h:4214</a></div></div> <div class="ttc" id="namespaceicu_html_a6b6eaca969662d8185a58bb2e2e68d0f"><div class="ttname"><a href="namespaceicu.html#a6b6eaca969662d8185a58bb2e2e68d0f">icu::UMatchDegree</a></div><div class="ttdeci">UMatchDegree</div><div class="ttdoc">Constants returned by UnicodeMatcher::matches() indicating the degree of match. </div><div class="ttdef"><b>Definition:</b> <a href="unimatch_8h_source.html#l00033">unimatch.h:33</a></div></div> <div class="ttc" id="unistr_8h_html"><div class="ttname"><a href="unistr_8h.html">unistr.h</a></div><div class="ttdoc">C++ API: Unicode String. </div></div> <div class="ttc" id="namespaceicu_html_a1c2f6ca43e636f38d1a3291eb851e9f0"><div class="ttname"><a href="namespaceicu.html#a1c2f6ca43e636f38d1a3291eb851e9f0">icu::operator==</a></div><div class="ttdeci">U_EXPORT UBool operator==(const StringPiece &x, const StringPiece &y)</div><div class="ttdoc">Global operator == for StringPiece. </div></div> <div class="ttc" id="uobject_8h_html_a22af10545208a455a6e884008df48e9f"><div class="ttname"><a href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a></div><div class="ttdeci">void * UClassID</div><div class="ttdoc">UClassID is used to identify classes without using the compiler&#39;s RTTI. </div><div class="ttdef"><b>Definition:</b> <a href="uobject_8h_source.html#l00096">uobject.h:96</a></div></div> <div class="ttc" id="ucpmap_8h_html"><div class="ttname"><a href="ucpmap_8h.html">ucpmap.h</a></div><div class="ttdoc">C API: This file defines an abstract map from Unicode code points to integer values. </div></div> <div class="ttc" id="classicu_1_1UnicodeSet_html_a04345555373b09f97a947251a8bea1ad"><div class="ttname"><a href="classicu_1_1UnicodeSet.html#a04345555373b09f97a947251a8bea1ad">icu::UnicodeSet::ESerialization</a></div><div class="ttdeci">ESerialization</div><div class="ttdef"><b>Definition:</b> <a href="uniset_8h_source.html#l00398">uniset.h:398</a></div></div> <div class="ttc" id="classicu_1_1UnicodeMatcher_html_ae6c02c180dcb3332a4b2ece814ce9f9a"><div class="ttname"><a href="classicu_1_1UnicodeMatcher.html#ae6c02c180dcb3332a4b2ece814ce9f9a">icu::UnicodeMatcher::matchesIndexValue</a></div><div class="ttdeci">virtual UBool matchesIndexValue(uint8_t v) const =0</div><div class="ttdoc">Returns true if this matcher will match a character c, where c & 0xFF == v, at offset, in the forward direction (with limit > offset). </div></div> <div class="ttc" id="uset_8h_html"><div class="ttname"><a href="uset_8h.html">uset.h</a></div><div class="ttdoc">C API: Unicode Set. </div></div> <div class="ttc" id="classicu_1_1SymbolTable_html"><div class="ttname"><a href="classicu_1_1SymbolTable.html">icu::SymbolTable</a></div><div class="ttdoc">An interface that defines both lookup protocol and parsing of symbolic names. </div><div class="ttdef"><b>Definition:</b> <a href="symtable_8h_source.html#l00059">symtable.h:59</a></div></div> <div class="ttc" id="classicu_1_1UnicodeMatcher_html_aa2d17c41221099e719da2f95c5bbbbec"><div class="ttname"><a href="classicu_1_1UnicodeMatcher.html#aa2d17c41221099e719da2f95c5bbbbec">icu::UnicodeMatcher::toPattern</a></div><div class="ttdeci">virtual UnicodeString & toPattern(UnicodeString &result, UBool escapeUnprintable=false) const =0</div><div class="ttdoc">Returns a string representation of this matcher. </div></div> <div class="ttc" id="classicu_1_1Replaceable_html"><div class="ttname"><a href="classicu_1_1Replaceable.html">icu::Replaceable</a></div><div class="ttdoc">Replaceable is an abstract base class representing a string of characters that supports the replaceme...</div><div class="ttdef"><b>Definition:</b> <a href="rep_8h_source.html#l00077">rep.h:77</a></div></div> <div class="ttc" id="classicu_1_1UnicodeFilter_html"><div class="ttname"><a href="classicu_1_1UnicodeFilter.html">icu::UnicodeFilter</a></div><div class="ttdoc">UnicodeFilter defines a protocol for selecting a subset of the full range (U+0000 to U+10FFFF) of Uni...</div><div class="ttdef"><b>Definition:</b> <a href="unifilt_8h_source.html#l00065">unifilt.h:65</a></div></div> <div class="ttc" id="classicu_1_1UnicodeSet_html_a537a13a1b3adcaebc140f715876aca63"><div class="ttname"><a href="classicu_1_1UnicodeSet.html#a537a13a1b3adcaebc140f715876aca63">icu::UnicodeSet::codePoints</a></div><div class="ttdeci">U_HEADER_NESTED_NAMESPACE::USetCodePoints codePoints() const</div><div class="ttdoc">Returns a C++ "range" for iterating over the code points of this set. </div><div class="ttdef"><b>Definition:</b> <a href="uniset_8h_source.html#l01123">uniset.h:1123</a></div></div> <div class="ttc" id="classicu_1_1UnicodeSet_html_a689385fcc1e2e9e05996e9e19229ea3f"><div class="ttname"><a href="classicu_1_1UnicodeSet.html#a689385fcc1e2e9e05996e9e19229ea3f">icu::UnicodeSet::ranges</a></div><div class="ttdeci">U_HEADER_NESTED_NAMESPACE::USetRanges ranges() const</div><div class="ttdoc">Returns a C++ "range" for iterating over the code point ranges of this set. </div><div class="ttdef"><b>Definition:</b> <a href="uniset_8h_source.html#l01149">uniset.h:1149</a></div></div> <div class="ttc" id="classicu_1_1UnicodeMatcher_html_ad2ff342d41851f6f845070cdfc6b1da0"><div class="ttname"><a href="classicu_1_1UnicodeMatcher.html#ad2ff342d41851f6f845070cdfc6b1da0">icu::UnicodeMatcher::addMatchSetTo</a></div><div class="ttdeci">virtual void addMatchSetTo(UnicodeSet &toUnionTo) const =0</div><div class="ttdoc">Union the set of all characters that may be matched by this object into the given set...</div></div> <div class="ttc" id="umachine_8h_html_a09fff5c3b5a5b015324dc3ec3cf92809"><div class="ttname"><a href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a></div><div class="ttdeci">int32_t UChar32</div><div class="ttdoc">Define UChar32 as a type for single Unicode code points. </div><div class="ttdef"><b>Definition:</b> <a href="umachine_8h_source.html#l00427">umachine.h:427</a></div></div> <div class="ttc" id="classicu_1_1UnicodeSet_html"><div class="ttname"><a href="classicu_1_1UnicodeSet.html">icu::UnicodeSet</a></div><div class="ttdoc">A mutable set of Unicode characters and multicharacter strings. </div><div class="ttdef"><b>Definition:</b> <a href="uniset_8h_source.html#l00285">uniset.h:285</a></div></div> <div class="ttc" id="classicu_1_1UnicodeFunctor_html_aa6b6193b74673285df9d2c70b117a6ce"><div class="ttname"><a href="classicu_1_1UnicodeFunctor.html#aa6b6193b74673285df9d2c70b117a6ce">icu::UnicodeFunctor::getDynamicClassID</a></div><div class="ttdeci">virtual UClassID getDynamicClassID() const override=0</div><div class="ttdoc">Returns a unique class ID polymorphically. </div></div> <div class="ttc" id="uset_8h_html_a5fc2e77dd6c8385e0e88fc6a7d72d9b4"><div class="ttname"><a href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4">USetSpanCondition</a></div><div class="ttdeci">USetSpanCondition</div><div class="ttdoc">Argument values for whether span() and similar functions continue while the current character is cont...</div><div class="ttdef"><b>Definition:</b> <a href="uset_8h_source.html#l00186">uset.h:186</a></div></div> <div class="ttc" id="uchar_8h_html_ae40d616419e74ecc7c80a9febab03199"><div class="ttname"><a href="uchar_8h.html#ae40d616419e74ecc7c80a9febab03199">UProperty</a></div><div class="ttdeci">UProperty</div><div class="ttdoc">Selection constants for Unicode properties. </div><div class="ttdef"><b>Definition:</b> <a href="uchar_8h_source.html#l00196">uchar.h:196</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#l00430">utypes.h:430</a></div></div> <div class="ttc" id="uset_8h_html_adce3fef7c15d7c78196bf977ac96ec9c"><div class="ttname"><a href="uset_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a></div><div class="ttdeci">struct USet USet</div><div class="ttdoc">USet is the C API type corresponding to C++ class UnicodeSet. </div><div class="ttdef"><b>Definition:</b> <a href="uset_8h_source.html#l00054">uset.h:54</a></div></div> <div class="ttc" id="classicu_1_1UnicodeSet_html_a5806e04261e1fc150f9e177090697f0f"><div class="ttname"><a href="classicu_1_1UnicodeSet.html#a5806e04261e1fc150f9e177090697f0f">icu::UnicodeSet::end</a></div><div class="ttdeci">U_HEADER_NESTED_NAMESPACE::USetElementIterator end() const</div><div class="ttdef"><b>Definition:</b> <a href="uniset_8h_source.html#l01215">uniset.h:1215</a></div></div> <div class="ttc" id="classicu_1_1ParsePosition_html"><div class="ttname"><a href="classicu_1_1ParsePosition.html">icu::ParsePosition</a></div><div class="ttdoc">ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...</div><div class="ttdef"><b>Definition:</b> <a href="parsepos_8h_source.html#l00052">parsepos.h:52</a></div></div> <div class="ttc" id="classicu_1_1UnicodeString_html_ae9ea82f86d91d9d978befb155cbec3cf"><div class="ttname"><a href="classicu_1_1UnicodeString.html#ae9ea82f86d91d9d978befb155cbec3cf">icu::UnicodeString::getBuffer</a></div><div class="ttdeci">char16_t * getBuffer(int32_t minCapacity)</div><div class="ttdoc">Get a read/write pointer to the internal buffer. </div></div> <div class="ttc" id="classicu_1_1UnicodeFilter_html_a843a77efc53550c90cb865a902e4f8b7"><div class="ttname"><a href="classicu_1_1UnicodeFilter.html#a843a77efc53550c90cb865a902e4f8b7">icu::UnicodeFilter::clone</a></div><div class="ttdeci">virtual UnicodeFilter * clone() const override=0</div><div class="ttdoc">Clones this object polymorphically. </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_1UnicodeSet_html_a5fa614db3126d486342773afb5979e56"><div class="ttname"><a href="classicu_1_1UnicodeSet.html#a5fa614db3126d486342773afb5979e56">icu::UnicodeSet::begin</a></div><div class="ttdeci">U_HEADER_NESTED_NAMESPACE::USetElementIterator begin() const</div><div class="ttdoc">Returns a C++ iterator for iterating over all of the elements of this set. </div><div class="ttdef"><b>Definition:</b> <a href="uniset_8h_source.html#l01203">uniset.h:1203</a></div></div> <div class="ttc" id="classicu_1_1UnicodeFilter_html_afdf2d8d579f6904de6115e3ade299848"><div class="ttname"><a href="classicu_1_1UnicodeFilter.html#afdf2d8d579f6904de6115e3ade299848">icu::UnicodeFilter::contains</a></div><div class="ttdeci">virtual UBool contains(UChar32 c) const =0</div><div class="ttdoc">Returns true for characters that are in the selected subset. </div></div> <div class="ttc" id="utypes_8h_html_a559955ec3bc692657c5d8b1c6de8e334"><div class="ttname"><a href="utypes_8h.html#a559955ec3bc692657c5d8b1c6de8e334">U_COMMON_API</a></div><div class="ttdeci">#define U_COMMON_API</div><div class="ttdoc">Set to export library symbols from inside the common library, and to import them from outside...</div><div class="ttdef"><b>Definition:</b> <a href="utypes_8h_source.html#l00315">utypes.h:315</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#l00295">unistr.h:295</a></div></div> <div class="ttc" id="unifilt_8h_html"><div class="ttname"><a href="unifilt_8h.html">unifilt.h</a></div><div class="ttdoc">C++ API: Unicode Filter. </div></div> <div class="ttc" id="classicu_1_1UnicodeSet_html_a054e7d9e1c1476acd1a9f3d9113395bd"><div class="ttname"><a href="classicu_1_1UnicodeSet.html#a054e7d9e1c1476acd1a9f3d9113395bd">icu::UnicodeSet::strings</a></div><div class="ttdeci">U_HEADER_NESTED_NAMESPACE::USetStrings strings() const</div><div class="ttdoc">Returns a C++ "range" for iterating over the empty and multi-character strings of this set...</div><div class="ttdef"><b>Definition:</b> <a href="uniset_8h_source.html#l01173">uniset.h:1173</a></div></div> <div class="ttc" id="umachine_8h_html_a349ef00011f20ccd1d3b424445681aa5"><div class="ttname"><a href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a></div><div class="ttdeci">int8_t UBool</div><div class="ttdoc">The ICU boolean type, a signed-byte integer. </div><div class="ttdef"><b>Definition:</b> <a href="umachine_8h_source.html#l00247">umachine.h:247</a></div></div> </div><!-- 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>