ReactOS  0.4.14-dev-323-g6fe6a88
money_get< _CharT, _InputIter > Class Template Reference

#include <_facets_fwd.h>

Inheritance diagram for money_get< _CharT, _InputIter >:
Collaboration diagram for money_get< _CharT, _InputIter >:

Public Types

typedef _CharT char_type
 
typedef _InputIter iter_type
 
typedef basic_string< _CharT, char_traits< _CharT >, allocator< _CharT > > string_type
 

Public Member Functions

 money_get (size_t __refs=0)
 
iter_type get (iter_type __s, iter_type __end, bool __intl, ios_base &__str, ios_base::iostate &__err, _STLP_LONGEST_FLOAT_TYPE &__units) const
 
iter_type get (iter_type __s, iter_type __end, bool __intl, ios_base &__str, ios_base::iostate &__err, string_type &__digits) const
 

Static Public Attributes

static locale::id id
 

Protected Member Functions

 ~money_get ()
 
virtual iter_type do_get (iter_type __s, iter_type __end, bool __intl, ios_base &__str, ios_base::iostate &__err, _STLP_LONGEST_FLOAT_TYPE &__units) const
 
virtual iter_type do_get (iter_type __s, iter_type __end, bool __intl, ios_base &__str, ios_base::iostate &__err, string_type &__digits) const
 
- Protected Member Functions inherited from locale::facet
 facet (size_t __init_count=0)
 
virtual ~facet ()
 
- Protected Member Functions inherited from _Refcount_Base
 _Refcount_Base (__stl_atomic_t __n)
 
__stl_atomic_t _M_incr ()
 
__stl_atomic_t _M_decr ()
 

Detailed Description

template<class _CharT, class _InputIter>
class money_get< _CharT, _InputIter >

Definition at line 14 of file _facets_fwd.h.

Member Typedef Documentation

◆ char_type

template<class _CharT, class _InputIter>
typedef _CharT money_get< _CharT, _InputIter >::char_type

Definition at line 56 of file _monetary.h.

◆ iter_type

template<class _CharT, class _InputIter>
typedef _InputIter money_get< _CharT, _InputIter >::iter_type

Definition at line 57 of file _monetary.h.

◆ string_type

template<class _CharT, class _InputIter>
typedef basic_string<_CharT, char_traits<_CharT>, allocator<_CharT> > money_get< _CharT, _InputIter >::string_type

Definition at line 58 of file _monetary.h.

Constructor & Destructor Documentation

◆ money_get()

template<class _CharT, class _InputIter>
money_get< _CharT, _InputIter >::money_get ( size_t  __refs = 0)
inlineexplicit

Definition at line 60 of file _monetary.h.

60 : locale::facet(__refs) {}

◆ ~money_get()

template<class _CharT, class _InputIter>
money_get< _CharT, _InputIter >::~money_get ( )
inlineprotected

Definition at line 73 of file _monetary.h.

73 {}

Member Function Documentation

◆ do_get() [1/2]

template<class _CharT , class _InputIter >
_STLP_MOVE_TO_STD_NAMESPACE _InputIter money_get< _CharT, _InputIter >::do_get ( iter_type  __s,
iter_type  __end,
bool  __intl,
ios_base __str,
ios_base::iostate __err,
_STLP_LONGEST_FLOAT_TYPE __units 
) const
protectedvirtual

Definition at line 279 of file _monetary.c.

281  {
282  string_type __buf;
283  bool __is_positive = true;
284  __s = _STLP_PRIV __money_do_get(__s, __end, __intl, __str, __err, __buf, __is_positive, (_CharT*)0);
285 
286  if (__err == ios_base::goodbit || __err == ios_base::eofbit) {
287  typename string_type::iterator __b = __buf.begin(), __e = __buf.end();
288 
289  if (!__is_positive) ++__b;
290  // Can't use atold, since it might be wchar_t. Don't get confused by name below :
291  // it's perfectly capable of reading long double.
292  _STLP_PRIV __get_decimal_integer(__b, __e, __units, (_CharT*)0);
293 
294  if (!__is_positive) {
295  __units = -__units;
296  }
297  }
298 
299  return __s;
300 }
_InputIter __money_do_get(_InputIter __s, _InputIter __end, bool __intl, ios_base &__str, ios_base::iostate &__err, _StrType &__digits, bool &__is_positive, _CharT *)
Definition: _monetary.c:122
basic_string< _CharT, char_traits< _CharT >, allocator< _CharT > > string_type
Definition: _monetary.h:58
bool _STLP_CALL __get_decimal_integer(_InputIter &__first, _InputIter &__last, _Integer &__val, _CharT *)
Definition: _num_get.c:239
#define _STLP_PRIV
Definition: _dm.h:70
value_type * iterator
Definition: _string.h:143

Referenced by money_get< _CharT, _InputIter >::get().

◆ do_get() [2/2]

template<class _CharT , class _InputIter >
_InputIter money_get< _CharT, _InputIter >::do_get ( iter_type  __s,
iter_type  __end,
bool  __intl,
ios_base __str,
ios_base::iostate __err,
string_type __digits 
) const
protectedvirtual

Definition at line 304 of file _monetary.c.

306  {
307  bool __is_positive = true;
308  return _STLP_PRIV __money_do_get(__s, __end, __intl, __str, __err, __digits, __is_positive, (_CharT*)0);
309 }
_InputIter __money_do_get(_InputIter __s, _InputIter __end, bool __intl, ios_base &__str, ios_base::iostate &__err, _StrType &__digits, bool &__is_positive, _CharT *)
Definition: _monetary.c:122
#define _STLP_PRIV
Definition: _dm.h:70

◆ get() [1/2]

template<class _CharT, class _InputIter>
iter_type money_get< _CharT, _InputIter >::get ( iter_type  __s,
iter_type  __end,
bool  __intl,
ios_base __str,
ios_base::iostate __err,
_STLP_LONGEST_FLOAT_TYPE __units 
) const
inline

Definition at line 61 of file _monetary.h.

64  { return do_get(__s, __end, __intl, __str, __err, __units); }
virtual iter_type do_get(iter_type __s, iter_type __end, bool __intl, ios_base &__str, ios_base::iostate &__err, _STLP_LONGEST_FLOAT_TYPE &__units) const
Definition: _monetary.c:279

Referenced by LocaleTest::_money_put_get2().

◆ get() [2/2]

template<class _CharT, class _InputIter>
iter_type money_get< _CharT, _InputIter >::get ( iter_type  __s,
iter_type  __end,
bool  __intl,
ios_base __str,
ios_base::iostate __err,
string_type __digits 
) const
inline

Definition at line 65 of file _monetary.h.

68  { return do_get(__s, __end, __intl, __str, __err, __digits); }
virtual iter_type do_get(iter_type __s, iter_type __end, bool __intl, ios_base &__str, ios_base::iostate &__err, _STLP_LONGEST_FLOAT_TYPE &__units) const
Definition: _monetary.c:279

Member Data Documentation

◆ id

template<class _CharT, class _InputIter>
_STLP_BEGIN_NAMESPACE locale::id money_get< _CharT, _InputIterator >::id
static

Definition at line 70 of file _monetary.h.


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