JezK
Edit File: rbbi_8h_source.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.14"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>ICU 77.1: common/unicode/rbbi.h Source File</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/searchdata.js"></script> <script type="text/javascript" src="search/search.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">ICU 77.1  <span id="projectnumber">77.1</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.14 --> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ var searchBox = new SearchBox("searchBox", "search",false,'Search'); /* @license-end */ </script> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',true,false,'search.php','Search'); $(document).ready(function() { init_search(); }); }); /* @license-end */</script> <div id="main-nav"></div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> </div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_bdd9a5d540de89e9fe90efdfc6973a4f.html">common</a></li><li class="navelem"><a class="el" href="dir_f59c6450ff718ff1b085cfd1c36acbd7.html">unicode</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="headertitle"> <div class="title">rbbi.h</div> </div> </div><!--header--> <div class="contents"> <a href="rbbi_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// © 2016 and later: Unicode, Inc. and others.</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// License & terms of use: http://www.unicode.org/copyright.html</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">/*</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">***************************************************************************</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">* Copyright (C) 1999-2016 International Business Machines Corporation *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">* and others. All rights reserved. *</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">***************************************************************************</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"></span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">**********************************************************************</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">* Date Name Description</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">* 10/22/99 alan Creation.</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment">* 11/11/99 rgillam Complete port from Java.</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">**********************************************************************</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">*/</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span> </div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="preprocessor">#ifndef RBBI_H</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#define RBBI_H</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#include "<a class="code" href="utypes_8h.html">unicode/utypes.h</a>"</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#if U_SHOW_CPLUSPLUS_API</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#if !UCONFIG_NO_BREAK_ITERATION</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> </div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="brkiter_8h.html">unicode/brkiter.h</a>"</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="udata_8h.html">unicode/udata.h</a>"</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "<a class="code" href="parseerr_8h.html">unicode/parseerr.h</a>"</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "<a class="code" href="schriter_8h.html">unicode/schriter.h</a>"</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> </div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keyword">struct </span><a class="code" href="structUCPTrie.html">UCPTrie</a>;</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> U_NAMESPACE_BEGIN</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keyword">class </span>LanguageBreakEngine;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keyword">struct </span>RBBIDataHeader;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">class </span>RBBIDataWrapper;</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keyword">class </span>UnhandledEngine;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keyword">class </span>UStack;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div><div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classicu_1_1ExternalBreakEngine.html"> 60</a></span> <span class="keyword">class </span><a class="code" href="classicu_1_1ExternalBreakEngine.html">ExternalBreakEngine</a> : <span class="keyword">public</span> <a class="code" href="classicu_1_1UObject.html">UObject</a> {</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classicu_1_1ExternalBreakEngine.html#afbe2d84b15f76cff3368e7d0a594235c"> 66</a></span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1ExternalBreakEngine.html#afbe2d84b15f76cff3368e7d0a594235c">~ExternalBreakEngine</a>() {}</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> isFor(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c, <span class="keyword">const</span> <span class="keywordtype">char</span>* locale) <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> handles(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c) <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="keyword">virtual</span> int32_t fillBreaks(<a class="code" href="structUText.html">UText</a>* text, int32_t start, int32_t end,</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  int32_t* foundBreaks, int32_t foundBreaksCapacity,</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status) <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span> };</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div><div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="classicu_1_1RuleBasedBreakIterator.html"> 120</a></span> <span class="keyword">class </span><a class="code" href="utypes_8h.html#a559955ec3bc692657c5d8b1c6de8e334">U_COMMON_API</a> <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a> <span class="comment">/*final*/</span> : <span class="keyword">public</span> <a class="code" href="classicu_1_1BreakIterator.html">BreakIterator</a> {</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  <a class="code" href="structUText.html">UText</a> fText = <a class="code" href="utext_8h.html#a3dc916f710c0d3f17fe2a220384bcc8c">UTEXT_INITIALIZER</a>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div><div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="classicu_1_1RuleBasedBreakIterator.html#a2ad6052587787523f902a4503693dbe6"> 137</a></span>  RBBIDataWrapper *fData = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> fErrorCode = <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78caa43dbfc9499c5f911d04e1a0ca3bf6f9">U_ZERO_ERROR</a>;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  int32_t fPosition = 0;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  int32_t fRuleStatusIndex = 0;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span> </div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  <span class="keyword">class </span>BreakCache;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  BreakCache *fBreakCache = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span> </div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <span class="keyword">class </span>DictionaryCache;</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  DictionaryCache *fDictionaryCache = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span> </div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>  UStack *fLanguageBreakEngines = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  UnhandledEngine *fUnhandledBreakEngine = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>  uint32_t fDictionaryCharCount = 0;</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>  <a class="code" href="classicu_1_1CharacterIterator.html">CharacterIterator</a> *fCharIter = &fSCharIter;</div><div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <a class="code" href="classicu_1_1UCharCharacterIterator.html">UCharCharacterIterator</a> fSCharIter {u<span class="stringliteral">""</span>, 0};</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span> </div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>  <span class="keywordtype">bool</span> fDone = <span class="keyword">false</span>;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div><div class="line"><a name="l00217"></a><span class="lineno"> 217</span>  int32_t *fLookAheadMatches = <span class="keyword">nullptr</span>;</div><div class="line"><a name="l00218"></a><span class="lineno"> 218</span> </div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>  <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> fIsPhraseBreaking = <span class="keyword">false</span>;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  <span class="comment">//=======================================================================</span></div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <span class="comment">// constructors</span></div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  <span class="comment">//=======================================================================</span></div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span> </div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>  <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>(RBBIDataHeader* data, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span> </div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>  <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>(<a class="code" href="udata_8h.html#acffec83601fda29bd4750b24f829f56b">UDataMemory</a>* image, <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> isPhraseBreaking, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status);</div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div><div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="classicu_1_1RuleBasedBreakIterator.html#a17ce03f12f5fa8688859b25e2bf60938"> 256</a></span>  <span class="keyword">friend</span> <span class="keyword">class </span>RBBIRuleBuilder;</div><div class="line"><a name="l00258"></a><span class="lineno"><a class="line" href="classicu_1_1RuleBasedBreakIterator.html#a5fbb7407696454879cf016b20a0380f0"> 258</a></span>  <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classicu_1_1BreakIterator.html">BreakIterator</a>;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span> </div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>(<a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> *status);</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span> </div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span> </div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>  <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>();</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span> </div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>  <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>& that);</div><div class="line"><a name="l00284"></a><span class="lineno"> 284</span> </div><div class="line"><a name="l00293"></a><span class="lineno"> 293</span>  <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>( <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a> &rules,</div><div class="line"><a name="l00294"></a><span class="lineno"> 294</span>  <a class="code" href="structUParseError.html">UParseError</a> &parseError,</div><div class="line"><a name="l00295"></a><span class="lineno"> 295</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status);</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span> </div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>  <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>(<span class="keyword">const</span> uint8_t *compiledRules,</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>  uint32_t ruleLength,</div><div class="line"><a name="l00322"></a><span class="lineno"> 322</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status);</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span> </div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>  <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>(<a class="code" href="udata_8h.html#acffec83601fda29bd4750b24f829f56b">UDataMemory</a>* image, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status);</div><div class="line"><a name="l00337"></a><span class="lineno"> 337</span> </div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>  <span class="keyword">virtual</span> ~<a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>();</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span> </div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>  <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>& <a class="code" href="classicu_1_1BreakIterator.html#a029005b4e479e5fc90bf11e74eb6c0d4">operator=</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>& that);</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span> </div><div class="line"><a name="l00361"></a><span class="lineno"> 361</span>  <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classicu_1_1BreakIterator.html#a0045fc272df09804974fc767bc5340fc">operator==</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1BreakIterator.html">BreakIterator</a>& that) <span class="keyword">const override</span>;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span> </div><div class="line"><a name="l00370"></a><span class="lineno"><a class="line" href="classicu_1_1RuleBasedBreakIterator.html#a866de4f5f4b7ba0a40c75177a17fdeb0"> 370</a></span>  <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classicu_1_1RuleBasedBreakIterator.html#a866de4f5f4b7ba0a40c75177a17fdeb0">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1BreakIterator.html">BreakIterator</a>& that)<span class="keyword"> const </span>{</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  <span class="keywordflow">return</span> !<a class="code" href="classicu_1_1BreakIterator.html#a0045fc272df09804974fc767bc5340fc">operator==</a>(that);</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  }</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span> </div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a>* <a class="code" href="classicu_1_1BreakIterator.html#a1e2694eb976e034f1287a1eb4899cf33">clone</a>() <span class="keyword">const override</span>;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span> </div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>  <span class="keyword">virtual</span> int32_t hashCode() <span class="keyword">const</span>;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span> </div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>  <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& getRules() <span class="keyword">const</span>;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span> </div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>  <span class="comment">//=======================================================================</span></div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>  <span class="comment">// BreakIterator overrides</span></div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>  <span class="comment">//=======================================================================</span></div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span> </div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1CharacterIterator.html">CharacterIterator</a>& <a class="code" href="classicu_1_1BreakIterator.html#a9d2bf1376d01f41b4cc01f0bca45fe0b">getText</a>() <span class="keyword">const override</span>;</div><div class="line"><a name="l00429"></a><span class="lineno"> 429</span> </div><div class="line"><a name="l00444"></a><span class="lineno"> 444</span>  <span class="keyword">virtual</span> <a class="code" href="structUText.html">UText</a> *<a class="code" href="classicu_1_1BreakIterator.html#af57b33540abfb9c41e9f1e54974d0559">getUText</a>(<a class="code" href="structUText.html">UText</a> *fillIn, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status) <span class="keyword">const override</span>;</div><div class="line"><a name="l00445"></a><span class="lineno"> 445</span> </div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classicu_1_1BreakIterator.html#a1fd72184b59936bb62b07af071e2b0c1">adoptText</a>(<a class="code" href="classicu_1_1CharacterIterator.html">CharacterIterator</a>* newText) <span class="keyword">override</span>;</div><div class="line"><a name="l00454"></a><span class="lineno"> 454</span> </div><div class="line"><a name="l00466"></a><span class="lineno"> 466</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classicu_1_1BreakIterator.html#a8b894129fb567fded3ed85a7e8ead942">setText</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html">UnicodeString</a>& newText) <span class="keyword">override</span>;</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span> </div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classicu_1_1BreakIterator.html#a8b894129fb567fded3ed85a7e8ead942">setText</a>(<a class="code" href="structUText.html">UText</a> *text, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status) <span class="keyword">override</span>;</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span> </div><div class="line"><a name="l00488"></a><span class="lineno"> 488</span>  <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1BreakIterator.html#a5e05547b9c99a23eea7ddc3d412ee212">first</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00489"></a><span class="lineno"> 489</span> </div><div class="line"><a name="l00495"></a><span class="lineno"> 495</span>  <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1BreakIterator.html#a3141dfce167220d07ec8b1c24332e9ba">last</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00496"></a><span class="lineno"> 496</span> </div><div class="line"><a name="l00507"></a><span class="lineno"> 507</span>  <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1BreakIterator.html#a48a7f41620707d76a05d4b11c3fc64e9">next</a>(int32_t n) <span class="keyword">override</span>;</div><div class="line"><a name="l00508"></a><span class="lineno"> 508</span> </div><div class="line"><a name="l00514"></a><span class="lineno"> 514</span>  <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1BreakIterator.html#a48a7f41620707d76a05d4b11c3fc64e9">next</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00515"></a><span class="lineno"> 515</span> </div><div class="line"><a name="l00521"></a><span class="lineno"> 521</span>  <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1BreakIterator.html#a0fdd481522592ec64a5ecd291129e28c">previous</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00522"></a><span class="lineno"> 522</span> </div><div class="line"><a name="l00530"></a><span class="lineno"> 530</span>  <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1BreakIterator.html#ae4178f880af4875ae5e30a716331fbaf">following</a>(int32_t offset) <span class="keyword">override</span>;</div><div class="line"><a name="l00531"></a><span class="lineno"> 531</span> </div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>  <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1BreakIterator.html#a980f8e8fbe1d37827cacc24f9606399f">preceding</a>(int32_t offset) <span class="keyword">override</span>;</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span> </div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>  <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a> <a class="code" href="classicu_1_1BreakIterator.html#aaf997425386eae9c50cd5c208dbef214">isBoundary</a>(int32_t offset) <span class="keyword">override</span>;</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span> </div><div class="line"><a name="l00559"></a><span class="lineno"> 559</span>  <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1BreakIterator.html#a9ff274cbd0eab7d6502389a28a290145">current</a>() <span class="keyword">const override</span>;</div><div class="line"><a name="l00560"></a><span class="lineno"> 560</span> </div><div class="line"><a name="l00592"></a><span class="lineno"> 592</span>  <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1BreakIterator.html#a1920d04ad1b7d0966b2ff7863df77a74">getRuleStatus</a>() <span class="keyword">const override</span>;</div><div class="line"><a name="l00593"></a><span class="lineno"> 593</span> </div><div class="line"><a name="l00617"></a><span class="lineno"> 617</span>  <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1BreakIterator.html#af3bf12df7434e65041447bef51264e13">getRuleStatusVec</a>(int32_t *fillInVec, int32_t capacity, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status) <span class="keyword">override</span>;</div><div class="line"><a name="l00618"></a><span class="lineno"> 618</span> </div><div class="line"><a name="l00630"></a><span class="lineno"> 630</span>  <span class="keyword">virtual</span> <a class="code" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> <a class="code" href="classicu_1_1BreakIterator.html#ab09e6978cda13ec6caeddfbe9c016b0f">getDynamicClassID</a>() <span class="keyword">const override</span>;</div><div class="line"><a name="l00631"></a><span class="lineno"> 631</span> </div><div class="line"><a name="l00643"></a><span class="lineno"> 643</span>  <span class="keyword">static</span> <a class="code" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a> U_EXPORT2 getStaticClassID();</div><div class="line"><a name="l00644"></a><span class="lineno"> 644</span> </div><div class="line"><a name="l00645"></a><span class="lineno"> 645</span> <span class="preprocessor">#ifndef U_FORCE_HIDE_DEPRECATED_API</span></div><div class="line"><a name="l00646"></a><span class="lineno"> 646</span> </div><div class="line"><a name="l00672"></a><span class="lineno"> 672</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a> *<a class="code" href="classicu_1_1BreakIterator.html#ac0b126946521a209ec2c6d490b7db86e">createBufferClone</a>(<span class="keywordtype">void</span> *stackBuffer,</div><div class="line"><a name="l00673"></a><span class="lineno"> 673</span>  int32_t &BufferSize,</div><div class="line"><a name="l00674"></a><span class="lineno"> 674</span>  <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status) <span class="keyword">override</span>;</div><div class="line"><a name="l00675"></a><span class="lineno"> 675</span> <span class="preprocessor">#endif // U_FORCE_HIDE_DEPRECATED_API</span></div><div class="line"><a name="l00676"></a><span class="lineno"> 676</span> </div><div class="line"><a name="l00694"></a><span class="lineno"> 694</span>  <span class="keyword">virtual</span> <span class="keyword">const</span> uint8_t *getBinaryRules(uint32_t &length);</div><div class="line"><a name="l00695"></a><span class="lineno"> 695</span> </div><div class="line"><a name="l00721"></a><span class="lineno"> 721</span>  <span class="keyword">virtual</span> <a class="code" href="classicu_1_1RuleBasedBreakIterator.html">RuleBasedBreakIterator</a> &<a class="code" href="classicu_1_1BreakIterator.html#a88ac5ff907f98e814783267b7fe082a5">refreshInputText</a>(<a class="code" href="structUText.html">UText</a> *input, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a> &status) <span class="keyword">override</span>;</div><div class="line"><a name="l00722"></a><span class="lineno"> 722</span> </div><div class="line"><a name="l00723"></a><span class="lineno"> 723</span> </div><div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00725"></a><span class="lineno"> 725</span>  <span class="comment">//=======================================================================</span></div><div class="line"><a name="l00726"></a><span class="lineno"> 726</span>  <span class="comment">// implementation</span></div><div class="line"><a name="l00727"></a><span class="lineno"> 727</span>  <span class="comment">//=======================================================================</span></div><div class="line"><a name="l00737"></a><span class="lineno"> 737</span> <span class="comment"></span> int32_t handleSafePrevious(int32_t fromPosition);</div><div class="line"><a name="l00738"></a><span class="lineno"> 738</span> </div><div class="line"><a name="l00751"></a><span class="lineno"> 751</span>  int32_t handleNext();</div><div class="line"><a name="l00752"></a><span class="lineno"> 752</span> </div><div class="line"><a name="l00753"></a><span class="lineno"> 753</span>  <span class="comment">/*</span></div><div class="line"><a name="l00754"></a><span class="lineno"> 754</span> <span class="comment"> * Templatized version of handleNext() and handleSafePrevious().</span></div><div class="line"><a name="l00755"></a><span class="lineno"> 755</span> <span class="comment"> *</span></div><div class="line"><a name="l00756"></a><span class="lineno"> 756</span> <span class="comment"> * There will be exactly four instantiations, two each for 8 and 16 bit tables,</span></div><div class="line"><a name="l00757"></a><span class="lineno"> 757</span> <span class="comment"> * two each for 8 and 16 bit trie.</span></div><div class="line"><a name="l00758"></a><span class="lineno"> 758</span> <span class="comment"> * Having separate instantiations for the table types keeps conditional tests of</span></div><div class="line"><a name="l00759"></a><span class="lineno"> 759</span> <span class="comment"> * the table type out of the inner loops, at the expense of replicated code.</span></div><div class="line"><a name="l00760"></a><span class="lineno"> 760</span> <span class="comment"> *</span></div><div class="line"><a name="l00761"></a><span class="lineno"> 761</span> <span class="comment"> * The template parameter for the Trie access function is a value, not a type.</span></div><div class="line"><a name="l00762"></a><span class="lineno"> 762</span> <span class="comment"> * Doing it this way, the compiler will inline the Trie function in the</span></div><div class="line"><a name="l00763"></a><span class="lineno"> 763</span> <span class="comment"> * expanded functions. (Both the 8 and 16 bit access functions have the same type</span></div><div class="line"><a name="l00764"></a><span class="lineno"> 764</span> <span class="comment"> * signature)</span></div><div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="comment"> */</span></div><div class="line"><a name="l00766"></a><span class="lineno"> 766</span> </div><div class="line"><a name="l00767"></a><span class="lineno"> 767</span>  <span class="keyword">typedef</span> uint16_t (*PTrieFunc)(<span class="keyword">const</span> <a class="code" href="structUCPTrie.html">UCPTrie</a> *, <a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a>);</div><div class="line"><a name="l00768"></a><span class="lineno"> 768</span> </div><div class="line"><a name="l00769"></a><span class="lineno"> 769</span>  <span class="keyword">template</span><<span class="keyword">typename</span> RowType, PTrieFunc trieFunc></div><div class="line"><a name="l00770"></a><span class="lineno"> 770</span>  int32_t handleSafePrevious(int32_t fromPosition);</div><div class="line"><a name="l00771"></a><span class="lineno"> 771</span> </div><div class="line"><a name="l00772"></a><span class="lineno"> 772</span>  <span class="keyword">template</span><<span class="keyword">typename</span> RowType, PTrieFunc trieFunc></div><div class="line"><a name="l00773"></a><span class="lineno"> 773</span>  int32_t handleNext();</div><div class="line"><a name="l00774"></a><span class="lineno"> 774</span> </div><div class="line"><a name="l00775"></a><span class="lineno"> 775</span> </div><div class="line"><a name="l00783"></a><span class="lineno"> 783</span>  <span class="keyword">const</span> LanguageBreakEngine *getLanguageBreakEngine(<a class="code" href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a> c, <span class="keyword">const</span> <span class="keywordtype">char</span>* locale);</div><div class="line"><a name="l00784"></a><span class="lineno"> 784</span> </div><div class="line"><a name="l00785"></a><span class="lineno"> 785</span>  <span class="keyword">public</span>:</div><div class="line"><a name="l00786"></a><span class="lineno"> 786</span> <span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div><div class="line"><a name="l00787"></a><span class="lineno"> 787</span> </div><div class="line"><a name="l00791"></a><span class="lineno"> 791</span>  <span class="keywordtype">void</span> dumpCache();</div><div class="line"><a name="l00792"></a><span class="lineno"> 792</span> </div><div class="line"><a name="l00797"></a><span class="lineno"> 797</span>  <span class="keywordtype">void</span> dumpTables();</div><div class="line"><a name="l00798"></a><span class="lineno"> 798</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l00799"></a><span class="lineno"> 799</span> </div><div class="line"><a name="l00800"></a><span class="lineno"> 800</span> <span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div><div class="line"><a name="l00801"></a><span class="lineno"> 801</span> </div><div class="line"><a name="l00810"></a><span class="lineno"> 810</span>  <span class="keyword">static</span> <span class="keywordtype">void</span> U_EXPORT2 registerExternalBreakEngine(</div><div class="line"><a name="l00811"></a><span class="lineno"> 811</span>  <a class="code" href="classicu_1_1ExternalBreakEngine.html">ExternalBreakEngine</a>* toAdopt, <a class="code" href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a>& status);</div><div class="line"><a name="l00812"></a><span class="lineno"> 812</span> <span class="preprocessor">#endif </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l00813"></a><span class="lineno"> 813</span> </div><div class="line"><a name="l00814"></a><span class="lineno"> 814</span> };</div><div class="line"><a name="l00815"></a><span class="lineno"> 815</span> </div><div class="line"><a name="l00816"></a><span class="lineno"> 816</span> </div><div class="line"><a name="l00817"></a><span class="lineno"> 817</span> U_NAMESPACE_END</div><div class="line"><a name="l00818"></a><span class="lineno"> 818</span> </div><div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="preprocessor">#endif </span><span class="comment">/* #if !UCONFIG_NO_BREAK_ITERATION */</span><span class="preprocessor"></span></div><div class="line"><a name="l00820"></a><span class="lineno"> 820</span> </div><div class="line"><a name="l00821"></a><span class="lineno"> 821</span> <span class="preprocessor">#endif </span><span class="comment">/* U_SHOW_CPLUSPLUS_API */</span><span class="preprocessor"></span></div><div class="line"><a name="l00822"></a><span class="lineno"> 822</span> </div><div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="preprocessor">#endif</span></div><div class="ttc" id="classicu_1_1ExternalBreakEngine_html_afbe2d84b15f76cff3368e7d0a594235c"><div class="ttname"><a href="classicu_1_1ExternalBreakEngine.html#afbe2d84b15f76cff3368e7d0a594235c">icu::ExternalBreakEngine::~ExternalBreakEngine</a></div><div class="ttdeci">virtual ~ExternalBreakEngine()</div><div class="ttdoc">destructor </div><div class="ttdef"><b>Definition:</b> <a href="rbbi_8h_source.html#l00066">rbbi.h:66</a></div></div> <div class="ttc" id="brkiter_8h_html"><div class="ttname"><a href="brkiter_8h.html">brkiter.h</a></div><div class="ttdoc">C++ API: Break Iterator. </div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_ab09e6978cda13ec6caeddfbe9c016b0f"><div class="ttname"><a href="classicu_1_1BreakIterator.html#ab09e6978cda13ec6caeddfbe9c016b0f">icu::BreakIterator::getDynamicClassID</a></div><div class="ttdeci">virtual UClassID getDynamicClassID() const override=0</div><div class="ttdoc">Return a polymorphic class ID for this object. </div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a029005b4e479e5fc90bf11e74eb6c0d4"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a029005b4e479e5fc90bf11e74eb6c0d4">icu::BreakIterator::operator=</a></div><div class="ttdeci">BreakIterator & operator=(const BreakIterator &other)</div></div> <div class="ttc" id="classicu_1_1ExternalBreakEngine_html"><div class="ttname"><a href="classicu_1_1ExternalBreakEngine.html">icu::ExternalBreakEngine</a></div><div class="ttdoc">The ExternalBreakEngine class define an abstract interface for the host environment to provide a low ...</div><div class="ttdef"><b>Definition:</b> <a href="rbbi_8h_source.html#l00060">rbbi.h:60</a></div></div> <div class="ttc" id="classicu_1_1RuleBasedBreakIterator_html_a866de4f5f4b7ba0a40c75177a17fdeb0"><div class="ttname"><a href="classicu_1_1RuleBasedBreakIterator.html#a866de4f5f4b7ba0a40c75177a17fdeb0">icu::RuleBasedBreakIterator::operator!=</a></div><div class="ttdeci">bool operator!=(const BreakIterator &that) const</div><div class="ttdoc">Not-equal operator. </div><div class="ttdef"><b>Definition:</b> <a href="rbbi_8h_source.html#l00370">rbbi.h:370</a></div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_aaf997425386eae9c50cd5c208dbef214"><div class="ttname"><a href="classicu_1_1BreakIterator.html#aaf997425386eae9c50cd5c208dbef214">icu::BreakIterator::isBoundary</a></div><div class="ttdeci">virtual UBool isBoundary(int32_t offset)=0</div><div class="ttdoc">Return true if the specified position is a boundary position. </div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a1fd72184b59936bb62b07af071e2b0c1"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a1fd72184b59936bb62b07af071e2b0c1">icu::BreakIterator::adoptText</a></div><div class="ttdeci">virtual void adoptText(CharacterIterator *it)=0</div><div class="ttdoc">Change the text over which this operates. </div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a0045fc272df09804974fc767bc5340fc"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a0045fc272df09804974fc767bc5340fc">icu::BreakIterator::operator==</a></div><div class="ttdeci">virtual bool operator==(const BreakIterator &) const =0</div><div class="ttdoc">Return true if another object is semantically equal to this one. </div></div> <div class="ttc" id="structUCPTrie_html"><div class="ttname"><a href="structUCPTrie.html">UCPTrie</a></div><div class="ttdoc">Immutable Unicode code point trie structure. </div><div class="ttdef"><b>Definition:</b> <a href="ucptrie_8h_source.html#l00059">ucptrie.h:59</a></div></div> <div class="ttc" id="uobject_8h_html_a22af10545208a455a6e884008df48e9f"><div class="ttname"><a href="uobject_8h.html#a22af10545208a455a6e884008df48e9f">UClassID</a></div><div class="ttdeci">void * UClassID</div><div class="ttdoc">UClassID is used to identify classes without using the compiler&#39;s RTTI. </div><div class="ttdef"><b>Definition:</b> <a href="uobject_8h_source.html#l00096">uobject.h:96</a></div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_af57b33540abfb9c41e9f1e54974d0559"><div class="ttname"><a href="classicu_1_1BreakIterator.html#af57b33540abfb9c41e9f1e54974d0559">icu::BreakIterator::getUText</a></div><div class="ttdeci">virtual UText * getUText(UText *fillIn, UErrorCode &status) const =0</div><div class="ttdoc">Get a UText for the text being analyzed. </div></div> <div class="ttc" id="utypes_8h_html_a3343c1c8a8377277046774691c98d78caa43dbfc9499c5f911d04e1a0ca3bf6f9"><div class="ttname"><a href="utypes_8h.html#a3343c1c8a8377277046774691c98d78caa43dbfc9499c5f911d04e1a0ca3bf6f9">U_ZERO_ERROR</a></div><div class="ttdoc">No error, no warning. </div><div class="ttdef"><b>Definition:</b> <a href="utypes_8h_source.html#l00465">utypes.h:465</a></div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_ae4178f880af4875ae5e30a716331fbaf"><div class="ttname"><a href="classicu_1_1BreakIterator.html#ae4178f880af4875ae5e30a716331fbaf">icu::BreakIterator::following</a></div><div class="ttdeci">virtual int32_t following(int32_t offset)=0</div><div class="ttdoc">Advance the iterator to the first boundary following the specified offset. </div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a9ff274cbd0eab7d6502389a28a290145"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a9ff274cbd0eab7d6502389a28a290145">icu::BreakIterator::current</a></div><div class="ttdeci">virtual int32_t current() const =0</div><div class="ttdoc">Return character index of the current iterator position within the text. </div></div> <div class="ttc" id="classicu_1_1CharacterIterator_html"><div class="ttname"><a href="classicu_1_1CharacterIterator.html">icu::CharacterIterator</a></div><div class="ttdoc">Abstract class that defines an API for iteration on text objects. </div><div class="ttdef"><b>Definition:</b> <a href="chariter_8h_source.html#l00361">chariter.h:361</a></div></div> <div class="ttc" id="schriter_8h_html"><div class="ttname"><a href="schriter_8h.html">schriter.h</a></div><div class="ttdoc">C++ API: String Character Iterator. </div></div> <div class="ttc" id="classicu_1_1UCharCharacterIterator_html"><div class="ttname"><a href="classicu_1_1UCharCharacterIterator.html">icu::UCharCharacterIterator</a></div><div class="ttdoc">A concrete subclass of CharacterIterator that iterates over the characters (code units or code points...</div><div class="ttdef"><b>Definition:</b> <a href="uchriter_8h_source.html#l00038">uchriter.h:38</a></div></div> <div class="ttc" id="classicu_1_1BreakIterator_html"><div class="ttname"><a href="classicu_1_1BreakIterator.html">icu::BreakIterator</a></div><div class="ttdoc">The BreakIterator class implements methods for finding the location of boundaries in text...</div><div class="ttdef"><b>Definition:</b> <a href="brkiter_8h_source.html#l00108">brkiter.h:108</a></div></div> <div class="ttc" id="utext_8h_html_a3dc916f710c0d3f17fe2a220384bcc8c"><div class="ttname"><a href="utext_8h.html#a3dc916f710c0d3f17fe2a220384bcc8c">UTEXT_INITIALIZER</a></div><div class="ttdeci">#define UTEXT_INITIALIZER</div><div class="ttdoc">initializer to be used with local (stack) instances of a UText struct. </div><div class="ttdef"><b>Definition:</b> <a href="utext_8h_source.html#l01558">utext.h:1558</a></div></div> <div class="ttc" id="umachine_8h_html_a09fff5c3b5a5b015324dc3ec3cf92809"><div class="ttname"><a href="umachine_8h.html#a09fff5c3b5a5b015324dc3ec3cf92809">UChar32</a></div><div class="ttdeci">int32_t UChar32</div><div class="ttdoc">Define UChar32 as a type for single Unicode code points. </div><div class="ttdef"><b>Definition:</b> <a href="umachine_8h_source.html#l00427">umachine.h:427</a></div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_af3bf12df7434e65041447bef51264e13"><div class="ttname"><a href="classicu_1_1BreakIterator.html#af3bf12df7434e65041447bef51264e13">icu::BreakIterator::getRuleStatusVec</a></div><div class="ttdeci">virtual int32_t getRuleStatusVec(int32_t *fillInVec, int32_t capacity, UErrorCode &status)</div><div class="ttdoc">For RuleBasedBreakIterators, get the status (tag) values from the break rule(s) that determined the b...</div></div> <div class="ttc" id="udata_8h_html"><div class="ttname"><a href="udata_8h.html">udata.h</a></div><div class="ttdoc">C API: Data loading interface. </div></div> <div class="ttc" id="udata_8h_html_acffec83601fda29bd4750b24f829f56b"><div class="ttname"><a href="udata_8h.html#acffec83601fda29bd4750b24f829f56b">UDataMemory</a></div><div class="ttdeci">struct UDataMemory UDataMemory</div><div class="ttdoc">Forward declaration of the data memory type. </div><div class="ttdef"><b>Definition:</b> <a href="udata_8h_source.html#l00161">udata.h:161</a></div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a8b894129fb567fded3ed85a7e8ead942"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a8b894129fb567fded3ed85a7e8ead942">icu::BreakIterator::setText</a></div><div class="ttdeci">virtual void setText(const UnicodeString &text)=0</div><div class="ttdoc">Change the text over which this operates. </div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a88ac5ff907f98e814783267b7fe082a5"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a88ac5ff907f98e814783267b7fe082a5">icu::BreakIterator::refreshInputText</a></div><div class="ttdeci">virtual BreakIterator & refreshInputText(UText *input, UErrorCode &status)=0</div><div class="ttdoc">Set the subject text string upon which the break iterator is operating without changing any other asp...</div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a48a7f41620707d76a05d4b11c3fc64e9"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a48a7f41620707d76a05d4b11c3fc64e9">icu::BreakIterator::next</a></div><div class="ttdeci">virtual int32_t next()=0</div><div class="ttdoc">Advance the iterator to the boundary following the current boundary. </div></div> <div class="ttc" id="parseerr_8h_html"><div class="ttname"><a href="parseerr_8h.html">parseerr.h</a></div><div class="ttdoc">C API: Parse Error Information. </div></div> <div class="ttc" id="utypes_8h_html_a3343c1c8a8377277046774691c98d78c"><div class="ttname"><a href="utypes_8h.html#a3343c1c8a8377277046774691c98d78c">UErrorCode</a></div><div class="ttdeci">UErrorCode</div><div class="ttdoc">Standard ICU4C error code type, a substitute for exceptions. </div><div class="ttdef"><b>Definition:</b> <a href="utypes_8h_source.html#l00430">utypes.h:430</a></div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a3141dfce167220d07ec8b1c24332e9ba"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a3141dfce167220d07ec8b1c24332e9ba">icu::BreakIterator::last</a></div><div class="ttdeci">virtual int32_t last()=0</div><div class="ttdoc">Set the iterator position to the index immediately BEYOND the last character in the text being scanne...</div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_ac0b126946521a209ec2c6d490b7db86e"><div class="ttname"><a href="classicu_1_1BreakIterator.html#ac0b126946521a209ec2c6d490b7db86e">icu::BreakIterator::createBufferClone</a></div><div class="ttdeci">virtual BreakIterator * createBufferClone(void *stackBuffer, int32_t &BufferSize, UErrorCode &status)=0</div><div class="ttdoc">Deprecated functionality. </div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a1920d04ad1b7d0966b2ff7863df77a74"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a1920d04ad1b7d0966b2ff7863df77a74">icu::BreakIterator::getRuleStatus</a></div><div class="ttdeci">virtual int32_t getRuleStatus() const</div><div class="ttdoc">For RuleBasedBreakIterators, return the status tag from the break rule that determined the boundary a...</div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a9d2bf1376d01f41b4cc01f0bca45fe0b"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a9d2bf1376d01f41b4cc01f0bca45fe0b">icu::BreakIterator::getText</a></div><div class="ttdeci">virtual CharacterIterator & getText() const =0</div><div class="ttdoc">Return a CharacterIterator over the text being analyzed. </div></div> <div class="ttc" id="structUText_html"><div class="ttname"><a href="structUText.html">UText</a></div><div class="ttdoc">UText struct. </div><div class="ttdef"><b>Definition:</b> <a href="utext_8h_source.html#l01328">utext.h:1328</a></div></div> <div class="ttc" id="classicu_1_1RuleBasedBreakIterator_html"><div class="ttname"><a href="classicu_1_1RuleBasedBreakIterator.html">icu::RuleBasedBreakIterator</a></div><div class="ttdoc">A subclass of BreakIterator whose behavior is specified using a list of rules. </div><div class="ttdef"><b>Definition:</b> <a href="rbbi_8h_source.html#l00120">rbbi.h:120</a></div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a980f8e8fbe1d37827cacc24f9606399f"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a980f8e8fbe1d37827cacc24f9606399f">icu::BreakIterator::preceding</a></div><div class="ttdeci">virtual int32_t preceding(int32_t offset)=0</div><div class="ttdoc">Set the iterator position to the first boundary preceding the specified offset. </div></div> <div class="ttc" id="structUParseError_html"><div class="ttname"><a href="structUParseError.html">UParseError</a></div><div class="ttdoc">A UParseError struct is used to returned detailed information about parsing errors. </div><div class="ttdef"><b>Definition:</b> <a href="parseerr_8h_source.html#l00058">parseerr.h:58</a></div></div> <div class="ttc" id="utypes_8h_html"><div class="ttname"><a href="utypes_8h.html">utypes.h</a></div><div class="ttdoc">Basic definitions for ICU, for both C and C++ APIs. </div></div> <div class="ttc" id="utypes_8h_html_a559955ec3bc692657c5d8b1c6de8e334"><div class="ttname"><a href="utypes_8h.html#a559955ec3bc692657c5d8b1c6de8e334">U_COMMON_API</a></div><div class="ttdeci">#define U_COMMON_API</div><div class="ttdoc">Set to export library symbols from inside the common library, and to import them from outside...</div><div class="ttdef"><b>Definition:</b> <a href="utypes_8h_source.html#l00315">utypes.h:315</a></div></div> <div class="ttc" id="classicu_1_1UnicodeString_html"><div class="ttname"><a href="classicu_1_1UnicodeString.html">icu::UnicodeString</a></div><div class="ttdoc">UnicodeString is a string class that stores Unicode characters directly and provides similar function...</div><div class="ttdef"><b>Definition:</b> <a href="unistr_8h_source.html#l00295">unistr.h:295</a></div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a5e05547b9c99a23eea7ddc3d412ee212"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a5e05547b9c99a23eea7ddc3d412ee212">icu::BreakIterator::first</a></div><div class="ttdeci">virtual int32_t first()=0</div><div class="ttdoc">Sets the current iteration position to the beginning of the text, position zero. </div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a1e2694eb976e034f1287a1eb4899cf33"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a1e2694eb976e034f1287a1eb4899cf33">icu::BreakIterator::clone</a></div><div class="ttdeci">virtual BreakIterator * clone() const =0</div><div class="ttdoc">Return a polymorphic copy of this object. </div></div> <div class="ttc" id="classicu_1_1UObject_html"><div class="ttname"><a href="classicu_1_1UObject.html">icu::UObject</a></div><div class="ttdoc">UObject is the common ICU "boilerplate" class. </div><div class="ttdef"><b>Definition:</b> <a href="uobject_8h_source.html#l00223">uobject.h:223</a></div></div> <div class="ttc" id="classicu_1_1BreakIterator_html_a0fdd481522592ec64a5ecd291129e28c"><div class="ttname"><a href="classicu_1_1BreakIterator.html#a0fdd481522592ec64a5ecd291129e28c">icu::BreakIterator::previous</a></div><div class="ttdeci">virtual int32_t previous()=0</div><div class="ttdoc">Set the iterator position to the boundary preceding the current boundary. </div></div> <div class="ttc" id="umachine_8h_html_a349ef00011f20ccd1d3b424445681aa5"><div class="ttname"><a href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5">UBool</a></div><div class="ttdeci">int8_t UBool</div><div class="ttdoc">The ICU boolean type, a signed-byte integer. </div><div class="ttdef"><b>Definition:</b> <a href="umachine_8h_source.html#l00247">umachine.h:247</a></div></div> </div><!-- fragment --></div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.14 </small></address> </body> </html>