197403Sobrien// -*- C++ -*- forwarding header.
297403Sobrien
3169691Skan// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
497403Sobrien// Free Software Foundation, Inc.
597403Sobrien//
697403Sobrien// This file is part of the GNU ISO C++ Library.  This library is free
797403Sobrien// software; you can redistribute it and/or modify it under the
897403Sobrien// terms of the GNU General Public License as published by the
997403Sobrien// Free Software Foundation; either version 2, or (at your option)
1097403Sobrien// any later version.
1197403Sobrien
1297403Sobrien// This library is distributed in the hope that it will be useful,
1397403Sobrien// but WITHOUT ANY WARRANTY; without even the implied warranty of
1497403Sobrien// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1597403Sobrien// GNU General Public License for more details.
1697403Sobrien
1797403Sobrien// You should have received a copy of the GNU General Public License along
1897403Sobrien// with this library; see the file COPYING.  If not, write to the Free
19169691Skan// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
2097403Sobrien// USA.
2197403Sobrien
2297403Sobrien// As a special exception, you may use this file as part of a free software
2397403Sobrien// library without restriction.  Specifically, if other files instantiate
2497403Sobrien// templates or use macros or inline functions from this file, or you compile
2597403Sobrien// this file and link it with other files to produce an executable, this
2697403Sobrien// file does not by itself cause the resulting executable to be covered by
2797403Sobrien// the GNU General Public License.  This exception does not however
2897403Sobrien// invalidate any other reasons why the executable file might be covered by
2997403Sobrien// the GNU General Public License.
3097403Sobrien
31169691Skan/** @file include/cwctype
3297403Sobrien *  This is a Standard C++ Library file.  You should @c #include this file
3397403Sobrien *  in your programs, rather than any of the "*.h" implementation files.
3497403Sobrien *
3597403Sobrien *  This is the C++ version of the Standard C Library header @c wctype.h,
3697403Sobrien *  and its contents are (mostly) the same as that header, but are all
37169691Skan *  contained in the namespace @c std (except for names which are defined
38169691Skan *  as macros in C).
3997403Sobrien */
4097403Sobrien
41169691Skan//
42169691Skan// ISO C++ 14882: <cwctype>
43169691Skan//
44169691Skan
45132720Skan#ifndef _GLIBCXX_CWCTYPE
46132720Skan#define _GLIBCXX_CWCTYPE 1
4797403Sobrien
4897403Sobrien#pragma GCC system_header
4997403Sobrien
5097403Sobrien#include <bits/c++config.h>
5197403Sobrien
52132720Skan#if _GLIBCXX_HAVE_WCTYPE_H
5397403Sobrien#include <wctype.h>
5497403Sobrien#endif
5597403Sobrien
5697403Sobrien// Get rid of those macros defined in <wctype.h> in lieu of real functions.
5797403Sobrien#undef iswalnum
5897403Sobrien#undef iswalpha
59132720Skan#if _GLIBCXX_HAVE_ISWBLANK
60132720Skan# undef iswblank
61132720Skan#endif
6297403Sobrien#undef iswcntrl
63169691Skan#undef iswctype
6497403Sobrien#undef iswdigit
6597403Sobrien#undef iswgraph
6697403Sobrien#undef iswlower
6797403Sobrien#undef iswprint
6897403Sobrien#undef iswpunct
6997403Sobrien#undef iswspace
7097403Sobrien#undef iswupper
7197403Sobrien#undef iswxdigit
72169691Skan#undef towctrans
7397403Sobrien#undef towlower
7497403Sobrien#undef towupper
7597403Sobrien#undef wctrans
7697403Sobrien#undef wctype
7797403Sobrien
78132720Skan#if _GLIBCXX_USE_WCHAR_T
79169691Skan
80169691Skan_GLIBCXX_BEGIN_NAMESPACE(std)
81169691Skan
82132720Skan  using ::wint_t;	  // cwchar
8397403Sobrien
8497403Sobrien  using ::wctype_t;
8597403Sobrien  using ::wctrans_t;
8697403Sobrien
8797403Sobrien  using ::iswalnum;
8897403Sobrien  using ::iswalpha;
89132720Skan#if _GLIBCXX_HAVE_ISWBLANK
9097403Sobrien  using ::iswblank;
91132720Skan#endif
9297403Sobrien  using ::iswcntrl;
93169691Skan  using ::iswctype;
9497403Sobrien  using ::iswdigit;
9597403Sobrien  using ::iswgraph;
9697403Sobrien  using ::iswlower;
9797403Sobrien  using ::iswprint;
9897403Sobrien  using ::iswpunct;
9997403Sobrien  using ::iswspace;
10097403Sobrien  using ::iswupper;
10197403Sobrien  using ::iswxdigit;
102169691Skan  using ::towctrans;
10397403Sobrien  using ::towlower;
10497403Sobrien  using ::towupper;
10597403Sobrien  using ::wctrans;
10697403Sobrien  using ::wctype;
107169691Skan
108169691Skan_GLIBCXX_END_NAMESPACE
109169691Skan
110132720Skan#endif //_GLIBCXX_USE_WCHAR_T
11197403Sobrien
112132720Skan#endif
113