1#ifndef _WCTYPE_H
2#include <wctype/wctype.h>
3
4#ifndef _ISOMAC
5
6libc_hidden_proto (iswalpha)
7libc_hidden_proto (iswalnum)
8libc_hidden_proto (iswdigit)
9libc_hidden_proto (iswlower)
10libc_hidden_proto (iswspace)
11libc_hidden_proto (iswxdigit)
12libc_hidden_proto (towlower)
13libc_hidden_proto (towupper)
14
15/* Internal interfaces. */
16extern int __iswspace (wint_t __wc);
17extern int __iswctype (wint_t __wc, wctype_t __desc);
18extern wctype_t __wctype (const char *__property);
19extern wctrans_t __wctrans (const char *__property);
20extern wint_t __towctrans (wint_t __wc, wctrans_t __desc);
21
22extern __typeof (iswalnum) __iswalnum __THROW __attribute_pure__;
23extern __typeof (iswalnum_l) __iswalnum_l;
24extern __typeof (iswalpha_l) __iswalpha_l;
25extern __typeof (iswblank_l) __iswblank_l;
26extern __typeof (iswcntrl_l) __iswcntrl_l;
27extern __typeof (iswdigit_l) __iswdigit_l;
28extern __typeof (iswlower) __iswlower __THROW __attribute_pure__;
29extern __typeof (iswlower_l) __iswlower_l;
30extern __typeof (iswgraph_l) __iswgraph_l;
31extern __typeof (iswprint_l) __iswprint_l;
32extern __typeof (iswpunct_l) __iswpunct_l;
33extern __typeof (iswspace_l) __iswspace_l;
34extern __typeof (iswupper_l) __iswupper_l;
35extern __typeof (iswxdigit_l) __iswxdigit_l;
36extern __typeof (towlower_l) __towlower_l;
37extern __typeof (towupper_l) __towupper_l;
38extern __typeof (towlower) __towlower __THROW __attribute_pure__;
39extern __typeof (towupper) __towupper __THROW __attribute_pure__;
40
41libc_hidden_proto (__towctrans)
42libc_hidden_proto (__iswctype)
43libc_hidden_proto (__iswalnum)
44libc_hidden_proto (__iswalnum_l)
45libc_hidden_proto (__iswalpha_l)
46libc_hidden_proto (__iswblank_l)
47libc_hidden_proto (__iswcntrl_l)
48libc_hidden_proto (__iswdigit_l)
49libc_hidden_proto (__iswlower)
50libc_hidden_proto (__iswlower_l)
51libc_hidden_proto (__iswgraph_l)
52libc_hidden_proto (__iswprint_l)
53libc_hidden_proto (__iswpunct_l)
54libc_hidden_proto (__iswspace_l)
55libc_hidden_proto (__iswupper_l)
56libc_hidden_proto (__iswxdigit_l)
57libc_hidden_proto (__towlower_l)
58libc_hidden_proto (__towupper_l)
59libc_hidden_proto (__towlower)
60libc_hidden_proto (__towupper)
61
62/* The spec says that isdigit must only match the decimal digits. We
63 can check this without a memory access. */
64# if IS_IN (libc)
65# undef iswdigit
66# define iswdigit(c) ({ wint_t __c = (c); __c >= L'0' && __c <= L'9'; })
67# undef iswdigit_l
68# define iswdigit_l(c, l) ({ wint_t __c = (c); __c >= L'0' && __c <= L'9'; })
69# undef __iswdigit_l
70# define __iswdigit_l(c, l) ({ wint_t __c = (c); __c >= L'0' && __c <= L'9'; })
71# endif
72
73#endif
74#endif
75