Init
This commit is contained in:
63
cppdraft/locale/operators.md
Normal file
63
cppdraft/locale/operators.md
Normal file
@@ -0,0 +1,63 @@
|
||||
[locale.operators]
|
||||
|
||||
# 28 Text processing library [[text]](./#text)
|
||||
|
||||
## 28.3 Localization library [[localization]](localization#locale.operators)
|
||||
|
||||
### 28.3.3 Locales [[locales]](locales#locale.operators)
|
||||
|
||||
#### 28.3.3.1 Class locale [[locale]](locale#operators)
|
||||
|
||||
#### 28.3.3.1.5 Operators [locale.operators]
|
||||
|
||||
[ð](#lib:locale,operator==)
|
||||
|
||||
`bool operator==(const locale& other) const;
|
||||
`
|
||||
|
||||
[1](#1)
|
||||
|
||||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/text.tex#L1070)
|
||||
|
||||
*Returns*: true if
|
||||
both arguments are the same locale, or
|
||||
one is a copy of the other, or
|
||||
each has a name and the names are identical;false otherwise[.](#1.sentence-1)
|
||||
|
||||
[ð](#lib:locale,operator())
|
||||
|
||||
`template<class charT, class traits, class Allocator>
|
||||
bool operator()(const basic_string<charT, traits, Allocator>& s1,
|
||||
const basic_string<charT, traits, Allocator>& s2) const;
|
||||
`
|
||||
|
||||
[2](#2)
|
||||
|
||||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/text.tex#L1087)
|
||||
|
||||
*Effects*: Compares two strings according to the std::collate<charT> facet[.](#2.sentence-1)
|
||||
|
||||
[3](#3)
|
||||
|
||||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/text.tex#L1091)
|
||||
|
||||
*Returns*: use_facet<std::collate<charT>>(*this).compare(s1.data(), s1.data() + s1.size(),
|
||||
s2.data(), s2.data() + s2.size()) < 0
|
||||
|
||||
[4](#4)
|
||||
|
||||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/text.tex#L1098)
|
||||
|
||||
*Remarks*: This member operator template (and therefore locale itself)
|
||||
meets the requirements for
|
||||
a comparator predicate template argument ([[algorithms]](algorithms "26 Algorithms library")) applied to strings[.](#4.sentence-1)
|
||||
|
||||
[5](#5)
|
||||
|
||||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/text.tex#L1104)
|
||||
|
||||
[*Example [1](#example-1)*:
|
||||
|
||||
A vector of strings v can be collated according to collation rules in locale loc simply by ([[alg.sort]](alg.sort "26.8.2 Sorting"), [[vector]](vector "23.3.13 Class template vector")):
|
||||
|
||||
std::sort(v.begin(), v.end(), loc); â *end example*]
|
||||
Reference in New Issue
Block a user