libstdc++
std::num_put Class Reference
Inheritance diagram for std::num_put:

List of all members.

Public Types

Public Member Functions

Static Public Attributes

Protected Member Functions

Static Protected Member Functions

Friends


Detailed Description

Primary class template num_put.

This facet encapsulates the code to convert a number to a string. It is used by the ostream numeric insertion operators.

The num_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 num_put facet.


Member Typedef Documentation

typedef _CharT std::num_put::char_type

Public typedefs.

Definition at line 2260 of file locale_facets.h.

typedef _OutIter std::num_put::iter_type

Public typedefs.

Definition at line 2261 of file locale_facets.h.


Constructor & Destructor Documentation

std::num_put::num_put ( size_t  __refs = 0) [inline, explicit]

Constructor performs initialization.

This is the constructor provided by the standard.

Parameters:
refsPassed to the base facet class.

Definition at line 2275 of file locale_facets.h.

virtual std::num_put::~num_put ( ) [inline, protected, virtual]

Destructor.

Definition at line 2454 of file locale_facets.h.


Member Function Documentation

_OutIter std::num_put::do_put ( iter_type  __s,
ios_base __io,
char_type  __fill,
bool  __v 
) const [protected, virtual]

Numeric formatting.

These functions do the work of formatting numeric values and inserting them into a stream. This function is a hook for derived classes to change the value returned.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 1091 of file locale_facets.tcc.

References std::ios_base::flags(), std::ios_base::boolalpha, std::ios_base::_M_getloc(), std::ios_base::width(), std::ios_base::adjustfield, and std::ios_base::left.

virtual iter_type std::num_put::do_put ( iter_type  __s,
ios_base __io,
char_type  __fill,
long  __v 
) const [inline, protected, virtual]

Numeric formatting.

These functions do the work of formatting numeric values and inserting them into a stream. This function is a hook for derived classes to change the value returned.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2474 of file locale_facets.h.

virtual iter_type std::num_put::do_put ( iter_type  __s,
ios_base __io,
char_type  __fill,
unsigned long  __v 
) const [inline, protected, virtual]

Numeric formatting.

These functions do the work of formatting numeric values and inserting them into a stream. This function is a hook for derived classes to change the value returned.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2478 of file locale_facets.h.

virtual iter_type std::num_put::do_put ( iter_type  __s,
ios_base __io,
char_type  __fill,
long long  __v 
) const [inline, protected, virtual]

Numeric formatting.

These functions do the work of formatting numeric values and inserting them into a stream. This function is a hook for derived classes to change the value returned.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2484 of file locale_facets.h.

virtual iter_type std::num_put::do_put ( iter_type  __s,
ios_base __io,
char_type  __fill,
unsigned long long  __v 
) const [inline, protected, virtual]

Numeric formatting.

These functions do the work of formatting numeric values and inserting them into a stream. This function is a hook for derived classes to change the value returned.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2489 of file locale_facets.h.

_OutIter std::num_put::do_put ( iter_type  __s,
ios_base __io,
char_type  __fill,
double  __v 
) const [protected, virtual]

Numeric formatting.

These functions do the work of formatting numeric values and inserting them into a stream. This function is a hook for derived classes to change the value returned.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 1143 of file locale_facets.tcc.

_OutIter std::num_put::do_put ( iter_type  __s,
ios_base __io,
char_type  __fill,
long double  __v 
) const [protected, virtual]

Numeric formatting.

These functions do the work of formatting numeric values and inserting them into a stream. This function is a hook for derived classes to change the value returned.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 1157 of file locale_facets.tcc.

_OutIter std::num_put::do_put ( iter_type  __s,
ios_base __io,
char_type  __fill,
const void *  __v 
) const [protected, virtual]

Numeric formatting.

These functions do the work of formatting numeric values and inserting them into a stream. This function is a hook for derived classes to change the value returned.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 1164 of file locale_facets.tcc.

References std::ios_base::flags(), std::uppercase(), and std::ios_base::hex.

iter_type std::num_put::put ( iter_type  __s,
ios_base __f,
char_type  __fill,
bool  __v 
) const [inline]

Numeric formatting.

Formats the boolean v and inserts it into a stream. It does so by calling num_put::do_put().

If ios_base::boolalpha is set, writes ctype<CharT>::truename() or ctype<CharT>::falsename(). Otherwise formats v as an int.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2293 of file locale_facets.h.

iter_type std::num_put::put ( iter_type  __s,
ios_base __f,
char_type  __fill,
long  __v 
) const [inline]

Numeric formatting.

Formats the integral value v and inserts it into a stream. It does so by calling num_put::do_put().

Formatting is affected by the flag settings in io.

The basic format is affected by the value of io.flags() & ios_base::basefield. If equal to ios_base::oct, formats like the printf o specifier. Else if equal to ios_base::hex, formats like x or X with ios_base::uppercase unset or set respectively. Otherwise, formats like d, ld, lld for signed and u, lu, llu for unsigned values. Note that if both oct and hex are set, neither will take effect.

If ios_base::showpos is set, '+' is output before positive values. If ios_base::showbase is set, '0' precedes octal values (except 0) and '0[xX]' precedes hex values.

Thousands separators are inserted according to numpunct::grouping() and numpunct::thousands_sep(). The decimal point character used is numpunct::decimal_point().

If io.width() is non-zero, enough fill characters are inserted to make the result at least that wide. If (io.flags() & ios_base::adjustfield) == ios_base::left, result is padded at the end. If ios_base::internal, then padding occurs immediately after either a '+' or '-' or after '0x' or '0X'. Otherwise, padding occurs at the beginning.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2335 of file locale_facets.h.

iter_type std::num_put::put ( iter_type  __s,
ios_base __f,
char_type  __fill,
unsigned long  __v 
) const [inline]

Numeric formatting.

Formats the integral value v and inserts it into a stream. It does so by calling num_put::do_put().

Formatting is affected by the flag settings in io.

The basic format is affected by the value of io.flags() & ios_base::basefield. If equal to ios_base::oct, formats like the printf o specifier. Else if equal to ios_base::hex, formats like x or X with ios_base::uppercase unset or set respectively. Otherwise, formats like d, ld, lld for signed and u, lu, llu for unsigned values. Note that if both oct and hex are set, neither will take effect.

If ios_base::showpos is set, '+' is output before positive values. If ios_base::showbase is set, '0' precedes octal values (except 0) and '0[xX]' precedes hex values.

Thousands separators are inserted according to numpunct::grouping() and numpunct::thousands_sep(). The decimal point character used is numpunct::decimal_point().

If io.width() is non-zero, enough fill characters are inserted to make the result at least that wide. If (io.flags() & ios_base::adjustfield) == ios_base::left, result is padded at the end. If ios_base::internal, then padding occurs immediately after either a '+' or '-' or after '0x' or '0X'. Otherwise, padding occurs at the beginning.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2339 of file locale_facets.h.

iter_type std::num_put::put ( iter_type  __s,
ios_base __f,
char_type  __fill,
long long  __v 
) const [inline]

Numeric formatting.

Formats the integral value v and inserts it into a stream. It does so by calling num_put::do_put().

Formatting is affected by the flag settings in io.

The basic format is affected by the value of io.flags() & ios_base::basefield. If equal to ios_base::oct, formats like the printf o specifier. Else if equal to ios_base::hex, formats like x or X with ios_base::uppercase unset or set respectively. Otherwise, formats like d, ld, lld for signed and u, lu, llu for unsigned values. Note that if both oct and hex are set, neither will take effect.

If ios_base::showpos is set, '+' is output before positive values. If ios_base::showbase is set, '0' precedes octal values (except 0) and '0[xX]' precedes hex values.

Thousands separators are inserted according to numpunct::grouping() and numpunct::thousands_sep(). The decimal point character used is numpunct::decimal_point().

If io.width() is non-zero, enough fill characters are inserted to make the result at least that wide. If (io.flags() & ios_base::adjustfield) == ios_base::left, result is padded at the end. If ios_base::internal, then padding occurs immediately after either a '+' or '-' or after '0x' or '0X'. Otherwise, padding occurs at the beginning.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2345 of file locale_facets.h.

iter_type std::num_put::put ( iter_type  __s,
ios_base __f,
char_type  __fill,
unsigned long long  __v 
) const [inline]

Numeric formatting.

Formats the integral value v and inserts it into a stream. It does so by calling num_put::do_put().

Formatting is affected by the flag settings in io.

The basic format is affected by the value of io.flags() & ios_base::basefield. If equal to ios_base::oct, formats like the printf o specifier. Else if equal to ios_base::hex, formats like x or X with ios_base::uppercase unset or set respectively. Otherwise, formats like d, ld, lld for signed and u, lu, llu for unsigned values. Note that if both oct and hex are set, neither will take effect.

If ios_base::showpos is set, '+' is output before positive values. If ios_base::showbase is set, '0' precedes octal values (except 0) and '0[xX]' precedes hex values.

Thousands separators are inserted according to numpunct::grouping() and numpunct::thousands_sep(). The decimal point character used is numpunct::decimal_point().

If io.width() is non-zero, enough fill characters are inserted to make the result at least that wide. If (io.flags() & ios_base::adjustfield) == ios_base::left, result is padded at the end. If ios_base::internal, then padding occurs immediately after either a '+' or '-' or after '0x' or '0X'. Otherwise, padding occurs at the beginning.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2349 of file locale_facets.h.

iter_type std::num_put::put ( iter_type  __s,
ios_base __f,
char_type  __fill,
double  __v 
) const [inline]

Numeric formatting.

Formats the floating point value v and inserts it into a stream. It does so by calling num_put::do_put().

Formatting is affected by the flag settings in io.

The basic format is affected by the value of io.flags() & ios_base::floatfield. If equal to ios_base::fixed, formats like the printf f specifier. Else if equal to ios_base::scientific, formats like e or E with ios_base::uppercase unset or set respectively. Otherwise, formats like g or G depending on uppercase. Note that if both fixed and scientific are set, the effect will also be like g or G.

The output precision is given by io.precision(). This precision is capped at numeric_limits::digits10 + 2 (different for double and long double). The default precision is 6.

If ios_base::showpos is set, '+' is output before positive values. If ios_base::showpoint is set, a decimal point will always be output.

Thousands separators are inserted according to numpunct::grouping() and numpunct::thousands_sep(). The decimal point character used is numpunct::decimal_point().

If io.width() is non-zero, enough fill characters are inserted to make the result at least that wide. If (io.flags() & ios_base::adjustfield) == ios_base::left, result is padded at the end. If ios_base::internal, then padding occurs immediately after either a '+' or '-' or after '0x' or '0X'. Otherwise, padding occurs at the beginning.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2398 of file locale_facets.h.

iter_type std::num_put::put ( iter_type  __s,
ios_base __f,
char_type  __fill,
long double  __v 
) const [inline]

Numeric formatting.

Formats the floating point value v and inserts it into a stream. It does so by calling num_put::do_put().

Formatting is affected by the flag settings in io.

The basic format is affected by the value of io.flags() & ios_base::floatfield. If equal to ios_base::fixed, formats like the printf f specifier. Else if equal to ios_base::scientific, formats like e or E with ios_base::uppercase unset or set respectively. Otherwise, formats like g or G depending on uppercase. Note that if both fixed and scientific are set, the effect will also be like g or G.

The output precision is given by io.precision(). This precision is capped at numeric_limits::digits10 + 2 (different for double and long double). The default precision is 6.

If ios_base::showpos is set, '+' is output before positive values. If ios_base::showpoint is set, a decimal point will always be output.

Thousands separators are inserted according to numpunct::grouping() and numpunct::thousands_sep(). The decimal point character used is numpunct::decimal_point().

If io.width() is non-zero, enough fill characters are inserted to make the result at least that wide. If (io.flags() & ios_base::adjustfield) == ios_base::left, result is padded at the end. If ios_base::internal, then padding occurs immediately after either a '+' or '-' or after '0x' or '0X'. Otherwise, padding occurs at the beginning.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2402 of file locale_facets.h.

iter_type std::num_put::put ( iter_type  __s,
ios_base __f,
char_type  __fill,
const void *  __v 
) const [inline]

Numeric formatting.

Formats the pointer value v and inserts it into a stream. It does so by calling num_put::do_put().

This function formats v as an unsigned long with ios_base::hex and ios_base::showbase set.

Parameters:
sStream to write to.
ioSource of locale and flags.
fillChar_type to use for filling.
vValue to format and insert.
Returns:
Iterator after writing.

Definition at line 2423 of file locale_facets.h.


Member Data Documentation

Numpunct facet id.

Definition at line 2265 of file locale_facets.h.


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