Whole document tree
    

Whole document tree

misc-inst.cc Source File
Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

misc-inst.cc

Go to the documentation of this file.
00001 // Explicit instantiation file.
00002 
00003 // Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
00004 //
00005 // This file is part of the GNU ISO C++ Library.  This library is free
00006 // software; you can redistribute it and/or modify it under the
00007 // terms of the GNU General Public License as published by the
00008 // Free Software Foundation; either version 2, or (at your option)
00009 // any later version.
00010 
00011 // This library is distributed in the hope that it will be useful,
00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014 // GNU General Public License for more details.
00015 
00016 // You should have received a copy of the GNU General Public License along
00017 // with this library; see the file COPYING.  If not, write to the Free
00018 // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307,
00019 // USA.
00020 
00021 // As a special exception, you may use this file as part of a free software
00022 // library without restriction.  Specifically, if other files instantiate
00023 // templates or use macros or inline functions from this file, or you compile
00024 // this file and link it with other files to produce an executable, this
00025 // file does not by itself cause the resulting executable to be covered by
00026 // the GNU General Public License.  This exception does not however
00027 // invalidate any other reasons why the executable file might be covered by
00028 // the GNU General Public License.
00029 
00030 //
00031 // ISO C++ 14882:
00032 //
00033 
00034 #include <bits/std_string.h>
00035 #include <bits/std_algorithm.h>
00036 #include <bits/std_locale.h>
00037 #include <bits/std_vector.h>
00038 #include <bits/std_iterator.h>
00039 #include <bits/std_streambuf.h>
00040 #include <bits/std_sstream.h>
00041 #include <bits/std_fstream.h>
00042 #include <bits/std_ios.h>
00043 #include <bits/basic_ios.tcc>
00044 #include <bits/std_istream.h>
00045 #include <bits/std_ostream.h>
00046 #include <bits/std_string.h>
00047 
00048 // NB: unnecessary if the .h headers include these
00049 #ifndef  _GLIBCPP_FULLY_COMPLIANT_HEADERS
00050 #include <bits/sstream.tcc>
00051 #include <bits/fstream.tcc>
00052 #include <bits/streambuf.tcc>
00053 #include <bits/istream.tcc>
00054 #include <bits/ostream.tcc>
00055 #endif
00056 
00057 namespace std
00058 {
00059 
00060   //
00061   // streambuf
00062   // 
00063   template class basic_streambuf<char>;
00064 #ifdef _GLIBCPP_USE_WCHAR_T
00065   template class basic_streambuf<wchar_t>;
00066 #endif
00067 
00068 
00069   //
00070   // stringstream
00071   //
00072   template class basic_stringbuf<char>;
00073 #ifdef _GLIBCPP_USE_WCHAR_T
00074   template class basic_stringbuf<wchar_t>;
00075 #endif
00076 
00077 
00078   //
00079   // fstream
00080   //
00081   template class basic_filebuf<char, char_traits<char> >;
00082 #ifdef _GLIBCPP_USE_WCHAR_T
00083   template class basic_filebuf<wchar_t, char_traits<wchar_t> >;
00084 #endif
00085 
00086 
00087   //
00088   // basic_ios
00089   //
00090   template class basic_ios<char>;
00091 #ifdef _GLIBCPP_USE_WCHAR_T
00092   template class basic_ios<wchar_t>;
00093 #endif
00094 
00095 
00096   //
00097   // istream
00098   //
00099   template class basic_istream<char>;
00100   template istream& ws(istream&);
00101   template istream& operator>>(istream&, char&);
00102   template istream& operator>>(istream&, unsigned char&);
00103   template istream& operator>>(istream&, signed char&);
00104   template istream& operator>>(istream&, char*);
00105   template istream& operator>>(istream&, unsigned char*);
00106   template istream& operator>>(istream&, signed char*);
00107 #ifdef _GLIBCPP_USE_WCHAR_T
00108   template class basic_istream<wchar_t>;
00109   template wistream& ws(wistream&);
00110   template wistream& operator>>(wistream&, wchar_t&);
00111   template wistream& operator>>(wistream&, wchar_t*);
00112 #endif
00113 
00114 
00115   //
00116   // ostream
00117   //
00118   template class basic_ostream<char>;
00119   template ostream& endl(ostream&);
00120   template ostream& ends(ostream&);
00121   template ostream& flush(ostream&);
00122   template ostream& operator<<(ostream&, char);
00123   template ostream& operator<<(ostream&, unsigned char);
00124   template ostream& operator<<(ostream&, signed char);
00125   template ostream& operator<<(ostream&, const char*);
00126   template ostream& operator<<(ostream&, const unsigned char*);
00127   template ostream& operator<<(ostream&, const signed char*);
00128 #ifdef _GLIBCPP_USE_WCHAR_T
00129   template class basic_ostream<wchar_t>;
00130   template wostream& endl(wostream&);
00131   template wostream& ends(wostream&);
00132   template wostream& flush(wostream&);
00133   template wostream& operator<<(wostream&, wchar_t);
00134   template wostream& operator<<(wostream&, char);
00135   template wostream& operator<<(wostream&, const wchar_t*);
00136   template wostream& operator<<(wostream&, const char*);
00137 #endif
00138   
00139 
00140   //
00141   // iostream
00142   //
00143   template class basic_iostream<char>;
00144 #ifdef _GLIBCPP_USE_WCHAR_T
00145   template class basic_iostream<wchar_t>; 
00146 #endif
00147 
00148 
00149   //
00150   // ifstream
00151   //
00152   template class basic_ifstream<char>;
00153 #ifdef _GLIBCPP_USE_WCHAR_T
00154   template class basic_ifstream<wchar_t>;
00155 #endif
00156 
00157 
00158   //
00159   // ofstream
00160   //
00161   template class basic_ofstream<char>;
00162 #ifdef _GLIBCPP_USE_WCHAR_T
00163   template class basic_ofstream<wchar_t>;
00164 #endif
00165 
00166 
00167   //
00168   // istringstream
00169   //
00170   template class basic_istringstream<char>;
00171 #ifdef _GLIBCPP_USE_WCHAR_T
00172   template class basic_istringstream<wchar_t>; 
00173 #endif
00174 
00175 
00176   //
00177   // ostringstream
00178   //
00179   template class basic_ostringstream<char>;
00180 #ifdef _GLIBCPP_USE_WCHAR_T
00181   template class basic_ostringstream<wchar_t>; 
00182 #endif
00183 
00184 
00185   //
00186   // string related to iostreams
00187   //
00188   template 
00189     basic_istream<char>& 
00190     operator>>(basic_istream<char>&, string&);
00191   template 
00192     basic_ostream<char>& 
00193     operator<<(basic_ostream<char>&, const string&);
00194   template 
00195     basic_istream<char>& 
00196     getline(basic_istream<char>&, string&, char);
00197   template 
00198     basic_istream<char>& 
00199     getline(basic_istream<char>&, string&);
00200 #ifdef _GLIBCPP_USE_WCHAR_T
00201   template 
00202     basic_istream<wchar_t>& 
00203     operator>>(basic_istream<wchar_t>&, wstring&);
00204   template 
00205     basic_ostream<wchar_t>& 
00206     operator<<(basic_ostream<wchar_t>&, const wstring&);
00207   template 
00208     basic_istream<wchar_t>& 
00209     getline(basic_istream<wchar_t>&, wstring&, wchar_t);
00210   template 
00211     basic_istream<wchar_t>& 
00212     getline(basic_istream<wchar_t>&, wstring&);
00213 #endif
00214 
00215   //
00216   // algorithm
00217   //
00218   typedef  _Char_traits_match<char, char_traits<char> > char_match;
00219 
00220   template 
00221     const char*  
00222     find_if<const char *, char_match>
00223     (const char *, const char *, char_match, random_access_iterator_tag);
00224 
00225 #ifdef _GLIBCPP_USE_WCHAR_T
00226   typedef  _Char_traits_match<wchar_t, char_traits<wchar_t> > wchar_match;
00227 
00228   template const wchar_t*  
00229     find_if<const wchar_t*, wchar_match>
00230     (const wchar_t*, const wchar_t*, wchar_match, random_access_iterator_tag);
00231 #endif
00232   
00233   template 
00234     string* 
00235     __uninitialized_fill_n_aux<string*, size_t, string>
00236     (string*, size_t, string const &, _Bool<false>);
00237 
00238   template 
00239     string* 
00240     __uninitialized_copy_aux<vector<string>::const_iterator, string *>
00241     (vector<string>::const_iterator, vector<string>::const_iterator, 
00242      string*, _Bool<false>);
00243 
00244   template
00245     void 
00246     __pad_char(basic_ios<char>&, char*, const char*,
00247         const streamsize, const streamsize);
00248 #ifdef _GLIBCPP_USE_WCHAR_T
00249   template
00250     void 
00251     __pad_char(basic_ios<wchar_t>&, wchar_t*, const wchar_t*,
00252         const streamsize, const streamsize);
00253 #endif
00254 
00255   template
00256     ostreambuf_iterator<char>
00257     __pad_numeric(ostreambuf_iterator<char>, _Ios_Fmtflags, char, int,
00258           const char*, const char*, const char*);
00259 #ifdef _GLIBCPP_USE_WCHAR_T
00260   template
00261     ostreambuf_iterator<wchar_t>
00262     __pad_numeric(ostreambuf_iterator<wchar_t>, _Ios_Fmtflags, wchar_t, int,
00263           const wchar_t*, const wchar_t*, const wchar_t*);
00264 #endif
00265 
00266   template
00267     ostreambuf_iterator<char>
00268     __output_float(ostreambuf_iterator<char>, ios_base&, char, 
00269            const char*, size_t);
00270 #ifdef _GLIBCPP_USE_WCHAR_T
00271   template
00272     ostreambuf_iterator<wchar_t>
00273     __output_float(ostreambuf_iterator<wchar_t>, ios_base&, wchar_t, 
00274            const char*, size_t);
00275 #endif
00276 
00277   template
00278     streamsize
00279     __copy_streambufs(basic_ios<char>&, basic_streambuf<char>*,
00280               basic_streambuf<char>*); 
00281 #ifdef _GLIBCPP_USE_WCHAR_T
00282   template
00283     streamsize
00284     __copy_streambufs(basic_ios<wchar_t>&, basic_streambuf<wchar_t>*,
00285               basic_streambuf<wchar_t>*); 
00286 #endif
00287 } //std

Generated on Mon Apr 8 03:11:30 2002 for libstdc++-v3 Source by doxygen1.2.15