aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/cb/cbtype.h
blob: e41d5002d15d5c6d4060833a0fe04edd7b68a64f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#undef	_U
#undef	_L
#undef	_N
#undef	_S
#undef	_P
#undef	_C
#undef	_X
#undef	_O

#define	_U	01
#define	_L	02
#define	_N	04
#define	_S	010
#define	_P	020
#define	_C	040
#define	_X	0100
#define	_O	0200

extern	unsigned char	_cbtype_[];	/* in /usr/src/libc/gen/ctype_.c */

#undef isop
#undef	isalpha
#undef	isupper
#undef	islower
#undef	isdigit
#undef	isxdigit
#undef	isspace
#undef ispunct
#undef isalnum
#undef isprint
#undef iscntrl
#undef isascii
#undef toupper
#undef tolower
#undef toascii

#define isop(c)	((_cbtype_+1)[(uchar)(c)]&_O)
#define	isalpha(c)	((_cbtype_+1)[(uchar)(c)]&(_U|_L))
#define	isupper(c)	((_cbtype_+1)[(uchar)(c)]&_U)
#define	islower(c)	((_cbtype_+1)[(uchar)(c)]&_L)
#define	isdigit(c)	((_cbtype_+1)[(uchar)(c)]&_N)
#define	isxdigit(c)	((_cbtype_+1)[(uchar)(c)]&(_N|_X))
#define	isspace(c)	((_cbtype_+1)[(uchar)(c)]&_S)
#define ispunct(c)	((_cbtype_+1)[(uchar)(c)]&_P)
#define isalnum(c)	((_cbtype_+1)[(uchar)(c)]&(_U|_L|_N))
#define isprint(c)	((_cbtype_+1)[(uchar)(c)]&(_P|_U|_L|_N))
#define iscntrl(c)	((_cbtype_+1)[(uchar)(c)]&_C)
#define isascii(c)	((unsigned)(c)<=0177)
#define toupper(c)	((c)-'a'+'A')
#define tolower(c)	((c)-'A'+'a')
#define toascii(c)	((c)&0177)