libstdc++
std::money_put< _CharT, _OutIter > Class Template Reference

#include <locale_facets_nonio.h>

Inheritance diagram for std::money_put< _CharT, _OutIter >:
[legend]

Public Types

typedef _CharT char_type
 
typedef _OutIter iter_type
 
typedef basic_string< _CharT > string_type
 

Public Member Functions

 money_put (size_t __refs=0)
 
template<bool _Intl>
_OutIter _M_insert (iter_type __s, ios_base &__io, char_type __fill, const string_type &__digits) const
 
iter_type put (iter_type __s, bool __intl, ios_base &__io, char_type __fill, const string_type &__digits) const
 
iter_type put (iter_type __s, bool __intl, ios_base &__io, char_type __fill, long double __units) const
 

Static Public Attributes

static locale::id id
 

Protected Member Functions

virtual ~money_put ()
 
template<bool _Intl>
iter_type _M_insert (iter_type __s, ios_base &__io, char_type __fill, const string_type &__digits) const
 
virtual iter_type do_put (iter_type __s, bool __intl, ios_base &__io, char_type __fill, const string_type &__digits) const
 
virtual iter_type do_put (iter_type __s, bool __intl, ios_base &__io, char_type __fill, long double __units) const
 

Static Protected Member Functions

static __c_locale _S_clone_c_locale (__c_locale &__cloc) throw ()
 
static void _S_create_c_locale (__c_locale &__cloc, const char *__s, __c_locale __old=0)
 
static void _S_destroy_c_locale (__c_locale &__cloc)
 
static __c_locale _S_get_c_locale ()
 
static const char * _S_get_c_name () throw ()
 
static __c_locale _S_lc_ctype_c_locale (__c_locale __cloc, const char *__s)
 

Detailed Description

template<typename _CharT, typename _OutIter>
class std::money_put< _CharT, _OutIter >

Primary class template money_put.

This facet encapsulates the code to format and output a monetary amount.

The money_put template uses protected virtual functions to provide the actual results. The public accessors forward the call to the virtual functions. These virtual functions are hooks for developers to implement the behavior they require from the money_put facet.

Definition at line 1629 of file locale_facets_nonio.h.

Member Typedef Documentation

◆ char_type

template<typename _CharT , typename _OutIter >
typedef _CharT std::money_put< _CharT, _OutIter >::char_type

Public typedefs.

Definition at line 1634 of file locale_facets_nonio.h.

◆ iter_type

template<typename _CharT , typename _OutIter >
typedef _OutIter std::money_put< _CharT, _OutIter >::iter_type

Public typedefs.

Definition at line 1635 of file locale_facets_nonio.h.

◆ string_type

template<typename _CharT , typename _OutIter >
typedef basic_string<_CharT> std::money_put< _CharT, _OutIter >::string_type

Public typedefs.

Definition at line 1636 of file locale_facets_nonio.h.

Constructor & Destructor Documentation

◆ money_put()

template<typename _CharT , typename _OutIter >
std::money_put< _CharT, _OutIter >::money_put ( size_t  __refs = 0)
inlineexplicit

Constructor performs initialization.

This is the constructor provided by the standard.

Parameters
__refsPassed to the base facet class.

Definition at line 1650 of file locale_facets_nonio.h.

◆ ~money_put()

template<typename _CharT , typename _OutIter >
virtual std::money_put< _CharT, _OutIter >::~money_put ( )
inlineprotectedvirtual

Destructor.

Definition at line 1700 of file locale_facets_nonio.h.

Member Function Documentation

◆ _M_insert()

template<typename _CharT , typename _OutIter >
template<bool _Intl>
_OutIter std::money_put< _CharT, _OutIter >::_M_insert ( iter_type  __s,
ios_base __io,
char_type  __fill,
const string_type __digits 
) const

Definition at line 424 of file locale_facets_nonio.tcc.

◆ do_put() [1/2]

template<typename _CharT , typename _OutIter >
_OutIter std::money_put< _CharT, _OutIter >::do_put ( iter_type  __s,
bool  __intl,
ios_base __io,
char_type  __fill,
const string_type __digits 
) const
protectedvirtual

Format and output a monetary value.

This function formats digits as a monetary value according to moneypunct and ctype facets retrieved from io.getloc(), and writes the resulting characters to __s. For example, the string 1001 in a US locale would write $10.01 to __s.

This function is a hook for derived classes to change the value returned.

See also
put().
Parameters
__sThe stream to write to.
__intlParameter to use_facet<moneypunct<CharT,intl> >.
__ioSource of facets and io state.
__fillchar_type to use for padding.
__digitsPlace to store result of parsing.
Returns
Iterator after writing.

Definition at line 631 of file locale_facets_nonio.tcc.

◆ do_put() [2/2]

template<typename _CharT , typename _OutIter >
_OutIter std::money_put< _CharT, _OutIter >::do_put ( iter_type  __s,
bool  __intl,
ios_base __io,
char_type  __fill,
long double  __units 
) const
protectedvirtual

Format and output a monetary value.

This function formats units as a monetary value according to moneypunct and ctype facets retrieved from io.getloc(), and writes the resulting characters to __s. For example, the value 1001 in a US locale would write $10.01 to __s.

This function is a hook for derived classes to change the value returned.

See also
put().
Parameters
__sThe stream to write to.
__intlParameter to use_facet<moneypunct<CharT,intl> >.
__ioSource of facets and io state.
__fillchar_type to use for padding.
__unitsPlace to store result of parsing.
Returns
Iterator after writing.

Definition at line 593 of file locale_facets_nonio.tcc.

References std::ios_base::getloc(), and std::__ctype_abstract_base< _CharT >::widen().

Referenced by std::money_put< _CharT, _OutIter >::put(), and std::money_put< _CharT, _OutIter >::put().

◆ put() [1/2]

template<typename _CharT , typename _OutIter >
iter_type std::money_put< _CharT, _OutIter >::put ( iter_type  __s,
bool  __intl,
ios_base __io,
char_type  __fill,
const string_type __digits 
) const
inline

Format and output a monetary value.

This function formats digits as a monetary value according to moneypunct and ctype facets retrieved from io.getloc(), and writes the resulting characters to __s. For example, the string 1001 in a US locale would write $10.01 to __s.

This function works by returning the result of do_put().

Parameters
__sThe stream to write to.
__intlParameter to use_facet<moneypunct<CharT,intl> >.
__ioSource of facets and io state.
__fillchar_type to use for padding.
__digitsPlace to store result of parsing.
Returns
Iterator after writing.

Definition at line 1693 of file locale_facets_nonio.h.

References std::money_put< _CharT, _OutIter >::do_put().

◆ put() [2/2]

template<typename _CharT , typename _OutIter >
iter_type std::money_put< _CharT, _OutIter >::put ( iter_type  __s,
bool  __intl,
ios_base __io,
char_type  __fill,
long double  __units 
) const
inline

Format and output a monetary value.

This function formats units as a monetary value according to moneypunct and ctype facets retrieved from io.getloc(), and writes the resulting characters to __s. For example, the value 1001 in a US locale would write $10.01 to __s.

This function works by returning the result of do_put().

Parameters
__sThe stream to write to.
__intlParameter to use_facet<moneypunct<CharT,intl> >.
__ioSource of facets and io state.
__fillchar_type to use for padding.
__unitsPlace to store result of parsing.
Returns
Iterator after writing.

Definition at line 1670 of file locale_facets_nonio.h.

References std::money_put< _CharT, _OutIter >::do_put().

Member Data Documentation

◆ id

template<typename _CharT , typename _OutIter >
locale::id std::money_put< _CharT, _OutIter >::id
static

Numpunct facet id.

Definition at line 1640 of file locale_facets_nonio.h.


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