<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <title>ICU 4.8.1.1: 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/search.js"></script> <script type="text/javascript"> $(document).ready(function() { searchBox.OnSelectItem(0); }); </script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">ICU 4.8.1.1  <span id="projectnumber">4.8.1.1</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.1.1 --> <script type="text/javascript"> var searchBox = new SearchBox("searchBox", "search",false,'Search'); </script> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li> <div id="MSearchBox" class="MSearchBoxInactive"> <span class="left"> <img id="MSearchSelect" src="search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/> <input type="text" id="MSearchField" value="Search" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/> </span><span class="right"> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </span> </div> </li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul> </div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Pages</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_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">/*</span></div> <div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">***************************************************************************</span></div> <div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">* Copyright (C) 1999-2011, International Business Machines Corporation</span></div> <div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">* and others. All Rights Reserved.</span></div> <div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">***************************************************************************</span></div> <div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">* Date Name Description</span></div> <div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">* 10/20/99 alan Creation.</span></div> <div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">***************************************************************************</span></div> <div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">*/</span></div> <div class="line"><a name="l00010"></a><span class="lineno"> 10</span> </div> <div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="preprocessor">#ifndef UNICODESET_H</span></div> <div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="preprocessor"></span><span class="preprocessor">#define UNICODESET_H</span></div> <div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="preprocessor">#include "<a class="code" href="unifilt_8h.html" title="C++ API: Unicode Filter.">unicode/unifilt.h</a>"</span></div> <div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="preprocessor">#include "<a class="code" href="unistr_8h.html" title="C++ API: Unicode String.">unicode/unistr.h</a>"</span></div> <div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="preprocessor">#include "<a class="code" href="uset_8h.html" title="C API: Unicode Set.">unicode/uset.h</a>"</span></div> <div class="line"><a name="l00017"></a><span class="lineno"> 17</span> </div> <div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <a class="code" href="uversion_8h.html#a7d9374e037299886d4192b763b4c5e8b" title="This is used to begin a declaration of a public ICU C++ API.">U_NAMESPACE_BEGIN</a></div> <div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div> <div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="keyword">class </span>BMPSet;</div> <div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="keyword">class </span><a class="code" href="classParsePosition.html" title="ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...">ParsePosition</a>;</div> <div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="keyword">class </span><a class="code" href="classSymbolTable.html" title="An interface that defines both lookup protocol and parsing of symbolic names.">SymbolTable</a>;</div> <div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="keyword">class </span>UnicodeSetStringSpan;</div> <div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">class </span>UVector;</div> <div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">class </span>RuleCharacterIterator;</div> <div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div> <div class="line"><a name="l00272"></a><span class="lineno"><a class="code" href="classUnicodeSet.html"> 272</a></span> <span class="keyword">class </span><a class="code" href="utypes_8h.html#a559955ec3bc692657c5d8b1c6de8e334" title="Set to export library symbols from inside the common library, and to import them from outside...">U_COMMON_API</a> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> : <span class="keyword">public</span> <a class="code" href="classUnicodeFilter.html" title="UnicodeFilter defines a protocol for selecting a subset of the full range (U+0000 to U+10FFFF) of Uni...">UnicodeFilter</a> {</div> <div class="line"><a name="l00273"></a><span class="lineno"> 273</span> </div> <div class="line"><a name="l00274"></a><span class="lineno"> 274</span>  int32_t len; <span class="comment">// length of list used; 0 <= len <= capacity</span></div> <div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  int32_t capacity; <span class="comment">// capacity of list</span></div> <div class="line"><a name="l00276"></a><span class="lineno"> 276</span>  <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a>* list; <span class="comment">// MUST be terminated with HIGH</span></div> <div class="line"><a name="l00277"></a><span class="lineno"> 277</span>  BMPSet *bmpSet; <span class="comment">// The set is frozen iff either bmpSet or stringSpan is not NULL.</span></div> <div class="line"><a name="l00278"></a><span class="lineno"> 278</span>  <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a>* buffer; <span class="comment">// internal buffer, may be NULL</span></div> <div class="line"><a name="l00279"></a><span class="lineno"> 279</span>  int32_t bufferCapacity; <span class="comment">// capacity of buffer</span></div> <div class="line"><a name="l00280"></a><span class="lineno"> 280</span>  int32_t patLen;</div> <div class="line"><a name="l00281"></a><span class="lineno"> 281</span> </div> <div class="line"><a name="l00291"></a><span class="lineno"> 291</span>  <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be wchar_t if that is 16 bits wide; always assumed to be unsigned.">UChar</a> *pat;</div> <div class="line"><a name="l00292"></a><span class="lineno"> 292</span>  UVector* strings; <span class="comment">// maintained in sorted order</span></div> <div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  UnicodeSetStringSpan *stringSpan;</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> <span class="keyword">private</span>:</div> <div class="line"><a name="l00296"></a><span class="lineno"> 296</span>  <span class="keyword">enum</span> { <span class="comment">// constants</span></div> <div class="line"><a name="l00297"></a><span class="lineno"> 297</span>  kIsBogus = 1 <span class="comment">// This set is bogus (i.e. not valid)</span></div> <div class="line"><a name="l00298"></a><span class="lineno"> 298</span>  };</div> <div class="line"><a name="l00299"></a><span class="lineno"> 299</span>  uint8_t fFlags; <span class="comment">// Bit flag (see constants above)</span></div> <div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="keyword">public</span>:</div> <div class="line"><a name="l00310"></a><span class="lineno"> 310</span>  <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> isBogus(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div> <div class="line"><a name="l00311"></a><span class="lineno"> 311</span>  </div> <div class="line"><a name="l00328"></a><span class="lineno"> 328</span>  <span class="keywordtype">void</span> setToBogus();</div> <div class="line"><a name="l00329"></a><span class="lineno"> 329</span> </div> <div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="keyword">public</span>:</div> <div class="line"><a name="l00331"></a><span class="lineno"> 331</span> </div> <div class="line"><a name="l00332"></a><span class="lineno"> 332</span>  <span class="keyword">enum</span> {</div> <div class="line"><a name="l00337"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#a4d1afc3e1104619449112f38b2b0a0e9a1edea65cb1a0b012dc6fff9ac49e4fa9"> 337</a></span>  MIN_VALUE = 0,</div> <div class="line"><a name="l00338"></a><span class="lineno"> 338</span> </div> <div class="line"><a name="l00343"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#a4d1afc3e1104619449112f38b2b0a0e9a2c64b96c719b41e29724b22acaf6859b"> 343</a></span>  MAX_VALUE = 0x10ffff</div> <div class="line"><a name="l00344"></a><span class="lineno"> 344</span>  };</div> <div class="line"><a name="l00345"></a><span class="lineno"> 345</span> </div> <div class="line"><a name="l00346"></a><span class="lineno"> 346</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l00347"></a><span class="lineno"> 347</span>  <span class="comment">// Constructors &c</span></div> <div class="line"><a name="l00348"></a><span class="lineno"> 348</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l00349"></a><span class="lineno"> 349</span> </div> <div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="keyword">public</span>:</div> <div class="line"><a name="l00351"></a><span class="lineno"> 351</span> </div> <div class="line"><a name="l00356"></a><span class="lineno"> 356</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>();</div> <div class="line"><a name="l00357"></a><span class="lineno"> 357</span> </div> <div class="line"><a name="l00366"></a><span class="lineno"> 366</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> end);</div> <div class="line"><a name="l00367"></a><span class="lineno"> 367</span> </div> <div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00377"></a><span class="lineno"> 377</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00378"></a><span class="lineno"> 378</span> </div> <div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00392"></a><span class="lineno"> 392</span>  uint32_t options,</div> <div class="line"><a name="l00393"></a><span class="lineno"> 393</span>  <span class="keyword">const</span> <a class="code" href="classSymbolTable.html" title="An interface that defines both lookup protocol and parsing of symbolic names.">SymbolTable</a>* symbols,</div> <div class="line"><a name="l00394"></a><span class="lineno"> 394</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00395"></a><span class="lineno"> 395</span> </div> <div class="line"><a name="l00409"></a><span class="lineno"> 409</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern, <a class="code" href="classParsePosition.html" title="ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...">ParsePosition</a>& pos,</div> <div class="line"><a name="l00410"></a><span class="lineno"> 410</span>  uint32_t options,</div> <div class="line"><a name="l00411"></a><span class="lineno"> 411</span>  <span class="keyword">const</span> <a class="code" href="classSymbolTable.html" title="An interface that defines both lookup protocol and parsing of symbolic names.">SymbolTable</a>* symbols,</div> <div class="line"><a name="l00412"></a><span class="lineno"> 412</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00413"></a><span class="lineno"> 413</span> </div> <div class="line"><a name="l00418"></a><span class="lineno"> 418</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& o);</div> <div class="line"><a name="l00419"></a><span class="lineno"> 419</span> </div> <div class="line"><a name="l00424"></a><span class="lineno"> 424</span>  <span class="keyword">virtual</span> ~<a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>();</div> <div class="line"><a name="l00425"></a><span class="lineno"> 425</span> </div> <div class="line"><a name="l00431"></a><span class="lineno"> 431</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& operator=(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& o);</div> <div class="line"><a name="l00432"></a><span class="lineno"> 432</span> </div> <div class="line"><a name="l00444"></a><span class="lineno"> 444</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="stringpiece_8h.html#a7652049cbac0bfeae2cd2aa4514a3352" title="Global operator == for StringPiece.">operator==</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& o) <span class="keyword">const</span>;</div> <div class="line"><a name="l00445"></a><span class="lineno"> 445</span> </div> <div class="line"><a name="l00451"></a><span class="lineno"> 451</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="stringpiece_8h.html#abf0ccab9536bab551afc07de65eb5d95" title="Global operator != for StringPiece.">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& o) <span class="keyword">const</span>;</div> <div class="line"><a name="l00452"></a><span class="lineno"> 452</span> </div> <div class="line"><a name="l00462"></a><span class="lineno"> 462</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeFunctor.html" title="UnicodeFunctor is an abstract base class for objects that perform match and/or replace operations on ...">UnicodeFunctor</a>* <a class="code" href="classUnicodeFunctor.html#ae9aaff845a9885df3ec336df1b4afa10" title="Return a copy of this object.">clone</a>() <span class="keyword">const</span>;</div> <div class="line"><a name="l00463"></a><span class="lineno"> 463</span> </div> <div class="line"><a name="l00471"></a><span class="lineno"> 471</span>  <span class="keyword">virtual</span> int32_t hashCode(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div> <div class="line"><a name="l00472"></a><span class="lineno"> 472</span> </div> <div class="line"><a name="l00481"></a><span class="lineno"> 481</span>  <span class="keyword">inline</span> <span class="keyword">static</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *fromUSet(<a class="code" href="ucnv_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *uset);</div> <div class="line"><a name="l00482"></a><span class="lineno"> 482</span> </div> <div class="line"><a name="l00491"></a><span class="lineno"> 491</span>  <span class="keyword">inline</span> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *fromUSet(<span class="keyword">const</span> <a class="code" href="ucnv_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *uset);</div> <div class="line"><a name="l00492"></a><span class="lineno"> 492</span>  </div> <div class="line"><a name="l00500"></a><span class="lineno"> 500</span>  <span class="keyword">inline</span> <a class="code" href="ucnv_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *toUSet();</div> <div class="line"><a name="l00501"></a><span class="lineno"> 501</span> </div> <div class="line"><a name="l00502"></a><span class="lineno"> 502</span> </div> <div class="line"><a name="l00510"></a><span class="lineno"> 510</span>  <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="ucnv_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> * toUSet() <span class="keyword">const</span>;</div> <div class="line"><a name="l00511"></a><span class="lineno"> 511</span> </div> <div class="line"><a name="l00512"></a><span class="lineno"> 512</span> </div> <div class="line"><a name="l00513"></a><span class="lineno"> 513</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  <span class="comment">// Freezable API</span></div> <div class="line"><a name="l00515"></a><span class="lineno"> 515</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l00516"></a><span class="lineno"> 516</span> </div> <div class="line"><a name="l00525"></a><span class="lineno"> 525</span>  <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> isFrozen() <span class="keyword">const</span>;</div> <div class="line"><a name="l00526"></a><span class="lineno"> 526</span> </div> <div class="line"><a name="l00540"></a><span class="lineno"> 540</span>  <a class="code" href="classUnicodeFunctor.html" title="UnicodeFunctor is an abstract base class for objects that perform match and/or replace operations on ...">UnicodeFunctor</a> *freeze();</div> <div class="line"><a name="l00541"></a><span class="lineno"> 541</span> </div> <div class="line"><a name="l00550"></a><span class="lineno"> 550</span>  <a class="code" href="classUnicodeFunctor.html" title="UnicodeFunctor is an abstract base class for objects that perform match and/or replace operations on ...">UnicodeFunctor</a> *cloneAsThawed() <span class="keyword">const</span>;</div> <div class="line"><a name="l00551"></a><span class="lineno"> 551</span> </div> <div class="line"><a name="l00552"></a><span class="lineno"> 552</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l00553"></a><span class="lineno"> 553</span>  <span class="comment">// Public API</span></div> <div class="line"><a name="l00554"></a><span class="lineno"> 554</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l00555"></a><span class="lineno"> 555</span> </div> <div class="line"><a name="l00566"></a><span class="lineno"> 566</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& <span class="keyword">set</span>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> end);</div> <div class="line"><a name="l00567"></a><span class="lineno"> 567</span> </div> <div class="line"><a name="l00573"></a><span class="lineno"> 573</span>  <span class="keyword">static</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> resemblesPattern(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00574"></a><span class="lineno"> 574</span>  int32_t pos);</div> <div class="line"><a name="l00575"></a><span class="lineno"> 575</span> </div> <div class="line"><a name="l00588"></a><span class="lineno"> 588</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& applyPattern(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00589"></a><span class="lineno"> 589</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00590"></a><span class="lineno"> 590</span> </div> <div class="line"><a name="l00607"></a><span class="lineno"> 607</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& applyPattern(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00608"></a><span class="lineno"> 608</span>  uint32_t options,</div> <div class="line"><a name="l00609"></a><span class="lineno"> 609</span>  <span class="keyword">const</span> <a class="code" href="classSymbolTable.html" title="An interface that defines both lookup protocol and parsing of symbolic names.">SymbolTable</a>* symbols,</div> <div class="line"><a name="l00610"></a><span class="lineno"> 610</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00611"></a><span class="lineno"> 611</span> </div> <div class="line"><a name="l00643"></a><span class="lineno"> 643</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& applyPattern(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l00644"></a><span class="lineno"> 644</span>  <a class="code" href="classParsePosition.html" title="ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...">ParsePosition</a>& pos,</div> <div class="line"><a name="l00645"></a><span class="lineno"> 645</span>  uint32_t options,</div> <div class="line"><a name="l00646"></a><span class="lineno"> 646</span>  <span class="keyword">const</span> <a class="code" href="classSymbolTable.html" title="An interface that defines both lookup protocol and parsing of symbolic names.">SymbolTable</a>* symbols,</div> <div class="line"><a name="l00647"></a><span class="lineno"> 647</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& status);</div> <div class="line"><a name="l00648"></a><span class="lineno"> 648</span> </div> <div class="line"><a name="l00662"></a><span class="lineno"> 662</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& <a class="code" href="classUnicodeMatcher.html#a0f8d0182d1e2949ea9adfd2b615e94dd" title="Returns a string representation of this matcher.">toPattern</a>(<a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& result,</div> <div class="line"><a name="l00663"></a><span class="lineno"> 663</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> escapeUnprintable = <a class="code" href="umachine_8h.html#aa93f0eb578d23995850d61f7d61c55c1" title="The FALSE value of a UBool.">FALSE</a>) <span class="keyword">const</span>;</div> <div class="line"><a name="l00664"></a><span class="lineno"> 664</span> </div> <div class="line"><a name="l00687"></a><span class="lineno"> 687</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& applyIntPropertyValue(<a class="code" href="uchar_8h.html#ae40d616419e74ecc7c80a9febab03199" title="Selection constants for Unicode properties.">UProperty</a> prop,</div> <div class="line"><a name="l00688"></a><span class="lineno"> 688</span>  int32_t value,</div> <div class="line"><a name="l00689"></a><span class="lineno"> 689</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& ec);</div> <div class="line"><a name="l00690"></a><span class="lineno"> 690</span> </div> <div class="line"><a name="l00720"></a><span class="lineno"> 720</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& applyPropertyAlias(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& prop,</div> <div class="line"><a name="l00721"></a><span class="lineno"> 721</span>  <span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& value,</div> <div class="line"><a name="l00722"></a><span class="lineno"> 722</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& ec);</div> <div class="line"><a name="l00723"></a><span class="lineno"> 723</span> </div> <div class="line"><a name="l00732"></a><span class="lineno"> 732</span>  <span class="keyword">virtual</span> int32_t size(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div> <div class="line"><a name="l00733"></a><span class="lineno"> 733</span> </div> <div class="line"><a name="l00740"></a><span class="lineno"> 740</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> isEmpty(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div> <div class="line"><a name="l00741"></a><span class="lineno"> 741</span> </div> <div class="line"><a name="l00749"></a><span class="lineno"> 749</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classUnicodeFilter.html#aa3b2c85ffa0cff083009efb324de84ca" title="Returns true for characters that are in the selected subset.">contains</a>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> c) <span class="keyword">const</span>;</div> <div class="line"><a name="l00750"></a><span class="lineno"> 750</span> </div> <div class="line"><a name="l00759"></a><span class="lineno"> 759</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classUnicodeFilter.html#aa3b2c85ffa0cff083009efb324de84ca" title="Returns true for characters that are in the selected subset.">contains</a>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> end) <span class="keyword">const</span>;</div> <div class="line"><a name="l00760"></a><span class="lineno"> 760</span> </div> <div class="line"><a name="l00768"></a><span class="lineno"> 768</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classUnicodeFilter.html#aa3b2c85ffa0cff083009efb324de84ca" title="Returns true for characters that are in the selected subset.">contains</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s) <span class="keyword">const</span>;</div> <div class="line"><a name="l00769"></a><span class="lineno"> 769</span> </div> <div class="line"><a name="l00777"></a><span class="lineno"> 777</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> containsAll(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& c) <span class="keyword">const</span>;</div> <div class="line"><a name="l00778"></a><span class="lineno"> 778</span> </div> <div class="line"><a name="l00786"></a><span class="lineno"> 786</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> containsAll(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s) <span class="keyword">const</span>;</div> <div class="line"><a name="l00787"></a><span class="lineno"> 787</span> </div> <div class="line"><a name="l00796"></a><span class="lineno"> 796</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> containsNone(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> end) <span class="keyword">const</span>;</div> <div class="line"><a name="l00797"></a><span class="lineno"> 797</span> </div> <div class="line"><a name="l00805"></a><span class="lineno"> 805</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> containsNone(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& c) <span class="keyword">const</span>;</div> <div class="line"><a name="l00806"></a><span class="lineno"> 806</span> </div> <div class="line"><a name="l00814"></a><span class="lineno"> 814</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> containsNone(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s) <span class="keyword">const</span>;</div> <div class="line"><a name="l00815"></a><span class="lineno"> 815</span> </div> <div class="line"><a name="l00824"></a><span class="lineno"> 824</span>  <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> containsSome(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> end) <span class="keyword">const</span>;</div> <div class="line"><a name="l00825"></a><span class="lineno"> 825</span> </div> <div class="line"><a name="l00833"></a><span class="lineno"> 833</span>  <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> containsSome(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& s) <span class="keyword">const</span>;</div> <div class="line"><a name="l00834"></a><span class="lineno"> 834</span> </div> <div class="line"><a name="l00842"></a><span class="lineno"> 842</span>  <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> containsSome(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s) <span class="keyword">const</span>;</div> <div class="line"><a name="l00843"></a><span class="lineno"> 843</span> </div> <div class="line"><a name="l00862"></a><span class="lineno"> 862</span>  int32_t span(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be wchar_t if that is 16 bits wide; always assumed to be unsigned.">UChar</a> *s, int32_t length, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current character is cont...">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div> <div class="line"><a name="l00863"></a><span class="lineno"> 863</span> </div> <div class="line"><a name="l00876"></a><span class="lineno"> 876</span>  <span class="keyword">inline</span> int32_t span(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> &s, int32_t start, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current character is cont...">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div> <div class="line"><a name="l00877"></a><span class="lineno"> 877</span> </div> <div class="line"><a name="l00895"></a><span class="lineno"> 895</span>  int32_t spanBack(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be wchar_t if that is 16 bits wide; always assumed to be unsigned.">UChar</a> *s, int32_t length, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current character is cont...">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div> <div class="line"><a name="l00896"></a><span class="lineno"> 896</span> </div> <div class="line"><a name="l00910"></a><span class="lineno"> 910</span>  <span class="keyword">inline</span> int32_t spanBack(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> &s, int32_t limit, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current character is cont...">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div> <div class="line"><a name="l00911"></a><span class="lineno"> 911</span> </div> <div class="line"><a name="l00930"></a><span class="lineno"> 930</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" title="Argument values for whether span() and similar functions continue while the current character is cont...">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div> <div class="line"><a name="l00931"></a><span class="lineno"> 931</span> </div> <div class="line"><a name="l00949"></a><span class="lineno"> 949</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" title="Argument values for whether span() and similar functions continue while the current character is cont...">USetSpanCondition</a> spanCondition) <span class="keyword">const</span>;</div> <div class="line"><a name="l00950"></a><span class="lineno"> 950</span> </div> <div class="line"><a name="l00955"></a><span class="lineno"> 955</span>  <span class="keyword">virtual</span> <a class="code" href="unimatch_8h.html#aa87e5322490b3e89e6913bfabd0390e6" title="Constants returned by UnicodeMatcher::matches() indicating the degree of match.">UMatchDegree</a> <a class="code" href="classUnicodeFilter.html#aea7e423b6ea7e4588bf7f5aa220e665c" title="Implement UnicodeMatcher API.">matches</a>(<span class="keyword">const</span> <a class="code" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports the replaceme...">Replaceable</a>& text,</div> <div class="line"><a name="l00956"></a><span class="lineno"> 956</span>  int32_t& offset,</div> <div class="line"><a name="l00957"></a><span class="lineno"> 957</span>  int32_t limit,</div> <div class="line"><a name="l00958"></a><span class="lineno"> 958</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> incremental);</div> <div class="line"><a name="l00959"></a><span class="lineno"> 959</span> </div> <div class="line"><a name="l00960"></a><span class="lineno"> 960</span> <span class="keyword">private</span>:</div> <div class="line"><a name="l00983"></a><span class="lineno"> 983</span>  <span class="keyword">static</span> int32_t matchRest(<span class="keyword">const</span> <a class="code" href="classReplaceable.html" title="Replaceable is an abstract base class representing a string of characters that supports the replaceme...">Replaceable</a>& text,</div> <div class="line"><a name="l00984"></a><span class="lineno"> 984</span>  int32_t start, int32_t limit,</div> <div class="line"><a name="l00985"></a><span class="lineno"> 985</span>  <span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l00986"></a><span class="lineno"> 986</span> </div> <div class="line"><a name="l00996"></a><span class="lineno"> 996</span>  int32_t findCodePoint(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> c) <span class="keyword">const</span>;</div> <div class="line"><a name="l00997"></a><span class="lineno"> 997</span> </div> <div class="line"><a name="l00998"></a><span class="lineno"> 998</span> <span class="keyword">public</span>:</div> <div class="line"><a name="l00999"></a><span class="lineno"> 999</span> </div> <div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUnicodeMatcher.html#a23f055516112c25dffdc836ffa16cd0e" title="Union the set of all characters that may be matched by this object into the given set...">addMatchSetTo</a>(<a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& toUnionTo) <span class="keyword">const</span>;</div> <div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> </div> <div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>  int32_t indexOf(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> c) <span class="keyword">const</span>;</div> <div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> </div> <div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>  <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> charAt(int32_t index) <span class="keyword">const</span>;</div> <div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> </div> <div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& add(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> end);</div> <div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> </div> <div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& add(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> c);</div> <div class="line"><a name="l01054"></a><span class="lineno"> 1054</span> </div> <div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& add(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> </div> <div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>  <span class="keyword">private</span>:</div> <div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>  <span class="keyword">static</span> int32_t getSingleCP(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l01075"></a><span class="lineno"> 1075</span> </div> <div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>  <span class="keywordtype">void</span> _add(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> </div> <div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>  <span class="keyword">public</span>:</div> <div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& addAll(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> </div> <div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& retainAll(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> </div> <div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& complementAll(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l01108"></a><span class="lineno"> 1108</span> </div> <div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& removeAll(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l01118"></a><span class="lineno"> 1118</span> </div> <div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>  <span class="keyword">static</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>* <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> createFrom(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l01128"></a><span class="lineno"> 1128</span> </div> <div class="line"><a name="l01129"></a><span class="lineno"> 1129</span> </div> <div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>  <span class="keyword">static</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>* <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> createFromAll(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l01138"></a><span class="lineno"> 1138</span> </div> <div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& retain(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> end);</div> <div class="line"><a name="l01153"></a><span class="lineno"> 1153</span> </div> <div class="line"><a name="l01154"></a><span class="lineno"> 1154</span> </div> <div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& retain(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> c);</div> <div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> </div> <div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& <span class="keyword">remove</span>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> end);</div> <div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> </div> <div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& <span class="keyword">remove</span>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> c);</div> <div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> </div> <div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& <span class="keyword">remove</span>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l01196"></a><span class="lineno"> 1196</span> </div> <div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& complement(<span class="keywordtype">void</span>);</div> <div class="line"><a name="l01205"></a><span class="lineno"> 1205</span> </div> <div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& complement(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> end);</div> <div class="line"><a name="l01221"></a><span class="lineno"> 1221</span> </div> <div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& complement(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> c);</div> <div class="line"><a name="l01230"></a><span class="lineno"> 1230</span> </div> <div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& complement(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s);</div> <div class="line"><a name="l01242"></a><span class="lineno"> 1242</span> </div> <div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& addAll(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& c);</div> <div class="line"><a name="l01256"></a><span class="lineno"> 1256</span> </div> <div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& retainAll(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& c);</div> <div class="line"><a name="l01269"></a><span class="lineno"> 1269</span> </div> <div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& removeAll(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& c);</div> <div class="line"><a name="l01282"></a><span class="lineno"> 1282</span> </div> <div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& complementAll(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& c);</div> <div class="line"><a name="l01294"></a><span class="lineno"> 1294</span> </div> <div class="line"><a name="l01301"></a><span class="lineno"> 1301</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& clear(<span class="keywordtype">void</span>);</div> <div class="line"><a name="l01302"></a><span class="lineno"> 1302</span> </div> <div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& closeOver(int32_t attribute);</div> <div class="line"><a name="l01329"></a><span class="lineno"> 1329</span> </div> <div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> &removeAllStrings();</div> <div class="line"><a name="l01337"></a><span class="lineno"> 1337</span> </div> <div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>  <span class="keyword">virtual</span> int32_t getRangeCount(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div> <div class="line"><a name="l01346"></a><span class="lineno"> 1346</span> </div> <div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> getRangeStart(int32_t index) <span class="keyword">const</span>;</div> <div class="line"><a name="l01355"></a><span class="lineno"> 1355</span> </div> <div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> getRangeEnd(int32_t index) <span class="keyword">const</span>;</div> <div class="line"><a name="l01364"></a><span class="lineno"> 1364</span> </div> <div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>  int32_t serialize(uint16_t *dest, int32_t destCapacity, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& ec) <span class="keyword">const</span>;</div> <div class="line"><a name="l01414"></a><span class="lineno"> 1414</span> </div> <div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>  <span class="keyword">virtual</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& compact();</div> <div class="line"><a name="l01422"></a><span class="lineno"> 1422</span> </div> <div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>  <span class="keyword">static</span> <a class="code" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f" title="UClassID is used to identify classes without using RTTI, since RTTI is not yet supported by all C++ c...">UClassID</a> <a class="code" href="platform_8h.html#a72bf6d8ec0640a37b1915e5d853b2016">U_EXPORT2</a> <a class="code" href="classUnicodeFilter.html#a32a5fef7c44d68ebed5313e27645b5e6" title="ICU "poor man's RTTI", returns a UClassID for this class.">getStaticClassID</a>(<span class="keywordtype">void</span>);</div> <div class="line"><a name="l01435"></a><span class="lineno"> 1435</span> </div> <div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>  <span class="keyword">virtual</span> <a class="code" href="utypes_8h.html#a22af10545208a455a6e884008df48e9f" title="UClassID is used to identify classes without using RTTI, since RTTI is not yet supported by all C++ c...">UClassID</a> <a class="code" href="classUnicodeFunctor.html#a6eaa9f077fe622d4c02643865f99bfa2" title="Returns a unique class ID polymorphically.">getDynamicClassID</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div> <div class="line"><a name="l01445"></a><span class="lineno"> 1445</span> </div> <div class="line"><a name="l01446"></a><span class="lineno"> 1446</span> <span class="keyword">private</span>:</div> <div class="line"><a name="l01447"></a><span class="lineno"> 1447</span> </div> <div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>  <span class="comment">// Private API for the USet API</span></div> <div class="line"><a name="l01449"></a><span class="lineno"> 1449</span> </div> <div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>  <span class="keyword">friend</span> <span class="keyword">class </span>USetAccess;</div> <div class="line"><a name="l01451"></a><span class="lineno"> 1451</span> </div> <div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>  int32_t getStringCount() <span class="keyword">const</span>;</div> <div class="line"><a name="l01453"></a><span class="lineno"> 1453</span> </div> <div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>  <span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>* getString(int32_t index) <span class="keyword">const</span>;</div> <div class="line"><a name="l01455"></a><span class="lineno"> 1455</span> </div> <div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>  <span class="comment">// RuleBasedTransliterator support</span></div> <div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l01459"></a><span class="lineno"> 1459</span> </div> <div class="line"><a name="l01460"></a><span class="lineno"> 1460</span> <span class="keyword">private</span>:</div> <div class="line"><a name="l01461"></a><span class="lineno"> 1461</span> </div> <div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classUnicodeMatcher.html#a77a01adbdb969d73ac257c75eb63bed6" title="Returns TRUE if this matcher will match a character c, where c & 0xFF == v, at offset, in the forward direction (with limit > offset).">matchesIndexValue</a>(uint8_t v) <span class="keyword">const</span>;</div> <div class="line"><a name="l01468"></a><span class="lineno"> 1468</span> </div> <div class="line"><a name="l01469"></a><span class="lineno"> 1469</span> <span class="keyword">private</span>:</div> <div class="line"><a name="l01470"></a><span class="lineno"> 1470</span> </div> <div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>  <span class="comment">// Implementation: Clone as thawed (see ICU4J Freezable)</span></div> <div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l01474"></a><span class="lineno"> 1474</span> </div> <div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& o, <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <span class="comment">/* asThawed */</span>);</div> <div class="line"><a name="l01476"></a><span class="lineno"> 1476</span> </div> <div class="line"><a name="l01477"></a><span class="lineno"> 1477</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l01478"></a><span class="lineno"> 1478</span>  <span class="comment">// Implementation: Pattern parsing</span></div> <div class="line"><a name="l01479"></a><span class="lineno"> 1479</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> </div> <div class="line"><a name="l01481"></a><span class="lineno"> 1481</span>  <span class="keywordtype">void</span> applyPattern(RuleCharacterIterator& chars,</div> <div class="line"><a name="l01482"></a><span class="lineno"> 1482</span>  <span class="keyword">const</span> <a class="code" href="classSymbolTable.html" title="An interface that defines both lookup protocol and parsing of symbolic names.">SymbolTable</a>* symbols,</div> <div class="line"><a name="l01483"></a><span class="lineno"> 1483</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& rebuiltPat,</div> <div class="line"><a name="l01484"></a><span class="lineno"> 1484</span>  uint32_t options,</div> <div class="line"><a name="l01485"></a><span class="lineno"> 1485</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& ec);</div> <div class="line"><a name="l01486"></a><span class="lineno"> 1486</span> </div> <div class="line"><a name="l01487"></a><span class="lineno"> 1487</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l01488"></a><span class="lineno"> 1488</span>  <span class="comment">// Implementation: Utility methods</span></div> <div class="line"><a name="l01489"></a><span class="lineno"> 1489</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l01490"></a><span class="lineno"> 1490</span> </div> <div class="line"><a name="l01491"></a><span class="lineno"> 1491</span>  <span class="keywordtype">void</span> ensureCapacity(int32_t newLen, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& ec);</div> <div class="line"><a name="l01492"></a><span class="lineno"> 1492</span> </div> <div class="line"><a name="l01493"></a><span class="lineno"> 1493</span>  <span class="keywordtype">void</span> ensureBufferCapacity(int32_t newLen, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& ec);</div> <div class="line"><a name="l01494"></a><span class="lineno"> 1494</span> </div> <div class="line"><a name="l01495"></a><span class="lineno"> 1495</span>  <span class="keywordtype">void</span> swapBuffers(<span class="keywordtype">void</span>);</div> <div class="line"><a name="l01496"></a><span class="lineno"> 1496</span> </div> <div class="line"><a name="l01497"></a><span class="lineno"> 1497</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> allocateStrings(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a> &status);</div> <div class="line"><a name="l01498"></a><span class="lineno"> 1498</span> </div> <div class="line"><a name="l01499"></a><span class="lineno"> 1499</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& _toPattern(<a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& result,</div> <div class="line"><a name="l01500"></a><span class="lineno"> 1500</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> escapeUnprintable) <span class="keyword">const</span>;</div> <div class="line"><a name="l01501"></a><span class="lineno"> 1501</span> </div> <div class="line"><a name="l01502"></a><span class="lineno"> 1502</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& _generatePattern(<a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& result,</div> <div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> escapeUnprintable) <span class="keyword">const</span>;</div> <div class="line"><a name="l01504"></a><span class="lineno"> 1504</span> </div> <div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> _appendToPat(<a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& buf, <span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s, <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> escapeUnprintable);</div> <div class="line"><a name="l01506"></a><span class="lineno"> 1506</span> </div> <div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> _appendToPat(<a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& buf, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> c, <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> escapeUnprintable);</div> <div class="line"><a name="l01508"></a><span class="lineno"> 1508</span> </div> <div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>  <span class="comment">// Implementation: Fundamental operators</span></div> <div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>  <span class="comment">//----------------------------------------------------------------</span></div> <div class="line"><a name="l01512"></a><span class="lineno"> 1512</span> </div> <div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>  <span class="keywordtype">void</span> exclusiveOr(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a>* other, int32_t otherLen, int8_t polarity);</div> <div class="line"><a name="l01514"></a><span class="lineno"> 1514</span> </div> <div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>  <span class="keywordtype">void</span> add(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a>* other, int32_t otherLen, int8_t polarity);</div> <div class="line"><a name="l01516"></a><span class="lineno"> 1516</span> </div> <div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>  <span class="keywordtype">void</span> retain(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a>* other, int32_t otherLen, int8_t polarity);</div> <div class="line"><a name="l01518"></a><span class="lineno"> 1518</span> </div> <div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>  <span class="keyword">static</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> resemblesPropertyPattern(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>  int32_t pos);</div> <div class="line"><a name="l01526"></a><span class="lineno"> 1526</span> </div> <div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>  <span class="keyword">static</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> resemblesPropertyPattern(RuleCharacterIterator& chars,</div> <div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>  int32_t iterOpts);</div> <div class="line"><a name="l01529"></a><span class="lineno"> 1529</span> </div> <div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>  <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& applyPropertyPattern(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& pattern,</div> <div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>  <a class="code" href="classParsePosition.html" title="ParsePosition is a simple class used by Format and its subclasses to keep track of the current positi...">ParsePosition</a>& ppos,</div> <div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a> &ec);</div> <div class="line"><a name="l01572"></a><span class="lineno"> 1572</span> </div> <div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>  <span class="keywordtype">void</span> applyPropertyPattern(RuleCharacterIterator& chars,</div> <div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>  <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& rebuiltPat,</div> <div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a>& ec);</div> <div class="line"><a name="l01576"></a><span class="lineno"> 1576</span> </div> <div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>  <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>* getInclusions(int32_t src, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a> &status);</div> <div class="line"><a name="l01578"></a><span class="lineno"> 1578</span> </div> <div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>  <span class="keyword">typedef</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> (*Filter)(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> codePoint, <span class="keywordtype">void</span>* context);</div> <div class="line"><a name="l01584"></a><span class="lineno"> 1584</span> </div> <div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>  <span class="keywordtype">void</span> applyFilter(Filter filter,</div> <div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>  <span class="keywordtype">void</span>* context,</div> <div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>  int32_t src,</div> <div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c" title="Error code to replace exception handling, so that the code is compatible with all C++ compilers...">UErrorCode</a> &status);</div> <div class="line"><a name="l01598"></a><span class="lineno"> 1598</span> </div> <div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>  <span class="keywordtype">void</span> setPattern(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& newPat);</div> <div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>  <span class="keywordtype">void</span> releasePattern();</div> <div class="line"><a name="l01607"></a><span class="lineno"> 1607</span> </div> <div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classUnicodeSetIterator.html" title="UnicodeSetIterator iterates over the contents of a UnicodeSet.">UnicodeSetIterator</a>;</div> <div class="line"><a name="l01609"></a><span class="lineno"> 1609</span> };</div> <div class="line"><a name="l01610"></a><span class="lineno"> 1610</span> </div> <div class="line"><a name="l01611"></a><span class="lineno"> 1611</span> </div> <div class="line"><a name="l01612"></a><span class="lineno"> 1612</span> </div> <div class="line"><a name="l01613"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#a003c9c3c25134385dcc980be40848e6c"> 1613</a></span> <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classUnicodeSet.html#a003c9c3c25134385dcc980be40848e6c" title="Compares the specified object with this set for equality.">UnicodeSet::operator!=</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& o)<span class="keyword"> const </span>{</div> <div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>  <span class="keywordflow">return</span> !<a class="code" href="classUnicodeSet.html#a4c6b2c9216b9e42f4d69ed413aaa2af4" title="Compares the specified object with this set for equality.">operator==</a>(o);</div> <div class="line"><a name="l01615"></a><span class="lineno"> 1615</span> }</div> <div class="line"><a name="l01616"></a><span class="lineno"> 1616</span> </div> <div class="line"><a name="l01617"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#af82d9e6251a46c6b4735af8b7cf1f3f3"> 1617</a></span> <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classUnicodeSet.html#af82d9e6251a46c6b4735af8b7cf1f3f3" title="Determines whether the set has been frozen (made immutable) or not.">UnicodeSet::isFrozen</a>()<span class="keyword"> const </span>{</div> <div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>  <span class="keywordflow">return</span> (<a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a>)(bmpSet!=<a class="code" href="utypes_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4" title="Define NULL if necessary, to 0 for C++ and to ((void *)0) for C.">NULL</a> || stringSpan!=<a class="code" href="utypes_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4" title="Define NULL if necessary, to 0 for C++ and to ((void *)0) for C.">NULL</a>);</div> <div class="line"><a name="l01619"></a><span class="lineno"> 1619</span> }</div> <div class="line"><a name="l01620"></a><span class="lineno"> 1620</span> </div> <div class="line"><a name="l01621"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#a5317db95daf21213341b6d8204dcb42c"> 1621</a></span> <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classUnicodeSet.html#a5317db95daf21213341b6d8204dcb42c" title="Returns true if this set contains one or more of the characters in the given range.">UnicodeSet::containsSome</a>(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> start, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809" title="Define UChar32 as a type for single Unicode code points.">UChar32</a> end)<span class="keyword"> const </span>{</div> <div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>  <span class="keywordflow">return</span> !<a class="code" href="classUnicodeSet.html#aa033cd3776450f747f5bf8beb0477c0e" title="Returns true if this set contains none of the characters of the given range.">containsNone</a>(start, end);</div> <div class="line"><a name="l01623"></a><span class="lineno"> 1623</span> }</div> <div class="line"><a name="l01624"></a><span class="lineno"> 1624</span> </div> <div class="line"><a name="l01625"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#a35ddc714c95fffa7650a10abb75be5d8"> 1625</a></span> <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classUnicodeSet.html#a5317db95daf21213341b6d8204dcb42c" title="Returns true if this set contains one or more of the characters in the given range.">UnicodeSet::containsSome</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a>& s)<span class="keyword"> const </span>{</div> <div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>  <span class="keywordflow">return</span> !<a class="code" href="classUnicodeSet.html#aa033cd3776450f747f5bf8beb0477c0e" title="Returns true if this set contains none of the characters of the given range.">containsNone</a>(s);</div> <div class="line"><a name="l01627"></a><span class="lineno"> 1627</span> }</div> <div class="line"><a name="l01628"></a><span class="lineno"> 1628</span> </div> <div class="line"><a name="l01629"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#ac30cbb03cc4b55cad432f838967324b3"> 1629</a></span> <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classUnicodeSet.html#a5317db95daf21213341b6d8204dcb42c" title="Returns true if this set contains one or more of the characters in the given range.">UnicodeSet::containsSome</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>& s)<span class="keyword"> const </span>{</div> <div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>  <span class="keywordflow">return</span> !<a class="code" href="classUnicodeSet.html#aa033cd3776450f747f5bf8beb0477c0e" title="Returns true if this set contains none of the characters of the given range.">containsNone</a>(s);</div> <div class="line"><a name="l01631"></a><span class="lineno"> 1631</span> }</div> <div class="line"><a name="l01632"></a><span class="lineno"> 1632</span> </div> <div class="line"><a name="l01633"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#ad2987ff72267bd6692c57be0f0e39418"> 1633</a></span> <span class="keyword">inline</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> <a class="code" href="classUnicodeSet.html#ad2987ff72267bd6692c57be0f0e39418" title="Determine if this object contains a valid set.">UnicodeSet::isBogus</a>()<span class="keyword"> const </span>{</div> <div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>  <span class="keywordflow">return</span> (<a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a>)(fFlags & kIsBogus);</div> <div class="line"><a name="l01635"></a><span class="lineno"> 1635</span> }</div> <div class="line"><a name="l01636"></a><span class="lineno"> 1636</span> </div> <div class="line"><a name="l01637"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#a049d965a1c1f1f8fb1ce15c6b5586c4d"> 1637</a></span> <span class="keyword">inline</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *<a class="code" href="classUnicodeSet.html#a049d965a1c1f1f8fb1ce15c6b5586c4d" title="Get a UnicodeSet pointer from a USet.">UnicodeSet::fromUSet</a>(<a class="code" href="ucnv_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *uset) {</div> <div class="line"><a name="l01638"></a><span class="lineno"> 1638</span>  <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span><a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *<span class="keyword">></span>(uset);</div> <div class="line"><a name="l01639"></a><span class="lineno"> 1639</span> }</div> <div class="line"><a name="l01640"></a><span class="lineno"> 1640</span> </div> <div class="line"><a name="l01641"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#a9d1c1b063e274755de9acb28ed387df5"> 1641</a></span> <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *<a class="code" href="classUnicodeSet.html#a049d965a1c1f1f8fb1ce15c6b5586c4d" title="Get a UnicodeSet pointer from a USet.">UnicodeSet::fromUSet</a>(<span class="keyword">const</span> <a class="code" href="ucnv_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *uset) {</div> <div class="line"><a name="l01642"></a><span class="lineno"> 1642</span>  <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span><span class="keyword">const </span><a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *<span class="keyword">></span>(uset);</div> <div class="line"><a name="l01643"></a><span class="lineno"> 1643</span> }</div> <div class="line"><a name="l01644"></a><span class="lineno"> 1644</span> </div> <div class="line"><a name="l01645"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#a92b8fb5933616cb52ee0da08bb927ecc"> 1645</a></span> <span class="keyword">inline</span> <a class="code" href="ucnv_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *<a class="code" href="classUnicodeSet.html#a92b8fb5933616cb52ee0da08bb927ecc" title="Produce a USet * pointer for this UnicodeSet.">UnicodeSet::toUSet</a>() {</div> <div class="line"><a name="l01646"></a><span class="lineno"> 1646</span>  <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span><a class="code" href="ucnv_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *<span class="keyword">></span>(<span class="keyword">this</span>);</div> <div class="line"><a name="l01647"></a><span class="lineno"> 1647</span> }</div> <div class="line"><a name="l01648"></a><span class="lineno"> 1648</span> </div> <div class="line"><a name="l01649"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#a62e24ae4792b422ade146d03c7a4b035"> 1649</a></span> <span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="ucnv_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *<a class="code" href="classUnicodeSet.html#a92b8fb5933616cb52ee0da08bb927ecc" title="Produce a USet * pointer for this UnicodeSet.">UnicodeSet::toUSet</a>()<span class="keyword"> const </span>{</div> <div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>  <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span><span class="keyword">const </span><a class="code" href="ucnv_8h.html#adce3fef7c15d7c78196bf977ac96ec9c">USet</a> *<span class="keyword">></span>(<span class="keyword">this</span>);</div> <div class="line"><a name="l01651"></a><span class="lineno"> 1651</span> }</div> <div class="line"><a name="l01652"></a><span class="lineno"> 1652</span> </div> <div class="line"><a name="l01653"></a><span class="lineno"><a class="code" href="classUnicodeSet.html#af8af2071003396abcb3051a8f4f82e59"> 1653</a></span> <span class="keyword">inline</span> int32_t <a class="code" href="classUnicodeSet.html#ae429f2e852471745b94d6dba3dc38440" title="Returns the length of the initial substring of the input string which consists only of characters and...">UnicodeSet::span</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> &s, int32_t start, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current character is cont...">USetSpanCondition</a> spanCondition)<span class="keyword"> const </span>{</div> <div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>  int32_t sLength=s.<a class="code" href="classUnicodeString.html#ac4cf80391a0e523c27aacaba796aede6" title="Return the length of the UnicodeString object.">length</a>();</div> <div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>  <span class="keywordflow">if</span>(start<0) {</div> <div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>  start=0;</div> <div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>  } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(start>sLength) {</div> <div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>  start=sLength;</div> <div class="line"><a name="l01659"></a><span class="lineno"> 1659</span>  }</div> <div class="line"><a name="l01660"></a><span class="lineno"> 1660</span>  <span class="keywordflow">return</span> start+<a class="code" href="classUnicodeSet.html#ae429f2e852471745b94d6dba3dc38440" title="Returns the length of the initial substring of the input string which consists only of characters and...">span</a>(s.<a class="code" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b" title="Get a read/write pointer to the internal buffer.">getBuffer</a>()+start, sLength-start, spanCondition);</div> <div class="line"><a name="l01661"></a><span class="lineno"> 1661</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"><a class="code" href="classUnicodeSet.html#a87b687130fcd69c5b6603fd8cbb76136"> 1663</a></span> <span class="keyword">inline</span> int32_t <a class="code" href="classUnicodeSet.html#ac95f19d6cc2033b05455838842337d43" title="Returns the start of the trailing substring of the input string which consists only of characters and...">UnicodeSet::spanBack</a>(<span class="keyword">const</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> &s, int32_t limit, <a class="code" href="uset_8h.html#a5fc2e77dd6c8385e0e88fc6a7d72d9b4" title="Argument values for whether span() and similar functions continue while the current character is cont...">USetSpanCondition</a> spanCondition)<span class="keyword"> const </span>{</div> <div class="line"><a name="l01664"></a><span class="lineno"> 1664</span>  int32_t sLength=s.<a class="code" href="classUnicodeString.html#ac4cf80391a0e523c27aacaba796aede6" title="Return the length of the UnicodeString object.">length</a>();</div> <div class="line"><a name="l01665"></a><span class="lineno"> 1665</span>  <span class="keywordflow">if</span>(limit<0) {</div> <div class="line"><a name="l01666"></a><span class="lineno"> 1666</span>  limit=0;</div> <div class="line"><a name="l01667"></a><span class="lineno"> 1667</span>  } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(limit>sLength) {</div> <div class="line"><a name="l01668"></a><span class="lineno"> 1668</span>  limit=sLength;</div> <div class="line"><a name="l01669"></a><span class="lineno"> 1669</span>  }</div> <div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>  <span class="keywordflow">return</span> <a class="code" href="classUnicodeSet.html#ac95f19d6cc2033b05455838842337d43" title="Returns the start of the trailing substring of the input string which consists only of characters and...">spanBack</a>(s.<a class="code" href="classUnicodeString.html#ab60ed4d07f726d3cceb3964c6556a34b" title="Get a read/write pointer to the internal buffer.">getBuffer</a>(), limit, spanCondition);</div> <div class="line"><a name="l01671"></a><span class="lineno"> 1671</span> }</div> <div class="line"><a name="l01672"></a><span class="lineno"> 1672</span> </div> <div class="line"><a name="l01673"></a><span class="lineno"> 1673</span> <a class="code" href="uversion_8h.html#a3da1f00f3b02976ac53c014a3e4c0933" title="This is used to end a declaration of a public ICU C++ API.">U_NAMESPACE_END</a></div> <div class="line"><a name="l01674"></a><span class="lineno"> 1674</span> </div> <div class="line"><a name="l01675"></a><span class="lineno"> 1675</span> <span class="preprocessor">#endif</span></div> </div><!-- fragment --></div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.1.1 </small></address> </body> </html>