]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/src/c++11/locale-inst-monetary.h
Update copyright years.
[thirdparty/gcc.git] / libstdc++-v3 / src / c++11 / locale-inst-monetary.h
CommitLineData
7c1e7eed
JW
1// Explicit instantantiations for monetary facets -*- C++ -*-
2
a945c346 3// Copyright (C) 2018-2024 Free Software Foundation, Inc.
7c1e7eed
JW
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#ifndef C
c9434ea4 26# error "This file should not be compiled directly, only included"
7c1e7eed
JW
27#endif
28
a7f51059
JW
29#include "facet_inst_macros.h"
30
7c1e7eed
JW
31// This header is included multiple times, to instantiate these symbols
32// for char/wchar_t and for both std::string ABIs,
33// and (depending on the target) for two long double formats.
34
35namespace std _GLIBCXX_VISIBILITY(default)
36{
b3ac43a3
JW
37// use_facet and has_facet instantiations
38INSTANTIATE_FACET_ACCESSORS(money_put<C>);
39INSTANTIATE_FACET_ACCESSORS(money_get<C>);
7c1e7eed
JW
40
41_GLIBCXX_BEGIN_NAMESPACE_LDBL_OR_CXX11
42 template class money_get<C, istreambuf_iterator<C> >;
43 template class money_put<C, ostreambuf_iterator<C> >;
44
45 template
46 istreambuf_iterator<C>
47 money_get<C, istreambuf_iterator<C> >::
48 _M_extract<true>(istreambuf_iterator<C>, istreambuf_iterator<C>,
49 ios_base&, ios_base::iostate&, string&) const;
50
51 template
52 istreambuf_iterator<C>
53 money_get<C, istreambuf_iterator<C> >::
54 _M_extract<false>(istreambuf_iterator<C>, istreambuf_iterator<C>,
55 ios_base&, ios_base::iostate&, string&) const;
56
57 template
58 ostreambuf_iterator<C>
59 money_put<C, ostreambuf_iterator<C> >::
60 _M_insert<true>(ostreambuf_iterator<C>, ios_base&, C,
61 const string_type&) const;
62
63 template
64 ostreambuf_iterator<C>
65 money_put<C, ostreambuf_iterator<C> >::
66 _M_insert<false>(ostreambuf_iterator<C>, ios_base&, C,
67 const string_type&) const;
68_GLIBCXX_END_NAMESPACE_LDBL_OR_CXX11
69} // namespace std