std::locale::_Impl Class Reference

#include <locale_classes.h>

List of all members.

Private Member Functions

void _M_add_reference () throw ()
void _M_remove_reference () throw ()
 _Impl (const _Impl &, size_t)
 _Impl (const char *, size_t)
 _Impl (size_t) throw ()
 ~_Impl () throw ()
 _Impl (const _Impl &)
void operator= (const _Impl &)
bool _M_check_same_name ()
void _M_replace_categories (const _Impl *, category)
void _M_replace_category (const _Impl *, const locale::id *const *)
void _M_replace_facet (const _Impl *, const locale::id *)
void _M_install_facet (const locale::id *, const facet *)
template<typename _Facet> void _M_init_facet (_Facet *__facet)
void _M_install_cache (const facet *__cache, size_t __index) throw ()

Private Attributes

_Atomic_word _M_refcount
const facet ** _M_facets
size_t _M_facets_size
const facet ** _M_caches
char ** _M_names

Static Private Attributes

const locale::id *const  _S_id_ctype []
const locale::id *const  _S_id_numeric []
const locale::id *const  _S_id_collate []
const locale::id *const  _S_id_time []
const locale::id *const  _S_id_monetary []
const locale::id *const  _S_id_messages []
const locale::id *const *const  _S_facet_categories []

Friends

class locale
class locale::facet
struct __use_cache
template<typename _Facet> bool has_facet (const locale &) throw ()
 Test for the presence of a facet.

template<typename _Facet> const _Facet & use_facet (const locale &)
 Return a facet.


Constructor & Destructor Documentation

std::locale::_Impl::_Impl const _Impl ,
size_t 
[private]
 

std::locale::_Impl::_Impl const char *  ,
size_t 
[private]
 

std::locale::_Impl::_Impl size_t   )  throw () [private]
 

std::locale::_Impl::~_Impl  )  throw () [private]
 

std::locale::_Impl::_Impl const _Impl  )  [private]
 


Member Function Documentation

void std::locale::_Impl::_M_add_reference  )  throw () [inline, private]
 

Definition at line 507 of file locale_classes.h.

bool std::locale::_Impl::_M_check_same_name  )  [inline, private]
 

Definition at line 534 of file locale_classes.h.

template<typename _Facet>
void std::locale::_Impl::_M_init_facet _Facet *  __facet  )  [inline, private]
 

Definition at line 556 of file locale_classes.h.

void std::locale::_Impl::_M_install_cache const facet __cache,
size_t  __index
throw () [inline, private]
 

Definition at line 560 of file locale_classes.h.

void std::locale::_Impl::_M_install_facet const locale::id ,
const facet
[private]
 

Referenced by std::locale::locale().

void std::locale::_Impl::_M_remove_reference  )  throw () [inline, private]
 

Definition at line 511 of file locale_classes.h.

Referenced by std::locale::combine(), and std::locale::locale().

void std::locale::_Impl::_M_replace_categories const _Impl ,
category 
[private]
 

void std::locale::_Impl::_M_replace_category const _Impl ,
const locale::id *const * 
[private]
 

void std::locale::_Impl::_M_replace_facet const _Impl ,
const locale::id
[private]
 

Referenced by std::locale::combine().

void std::locale::_Impl::operator= const _Impl  )  [private]
 


Friends And Related Function Documentation

friend struct __use_cache [friend]
 

Definition at line 489 of file locale_classes.h.

template<typename _Facet>
bool has_facet const locale __loc  )  throw () [friend]
 

Test for the presence of a facet.

has_facet tests the locale argument for the presence of the facet type provided as the template parameter. Facets derived from the facet parameter will also return true.

Parameters:
Facet The facet type to test the presence of.
locale The locale to test.
Returns:
true if locale contains a facet of type Facet, else false.

Definition at line 85 of file locale_facets.tcc.

friend class locale [friend]
 

Definition at line 477 of file locale_classes.h.

friend class locale::facet [friend]
 

Definition at line 478 of file locale_classes.h.

template<typename _Facet>
const _Facet& use_facet const locale __loc  )  [friend]
 

Return a facet.

use_facet looks for and returns a reference to a facet of type Facet where Facet is the template parameter. If has_facet(locale) is true, there is a suitable facet to return. It throws std::bad_cast if the locale doesn't contain a facet of type Facet.

Parameters:
Facet The facet type to access.
locale The locale to use.
Returns:
Reference to facet of type Facet.
Exceptions:
std::bad_cast if locale doesn't contain a facet of type Facet.

Definition at line 107 of file locale_facets.tcc.


Member Data Documentation

const facet** std::locale::_Impl::_M_caches [private]
 

Definition at line 496 of file locale_classes.h.

const facet** std::locale::_Impl::_M_facets [private]
 

Definition at line 494 of file locale_classes.h.

size_t std::locale::_Impl::_M_facets_size [private]
 

Definition at line 495 of file locale_classes.h.

char** std::locale::_Impl::_M_names [private]
 

Definition at line 497 of file locale_classes.h.

Referenced by std::locale::locale().

_Atomic_word std::locale::_Impl::_M_refcount [private]
 

Definition at line 493 of file locale_classes.h.

const locale::id* const* const std::locale::_Impl::_S_facet_categories[] [static, private]
 

Definition at line 504 of file locale_classes.h.

const locale::id* const std::locale::_Impl::_S_id_collate[] [static, private]
 

Definition at line 500 of file locale_classes.h.

const locale::id* const std::locale::_Impl::_S_id_ctype[] [static, private]
 

Definition at line 498 of file locale_classes.h.

const locale::id* const std::locale::_Impl::_S_id_messages[] [static, private]
 

Definition at line 503 of file locale_classes.h.

const locale::id* const std::locale::_Impl::_S_id_monetary[] [static, private]
 

Definition at line 502 of file locale_classes.h.

const locale::id* const std::locale::_Impl::_S_id_numeric[] [static, private]
 

Definition at line 499 of file locale_classes.h.

const locale::id* const std::locale::_Impl::_S_id_time[] [static, private]
 

Definition at line 501 of file locale_classes.h.


The documentation for this class was generated from the following file:
Generated on Tue Jan 30 17:32:13 2007 for GNU C++ STL by doxygen 1.3.6