/home/ntakagi/work/STLport-5.1.5/stlport/stl/_iosfwd.hGo to the documentation of this file.00001 #ifndef _STLP_INTERNAL_IOSFWD 00002 #define _STLP_INTERNAL_IOSFWD 00003 00004 #if defined (__sgi) && !defined (__GNUC__) && !defined (_STANDARD_C_PLUS_PLUS) 00005 # error This header file requires the -LANG:std option 00006 #endif 00007 00008 // This file provides forward declarations of the most important I/O 00009 // classes. Note that almost all of those classes are class templates, 00010 // with default template arguments. According to the C++ standard, 00011 // if a class template is declared more than once in the same scope 00012 // then only one of those declarations may have default arguments. 00013 00014 // <iosfwd> contains the same declarations as other headers, and including 00015 // both <iosfwd> and (say) <iostream> is permitted. This means that only 00016 // one header may contain those default template arguments. 00017 00018 // In this implementation, the declarations in <iosfwd> contain default 00019 // template arguments. All of the other I/O headers include <iosfwd>. 00020 00021 #ifndef _STLP_CHAR_TRAITS_H 00022 # include <stl/char_traits.h> 00023 #endif 00024 00025 _STLP_BEGIN_NAMESPACE 00026 00027 class ios_base; 00028 00029 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>) > 00030 class basic_ios; 00031 00032 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>) > 00033 class basic_streambuf; 00034 00035 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>) > 00036 class basic_istream; 00037 00038 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>) > 00039 class basic_ostream; 00040 00041 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>) > 00042 class basic_iostream; 00043 00044 template <class _CharT, _STLP_DFL_TMPL_PARAM( _Traits , char_traits<_CharT>), 00045 _STLP_DFL_TMPL_PARAM(_Allocator , allocator<_CharT>) > 00046 class basic_stringbuf; 00047 00048 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>), 00049 _STLP_DFL_TMPL_PARAM(_Allocator , allocator<_CharT>) > 00050 class basic_istringstream; 00051 00052 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>), 00053 _STLP_DFL_TMPL_PARAM(_Allocator , allocator<_CharT>) > 00054 class basic_ostringstream; 00055 00056 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>), 00057 _STLP_DFL_TMPL_PARAM(_Allocator , allocator<_CharT>) > 00058 class basic_stringstream; 00059 00060 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>) > 00061 class basic_filebuf; 00062 00063 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>) > 00064 class basic_ifstream; 00065 00066 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>) > 00067 class basic_ofstream; 00068 00069 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>) > 00070 class basic_fstream; 00071 00072 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>) > 00073 class istreambuf_iterator; 00074 00075 template <class _CharT, _STLP_DFL_TMPL_PARAM(_Traits , char_traits<_CharT>) > 00076 class ostreambuf_iterator; 00077 00078 typedef basic_ios<char, char_traits<char> > ios; 00079 00080 #if !defined (_STLP_NO_WCHAR_T) 00081 typedef basic_ios<wchar_t, char_traits<wchar_t> > wios; 00082 #endif 00083 00084 // Forward declaration of class locale, and of the most important facets. 00085 class locale; 00086 #if defined (_STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS) 00087 template <class _Facet> 00088 struct _Use_facet { 00089 const locale& __loc; 00090 _Use_facet(const locale& __p_loc) : __loc(__p_loc) {} 00091 inline const _Facet& operator *() const; 00092 }; 00093 # define use_facet *_Use_facet 00094 #else 00095 template <class _Facet> inline const _Facet& use_facet(const locale&); 00096 #endif 00097 00098 template <class _CharT> class ctype; 00099 template <class _CharT> class ctype_byname; 00100 template <class _CharT> class collate; 00101 template <class _CharT> class collate_byname; 00102 00103 _STLP_TEMPLATE_NULL class ctype<char>; 00104 _STLP_TEMPLATE_NULL class ctype_byname<char>; 00105 _STLP_TEMPLATE_NULL class collate<char>; 00106 _STLP_TEMPLATE_NULL class collate_byname<char>; 00107 00108 #if !defined (_STLP_NO_WCHAR_T) 00109 _STLP_TEMPLATE_NULL class ctype<wchar_t>; 00110 _STLP_TEMPLATE_NULL class ctype_byname<wchar_t>; 00111 _STLP_TEMPLATE_NULL class collate<wchar_t>; 00112 _STLP_TEMPLATE_NULL class collate_byname<wchar_t>; 00113 #endif 00114 00115 #if !(defined (__SUNPRO_CC) && __SUNPRO_CC < 0x500 ) 00116 // Typedefs for ordinary (narrow-character) streams. 00117 //_STLP_TEMPLATE_NULL class basic_streambuf<char, char_traits<char> >; 00118 #endif 00119 00120 typedef basic_istream<char, char_traits<char> > istream; 00121 typedef basic_ostream<char, char_traits<char> > ostream; 00122 typedef basic_iostream<char, char_traits<char> > iostream; 00123 typedef basic_streambuf<char,char_traits<char> > streambuf; 00124 00125 typedef basic_stringbuf<char, char_traits<char>, allocator<char> > stringbuf; 00126 typedef basic_istringstream<char, char_traits<char>, allocator<char> > istringstream; 00127 typedef basic_ostringstream<char, char_traits<char>, allocator<char> > ostringstream; 00128 typedef basic_stringstream<char, char_traits<char>, allocator<char> > stringstream; 00129 00130 typedef basic_filebuf<char, char_traits<char> > filebuf; 00131 typedef basic_ifstream<char, char_traits<char> > ifstream; 00132 typedef basic_ofstream<char, char_traits<char> > ofstream; 00133 typedef basic_fstream<char, char_traits<char> > fstream; 00134 00135 #if !defined (_STLP_NO_WCHAR_T) 00136 // Typedefs for wide-character streams. 00137 typedef basic_streambuf<wchar_t, char_traits<wchar_t> > wstreambuf; 00138 typedef basic_istream<wchar_t, char_traits<wchar_t> > wistream; 00139 typedef basic_ostream<wchar_t, char_traits<wchar_t> > wostream; 00140 typedef basic_iostream<wchar_t, char_traits<wchar_t> > wiostream; 00141 00142 typedef basic_stringbuf<wchar_t, char_traits<wchar_t>, allocator<wchar_t> > wstringbuf; 00143 typedef basic_istringstream<wchar_t, char_traits<wchar_t>, allocator<wchar_t> > wistringstream; 00144 typedef basic_ostringstream<wchar_t, char_traits<wchar_t>, allocator<wchar_t> > wostringstream; 00145 typedef basic_stringstream<wchar_t, char_traits<wchar_t>, allocator<wchar_t> > wstringstream; 00146 00147 typedef basic_filebuf<wchar_t, char_traits<wchar_t> > wfilebuf; 00148 typedef basic_ifstream<wchar_t, char_traits<wchar_t> > wifstream; 00149 typedef basic_ofstream<wchar_t, char_traits<wchar_t> > wofstream; 00150 typedef basic_fstream<wchar_t, char_traits<wchar_t> > wfstream; 00151 #endif 00152 00153 _STLP_END_NAMESPACE 00154 00155 #endif 00156 00157 // Local Variables: 00158 // mode:C++ 00159 // End:
Generated on Mon Mar 10 15:32:25 2008 by ![]() |