xref: /original-bsd/include/ctype.h (revision 72b6fd44)
1 /*
2  * Copyright (c) 1989 The Regents of the University of California.
3  * All rights reserved.
4  *
5  * %sccs.include.redist.c%
6  *
7  *	@(#)ctype.h	5.2 (Berkeley) 06/01/90
8  */
9 
10 #define	_U	0x01
11 #define	_L	0x02
12 #define	_N	0x04
13 #define	_S	0x08
14 #define	_P	0x10
15 #define	_C	0x20
16 #define	_X	0x40
17 #define	_B	0x80
18 
19 extern char	_ctype_[];
20 
21 #define	isdigit(c)	((_ctype_ + 1)[c] & _N)
22 #define	islower(c)	((_ctype_ + 1)[c] & _L)
23 #define	isspace(c)	((_ctype_ + 1)[c] & _S)
24 #define	ispunct(c)	((_ctype_ + 1)[c] & _P)
25 #define	isupper(c)	((_ctype_ + 1)[c] & _U)
26 #define	isalpha(c)	((_ctype_ + 1)[c] & (_U|_L))
27 #define	isxdigit(c)	((_ctype_ + 1)[c] & (_N|_X))
28 #define	isalnum(c)	((_ctype_ + 1)[c] & (_U|_L|_N))
29 #define	isprint(c)	((_ctype_ + 1)[c] & (_P|_U|_L|_N|_B))
30 #define	isgraph(c)	((_ctype_ + 1)[c] & (_P|_U|_L|_N))
31 #define	iscntrl(c)	((_ctype_ + 1)[c] & _C)
32 #define	isascii(c)	((unsigned)(c) <= 0177)
33 #define	toupper(c)	((c) - 'a' + 'A')
34 #define	tolower(c)	((c) - 'A' + 'a')
35 #define	toascii(c)	((c) & 0177)
36