std::moneypunct(3)
NAME
std::moneypunct
SYNOPSIS
Inherits std::locale::facet, and std::money_base. Inherited by std::moneypunct_byname< _CharT, _Intl >.
Detailed Description
- template<typename _CharT, bool _Intl> class std::moneypunct< _CharT, _Intl
- >
Facet for formatting data for money amounts. - This facet encapsulates the punctuation, grouping and other formatting features of money amount string representations.
- Definition at line 924 of file locale_facets_nonio.h.
- Public Types
- enum { _S_minus, _S_zero, _S_end }
typedef __moneypunct_cache< _CharT, _Intl > __cache_type
enum part { none, space, symbol, sign, value }
typedef _CharT char_type
typedef basic_string< _CharT > string_type - Public Member Functions
- template<> void _M_initialize_moneypunct (__c_locale, const char *)
template<> void _M_initialize_moneypunct (__c_locale, const char *)
template<> void _M_initialize_moneypunct (__c_locale, const char *)
template<> void _M_initialize_moneypunct (__c_locale, const char *)
string_type curr_symbol () const
char_type decimal_point () const
int frac_digits () const
string grouping () const
moneypunct (__c_locale __cloc, const char *__s, size_t __refs=0) moneypunct (__cache_type *__cache, size_t __refs=0) moneypunct (size_t __refs=0)
string_type negative_sign () const string_type positive_sign () const char_type thousands_sep () const
pattern neg_format () const
pattern pos_format () const - Static Public Member Functions
- static pattern _S_construct_pattern (char __precedes, char __space,
char __posn)
- Static Public Attributes
- static const char * _S_atoms
static const pattern _S_default_pattern static locale::id id
static const bool intl - Protected Member Functions
- void _M_initialize_moneypunct (__c_locale __cloc=NULL, const char
*__name=NULL)
- virtual string_type do_curr_symbol () const
virtual char_type do_decimal_point () const
virtual int do_frac_digits () const
virtual string do_grouping () const
virtual pattern do_neg_format () const
virtual string_type do_negative_sign () const virtual pattern do_pos_format () const
virtual string_type do_positive_sign () const virtual char_type do_thousands_sep () const virtual ~moneypunct () - Static Protected Member Functions
- static __c_locale _S_clone_c_locale (__c_locale &__cloc)
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 () - Friends
- class locale::_Impl
Member Typedef Documentation
- template<typename _CharT, bool _Intl> typedef _CharT std::moneypunct<
- _CharT, _Intl >::char_type Public typedefs.
- Reimplemented in std::moneypunct_byname< _CharT, _Intl >.
- Definition at line 930 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> typedef basic_string<_CharT>
- std::moneypunct< _CharT, _Intl >::string_type Public typedefs.
- Reimplemented in std::moneypunct_byname< _CharT, _Intl >.
- Definition at line 931 of file locale_facets_nonio.h.
Constructor & Destructor Documentation
- template<typename _CharT, bool _Intl> std::moneypunct< _CharT, _Intl
- >::moneypunct (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 953 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> std::moneypunct< _CharT, _Intl
- >::moneypunct (__cache_type * __cache, size_t __refs = 0) [inline,
explicit]
Constructor performs initialization. - This is an internal constructor.
- Parameters:
cache Cache for optimization.
refs Passed to the base facet class. - Definition at line 965 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> std::moneypunct< _CharT, _Intl
- >::moneypunct (__c_locale __cloc, const char * __s, size_t __refs = 0)
[inline, explicit]
Internal constructor. Not for general use. - This is a constructor for use by the library itself to set up new locales.
- Parameters:
cloc The 'C' locale.
s The name of a locale.
refs Passed to the base facet class. - Definition at line 980 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> virtual std::moneypunct< _CharT,
- _Intl >::~moneypunct () [protected, virtual] Destructor.
Member Function Documentation
- template<typename _CharT, bool _Intl> string_type std::moneypunct< _CharT,
- _Intl >::curr_symbol () const [inline] Return currency symbol string.
- This function returns a string_type to use as a currency symbol. It
does so by returning returning moneypunct<char_type>::do_curr_symbol(). - Returns:
string_type representing a currency symbol.
- Definition at line 1049 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> char_type std::moneypunct< _CharT,
- _Intl >::decimal_point () const [inline] Return decimal point character.
- This function returns a char_type to use as a decimal point. It does so by returning returning moneypunct<char_type>::do_decimal_point().
- Returns:
char_type representing a decimal point.
- Definition at line 994 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> virtual string_type std::moneypunct<
- _CharT, _Intl >::do_curr_symbol () const [inline, protected, virtual] Return currency symbol string.
- This function returns a string_type to use as a currency symbol. This
function is a hook for derived classes to change the value returned. - See also:
curr_symbol() for details.
- Returns:
string_type representing a currency symbol.
- Definition at line 1194 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> virtual char_type std::moneypunct<
- _CharT, _Intl >::do_decimal_point () const [inline, protected, virtual] Return decimal point character.
- Returns a char_type to use as a decimal point. This function is a hook for derived classes to change the value returned.
- Returns:
char_type representing a decimal point.
- Definition at line 1156 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> virtual int std::moneypunct< _CharT,
- _Intl >::do_frac_digits () const [inline, protected, virtual] Return number of digits in fraction.
- This function returns the exact number of digits that make up the
fractional part of a money amount. This function is a hook for derived classes to change the value returned. - See also:
frac_digits() for details.
- Returns:
Number of digits in amount fraction.
- Definition at line 1234 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> virtual string std::moneypunct<
- _CharT, _Intl >::do_grouping () const [inline, protected, virtual] Return grouping specification.
- Returns a string representing groupings for the integer part of a
number. This function is a hook for derived classes to change the value returned. - See also:
grouping() for details.
- Returns:
String representing grouping specification.
- Definition at line 1181 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> virtual pattern std::moneypunct<
- _CharT, _Intl >::do_neg_format () const [inline, protected, virtual] Return pattern for money values.
- This function returns a pattern describing the formatting of a negative
valued money amount. This function is a hook for derived classes to
change the value returned. - See also:
neg_format() for details.
- Returns:
Pattern for money values.
- Definition at line 1262 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> virtual string_type std::moneypunct<
- _CharT, _Intl >::do_negative_sign () const [inline, protected, virtual] Return negative sign string.
- This function returns a string_type to use as a sign for negative
amounts. This function is a hook for derived classes to change the
value returned. - See also:
negative_sign() for details.
- Returns:
string_type representing a negative sign.
- Definition at line 1220 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> virtual pattern std::moneypunct<
- _CharT, _Intl >::do_pos_format () const [inline, protected, virtual] Return pattern for money values.
- This function returns a pattern describing the formatting of a positive
valued money amount. This function is a hook for derived classes to
change the value returned. - See also:
pos_format() for details.
- Returns:
Pattern for money values.
- Definition at line 1248 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> virtual string_type std::moneypunct<
- _CharT, _Intl >::do_positive_sign () const [inline, protected, virtual] Return positive sign string.
- This function returns a string_type to use as a sign for positive
amounts. This function is a hook for derived classes to change the
value returned. - See also:
positive_sign() for details.
- Returns:
string_type representing a positive sign.
- Definition at line 1207 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> virtual char_type std::moneypunct<
- _CharT, _Intl >::do_thousands_sep () const [inline, protected, virtual] Return thousands separator character.
- Returns a char_type to use as a thousands separator. This function is a hook for derived classes to change the value returned.
- Returns:
char_type representing a thousands separator.
- Definition at line 1168 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> int std::moneypunct< _CharT, _Intl
- >::frac_digits () const [inline] Return number of digits in fraction.
- This function returns the exact number of digits that make up the
fractional part of a money amount. It does so by returning returning
moneypunct<char_type>::do_frac_digits(). - The fractional part of a money amount is optional. But if it is
present, there must be frac_digits() digits. - Returns:
Number of digits in amount fraction.
- Definition at line 1099 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> string std::moneypunct< _CharT, _Intl
- >::grouping () const [inline] Return grouping specification.
- This function returns a string representing groupings for the integer
part of an amount. Groupings indicate where thousands separators should be inserted. - Each char in the return string is interpret as an integer rather than a
character. These numbers represent the number of digits in a group. The
first char in the string represents the number of digits in the least
significant group. If a char is negative, it indicates an unlimited
number of digits for the group. If more chars from the string are
required to group a number, the last char is used repeatedly. - For example, if the grouping() returns '\003\002' and is applied to the
number 123456789, this corresponds to 12,34,56,789. Note that if the
string was '32', this would put more than 50 digits into the least
significant group if the character set is ASCII. - The string is returned by calling moneypunct<char_type>::do_grouping().
- Returns:
string representing grouping specification.
- Definition at line 1036 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> pattern std::moneypunct< _CharT,
- _Intl >::neg_format () const [inline] Return pattern for money values.
- This function returns a pattern describing the formatting of a positive
or negative valued money amount. It does so by returning returning
moneypunct<char_type>::do_pos_format() or moneypunct<char_type>::do_neg_format(). - The pattern has 4 fields describing the ordering of symbol, sign,
value, and none or space. There must be one of each in the pattern. The none and space enums may not appear in the first field and space may
not appear in the final field. - The parts of a money string must appear in the order indicated by the
fields of the pattern. The symbol field indicates that the value of
curr_symbol() may be present. The sign field indicates that the value of positive_sign() or negative_sign() must be present. The value field indicates that the absolute value of the money amount is present. none indicates 0 or more whitespace characters, except at the end, where it permits no whitespace. space indicates that 1 or more whitespace
characters must be present. - For example, for the US locale and pos_format() pattern {symbol,sign,value,none}, curr_symbol() == '$' positive_sign() == '+', and value 10.01, and options set to force the symbol, the corresponding string is '$+10.01'.
- Returns:
Pattern for money values.
- Definition at line 1138 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> string_type std::moneypunct< _CharT,
- _Intl >::negative_sign () const [inline] Return negative sign string.
- This function returns a string_type to use as a sign for negative
amounts. It does so by returning returning
moneypunct<char_type>::do_negative_sign(). - If the return value contains more than one character, the first
character appears in the position indicated by neg_format() and the remainder appear at the end of the formatted string. - Returns:
string_type representing a negative sign.
- Definition at line 1083 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> pattern std::moneypunct< _CharT,
- _Intl >::pos_format () const [inline] Return pattern for money values.
- This function returns a pattern describing the formatting of a positive
or negative valued money amount. It does so by returning returning
moneypunct<char_type>::do_pos_format() or moneypunct<char_type>::do_neg_format(). - The pattern has 4 fields describing the ordering of symbol, sign,
value, and none or space. There must be one of each in the pattern. The none and space enums may not appear in the first field and space may
not appear in the final field. - The parts of a money string must appear in the order indicated by the
fields of the pattern. The symbol field indicates that the value of
curr_symbol() may be present. The sign field indicates that the value of positive_sign() or negative_sign() must be present. The value field indicates that the absolute value of the money amount is present. none indicates 0 or more whitespace characters, except at the end, where it permits no whitespace. space indicates that 1 or more whitespace
characters must be present. - For example, for the US locale and pos_format() pattern {symbol,sign,value,none}, curr_symbol() == '$' positive_sign() == '+', and value 10.01, and options set to force the symbol, the corresponding string is '$+10.01'.
- Returns:
Pattern for money values.
- Definition at line 1134 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> string_type std::moneypunct< _CharT,
- _Intl >::positive_sign () const [inline] Return positive sign string.
- This function returns a string_type to use as a sign for positive
amounts. It does so by returning returning
moneypunct<char_type>::do_positive_sign(). - If the return value contains more than one character, the first
character appears in the position indicated by pos_format() and the remainder appear at the end of the formatted string. - Returns:
string_type representing a positive sign.
- Definition at line 1066 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> char_type std::moneypunct< _CharT,
- _Intl >::thousands_sep () const [inline] Return thousands separator character.
- This function returns a char_type to use as a thousands separator. It
does so by returning returning
moneypunct<char_type>::do_thousands_sep(). - Returns:
char_type representing a thousands separator.
- Definition at line 1007 of file locale_facets_nonio.h.
Member Data Documentation
- template<typename _CharT, bool _Intl> locale::id std::moneypunct< _CharT,
- _Intl >::id [inline, static] Numpunct facet id.
- Definition at line 943 of file locale_facets_nonio.h.
- template<typename _CharT, bool _Intl> const bool std::moneypunct< _CharT,
- _Intl >::intl [inline, static]
This value is provided by the standard, but no reason for its
existence. - Reimplemented in std::moneypunct_byname< _CharT, _Intl >.
- Definition at line 941 of file locale_facets_nonio.h.
Author
- Generated automatically by Doxygen for libstdc++ from the source code.