1 // Explicit instantiation file. 2 3 // Copyright (C) 2020-2022 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 3, 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 // Under Section 7 of GPL version 3, you are granted additional 17 // permissions described in the GCC Runtime Library Exception, version 18 // 3.1, as published by the Free Software Foundation. 19 20 // You should have received a copy of the GNU General Public License and 21 // a copy of the GCC Runtime Library Exception along with this program; 22 // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 23 // <http://www.gnu.org/licenses/>. 24 25 // 26 // ISO C++ 14882: 27 // 28 29 // Instantiations in this file are only for the new SSO std::string ABI. 30 #define _GLIBCXX_USE_CXX11_ABI 1 31 32 #include <sstream> 33 34 #if _GLIBCXX_USE_CXX11_ABI 35 namespace std _GLIBCXX_VISIBILITY(default) 36 { 37 _GLIBCXX_BEGIN_NAMESPACE_VERSION 38 39 template basic_stringbuf<char>::basic_stringbuf(const allocator_type&); 40 template basic_stringbuf<char>::basic_stringbuf(ios_base::openmode, 41 const allocator_type&); 42 template basic_stringbuf<char>::basic_stringbuf(__string_type&&, 43 ios_base::openmode); 44 template basic_stringbuf<char>::basic_stringbuf(basic_stringbuf&&, 45 const allocator_type&); 46 template basic_stringbuf<char>::basic_stringbuf(basic_stringbuf&&, 47 const allocator_type&, 48 __xfer_bufptrs&&); 49 template basic_stringbuf<char>::allocator_type 50 basic_stringbuf<char>::get_allocator() const noexcept; 51 template string 52 basic_stringbuf<char>::str() const &; 53 template string 54 basic_stringbuf<char>::str() &&; 55 template string_view 56 basic_stringbuf<char>::view() const noexcept; 57 template void 58 basic_stringbuf<char>::str(string&&); 59 60 template basic_istringstream<char>::basic_istringstream(ios_base::openmode, 61 const allocator_type&); 62 template basic_istringstream<char>::basic_istringstream(__string_type&&, 63 ios_base::openmode); 64 template string 65 basic_istringstream<char>::str() const &; 66 template string 67 basic_istringstream<char>::str() &&; 68 template string_view 69 basic_istringstream<char>::view() const noexcept; 70 template void 71 basic_istringstream<char>::str(string&&); 72 73 template basic_ostringstream<char>::basic_ostringstream(ios_base::openmode, 74 const allocator_type&); 75 template basic_ostringstream<char>::basic_ostringstream(__string_type&&, 76 ios_base::openmode); 77 template string 78 basic_ostringstream<char>::str() const &; 79 template string 80 basic_ostringstream<char>::str() &&; 81 template string_view 82 basic_ostringstream<char>::view() const noexcept; 83 template void 84 basic_ostringstream<char>::str(string&&); 85 86 template basic_stringstream<char>::basic_stringstream(ios_base::openmode, 87 const allocator_type&); 88 template basic_stringstream<char>::basic_stringstream(__string_type&&, 89 ios_base::openmode); 90 template string 91 basic_stringstream<char>::str() const &; 92 template string 93 basic_stringstream<char>::str() &&; 94 template string_view 95 basic_stringstream<char>::view() const noexcept; 96 template void 97 basic_stringstream<char>::str(string&&); 98 99 #ifdef _GLIBCXX_USE_WCHAR_T 100 template basic_stringbuf<wchar_t>::basic_stringbuf(const allocator_type&); 101 template basic_stringbuf<wchar_t>::basic_stringbuf(ios_base::openmode, 102 const allocator_type&); 103 template basic_stringbuf<wchar_t>::basic_stringbuf(__string_type&&, 104 ios_base::openmode); 105 template basic_stringbuf<wchar_t>::basic_stringbuf(basic_stringbuf&&, 106 const allocator_type&); 107 template basic_stringbuf<wchar_t>::basic_stringbuf(basic_stringbuf&&, 108 const allocator_type&, 109 __xfer_bufptrs&&); 110 template basic_stringbuf<wchar_t>::allocator_type 111 basic_stringbuf<wchar_t>::get_allocator() const noexcept; 112 113 template wstring 114 basic_stringbuf<wchar_t>::str() const &; 115 template wstring 116 basic_stringbuf<wchar_t>::str() &&; 117 template wstring_view 118 basic_stringbuf<wchar_t>::view() const noexcept; 119 template void 120 basic_stringbuf<wchar_t>::str(wstring&&); 121 122 template basic_istringstream<wchar_t>::basic_istringstream(ios_base::openmode, 123 const allocator_type&); 124 template basic_istringstream<wchar_t>::basic_istringstream(__string_type&&, 125 ios_base::openmode); 126 template wstring 127 basic_istringstream<wchar_t>::str() const &; 128 template wstring 129 basic_istringstream<wchar_t>::str() &&; 130 template wstring_view 131 basic_istringstream<wchar_t>::view() const noexcept; 132 template void 133 basic_istringstream<wchar_t>::str(wstring&&); 134 135 template basic_ostringstream<wchar_t>::basic_ostringstream(ios_base::openmode, 136 const allocator_type&); 137 template basic_ostringstream<wchar_t>::basic_ostringstream(__string_type&&, 138 ios_base::openmode); 139 template wstring 140 basic_ostringstream<wchar_t>::str() const &; 141 template wstring 142 basic_ostringstream<wchar_t>::str() &&; 143 template wstring_view 144 basic_ostringstream<wchar_t>::view() const noexcept; 145 template void 146 basic_ostringstream<wchar_t>::str(wstring&&); 147 148 template basic_stringstream<wchar_t>::basic_stringstream(ios_base::openmode, 149 const allocator_type&); 150 template basic_stringstream<wchar_t>::basic_stringstream(__string_type&&, 151 ios_base::openmode); 152 template wstring 153 basic_stringstream<wchar_t>::str() const &; 154 template wstring 155 basic_stringstream<wchar_t>::str() &&; 156 template wstring_view 157 basic_stringstream<wchar_t>::view() const noexcept; 158 template void 159 basic_stringstream<wchar_t>::str(wstring&&); 160 #endif 161 162 _GLIBCXX_END_NAMESPACE_VERSION 163 } 164 165 #endif //_GLIBCXX_USE_CXX11_ABI 166