ReactOS 0.4.15-dev-5884-gab5aff5
_locale.h File Reference
#include <stl/_cstdlib.h>
#include <stl/_cwchar.h>
#include <stl/_threads.h>
#include <stl/_string_fwd.h>
#include <stl/_facets_fwd.h>
Include dependency graph for _locale.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  locale
 
class  locale::facet
 
class  locale::id
 

Functions

template<class _CharT , class _Traits , class _Alloc >
bool __locale_do_operator_call (const locale &__loc, const basic_string< _CharT, _Traits, _Alloc > &__x, const basic_string< _CharT, _Traits, _Alloc > &__y)
 
_STLP_DECLSPEC _Locale_impl *_STLP_CALL _get_Locale_impl (_Locale_impl *locimpl)
 
_STLP_DECLSPEC _Locale_impl *_STLP_CALL _copy_Nameless_Locale_impl (_Locale_impl *locimpl)
 
template<class _Facet >
_STLP_MOVE_TO_PRIV_NAMESPACE bool _HasFacet (const locale &__loc, const _Facet *__facet) _STLP_NOTHROW
 
template<class _Facet >
_Facet * _UseFacet (const locale &__loc, const _Facet *__facet)
 
template<class _Facet >
void _InsertFacet (locale &__loc, _Facet *__facet)
 
template<class _Facet >
const _Facet & use_facet (const locale &__loc)
 
template<class _Facet >
bool has_facet (const locale &__loc) _STLP_NOTHROW
 
template<class _Facet >
_STLP_MOVE_TO_PRIV_NAMESPACE locale::id_GetFacetId (const _Facet *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const money_get< char, istreambuf_iterator< char, char_traits< char > > > *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const money_put< char, ostreambuf_iterator< char, char_traits< char > > > *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const num_get< char, istreambuf_iterator< char, char_traits< char > > > *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const num_put< char, ostreambuf_iterator< char, char_traits< char > > > *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const time_get< char, istreambuf_iterator< char, char_traits< char > > > *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const time_put< char, ostreambuf_iterator< char, char_traits< char > > > *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const money_get< wchar_t, istreambuf_iterator< wchar_t, char_traits< wchar_t > > > *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const money_put< wchar_t, ostreambuf_iterator< wchar_t, char_traits< wchar_t > > > *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const num_get< wchar_t, istreambuf_iterator< wchar_t, char_traits< wchar_t > > > *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const num_put< wchar_t, ostreambuf_iterator< wchar_t, char_traits< wchar_t > > > *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const time_get< wchar_t, istreambuf_iterator< wchar_t, char_traits< wchar_t > > > *)
 
_STLP_DECLSPEC locale::id &_STLP_CALL _GetFacetId (const time_put< wchar_t, ostreambuf_iterator< wchar_t, char_traits< wchar_t > > > *)
 
template<class _Facet >
bool _HasFacet (const locale &__loc, const _Facet *__facet) _STLP_NOTHROW
 

Function Documentation

◆ __locale_do_operator_call()

template<class _CharT , class _Traits , class _Alloc >
bool __locale_do_operator_call ( const locale __loc,
const basic_string< _CharT, _Traits, _Alloc > &  __x,
const basic_string< _CharT, _Traits, _Alloc > &  __y 
)

Definition at line 162 of file _collate.h.

164 {
165 collate<_CharT> const& __coll = use_facet<collate<_CharT> >(__loc);
166 return __coll.compare(__x.data(), __x.data() + __x.size(),
167 __y.data(), __y.data() + __y.size()) < 0;
168}
size_type size() const
Definition: _string.h:400
const _CharT * data() const
Definition: _string.h:950

Referenced by locale::operator()().

◆ _copy_Nameless_Locale_impl()

_STLP_DECLSPEC _Locale_impl *_STLP_CALL _copy_Nameless_Locale_impl ( _Locale_impl locimpl)

Definition at line 714 of file locale_impl.cpp.

715{
716 _STLP_ASSERT( loc != 0 );
717 _Locale_impl *loc_new = new _Locale_impl(*loc);
718 loc_new->name = _Nameless;
719 return loc_new;
720}
#define _STLP_ASSERT(expr)
Definition: _debug.h:165
basic_string< char, char_traits< char >, allocator< char > > name
Definition: locale_impl.h:72
static _STLP_BEGIN_NAMESPACE const string _Nameless("*")

Referenced by locale::locale().

◆ _get_Locale_impl()

_STLP_DECLSPEC _Locale_impl *_STLP_CALL _get_Locale_impl ( _Locale_impl locimpl)

Definition at line 695 of file locale_impl.cpp.

696{
697 _STLP_ASSERT( loc != 0 );
698 loc->_M_incr();
699 return loc;
700}

Referenced by locale::global(), locale::locale(), and locale::operator=().

◆ _GetFacetId() [1/13]

template<class _Facet >
_STLP_MOVE_TO_PRIV_NAMESPACE locale::id & _GetFacetId ( const _Facet *  )
inline

Definition at line 324 of file _locale.h.

325{ return _Facet::id; }

Referenced by _HasFacet(), _InsertFacet(), and _UseFacet().

◆ _GetFacetId() [2/13]

◆ _GetFacetId() [3/13]

◆ _GetFacetId() [4/13]

◆ _GetFacetId() [5/13]

◆ _GetFacetId() [6/13]

◆ _GetFacetId() [7/13]

◆ _GetFacetId() [8/13]

◆ _GetFacetId() [9/13]

◆ _GetFacetId() [10/13]

◆ _GetFacetId() [11/13]

◆ _GetFacetId() [12/13]

◆ _GetFacetId() [13/13]

◆ _HasFacet() [1/2]

template<class _Facet >
_STLP_MOVE_TO_PRIV_NAMESPACE bool _HasFacet ( const locale __loc,
const _Facet *  __facet 
)
inline

Definition at line 344 of file _locale.h.

345{ return (__loc._M_get_facet(_GetFacetId(__facet)) != 0); }
_STLP_MOVE_TO_PRIV_NAMESPACE locale::id & _GetFacetId(const _Facet *)
Definition: _locale.h:324
facet * _M_get_facet(const id &) const
Definition: locale.cpp:377

Referenced by has_facet().

◆ _HasFacet() [2/2]

template<class _Facet >
bool _HasFacet ( const locale __loc,
const _Facet *  __facet 
)
inline

Definition at line 344 of file _locale.h.

345{ return (__loc._M_get_facet(_GetFacetId(__facet)) != 0); }

Referenced by has_facet().

◆ _InsertFacet()

template<class _Facet >
void _InsertFacet ( locale __loc,
_Facet *  __facet 
)
inline

Definition at line 352 of file _locale.h.

353{ __loc._M_insert(__facet, _GetFacetId(__facet)); }
void _M_insert(facet *__f, id &__id)
Definition: locale.cpp:127

Referenced by locale::locale().

◆ _UseFacet()

template<class _Facet >
_Facet * _UseFacet ( const locale __loc,
const _Facet *  __facet 
)
inline

Definition at line 348 of file _locale.h.

349{ return __STATIC_CAST(_Facet*, __loc._M_use_facet(_GetFacetId(__facet))); }
facet * _M_use_facet(const id &) const
Definition: locale.cpp:381
#define __STATIC_CAST(__x, __y)
Definition: features.h:585

Referenced by use_facet().

◆ has_facet()

template<class _Facet >
bool has_facet ( const locale __loc)
inline

Definition at line 304 of file _locale.h.

306{
307 _Facet *__facet = 0;
308 return _STLP_PRIV _HasFacet(__loc, __facet);
309}
#define _STLP_PRIV
Definition: _dm.h:70
_STLP_MOVE_TO_PRIV_NAMESPACE bool _HasFacet(const locale &__loc, const _Facet *__facet) _STLP_NOTHROW
Definition: _locale.h:344

Referenced by LocaleTest::_ctype_facet(), LocaleTest::_ctype_facet_w(), LocaleTest::_money_put_get2(), LocaleTest::_money_put_X_bug(), LocaleTest::_num_put_get(), LocaleTest::collate_facet(), LocaleTest::combine(), LocaleTest::ctype_by_name(), and FstreamTest::custom_facet().

◆ use_facet()

template<class _Facet >
const _Facet & use_facet ( const locale __loc)
inline

Definition at line 290 of file _locale.h.

292{
293 _Facet *__facet = 0;
294 return *(_STLP_PRIV _UseFacet(__loc, __facet));
295}
_Facet * _UseFacet(const locale &__loc, const _Facet *__facet)
Definition: _locale.h:348