summaryrefslogtreecommitdiffstats
path: root/thirdparties/wince/include/wcecompat/ctype.h
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparties/wince/include/wcecompat/ctype.h')
-rw-r--r--thirdparties/wince/include/wcecompat/ctype.h90
1 files changed, 90 insertions, 0 deletions
diff --git a/thirdparties/wince/include/wcecompat/ctype.h b/thirdparties/wince/include/wcecompat/ctype.h
new file mode 100644
index 0000000..f79497b
--- /dev/null
+++ b/thirdparties/wince/include/wcecompat/ctype.h
@@ -0,0 +1,90 @@
+/* wcecompat: Windows CE C Runtime Library "compatibility" library.
+ *
+ * Copyright (C) 2001-2002 Essemer Pty Ltd. All rights reserved.
+ * http://www.essemer.com.au/
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+
+#ifndef __wcecompat__CTYPE_H__
+#define __wcecompat__CTYPE_H__
+
+#include "stddef.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern _CRTIMP const unsigned short _ctype[];
+extern _CRTIMP const unsigned short *_pctype;
+extern _CRTIMP const wctype_t *_pwctype;
+
+#define _UPPER 0x1 /* upper case letter */
+#define _LOWER 0x2 /* lower case letter */
+#define _DIGIT 0x4 /* digit[0-9] */
+#define _SPACE 0x8 /* tab, carriage return, newline, */
+#define _PUNCT 0x10 /* punctuation character */
+#define _CONTROL 0x20 /* control character */
+#define _BLANK 0x40 /* space char */
+#define _HEX 0x80 /* hexadecimal digit */
+#define _ALPHA (0x0100|_UPPER|_LOWER) /* alphabetic character */
+
+// character classification function prototypes
+#ifdef _WIN32_WCE_EMULATION
+_CRTIMP int __cdecl iswctype(wint_t, wctype_t);
+_CRTIMP wchar_t __cdecl towupper(wchar_t);
+_CRTIMP wchar_t __cdecl towlower(wchar_t);
+#else
+_CRTIMP int iswctype(wint_t, wctype_t);
+_CRTIMP wchar_t towupper(wchar_t);
+_CRTIMP wchar_t towlower(wchar_t);
+#endif
+
+// the character classification macro definitions
+_CRTIMP int __cdecl _isctype(int, int);
+#define isalpha(_c) ( _isctype(_c,_ALPHA) )
+#define isupper(_c) ( _isctype(_c,_UPPER) )
+#define islower(_c) ( _isctype(_c,_LOWER) )
+#define isdigit(_c) ( _isctype(_c,_DIGIT) )
+#define isxdigit(_c) ( _isctype(_c,_HEX) )
+#define isspace(_c) ( _isctype(_c,_SPACE) )
+#define ispunct(_c) ( _isctype(_c,_PUNCT) )
+#define isalnum(_c) ( _isctype(_c,_ALPHA|_DIGIT) )
+#define isprint(_c) ( _isctype(_c,_BLANK|_PUNCT|_ALPHA|_DIGIT) )
+#define isgraph(_c) ( _isctype(_c,_PUNCT|_ALPHA|_DIGIT) )
+#define iscntrl(_c) ( _isctype(_c,_CONTROL) )
+#define __isascii(_c) ((unsigned)(_c) < 0x80)
+#define isascii __isascii
+
+#define iswalpha(_c) ( iswctype(_c,_ALPHA) )
+#define iswupper(_c) ( iswctype(_c,_UPPER) )
+#define iswlower(_c) ( iswctype(_c,_LOWER) )
+#define iswdigit(_c) ( iswctype(_c,_DIGIT) )
+#define iswxdigit(_c) ( iswctype(_c,_HEX) )
+#define iswspace(_c) ( iswctype(_c,_SPACE) )
+#define iswpunct(_c) ( iswctype(_c,_PUNCT) )
+#define iswalnum(_c) ( iswctype(_c,_ALPHA|_DIGIT) )
+#define iswprint(_c) ( iswctype(_c,_BLANK|_PUNCT|_ALPHA|_DIGIT) )
+#define iswgraph(_c) ( iswctype(_c,_PUNCT|_ALPHA|_DIGIT) )
+#define iswcntrl(_c) ( iswctype(_c,_CONTROL) )
+#define iswascii(_c) ( (unsigned)(_c) < 0x80 )
+#define isleadbyte(_c) ( IsDBCSLeadByte(_c))
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __wcecompat__CTYPE_H__ */
OpenPOWER on IntegriCloud