1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns=
"http://www.w3.org/1999/xhtml">
4 <meta http-equiv=
"Content-Type" content=
"text/xhtml;charset=UTF-8"/>
5 <meta http-equiv=
"X-UA-Compatible" content=
"IE=9"/>
6 <meta name=
"generator" content=
"Doxygen 1.8.6"/>
7 <title>Boost.Locale: boost::locale::collator
< CharType
> Class Template Reference
</title>
8 <link href=
"tabs.css" rel=
"stylesheet" type=
"text/css"/>
9 <script type=
"text/javascript" src=
"jquery.js"></script>
10 <script type=
"text/javascript" src=
"dynsections.js"></script>
11 <link href=
"navtree.css" rel=
"stylesheet" type=
"text/css"/>
12 <script type=
"text/javascript" src=
"resize.js"></script>
13 <script type=
"text/javascript" src=
"navtree.js"></script>
14 <script type=
"text/javascript">
15 $(document).ready(initResizable);
16 $(window).load(resizeHeight);
18 <link href=
"doxygen.css" rel=
"stylesheet" type=
"text/css" />
21 <div id=
"top"><!-- do not remove this div, it is closed by doxygen! -->
23 <table cellspacing=
"0" cellpadding=
"0">
25 <tr style=
"height: 56px;">
26 <td id=
"projectlogo"><img alt=
"Logo" src=
"boost-small.png"/></td>
27 <td style=
"padding-left: 0.5em;">
28 <div id=
"projectname">Boost.Locale
35 <!-- end header part -->
36 <!-- Generated by Doxygen 1.8.6 -->
37 <div id=
"navrow1" class=
"tabs">
39 <li><a href=
"index.html"><span>Main
 Page
</span></a></li>
40 <li><a href=
"pages.html"><span>Related
 Pages
</span></a></li>
41 <li><a href=
"modules.html"><span>Modules
</span></a></li>
42 <li><a href=
"namespaces.html"><span>Namespaces
</span></a></li>
43 <li class=
"current"><a href=
"annotated.html"><span>Classes
</span></a></li>
44 <li><a href=
"files.html"><span>Files
</span></a></li>
45 <li><a href=
"examples.html"><span>Examples
</span></a></li>
48 <div id=
"navrow2" class=
"tabs2">
50 <li><a href=
"annotated.html"><span>Class
 List
</span></a></li>
51 <li><a href=
"hierarchy.html"><span>Class
 Hierarchy
</span></a></li>
52 <li><a href=
"functions.html"><span>Class
 Members
</span></a></li>
56 <div id=
"side-nav" class=
"ui-resizable side-nav-resizable">
58 <div id=
"nav-tree-contents">
59 <div id=
"nav-sync" class=
"sync"></div>
62 <div id=
"splitbar" style=
"-moz-user-select:none;"
63 class=
"ui-resizable-handle">
66 <script type=
"text/javascript">
67 $(document).ready(function(){initNavTree('classboost_1_1locale_1_1collator.html','');});
69 <div id=
"doc-content">
72 <a href=
"#pub-types">Public Types
</a> |
73 <a href=
"#pub-methods">Public Member Functions
</a> |
74 <a href=
"#pro-methods">Protected Member Functions
</a> |
75 <a href=
"classboost_1_1locale_1_1collator-members.html">List of all members
</a> </div>
76 <div class=
"headertitle">
77 <div class=
"title">boost::locale::collator
< CharType
> Class Template Reference
<span class=
"mlabels"><span class=
"mlabel">abstract
</span></span><div class=
"ingroups"><a class=
"el" href=
"group__collation.html">Collation
</a></div></div> </div>
79 <div class=
"contents">
82 <a href=
"classboost_1_1locale_1_1collator.html#details">More...
</a></p>
84 <p><code>#include
<<a class=
"el" href=
"collator_8hpp_source.html">boost/locale/collator.hpp
</a>></code></p>
85 <div class=
"dynheader">
86 Inheritance diagram for boost::locale::collator
< CharType
>:
</div>
87 <div class=
"dyncontent">
89 <img src=
"classboost_1_1locale_1_1collator.png" usemap=
"#boost::locale::collator< CharType >_map" alt=
""/>
90 <map id=
"boost::locale::collator< CharType >_map" name=
"boost::locale::collator< CharType >_map">
91 <area href=
"classboost_1_1locale_1_1collator__base.html" title=
"a base class that includes collation level flags " alt=
"boost::locale::collator_base" shape=
"rect" coords=
"220,0,430,24"/>
94 <table class=
"memberdecls">
95 <tr class=
"heading"><td colspan=
"2"><h2 class=
"groupheader"><a name=
"pub-types"></a>
96 Public Types
</h2></td></tr>
97 <tr class=
"memitem:a2b74a0b9a613a4a4337632bf34644c6f"><td class=
"memItemLeft" align=
"right" valign=
"top">typedef CharType
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a></td></tr>
98 <tr class=
"separator:a2b74a0b9a613a4a4337632bf34644c6f"><td class=
"memSeparator" colspan=
"2"> </td></tr>
99 <tr class=
"memitem:a106a3fe9e068530013c428661758733d"><td class=
"memItemLeft" align=
"right" valign=
"top">typedef std::basic_string
<br class=
"typebreak"/>
100 < CharType
> </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a></td></tr>
101 <tr class=
"separator:a106a3fe9e068530013c428661758733d"><td class=
"memSeparator" colspan=
"2"> </td></tr>
102 <tr class=
"inherit_header pub_types_classboost_1_1locale_1_1collator__base"><td colspan=
"2" onclick=
"javascript:toggleInherit('pub_types_classboost_1_1locale_1_1collator__base')"><img src=
"closed.png" alt=
"-"/> Public Types inherited from
<a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html">boost::locale::collator_base
</a></td></tr>
103 <tr class=
"memitem:a73c12de809733273304fef7f0af28b22 inherit pub_types_classboost_1_1locale_1_1collator__base"><td class=
"memItemLeft" align=
"right" valign=
"top">enum
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> {
<br/>
104   <a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22ae57e842f398a27ee490208f5af39675b">primary
</a> =
0,
105 <a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22ad8e103443d69f03f00ac4b68a7181866">secondary
</a> =
1,
106 <a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22a3a852752e9663b7b3340c435d0cfe36a">tertiary
</a> =
2,
107 <a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22a22ca1875fd63667fbb018df16b0aedba">quaternary
</a> =
3,
109   <a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22a3c209055ff840e311581ab43013026f2">identical
</a> =
4
112 <tr class=
"separator:a73c12de809733273304fef7f0af28b22 inherit pub_types_classboost_1_1locale_1_1collator__base"><td class=
"memSeparator" colspan=
"2"> </td></tr>
113 </table><table class=
"memberdecls">
114 <tr class=
"heading"><td colspan=
"2"><h2 class=
"groupheader"><a name=
"pub-methods"></a>
115 Public Member Functions
</h2></td></tr>
116 <tr class=
"memitem:ab90dc7bb909a71d3cd9a5e8d7b2eb80e"><td class=
"memItemLeft" align=
"right" valign=
"top">int
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#ab90dc7bb909a71d3cd9a5e8d7b2eb80e">compare
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> level,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b1,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e1,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b2,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e2) const
</td></tr>
117 <tr class=
"separator:ab90dc7bb909a71d3cd9a5e8d7b2eb80e"><td class=
"memSeparator" colspan=
"2"> </td></tr>
118 <tr class=
"memitem:a8dc6443fb193616332ca50f207a9b189"><td class=
"memItemLeft" align=
"right" valign=
"top"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a8dc6443fb193616332ca50f207a9b189">transform
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> level,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e) const
</td></tr>
119 <tr class=
"separator:a8dc6443fb193616332ca50f207a9b189"><td class=
"memSeparator" colspan=
"2"> </td></tr>
120 <tr class=
"memitem:a89752e2023643f972b6cc8024340d5d4"><td class=
"memItemLeft" align=
"right" valign=
"top">long
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a89752e2023643f972b6cc8024340d5d4">hash
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> level,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e) const
</td></tr>
121 <tr class=
"separator:a89752e2023643f972b6cc8024340d5d4"><td class=
"memSeparator" colspan=
"2"> </td></tr>
122 <tr class=
"memitem:a9ccdfec693cdc5a71b5adc1f083881bf"><td class=
"memItemLeft" align=
"right" valign=
"top">int
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a9ccdfec693cdc5a71b5adc1f083881bf">compare
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> level,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> const
&l,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> const
&r) const
</td></tr>
123 <tr class=
"separator:a9ccdfec693cdc5a71b5adc1f083881bf"><td class=
"memSeparator" colspan=
"2"> </td></tr>
124 <tr class=
"memitem:a76000f6cf10bfe63dd7fd10652de3f5b"><td class=
"memItemLeft" align=
"right" valign=
"top">long
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a76000f6cf10bfe63dd7fd10652de3f5b">hash
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> level,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> const
&s) const
</td></tr>
125 <tr class=
"separator:a76000f6cf10bfe63dd7fd10652de3f5b"><td class=
"memSeparator" colspan=
"2"> </td></tr>
126 <tr class=
"memitem:aa9976b4fa0fba6c5d1a1dea9b5ef02ca"><td class=
"memItemLeft" align=
"right" valign=
"top"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#aa9976b4fa0fba6c5d1a1dea9b5ef02ca">transform
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> level,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> const
&s) const
</td></tr>
127 <tr class=
"separator:aa9976b4fa0fba6c5d1a1dea9b5ef02ca"><td class=
"memSeparator" colspan=
"2"> </td></tr>
128 </table><table class=
"memberdecls">
129 <tr class=
"heading"><td colspan=
"2"><h2 class=
"groupheader"><a name=
"pro-methods"></a>
130 Protected Member Functions
</h2></td></tr>
131 <tr class=
"memitem:a25a8b21a756756e850a7488a54610053"><td class=
"memItemLeft" align=
"right" valign=
"top"> </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a25a8b21a756756e850a7488a54610053">collator
</a> (size_t refs=
0)
</td></tr>
132 <tr class=
"separator:a25a8b21a756756e850a7488a54610053"><td class=
"memSeparator" colspan=
"2"> </td></tr>
133 <tr class=
"memitem:ada3a683bed35789e081b710a8e9a9a07"><td class=
"memItemLeft" align=
"right" valign=
"top">virtual int
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#ada3a683bed35789e081b710a8e9a9a07">do_compare
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b1,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e1,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b2,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e2) const
</td></tr>
134 <tr class=
"separator:ada3a683bed35789e081b710a8e9a9a07"><td class=
"memSeparator" colspan=
"2"> </td></tr>
135 <tr class=
"memitem:a84b5cb6ff01cf1a1330e1556a2c674d5"><td class=
"memItemLeft" align=
"right" valign=
"top">virtual
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a84b5cb6ff01cf1a1330e1556a2c674d5">do_transform
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e) const
</td></tr>
136 <tr class=
"separator:a84b5cb6ff01cf1a1330e1556a2c674d5"><td class=
"memSeparator" colspan=
"2"> </td></tr>
137 <tr class=
"memitem:aa093cd4ed0b4be4a5e38f0f04a56ac0b"><td class=
"memItemLeft" align=
"right" valign=
"top">virtual long
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#aa093cd4ed0b4be4a5e38f0f04a56ac0b">do_hash
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e) const
</td></tr>
138 <tr class=
"separator:aa093cd4ed0b4be4a5e38f0f04a56ac0b"><td class=
"memSeparator" colspan=
"2"> </td></tr>
139 <tr class=
"memitem:a5d04cf6c4ab84cf3eac20be402ac6bf9"><td class=
"memItemLeft" align=
"right" valign=
"top">virtual int
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a5d04cf6c4ab84cf3eac20be402ac6bf9">do_compare
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> level,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b1,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e1,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b2,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e2) const =
0</td></tr>
140 <tr class=
"separator:a5d04cf6c4ab84cf3eac20be402ac6bf9"><td class=
"memSeparator" colspan=
"2"> </td></tr>
141 <tr class=
"memitem:a0ee27b7bc751b7a7fda4de1b0d896d57"><td class=
"memItemLeft" align=
"right" valign=
"top">virtual
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a0ee27b7bc751b7a7fda4de1b0d896d57">do_transform
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> level,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e) const =
0</td></tr>
142 <tr class=
"separator:a0ee27b7bc751b7a7fda4de1b0d896d57"><td class=
"memSeparator" colspan=
"2"> </td></tr>
143 <tr class=
"memitem:a7748d5a6ef0d4dd149096b080938d4c4"><td class=
"memItemLeft" align=
"right" valign=
"top">virtual long
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a7748d5a6ef0d4dd149096b080938d4c4">do_hash
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> level,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *b,
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *e) const =
0</td></tr>
144 <tr class=
"separator:a7748d5a6ef0d4dd149096b080938d4c4"><td class=
"memSeparator" colspan=
"2"> </td></tr>
146 <a name=
"details" id=
"details"></a><h2 class=
"groupheader">Detailed Description
</h2>
147 <div class=
"textblock"><h3>template
<typename CharType
><br/>
148 class boost::locale::collator
< CharType
></h3>
150 <p>Collation facet.
</p>
151 <p>It reimplements standard C++ std::collate, allowing usage of std::locale for direct string comparison
</p>
152 </div><h2 class=
"groupheader">Member Typedef Documentation
</h2>
153 <a class=
"anchor" id=
"a2b74a0b9a613a4a4337632bf34644c6f"></a>
154 <div class=
"memitem">
155 <div class=
"memproto">
156 <div class=
"memtemplate">
157 template
<typename CharType
> </div>
158 <table class=
"memname">
160 <td class=
"memname">typedef CharType
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a></td>
163 </div><div class=
"memdoc">
164 <p>Type of the underlying character
</p>
168 <a class=
"anchor" id=
"a106a3fe9e068530013c428661758733d"></a>
169 <div class=
"memitem">
170 <div class=
"memproto">
171 <div class=
"memtemplate">
172 template
<typename CharType
> </div>
173 <table class=
"memname">
175 <td class=
"memname">typedef std::basic_string
<CharType
> <a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a></td>
178 </div><div class=
"memdoc">
179 <p>Type of string used with this facet
</p>
183 <h2 class=
"groupheader">Constructor
& Destructor Documentation
</h2>
184 <a class=
"anchor" id=
"a25a8b21a756756e850a7488a54610053"></a>
185 <div class=
"memitem">
186 <div class=
"memproto">
187 <div class=
"memtemplate">
188 template
<typename CharType
> </div>
189 <table class=
"mlabels">
191 <td class=
"mlabels-left">
192 <table class=
"memname">
194 <td class=
"memname"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html">collator
</a> </td>
196 <td class=
"paramtype">size_t
 </td>
197 <td class=
"paramname"><em>refs
</em> =
<code>0</code></td><td>)
</td>
202 <td class=
"mlabels-right">
203 <span class=
"mlabels"><span class=
"mlabel">inline
</span><span class=
"mlabel">protected
</span></span> </td>
206 </div><div class=
"memdoc">
207 <p>constructor of the collator object
</p>
211 <h2 class=
"groupheader">Member Function Documentation
</h2>
212 <a class=
"anchor" id=
"ab90dc7bb909a71d3cd9a5e8d7b2eb80e"></a>
213 <div class=
"memitem">
214 <div class=
"memproto">
215 <div class=
"memtemplate">
216 template
<typename CharType
> </div>
217 <table class=
"mlabels">
219 <td class=
"mlabels-left">
220 <table class=
"memname">
222 <td class=
"memname">int
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::compare
</td>
224 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> </td>
225 <td class=
"paramname"><em>level
</em>,
</td>
228 <td class=
"paramkey"></td>
230 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
231 <td class=
"paramname"><em>b1
</em>,
</td>
234 <td class=
"paramkey"></td>
236 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
237 <td class=
"paramname"><em>e1
</em>,
</td>
240 <td class=
"paramkey"></td>
242 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
243 <td class=
"paramname"><em>b2
</em>,
</td>
246 <td class=
"paramkey"></td>
248 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
249 <td class=
"paramname"><em>e2
</em> </td>
254 <td></td><td> const
</td>
258 <td class=
"mlabels-right">
259 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
262 </div><div class=
"memdoc">
263 <p>Compare two strings in rage [b1,e1), [b2,e2) according using a collation level
<em>level
</em>. Calls do_compare
</p>
264 <p>Returns -
1 if the first of the two strings sorts before the seconds, returns
1 if sorts after and
0 if they considered equal.
</p>
268 <a class=
"anchor" id=
"a9ccdfec693cdc5a71b5adc1f083881bf"></a>
269 <div class=
"memitem">
270 <div class=
"memproto">
271 <div class=
"memtemplate">
272 template
<typename CharType
> </div>
273 <table class=
"mlabels">
275 <td class=
"mlabels-left">
276 <table class=
"memname">
278 <td class=
"memname">int
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::compare
</td>
280 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> </td>
281 <td class=
"paramname"><em>level
</em>,
</td>
284 <td class=
"paramkey"></td>
286 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> const
& </td>
287 <td class=
"paramname"><em>l
</em>,
</td>
290 <td class=
"paramkey"></td>
292 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> const
& </td>
293 <td class=
"paramname"><em>r
</em> </td>
298 <td></td><td> const
</td>
302 <td class=
"mlabels-right">
303 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
306 </div><div class=
"memdoc">
307 <p>Compare two strings
<em>l
</em> and
<em>r
</em> using collation level
<em>level
</em> </p>
308 <p>Returns -
1 if the first of the two strings sorts before the seconds, returns
1 if sorts after and
0 if they considered equal.
</p>
312 <a class=
"anchor" id=
"ada3a683bed35789e081b710a8e9a9a07"></a>
313 <div class=
"memitem">
314 <div class=
"memproto">
315 <div class=
"memtemplate">
316 template
<typename CharType
> </div>
317 <table class=
"mlabels">
319 <td class=
"mlabels-left">
320 <table class=
"memname">
322 <td class=
"memname">virtual int
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::do_compare
</td>
324 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
325 <td class=
"paramname"><em>b1
</em>,
</td>
328 <td class=
"paramkey"></td>
330 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
331 <td class=
"paramname"><em>e1
</em>,
</td>
334 <td class=
"paramkey"></td>
336 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
337 <td class=
"paramname"><em>b2
</em>,
</td>
340 <td class=
"paramkey"></td>
342 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
343 <td class=
"paramname"><em>e2
</em> </td>
348 <td></td><td> const
</td>
352 <td class=
"mlabels-right">
353 <span class=
"mlabels"><span class=
"mlabel">inline
</span><span class=
"mlabel">protected
</span><span class=
"mlabel">virtual
</span></span> </td>
356 </div><div class=
"memdoc">
357 <p>This function is used to override default collation function that does not take in account collation level. Uses primary level
</p>
361 <a class=
"anchor" id=
"a5d04cf6c4ab84cf3eac20be402ac6bf9"></a>
362 <div class=
"memitem">
363 <div class=
"memproto">
364 <div class=
"memtemplate">
365 template
<typename CharType
> </div>
366 <table class=
"mlabels">
368 <td class=
"mlabels-left">
369 <table class=
"memname">
371 <td class=
"memname">virtual int
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::do_compare
</td>
373 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> </td>
374 <td class=
"paramname"><em>level
</em>,
</td>
377 <td class=
"paramkey"></td>
379 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
380 <td class=
"paramname"><em>b1
</em>,
</td>
383 <td class=
"paramkey"></td>
385 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
386 <td class=
"paramname"><em>e1
</em>,
</td>
389 <td class=
"paramkey"></td>
391 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
392 <td class=
"paramname"><em>b2
</em>,
</td>
395 <td class=
"paramkey"></td>
397 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
398 <td class=
"paramname"><em>e2
</em> </td>
403 <td></td><td> const
</td>
407 <td class=
"mlabels-right">
408 <span class=
"mlabels"><span class=
"mlabel">protected
</span><span class=
"mlabel">pure virtual
</span></span> </td>
411 </div><div class=
"memdoc">
412 <p>Actual function that performs comparison between the strings. For details see compare member function. Can be overridden.
</p>
416 <a class=
"anchor" id=
"aa093cd4ed0b4be4a5e38f0f04a56ac0b"></a>
417 <div class=
"memitem">
418 <div class=
"memproto">
419 <div class=
"memtemplate">
420 template
<typename CharType
> </div>
421 <table class=
"mlabels">
423 <td class=
"mlabels-left">
424 <table class=
"memname">
426 <td class=
"memname">virtual long
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::do_hash
</td>
428 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
429 <td class=
"paramname"><em>b
</em>,
</td>
432 <td class=
"paramkey"></td>
434 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
435 <td class=
"paramname"><em>e
</em> </td>
440 <td></td><td> const
</td>
444 <td class=
"mlabels-right">
445 <span class=
"mlabels"><span class=
"mlabel">inline
</span><span class=
"mlabel">protected
</span><span class=
"mlabel">virtual
</span></span> </td>
448 </div><div class=
"memdoc">
449 <p>This function is used to override default collation function that does not take in account collation level. Uses primary level
</p>
453 <a class=
"anchor" id=
"a7748d5a6ef0d4dd149096b080938d4c4"></a>
454 <div class=
"memitem">
455 <div class=
"memproto">
456 <div class=
"memtemplate">
457 template
<typename CharType
> </div>
458 <table class=
"mlabels">
460 <td class=
"mlabels-left">
461 <table class=
"memname">
463 <td class=
"memname">virtual long
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::do_hash
</td>
465 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> </td>
466 <td class=
"paramname"><em>level
</em>,
</td>
469 <td class=
"paramkey"></td>
471 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
472 <td class=
"paramname"><em>b
</em>,
</td>
475 <td class=
"paramkey"></td>
477 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
478 <td class=
"paramname"><em>e
</em> </td>
483 <td></td><td> const
</td>
487 <td class=
"mlabels-right">
488 <span class=
"mlabels"><span class=
"mlabel">protected
</span><span class=
"mlabel">pure virtual
</span></span> </td>
491 </div><div class=
"memdoc">
492 <p>Actual function that calculates hash. For details see hash member function. Can be overridden.
</p>
496 <a class=
"anchor" id=
"a84b5cb6ff01cf1a1330e1556a2c674d5"></a>
497 <div class=
"memitem">
498 <div class=
"memproto">
499 <div class=
"memtemplate">
500 template
<typename CharType
> </div>
501 <table class=
"mlabels">
503 <td class=
"mlabels-left">
504 <table class=
"memname">
506 <td class=
"memname">virtual
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> <a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::do_transform
</td>
508 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
509 <td class=
"paramname"><em>b
</em>,
</td>
512 <td class=
"paramkey"></td>
514 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
515 <td class=
"paramname"><em>e
</em> </td>
520 <td></td><td> const
</td>
524 <td class=
"mlabels-right">
525 <span class=
"mlabels"><span class=
"mlabel">inline
</span><span class=
"mlabel">protected
</span><span class=
"mlabel">virtual
</span></span> </td>
528 </div><div class=
"memdoc">
529 <p>This function is used to override default collation function that does not take in account collation level. Uses primary level
</p>
533 <a class=
"anchor" id=
"a0ee27b7bc751b7a7fda4de1b0d896d57"></a>
534 <div class=
"memitem">
535 <div class=
"memproto">
536 <div class=
"memtemplate">
537 template
<typename CharType
> </div>
538 <table class=
"mlabels">
540 <td class=
"mlabels-left">
541 <table class=
"memname">
543 <td class=
"memname">virtual
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> <a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::do_transform
</td>
545 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> </td>
546 <td class=
"paramname"><em>level
</em>,
</td>
549 <td class=
"paramkey"></td>
551 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
552 <td class=
"paramname"><em>b
</em>,
</td>
555 <td class=
"paramkey"></td>
557 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
558 <td class=
"paramname"><em>e
</em> </td>
563 <td></td><td> const
</td>
567 <td class=
"mlabels-right">
568 <span class=
"mlabels"><span class=
"mlabel">protected
</span><span class=
"mlabel">pure virtual
</span></span> </td>
571 </div><div class=
"memdoc">
572 <p>Actual function that performs transformation. For details see transform member function. Can be overridden.
</p>
576 <a class=
"anchor" id=
"a89752e2023643f972b6cc8024340d5d4"></a>
577 <div class=
"memitem">
578 <div class=
"memproto">
579 <div class=
"memtemplate">
580 template
<typename CharType
> </div>
581 <table class=
"mlabels">
583 <td class=
"mlabels-left">
584 <table class=
"memname">
586 <td class=
"memname">long
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::hash
</td>
588 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> </td>
589 <td class=
"paramname"><em>level
</em>,
</td>
592 <td class=
"paramkey"></td>
594 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
595 <td class=
"paramname"><em>b
</em>,
</td>
598 <td class=
"paramkey"></td>
600 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
601 <td class=
"paramname"><em>e
</em> </td>
606 <td></td><td> const
</td>
610 <td class=
"mlabels-right">
611 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
614 </div><div class=
"memdoc">
615 <p>Calculate a hash of a text in range [b,e). The value can be used for collation sensitive string comparison.
</p>
616 <p>If compare(level,b1,e1,b2,e2) ==
0 then hash(level,b1,e1) == hash(level,b2,e2)
</p>
617 <p>Calls do_hash
</p>
621 <a class=
"anchor" id=
"a76000f6cf10bfe63dd7fd10652de3f5b"></a>
622 <div class=
"memitem">
623 <div class=
"memproto">
624 <div class=
"memtemplate">
625 template
<typename CharType
> </div>
626 <table class=
"mlabels">
628 <td class=
"mlabels-left">
629 <table class=
"memname">
631 <td class=
"memname">long
<a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::hash
</td>
633 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> </td>
634 <td class=
"paramname"><em>level
</em>,
</td>
637 <td class=
"paramkey"></td>
639 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> const
& </td>
640 <td class=
"paramname"><em>s
</em> </td>
645 <td></td><td> const
</td>
649 <td class=
"mlabels-right">
650 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
653 </div><div class=
"memdoc">
654 <p>Calculate a hash that can be used for collation sensitive string comparison of a string
<em>s
</em> </p>
655 <p>If compare(level,s1,s2) ==
0 then hash(level,s1) == hash(level,s2)
</p>
659 <a class=
"anchor" id=
"a8dc6443fb193616332ca50f207a9b189"></a>
660 <div class=
"memitem">
661 <div class=
"memproto">
662 <div class=
"memtemplate">
663 template
<typename CharType
> </div>
664 <table class=
"mlabels">
666 <td class=
"mlabels-left">
667 <table class=
"memname">
669 <td class=
"memname"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> <a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::transform
</td>
671 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> </td>
672 <td class=
"paramname"><em>level
</em>,
</td>
675 <td class=
"paramkey"></td>
677 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
678 <td class=
"paramname"><em>b
</em>,
</td>
681 <td class=
"paramkey"></td>
683 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a2b74a0b9a613a4a4337632bf34644c6f">char_type
</a> const *
 </td>
684 <td class=
"paramname"><em>e
</em> </td>
689 <td></td><td> const
</td>
693 <td class=
"mlabels-right">
694 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
697 </div><div class=
"memdoc">
698 <p>Create a binary string that can be compared to other in order to get collation order. The string is created for text in range [b,e). It is useful for collation of multiple strings for text.
</p>
699 <p>The transformation follows these rules:
</p>
700 <div class=
"fragment"><div class=
"line"><a class=
"code" href=
"classboost_1_1locale_1_1collator.html#ab90dc7bb909a71d3cd9a5e8d7b2eb80e">compare
</a>(level,b1,e1,b2,e2) == sign(
<a class=
"code" href=
"classboost_1_1locale_1_1collator.html#a8dc6443fb193616332ca50f207a9b189">transform
</a>(level,b1,e1).
<a class=
"code" href=
"classboost_1_1locale_1_1collator.html#ab90dc7bb909a71d3cd9a5e8d7b2eb80e">compare
</a>(
<a class=
"code" href=
"classboost_1_1locale_1_1collator.html#a8dc6443fb193616332ca50f207a9b189">transform
</a>(level,b2,e2)) );
</div>
701 </div><!-- fragment --><p>Calls do_transform
</p>
705 <a class=
"anchor" id=
"aa9976b4fa0fba6c5d1a1dea9b5ef02ca"></a>
706 <div class=
"memitem">
707 <div class=
"memproto">
708 <div class=
"memtemplate">
709 template
<typename CharType
> </div>
710 <table class=
"mlabels">
712 <td class=
"mlabels-left">
713 <table class=
"memname">
715 <td class=
"memname"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> <a class=
"el" href=
"classboost_1_1locale_1_1collator.html">boost::locale::collator
</a>< CharType
>::transform
</td>
717 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator__base.html#a73c12de809733273304fef7f0af28b22">level_type
</a> </td>
718 <td class=
"paramname"><em>level
</em>,
</td>
721 <td class=
"paramkey"></td>
723 <td class=
"paramtype"><a class=
"el" href=
"classboost_1_1locale_1_1collator.html#a106a3fe9e068530013c428661758733d">string_type
</a> const
& </td>
724 <td class=
"paramname"><em>s
</em> </td>
729 <td></td><td> const
</td>
733 <td class=
"mlabels-right">
734 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
737 </div><div class=
"memdoc">
738 <p>Create a binary string from string
<em>s
</em>, that can be compared to other, useful for collation of multiple strings.
</p>
739 <p>The transformation follows these rules:
</p>
740 <div class=
"fragment"><div class=
"line"><a class=
"code" href=
"classboost_1_1locale_1_1collator.html#ab90dc7bb909a71d3cd9a5e8d7b2eb80e">compare
</a>(level,s1,s2) == sign(
<a class=
"code" href=
"classboost_1_1locale_1_1collator.html#a8dc6443fb193616332ca50f207a9b189">transform
</a>(level,s1).
<a class=
"code" href=
"classboost_1_1locale_1_1collator.html#ab90dc7bb909a71d3cd9a5e8d7b2eb80e">compare
</a>(
<a class=
"code" href=
"classboost_1_1locale_1_1collator.html#a8dc6443fb193616332ca50f207a9b189">transform
</a>(level,s2)) );
</div>
741 </div><!-- fragment -->
744 <hr/>The documentation for this class was generated from the following file:
<ul>
745 <li>boost/locale/
<a class=
"el" href=
"collator_8hpp_source.html">collator.hpp
</a></li>
747 </div><!-- contents -->
748 </div><!-- doc-content -->
751 © Copyright
2009-
2012 Artyom Beilis, Distributed under the
<a href=
"http://www.boost.org/LICENSE_1_0.txt">Boost Software License
</a>, Version
1.0.