libstdc++
std::locale::id Class Reference

Public Member Functions

 id ()
 
size_t _M_id () const throw ()
 

Friends

template<typename _Facet >
bool has_facet (const locale &) throw ()
 
class locale
 
class locale::_Impl
 
template<typename _Facet >
const _Facet & use_facet (const locale &)
 

Detailed Description

Facet ID class.

The ID class provides facets with an index used to identify them. Every facet class must define a public static member locale::id, or be derived from a facet that provides this member, otherwise the facet cannot be used in a locale. The locale::id ensures that each class type gets a unique identifier.

Definition at line 437 of file locale_classes.h.

Constructor & Destructor Documentation

std::locale::id::id ( )
inline

Constructor.

Definition at line 468 of file locale_classes.h.

Friends And Related Function Documentation

template<typename _Facet >
bool has_facet ( const locale ) 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
FacetThe facet type to test the presence of.
localeThe locale to test.
Returns
true if locale contains a facet of type Facet, else false.
template<typename _Facet >
const _Facet& use_facet ( const locale )
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
FacetThe facet type to access.
localeThe locale to use.
Returns
Reference to facet of type Facet.
Exceptions
std::bad_castif locale doesn't contain a facet of type Facet.

The documentation for this class was generated from the following file: