1 /* Wide character classification and mapping utilities <wctype.h>
3 This file is part of the Public Domain C Library (PDCLib).
4 Permission is granted to use, modify, and / or redistribute at will.
7 #ifndef _PDCLIB_WCTYPE_H
8 #define _PDCLIB_WCTYPE_H _PDCLIB_WCTYPE_H
9 #include <_PDCLIB_int.h>
15 #ifndef _PDCLIB_WINT_T_DEFINED
16 #define _PDCLIB_WINT_T_DEFINED _PDCLIB_WINT_T_DEFINED
17 typedef _PDCLIB_wint_t wint_t;
20 #ifndef _PDCLIB_WEOF_DEFINED
21 #define _PDCLIB_WEOF_DEFINED _PDCLIB_WEOF_DEFINED
22 #define WEOF _PDCLIB_WEOF
25 /* Scalar type representing locale-specific character mappings */
26 typedef int wctrans_t;
28 /* Scalar type representing locale-specific character classifications */
31 /* Character classification functions */
33 int iswalnum( wint_t _Wc );
34 int iswalpha( wint_t _Wc );
35 int iswblank( wint_t _Wc );
36 int iswcntrl( wint_t _Wc );
37 int iswdigit( wint_t _Wc );
38 int iswgraph( wint_t _Wc );
39 int iswlower( wint_t _Wc );
40 int iswprint( wint_t _Wc );
41 int iswpunct( wint_t _Wc );
42 int iswspace( wint_t _Wc );
43 int iswupper( wint_t _Wc );
44 int iswxdigit( wint_t _Wc );
46 /* Extensible character classification functions */
48 int iswctype( wint_t _Wc, wctype_t _Desc );
49 wctype_t wctype( const char * _Property );
51 /* Wide character case mapping utilities */
53 wint_t towlower( wint_t _Wc );
54 wint_t towupper( wint_t _Wc );
56 /* Extensible wide character case mapping functions */
58 wint_t towctrans( wint_t _Wc, wctrans_t _Desc );
59 wctrans_t wctrans( const char * _Property );