Sophie

Sophie

distrib > Fedora > 18 > x86_64 > by-pkgid > ae3ac0f3c84b68877416000d08e53ca8 > files > 21

libicu-doc-49.1.1-12.fc18.noarch.rpm

<!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.3.1"/>
<title>ICU 49.1.1: alphaindex.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">ICU 49.1.1
   &#160;<span id="projectnumber">49.1.1</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_73bc6a9bb617ea1bc89a10aa59ce84e4.html">i18n</a></li><li class="navelem"><a class="el" href="dir_0119ce638985e8a1561a00fdb5f76ff6.html">unicode</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">alphaindex.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="alphaindex_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>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment">*******************************************************************************</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">*</span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">*   Copyright (C) 2011-2012 International Business Machines</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">*   Corporation and others.  All Rights Reserved.</span></div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">*</span></div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">*******************************************************************************</span></div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#ifndef INDEXCHARS_H</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define INDEXCHARS_H</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="utypes_8h.html" title="Basic definitions for ICU, for both C and C++ APIs.">unicode/utypes.h</a>&quot;</span></div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="uobject_8h.html" title="C++ API: Common ICU base class UObject.">unicode/uobject.h</a>&quot;</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="locid_8h.html" title="C++ API: Locale ID object.">unicode/locid.h</a>&quot;</span></div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;</div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;</div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#if !UCONFIG_NO_COLLATION &amp;&amp; !UCONFIG_NO_NORMALIZATION</span></div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<a class="code" href="umachine_8h.html#a82c853d86803ab75c89267be54fbac6a" title="This is used to begin a declaration of a library private ICU C API.">U_CDECL_BEGIN</a></div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
<div class="line"><a name="l00033"></a><span class="lineno"><a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8">   33</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8" title="Constants for Alphabetic Index Label Types.">UAlphabeticIndexLabelType</a> {</div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8a6ee9675a8a4432d02dc01e14ffa87f40">   39</a></span>&#160;    <a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8a6ee9675a8a4432d02dc01e14ffa87f40" title="Normal Label, typically the starting letter of the names in the bucket with this label.">U_ALPHAINDEX_NORMAL</a>    = 0,</div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8a2791d4f2a9a1290fb284188a2cc739f6">   46</a></span>&#160;    <a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8a2791d4f2a9a1290fb284188a2cc739f6" title="Undeflow Label.">U_ALPHAINDEX_UNDERFLOW</a> = 1,</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8ae6f5d073e12f88885456163e0ccc83f9">   56</a></span>&#160;    <a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8ae6f5d073e12f88885456163e0ccc83f9" title="Inflow Label.">U_ALPHAINDEX_INFLOW</a>    = 2,</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8a02c6fddd6b884489283aa056871a3f24">   63</a></span>&#160;    <a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8a02c6fddd6b884489283aa056871a3f24" title="Overflow Label.">U_ALPHAINDEX_OVERFLOW</a>  = 3</div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;} <a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8" title="Constants for Alphabetic Index Label Types.">UAlphabeticIndexLabelType</a>;</div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;</div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="keyword">struct </span>UHashtable;</div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<a class="code" href="umachine_8h.html#a1a820e5c6cbe8ac1742b654e6bf9ed7d" title="This is used to end a declaration of a library private ICU C API.">U_CDECL_END</a></div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;</div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<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="l00071"></a><span class="lineno">   71</span>&#160;</div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;<span class="comment">// Forward Declarations</span></div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="keyword">class </span><a class="code" href="classCollator.html" title="The Collator class performs locale-sensitive string comparison.">Collator</a>;</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;<span class="keyword">class </span><a class="code" href="classRuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>;</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;<span class="keyword">class </span><a class="code" href="classStringEnumeration.html" title="Base class for &#39;pure&#39; C++ implementations of uenum api.">StringEnumeration</a>;</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="keyword">class </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="l00078"></a><span class="lineno">   78</span>&#160;<span class="keyword">class </span>UVector;</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div>
<div class="line"><a name="l00165"></a><span class="lineno"><a class="code" href="classAlphabeticIndex.html">  165</a></span>&#160;<span class="keyword">class </span><a class="code" href="utypes_8h.html#ab9d90a30137b6ec046fe59e79b09745a" title="Set to export library symbols from inside the i18n library, and to import them from outside...">U_I18N_API</a> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a>: <span class="keyword">public</span> <a class="code" href="classUObject.html" title="UObject is the common ICU &quot;boilerplate&quot; class.">UObject</a> {</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;  <span class="keyword">public</span>:</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;     <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a>(<span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a> &amp;locale, <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> &amp;status);</div>
<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div>
<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;</div>
<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;     <span class="keyword">virtual</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;addLabels(<span class="keyword">const</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> &amp;additions, <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> &amp;status);</div>
<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;</div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;     <span class="keyword">virtual</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;addLabels(<span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a> &amp;locale, <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> &amp;status);</div>
<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;     <span class="keyword">virtual</span> ~<a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a>();</div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;</div>
<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;</div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    <span class="keyword">virtual</span> <span class="keyword">const</span> <a class="code" href="classRuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a> &amp;getCollator() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;</div>
<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;    <span class="keyword">virtual</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> &amp;getInflowLabel() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;</div>
<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;setInflowLabel(<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> &amp;inflowLabel, <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> &amp;status);</div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;</div>
<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;</div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;    <span class="keyword">virtual</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> &amp;getOverflowLabel() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;</div>
<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;</div>
<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;setOverflowLabel(<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> &amp;overflowLabel, <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> &amp;status);</div>
<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;</div>
<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;    <span class="keyword">virtual</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> &amp;getUnderflowLabel() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;</div>
<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;setUnderflowLabel(<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> &amp;underflowLabel, <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> &amp;status);</div>
<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;</div>
<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;</div>
<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    <span class="keyword">virtual</span> int32_t getMaxLabelCount() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;</div>
<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;setMaxLabelCount(int32_t maxLabelCount, <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> &amp;status);</div>
<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;</div>
<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;</div>
<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;    <span class="keyword">virtual</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> &amp;getOverflowComparisonString(<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> &amp;lowerLimit,</div>
<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;                                                             <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> &amp;status);</div>
<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;</div>
<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;</div>
<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;addRecord(<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> &amp;name, <span class="keyword">const</span> <span class="keywordtype">void</span> *data, <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> &amp;status);</div>
<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;</div>
<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;clearRecords(<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> &amp;status);</div>
<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;</div>
<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;</div>
<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;    <span class="keyword">virtual</span> int32_t  getBucketCount(<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> &amp;status);</div>
<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;</div>
<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;</div>
<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;    <span class="keyword">virtual</span> int32_t  getRecordCount(<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> &amp;status);</div>
<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;</div>
<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;</div>
<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;</div>
<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;    <span class="keyword">virtual</span> int32_t  getBucketIndex(<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> &amp;itemName, <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> &amp;status);</div>
<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;</div>
<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;</div>
<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;    <span class="keyword">virtual</span> int32_t  getBucketIndex() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;</div>
<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;</div>
<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> nextBucket(<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> &amp;status);</div>
<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;</div>
<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;    <span class="keyword">virtual</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> &amp;getBucketLabel() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;</div>
<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8" title="Constants for Alphabetic Index Label Types.">UAlphabeticIndexLabelType</a> getBucketLabelType() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;</div>
<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;    <span class="keyword">virtual</span> int32_t getBucketRecordCount() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;</div>
<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;</div>
<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;resetBucketIterator(<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> &amp;status);</div>
<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;</div>
<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> nextRecord(<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> &amp;status);</div>
<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;</div>
<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;    <span class="keyword">virtual</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> &amp;getRecordName() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;</div>
<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;</div>
<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;    <span class="keyword">virtual</span> <span class="keyword">const</span> <span class="keywordtype">void</span> *getRecordData() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;</div>
<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;</div>
<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;resetRecordIterator();</div>
<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;</div>
<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;    <span class="comment">// No ICU &quot;poor man&#39;s RTTI&quot; for this class nor its subclasses.</span></div>
<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="uobject_8h.html#a22af10545208a455a6e884008df48e9f" title="UClassID is used to identify classes without using the compiler&#39;s RTTI.">UClassID</a> <a class="code" href="classUObject.html#a9b1acc95efd89cb86ec31f2dc947a262" title="ICU4C &quot;poor man&#39;s RTTI&quot;, returns a UClassID for the actual ICU class.">getDynamicClassID</a>() <span class="keyword">const</span>;</div>
<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;</div>
<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;     <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a>(<span class="keyword">const</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;other);</div>
<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;</div>
<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;     <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp;operator =(<span class="keyword">const</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> &amp; <span class="comment">/*other*/</span>) { <span class="keywordflow">return</span> *<span class="keyword">this</span>;};</div>
<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;</div>
<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;     <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="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a>&amp; other) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;</div>
<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;     <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#abf0ccab9536bab551afc07de65eb5d95" title="Global operator != for StringPiece.">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a>&amp; other) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;</div>
<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;     <span class="comment">// Common initialization, for use from all constructors.</span></div>
<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;     <span class="keywordtype">void</span> init(<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> &amp;status);</div>
<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;</div>
<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;     <span class="comment">// Initialize &amp; destruct static constants used by this class.</span></div>
<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;     <span class="keyword">static</span> <span class="keywordtype">void</span> staticInit(<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> &amp;status);</div>
<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;</div>
<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;     <span class="comment">// Pinyin stuff.  If the input name is Chinese, add the Pinyin prefix to the dest string.</span></div>
<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;     <span class="keywordtype">void</span> hackName(<a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> &amp;dest, <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> &amp;name, <span class="keyword">const</span> <a class="code" href="classCollator.html" title="The Collator class performs locale-sensitive string comparison.">Collator</a> *coll);</div>
<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;     <span class="keywordtype">void</span> initPinyinBounds(<span class="keyword">const</span> <a class="code" href="classCollator.html" title="The Collator class performs locale-sensitive string comparison.">Collator</a> *coll, <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> &amp;status);</div>
<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;</div>
<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;   <span class="keyword">public</span>:</div>
<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;<span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div>
<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;     <span class="keyword">static</span> <span class="keywordtype">void</span> staticCleanup();</div>
<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;<span class="preprocessor">#endif  </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="preprocessor"></span>   <span class="keyword">private</span>:</div>
<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;</div>
<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;     <span class="comment">// Add index characters from the specified locale to the dest set.</span></div>
<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;     <span class="comment">// Does not remove any previous contents from dest.</span></div>
<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;     <span class="keyword">static</span> <span class="keywordtype">void</span> getIndexExemplars(<a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> &amp;dest, <span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a> &amp;locale, <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> &amp;status);</div>
<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;</div>
<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;     UVector *firstStringsInScript(<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> &amp;status);</div>
<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;</div>
<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;     <span class="keyword">static</span> <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> separated(<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> &amp;item);</div>
<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;</div>
<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;     <span class="keyword">static</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *getScriptSet(<a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> &amp;dest, <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> &amp;codePoint, <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> &amp;status);</div>
<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;</div>
<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;     <span class="keywordtype">void</span> buildIndex(<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> &amp;status);</div>
<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;     <span class="keywordtype">void</span> buildBucketList(<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> &amp;status);</div>
<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;     <span class="keywordtype">void</span> bucketRecords(<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> &amp;status);</div>
<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;</div>
<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;</div>
<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;  <span class="keyword">public</span>:</div>
<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;</div>
<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;    <span class="comment">//  The following internal items are declared public only to allow access from</span></div>
<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;    <span class="comment">//  implementation code written in plain C.  They are not intended for</span></div>
<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;    <span class="comment">//  public use.</span></div>
<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;</div>
<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;<span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div>
<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00587"></a><span class="lineno"><a class="code" href="structAlphabeticIndex_1_1Record.html">  587</a></span>&#160;     <span class="keyword">struct </span><a class="code" href="structAlphabeticIndex_1_1Record.html" title="A record, or item, in the index.">Record</a>: <span class="keyword">public</span> <a class="code" href="classUMemory.html" title="UMemory is the common ICU base class.">UMemory</a> {</div>
<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;         <a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a>     *alphaIndex_;</div>
<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;         <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>  name_;</div>
<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;         <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>        sortingName_;  <span class="comment">// Usually the same as name_; different for Pinyin.</span></div>
<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;         <span class="keyword">const</span> <span class="keywordtype">void</span>           *data_;</div>
<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;         int32_t              serialNumber_;  <span class="comment">// Defines sorting order for names that compare equal.</span></div>
<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;         <a class="code" href="structAlphabeticIndex_1_1Record.html" title="A record, or item, in the index.">Record</a>(<a class="code" href="classAlphabeticIndex.html" title="class AlphabeticIndex supports the creation of a UI index appropriate for a given language...">AlphabeticIndex</a> *alphaIndex, <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> &amp;name, <span class="keyword">const</span> <span class="keywordtype">void</span> *data);</div>
<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;         ~<a class="code" href="structAlphabeticIndex_1_1Record.html" title="A record, or item, in the index.">Record</a>();</div>
<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;     };</div>
<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;<span class="preprocessor">#endif  </span><span class="comment">/* U_HIDE_INTERNAL_API */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00603"></a><span class="lineno"><a class="code" href="classAlphabeticIndex.html#a57710f17956e43f73d9beb7943c1fdbc">  603</a></span>&#160;     UVector  *<a class="code" href="classAlphabeticIndex.html#a57710f17956e43f73d9beb7943c1fdbc" title="Holds all user records before they are distributed into buckets.">inputRecords_</a>;</div>
<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;</div>
<div class="line"><a name="l00610"></a><span class="lineno"><a class="code" href="structAlphabeticIndex_1_1Bucket.html">  610</a></span>&#160;     <span class="keyword">struct </span><a class="code" href="structAlphabeticIndex_1_1Bucket.html" title="A Bucket holds an index label and references to everything belonging to that label.">Bucket</a>: <span class="keyword">public</span> <a class="code" href="classUMemory.html" title="UMemory is the common ICU base class.">UMemory</a> {</div>
<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;         <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>     label_;</div>
<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;         <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>     lowerBoundary_;</div>
<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;         <a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8" title="Constants for Alphabetic Index Label Types.">UAlphabeticIndexLabelType</a> labelType_;</div>
<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;         UVector           *records_; <span class="comment">// Records are owned by inputRecords_ vector.</span></div>
<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;</div>
<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;         <a class="code" href="structAlphabeticIndex_1_1Bucket.html" title="A Bucket holds an index label and references to everything belonging to that label.">Bucket</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> &amp;label,   <span class="comment">// Parameter strings are copied.</span></div>
<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;                <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> &amp;lowerBoundary,</div>
<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;                <a class="code" href="alphaindex_8h.html#a969464092cba264934f2c66c7c621dc8" title="Constants for Alphabetic Index Label Types.">UAlphabeticIndexLabelType</a> type, <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> &amp;status);</div>
<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;         ~<a class="code" href="structAlphabeticIndex_1_1Bucket.html" title="A Bucket holds an index label and references to everything belonging to that label.">Bucket</a>();</div>
<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;     };</div>
<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;</div>
<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;  <span class="keyword">public</span>:</div>
<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;</div>
<div class="line"><a name="l00628"></a><span class="lineno"><a class="code" href="classAlphabeticIndex.html#ad20af51c0447c195a9a341c2bd990712">  628</a></span>&#160;    <span class="keyword">enum</span> <a class="code" href="classAlphabeticIndex.html#ad20af51c0447c195a9a341c2bd990712" title="Language Types.">ELangType</a> {</div>
<div class="line"><a name="l00630"></a><span class="lineno"><a class="code" href="classAlphabeticIndex.html#ad20af51c0447c195a9a341c2bd990712ae19ea3620d3a91e07e20441dda79e01b">  630</a></span>&#160;        <a class="code" href="classAlphabeticIndex.html#ad20af51c0447c195a9a341c2bd990712ae19ea3620d3a91e07e20441dda79e01b">kNormal</a>,</div>
<div class="line"><a name="l00632"></a><span class="lineno"><a class="code" href="classAlphabeticIndex.html#ad20af51c0447c195a9a341c2bd990712aa3ced2f02625e001be2d391c7b38f8ff">  632</a></span>&#160;        <a class="code" href="classAlphabeticIndex.html#ad20af51c0447c195a9a341c2bd990712aa3ced2f02625e001be2d391c7b38f8ff">kSimplified</a>,</div>
<div class="line"><a name="l00634"></a><span class="lineno"><a class="code" href="classAlphabeticIndex.html#ad20af51c0447c195a9a341c2bd990712a3ead1bb95256b711ac30417c2d6d693d">  634</a></span>&#160;        kTraditional</div>
<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;    };</div>
<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;</div>
<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;    <span class="keyword">static</span> ELangType  langTypeFromLocale(<span class="keyword">const</span> <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a> &amp;loc);</div>
<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;</div>
<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;</div>
<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;   <span class="keyword">private</span>:</div>
<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;</div>
<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;     <span class="comment">// Holds the contents of this index, buckets of user items.</span></div>
<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;     <span class="comment">// UVector elements are of type (Bucket *)</span></div>
<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;     UVector *bucketList_;</div>
<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;</div>
<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;     int32_t  labelsIterIndex_;      <span class="comment">// Index of next item to return.</span></div>
<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;     int32_t  itemsIterIndex_;</div>
<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;     Bucket   *currentBucket_;       <span class="comment">// While an iteration of the index in underway,</span></div>
<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;                                     <span class="comment">//   point to the bucket for the current label.</span></div>
<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;                                     <span class="comment">// NULL when no iteration underway.</span></div>
<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;</div>
<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;     <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a>    indexBuildRequired_;   <span class="comment">//  Caller has made changes to the index that</span></div>
<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;                                     <span class="comment">//  require rebuilding &amp; bucketing before the</span></div>
<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;                                     <span class="comment">//  contents can be iterated.</span></div>
<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;</div>
<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;     int32_t    maxLabelCount_;      <span class="comment">// Limit on # of labels permitted in the index.</span></div>
<div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;</div>
<div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;     UHashtable *alreadyIn_;         <span class="comment">// Key=UnicodeString, value=UnicodeSet</span></div>
<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;</div>
<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;     <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *initialLabels_;     <span class="comment">// Initial (unprocessed) set of Labels.  Union</span></div>
<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;                                     <span class="comment">//   of those explicitly set by the user plus</span></div>
<div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;                                     <span class="comment">//   those from locales.  Raw values, before</span></div>
<div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;                                     <span class="comment">//   crunching into bucket labels.</span></div>
<div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;</div>
<div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;     UVector    *labels_;            <span class="comment">// List of Labels, after processing, sorting.</span></div>
<div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;                                     <span class="comment">//   Contents are (UnicodeString *)</span></div>
<div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;</div>
<div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;     <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *noDistinctSorting_; <span class="comment">// As the set of labels is built, strings may </span></div>
<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;                                     <span class="comment">// be discarded from the exemplars. This contains </span></div>
<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;                                     <span class="comment">// some of the discards, and is</span></div>
<div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;                                     <span class="comment">// intended for debugging.</span></div>
<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;</div>
<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;     <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *notAlphabetic_;     <span class="comment">// As the set of labels is built, strings may </span></div>
<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;                                     <span class="comment">// be discarded from the exemplars. This contains </span></div>
<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;                                     <span class="comment">// some of the discards, and is</span></div>
<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;                                     <span class="comment">// intended for debugging.</span></div>
<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;</div>
<div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;</div>
<div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;     UVector    *firstScriptCharacters_;  <span class="comment">// The first character from each script,</span></div>
<div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;                                          <span class="comment">//   in collation order.</span></div>
<div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;</div>
<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;     <a class="code" href="classLocale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>    locale_;</div>
<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;     <a class="code" href="classCollator.html" title="The Collator class performs locale-sensitive string comparison.">Collator</a>  *collator_;</div>
<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;     <a class="code" href="classCollator.html" title="The Collator class performs locale-sensitive string comparison.">Collator</a>  *collatorPrimaryOnly_;</div>
<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;</div>
<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;     <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>  inflowLabel_;</div>
<div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;     <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>  overflowLabel_;</div>
<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;     <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>  underflowLabel_;</div>
<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;     <a class="code" href="classUnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>  overflowComparisonString_;</div>
<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;</div>
<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;     ELangType      langType_;        <span class="comment">// The language type, simplified Chinese, Traditional Chinese,</span></div>
<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;                                      <span class="comment">//  or not Chinese (Normal).  Part of the Pinyin support</span></div>
<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;</div>
<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;     <span class="keyword">typedef</span> <span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be char16_t, if available, or wchar_t if that is 16 bits wide; always assumed to be u...">UChar</a> PinyinLookup[24][3];</div>
<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;     <span class="keyword">static</span> PinyinLookup   HACK_PINYIN_LOOKUP_SHORT;</div>
<div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;     <span class="keyword">static</span> PinyinLookup   HACK_PINYIN_LOOKUP_LONG;</div>
<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;     </div>
<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;     <span class="comment">// These will be lazily set to the short or long tables based on which</span></div>
<div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;     <span class="comment">//   Chinese collation has been configured into the ICU library.</span></div>
<div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;     <span class="keyword">static</span> PinyinLookup   *HACK_PINYIN_LOOKUP;</div>
<div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;     <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be char16_t, if available, or wchar_t if that is 16 bits wide; always assumed to be u...">UChar</a>    *PINYIN_LOWER_BOUNDS;</div>
<div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;</div>
<div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;</div>
<div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;</div>
<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;     int32_t    recordCounter_;         <span class="comment">// Counts Records created.  For minting record serial numbers.</span></div>
<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;</div>
<div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;<span class="comment">// Constants.  Lazily initialized the first time an AlphabeticIndex object is created.</span></div>
<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;</div>
<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;     <span class="keyword">static</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *ALPHABETIC;</div>
<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;     <span class="keyword">static</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *CORE_LATIN;</div>
<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;     <span class="keyword">static</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *ETHIOPIC;</div>
<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;     <span class="keyword">static</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *HANGUL;</div>
<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;     <span class="keyword">static</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *IGNORE_SCRIPTS;</div>
<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;     <span class="keyword">static</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *TO_TRY;</div>
<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;     <span class="keyword">static</span> <a class="code" href="classUnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *UNIHAN;</div>
<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;     <span class="keyword">static</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> *EMPTY_STRING;</div>
<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;</div>
<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;};</div>
<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;</div>
<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;<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="l00725"></a><span class="lineno">  725</span>&#160;</div>
<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* UCONFIG_NO_COLLATION / UCONFIG_NO_NORMALIZATION */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.3.1
</small></address>
</body>
</html>