rework langinfo code for ABI compat and for use by time code
[musl] / include / wctype.h
1 #ifndef _WCTYPE_H
2 #define _WCTYPE_H
3
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7
8 #include <features.h>
9
10 #define __NEED_wint_t
11 #define __NEED_wctype_t
12
13 #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
14  || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
15 #define __NEED_locale_t
16 #endif
17
18 #include <bits/alltypes.h>
19
20 typedef const int * wctrans_t;
21
22 #undef WEOF
23 #define WEOF 0xffffffffU
24
25 #undef iswdigit
26
27 int       iswalnum(wint_t);
28 int       iswalpha(wint_t);
29 int       iswblank(wint_t);
30 int       iswcntrl(wint_t);
31 int       iswdigit(wint_t);
32 int       iswgraph(wint_t);
33 int       iswlower(wint_t);
34 int       iswprint(wint_t);
35 int       iswpunct(wint_t);
36 int       iswspace(wint_t);
37 int       iswupper(wint_t);
38 int       iswxdigit(wint_t);
39 int       iswctype(wint_t, wctype_t);
40 wint_t    towctrans(wint_t, wctrans_t);
41 wint_t    towlower(wint_t);
42 wint_t    towupper(wint_t);
43 wctrans_t wctrans(const char *);
44 wctype_t  wctype(const char *);
45
46 #undef iswdigit
47 #define iswdigit(a) (((unsigned)(a)-L'0') < 10)
48
49 #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
50  || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
51
52 int iswalnum_l(wint_t, locale_t);
53 int iswalpha_l(wint_t, locale_t);
54 int iswblank_l(wint_t, locale_t);
55 int iswcntrl_l(wint_t, locale_t);
56 int iswdigit_l(wint_t, locale_t);
57 int iswgraph_l(wint_t, locale_t);
58 int iswlower_l(wint_t, locale_t);
59 int iswprint_l(wint_t, locale_t);
60 int iswpunct_l(wint_t, locale_t);
61 int iswspace_l(wint_t, locale_t);
62 int iswupper_l(wint_t, locale_t);
63 int iswxdigit_l(wint_t, locale_t);
64 int iswctype_l(wint_t, wctype_t, locale_t);
65 wint_t towlower_l(wint_t, locale_t);
66 wint_t towupper_l(wint_t, locale_t);
67 wint_t towctrans_l(wint_t, wctrans_t, locale_t);
68 wctrans_t wctrans_l(const char *, locale_t);
69 wctype_t  wctype_l(const char *, locale_t);
70
71 #endif
72
73 #ifdef __cplusplus
74 }
75 #endif
76
77 #endif