Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | RSS feed

  1. // Forwarding declarations -*- C++ -*-
  2.  
  3. // Copyright (C) 1997, 1998, 1999, 2001 Free Software Foundation, Inc.
  4. //
  5. // This file is part of the GNU ISO C++ Library.  This library is free
  6. // software; you can redistribute it and/or modify it under the
  7. // terms of the GNU General Public License as published by the
  8. // Free Software Foundation; either version 2, or (at your option)
  9. // any later version.
  10.  
  11. // This library is distributed in the hope that it will be useful,
  12. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. // GNU General Public License for more details.
  15.  
  16. // You should have received a copy of the GNU General Public License along
  17. // with this library; see the file COPYING.  If not, write to the Free
  18. // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
  19. // USA.
  20.  
  21. // As a special exception, you may use this file as part of a free software
  22. // library without restriction.  Specifically, if other files instantiate
  23. // templates or use macros or inline functions from this file, or you compile
  24. // this file and link it with other files to produce an executable, this
  25. // file does not by itself cause the resulting executable to be covered by
  26. // the GNU General Public License.  This exception does not however
  27. // invalidate any other reasons why the executable file might be covered by
  28. // the GNU General Public License.
  29.  
  30. //
  31. // ISO C++ 14882: 27.2  Forward declarations
  32. //
  33.  
  34. #ifndef _CPP_IOSFWD
  35. #define _CPP_IOSFWD 1
  36.  
  37. #pragma GCC system_header
  38.  
  39. #include <bits/c++config.h>
  40. #include <bits/stringfwd.h> // For string forward declarations.
  41. #include <bits/fpos.h>
  42. #include <bits/functexcept.h>
  43.  
  44. namespace std
  45. {
  46.   template<typename _CharT, typename _Traits = char_traits<_CharT> >
  47.     class basic_ios;
  48.  
  49.   template<typename _CharT, typename _Traits = char_traits<_CharT> >
  50.     class basic_streambuf;
  51.  
  52.   template<typename _CharT, typename _Traits = char_traits<_CharT> >
  53.     class basic_istream;
  54.  
  55.   template<typename _CharT, typename _Traits = char_traits<_CharT> >
  56.     class basic_ostream;
  57.  
  58.   template<typename _CharT, typename _Traits = char_traits<_CharT> >
  59.     class basic_iostream;
  60.  
  61.   template<typename _CharT, typename _Traits = char_traits<_CharT>,
  62.             typename _Alloc = allocator<_CharT> >
  63.     class basic_stringbuf;
  64.  
  65.   template<typename _CharT, typename _Traits = char_traits<_CharT>,
  66.            typename _Alloc = allocator<_CharT> >
  67.     class basic_istringstream;
  68.  
  69.   template<typename _CharT, typename _Traits = char_traits<_CharT>,
  70.            typename _Alloc = allocator<_CharT> >
  71.     class basic_ostringstream;
  72.  
  73.   template<typename _CharT, typename _Traits = char_traits<_CharT>,
  74.            typename _Alloc = allocator<_CharT> >
  75.     class basic_stringstream;
  76.  
  77.   template<typename _CharT, typename _Traits = char_traits<_CharT> >
  78.     class basic_filebuf;
  79.  
  80.   template<typename _CharT, typename _Traits = char_traits<_CharT> >
  81.     class basic_ifstream;
  82.  
  83.   template<typename _CharT, typename _Traits = char_traits<_CharT> >
  84.     class basic_ofstream;
  85.  
  86.   template<typename _CharT, typename _Traits = char_traits<_CharT> >
  87.     class basic_fstream;
  88.  
  89.   template<typename _CharT, typename _Traits = char_traits<_CharT> >
  90.     class istreambuf_iterator;
  91.  
  92.   template<typename _CharT, typename _Traits = char_traits<_CharT> >
  93.     class ostreambuf_iterator;
  94.  
  95. #ifdef _GLIBCPP_RESOLVE_LIB_DEFECTS
  96.   // Not included.
  97.   class ios_base;
  98. #endif
  99.  
  100.   typedef basic_ios<char>               ios;
  101.   typedef basic_streambuf<char>         streambuf;
  102.   typedef basic_istream<char>           istream;
  103.   typedef basic_ostream<char>           ostream;
  104.   typedef basic_iostream<char>          iostream;
  105.   typedef basic_stringbuf<char>         stringbuf;
  106.   typedef basic_istringstream<char>     istringstream;
  107.   typedef basic_ostringstream<char>     ostringstream;
  108.   typedef basic_stringstream<char>      stringstream;
  109.   typedef basic_filebuf<char>           filebuf;
  110.   typedef basic_ifstream<char>          ifstream;
  111.   typedef basic_ofstream<char>          ofstream;
  112.   typedef basic_fstream<char>           fstream;
  113.  
  114. #ifdef _GLIBCPP_USE_WCHAR_T
  115.   typedef basic_ios<wchar_t>            wios;
  116.   typedef basic_streambuf<wchar_t>      wstreambuf;
  117.   typedef basic_istream<wchar_t>        wistream;
  118.   typedef basic_ostream<wchar_t>        wostream;
  119.   typedef basic_iostream<wchar_t>       wiostream;
  120.   typedef basic_stringbuf<wchar_t>      wstringbuf;
  121.   typedef basic_istringstream<wchar_t>  wistringstream;
  122.   typedef basic_ostringstream<wchar_t>  wostringstream;
  123.   typedef basic_stringstream<wchar_t>   wstringstream;
  124.   typedef basic_filebuf<wchar_t>        wfilebuf;
  125.   typedef basic_ifstream<wchar_t>       wifstream;
  126.   typedef basic_ofstream<wchar_t>       wofstream;
  127.   typedef basic_fstream<wchar_t>        wfstream;
  128. #endif
  129. } // namespace std
  130.  
  131. #endif  // _CPP_IOSFWD
  132.  
  133.  
  134.  
  135.  
  136.  
  137.