home | help
std::collate_byname(3)	       C++ Standard Libary	  std::collate_byname(3)

NAME
     std::collate_byname - std::collate_byname

Synopsis
	Defined in header <locale>
	template< class CharT >
	class collate_byname : public std::collate<CharT>;

	std::collate_byname  is  a std::collate facet which encapsulates locale-
     specific
	collation (comparison) and hashing of strings. Just  like  std::collate,
     it can be
	imbued	in  std::regex and applied, by means of std::locale::operator(),
     directly to
	all standard algorithms that expect a string comparison predicate.

Specializations
	The standard library is guaranteed to provide the following  specializa-
     tions:

	Defined in header <locale>
	std::collate_byname<char>      locale-specific	collation  of  multibyte
     strings
	std::collate_byname<wchar_t> locale-specific collation of wide strings

Member functions
	constructor   constructs a new collate_byname facet
		      (public member function)
	destructor    destroys a collate_byname facet
		      (protected member function)

     std::collate_byname::collate_byname

	explicit collate_byname( const char* name, std::size_t refs = 0 );
	explicit collate_byname( const std::string&  name,  std::size_t  refs  =
     (since C++11)
	0 );

	Constructs a new std::collate_byname facet for a locale with name.

	refs  is  used for resource management: if refs == 0, the implementation
     destroys the
	facet, when the last std::locale object holding it is destroyed.  Other-
     wise, the
	object is not destroyed.

Parameters
	name - the name of the locale
	refs - the number of references that link to the facet

     std::collate_byname::~collate_byname

	protected:
	~collate_byname();

	Destroys the facet.

     Inherited from std::collate

Member types
	Member type Definition
	char_type   CharT
	string_type std::basic_string<CharT>

Member functions
	compare   invokes do_compare
		  (public member function of std::collate<CharT>)
	transform invokes do_transform
		  (public member function of std::collate<CharT>)
	hash	  invokes do_hash
		  (public member function of std::collate<CharT>)

Protected member functions
	do_compare   compares two strings using this facet's collation rules
	[virtual]    (virtual protected member function of std::collate<CharT>)
	do_transform  transforms  a  string so that collation can be replaced by
     comparison
	[virtual]    (virtual protected member function of std::collate<CharT>)
	do_hash      generates an integer hash value using this  facet's  colla-
     tion rules
	[virtual]    (virtual protected member function of std::collate<CharT>)

Notes
	Collation  order  is the dictionary order: the position of the letter in
     the national
	alphabet (its equivalence class) has higher priority than  its	case  or
     variant.
	Within	an  equivalence class, lowercase characters collate before their
     uppercase
	equivalents and locale-specific order may apply to the	characters  with
     diacritics.
	In some locales, groups of characters compare as single collation units.
     For
	example,  "ch"	in Czech follows "h" and precedes "i", and "dzs" in Hun-
     garian follows
	"dz" and precedes "g".

Example
	 This section is incomplete
	 Reason: no example

See also
	collate    defines lexicographical comparison and hashing of strings
		   (class template)
	strcoll    compares two strings in accordance to the current locale
		   (function)
	wcscoll    compares two wide strings in accordance to the current locale
		   (function)
	operator() lexicographically compares two strings  using  this	locale's
     collate facet
		   (public member function of std::locale)

Category:
	  * Todo no example

http://cppreference.com 	   2024.06.10		  std::collate_byname(3)

home | help