std::collate

Defined in header <locale> template< class CharT > class collate; Class std::collate encapsulates locale-specific collation (comparison) and hashing of strings. This facet is used by std::basic_regex and can be applied, by means of std::locale::operator(), directly to all standard algorithms that expect a string comparison predicate. Inheritance diagram. Two standalone (locale-independent) specializations are provided by the standard library: Defined in header

std::codecvt_utf8

Defined in header <codecvt> template< class Elem, unsigned long Maxcode = 0x10ffff, std::codecvt_mode Mode = (std::codecvt_mode)0 > class codecvt_utf8 : public std::codecvt<Elem, char, std::mbstate_t>; std::codecvt_utf8 is a std::codecvt facet which encapsulates conversion between a UTF-8 encoded byte string and UCS2 or UCS4 character string (depending on the type of Elem). This codecvt facet can be used to read and write UTF-8 files, both text and

std::codecvt_utf16

Defined in header <codecvt> template< class Elem, unsigned long Maxcode = 0x10ffff, std::codecvt_mode Mode = (std::codecvt_mode)0 > class codecvt_utf16 : public std::codecvt<Elem, char, std::mbstate_t>;; std::codecvt_utf16 is a std::codecvt facet which encapsulates conversion between a UTF-16 encoded byte string and UCS2 or UCS4 character string (depending on the type of Elem). This codecvt facet can be used to read and write UTF-16 files in

std::codecvt_mode

Defined in header <locale> enum codecvt_mode { consume_header = 4, generate_header = 2, little_endian = 1 }; The facets std::codecvt_utf8, std::codecvt_utf16, and std::codecvt_utf8_utf16 accept an optional value of type std::codecvt_mode as a template argument, which specifies optional features of the unicode string conversion. Constants Defined in header <locale> Value Meaning little_endian assume the input is in little-endian byte order (app

std::codecvt::out

Defined in header <locale> public: result out( StateT& state, const InternT* from, const InternT* from_end, const InternT*& from_next, ExternT* to, ExternT* to_end, ExternT*& to_next ) const; (1) protected: virtual result do_out( StateT& state, const InternT* from, const InternT* from_end, const InternT*& from_next,

std::codecvt_byname

Defined in header <locale> template< class InternT, class ExternT, class State > class codecvt_byname : public std::codecvt<InternT, ExternT, State>; std::codecvt_byname is a std::codecvt facet which encapsulates multibyte/wide character conversion rules of a locale specified at its construction. Four specializations are provided by the standard library. Defined in header <locale> std::codecvt_byname<char, char, std::mbstate_t> identity convers

std::codecvt::unshift

Defined in header <locale> public: result unshift( StateT& state, ExternT* to, ExternT* to_end, ExternT*& to_next) const; (1) protected: virtual result do_unshift( StateT& state, ExternT* to, ExternT* to_end, ExternT*& to_next) const; (2) 1) public member function, calls the member function do_unshift of the most derived cla

std::codecvt_base

Defined in header <locale> class codecvt_base; The class std::codecvt_base provides the conversion status constants which are inherited and used by the std::codecvt facets. Member types Member type Definition enum result { ok, partial, error, noconv }; Unscoped enumeration type Value Explanation ok conversion was completed with no error partial not all source characters were converted error encountered an invalid character noconv no conversio

std::codecvt::max_length

Defined in header <locale> public: int max_length() const; (1) protected: virtual int do_max_length() const; (2) 1) Public member function, calls the member function do_max_length of the most derived class. 2) Returns the maximum value that do_length(state, from, from_end, 1) can return for any valid range [from, from_end) and any valid state. Return value The maximum number of ExternT characters that could be consumed if converted by in() to produce one InternT

std::codecvt::codecvt

Defined in header <locale> explicit codecvt( std::size_t refs = 0 ); Creates a std::codecvt facet and forwards the starting reference count refs to the base class constructor, locale::facet::facet(). Parameters refs - starting reference count