• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/toolchains/hndtools-arm-linux-2.6.36-uclibc-4.5.3/arm-linux/include/c++/4.5.3/arm-brcm-linux-uclibcgnueabi/bits/
1// Locale support -*- C++ -*-
2
3// Copyright (C) 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2006, 2009
4// Free Software Foundation, Inc.
5//
6// This file is part of the GNU ISO C++ Library.  This library is free
7// software; you can redistribute it and/or modify it under the
8// terms of the GNU General Public License as published by the
9// Free Software Foundation; either version 3, or (at your option)
10// any later version.
11
12// This library is distributed in the hope that it will be useful,
13// but WITHOUT ANY WARRANTY; without even the implied warranty of
14// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15// GNU General Public License for more details.
16
17// Under Section 7 of GPL version 3, you are granted additional
18// permissions described in the GCC Runtime Library Exception, version
19// 3.1, as published by the Free Software Foundation.
20
21// You should have received a copy of the GNU General Public License and
22// a copy of the GCC Runtime Library Exception along with this program;
23// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
24// <http://www.gnu.org/licenses/>.
25
26//
27// ISO C++ 14882: 22.1  Locales
28//
29
30/** @file ctype_base.h
31 *  This is an internal header file, included by other library headers.
32 *  You should not attempt to use it directly.
33 */
34
35// Information as gleaned from /usr/include/ctype.h
36
37_GLIBCXX_BEGIN_NAMESPACE(std)
38
39  /// @brief  Base class for ctype.
40  struct ctype_base
41  {
42    // Note: In uClibc, the following two types depend on configuration.
43
44    // Non-standard typedefs.
45    typedef const __ctype_touplow_t* __to_type;
46
47    // NB: Offsets into ctype<char>::_M_table force a particular size
48    // on the mask type. Because of this, we don't use an enum.
49    typedef __ctype_mask_t	mask;
50    static const mask upper    	= _ISupper;
51    static const mask lower 	= _ISlower;
52    static const mask alpha 	= _ISalpha;
53    static const mask digit 	= _ISdigit;
54    static const mask xdigit 	= _ISxdigit;
55    static const mask space 	= _ISspace;
56    static const mask print 	= _ISprint;
57    static const mask graph 	= _ISalpha | _ISdigit | _ISpunct;
58    static const mask cntrl 	= _IScntrl;
59    static const mask punct 	= _ISpunct;
60    static const mask alnum 	= _ISalpha | _ISdigit;
61  };
62
63_GLIBCXX_END_NAMESPACE
64