1951a39d68df598db08dfced8b4707755864a0492Ying Wang/****************************************************************************
2951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************
3951a39d68df598db08dfced8b4707755864a0492Ying Wang ***
4951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   This header was automatically generated from a Linux kernel header
5951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   of the same name, to make information necessary for userspace to
6951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   call into the kernel available to libc.  It contains only constants,
7951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   structures, and macros generated from the original header, and thus,
8951a39d68df598db08dfced8b4707755864a0492Ying Wang ***   contains no copyrightable information.
9951a39d68df598db08dfced8b4707755864a0492Ying Wang ***
10951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************
11951a39d68df598db08dfced8b4707755864a0492Ying Wang ****************************************************************************/
12951a39d68df598db08dfced8b4707755864a0492Ying Wang#ifndef _LINUX_CTYPE_H
13951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _LINUX_CTYPE_H
14951a39d68df598db08dfced8b4707755864a0492Ying Wang
15951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _U 0x01
16951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _L 0x02
17951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _D 0x04
18951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _C 0x08
19951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _P 0x10
20951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _S 0x20
21951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _X 0x40
22951a39d68df598db08dfced8b4707755864a0492Ying Wang#define _SP 0x80
23951a39d68df598db08dfced8b4707755864a0492Ying Wang
24951a39d68df598db08dfced8b4707755864a0492Ying Wang#define __ismask(x) (_ctype[(int)(unsigned char)(x)])
25951a39d68df598db08dfced8b4707755864a0492Ying Wang
26951a39d68df598db08dfced8b4707755864a0492Ying Wang#define isalnum(c) ((__ismask(c)&(_U|_L|_D)) != 0)
27951a39d68df598db08dfced8b4707755864a0492Ying Wang#define isalpha(c) ((__ismask(c)&(_U|_L)) != 0)
28951a39d68df598db08dfced8b4707755864a0492Ying Wang#define iscntrl(c) ((__ismask(c)&(_C)) != 0)
29951a39d68df598db08dfced8b4707755864a0492Ying Wang#define isdigit(c) ((__ismask(c)&(_D)) != 0)
30951a39d68df598db08dfced8b4707755864a0492Ying Wang#define isgraph(c) ((__ismask(c)&(_P|_U|_L|_D)) != 0)
31951a39d68df598db08dfced8b4707755864a0492Ying Wang#define islower(c) ((__ismask(c)&(_L)) != 0)
32951a39d68df598db08dfced8b4707755864a0492Ying Wang#define isprint(c) ((__ismask(c)&(_P|_U|_L|_D|_SP)) != 0)
33951a39d68df598db08dfced8b4707755864a0492Ying Wang#define ispunct(c) ((__ismask(c)&(_P)) != 0)
34951a39d68df598db08dfced8b4707755864a0492Ying Wang#define isspace(c) ((__ismask(c)&(_S)) != 0)
35951a39d68df598db08dfced8b4707755864a0492Ying Wang#define isupper(c) ((__ismask(c)&(_U)) != 0)
36951a39d68df598db08dfced8b4707755864a0492Ying Wang#define isxdigit(c) ((__ismask(c)&(_D|_X)) != 0)
37951a39d68df598db08dfced8b4707755864a0492Ying Wang
38951a39d68df598db08dfced8b4707755864a0492Ying Wang#define isascii(c) (((unsigned char)(c))<=0x7f)
39951a39d68df598db08dfced8b4707755864a0492Ying Wang#define toascii(c) (((unsigned char)(c))&0x7f)
40951a39d68df598db08dfced8b4707755864a0492Ying Wang
41951a39d68df598db08dfced8b4707755864a0492Ying Wang#define tolower(c) __tolower(c)
42951a39d68df598db08dfced8b4707755864a0492Ying Wang#define toupper(c) __toupper(c)
43951a39d68df598db08dfced8b4707755864a0492Ying Wang#endif
44