177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner/* 277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * Copyright (c) 1999 377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * Silicon Graphics Computer Systems, Inc. 477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * 577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * Copyright (c) 1999 677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * Boris Fomitchev 777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * 877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * This material is provided "as is", with absolutely no warranty expressed 977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * or implied. Any use is at your own risk. 1077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * 1177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * Permission to use or copy this software for any purpose is hereby granted 1277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * without fee, provided the above notices are retained on all copies. 1377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * Permission to modify the code and to distribute modified code is granted, 1477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * provided the above notices are retained, and a notice that the code was 1577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * modified is included with the above copyright notice. 1677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner * 1777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner */ 1877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner// WARNING: This is an internal header file, included by other C++ 1977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner// standard library headers. You should not attempt to use this header 2077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner// file directly. 2177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 2277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 2377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#ifndef _STLP_INTERNAL_NUM_GET_H 2477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#define _STLP_INTERNAL_NUM_GET_H 2577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 2677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#ifndef _STLP_INTERNAL_ISTREAMBUF_ITERATOR_H 2777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# include <stl/_istreambuf_iterator.h> 2877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 2977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 3077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#ifndef _STLP_C_LOCALE_H 3177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# include <stl/c_locale.h> 3277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 3377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 3477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#ifndef _STLP_INTERNAL_NUMPUNCT_H 3577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# include <stl/_numpunct.h> 3677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 3777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 3877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#ifndef _STLP_INTERNAL_CTYPE_H 3977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# include <stl/_ctype.h> 4077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 4177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 4277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#ifndef _STLP_INTERNAL_IOSTREAM_STRING_H 4377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# include <stl/_iostream_string.h> 4477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 4577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 4677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#ifndef _STLP_FACETS_FWD_H 4777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# include <stl/_facets_fwd.h> 4877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 4977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 5077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner_STLP_BEGIN_NAMESPACE 5177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 5277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner//---------------------------------------------------------------------- 5377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner// num_get facets 5477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 5577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnertemplate <class _CharT, class _InputIter> 5677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnerclass num_get: public locale::facet { 5777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnerpublic: 5877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner typedef _CharT char_type; 5977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner typedef _InputIter iter_type; 6077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 6177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner explicit num_get(size_t __refs = 0): locale::facet(__refs) {} 6277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 6377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#if !defined (_STLP_NO_BOOL) 6477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 6577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, bool& __val) const 6677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 6777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 6877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 6977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#if defined (_STLP_FIX_LIBRARY_ISSUES) 7077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 7177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, short& __val) const 7277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 7377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 7477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 7577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, int& __val) const 7677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 7777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 7877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 7977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 8077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, long& __val) const 8177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 8277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 8377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 8477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, unsigned short& __val) const 8577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 8677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 8777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 8877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, unsigned int& __val) const 8977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 9077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 9177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 9277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, unsigned long& __val) const 9377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 9477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 9577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#if defined (_STLP_LONG_LONG) 9677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 9777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, _STLP_LONG_LONG& __val) const 9877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 9977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 10077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 10177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, unsigned _STLP_LONG_LONG& __val) const 10277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 10377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif /* _STLP_LONG_LONG */ 10477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 10577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 10677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, float& __val) const 10777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 10877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 10977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 11077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, double& __val) const 11177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 11277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 11377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#if !defined (_STLP_NO_LONG_DOUBLE) 11477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 11577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, long double& __val) const 11677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 11777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# endif 11877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 11977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 12077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, void*& __val) const 12177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner { return do_get(__ii, __end, __str, __err, __val); } 12277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 12377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner static locale::id id; 12477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 12577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnerprotected: 12677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ~num_get() {} 12777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 12877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner typedef string string_type; 12977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner typedef ctype<_CharT> _Ctype; 13077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner typedef numpunct<_CharT> _Numpunct; 13177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 13277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#if !defined (_STLP_NO_BOOL) 13377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 13477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, bool& __val) const; 13577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 13677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 13777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 13877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, long& __val) const; 13977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 14077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, unsigned short& __val) const; 14177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 14277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, unsigned int& __val) const; 14377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 14477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, unsigned long& __val) const; 14577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 14677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#if defined (_STLP_FIX_LIBRARY_ISSUES) 14777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner // issue 118 : those are actually not supposed to be here 14877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 14977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, short& __val) const; 15077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 15177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, int& __val) const; 15277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 15377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 15477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 15577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, float& __val) const; 15677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 15777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, double& __val) const; 15877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 15977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, void*& __p) const; 16077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 16177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#if !defined (_STLP_NO_LONG_DOUBLE) 16277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 16377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, long double& __val) const; 16477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 16577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 16677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#if defined (_STLP_LONG_LONG) 16777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 16877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, _STLP_LONG_LONG& __val) const; 16977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 17077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner ios_base::iostate& __err, unsigned _STLP_LONG_LONG& __val) const; 17177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 17277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 17377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner}; 17477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 17577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 17677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#if defined (_STLP_USE_TEMPLATE_EXPORT) 17777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner_STLP_EXPORT_TEMPLATE_CLASS num_get<char, istreambuf_iterator<char, char_traits<char> > >; 17877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner// _STLP_EXPORT_TEMPLATE_CLASS num_get<char, const char*>; 17977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# if !defined (_STLP_NO_WCHAR_T) 18077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner_STLP_EXPORT_TEMPLATE_CLASS num_get<wchar_t, istreambuf_iterator<wchar_t, char_traits<wchar_t> > >; 18177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner// _STLP_EXPORT_TEMPLATE_CLASS num_get<wchar_t, const wchar_t*>; 18277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# endif 18377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 18477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 18577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#if defined (_STLP_EXPOSE_STREAM_IMPLEMENTATION) 18677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 18777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner_STLP_MOVE_TO_PRIV_NAMESPACE 18877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 18977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner_STLP_DECLSPEC bool _STLP_CALL __valid_grouping(const char*, const char*, const char*, const char*); 19077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 19177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnertemplate <class _InputIter, class _Integer, class _CharT> 19277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnerbool _STLP_CALL 19377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner__get_decimal_integer(_InputIter& __first, _InputIter& __last, _Integer& __val, _CharT*); 19477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 19577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# if !defined (_STLP_NO_WCHAR_T) 19677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnerbool _STLP_DECLSPEC _STLP_CALL __get_fdigit(wchar_t&, const wchar_t*); 19777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnerbool _STLP_DECLSPEC _STLP_CALL __get_fdigit_or_sep(wchar_t&, wchar_t, const wchar_t*); 19877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# endif 19977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 20077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnerinline void _STLP_CALL 20177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner_Initialize_get_float(const ctype<char>&, 20277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner char& Plus, char& Minus, 20377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner char& pow_e, char& pow_E, 20477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner char*) { 20577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner Plus = '+'; 20677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner Minus = '-'; 20777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner pow_e = 'e'; 20877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner pow_E = 'E'; 20977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner} 21077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 21177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# if !defined (_STLP_NO_WCHAR_T) 21277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnervoid _STLP_DECLSPEC _STLP_CALL _Initialize_get_float(const ctype<wchar_t>&, 21377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner wchar_t&, wchar_t&, wchar_t&, wchar_t&, wchar_t*); 21477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# endif 21577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnervoid _STLP_DECLSPEC _STLP_CALL __string_to_float(const __iostring&, float&); 21677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnervoid _STLP_DECLSPEC _STLP_CALL __string_to_float(const __iostring&, double&); 21777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# if !defined (_STLP_NO_LONG_DOUBLE) 21877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turnervoid _STLP_DECLSPEC _STLP_CALL __string_to_float(const __iostring&, long double&); 21977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# endif 22077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 22177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner_STLP_MOVE_TO_STD_NAMESPACE 22277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 22377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif /* _STLP_EXPOSE_STREAM_IMPLEMENTATION */ 22477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 22577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 22677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner_STLP_END_NAMESPACE 22777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 22877dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#if defined (_STLP_EXPOSE_STREAM_IMPLEMENTATION) && !defined (_STLP_LINK_TIME_INSTANTIATION) 22977dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner# include <stl/_num_get.c> 23077dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif 23177dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 23277dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner#endif /* _STLP_INTERNAL_NUM_GET_H */ 23377dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 23477dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner// Local Variables: 23577dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner// mode:C++ 23677dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner// End: 23777dc872c5c4ae67e051d1bf7edf96ce36c7b9be2David 'Digit' Turner 238