22#ifndef _STLP_INTERNAL_COLLATE_H
23#define _STLP_INTERNAL_COLLATE_H
25#ifndef _STLP_C_LOCALE_H
29#ifndef _STLP_INTERNAL_LOCALE_H
33#ifndef _STLP_INTERNAL_STRING_H
50 int compare(
const char* __low1,
const char* __high1,
51 const char* __low2,
const char* __high2)
const {
52 return do_compare( __low1, __high1, __low2, __high2);
56 return do_transform(__low, __high);
59 long hash(
const char* __low,
const char* __high)
const
60 {
return do_hash(__low, __high); }
67 virtual int do_compare(
const char*,
const char*,
68 const char*,
const char*)
const;
69 virtual string_type do_transform(
const char*,
const char*)
const;
70 virtual long do_hash(
const char*,
const char*)
const;
76# ifndef _STLP_NO_WCHAR_T
86 int compare(
const wchar_t* __low1,
const wchar_t* __high1,
87 const wchar_t* __low2,
const wchar_t* __high2)
const {
88 return do_compare( __low1, __high1, __low2, __high2);
92 return do_transform(__low, __high);
95 long hash(
const wchar_t* __low,
const wchar_t* __high)
const
96 {
return do_hash(__low, __high); }
103 virtual int do_compare(
const wchar_t*,
const wchar_t*,
104 const wchar_t*,
const wchar_t*)
const;
105 virtual string_type do_transform(
const wchar_t*,
const wchar_t*)
const;
106 virtual long do_hash(
const wchar_t* __low,
const wchar_t* __high)
const;
123 virtual int do_compare(
const char*,
const char*,
124 const char*,
const char*)
const;
125 virtual string_type do_transform(
const char*,
const char*)
const;
129 : _M_collate(__coll) {}
135# ifndef _STLP_NO_WCHAR_T
146 virtual int do_compare(
const wchar_t*,
const wchar_t*,
147 const wchar_t*,
const wchar_t*)
const;
148 virtual string_type do_transform(
const wchar_t*,
const wchar_t*)
const;
152 : _M_collate(__coll) {}
160template <
class _CharT,
class _Traits,
class _Alloc>
166 return __coll.compare(__x.
data(), __x.
data() + __x.
size(),
bool __locale_do_operator_call(const locale &__loc, const basic_string< _CharT, _Traits, _Alloc > &__x, const basic_string< _CharT, _Traits, _Alloc > &__y)
static __inline int do_hash(unsigned char *name, int len, int size)
const _CharT * data() const
long hash(const char *__low, const char *__high) const
int compare(const char *__low1, const char *__high1, const char *__low2, const char *__high2) const
static _STLP_STATIC_DECLSPEC locale::id id
string_type transform(const char *__low, const char *__high) const
collate(const collate< char > &)
long hash(const wchar_t *__low, const wchar_t *__high) const
collate(const collate< wchar_t > &)
int compare(const wchar_t *__low1, const wchar_t *__high1, const wchar_t *__low2, const wchar_t *__high2) const
static _STLP_STATIC_DECLSPEC locale::id id
string_type transform(const wchar_t *__low, const wchar_t *__high) const
collate_byname(const collate_byname< char > &)
_Locale_collate * _M_collate
collate_byname(_Locale_collate *__coll)
collate_byname(_Locale_collate *__coll)
collate_byname(const collate_byname< wchar_t > &)
_Locale_collate * _M_collate
void operator=(const facet &)
#define _STLP_TEMPLATE_NULL
#define _STLP_STATIC_DECLSPEC
#define _STLP_CLASS_DECLSPEC
#define _STLP_BEGIN_NAMESPACE
#define _STLP_END_NAMESPACE