1
/*
2
 * Copyright (c) 1999
3
 * Boris Fomitchev
4
 *
5
 * This material is provided "as is", with absolutely no warranty expressed
6
 * or implied. Any use is at your own risk.
7
 *
8
 * Permission to use or copy this software for any purpose is hereby granted
9
 * without fee, provided the above notices are retained on all copies.
10
 * Permission to modify the code and to distribute modified code is granted,
11
 * provided the above notices are retained, and a notice that the code was
12
 * modified is included with the above copyright notice.
13
 *
14
 */
15
16
#if !defined (_STLP_OUTERMOST_HEADER_ID)
17
#  define _STLP_OUTERMOST_HEADER_ID 0x279
18
#  include <stl/_cprolog.h>
19
#elif (_STLP_OUTERMOST_HEADER_ID == 0x279) && !defined (_STLP_DONT_POP_HEADER_ID)
20
#  define _STLP_DONT_POP_HEADER_ID
21
#endif
22
23
/* evc3 doesn't have wctype.h */
24
#if !defined(_STLP_WCE_EVC3)
25
#  if defined (_STLP_HAS_INCLUDE_NEXT)
26
#    if defined (__hpux)
27
#      include_next <stdarg.h>
28
#      include_next <wchar.h>
29
#    endif
30
#    include_next <wctype.h>
31
#  else
32
#    if defined (__hpux)
33
#      include _STLP_NATIVE_C_HEADER(stdarg.h)
34
#      include _STLP_NATIVE_C_HEADER(wchar.h)
35
#    endif
36
#    include _STLP_NATIVE_C_HEADER(wctype.h)
37
#  endif
38
#endif
39
40
#ifndef _STLP_WCTYPE_H_SEEN
41
#  define _STLP_WCTYPE_H_SEEN
42
43
/* Undef convenience interfaces */
44
#  undef iswalpha
45
#  undef iswupper
46
#  undef iswlower
47
#  undef iswdigit
48
#  undef iswxdigit
49
#  undef iswspace
50
#  undef iswpunct
51
#  undef iswalnum
52
#  undef iswprint
53
#  undef iswcntrl
54
#  undef iswgraph
55
#  undef iswascii
56
57
#  if defined(UNDER_CE)
58
__inline int (iswalpha)(int c) { return iswctype(c, _ALPHA); }
59
__inline int (iswupper)(int c) { return iswctype(c, _UPPER); }
60
__inline int (iswlower)(int c) { return iswctype(c, _LOWER); }
61
__inline int (iswdigit)(int c) { return iswctype(c, _DIGIT); }
62
__inline int (iswxdigit)(int c) { return iswctype(c, _HEX); }
63
__inline int (iswspace)(int c) { return iswctype(c, _SPACE); }
64
__inline int (iswpunct)(int c) { return iswctype(c, _PUNCT); }
65
__inline int (iswalnum)(int c) { return iswctype(c, _ALPHA|_DIGIT); }
66
__inline int (iswprint)(int c) { return iswctype(c, _BLANK|_PUNCT|_ALPHA|_DIGIT); }
67
__inline int (iswgraph)(int c) { return iswctype(c, _PUNCT|_ALPHA|_DIGIT); }
68
__inline int (iswcntrl)(int c) { return iswctype(c, _CONTROL); }
69
__inline int (iswascii)(int c) { return ((unsigned)(c) < 0x80); }
70
#  endif
71
#endif
72
73
#if (_STLP_OUTERMOST_HEADER_ID == 0x279)
74
#  if ! defined (_STLP_DONT_POP_HEADER_ID)
75
#    include <stl/_epilog.h>
76
#    undef  _STLP_OUTERMOST_HEADER_ID
77
#  else
78
#    undef  _STLP_DONT_POP_HEADER_ID
79
#  endif
80
#endif