]>
diplodocus.org Git - nmh/blob - sbr/ctype-checked.h
3 * This code is Copyright (c) 2016, by the authors of nmh.
4 * See the COPYRIGHT file in the root directory of the nmh
5 * distribution for complete copyright information. */
7 #ifndef CTYPE_CHECKED_H
8 #define CTYPE_CHECKED_H
11 extern int ctype_identity
[257];
13 #define CTYPE_CHECK(f, c) ((f)((ctype_identity + 1)[c]))
18 #define isalnum(c) CTYPE_CHECK(isalnum, c)
23 #define isalpha(c) CTYPE_CHECK(isalpha, c)
28 #define iscntrl(c) CTYPE_CHECK(iscntrl, c)
33 #define isdigit(c) CTYPE_CHECK(isdigit, c)
38 #define isgraph(c) CTYPE_CHECK(isgraph, c)
43 #define islower(c) CTYPE_CHECK(islower, c)
48 #define isprint(c) CTYPE_CHECK(isprint, c)
53 #define ispunct(c) CTYPE_CHECK(ispunct, c)
58 #define isspace(c) CTYPE_CHECK(isspace, c)
63 #define isupper(c) CTYPE_CHECK(isupper, c)
68 #define isxdigit(c) CTYPE_CHECK(isxdigit, c)
73 #define tolower(c) CTYPE_CHECK(tolower, c)
78 #define toupper(c) CTYPE_CHECK(toupper, c)
83 #define isascii(c) CTYPE_CHECK(isascii, c)
88 #define toascii(c) CTYPE_CHECK(toascii, c)
93 #define isblank(c) CTYPE_CHECK(isblank, c)