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

Facet for outputting monetary amounts. More...

#include <locale_facets.h>

Inheritance diagram for std::money_put< _CharT, _OutIter >:

std::locale::facet List of all members.

Public Types

typedef _CharT char_type
 Public typedefs.
typedef _OutIter iter_type
typedef basic_string< _CharT > string_type

Public Member Functions

 money_put (size_t __refs=0)
 Constructor performs initialization.
iter_type put (iter_type __s, bool __intl, ios_base &__io, char_type __fill, long double __units) const
 Format and output a monetary value.
iter_type put (iter_type __s, bool __intl, ios_base &__io, char_type __fill, const string_type &__digits) const
 Format and output a monetary value.

Static Public Attributes

static locale::id id
 Numpunct facet id.

Protected Member Functions

virtual ~money_put ()
 Destructor.
virtual iter_type do_put (iter_type __s, bool __intl, ios_base &__io, char_type __fill, long double __units) const
 Format and output a monetary value.
virtual iter_type do_put (iter_type __s, bool __intl, ios_base &__io, char_type __fill, const string_type &__digits) const
 Format and output a monetary value.
template<bool _Intl>
iter_type _M_insert (iter_type __s, ios_base &__io, char_type __fill, const string_type &__digits) const

Detailed Description

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

Facet for outputting monetary amounts.

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 4147 of file locale_facets.h.


Member Typedef Documentation

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

Public typedefs.

Definition at line 4152 of file locale_facets.h.

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

Definition at line 4153 of file locale_facets.h.

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

Definition at line 4154 of file locale_facets.h.


Constructor & Destructor Documentation

template<typename _CharT, typename _OutIter>
std::money_put< _CharT, _OutIter >::money_put ( size_t  __refs = 0  )  [inline, explicit]

Constructor performs initialization.

This is the constructor provided by the standard.

Parameters:
refs Passed to the base facet class.

Definition at line 4168 of file locale_facets.h.

template<typename _CharT, typename _OutIter>
virtual std::money_put< _CharT, _OutIter >::~money_put (  )  [inline, protected, virtual]

Destructor.

Definition at line 4217 of file locale_facets.h.


Member Function Documentation

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 [protected]

Definition at line 1574 of file locale_facets.tcc.

References std::__add_grouping(), std::__write(), std::ios_base::_M_getloc(), std::money_base::_S_minus, std::money_base::_S_zero, std::ios_base::adjustfield, std::basic_string< _CharT, _Traits, _Alloc >::append(), std::basic_string< _CharT, _Traits, _Alloc >::assign(), std::basic_string< _CharT, _Traits, _Alloc >::data(), ctype_base::digit, std::money_base::pattern::field, std::ios_base::flags(), std::basic_string< _CharT, _Traits, _Alloc >::insert(), std::ios_base::internal, std::ios_base::left, std::money_base::none, std::basic_string< _CharT, _Traits, _Alloc >::reserve(), std::__ctype_abstract_base< _CharT >::scan_not(), std::ios_base::showbase, std::money_base::sign, std::basic_string< _CharT, _Traits, _Alloc >::size(), std::money_base::space, std::money_base::symbol, std::money_base::value, and std::ios_base::width().

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 [protected, virtual]

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:
s The stream to write to.
intl Parameter to use_facet<moneypunct<CharT,intl> >.
io Source of facets and io state.
fill char_type to use for padding.
units Place to store result of parsing.
Returns:
Iterator after writing.

Definition at line 1785 of file locale_facets.tcc.

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 [protected, virtual]

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:
s The stream to write to.
intl Parameter to use_facet<moneypunct<CharT,intl> >.
io Source of facets and io state.
fill char_type to use for padding.
units Place to store result of parsing.
Returns:
Iterator after writing.

Definition at line 1746 of file locale_facets.tcc.

References std::__convert_from_v(), std::locale::facet::_S_get_c_locale(), std::ios_base::getloc(), and std::__ctype_abstract_base< _CharT >::widen().

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

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:
s The stream to write to.
intl Parameter to use_facet<moneypunct<CharT,intl> >.
io Source of facets and io state.
fill char_type to use for padding.
units Place to store result of parsing.
Returns:
Iterator after writing.

Definition at line 4210 of file locale_facets.h.

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

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:
s The stream to write to.
intl Parameter to use_facet<moneypunct<CharT,intl> >.
io Source of facets and io state.
fill char_type to use for padding.
units Place to store result of parsing.
Returns:
Iterator after writing.

Definition at line 4188 of file locale_facets.h.

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


Member Data Documentation

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

Numpunct facet id.

Definition at line 4158 of file locale_facets.h.


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 16:59:03 2010 for GNU C++ STL by  doxygen 1.4.7