std::collate_byname< _CharT >

Section: C Library Functions (3)
Updated: Wed Apr 17 2019
Page Index
 

NAME

std::collate_byname< _CharT > - class collate_byname [22.2.4.2].

 

SYNOPSIS


Inherits std::collate< _CharT >.  

Public Types



typedef _CharT char_type
Public typedefs.
typedef basic_string< _CharT > string_type
Public typedefs.  

Public Member Functions


collate_byname (const char *__s, size_t __refs=0)

collate_byname (const string &__s, size_t __refs=0)

int _M_compare (const _CharT *, const _CharT *) const throw ()

template<> int _M_compare (const char *, const char *) const throw()

template<> int _M_compare (const wchar_t *, const wchar_t *) const throw()

size_t _M_transform (_CharT *, const _CharT *, size_t) const throw ()

template<> size_t _M_transform (char *, const char *, size_t) const throw()

template<> size_t _M_transform (wchar_t *, const wchar_t *, size_t) const throw()

int compare (const _CharT *__lo1, const _CharT *__hi1, const _CharT *__lo2, const _CharT *__hi2) const
Compare two strings.
long hash (const _CharT *__lo, const _CharT *__hi) const
Return hash of a string.
string_type transform (const _CharT *__lo, const _CharT *__hi) const
Transform string to comparable form.  

Static Public Attributes


static locale::id id
Numpunct facet id.  

Protected Member Functions


virtual int do_compare (const _CharT *__lo1, const _CharT *__hi1, const _CharT *__lo2, const _CharT *__hi2) const
Compare two strings.
virtual long do_hash (const _CharT *__lo, const _CharT *__hi) const
Return hash of a string.
virtual string_type do_transform (const _CharT *__lo, const _CharT *__hi) const
Transform string to comparable form.  

Static Protected Member Functions


static __c_locale _S_clone_c_locale (__c_locale &__cloc) throw ()

static void _S_create_c_locale (__c_locale &__cloc, const char *__s, __c_locale __old=0)

static void _S_destroy_c_locale (__c_locale &__cloc)

static __c_locale _S_get_c_locale ()

static const char * _S_get_c_name () throw ()

static __c_locale _S_lc_ctype_c_locale (__c_locale __cloc, const char *__s)
 

Protected Attributes


__c_locale _M_c_locale_collate
 

Detailed Description

 

template<typename _CharT>


class std::collate_byname< _CharT >" class collate_byname [22.2.4.2].

Definition at line 816 of file locale_classes.h.  

Member Typedef Documentation

 

template<typename _CharT > typedef _CharT std::collate_byname< _CharT >::char_type

Public typedefs.

Definition at line 821 of file locale_classes.h.  

template<typename _CharT > typedef basic_string<_CharT> std::collate_byname< _CharT >::string_type

Public typedefs.

Definition at line 822 of file locale_classes.h.  

Member Function Documentation

 

template<typename _CharT> int std::collate< _CharT >::compare (const _CharT * __lo1, const _CharT * __hi1, const _CharT * __lo2, const _CharT * __hi2) const [inline], [inherited]

Compare two strings. This function compares two strings and returns the result by calling collate::do_compare().

Parameters:

__lo1 Start of string 1.
__hi1 End of string 1.
__lo2 Start of string 2.
__hi2 End of string 2.

Returns:

1 if string1 > string2, -1 if string1 < string2, else 0.

Definition at line 700 of file locale_classes.h.  

template<typename _CharT> int std::collate< _CharT >::do_compare (const _CharT * __lo1, const _CharT * __hi1, const _CharT * __lo2, const _CharT * __hi2) const [protected], [virtual], [inherited]

Compare two strings. This function is a hook for derived classes to change the value returned.

See also:

compare().

Parameters:

__lo1 Start of string 1.
__hi1 End of string 1.
__lo2 Start of string 2.
__hi2 End of string 2.

Returns:

1 if string1 > string2, -1 if string1 < string2, else 0.

Definition at line 161 of file locale_classes.tcc.

References std::basic_string< _CharT, _Traits, _Alloc >::c_str(), std::basic_string< _CharT, _Traits, _Alloc >::data(), and std::basic_string< _CharT, _Traits, _Alloc >::length().  

template<typename _CharT> long std::collate< _CharT >::do_hash (const _CharT * __lo, const _CharT * __hi) const [protected], [virtual], [inherited]

Return hash of a string. This function computes and returns a hash on the input string. This function is a hook for derived classes to change the value returned.

Parameters:

__lo Start of string.
__hi End of string.

Returns:

Hash value.

Definition at line 256 of file locale_classes.tcc.  

template<typename _CharT> collate< _CharT >::string_type std::collate< _CharT >::do_transform (const _CharT * __lo, const _CharT * __hi) const [protected], [virtual], [inherited]

Transform string to comparable form. This function is a hook for derived classes to change the value returned.

Parameters:

__lo Start.
__hi End.

Returns:

transformed string.

Definition at line 200 of file locale_classes.tcc.

References std::basic_string< _CharT, _Traits, _Alloc >::c_str(), std::basic_string< _CharT, _Traits, _Alloc >::data(), and std::basic_string< _CharT, _Traits, _Alloc >::length().  

template<typename _CharT> long std::collate< _CharT >::hash (const _CharT * __lo, const _CharT * __hi) const [inline], [inherited]

Return hash of a string. This function computes and returns a hash on the input string. It does so by returning collate::do_hash().

Parameters:

__lo Start of string.
__hi End of string.

Returns:

Hash value.

Definition at line 733 of file locale_classes.h.  

template<typename _CharT> string_type std::collate< _CharT >::transform (const _CharT * __lo, const _CharT * __hi) const [inline], [inherited]

Transform string to comparable form. This function is a wrapper for strxfrm functionality. It takes the input string and returns a modified string that can be directly compared to other transformed strings. In the C locale, this function just returns a copy of the input string. In some other locales, it may replace two chars with one, change a char for another, etc. It does so by returning collate::do_transform().

Parameters:

__lo Start of string.
__hi End of string.

Returns:

Transformed string_type.

Definition at line 719 of file locale_classes.h.  

Member Data Documentation

 

template<typename _CharT> locale::id std::collate< _CharT >::id [static], [inherited]

Numpunct facet id.

Definition at line 659 of file locale_classes.h.

 

Author

Generated automatically by Doxygen for libstdc++ from the source code.


 

Index

NAME
SYNOPSIS
Public Types
Public Member Functions
Static Public Attributes
Protected Member Functions
Static Protected Member Functions
Protected Attributes
Detailed Description
template<typename _CharT>
Member Typedef Documentation
template<typename _CharT > typedef _CharT std::collate_byname< _CharT >::char_type
template<typename _CharT > typedef basic_string<_CharT> std::collate_byname< _CharT >::string_type
Member Function Documentation
template<typename _CharT> int std::collate< _CharT >::compare (const _CharT * __lo1, const _CharT * __hi1, const _CharT * __lo2, const _CharT * __hi2) const [inline], [inherited]
template<typename _CharT> int std::collate< _CharT >::do_compare (const _CharT * __lo1, const _CharT * __hi1, const _CharT * __lo2, const _CharT * __hi2) const [protected], [virtual], [inherited]
template<typename _CharT> long std::collate< _CharT >::do_hash (const _CharT * __lo, const _CharT * __hi) const [protected], [virtual], [inherited]
template<typename _CharT> collate< _CharT >::string_type std::collate< _CharT >::do_transform (const _CharT * __lo, const _CharT * __hi) const [protected], [virtual], [inherited]
template<typename _CharT> long std::collate< _CharT >::hash (const _CharT * __lo, const _CharT * __hi) const [inline], [inherited]
template<typename _CharT> string_type std::collate< _CharT >::transform (const _CharT * __lo, const _CharT * __hi) const [inline], [inherited]
Member Data Documentation
template<typename _CharT> locale::id std::collate< _CharT >::id [static], [inherited]
Author