annotate libcxx/include/iosfwd @ 174:f935e5e0dbe7

merged
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 12:28:41 +0900
parents 1d019706d866
children 2e18cbf3894f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
anatofuz
parents:
diff changeset
1 // -*- C++ -*-
anatofuz
parents:
diff changeset
2 //===--------------------------- iosfwd -----------------------------------===//
anatofuz
parents:
diff changeset
3 //
anatofuz
parents:
diff changeset
4 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
anatofuz
parents:
diff changeset
5 // See https://llvm.org/LICENSE.txt for license information.
anatofuz
parents:
diff changeset
6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
anatofuz
parents:
diff changeset
7 //
anatofuz
parents:
diff changeset
8 //===----------------------------------------------------------------------===//
anatofuz
parents:
diff changeset
9
anatofuz
parents:
diff changeset
10 #ifndef _LIBCPP_IOSFWD
anatofuz
parents:
diff changeset
11 #define _LIBCPP_IOSFWD
anatofuz
parents:
diff changeset
12
anatofuz
parents:
diff changeset
13 /*
anatofuz
parents:
diff changeset
14 iosfwd synopsis
anatofuz
parents:
diff changeset
15
anatofuz
parents:
diff changeset
16 namespace std
anatofuz
parents:
diff changeset
17 {
anatofuz
parents:
diff changeset
18
anatofuz
parents:
diff changeset
19 template<class charT> struct char_traits;
anatofuz
parents:
diff changeset
20 template<> struct char_traits<char>;
anatofuz
parents:
diff changeset
21 template<> struct char_traits<char8_t>; // C++20
anatofuz
parents:
diff changeset
22 template<> struct char_traits<char16_t>;
anatofuz
parents:
diff changeset
23 template<> struct char_traits<char32_t>;
anatofuz
parents:
diff changeset
24 template<> struct char_traits<wchar_t>;
anatofuz
parents:
diff changeset
25
anatofuz
parents:
diff changeset
26 template<class T> class allocator;
anatofuz
parents:
diff changeset
27
anatofuz
parents:
diff changeset
28 class ios_base;
anatofuz
parents:
diff changeset
29 template <class charT, class traits = char_traits<charT> > class basic_ios;
anatofuz
parents:
diff changeset
30
anatofuz
parents:
diff changeset
31 template <class charT, class traits = char_traits<charT> > class basic_streambuf;
anatofuz
parents:
diff changeset
32 template <class charT, class traits = char_traits<charT> > class basic_istream;
anatofuz
parents:
diff changeset
33 template <class charT, class traits = char_traits<charT> > class basic_ostream;
anatofuz
parents:
diff changeset
34 template <class charT, class traits = char_traits<charT> > class basic_iostream;
anatofuz
parents:
diff changeset
35
anatofuz
parents:
diff changeset
36 template <class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >
anatofuz
parents:
diff changeset
37 class basic_stringbuf;
anatofuz
parents:
diff changeset
38 template <class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >
anatofuz
parents:
diff changeset
39 class basic_istringstream;
anatofuz
parents:
diff changeset
40 template <class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >
anatofuz
parents:
diff changeset
41 class basic_ostringstream;
anatofuz
parents:
diff changeset
42 template <class charT, class traits = char_traits<charT>, class Allocator = allocator<charT> >
anatofuz
parents:
diff changeset
43 class basic_stringstream;
anatofuz
parents:
diff changeset
44
anatofuz
parents:
diff changeset
45 template <class charT, class traits = char_traits<charT> > class basic_filebuf;
anatofuz
parents:
diff changeset
46 template <class charT, class traits = char_traits<charT> > class basic_ifstream;
anatofuz
parents:
diff changeset
47 template <class charT, class traits = char_traits<charT> > class basic_ofstream;
anatofuz
parents:
diff changeset
48 template <class charT, class traits = char_traits<charT> > class basic_fstream;
anatofuz
parents:
diff changeset
49
anatofuz
parents:
diff changeset
50 template <class charT, class traits = char_traits<charT> > class istreambuf_iterator;
anatofuz
parents:
diff changeset
51 template <class charT, class traits = char_traits<charT> > class ostreambuf_iterator;
anatofuz
parents:
diff changeset
52
anatofuz
parents:
diff changeset
53 typedef basic_ios<char> ios;
anatofuz
parents:
diff changeset
54 typedef basic_ios<wchar_t> wios;
anatofuz
parents:
diff changeset
55
anatofuz
parents:
diff changeset
56 typedef basic_streambuf<char> streambuf;
anatofuz
parents:
diff changeset
57 typedef basic_istream<char> istream;
anatofuz
parents:
diff changeset
58 typedef basic_ostream<char> ostream;
anatofuz
parents:
diff changeset
59 typedef basic_iostream<char> iostream;
anatofuz
parents:
diff changeset
60
anatofuz
parents:
diff changeset
61 typedef basic_stringbuf<char> stringbuf;
anatofuz
parents:
diff changeset
62 typedef basic_istringstream<char> istringstream;
anatofuz
parents:
diff changeset
63 typedef basic_ostringstream<char> ostringstream;
anatofuz
parents:
diff changeset
64 typedef basic_stringstream<char> stringstream;
anatofuz
parents:
diff changeset
65
anatofuz
parents:
diff changeset
66 typedef basic_filebuf<char> filebuf;
anatofuz
parents:
diff changeset
67 typedef basic_ifstream<char> ifstream;
anatofuz
parents:
diff changeset
68 typedef basic_ofstream<char> ofstream;
anatofuz
parents:
diff changeset
69 typedef basic_fstream<char> fstream;
anatofuz
parents:
diff changeset
70
anatofuz
parents:
diff changeset
71 typedef basic_streambuf<wchar_t> wstreambuf;
anatofuz
parents:
diff changeset
72 typedef basic_istream<wchar_t> wistream;
anatofuz
parents:
diff changeset
73 typedef basic_ostream<wchar_t> wostream;
anatofuz
parents:
diff changeset
74 typedef basic_iostream<wchar_t> wiostream;
anatofuz
parents:
diff changeset
75
anatofuz
parents:
diff changeset
76 typedef basic_stringbuf<wchar_t> wstringbuf;
anatofuz
parents:
diff changeset
77 typedef basic_istringstream<wchar_t> wistringstream;
anatofuz
parents:
diff changeset
78 typedef basic_ostringstream<wchar_t> wostringstream;
anatofuz
parents:
diff changeset
79 typedef basic_stringstream<wchar_t> wstringstream;
anatofuz
parents:
diff changeset
80
anatofuz
parents:
diff changeset
81 typedef basic_filebuf<wchar_t> wfilebuf;
anatofuz
parents:
diff changeset
82 typedef basic_ifstream<wchar_t> wifstream;
anatofuz
parents:
diff changeset
83 typedef basic_ofstream<wchar_t> wofstream;
anatofuz
parents:
diff changeset
84 typedef basic_fstream<wchar_t> wfstream;
anatofuz
parents:
diff changeset
85
anatofuz
parents:
diff changeset
86 template <class state> class fpos;
anatofuz
parents:
diff changeset
87 typedef fpos<char_traits<char>::state_type> streampos;
anatofuz
parents:
diff changeset
88 typedef fpos<char_traits<wchar_t>::state_type> wstreampos;
anatofuz
parents:
diff changeset
89
anatofuz
parents:
diff changeset
90 } // std
anatofuz
parents:
diff changeset
91
anatofuz
parents:
diff changeset
92 */
anatofuz
parents:
diff changeset
93
anatofuz
parents:
diff changeset
94 #include <__config>
anatofuz
parents:
diff changeset
95 #include <wchar.h> // for mbstate_t
anatofuz
parents:
diff changeset
96
anatofuz
parents:
diff changeset
97 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
anatofuz
parents:
diff changeset
98 #pragma GCC system_header
anatofuz
parents:
diff changeset
99 #endif
anatofuz
parents:
diff changeset
100
anatofuz
parents:
diff changeset
101 _LIBCPP_BEGIN_NAMESPACE_STD
anatofuz
parents:
diff changeset
102
anatofuz
parents:
diff changeset
103 class _LIBCPP_TYPE_VIS ios_base;
anatofuz
parents:
diff changeset
104
anatofuz
parents:
diff changeset
105 template<class _CharT> struct _LIBCPP_TEMPLATE_VIS char_traits;
anatofuz
parents:
diff changeset
106 template<> struct char_traits<char>;
anatofuz
parents:
diff changeset
107 #ifndef _LIBCPP_NO_HAS_CHAR8_T
anatofuz
parents:
diff changeset
108 template<> struct char_traits<char8_t>;
anatofuz
parents:
diff changeset
109 #endif
anatofuz
parents:
diff changeset
110 template<> struct char_traits<char16_t>;
anatofuz
parents:
diff changeset
111 template<> struct char_traits<char32_t>;
anatofuz
parents:
diff changeset
112 template<> struct char_traits<wchar_t>;
anatofuz
parents:
diff changeset
113
anatofuz
parents:
diff changeset
114 template<class _Tp> class _LIBCPP_TEMPLATE_VIS allocator;
anatofuz
parents:
diff changeset
115
anatofuz
parents:
diff changeset
116 template <class _CharT, class _Traits = char_traits<_CharT> >
anatofuz
parents:
diff changeset
117 class _LIBCPP_TEMPLATE_VIS basic_ios;
anatofuz
parents:
diff changeset
118
anatofuz
parents:
diff changeset
119 template <class _CharT, class _Traits = char_traits<_CharT> >
anatofuz
parents:
diff changeset
120 class _LIBCPP_TEMPLATE_VIS basic_streambuf;
anatofuz
parents:
diff changeset
121 template <class _CharT, class _Traits = char_traits<_CharT> >
anatofuz
parents:
diff changeset
122 class _LIBCPP_TEMPLATE_VIS basic_istream;
anatofuz
parents:
diff changeset
123 template <class _CharT, class _Traits = char_traits<_CharT> >
anatofuz
parents:
diff changeset
124 class _LIBCPP_TEMPLATE_VIS basic_ostream;
anatofuz
parents:
diff changeset
125 template <class _CharT, class _Traits = char_traits<_CharT> >
anatofuz
parents:
diff changeset
126 class _LIBCPP_TEMPLATE_VIS basic_iostream;
anatofuz
parents:
diff changeset
127
anatofuz
parents:
diff changeset
128 template <class _CharT, class _Traits = char_traits<_CharT>,
anatofuz
parents:
diff changeset
129 class _Allocator = allocator<_CharT> >
anatofuz
parents:
diff changeset
130 class _LIBCPP_TEMPLATE_VIS basic_stringbuf;
anatofuz
parents:
diff changeset
131 template <class _CharT, class _Traits = char_traits<_CharT>,
anatofuz
parents:
diff changeset
132 class _Allocator = allocator<_CharT> >
anatofuz
parents:
diff changeset
133 class _LIBCPP_TEMPLATE_VIS basic_istringstream;
anatofuz
parents:
diff changeset
134 template <class _CharT, class _Traits = char_traits<_CharT>,
anatofuz
parents:
diff changeset
135 class _Allocator = allocator<_CharT> >
anatofuz
parents:
diff changeset
136 class _LIBCPP_TEMPLATE_VIS basic_ostringstream;
anatofuz
parents:
diff changeset
137 template <class _CharT, class _Traits = char_traits<_CharT>,
anatofuz
parents:
diff changeset
138 class _Allocator = allocator<_CharT> >
anatofuz
parents:
diff changeset
139 class _LIBCPP_TEMPLATE_VIS basic_stringstream;
anatofuz
parents:
diff changeset
140
anatofuz
parents:
diff changeset
141 template <class _CharT, class _Traits = char_traits<_CharT> >
anatofuz
parents:
diff changeset
142 class _LIBCPP_TEMPLATE_VIS basic_filebuf;
anatofuz
parents:
diff changeset
143 template <class _CharT, class _Traits = char_traits<_CharT> >
anatofuz
parents:
diff changeset
144 class _LIBCPP_TEMPLATE_VIS basic_ifstream;
anatofuz
parents:
diff changeset
145 template <class _CharT, class _Traits = char_traits<_CharT> >
anatofuz
parents:
diff changeset
146 class _LIBCPP_TEMPLATE_VIS basic_ofstream;
anatofuz
parents:
diff changeset
147 template <class _CharT, class _Traits = char_traits<_CharT> >
anatofuz
parents:
diff changeset
148 class _LIBCPP_TEMPLATE_VIS basic_fstream;
anatofuz
parents:
diff changeset
149
anatofuz
parents:
diff changeset
150 template <class _CharT, class _Traits = char_traits<_CharT> >
anatofuz
parents:
diff changeset
151 class _LIBCPP_TEMPLATE_VIS istreambuf_iterator;
anatofuz
parents:
diff changeset
152 template <class _CharT, class _Traits = char_traits<_CharT> >
anatofuz
parents:
diff changeset
153 class _LIBCPP_TEMPLATE_VIS ostreambuf_iterator;
anatofuz
parents:
diff changeset
154
anatofuz
parents:
diff changeset
155 typedef basic_ios<char> ios;
anatofuz
parents:
diff changeset
156 typedef basic_ios<wchar_t> wios;
anatofuz
parents:
diff changeset
157
anatofuz
parents:
diff changeset
158 typedef basic_streambuf<char> streambuf;
anatofuz
parents:
diff changeset
159 typedef basic_istream<char> istream;
anatofuz
parents:
diff changeset
160 typedef basic_ostream<char> ostream;
anatofuz
parents:
diff changeset
161 typedef basic_iostream<char> iostream;
anatofuz
parents:
diff changeset
162
anatofuz
parents:
diff changeset
163 typedef basic_stringbuf<char> stringbuf;
anatofuz
parents:
diff changeset
164 typedef basic_istringstream<char> istringstream;
anatofuz
parents:
diff changeset
165 typedef basic_ostringstream<char> ostringstream;
anatofuz
parents:
diff changeset
166 typedef basic_stringstream<char> stringstream;
anatofuz
parents:
diff changeset
167
anatofuz
parents:
diff changeset
168 typedef basic_filebuf<char> filebuf;
anatofuz
parents:
diff changeset
169 typedef basic_ifstream<char> ifstream;
anatofuz
parents:
diff changeset
170 typedef basic_ofstream<char> ofstream;
anatofuz
parents:
diff changeset
171 typedef basic_fstream<char> fstream;
anatofuz
parents:
diff changeset
172
anatofuz
parents:
diff changeset
173 typedef basic_streambuf<wchar_t> wstreambuf;
anatofuz
parents:
diff changeset
174 typedef basic_istream<wchar_t> wistream;
anatofuz
parents:
diff changeset
175 typedef basic_ostream<wchar_t> wostream;
anatofuz
parents:
diff changeset
176 typedef basic_iostream<wchar_t> wiostream;
anatofuz
parents:
diff changeset
177
anatofuz
parents:
diff changeset
178 typedef basic_stringbuf<wchar_t> wstringbuf;
anatofuz
parents:
diff changeset
179 typedef basic_istringstream<wchar_t> wistringstream;
anatofuz
parents:
diff changeset
180 typedef basic_ostringstream<wchar_t> wostringstream;
anatofuz
parents:
diff changeset
181 typedef basic_stringstream<wchar_t> wstringstream;
anatofuz
parents:
diff changeset
182
anatofuz
parents:
diff changeset
183 typedef basic_filebuf<wchar_t> wfilebuf;
anatofuz
parents:
diff changeset
184 typedef basic_ifstream<wchar_t> wifstream;
anatofuz
parents:
diff changeset
185 typedef basic_ofstream<wchar_t> wofstream;
anatofuz
parents:
diff changeset
186 typedef basic_fstream<wchar_t> wfstream;
anatofuz
parents:
diff changeset
187
anatofuz
parents:
diff changeset
188 template <class _State> class _LIBCPP_TEMPLATE_VIS fpos;
anatofuz
parents:
diff changeset
189 typedef fpos<mbstate_t> streampos;
anatofuz
parents:
diff changeset
190 typedef fpos<mbstate_t> wstreampos;
anatofuz
parents:
diff changeset
191 #ifndef _LIBCPP_NO_HAS_CHAR8_T
anatofuz
parents:
diff changeset
192 typedef fpos<mbstate_t> u8streampos;
anatofuz
parents:
diff changeset
193 #endif
anatofuz
parents:
diff changeset
194 #ifndef _LIBCPP_HAS_NO_UNICODE_CHARS
anatofuz
parents:
diff changeset
195 typedef fpos<mbstate_t> u16streampos;
anatofuz
parents:
diff changeset
196 typedef fpos<mbstate_t> u32streampos;
anatofuz
parents:
diff changeset
197 #endif // _LIBCPP_HAS_NO_UNICODE_CHARS
anatofuz
parents:
diff changeset
198
anatofuz
parents:
diff changeset
199 #if defined(_NEWLIB_VERSION)
anatofuz
parents:
diff changeset
200 // On newlib, off_t is 'long int'
anatofuz
parents:
diff changeset
201 typedef long int streamoff; // for char_traits in <string>
anatofuz
parents:
diff changeset
202 #else
anatofuz
parents:
diff changeset
203 typedef long long streamoff; // for char_traits in <string>
anatofuz
parents:
diff changeset
204 #endif
anatofuz
parents:
diff changeset
205
anatofuz
parents:
diff changeset
206 template <class _CharT, // for <stdexcept>
anatofuz
parents:
diff changeset
207 class _Traits = char_traits<_CharT>,
anatofuz
parents:
diff changeset
208 class _Allocator = allocator<_CharT> >
anatofuz
parents:
diff changeset
209 class _LIBCPP_TEMPLATE_VIS basic_string;
anatofuz
parents:
diff changeset
210 typedef basic_string<char, char_traits<char>, allocator<char> > string;
anatofuz
parents:
diff changeset
211 typedef basic_string<wchar_t, char_traits<wchar_t>, allocator<wchar_t> > wstring;
anatofuz
parents:
diff changeset
212
anatofuz
parents:
diff changeset
213
anatofuz
parents:
diff changeset
214 // Include other forward declarations here
anatofuz
parents:
diff changeset
215 template <class _Tp, class _Alloc = allocator<_Tp> >
anatofuz
parents:
diff changeset
216 class _LIBCPP_TEMPLATE_VIS vector;
anatofuz
parents:
diff changeset
217
anatofuz
parents:
diff changeset
218 _LIBCPP_END_NAMESPACE_STD
anatofuz
parents:
diff changeset
219
anatofuz
parents:
diff changeset
220 #endif // _LIBCPP_IOSFWD