111
|
1 namespace std
|
|
2 {
|
|
3 template < class _CharT > struct char_traits;
|
|
4 typedef long streamsize;
|
|
5 template < typename _CharT, typename _Traits =
|
|
6 char_traits < _CharT > >class basic_ostream;
|
|
7 template < typename _CharT, typename _Traits =
|
|
8 char_traits < _CharT > >class Trans_NS___cxx11_basic_ostringstream;
|
|
9 template < typename _CharT, typename _Traits =
|
|
10 char_traits < _CharT > >class istreambuf_iterator;
|
|
11 template < typename _CharT, typename _Traits =
|
|
12 char_traits < _CharT > >class ostreambuf_iterator;
|
|
13 }
|
|
14 namespace std
|
|
15 {
|
|
16 template < typename _CharT, typename _InIter =
|
|
17 istreambuf_iterator < _CharT > >class num_get;
|
|
18 template < typename _CharT, typename _OutIter =
|
|
19 ostreambuf_iterator < _CharT > >class num_put;
|
|
20 struct iterator
|
|
21 {
|
|
22 };
|
|
23 }
|
|
24 typedef int _Atomic_word;
|
|
25 namespace std
|
|
26 {
|
|
27 class locale
|
|
28 {
|
|
29 public:class facet;
|
|
30 class _Impl;
|
|
31 template < typename _Facet > locale ( const locale & __other,
|
|
32 _Facet * __f );
|
|
33 private: _Impl * _M_impl;
|
|
34 };
|
|
35 class locale::facet
|
|
36 {
|
|
37 mutable _Atomic_word _M_refcount;
|
|
38 protected: explicit facet ( void ) throw ( );
|
|
39 virtual ~ facet ( );
|
|
40 };
|
|
41 enum _Ios_Fmtflags
|
|
42 {
|
|
43 _S_boolalpha = 1 << 0, _S_dec, _S_fixed = 1 << 2, _S_hex =
|
|
44 1 << 3, _S_internal = 1 << 4, _S_left = 1 << 5, _S_oct =
|
|
45 1 << 6, _S_right = 1 << 7, _S_scientific = 1 << 8, _S_showbase =
|
|
46 1 << 9, _S_showpoint = 1 << 10, _S_showpos = 1 << 11, _S_skipws =
|
|
47 1 << 12, _S_unitbuf = 1 << 13, _S_uppercase = 1 << 14, _S_adjustfield =
|
|
48 _S_left | _S_right | _S_internal, _S_basefield =
|
|
49 _S_dec | _S_oct | _S_hex, _S_floatfield =
|
|
50 _S_scientific | _S_fixed, _S_ios_fmtflags_end = 1 << 16
|
|
51 };
|
|
52 enum _Ios_Openmode
|
|
53 {
|
|
54 _S_out
|
|
55 };
|
|
56 enum _Ios_Iostate
|
|
57 {
|
|
58 _S_goodbit, _S_badbit, _S_eofbit, _S_failbit =
|
|
59 1 << 2, _S_ios_iostate_end = 1 << 16
|
|
60 };
|
|
61 class ios_base
|
|
62 {
|
|
63 public:typedef _Ios_Fmtflags fmtflags;
|
|
64 typedef _Ios_Iostate iostate;
|
|
65 protected: streamsize _M_precision;
|
|
66 streamsize _M_width;
|
|
67 fmtflags _M_flags;
|
|
68 iostate _M_exception;
|
|
69 iostate _M_streambuf_state;
|
|
70 struct _Callback_list;
|
|
71 _Callback_list *_M_callbacks;
|
|
72 struct _Words
|
|
73 {
|
|
74 void *_M_pword;
|
|
75 long _M_iword;
|
|
76 };
|
|
77 _Words _M_word_zero;
|
|
78 enum
|
|
79 {
|
|
80 _S_local_word_size = 8
|
|
81 };
|
|
82 _Words _M_local_word[_S_local_word_size];
|
|
83 int _M_word_size;
|
|
84 _Words *_M_word;
|
|
85 locale _M_ios_locale;
|
|
86 virtual ~ ios_base ( );
|
|
87 };
|
|
88 template < typename _CharT, typename _Traits > class basic_streambuf;
|
|
89 template < typename _CharT, typename _Traits > class ostreambuf_iterator:public
|
|
90 iterator
|
|
91 {
|
|
92 typedef basic_ostream < wchar_t, _Traits > ostream_type;
|
|
93 };
|
|
94 class __ctype_abstract_base:public locale::facet
|
|
95 {
|
|
96 };
|
|
97 template < typename _CharT > class ctype:public __ctype_abstract_base
|
|
98 {
|
|
99 };
|
|
100 class Trans_NS___cxx11_numpunct:public locale::facet
|
|
101 {
|
|
102 };
|
|
103 template < typename _CharT, typename _InIter > class num_get:public locale::
|
|
104 facet
|
|
105 {
|
|
106 };
|
|
107 template < typename _CharT, typename _OutIter > class num_put:public locale::
|
|
108 facet
|
|
109 {
|
|
110 public:typedef int char_type;
|
|
111 typedef std::ostreambuf_iterator < wchar_t,
|
|
112 std::char_traits < wchar_t > >iter_type;
|
|
113 };
|
|
114 template < typename _CharT, typename _Traits > class basic_ios:public
|
|
115 ios_base
|
|
116 {
|
|
117 public:typedef wchar_t char_type;
|
|
118 typedef num_get < wchar_t, istreambuf_iterator < wchar_t,
|
|
119 _Traits > >__num_get_type;
|
|
120 protected:basic_ostream < wchar_t, _Traits > *_M_tie;
|
|
121 mutable char_type _M_fill;
|
|
122 mutable bool _M_fill_init;
|
|
123 basic_streambuf < wchar_t, _Traits > *_M_streambuf;
|
|
124 const ctype < wchar_t > *_M_ctype;
|
|
125 const num_put < wchar_t, ostreambuf_iterator < wchar_t,
|
|
126 _Traits > >*_M_num_put;
|
|
127 const __num_get_type *_M_num_get;
|
|
128 };
|
|
129 template < typename _CharT, typename _Traits > class basic_ostream:virtual public basic_ios < wchar_t,
|
|
130 _Traits
|
|
131 >
|
|
132 {
|
|
133 };
|
|
134 }
|
|
135 typedef enum
|
|
136 {
|
|
137 posix
|
|
138 }
|
|
139 value_type;
|
|
140 static const unsigned int wchar_t_facet = 1 << 1;
|
|
141 class shared_ptr
|
|
142 {
|
|
143 };
|
|
144 namespace std
|
|
145 {
|
|
146 template < typename _CharT, typename _Traits > class Trans_NS___cxx11_basic_ostringstream:public basic_ostream < wchar_t,
|
|
147 _Traits
|
|
148 >
|
|
149 {
|
|
150 public:explicit Trans_NS___cxx11_basic_ostringstream ( void );
|
|
151 };
|
|
152 }
|
|
153 class base_num_format:public
|
|
154 std::num_put <
|
|
155 wchar_t >
|
|
156 {
|
|
157 public:typedef typename
|
|
158 std::num_put <
|
|
159 wchar_t >::iter_type
|
|
160 iter_type;
|
|
161 typedef wchar_t
|
|
162 char_type;
|
|
163 base_num_format ( unsigned long refs = 0 );
|
|
164 iter_type
|
|
165 do_put_out;
|
|
166 std::ios_base &
|
|
167 do_put_ios;
|
|
168 char_type
|
|
169 do_put_fill;
|
|
170 unsigned long long
|
|
171 do_put_val;
|
|
172 virtual iter_type
|
|
173 do_put ( void ) const
|
|
174 {
|
|
175 return
|
|
176 do_real_put ( do_put_out, do_put_ios, do_put_fill, do_put_val );
|
|
177 }
|
|
178 private:template <
|
|
179 typename
|
|
180 ValueType >
|
|
181 iter_type
|
|
182 do_real_put ( iter_type out, std::ios_base & ios, char_type fill,
|
|
183 ValueType val ) const
|
|
184 {
|
|
185 switch ( 0 )
|
|
186 case posix:
|
|
187 {
|
|
188 typedef
|
|
189 std::Trans_NS___cxx11_basic_ostringstream <
|
|
190 char_type >
|
|
191 sstream_type;
|
|
192 sstream_type
|
|
193 ss;
|
|
194 }
|
|
195 }
|
|
196 };
|
|
197 class
|
|
198 base_num_parse:
|
|
199 public
|
|
200 std::num_get <
|
|
201 wchar_t >
|
|
202 {
|
|
203 private:};
|
|
204 class
|
|
205 num_format:
|
|
206 public
|
|
207 base_num_format
|
|
208 {
|
|
209 public:typedef wchar_t
|
|
210 iter_type;
|
|
211 num_format ( shared_ptr lc, unsigned long refs = 0 )
|
|
212 {
|
|
213 }
|
|
214 };
|
|
215 class
|
|
216 num_punct_posix:
|
|
217 public
|
|
218 std::Trans_NS___cxx11_numpunct
|
|
219 {
|
|
220 };
|
|
221 template < typename CharType >
|
|
222 std::locale create_formatting_impl ( std::locale const &in, shared_ptr lc )
|
|
223 {
|
|
224 std::locale tmp = std::locale ( tmp, new num_format ( lc ) );
|
|
225 }
|
|
226 shared_ptr create_formatting_lc;
|
|
227 unsigned int create_formatting_type;
|
|
228 void
|
|
229 create_formatting ( std::locale const &in )
|
|
230 {
|
|
231 switch ( create_formatting_type )
|
|
232 case wchar_t_facet:
|
|
233 create_formatting_impl < wchar_t > ( in, create_formatting_lc );
|
|
234 }
|