// -*- C++ -*- /*************************************************************************** * * iosfwd - forward declarations for the iostreams * * $Id: //stdlib/dev/include/iosfwd#32 $ * *************************************************************************** * * Copyright (c) 1994-2005 Quovadx, Inc., acting through its Rogue Wave * Software division. Licensed under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance with the * License. You may obtain a copy of the License at * http://www.apache.org/licenses/LICENSE-2.0. Unless required by * applicable law or agreed to in writing, software distributed under * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License * for the specific language governing permissions and limitations under * the License. * **************************************************************************/ #ifndef _RWSTD_IOSFWD_INCLUDED #define _RWSTD_IOSFWD_INCLUDED #include #include #ifndef _RWSTD_NO_MBSTATE_T # if defined (__GNUG__) && __GNUG__ < 3 &&__GNUC_MINOR__ < 96 // included to work around a g++ 2.95.2 bug # include _RWSTD_CSTRING # endif // get mbstate_t (and wchar_t for MSVC 6.0) # include _RWSTD_CWCHAR # if defined (_RWSTD_NO_LIBC_IN_STD) _RWSTD_NAMESPACE (std) { // bring global mbstate_t into namespace std if it's not there yet _USING (::mbstate_t); } // namespace std # endif // _RWSTD_NO_LIBC_IN_STD #else // if defined (_RWSTD_NO_MBSTATE_T) # include #endif // _RWSTD_NO_MBSTATE_T _RWSTD_NAMESPACE (std) { template class allocator; #ifndef _RWSTD_BASIC_IOS_H_INCLUDED _EXPORT template) > class basic_ios; typedef basic_ios > ios; # ifndef _RWSTD_NO_WCHAR_T typedef basic_ios > wios; # endif // _RWSTD_NO_WCHAR_T #endif // _RWSTD_IOS_H_INCLUDED #ifndef _RWSTD_STREAMBUF_INCLUDED _EXPORT template) > class basic_streambuf; typedef basic_streambuf > streambuf; # ifndef _RWSTD_NO_WCHAR_T typedef basic_streambuf > wstreambuf; # endif // _RWSTD_NO_WCHAR_T #endif // _RWSTD_STREAMBUF_INCLUDED #ifndef _RWSTD_ISTREAM_INCLUDED // 27.2, p4 _EXPORT template) > class basic_istream; // 27.2, p6 template) > class basic_iostream; typedef basic_istream > istream; typedef basic_iostream > iostream; # ifndef _RWSTD_NO_WCHAR_T typedef basic_istream > wistream; typedef basic_iostream > wiostream; # endif // _RWSTD_NO_WCHAR_T #endif // _RWSTD_ISTREAM_INCLUDED #ifndef _RWSTD_OSTREAM_INCLUDED // 27.2, p5 _EXPORT template) > class basic_ostream; typedef basic_ostream > ostream; # ifndef _RWSTD_NO_WCHAR_T typedef basic_ostream > wostream; # endif // _RWSTD_NO_WCHAR_T #endif // _RWSTD_OSTREAM_INCLUDED #ifndef _RWSTD_SSTREAM_INCLUDED _EXPORT template), class _Allocator _RWSTD_COMPLEX_DEFAULT (allocator<_CharT>) > class basic_stringbuf; template), class _Allocator _RWSTD_COMPLEX_DEFAULT (allocator<_CharT>) > class basic_istringstream; template), class _Allocator _RWSTD_COMPLEX_DEFAULT (allocator<_CharT>) > class basic_ostringstream; template), class _Allocator _RWSTD_COMPLEX_DEFAULT (allocator<_CharT>) > class basic_stringstream; typedef basic_stringbuf, allocator > stringbuf; typedef basic_istringstream, allocator > istringstream; typedef basic_ostringstream, allocator > ostringstream; typedef basic_stringstream, allocator > stringstream; # ifndef _RWSTD_NO_WCHAR_T typedef basic_stringbuf, allocator > wstringbuf; typedef basic_istringstream, allocator > wistringstream; typedef basic_ostringstream, allocator > wostringstream; typedef basic_stringstream, allocator > wstringstream; # endif // _RWSTD_NO_WCHAR_T #endif // _RWSTD_SSTREAM_INCLUDED #ifndef _RWSTD_FSTREAM_INCLUDED _EXPORT template) > class basic_filebuf; template) > class basic_ifstream; template) > class basic_ofstream; template) > class basic_fstream; typedef basic_filebuf > filebuf; typedef basic_ifstream > ifstream; typedef basic_ofstream > ofstream; typedef basic_fstream > fstream; # ifndef _RWSTD_NO_WCHAR_T typedef basic_filebuf > wfilebuf; typedef basic_ifstream > wifstream; typedef basic_ofstream > wofstream; typedef basic_fstream > wfstream; # endif // _RWSTD_NO_WCHAR_T #endif // _RWSTD_FSTREAM_INCLUDED #ifndef _RWSTD_IOITER_H_INCLUDED template) > struct ostreambuf_iterator; template) > struct istreambuf_iterator; #endif // _RWSTD_IOITER_H_INCLUDED // 27.2, p8 template class fpos; // 27.2, p9 - identical to std::fpos::state_type> // and std::fpos::state_type>, respectively typedef fpos streampos; typedef fpos wstreampos; } // namespace std #endif // _RWSTD_IOSFWD_INCLUDED