ReactOS 0.4.15-dev-7788-g1ad9096
wctype.h
Go to the documentation of this file.
1/* @(#)wctype.h 1.9 17/08/05 Copyright 2009-2017 J. Schilling */
2/*
3 * Abstraction from wctype.h
4 *
5 * Copyright (c) 2009-2017 J. Schilling
6 */
7/*
8 * The contents of this file are subject to the terms of the
9 * Common Development and Distribution License, Version 1.0 only
10 * (the "License"). You may not use this file except in compliance
11 * with the License.
12 *
13 * See the file CDDL.Schily.txt in this distribution for details.
14 * A copy of the CDDL is also available via the Internet at
15 * http://www.opensource.org/licenses/cddl1.txt
16 *
17 * When distributing Covered Code, include this CDDL HEADER in each
18 * file and include the License file CDDL.Schily.txt from this distribution.
19 */
20
21#ifndef _SCHILY_WCTYPE_H
22#define _SCHILY_WCTYPE_H
23
24#ifndef _SCHILY_MCONFIG_H
25#include <schily/mconfig.h>
26#endif
27
28#ifndef _SCHILY_WCHAR_H
29#include <schily/wchar.h>
30#endif
31
32#ifdef HAVE_WCTYPE_H
33/*
34 * Include wctype.h if wchars have been enabled in schily/wchar.h
35 */
36#ifdef USE_WCHAR
37#ifndef _INCL_WCTYPE_H
38#include <wctype.h>
39#define _INCL_WCTYPE_H
40#endif
41#ifndef USE_WCTYPE
42#define USE_WCTYPE
43#endif
44#endif /* USE_WCHAR */
45#endif /* HAVE_WCTYPE_H */
46
47#if defined(HAVE_ISWPRINT) && defined(USE_WCHAR)
48#ifndef USE_WCTYPE
49#undef USE_WCTYPE
50#endif
51#endif
52
53#if !defined(HAVE_WCTYPE_H) && !defined(HAVE_ISWPRINT)
54#undef USE_WCTYPE
55#endif
56
57#ifdef NO_WCTYPE
58#undef USE_WCTYPE
59#endif
60
61#ifndef USE_WCTYPE
62
63#ifndef _SCHILY_CTYPE_H
64#include <schily/ctype.h>
65#endif
66
67#undef iswalnum
68#define iswalnum(c) isalnum(c)
69#undef iswalpha
70#define iswalpha(c) isalpha(c)
71#ifdef HAVE_ISBLANK
72#undef iswblank
73#define iswblank(c) isblank(c)
74#endif
75#undef iswcntrl
76#define iswcntrl(c) iscntrl(c)
77#undef iswcntrl
78#define iswcntrl(c) iscntrl(c)
79#undef iswdigit
80#define iswdigit(c) isdigit(c)
81#undef iswgraph
82#define iswgraph(c) isgraph(c)
83#undef iswlower
84#define iswlower(c) islower(c)
85#undef iswprint
86#define iswprint(c) isprint(c)
87#undef iswpunct
88#define iswpunct(c) ispunct(c)
89#undef iswspace
90#define iswspace(c) isspace(c)
91#undef iswupper
92#define iswupper(c) isupper(c)
93#undef iswxdigit
94#define iswxdigit(c) isxdigit(c)
95
96#undef towlower
97#define towlower(c) tolower(c)
98#undef towupper
99#define towupper(c) toupper(c)
100
101#endif /* !USE_WCTYPE */
102
103#endif /* _SCHILY_WCTYPE_H */