booster::locale::comparator< CharType, default_level > Struct Template Reference
Collation

This class can be used in STL algorithms and containers for comparison of strings with a level other than primary. More...

`#include <booster/booster/locale/collator.h>`

## Public Member Functions

| comparator (std::locale const &l=std::locale(), collator_base::level_type level=default_level)
bool | operator() (std::basic_string< CharType > const &left, std::basic_string< CharType > const &right) const

## Detailed Description

### template<typename CharType, collator_base::level_type default_level = collator_base::identical>
struct booster::locale::comparator< CharType, default_level >

This class can be used in STL algorithms and containers for comparison of strings with a level other than primary.

For example:

std::map<std::string,std::string,comparator<char,collator_base::secondary> > data;

Would create a map the keys of which are sorted using secondary collation level

## Constructor & Destructor Documentation

template<typename CharType , collator_base::level_type default_level = collator_base::identical>

booster::locale::comparator< CharType, default_level >::comparator | ( | std::locale const & | l = `std::locale()`,
|  | collator_base::level_type | level = `default_level`
| ) |  |

inline

Create a comparator class for locale l and with collation leval level

Note
  throws std::bad_cast if l does not have collator facet installed

## Member Function Documentation

template<typename CharType , collator_base::level_type default_level = collator_base::identical>

bool booster::locale::comparator< CharType, default_level >::operator() | ( | std::basic_string< CharType > const & | left,
|  | std::basic_string< CharType > const & | right
| ) |  | const

inline

Compare two strings – equivalent to return left < right according to collation rules

The documentation for this struct was generated from the following file:

- booster/locale/collator.h