790         const string _Grouping = _Ppunct_fac->grouping();
 
  791         int _Ifracdigits = _Ppunct_fac->frac_digits();
 
  792         unsigned int _Fracdigits = _Ifracdigits < 0 ? -_Ifracdigits
 
  795         if (
_Val.size() <= _Fracdigits)
 
  796             _Val.insert((
size_t)0, _Fracdigits - 
_Val.size() + 1, _E0);
 
  797         else if (*_Grouping.c_str() != 
CHAR_MAX && 
'\0' < *_Grouping.c_str())
 
  799             const _Elem _Kseparator = _Ppunct_fac->thousands_sep();
 
  800             const char *_Pg = _Grouping.c_str();
 
  801             size_t _Off = 
_Val.size() - _Fracdigits;    
 
  803             while (*_Pg != 
CHAR_MAX && 
'\0' < *_Pg
 
  804                 && (
size_t)*_Pg < _Off)
 
  806                 _Val.insert(_Off -= *_Pg, (
size_t)1, _Kseparator);
 
  816             _Pattern = _Ppunct_fac->neg_format();
 
  817             _Sign = _Ppunct_fac->negative_sign();
 
  821             _Pattern = _Ppunct_fac->pos_format();
 
  822             _Sign = _Ppunct_fac->positive_sign();
 
  827             _Symbol = _Ppunct_fac->curr_symbol();   
 
  829         bool _Intern = 
false;
 
  830         size_t _Fillcount, _Off;
 
  831         for (_Fillcount = 0, _Off = 0; _Off < 4; ++_Off)
 
  832             switch (_Pattern.
field[_Off])
 
  835                 _Fillcount += _Symbol.size();
 
  839                 _Fillcount += _Sign.size();
 
  843                 _Fillcount += 
_Val.size() + (0 < _Fracdigits ? 1 : 0)
 
  844                     + (
_Val.size() <= _Fracdigits
 
  845                         ? _Fracdigits - 
_Val.size() + 1 : 0);
 
  858         _Fillcount = _Iosbase.
width() <= 0
 
  862         ios_base::fmtflags _Afl =
 
  871         for (_Off = 0; _Off < 4; ++_Off)
 
  872             switch (_Pattern.
field[_Off])
 
  879                 if (0 < _Sign.size())
 
  884                 if (_Fracdigits == 0)
 
  887                 else if (
_Val.size() <= _Fracdigits)
 
  890                     *
_Dest++ = _Ppunct_fac->decimal_point();
 
  892                         _Fracdigits - 
_Val.size()); 
 
  898                         _Val.size() - _Fracdigits); 
 
  899                     *_Dest++ = _Ppunct_fac->decimal_point();
 
  900                     _Dest = 
_Put(_Dest, 
_Val.end() - _Fracdigits,
 
  906                 _Dest = 
_Rep(_Dest, _Fill, 1);
 
  912                     _Dest = 
_Rep(_Dest, _Fill, _Fillcount);
 
  917         if (1 < _Sign.size())
 
  918             _Dest = 
_Put(_Dest, _Sign.begin() + 1,
 
  921         return (
_Rep(_Dest, _Fill, _Fillcount));    
 
moneypunct< _Elem, true > _Mypunct1
Definition: xlocmon:657
 
unsigned _Dest
Definition: mbstring.h:107
 
unsigned int size_t
Definition: sourceannotations.h:19
 
#define _USE(loc, fac)
Definition: xlocale:499
 
static _OutIt _Put(_OutIt _Dest, typename string_type::const_iterator _Source, size_t _Count)
Definition: xlocmon:924
 
locale __CLR_OR_THIS_CALL getloc() const 
Definition: xiosbase:432
 
fmtflags __CLR_OR_THIS_CALL flags() const 
Definition: xiosbase:375
 
static _OutIt _Rep(_OutIt _Dest, _Elem _Ch, size_t _Count)
Definition: xlocmon:932
 
streamsize __CLR_OR_THIS_CALL width() const 
Definition: xiosbase:420
 
static constexpr _Fmtflags showbase
Definition: xiosbase:58
 
static constexpr _Fmtflags internal
Definition: xiosbase:63
 
moneypunct< _Elem, false > _Mypunct0
Definition: xlocmon:656
 
char field[4]
Definition: xlocmon:28
 
#define CHAR_MAX
Definition: limits.h:24
 
basic_string< _Elem, char_traits< _Elem >, allocator< _Elem > > string_type
Definition: xlocmon:663
 
_FwdIt const _Ty _Val
Definition: algorithm:1938
 
static constexpr _Fmtflags adjustfield
Definition: xiosbase:75
 
static constexpr _Fmtflags left
Definition: xiosbase:61