Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > ad014b3fb78ee8a65d2d78c2a517808a > files > 927

icu-doc-52.1-2.4.mga4.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"/>
<title>ICU 52.1: tblcoll.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 52.1
   &#160;<span id="projectnumber">52.1</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.2 -->
  <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="namespaces.html"><span>Namespaces</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">tblcoll.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="tblcoll_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">* Copyright (C) 1996-2013, International Business Machines Corporation and</span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">* others. All Rights Reserved.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">******************************************************************************</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;</div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="preprocessor">#ifndef TBLCOLL_H</span></div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define TBLCOLL_H</span></div>
<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</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="l00063"></a><span class="lineno">   63</span>&#160;</div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160; </div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;<span class="preprocessor">#if !UCONFIG_NO_COLLATION</span></div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="coll_8h.html" title="C++ API: Collation Service.">unicode/coll.h</a>&quot;</span></div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ucol_8h.html" title="C API: Collator.">unicode/ucol.h</a>&quot;</span></div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="sortkey_8h.html" title="C++ API: Keys for comparing strings multiple times.">unicode/sortkey.h</a>&quot;</span></div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="normlzr_8h.html" title="C++ API: Unicode Normalization.">unicode/normlzr.h</a>&quot;</span></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;<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="l00073"></a><span class="lineno">   73</span>&#160;</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;<span class="keyword">class </span>StringSearch;</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;<span class="keyword">class </span>CollationElementIterator;</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;</div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="code" href="classicu_1_1RuleBasedCollator.html">  111</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="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a> : <span class="keyword">public</span> <a class="code" href="classicu_1_1Collator.html" title="The Collator class performs locale-sensitive string comparison.">Collator</a></div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;{</div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;  <span class="comment">// constructor -------------------------------------------------------------</span></div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;</div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; rules, <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="l00127"></a><span class="lineno">  127</span>&#160;</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; rules,</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;                       <a class="code" href="classicu_1_1Collator.html#a82bc20541fe4503fb78644a1968e15a2" title="Base letter represents a primary difference.">ECollationStrength</a> collationStrength,</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</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="l00141"></a><span class="lineno">  141</span>&#160;</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; rules,</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                    <a class="code" href="ucol_8h.html#acc801048729e684bcabed328be85f77a" title="Enum containing attribute values for controling collation behavior.">UColAttributeValue</a> decompositionMode,</div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</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="l00155"></a><span class="lineno">  155</span>&#160;</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; rules,</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;                    <a class="code" href="classicu_1_1Collator.html#a82bc20541fe4503fb78644a1968e15a2" title="Base letter represents a primary difference.">ECollationStrength</a> collationStrength,</div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;                    <a class="code" href="ucol_8h.html#acc801048729e684bcabed328be85f77a" title="Enum containing attribute values for controling collation behavior.">UColAttributeValue</a> decompositionMode,</div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</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="l00171"></a><span class="lineno">  171</span>&#160;</div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>&amp; other);</div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;</div>
<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div>
<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;    <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>(<span class="keyword">const</span> uint8_t *bin, int32_t length, </div>
<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;                    <span class="keyword">const</span> <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a> *base, </div>
<div class="line"><a name="l00200"></a><span class="lineno">  200</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="l00201"></a><span class="lineno">  201</span>&#160;    <span class="comment">// destructor --------------------------------------------------------------</span></div>
<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;</div>
<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    <span class="keyword">virtual</span> ~<a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>();</div>
<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;</div>
<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    <span class="comment">// public methods ----------------------------------------------------------</span></div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;    <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>&amp; other);</div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;</div>
<div class="line"><a name="l00224"></a><span class="lineno">  224</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="classicu_1_1Collator.html#a042bb938d6eff7f670fca78e8d025500" title="Returns TRUE if &quot;other&quot; is the same as &quot;this&quot;.">operator==</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1Collator.html" title="The Collator class performs locale-sensitive string comparison.">Collator</a>&amp; other) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;</div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classicu_1_1Collator.html" title="The Collator class performs locale-sensitive string comparison.">Collator</a>* <a class="code" href="classicu_1_1Collator.html#a505289afa039447c0cf500558ac249e0" title="Makes a copy of this object.">clone</a>(<span class="keywordtype">void</span>) <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="l00243"></a><span class="lineno">  243</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classicu_1_1CollationElementIterator.html" title="The CollationElementIterator class is used as an iterator to walk through each character of an intern...">CollationElementIterator</a>* createCollationElementIterator(</div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;                                           <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; source) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</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="classicu_1_1CollationElementIterator.html" title="The CollationElementIterator class is used as an iterator to walk through each character of an intern...">CollationElementIterator</a>* createCollationElementIterator(</div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;                                         <span class="keyword">const</span> <a class="code" href="classicu_1_1CharacterIterator.html" title="Abstract class that defines an API for iteration on text objects.">CharacterIterator</a>&amp; source) <span class="keyword">const</span>;</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;    <span class="comment">// Make deprecated versions of Collator::compare() visible.</span></div>
<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;    <span class="keyword">using</span> Collator::compare;</div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;</div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="ucol_8h.html#a8b4e71db8109af87f84ac1576e2b245d" title="UCOL_LESS is returned if source string is compared to be less than target string in the ucol_strcoll(...">UCollationResult</a> <a class="code" href="classicu_1_1Collator.html#a844bcb05f66aeaf17b2c52d8d7294d1d" title="The comparison function compares the character data stored in two different strings.">compare</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; source,</div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;                                      <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; target,</div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;</div>
<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="ucol_8h.html#a8b4e71db8109af87f84ac1576e2b245d" title="UCOL_LESS is returned if source string is compared to be less than target string in the ucol_strcoll(...">UCollationResult</a> <a class="code" href="classicu_1_1Collator.html#a844bcb05f66aeaf17b2c52d8d7294d1d" title="The comparison function compares the character data stored in two different strings.">compare</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; source,</div>
<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;                                      <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; target,</div>
<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;                                      int32_t length,</div>
<div class="line"><a name="l00293"></a><span class="lineno">  293</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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;</div>
<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="ucol_8h.html#a8b4e71db8109af87f84ac1576e2b245d" title="UCOL_LESS is returned if source string is compared to be less than target string in the ucol_strcoll(...">UCollationResult</a> <a class="code" href="classicu_1_1Collator.html#a844bcb05f66aeaf17b2c52d8d7294d1d" title="The comparison function compares the character data stored in two different strings.">compare</a>(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...">UChar</a>* source, int32_t sourceLength,</div>
<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;                                      <span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...">UChar</a>* target, int32_t targetLength,</div>
<div class="line"><a name="l00313"></a><span class="lineno">  313</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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;</div>
<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="ucol_8h.html#a8b4e71db8109af87f84ac1576e2b245d" title="UCOL_LESS is returned if source string is compared to be less than target string in the ucol_strcoll(...">UCollationResult</a> <a class="code" href="classicu_1_1Collator.html#a844bcb05f66aeaf17b2c52d8d7294d1d" title="The comparison function compares the character data stored in two different strings.">compare</a>(<a class="code" href="structUCharIterator.html" title="C API for code unit iteration.">UCharIterator</a> &amp;sIter,</div>
<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;                                     <a class="code" href="structUCharIterator.html" title="C API for code unit iteration.">UCharIterator</a> &amp;tIter,</div>
<div class="line"><a name="l00328"></a><span class="lineno">  328</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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;</div>
<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classicu_1_1CollationKey.html" title="Collation keys are generated by the Collator class.">CollationKey</a>&amp; <a class="code" href="classicu_1_1Collator.html#ad1e3bebe6e3ae7bd79cce7f2cf9f4ab1" title="Transforms the string into a series of characters that can be compared with CollationKey::compareTo.">getCollationKey</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; source,</div>
<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;                                          <a class="code" href="classicu_1_1CollationKey.html" title="Collation keys are generated by the Collator class.">CollationKey</a>&amp; key,</div>
<div class="line"><a name="l00344"></a><span class="lineno">  344</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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;</div>
<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classicu_1_1CollationKey.html" title="Collation keys are generated by the Collator class.">CollationKey</a>&amp; <a class="code" href="classicu_1_1Collator.html#ad1e3bebe6e3ae7bd79cce7f2cf9f4ab1" title="Transforms the string into a series of characters that can be compared with CollationKey::compareTo.">getCollationKey</a>(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...">UChar</a> *source,</div>
<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;                                          int32_t sourceLength,</div>
<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;                                          <a class="code" href="classicu_1_1CollationKey.html" title="Collation keys are generated by the Collator class.">CollationKey</a>&amp; key,</div>
<div class="line"><a name="l00362"></a><span class="lineno">  362</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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;</div>
<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;    <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1Collator.html#aadde1f7d0f8156b9d33993aad707e7fa" title="Generates the hash code for the collation object.">hashCode</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;</div>
<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classicu_1_1Locale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a> <a class="code" href="classicu_1_1Collator.html#a9ce5b59d720566877b2201747782ed19" title="Gets the locale of the Collator.">getLocale</a>(<a class="code" href="uloc_8h.html#adf053345d343f8d82ae080f7a5871f34" title="Constants for *_getLocale() Allow user to select whether she wants information on requested...">ULocDataLocaleType</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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;</div>
<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; getRules(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;</div>
<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classicu_1_1Collator.html#a26375fdb52b064d914b7f9861ec51236" title="Gets the version information for a Collator.">getVersion</a>(<a class="code" href="uversion_8h.html#a61caef96ba86d8e86a4031925ea44e94" title="The binary form of a version on ICU APIs is an array of 4 uint8_t.">UVersionInfo</a> info) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;</div>
<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;<span class="preprocessor">#ifndef U_HIDE_DEPRECATED_API </span></div>
<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;    int32_t getMaxExpansion(int32_t order) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;<span class="preprocessor">#endif  </span><span class="comment">/* U_HIDE_DEPRECATED_API */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00427"></a><span class="lineno">  427</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="classicu_1_1Collator.html#a5bc8a1b8e65aa2444aa568e9692aed0a" title="Returns a unique class ID POLYMORPHICALLY.">getDynamicClassID</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;</div>
<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;    <span class="keyword">static</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> U_EXPORT2 getStaticClassID(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;</div>
<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;<span class="preprocessor">#ifndef U_HIDE_DEPRECATED_API </span></div>
<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;    uint8_t *cloneRuleData(int32_t &amp;length, <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="l00454"></a><span class="lineno">  454</span>&#160;<span class="preprocessor">#endif  </span><span class="comment">/* U_HIDE_DEPRECATED_API */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;    int32_t cloneBinary(uint8_t *buffer, int32_t capacity, <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="l00467"></a><span class="lineno">  467</span>&#160;</div>
<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;    <span class="keywordtype">void</span> getRules(<a class="code" href="ucol_8h.html#a46363290036b8dffd6862c35e7b5872f" title="Options for retrieving the rule string.">UColRuleOption</a> delta, <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> &amp;buffer);</div>
<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;</div>
<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classicu_1_1Collator.html#a4339fbf9104428a06923a25df7ffd7f4" title="Universal attribute setter.">setAttribute</a>(<a class="code" href="ucol_8h.html#a583fbe7fc4a850e2fcc692e766d2826c" title="Attributes that collation service understands.">UColAttribute</a> attr, <a class="code" href="ucol_8h.html#acc801048729e684bcabed328be85f77a" title="Enum containing attribute values for controling collation behavior.">UColAttributeValue</a> value,</div>
<div class="line"><a name="l00489"></a><span class="lineno">  489</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="l00490"></a><span class="lineno">  490</span>&#160;</div>
<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="ucol_8h.html#acc801048729e684bcabed328be85f77a" title="Enum containing attribute values for controling collation behavior.">UColAttributeValue</a> <a class="code" href="classicu_1_1Collator.html#aa3b934fb5a3a08fd8664824159c0ac91" title="Universal attribute getter.">getAttribute</a>(<a class="code" href="ucol_8h.html#a583fbe7fc4a850e2fcc692e766d2826c" title="Attributes that collation service understands.">UColAttribute</a> attr,</div>
<div class="line"><a name="l00499"></a><span class="lineno">  499</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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;</div>
<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;    <span class="keyword">virtual</span> uint32_t <a class="code" href="classicu_1_1Collator.html#af160cfa99c42483eb423ec8ea2d6abba" title="Sets the variable top to a collation element value of a string supplied.">setVariableTop</a>(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...">UChar</a> *varTop, int32_t len, <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="l00512"></a><span class="lineno">  512</span>&#160;</div>
<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;    <span class="keyword">virtual</span> uint32_t <a class="code" href="classicu_1_1Collator.html#af160cfa99c42483eb423ec8ea2d6abba" title="Sets the variable top to a collation element value of a string supplied.">setVariableTop</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> &amp;varTop, <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="l00523"></a><span class="lineno">  523</span>&#160;</div>
<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classicu_1_1Collator.html#af160cfa99c42483eb423ec8ea2d6abba" title="Sets the variable top to a collation element value of a string supplied.">setVariableTop</a>(uint32_t varTop, <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="l00532"></a><span class="lineno">  532</span>&#160;</div>
<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;    <span class="keyword">virtual</span> uint32_t <a class="code" href="classicu_1_1Collator.html#a5aa9ae3225889380d10c53179e615790" title="Gets the variable top value of a Collator.">getVariableTop</a>(<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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;</div>
<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classicu_1_1UnicodeSet.html" title="A mutable set of Unicode characters and multicharacter strings.">UnicodeSet</a> *<a class="code" href="classicu_1_1Collator.html#ab4b6cdc4af0b4011d6867cb74f3287ce" title="Get an UnicodeSet that contains all the characters and sequences tailored in this collator...">getTailoredSet</a>(<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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;</div>
<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;    <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1Collator.html#a52ca2d2de5cd75fabd4b50fe61dd0165" title="Get the sort key as an array of bytes from an UnicodeString.">getSortKey</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; source, uint8_t *result,</div>
<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;                               int32_t resultLength) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;</div>
<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;    <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1Collator.html#a52ca2d2de5cd75fabd4b50fe61dd0165" title="Get the sort key as an array of bytes from an UnicodeString.">getSortKey</a>(<span class="keyword">const</span> <a class="code" href="umachine_8h.html#a6bb9fad572d65b305324ef288165e2ac" title="Define UChar to be UCHAR_TYPE, if that is #defined (for example, to char16_t), or wchar_t if that is ...">UChar</a> *source, int32_t sourceLength,</div>
<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;                               uint8_t *result, int32_t resultLength) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;</div>
<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;     <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1Collator.html#a18035cc173f7253b9b778eb52e32eae3" title="Retrieves the reordering codes for this collator.">getReorderCodes</a>(int32_t *dest,</div>
<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;                                     int32_t destCapacity,</div>
<div class="line"><a name="l00595"></a><span class="lineno">  595</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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;</div>
<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;     <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classicu_1_1Collator.html#ad0d7f72096a46f480e1cf6653a679240" title="Sets the ordering of scripts for this collator.">setReorderCodes</a>(<span class="keyword">const</span> int32_t* reorderCodes,</div>
<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;                                  int32_t reorderCodesLength,</div>
<div class="line"><a name="l00609"></a><span class="lineno">  609</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="l00610"></a><span class="lineno">  610</span>&#160;</div>
<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;    <span class="keyword">static</span> int32_t U_EXPORT2 <a class="code" href="classicu_1_1Collator.html#af7c8befb8e7086be8fca27d23072b4d5" title="Retrieves the reorder codes that are grouped with the given reorder code.">getEquivalentReorderCodes</a>(int32_t reorderCode,</div>
<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;                                int32_t* dest,</div>
<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;                                int32_t destCapacity,</div>
<div class="line"><a name="l00630"></a><span class="lineno">  630</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="l00631"></a><span class="lineno">  631</span>&#160;</div>
<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;</div>
<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;    <span class="comment">// private static constants -----------------------------------------------</span></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;    <span class="keyword">enum</span> {</div>
<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;        <span class="comment">/* need look up in .commit() */</span></div>
<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;        CHARINDEX = 0x70000000,</div>
<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;        <span class="comment">/* Expand index follows */</span></div>
<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;        EXPANDCHARINDEX = 0x7E000000,</div>
<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;        <span class="comment">/* contract indexes follows */</span></div>
<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;        CONTRACTCHARINDEX = 0x7F000000,</div>
<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;        <span class="comment">/* unmapped character values */</span></div>
<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;        UNMAPPED = 0xFFFFFFFF,</div>
<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;        <span class="comment">/* primary strength increment */</span></div>
<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;        PRIMARYORDERINCREMENT = 0x00010000,</div>
<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;        <span class="comment">/* secondary strength increment */</span></div>
<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;        SECONDARYORDERINCREMENT = 0x00000100,</div>
<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;        <span class="comment">/* tertiary strength increment */</span></div>
<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;        TERTIARYORDERINCREMENT = 0x00000001,</div>
<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;        <span class="comment">/* mask off anything but primary order */</span></div>
<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;        PRIMARYORDERMASK = 0xffff0000,</div>
<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;        <span class="comment">/* mask off anything but secondary order */</span></div>
<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;        SECONDARYORDERMASK = 0x0000ff00,</div>
<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;        <span class="comment">/* mask off anything but tertiary order */</span></div>
<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;        TERTIARYORDERMASK = 0x000000ff,</div>
<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;        <span class="comment">/* mask off ignorable char order */</span></div>
<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;        IGNORABLEMASK = 0x0000ffff,</div>
<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;        <span class="comment">/* use only the primary difference */</span></div>
<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;        PRIMARYDIFFERENCEONLY = 0xffff0000,</div>
<div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;        <span class="comment">/* use only the primary and secondary difference */</span></div>
<div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;        SECONDARYDIFFERENCEONLY = 0xffffff00,</div>
<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;        <span class="comment">/* primary order shift */</span></div>
<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;        PRIMARYORDERSHIFT = 16,</div>
<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;        <span class="comment">/* secondary order shift */</span></div>
<div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;        SECONDARYORDERSHIFT = 8,</div>
<div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;        <span class="comment">/* starting value for collation elements */</span></div>
<div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;        COLELEMENTSTART = 0x02020202,</div>
<div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;        <span class="comment">/* testing mask for primary low element */</span></div>
<div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;        PRIMARYLOWZEROMASK = 0x00FF0000,</div>
<div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;        <span class="comment">/* reseting value for secondaries and tertiaries */</span></div>
<div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;        RESETSECONDARYTERTIARY = 0x00000202,</div>
<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;        <span class="comment">/* reseting value for tertiaries */</span></div>
<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;        RESETTERTIARY = 0x00000002,</div>
<div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;</div>
<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;        PRIMIGNORABLE = 0x0202</div>
<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;    };</div>
<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;</div>
<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;    <span class="comment">// private data members ---------------------------------------------------</span></div>
<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;</div>
<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;    <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> dataIsOwned;</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;    <a class="code" href="umachine_8h.html#a349ef00011f20ccd1d3b424445681aa5" title="The ICU boolean type.">UBool</a> isWriteThroughAlias;</div>
<div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;</div>
<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;    <a class="code" href="ucol_8h.html#a3c4eeb412a5fd72762e6245aa75ca081" title="structure representing a collator object instance">UCollator</a> *ucollator;</div>
<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;</div>
<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;    <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a> urulestring;</div>
<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;</div>
<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;    <span class="comment">// friend classes --------------------------------------------------------</span></div>
<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;</div>
<div class="line"><a name="l00701"></a><span class="lineno"><a class="code" href="classicu_1_1RuleBasedCollator.html#a2493a8a45ec3ae69e1bec8355c948519">  701</a></span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classicu_1_1CollationElementIterator.html" title="The CollationElementIterator class is used as an iterator to walk through each character of an intern...">CollationElementIterator</a>;</div>
<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;</div>
<div class="line"><a name="l00707"></a><span class="lineno"><a class="code" href="classicu_1_1RuleBasedCollator.html#af22e5ffabbf5a2d4d729daa0b5d3cafd">  707</a></span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classicu_1_1Collator.html" title="The Collator class performs locale-sensitive string comparison.">Collator</a>;</div>
<div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;</div>
<div class="line"><a name="l00712"></a><span class="lineno"><a class="code" href="classicu_1_1RuleBasedCollator.html#a421a131b6330b132d67ac9582acb9886">  712</a></span>&#160;    <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classicu_1_1StringSearch.html" title="StringSearch is a SearchIterator that provides language-sensitive text searching based on the compari...">StringSearch</a>;</div>
<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;</div>
<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;    <span class="comment">// private constructors --------------------------------------------------</span></div>
<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;</div>
<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;    <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>();</div>
<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;</div>
<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;    <a class="code" href="classicu_1_1RuleBasedCollator.html" title="The RuleBasedCollator class provides the simple implementation of Collator, using data-driven tables...">RuleBasedCollator</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1Locale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>&amp; desiredLocale, <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="l00732"></a><span class="lineno">  732</span>&#160;</div>
<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;    <span class="keywordtype">void</span></div>
<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;    construct(<span class="keyword">const</span> <a class="code" href="classicu_1_1UnicodeString.html" title="UnicodeString is a string class that stores Unicode characters directly and provides similar function...">UnicodeString</a>&amp; rules,</div>
<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;              <a class="code" href="ucol_8h.html#acc801048729e684bcabed328be85f77a" title="Enum containing attribute values for controling collation behavior.">UColAttributeValue</a> collationStrength,</div>
<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;              <a class="code" href="ucol_8h.html#acc801048729e684bcabed328be85f77a" title="Enum containing attribute values for controling collation behavior.">UColAttributeValue</a> decompositionMode,</div>
<div class="line"><a name="l00745"></a><span class="lineno">  745</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="l00746"></a><span class="lineno">  746</span>&#160;</div>
<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;    <span class="comment">// private methods -------------------------------------------------------</span></div>
<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;</div>
<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;    <span class="keywordtype">void</span> setUCollator(<span class="keyword">const</span> <a class="code" href="classicu_1_1Locale.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="l00755"></a><span class="lineno">  755</span>&#160;</div>
<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;    <span class="keywordtype">void</span> setUCollator(<span class="keyword">const</span> <span class="keywordtype">char</span>* 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="l00762"></a><span class="lineno">  762</span>&#160;</div>
<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;    <span class="keywordtype">void</span> setUCollator(<a class="code" href="ucol_8h.html#a3c4eeb412a5fd72762e6245aa75ca081" title="structure representing a collator object instance">UCollator</a> *collator);</div>
<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;</div>
<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;<span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div>
<div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;    <span class="keyword">const</span> <a class="code" href="ucol_8h.html#a3c4eeb412a5fd72762e6245aa75ca081" title="structure representing a collator object instance">UCollator</a> * getUCollator();</div>
<div class="line"><a name="l00779"></a><span class="lineno">  779</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="l00780"></a><span class="lineno">  780</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classicu_1_1Collator.html#a4136c816774f41452426abd922f7ab71" title="Used internally by registraton to define the requested and valid locales.">setLocales</a>(<span class="keyword">const</span> <a class="code" href="classicu_1_1Locale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>&amp; requestedLocale, <span class="keyword">const</span> <a class="code" href="classicu_1_1Locale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>&amp; validLocale, <span class="keyword">const</span> <a class="code" href="classicu_1_1Locale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a>&amp; actualLocale);</div>
<div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;</div>
<div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;    <span class="comment">// if not owned and not a write through alias, copy the ucollator</span></div>
<div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;    <span class="keywordtype">void</span> checkOwned(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;</div>
<div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;    <span class="comment">// utility to init rule string used by checkOwned and construct</span></div>
<div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;    <span class="keywordtype">void</span> setRuleStringFromCollator();</div>
<div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;</div>
<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00822"></a><span class="lineno">  822</span>&#160;    <span class="keyword">virtual</span> int32_t <a class="code" href="classicu_1_1Collator.html#a088aaea714a628362839baa4cfaa516c" title="Get the short definition string for a collator.">internalGetShortDefinitionString</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *locale,</div>
<div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;                                                     <span class="keywordtype">char</span> *buffer,</div>
<div class="line"><a name="l00824"></a><span class="lineno">  824</span>&#160;                                                     int32_t capacity,</div>
<div class="line"><a name="l00825"></a><span class="lineno">  825</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) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160;};</div>
<div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;</div>
<div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;<span class="comment">// inline method implementation ---------------------------------------------</span></div>
<div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160;</div>
<div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> RuleBasedCollator::setUCollator(<span class="keyword">const</span> <a class="code" href="classicu_1_1Locale.html" title="A Locale object represents a specific geographical, political, or cultural region.">Locale</a> &amp;locale,</div>
<div class="line"><a name="l00831"></a><span class="lineno">  831</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="l00832"></a><span class="lineno">  832</span>&#160;{</div>
<div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;    setUCollator(locale.<a class="code" href="classicu_1_1Locale.html#a6b76b319a1430411bbd6d3fd2268513b" title="Returns the programmatic name of the entire locale, with the language, country and variant separated ...">getName</a>(), status);</div>
<div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;}</div>
<div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160;</div>
<div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;</div>
<div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;<span class="keyword">inline</span> <span class="keywordtype">void</span> RuleBasedCollator::setUCollator(<a class="code" href="ucol_8h.html#a3c4eeb412a5fd72762e6245aa75ca081" title="structure representing a collator object instance">UCollator</a>     *collator)</div>
<div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;{</div>
<div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;</div>
<div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;    <span class="keywordflow">if</span> (ucollator &amp;&amp; dataIsOwned) {</div>
<div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;        <a class="code" href="ucol_8h.html#a68fce4fae47371bfece8a288ef05f11f" title="Close a UCollator.">ucol_close</a>(ucollator);</div>
<div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160;    }</div>
<div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160;    ucollator   = collator;</div>
<div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160;    dataIsOwned = <a class="code" href="umachine_8h.html#aa93f0eb578d23995850d61f7d61c55c1" title="The FALSE value of a UBool.">FALSE</a>;</div>
<div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160;    isWriteThroughAlias = <a class="code" href="umachine_8h.html#aa8cecfc5c5c054d2875c03e77b7be15d" title="The TRUE value of a UBool.">TRUE</a>;</div>
<div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;    setRuleStringFromCollator();</div>
<div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;}</div>
<div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;</div>
<div class="line"><a name="l00849"></a><span class="lineno">  849</span>&#160;<span class="preprocessor">#ifndef U_HIDE_INTERNAL_API</span></div>
<div class="line"><a name="l00850"></a><span class="lineno"><a class="code" href="classicu_1_1RuleBasedCollator.html#acb7eab7a8ce047e5bdf8e8a1ad04e15e">  850</a></span>&#160;<span class="preprocessor"></span><span class="keyword">inline</span> <span class="keyword">const</span> <a class="code" href="ucol_8h.html#a3c4eeb412a5fd72762e6245aa75ca081" title="structure representing a collator object instance">UCollator</a> * RuleBasedCollator::getUCollator()</div>
<div class="line"><a name="l00851"></a><span class="lineno">  851</span>&#160;{</div>
<div class="line"><a name="l00852"></a><span class="lineno">  852</span>&#160;    <span class="keywordflow">return</span> ucollator;</div>
<div class="line"><a name="l00853"></a><span class="lineno">  853</span>&#160;}</div>
<div class="line"><a name="l00854"></a><span class="lineno">  854</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="l00855"></a><span class="lineno">  855</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00856"></a><span class="lineno">  856</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="l00857"></a><span class="lineno">  857</span>&#160;</div>
<div class="line"><a name="l00858"></a><span class="lineno">  858</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* #if !UCONFIG_NO_COLLATION */</span><span class="preprocessor"></span></div>
<div class="line"><a name="l00859"></a><span class="lineno">  859</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00860"></a><span class="lineno">  860</span>&#160;<span class="preprocessor">#endif</span></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Oct 4 2013 14:10:21 for ICU 52.1 by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.2
</small></address>
</body>
</html>