X-Git-Url: http://git.buserror.net/cgi-bin/gitweb.cgi?p=polintos%2Fscott%2Fpriv.git;a=blobdiff_plain;f=include%2Fc%2B%2B%2Fstl%2Fstl%2F_iosfwd.h;fp=include%2Fc%2B%2B%2Fstl%2Fstl%2F_iosfwd.h;h=64c6430292ee1012a7c856771e50791f88b5f41b;hp=0000000000000000000000000000000000000000;hb=173d8903eb9d51a4ea7d7fa3e52dc86c9bb6d4f1;hpb=b024710fe2b60cd4a42a8993b61333d6cdb56ca3 diff --git a/include/c++/stl/stl/_iosfwd.h b/include/c++/stl/stl/_iosfwd.h new file mode 100644 index 0000000..64c6430 --- /dev/null +++ b/include/c++/stl/stl/_iosfwd.h @@ -0,0 +1,159 @@ +#ifndef _STLP_INTERNAL_IOSFWD +#define _STLP_INTERNAL_IOSFWD + +#if defined (__sgi) && !defined (__GNUC__) && !defined (_STANDARD_C_PLUS_PLUS) +# error This header file requires the -LANG:std option +#endif + +// This file provides forward declarations of the most important I/O +// classes. Note that almost all of those classes are class templates, +// with default template arguments. According to the C++ standard, +// if a class template is declared more than once in the same scope +// then only one of those declarations may have default arguments. + +// contains the same declarations as other headers, and including +// both and (say) is permitted. This means that only +// one header may contain those default template arguments. + +// In this implementation, the declarations in contain default +// template arguments. All of the other I/O headers include . + +#ifndef _STLP_CHAR_TRAITS_H +# include +#endif + +_STLP_BEGIN_NAMESPACE + +class ios_base; + +template ) > +class basic_ios; + +template ) > +class basic_streambuf; + +template ) > +class basic_istream; + +template ) > +class basic_ostream; + +template ) > +class basic_iostream; + +template ), + _STLP_DFL_TMPL_PARAM(_Allocator , allocator<_CharT>) > +class basic_stringbuf; + +template ), + _STLP_DFL_TMPL_PARAM(_Allocator , allocator<_CharT>) > +class basic_istringstream; + +template ), + _STLP_DFL_TMPL_PARAM(_Allocator , allocator<_CharT>) > +class basic_ostringstream; + +template ), + _STLP_DFL_TMPL_PARAM(_Allocator , allocator<_CharT>) > +class basic_stringstream; + +template ) > +class basic_filebuf; + +template ) > +class basic_ifstream; + +template ) > +class basic_ofstream; + +template ) > +class basic_fstream; + +template ) > +class istreambuf_iterator; + +template ) > +class ostreambuf_iterator; + +typedef basic_ios > ios; + +#if !defined (_STLP_NO_WCHAR_T) +typedef basic_ios > wios; +#endif + +// Forward declaration of class locale, and of the most important facets. +class locale; +#if defined (_STLP_NO_EXPLICIT_FUNCTION_TMPL_ARGS) +template +struct _Use_facet { + const locale& __loc; + _Use_facet(const locale& __p_loc) : __loc(__p_loc) {} + inline const _Facet& operator *() const; +}; +# define use_facet *_Use_facet +#else +template inline const _Facet& use_facet(const locale&); +#endif + +template class ctype; +template class ctype_byname; +template class collate; +template class collate_byname; + +_STLP_TEMPLATE_NULL class ctype; +_STLP_TEMPLATE_NULL class ctype_byname; +_STLP_TEMPLATE_NULL class collate; +_STLP_TEMPLATE_NULL class collate_byname; + +#if !defined (_STLP_NO_WCHAR_T) +_STLP_TEMPLATE_NULL class ctype; +_STLP_TEMPLATE_NULL class ctype_byname; +_STLP_TEMPLATE_NULL class collate; +_STLP_TEMPLATE_NULL class collate_byname; +#endif + +#if !(defined (__SUNPRO_CC) && __SUNPRO_CC < 0x500 ) +// Typedefs for ordinary (narrow-character) streams. +//_STLP_TEMPLATE_NULL class basic_streambuf >; +#endif + +typedef basic_istream > istream; +typedef basic_ostream > ostream; +typedef basic_iostream > iostream; +typedef basic_streambuf > streambuf; + +typedef basic_stringbuf, allocator > stringbuf; +typedef basic_istringstream, allocator > istringstream; +typedef basic_ostringstream, allocator > ostringstream; +typedef basic_stringstream, allocator > stringstream; + +typedef basic_filebuf > filebuf; +typedef basic_ifstream > ifstream; +typedef basic_ofstream > ofstream; +typedef basic_fstream > fstream; + +#if !defined (_STLP_NO_WCHAR_T) +// Typedefs for wide-character streams. +typedef basic_streambuf > wstreambuf; +typedef basic_istream > wistream; +typedef basic_ostream > wostream; +typedef basic_iostream > wiostream; + +typedef basic_stringbuf, allocator > wstringbuf; +typedef basic_istringstream, allocator > wistringstream; +typedef basic_ostringstream, allocator > wostringstream; +typedef basic_stringstream, allocator > wstringstream; + +typedef basic_filebuf > wfilebuf; +typedef basic_ifstream > wifstream; +typedef basic_ofstream > wofstream; +typedef basic_fstream > wfstream; +#endif + +_STLP_END_NAMESPACE + +#endif + +// Local Variables: +// mode:C++ +// End: