libstdc++: std::locale::id Class Reference (original) (raw)

#include <[locale_classes.h](a00587%5Fsource.html)>

Public Member Functions
id ()
size_t _M_id () const throw ()
Friends
template<typename _Facet >
const _Facet * __try_use_facet (const locale &) noexcept
template<typename _Facet >
bool has_facet (const locale &) throw ()
class locale
class locale::_Impl
template<typename _Facet >
const _Facet & use_facet (const locale &)

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 508 of file locale_classes.h.

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

__try_use_facet

template<typename _Facet >

const _Facet * __try_use_facet ( const locale & __loc) friend

has_facet

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.

Template Parameters

_Facet The facet type to test the presence of.

Parameters

Returns

true if __loc contains a facet of type _Facet, else false.

Definition at line 178 of file locale_classes.tcc.

locale

locale::_Impl

friend class locale::_Impl friend

use_facet

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.

Template Parameters

_Facet The facet type to access.

Parameters

Returns

Reference to facet of type Facet.

Exceptions

std::bad_cast if __loc doesn't contain a facet of type _Facet.

Definition at line 208 of file locale_classes.tcc.


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