Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenctype.h
Go to the documentation of this file.
00001 /* 00002 * Copyright (c) 1999 00003 * Boris Fomitchev 00004 * 00005 * This material is provided "as is", with absolutely no warranty expressed 00006 * or implied. Any use is at your own risk. 00007 * 00008 * Permission to use or copy this software for any purpose is hereby granted 00009 * without fee, provided the above notices are retained on all copies. 00010 * Permission to modify the code and to distribute modified code is granted, 00011 * provided the above notices are retained, and a notice that the code was 00012 * modified is included with the above copyright notice. 00013 * 00014 */ 00015 00016 #ifndef _STLP_CTYPE_H 00017 00018 /* Workaround for a "misbehaviour" when compiling resource scripts using 00019 * eMbedded Visual C++. The standard .rc file includes windows header files, 00020 * which in turn include ctype.h, which results in warnings and errors 00021 */ 00022 #if !defined(RC_INVOKED) 00023 00024 # if !defined (_STLP_OUTERMOST_HEADER_ID) 00025 # define _STLP_OUTERMOST_HEADER_ID 0x219 00026 # include <stl/_prolog.h> 00027 # elif (_STLP_OUTERMOST_HEADER_ID == 0x219) 00028 # define _STLP_DONT_POP_HEADER_ID 00029 # define _STLP_CTYPE_H 00030 # endif 00031 00032 # if defined(_STLP_WCE_EVC3) 00033 struct _exception; 00034 # endif 00035 00036 # if defined (_STLP_HAS_INCLUDE_NEXT) 00037 # include_next <ctype.h> 00038 # else 00039 # include _STLP_NATIVE_C_HEADER(ctype.h) 00040 # endif 00041 00042 /* on evc4 including ctype.h also defines setjmp macro */ 00043 # if defined (_STLP_WCE) 00044 # define _STLP_NATIVE_SETJMP_H_INCLUDED 00045 # endif 00046 00047 # ifndef _STLP_CTYPE_H_SEEN 00048 # define _STLP_CTYPE_H_SEEN 00049 00050 /* Undef convenience interfaces */ 00051 # undef isspace 00052 # undef isprint 00053 # undef iscntrl 00054 # undef isupper 00055 # undef islower 00056 # undef isalpha 00057 # undef isdigit 00058 # undef ispunct 00059 # undef isxdigit 00060 # undef isalnum 00061 # undef isgraph 00062 # undef toupper 00063 # undef tolower 00064 00065 # if defined (UNDER_CE) 00066 00067 # if (_WIN32_WCE < 300) /* Only wide chars for older versions */ 00068 # define _isctype iswctype 00069 # endif 00070 00071 __inline int (isalpha)(int c) { return _isctype(c, _ALPHA); } 00072 __inline int (isupper)(int c) { return _isctype(c, _UPPER); } 00073 __inline int (islower)(int c) { return _isctype(c, _LOWER); } 00074 __inline int (isdigit)(int c) { return _isctype(c, _DIGIT); } 00075 __inline int (isxdigit)(int c) { return _isctype(c, _HEX); } 00076 __inline int (isspace)(int c) { return _isctype(c, _SPACE); } 00077 __inline int (ispunct)(int c) { return _isctype(c, _PUNCT); } 00078 __inline int (isalnum)(int c) { return _isctype(c, _ALPHA|_DIGIT); } 00079 __inline int (isprint)(int c) { return _isctype(c, _BLANK|_PUNCT|_ALPHA|_DIGIT); } 00080 __inline int (isgraph)(int c) { return _isctype(c, _PUNCT|_ALPHA|_DIGIT); } 00081 __inline int (iscntrl)(int c) { return _isctype(c, _CONTROL); } 00082 __inline int (isascii)(int c) { return ((unsigned)(c) < 0x80); } 00083 00084 # undef _isctype 00085 00086 __inline int (iswalpha)(int c) { return iswctype((unsigned short)(c), _ALPHA); } 00087 __inline int (iswupper)(int c) { return iswctype((unsigned short)(c), _UPPER); } 00088 __inline int (iswlower)(int c) { return iswctype((unsigned short)(c), _LOWER); } 00089 __inline int (iswdigit)(int c) { return iswctype((unsigned short)(c), _DIGIT); } 00090 __inline int (iswxdigit)(int c) { return iswctype((unsigned short)(c), _HEX); } 00091 __inline int (iswspace)(int c) { return iswctype((unsigned short)(c), _SPACE); } 00092 __inline int (iswpunct)(int c) { return iswctype((unsigned short)(c), _PUNCT); } 00093 __inline int (iswalnum)(int c) { return iswctype((unsigned short)(c), _ALPHA|_DIGIT); } 00094 __inline int (iswprint)(int c) { return iswctype((unsigned short)(c), _BLANK|_PUNCT|_ALPHA|_DIGIT); } 00095 __inline int (iswgraph)(int c) { return iswctype((unsigned short)(c), _PUNCT|_ALPHA|_DIGIT); } 00096 __inline int (iswcntrl)(int c) { return iswctype((unsigned short)(c), _CONTROL); } 00097 __inline int (iswascii)(int c) { return ((unsigned)(c) < 0x80); } 00098 00099 # endif /* UNDER_CE */ 00100 00101 # endif /* _STLP_CTYPE_H_SEEN */ 00102 00103 # if (_STLP_OUTERMOST_HEADER_ID == 0x219) 00104 # if ! defined (_STLP_DONT_POP_HEADER_ID) 00105 # include <stl/_epilog.h> 00106 # undef _STLP_OUTERMOST_HEADER_ID 00107 # else 00108 # undef _STLP_DONT_POP_HEADER_ID 00109 # endif 00110 # endif 00111 00112 #endif /* RC_INVOKED */ 00113 00114 #endif /* _STLP_CTYPE_H */ Generated on Sun May 27 2012 04:28:46 for ReactOS by
1.7.6.1
|