|
|
1.1 root 1: /* @(#)ectype.h 1.2 */
2:
3: extern char ectype[]; /* 256 byte array */
4:
5: #define E_UPPER 0x01
6: #define E_LOWER 0x02
7: #define E_DIGIT 0x04
8: #define E_SPACE 0x08
9: #define E_PUNCT 0x10
10: #define E_PRINT 0x20
11:
12: #define Eisalpha(c) (ectype[(c)&0xff]&(E_UPPER|E_LOWER))
13: #define Eisupper(c) (ectype[(c)&0xff]&E_UPPER)
14: #define Eislower(c) (ectype[(c)&0xff]&E_LOWER)
15: #define Eisdigit(c) (ectype[(c)&0xff]&E_DIGIT)
16: #define Eisalnum(c) (ectype[(c)&0xff]&(E_UPPER|E_LOWER|E_DIGIT))
17: #define Eisspace(c) (ectype[(c)&0xff]&E_SPACE) /* blank or null */
18: #define Eispunct(c) (ectype[(c)&0xff]&E_PUNCT)
19: #define Eisprint(c) (ectype[(c)&0xff]&E_PRINT)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.