19720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block/* 29720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * Copyright (c) 1999 39720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * Silicon Graphics Computer Systems, Inc. 49720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * 59720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * Copyright (c) 1999 69720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * Boris Fomitchev 79720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * 89720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * This material is provided "as is", with absolutely no warranty expressed 99720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * or implied. Any use is at your own risk. 109720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * 119720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * Permission to use or copy this software for any purpose is hereby granted 129720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * without fee, provided the above notices are retained on all copies. 139720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * Permission to modify the code and to distribute modified code is granted, 149720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * provided the above notices are retained, and a notice that the code was 159720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * modified is included with the above copyright notice. 169720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block * 179720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block */ 189720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// WARNING: This is an internal header file, included by other C++ 199720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// standard library headers. You should not attempt to use this header 209720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// file directly. 219720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 229720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 239720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifndef _STLP_INTERNAL_NUM_GET_H 249720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#define _STLP_INTERNAL_NUM_GET_H 259720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 269720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifndef _STLP_INTERNAL_ISTREAMBUF_ITERATOR_H 279720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <stl/_istreambuf_iterator.h> 289720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 299720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 309720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifndef _STLP_C_LOCALE_H 319720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <stl/c_locale.h> 329720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 339720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 349720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifndef _STLP_INTERNAL_NUMPUNCT_H 359720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <stl/_numpunct.h> 369720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 379720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 389720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifndef _STLP_INTERNAL_CTYPE_H 399720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <stl/_ctype.h> 409720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 419720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 429720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#ifndef _STLP_INTERNAL_IOSTREAM_STRING_H 439720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <stl/_iostream_string.h> 449720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 459720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 46e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#ifndef _STLP_FACETS_FWD_H 47e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott# include <stl/_facets_fwd.h> 48e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott#endif 49e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott 509720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block_STLP_BEGIN_NAMESPACE 519720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 529720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block//---------------------------------------------------------------------- 539720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// num_get facets 549720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 559720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blocktemplate <class _CharT, class _InputIter> 569720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blockclass num_get: public locale::facet { 579720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blockpublic: 589720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block typedef _CharT char_type; 599720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block typedef _InputIter iter_type; 609720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 619720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block explicit num_get(size_t __refs = 0): locale::facet(__refs) {} 629720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 639720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if !defined (_STLP_NO_BOOL) 649720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 659720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, bool& __val) const 669720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 679720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 689720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 699720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if defined (_STLP_FIX_LIBRARY_ISSUES) 709720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 719720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, short& __val) const 729720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 739720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 749720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 759720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, int& __val) const 769720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 779720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 789720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 799720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 809720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, long& __val) const 819720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 829720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 839720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 849720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, unsigned short& __val) const 859720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 869720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 879720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 889720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, unsigned int& __val) const 899720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 909720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 919720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 929720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, unsigned long& __val) const 939720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 949720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 959720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if defined (_STLP_LONG_LONG) 969720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 979720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, _STLP_LONG_LONG& __val) const 989720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 999720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1009720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 1019720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, unsigned _STLP_LONG_LONG& __val) const 1029720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 1039720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif /* _STLP_LONG_LONG */ 1049720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1059720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 1069720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, float& __val) const 1079720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 1089720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1099720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 1109720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, double& __val) const 1119720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 1129720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1139720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if !defined (_STLP_NO_LONG_DOUBLE) 1149720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 1159720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, long double& __val) const 1169720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 1179720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# endif 1189720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1199720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block _InputIter get(_InputIter __ii, _InputIter __end, ios_base& __str, 1209720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, void*& __val) const 1219720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block { return do_get(__ii, __end, __str, __err, __val); } 1229720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 123e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott static locale::id id; 1249720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1259720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blockprotected: 1269720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ~num_get() {} 1279720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1289720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block typedef string string_type; 1299720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block typedef ctype<_CharT> _Ctype; 1309720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block typedef numpunct<_CharT> _Numpunct; 1319720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1329720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if !defined (_STLP_NO_BOOL) 1339720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1349720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, bool& __val) const; 1359720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 1369720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1379720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1389720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, long& __val) const; 1399720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1409720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, unsigned short& __val) const; 1419720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1429720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, unsigned int& __val) const; 1439720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1449720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, unsigned long& __val) const; 1459720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1469720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if defined (_STLP_FIX_LIBRARY_ISSUES) 1479720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block // issue 118 : those are actually not supposed to be here 1489720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1499720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, short& __val) const; 1509720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1519720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, int& __val) const; 1529720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 1539720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1549720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1559720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, float& __val) const; 1569720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1579720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, double& __val) const; 1589720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1599720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, void*& __p) const; 1609720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1619720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if !defined (_STLP_NO_LONG_DOUBLE) 1629720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1639720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, long double& __val) const; 1649720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 1659720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1669720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if defined (_STLP_LONG_LONG) 1679720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1689720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, _STLP_LONG_LONG& __val) const; 1699720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block virtual _InputIter do_get(_InputIter __ii, _InputIter __end, ios_base& __str, 1709720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block ios_base::iostate& __err, unsigned _STLP_LONG_LONG& __val) const; 1719720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 1729720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1739720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block}; 1749720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1759720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1769720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if defined (_STLP_USE_TEMPLATE_EXPORT) 1779720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block_STLP_EXPORT_TEMPLATE_CLASS num_get<char, istreambuf_iterator<char, char_traits<char> > >; 1789720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// _STLP_EXPORT_TEMPLATE_CLASS num_get<char, const char*>; 1799720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# if !defined (_STLP_NO_WCHAR_T) 1809720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block_STLP_EXPORT_TEMPLATE_CLASS num_get<wchar_t, istreambuf_iterator<wchar_t, char_traits<wchar_t> > >; 1819720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// _STLP_EXPORT_TEMPLATE_CLASS num_get<wchar_t, const wchar_t*>; 1829720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# endif 1839720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 1849720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1859720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if defined (_STLP_EXPOSE_STREAM_IMPLEMENTATION) 1869720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1879720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block_STLP_MOVE_TO_PRIV_NAMESPACE 1889720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1899720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block_STLP_DECLSPEC bool _STLP_CALL __valid_grouping(const char*, const char*, const char*, const char*); 1909720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1919720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blocktemplate <class _InputIter, class _Integer, class _CharT> 1929720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blockbool _STLP_CALL 1939720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block__get_decimal_integer(_InputIter& __first, _InputIter& __last, _Integer& __val, _CharT*); 1949720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 1959720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# if !defined (_STLP_NO_WCHAR_T) 1969720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blockbool _STLP_DECLSPEC _STLP_CALL __get_fdigit(wchar_t&, const wchar_t*); 1979720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blockbool _STLP_DECLSPEC _STLP_CALL __get_fdigit_or_sep(wchar_t&, wchar_t, const wchar_t*); 1989720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# endif 1999720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 2009720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blockinline void _STLP_CALL 2019720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block_Initialize_get_float(const ctype<char>&, 2029720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block char& Plus, char& Minus, 2039720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block char& pow_e, char& pow_E, 2049720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block char*) { 2059720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block Plus = '+'; 2069720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block Minus = '-'; 2079720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block pow_e = 'e'; 2089720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block pow_E = 'E'; 2099720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block} 2109720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 2119720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# if !defined (_STLP_NO_WCHAR_T) 2129720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blockvoid _STLP_DECLSPEC _STLP_CALL _Initialize_get_float(const ctype<wchar_t>&, 2139720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block wchar_t&, wchar_t&, wchar_t&, wchar_t&, wchar_t*); 2149720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# endif 2159720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blockvoid _STLP_DECLSPEC _STLP_CALL __string_to_float(const __iostring&, float&); 2169720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blockvoid _STLP_DECLSPEC _STLP_CALL __string_to_float(const __iostring&, double&); 2179720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# if !defined (_STLP_NO_LONG_DOUBLE) 2189720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Blockvoid _STLP_DECLSPEC _STLP_CALL __string_to_float(const __iostring&, long double&); 2199720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# endif 2209720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 2219720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block_STLP_MOVE_TO_STD_NAMESPACE 2229720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 2239720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif /* _STLP_EXPOSE_STREAM_IMPLEMENTATION */ 2249720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 225e46c9386c4f79aa40185f79a19fc5b2a7ef528b3Patrick Scott 2269720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block_STLP_END_NAMESPACE 2279720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 2289720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#if defined (_STLP_EXPOSE_STREAM_IMPLEMENTATION) && !defined (_STLP_LINK_TIME_INSTANTIATION) 2299720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block# include <stl/_num_get.c> 2309720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif 2319720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 2329720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block#endif /* _STLP_INTERNAL_NUM_GET_H */ 2339720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 2349720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// Local Variables: 2359720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// mode:C++ 2369720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block// End: 2379720d5f59b9c1f5d1b9ecbc9173dbcb71bd557beSteve Block 238