1 // Instantiation file for the -*- C++ -*- string classes.
2 // Copyright (C) 1994 Free Software Foundation
4 // This file is part of the GNU ANSI C++ Library. This library is free
5 // software; you can redistribute it and/or modify it under the
6 // terms of the GNU General Public License as published by the
7 // Free Software Foundation; either version 2, or (at your option)
10 // This library is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
15 // You should have received a copy of the GNU General Public License
16 // along with this library; see the file COPYING. If not, write to the Free
17 // Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 // As a special exception, if you link this library with files
20 // compiled with a GNU compiler to produce an executable, this does not cause
21 // the resulting executable to be covered by the GNU General Public License.
22 // This exception does not however invalidate any other reasons why
23 // the executable file might be covered by the GNU General Public License.
25 // Written by Jason Merrill based upon the specification by Takanori Adachi
26 // in ANSI X3J16/94-0013R2.
31 #pragma implementation "std/straits.h"
36 #include <std/bastring.cc>
46 template class string_char_traits <c>;
49 typedef basic_string <c> s;
52 template class basic_string <c>;
56 template s operator+ (const s&, const s&);
59 template s operator+ (const c*, const s&);
62 template s operator+ (c, const s&);
65 template s operator+ (const s&, const c*);
68 template s operator+ (const s&, c);
71 template bool operator== (const s&, const s&);
74 template bool operator== (const c*, const s&);
77 template bool operator== (const s&, const c*);
80 template bool operator!= (const s&, const s&);
83 template bool operator!= (const c*, const s&);
86 template bool operator!= (const s&, const c*);
89 template bool operator< (const s&, const s&);
92 template bool operator< (const c*, const s&);
95 template bool operator< (const s&, const c*);
98 template bool operator> (const s&, const s&);
101 template bool operator> (const c*, const s&);
104 template bool operator> (const s&, const c*);
107 template bool operator<= (const s&, const s&);
110 template bool operator<= (const c*, const s&);
113 template bool operator<= (const s&, const c*);
116 template bool operator>= (const s&, const s&);
119 template bool operator>= (const c*, const s&);
122 template bool operator>= (const s&, const c*);
125 template istream& operator>> (istream&, s&);
128 template ostream& operator<< (ostream&, const s&);
131 template istream& getline (istream&, s&, c);