PropWare  3.0.0.229
C++ objects and CMake build system for Parallax Propeller
ctype.h
Go to the documentation of this file.
1 
19 /*
20  * doxygen note.
21  * \@file uses include/ctype.h to differentiate from include/sys/ctype.h
22  * Without this, neither file will be documented.
23  */
24 
25 
26 #ifndef _CTYPE_H
27 #define _CTYPE_H
28 
29 #if defined(__cplusplus)
30 extern "C" {
31 #endif
32 
33 #include <sys/ctype.h>
34 
35  extern int isalnum(int c);
36  extern int isalpha(int c);
37  extern int isblank(int c);
38  extern int iscntrl(int c);
39  extern int isdigit(int c);
40  extern int isgraph(int c);
41  extern int islower(int c);
42  extern int isprint(int c);
43  extern int ispunct(int c);
44  extern int isspace(int c);
45  extern int isupper(int c);
46  extern int isxdigit(int c);
47 
48  extern int tolower(int c);
49  extern int toupper(int c);
50 
51 
52 #define __isctype(c, x) (__ctype_get(c) & x)
53 
57 #define isalnum(c) __isctype(c, _CTalnum)
58 
67 #define isalpha(c) __isctype(c, _CTalpha)
68 
71 #define isblank(c) __isctype(c, _CTb)
72 
75 #define iscntrl(c) __isctype(c, _CTc)
76 
79 #ifdef __propeller__
80 /* on the Propeller, this is slightly faster/smaller than the array lookup! */
81 #define isdigit(c) (((c)>='0')&&((c)<='9'))
82 #else
83 #define isdigit(c) __isctype(c, _CTd)
84 #endif
85 
89 #define isgraph(c) (!__isctype(c, (_CTc|_CTs)) && (__ctype_get(c) != 0))
90 
99 #ifdef __propeller__
100 #define islower(c) (((c)>='a')&&((c)<='z'))
101 #else
102 #define islower(c) __isctype(c, _CTl)
103 #endif
104 
107 #define isprint(c) (!__isctype(c, (_CTc)) && (__ctype_get(c) != 0))
108 
115 #define ispunct(c) __isctype(c, _CTp)
116 
119 #define isspace(c) __isctype(c, _CTs)
120 
129 #ifdef __propeller__
130 #define isupper(c) (((c)>='A')&&((c)<='Z'))
131 #else
132 #define isupper(c) __isctype(c, _CTu)
133 #endif
134 
137 #define isxdigit(c) __isctype(c, _CTx)
138 
151 int tolower(int c);
152 
165 int toupper(int c);
166 
167 #if defined(__cplusplus)
168 }
169 #endif
170 
171 #endif
ctype.h
Defines macros and types used by include/ctype.h.
isspace
#define isspace(c)
Definition: ctype.h:119
iscntrl
#define iscntrl(c)
Definition: ctype.h:75
isblank
#define isblank(c)
Definition: ctype.h:71
isupper
#define isupper(c)
Definition: ctype.h:132
isalnum
#define isalnum(c)
Definition: ctype.h:57
isdigit
#define isdigit(c)
Definition: ctype.h:83
isprint
#define isprint(c)
Definition: ctype.h:107
ispunct
#define ispunct(c)
Definition: ctype.h:115
isgraph
#define isgraph(c)
Definition: ctype.h:89
isalpha
#define isalpha(c)
Definition: ctype.h:67
islower
#define islower(c)
Definition: ctype.h:102
tolower
int tolower(int c)
toupper
int toupper(int c)
isxdigit
#define isxdigit(c)
Definition: ctype.h:137